/* =========================================================
   ELFATEC – GLOBAL
   TYPO3 14.3 + Bootstrap Package 16
   Bootstrap bleibt Basis: keine doppelten Container/Buttons/Skiplinks.
   ========================================================= */
:root{--elf-blue:#0093F5;--elf-blue-dark:#007fd7;--elf-navy:#0b2d4f;--elf-text:#222;}

/* Carousel-Titel – bestehendes ELFATEC-Design */
.carousel-text-inner h1,.carousel-text-inner h2{background:#fff;padding:20px 10px;opacity:.75;font-weight:700}

/* Bestehende TYPO3-Überschriften; neue Kundenbereiche nutzen eigene Klassen */
.element-header.h1{font-size:clamp(1.75rem,5vw,3rem);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--elf-blue);margin-bottom:1.5rem;position:relative}
.element-header.h1::after{content:"";display:block;width:80%;height:2px;background:#000;margin:.75rem auto 0}
.element-header.h1>span{display:inline-block}
.element-header.h2{font-size:2rem;font-weight:600;line-height:1.3;margin-bottom:1rem;color:var(--elf-navy)}
.element-header.h2::after{content:"";display:block;width:60px;height:3px;background:var(--elf-blue);margin-top:.5rem}

/* Text/Bild – nur ELFATEC-Ergänzung */
.textpic-item.textpic-gallery figure.image{border-radius:16px;overflow:hidden;box-shadow:0 30px 20px rgba(0,0,0,.2);transform:translateY(8px);opacity:0;animation:elfFadeUp .9s ease-out forwards}
@keyframes elfFadeUp{to{opacity:1;transform:translateY(0)}}
.textpic ul{list-style:none;padding-left:0;margin-top:1.25rem}
.textpic ul li{position:relative;padding-left:2.2rem;margin-bottom:.75rem;line-height:1.5;font-weight:500}
.textpic ul li::before{content:"";position:absolute;left:0;top:.35em;width:1.4rem;height:1.4rem;background:var(--elf-blue);mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.173 12.414L2.05 8.293l1.414-1.414 2.708 2.707 6.364-6.364 1.414 1.414z'/%3E%3C/svg%3E") center/contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='white' d='M6.173 12.414L2.05 8.293l1.414-1.414 2.708 2.707 6.364-6.364 1.414 1.414z'/%3E%3C/svg%3E") center/contain no-repeat}

/* Projekt-CTA – keine Bootstrap-.btn-Regeln überschreiben */
.texticon .element-header a,.btn-leistungen{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.75rem;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;white-space:nowrap;color:#fff;background:var(--elf-blue);border:1px solid var(--elf-blue);border-radius:999px;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s}
.btn-leistungen{display:flex;width:fit-content;margin:0 auto}
.texticon .element-header a:hover,.texticon .element-header a:focus-visible,.btn-leistungen:hover,.btn-leistungen:focus-visible{background:var(--elf-blue-dark);border-color:var(--elf-blue-dark);color:#fff;transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.18);text-decoration:none}

/* Footer – bestehender rechter Linkblock */
.footer-section-content-column-right .frame-type-text .frame-inner{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}
.footer-section-content-column-right .frame-type-text p.text-right{margin:0;font-size:0}
.footer-section-content-column-right .frame-type-text p.text-right a{font-size:.95rem;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;color:rgba(255,255,255,.85);padding:.35rem .75rem;border-radius:999px;transition:background-color .2s,color .2s,transform .2s}
.footer-section-content-column-right .frame-type-text p.text-right a::before{content:"›";font-size:1.1em;opacity:.7}
.footer-section-content-column-right .frame-type-text p.text-right a:hover,.footer-section-content-column-right .frame-type-text p.text-right a:focus-visible{background:rgba(255,255,255,.1);color:#fff;transform:translateY(-1px)}

/* Navigation – Bootstrap Package Active-Linie bleibt unangetastet */
header .navbar-nav .nav-link{font-size:1.15rem;font-weight:600;color:#222!important;transition:color .2s ease}
header .navbar-nav .nav-link:hover,header .navbar-nav .nav-link:focus{color:var(--elf-blue)!important}
header .navbar-nav .nav-link.active{color:#222!important}
header .navbar-nav .show>.nav-link{color:var(--elf-blue)!important}
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown,
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown .nav-link-text{color:var(--elf-blue)!important;font-weight:700}
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown:hover,
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown:focus,
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown.active,
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown:hover .nav-link-text,
header .dropdown-nav[data-level="2"]>.nav-item>.nav-link-dropdown.active .nav-link-text{color:var(--elf-blue)!important}
header .dropdown-nav[data-level="3"] .nav-link,header .dropdown-nav[data-level="3"] .nav-link-text{color:#222!important;font-weight:400}
header .dropdown-nav[data-level="3"] .nav-link:hover,header .dropdown-nav[data-level="3"] .nav-link:hover .nav-link-text,
header .dropdown-nav[data-level="3"] .nav-link:focus,header .dropdown-nav[data-level="3"] .nav-link:focus .nav-link-text{color:var(--elf-blue)!important}

@media(max-width:576px){.element-header.h1{letter-spacing:.06em}.element-header.h1::after{width:60%}}
@media(prefers-reduced-motion:reduce){.textpic-item.textpic-gallery figure.image{animation:none;opacity:1;transform:none}.footer-section-content-column-right .frame-type-text p.text-right a{transition:none;transform:none}}
