/*
Theme Name: Creova Divi Child
Theme URI: https://www.creova.it
Description: Divi-Child-Theme für creova.it. Lädt das Original-Stylesheet/JS der statischen Referenz-Website (creova-php, "Runde 12"), damit neue Seiten im Divi Builder 1:1 das bestehende Design (Farben, Typo, .page-hero, .why-grid, .usp-list, .stat-strip, .fullbleed-parallax, .process-steps, .blocks-grid, .faq-list, .cta-mini, .cta-final, signature-flow-Linien usw.) übernehmen, ohne dass diese Klassen in Divi neu nachgebaut werden müssen. Seiteninhalte werden über Divi "Code"-Module mit der exakten Original-Markup eingefügt.
Author: Creova
Template: Divi
Version: 1.0.0
Text Domain: creova-divi-child
*/


/* =====================================================================
 * DIVI-NATIVE KOMPONENTEN (ab 27.10.2026)
 * Bilder sind echte Divi-Bild-Module (Klasse z. B. "card-bg") und lassen
 * sich im Visual Builder tauschen. Aufbau: Zeile > Spalte (Karte) >
 * Bild-Modul + Text-Modul.
 * ===================================================================== */

/* Leistungs-Karten: Zeile "services-grid", Spalten "service-card" */
.et_pb_row.services-grid{display:grid!important;grid-template-columns:repeat(2,1fr);gap:clamp(14px,1.6vw,20px)!important;}
.et_pb_row.services-grid>.et_pb_column{width:auto!important;max-width:none!important;flex:none!important;margin:0!important;}
.et_pb_column.service-card{position:relative;isolation:isolate;}
.service-card>.et_pb_module.card-bg{position:absolute!important;inset:0;z-index:-2;overflow:hidden;margin:0!important;width:auto!important;max-width:none!important;}
.service-card>.card-bg .et_pb_image_wrap{display:block;width:100%;height:100%;}
.et_pb_column.service-card::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(195deg,rgba(19,19,18,.42) 0%,rgba(19,19,18,.84) 60%,rgba(19,19,18,.96) 100%);transition:background .5s ease;}
.et_pb_column.service-card:hover::before{background:linear-gradient(195deg,rgba(19,19,18,.16) 0%,rgba(19,19,18,.7) 65%,rgba(19,19,18,.93) 100%);}
.service-card>.et_pb_text,.service-card>.et_pb_text .et_pb_text_inner{position:static!important;margin:0!important;}
.service-card .card-link{position:absolute;inset:0;z-index:2;border-radius:inherit;}
@media (max-width:980px){.et_pb_row.services-grid{grid-template-columns:1fr;}}

.service-card .card-content .service-num{display:block;margin:0;}
.service-card .card-content p:empty{display:none;}
.service-card .card-content .card-cta{margin:0;}
/* Signatur-Linien laufen UNTER den Inhalten (Karten, Bilder) */
.et_pb_column:has(> .et_pb_code .signature-flow),.et_pb_column:has(> .et_pb_module .signature-flow){z-index:0!important;}

/* --- Allgemein: Raster-Zeilen mit Karten (Klasse "cv-grid" auf der Zeile) --- */
.et_pb_row.cv-grid{display:grid!important;}
.et_pb_row.cv-grid>.et_pb_column{width:auto!important;max-width:none!important;flex:none!important;margin:0!important;}
.et_pb_row.story-block{grid-template-columns:1.3fr .9fr;}
.et_pb_row.member-grid{grid-template-columns:repeat(4,1fr);}
.et_pb_row.cases-grid-2{grid-template-columns:repeat(6,1fr);}
@media (max-width:980px){.et_pb_row.story-block{grid-template-columns:1fr;}.et_pb_row.member-grid{grid-template-columns:repeat(2,1fr);}.et_pb_row.cases-grid-2{grid-template-columns:1fr;}}
@media (max-width:620px){.et_pb_row.member-grid{grid-template-columns:1fr;}}
/* Text-Module, deren Inhalte absolut in der Karte sitzen */
.et_pb_module.cv-static,.cv-static .et_pb_text_inner{position:static!important;}
.et_pb_column>.et_pb_module.cv-static{margin:0!important;}
.et_pb_column .card-link{position:absolute;inset:0;z-index:2;border-radius:inherit;}
/* Bild-Module füllen ihren Rahmen */
.et_pb_image.card-bg .et_pb_image_wrap,.et_pb_image.member-photo .et_pb_image_wrap,.et_pb_image.team-photo-diagonal-inner .et_pb_image_wrap,.et_pb_image.cta-photo-slide .et_pb_image_wrap,.et_pb_image.cv-fill .et_pb_image_wrap{display:block;width:100%;height:100%;}
.et_pb_column>.et_pb_module.card-bg{position:absolute!important;inset:0;z-index:-2;overflow:hidden;margin:0!important;width:auto!important;max-width:none!important;}
/* Projekt-Karten */
.et_pb_column.case-card-photo{position:relative;isolation:isolate;}
.et_pb_column.case-card-photo::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(0deg,rgba(19,19,18,.96) 0%,rgba(19,19,18,.35) 65%);}
.case-card-photo>.case-content{margin:0!important;}
/* Team-Karten */
.et_pb_column.member-card{position:relative;}
.member-card>.member-photo.et_pb_module{margin:0!important;width:100%!important;max-width:none!important;}
.member-card .member-info .et_pb_text_inner{display:flex;flex-direction:column;flex:1;}
.member-card .member-info{display:flex;}
/* Team-Foto mit Hotspots */
.team-photo-diagonal>.team-photo-diagonal-inner.et_pb_module{position:absolute!important;inset:0;margin:0!important;width:auto!important;max-width:none!important;}
/* Story-Bild */
.story-media>.et_pb_image{margin:0!important;width:100%!important;max-width:none!important;height:100%;}
/* Vollbild-Bild mit festem Hintergrund (wie Parallax bei Armin) */
.et_pb_column.fullbleed{width:100%!important;}
.fullbleed>.cv-static{position:static!important;}
/* FAQ mit Hintergrundbild (Divi-Abschnitt) */
.et_pb_section.faq-dark{position:relative;isolation:isolate;}
.et_pb_section.faq-dark::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(125deg,rgba(239,99,33,.5) 0%,rgba(19,19,18,.55) 42%,rgba(19,19,18,.96) 100%),rgba(19,19,18,.58);}
.et_pb_section.faq-dark>.et_pb_row{position:relative;z-index:1;}
/* Foto-Rahmen im Kontakt-Bereich */
.et_pb_row.cv-cta-frame-row{height:0;min-height:0;margin:0!important;padding:0!important;width:100%!important;max-width:none!important;overflow:visible;z-index:2;}
.et_pb_column.cta-photo-frame{position:absolute!important;width:clamp(260px,28vw,420px)!important;flex:none!important;padding:0!important;}
.cta-photo-frame>.cta-photo-slide.et_pb_module{position:absolute!important;inset:0;margin:0!important;width:auto!important;max-width:none!important;}
.et_pb_column.fullbleed,.et_pb_column.story-media,.et_pb_column.team-photo-diagonal,.et_pb_column.service-card,.et_pb_column.case-card-photo,.et_pb_column.member-card{position:relative!important;}
.et-l--post .fullbleed-wrap .et_pb_column.fullbleed{position:relative!important;}
/* Projekt-Karten: Bilder etwas heller */
.case-card-photo .card-bg img{filter:grayscale(10%) brightness(.84);}
.case-card-photo:hover .card-bg img{filter:grayscale(0%) brightness(.92);}
.et_pb_column.case-card-photo::before{background:linear-gradient(0deg,rgba(19,19,18,.92) 0%,rgba(19,19,18,.22) 70%);}
.et_pb_section.faq-dark{background-size:cover!important;background-position:center!important;}
.et_pb_section.faq-dark::before{background:linear-gradient(125deg,rgba(239,99,33,.42) 0%,rgba(19,19,18,.5) 42%,rgba(19,19,18,.94) 100%),rgba(19,19,18,.66);}
/* Projekt-Karten: Muster wiederholt sich für jede weitere Karte (breit/schmal, schmal/breit) */
.et_pb_row.cases-grid-2>.case-card-photo:nth-child(4n+1){grid-column:span 4;min-height:460px;}
.et_pb_row.cases-grid-2>.case-card-photo:nth-child(4n+2){grid-column:span 2;min-height:460px;}
.et_pb_row.cases-grid-2>.case-card-photo:nth-child(4n+3){grid-column:span 2;min-height:340px;}
.et_pb_row.cases-grid-2>.case-card-photo:nth-child(4n+4){grid-column:span 4;min-height:340px;}
.et_pb_row.cases-grid-2>.case-card-photo:last-child:nth-child(4n+1),.et_pb_row.cases-grid-2>.case-card-photo:last-child:nth-child(4n+3){grid-column:1/-1;}
@media (max-width:980px){.et_pb_row.cases-grid-2>.case-card-photo{grid-column:auto!important;min-height:320px;}}
/* Im Visual Builder: Klick-Fläche der Karten ausblenden, damit Bild und Text auswählbar sind */
body.et-fb .card-link{display:none!important;}
/* Signatur-Linien unter Inhalte – auch im Visual Builder */
.et_pb_column:has(.signature-flow){z-index:0!important;}
/* Projekt-Karte mit Logo statt Foto (Klasse "case-card-photo--logo" auf der Spalte) */
.et_pb_column.case-card-photo--logo{background:var(--black-soft,#1d1d1b);}
.case-card-photo--logo>.card-bg.et_pb_module{display:flex;align-items:center;justify-content:flex-end;padding-right:clamp(28px,5vw,72px);}
.case-card-photo--logo>.card-bg .et_pb_image_wrap{width:auto;height:auto;}
.case-card-photo--logo .card-bg img{width:clamp(140px,16vw,230px)!important;height:auto!important;object-fit:contain;filter:none!important;opacity:.22;transform:rotate(-6deg);transition:transform .6s ease,opacity .4s ease;}
.case-card-photo--logo:hover .card-bg img{transform:rotate(-2deg) scale(1.05);opacity:.32;}
.et_pb_column.case-card-photo--logo::before{background:linear-gradient(0deg,rgba(19,19,18,.7) 0%,rgba(19,19,18,0) 60%);}
@media (max-width:700px){.case-card-photo--logo>.card-bg.et_pb_module{justify-content:center;padding-right:0;align-items:flex-start;padding-top:24px;}}
/* FAQ: Verlauf über dem festen (Parallax-)Hintergrundbild */
.et_pb_section.faq-dark::before{z-index:1!important;}
.et_pb_section.faq-dark>.et_pb_row{z-index:2!important;}
.et_pb_section.faq-dark .et-pb-parallax-background{filter:grayscale(35%);}

/* =====================================================================
 * MEGA-MENÜ (Desktop): größer, besser lesbar, Einträge erscheinen nacheinander
 * Bilder = Beitragsbild der verlinkten Seite (siehe functions.php)
 * ===================================================================== */
@media (min-width:981px){
  .dropdown-menu.mega-menu{min-width:min(780px,calc(100vw - 48px));padding:20px;gap:8px;border-radius:20px;top:calc(100% + 14px);}
  #leistungenDropdown.mega-menu{left:-24px;transform:translateY(-8px);}
  .has-dropdown:hover #leistungenDropdown,.has-dropdown:focus-within #leistungenDropdown,.has-dropdown.is-open #leistungenDropdown{transform:translateY(0);}
  .dropdown-menu.mega-menu .mega-link{gap:20px;padding:14px 16px;border-radius:14px;transition:background .25s ease;}
  .dropdown-menu.mega-menu .mega-thumb{width:104px;height:104px;border-radius:14px;}
  .dropdown-menu.mega-menu .mega-thumb--round{border-radius:50%;}
  .dropdown-menu.mega-menu .mega-thumb img{filter:grayscale(25%);transition:transform .6s cubic-bezier(.16,.8,.24,1),filter .4s ease;}
  .dropdown-menu.mega-menu .mega-link:hover .mega-thumb img{transform:scale(1.08);filter:none;}
  .dropdown-menu.mega-menu .mega-label{gap:5px;}
  .dropdown-menu.mega-menu .mega-num{font-size:12px;}
  .dropdown-menu.mega-menu .mega-title{font-size:18px;line-height:1.25;}
  .dropdown-menu.mega-menu .mega-desc{font-size:14.5px;line-height:1.45;}
  .dropdown-menu.mega-menu .mega-title::after{content:" →";color:var(--orange);opacity:0;display:inline-block;transform:translateX(-6px);transition:opacity .25s ease,transform .25s ease;}
  .dropdown-menu.mega-menu .mega-link:hover .mega-title::after{opacity:1;transform:none;}
  /* Einträge gleiten nacheinander herein */
  .dropdown-menu.mega-menu>li{opacity:0;transform:translateY(12px);transition:opacity .35s ease,transform .5s cubic-bezier(.16,.8,.24,1);}
  .has-dropdown:hover .mega-menu>li,.has-dropdown:focus-within .mega-menu>li,.has-dropdown.is-open .mega-menu>li{opacity:1;transform:none;}
  .has-dropdown:hover .mega-menu>li:nth-child(2),.has-dropdown.is-open .mega-menu>li:nth-child(2){transition-delay:.05s;}
  .has-dropdown:hover .mega-menu>li:nth-child(3),.has-dropdown.is-open .mega-menu>li:nth-child(3){transition-delay:.1s;}
  .has-dropdown:hover .mega-menu>li:nth-child(4),.has-dropdown.is-open .mega-menu>li:nth-child(4){transition-delay:.15s;}
  .has-dropdown:hover .mega-menu>li:nth-child(5),.has-dropdown.is-open .mega-menu>li:nth-child(5){transition-delay:.2s;}
  .has-dropdown::after{width:100%;min-width:260px;}
}
@media (prefers-reduced-motion:reduce){.dropdown-menu.mega-menu>li{transition:none;transform:none;}}

/* Mega-Menü – stärkere Selektoren (creova-static.css lädt nach style.css) */
@media (min-width:981px){
  .site-header .dropdown-menu.mega-menu{min-width:min(800px,calc(100vw - 48px));padding:20px;gap:8px;border-radius:20px;}
  .site-header .dropdown-menu.mega-menu .mega-link{gap:20px;padding:14px 16px;border-radius:14px;align-items:center;}
  .site-header .dropdown-menu.mega-menu .mega-thumb{width:104px;height:104px;border-radius:14px;}
  .site-header .dropdown-menu.mega-menu .mega-thumb--round{border-radius:50%;}
  .site-header .dropdown-menu.mega-menu .mega-label{gap:5px;}
  .site-header .dropdown-menu.mega-menu .mega-num{font-size:12px;}
  .site-header .dropdown-menu.mega-menu .mega-title{font-size:18px;line-height:1.25;}
  .site-header .dropdown-menu.mega-menu .mega-desc{font-size:14.5px;line-height:1.45;}
}
@media (min-width:981px){.site-header .dropdown-menu.mega-menu .mega-title::after{content:none;display:none;}}
/* Vollbild-Bild "Strategie vor Aktion": normales, ganzes Bild ohne Parallax (Simon, 27.10.) */
.et_pb_column.fullbleed{background-size:cover!important;background-position:center!important;}

/* "Struktur wird Wirkung": ohne Scroll-Effekt (kein Anhalten, kein Zoom), Schrift größer.
 * Das Linien-Muster bewegt sich weiterhin beim Scrollen. (Simon, 27.10.) */
.et_pb_section.signature-quote-wrap{height:auto!important;}
.signature-quote-wrap .signature-quote-pin{position:relative!important;top:auto;height:auto!important;min-height:0;padding:clamp(110px,15vw,220px) 0;}
.signature-quote-pin .signature-quote-inner{transform:none!important;transition:none;will-change:auto;}
.signature-quote-pin .signature-quote-inner h2{font-size:clamp(3.3rem,11.5vw,10.5rem);max-width:15ch;}
.signature-quote-pin .signature-quote-inner .sub{font-size:clamp(1.05rem,1.4vw,1.3rem);margin-top:36px;}

/* "Struktur wird Wirkung": Linien-Muster bewegt sich beim Scrollen (Chrome/Edge/Firefox mit Scroll-Timeline; sonst statisch) */
@keyframes cvSfDrift{from{transform:translate3d(-3%,60px,0);}to{transform:translate3d(3%,-60px,0);}}
@keyframes cvSfDash{from{stroke-dashoffset:0;}to{stroke-dashoffset:-260;}}
@supports (animation-timeline: view()){
  @media (prefers-reduced-motion:no-preference){
    .signature-quote-pin .signature-flow{animation:cvSfDrift linear both;animation-timeline:view();}
    .signature-quote-pin .signature-flow path{animation:cvSfDash linear both;animation-timeline:view();}
  }
}

/* =====================================================================
 * HERO (Startseite): Bild bleibt stehen, die Abschnitte darunter gleiten
 * darüber. Text erscheint ruhig nacheinander: Titel → Fließtext → Buttons.
 * ===================================================================== */
.et_pb_section.hero{clip-path:inset(0);}
.et_pb_section.hero .hero-media.et_pb_module{position:fixed!important;top:0!important;left:0!important;right:0!important;bottom:auto!important;width:100%!important;max-width:none!important;height:100vh!important;transform:none!important;margin:0!important;}
.et_pb_section.hero .hero-media .et_pb_image_wrap,.et_pb_section.hero .hero-media img{display:block;width:100%!important;height:100%!important;object-fit:cover;transform:none!important;}
@keyframes cvHeroIn{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
@keyframes cvHeroLede{from{opacity:0;transform:translateY(14px);}to{opacity:.82;transform:none;}}
@keyframes cvHeroPop{0%{opacity:0;transform:translateY(12px) scale(.9);}65%{opacity:1;transform:translateY(0) scale(1.04);}100%{opacity:1;transform:none;}}
@media (prefers-reduced-motion:no-preference){
  .hero-inner>.cv-inline{opacity:0;animation:cvHeroIn .8s cubic-bezier(.16,.8,.24,1) .15s forwards;}
  .hero-inner>h1{opacity:0;animation:cvHeroIn 1s cubic-bezier(.16,.8,.24,1) .35s forwards;}
  .hero-inner>.lede{opacity:0;animation:cvHeroLede 1.1s cubic-bezier(.16,.8,.24,1) 1.4s forwards;}
  .hero-inner .hero-ctas .btn{opacity:0;animation:cvHeroPop .65s cubic-bezier(.34,1.3,.64,1) 2.4s forwards;}
  .hero-inner .hero-ctas .btn+.btn{animation-delay:2.6s;}
  .et_pb_section.hero .hero-scroll{opacity:0;animation:cvHeroIn .8s ease 3.1s forwards;}
}

/* 28.10.: Projekt-Karten – Bilder deckend (vorher 32 % Deckkraft, dadurch schienen die Linien durch) */
.et_pb_column.case-card-photo:not(.case-card-photo--logo) .card-bg img{opacity:1!important;filter:grayscale(12%) brightness(.6)!important;}
.et_pb_column.case-card-photo:not(.case-card-photo--logo):hover .card-bg img{filter:grayscale(0%) brightness(.72)!important;}
/* Team-Karten: Simon und Cynthia stehen im Foto höher → Bild oben ausrichten */
.et_pb_row.member-grid>.member-card:nth-child(-n+2) .member-photo img{object-position:50% 0%!important;}
/* Weniger Leerraum zwischen zwei dunklen Abschnitten direkt hintereinander */
.et_pb_section.section-flow--dark+.et_pb_section.section-flow--dark{padding-top:clamp(40px,4vw,88px)!important;}

/* =====================================================================
 * MOBIL (28.10.)
 * ===================================================================== */
@media (max-width:980px){
  /* Hero: Fließtext ausblenden – Titel + Buttons reichen mobil */
  .hero-inner>.lede{display:none!important;}
  /* Geöffnetes Menü: "Projekt anfragen" zentriert, Kontakt-Buttons unten mittig nebeneinander */
  body.nav-open .header-cta{display:flex!important;justify-content:center;}
  body.nav-open .header-cta .btn{display:flex!important;justify-content:center;align-items:center;text-align:center;width:100%;}
  body.nav-open .quick-contact{top:auto!important;bottom:calc(24px + env(safe-area-inset-bottom))!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;flex-direction:row!important;display:flex!important;gap:14px;}
}
@media (max-width:980px){
  /* Hero mobil: Buttons nicht unter die Kontakt-Buttons rechts laufen lassen, "Scroll" ausblenden */
  .hero-inner .hero-ctas{padding-right:58px;}
  .et_pb_section.hero .hero-scroll{display:none!important;}
}

/* =====================================================================
 * DIVI-NATIVE BAUSTEINE UNTERSEITEN (28.10.2026)
 * ===================================================================== */
/* Bild füllt die ganze Spalte (Klasse "cv-cover" am Bild-Modul) */
.et_pb_column>.et_pb_module.cv-cover{position:absolute!important;inset:0;margin:0!important;width:auto!important;max-width:none!important;z-index:0;}
.et_pb_image.cv-cover .et_pb_image_wrap{display:block;width:100%;height:100%;}
.et_pb_image.cv-cover img{width:100%!important;height:100%!important;object-fit:cover;}
.et_pb_column.cv-fig{position:relative!important;overflow:hidden;border-radius:var(--radius-sm,12px);}
.et_pb_column.cv-fig>.cv-static{position:static!important;margin:0!important;}
.cv-cap-overlay{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:16px 18px;font-size:12.5px;line-height:1.4;color:var(--offwhite);opacity:.88;background:linear-gradient(0deg,rgba(19,19,18,.85) 0%,rgba(19,19,18,0) 100%);}
.cv-fig .cv-cover img{filter:grayscale(10%);transition:transform .7s cubic-bezier(.16,.8,.24,1);}
.cv-fig:hover .cv-cover img{transform:scale(1.045);}
/* Editorial-Raster (breit/schmal) */
.et_pb_row.editorial-grid{grid-template-columns:repeat(6,1fr);gap:clamp(14px,1.8vw,20px)!important;margin-top:clamp(40px,6vw,72px)!important;margin-bottom:clamp(40px,6vw,72px)!important;}
.et_pb_row.editorial-grid>.cv-fig:nth-child(4n+1){grid-column:span 4;aspect-ratio:16/11;}
.et_pb_row.editorial-grid>.cv-fig:nth-child(4n+2){grid-column:span 2;aspect-ratio:3/4;}
.et_pb_row.editorial-grid>.cv-fig:nth-child(4n+3){grid-column:span 2;aspect-ratio:3/4;}
.et_pb_row.editorial-grid>.cv-fig:nth-child(4n+4){grid-column:span 4;aspect-ratio:16/9;}
/* Foto-Duo */
.et_pb_row.photo-duo{grid-template-columns:1.4fr 1fr;gap:16px!important;margin-top:clamp(40px,6vw,64px)!important;}
.et_pb_row.photo-duo>.cv-fig{aspect-ratio:4/3;border-radius:var(--radius,16px);}
/* Reel-Rahmen */
.et_pb_row.reel-row{grid-template-columns:repeat(4,1fr);gap:clamp(16px,2vw,24px)!important;margin-top:clamp(40px,6vw,72px)!important;margin-bottom:clamp(40px,6vw,72px)!important;}
.et_pb_column.reel-frame{position:relative!important;overflow:hidden;}
.et_pb_column.reel-frame>.cv-static{position:static!important;margin:0!important;}
.reel-frame .cv-cover img{filter:grayscale(10%);transition:transform .6s ease;}
.reel-frame:hover .cv-cover img{transform:scale(1.04);}
/* Foto-Galerie */
.et_pb_row.photo-gallery-grid{grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.6vw,20px)!important;}
.photo-gallery-item>.photo-gallery-photo.et_pb_module{margin:0!important;width:100%!important;max-width:none!important;}
.et_pb_image.photo-gallery-photo .et_pb_image_wrap{display:block;width:100%;height:100%;}
.et_pb_image.photo-gallery-photo img{width:100%;height:100%;object-fit:cover;}
.photo-gallery-item>.cv-static{margin:0!important;}
.photo-gallery-item .cv-caption{margin-top:10px;font-size:12px;color:var(--lightgrey);text-align:center;}
/* Einzelfoto */
.et_pb_image.photo-single{width:100%!important;max-width:none!important;}
.et_pb_image.photo-single .et_pb_image_wrap{display:block;}
.et_pb_image.photo-single img{width:100%;}
/* Browser-Rahmen (Website-Referenzen) */
.et_pb_row.browser-mock-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(20px,2.4vw,32px)!important;margin-top:clamp(40px,6vw,72px)!important;margin-bottom:clamp(40px,6vw,72px)!important;}
.browser-mock-item>.cv-browser-bar{margin:0!important;background:var(--black-soft,#1d1d1b);border:1px solid var(--line);border-bottom:0;border-radius:var(--radius,16px) var(--radius,16px) 0 0;}
.cv-browser-bar .browser-bar{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--line);}
.cv-browser-bar .browser-dots{display:flex;gap:6px;}
.cv-browser-bar .browser-dots span{display:block;width:10px;height:10px;border-radius:50%;background:var(--alu);opacity:.5;}
.cv-browser-bar .browser-url{flex:1;margin-left:10px;background:var(--black);border:1px solid var(--line);border-radius:999px;padding:6px 16px;font-size:12px;color:var(--lightgrey);text-align:center;}
.browser-mock-item>.cv-browser-shot{margin:0!important;width:100%!important;max-width:none!important;border:1px solid var(--line);border-top:0;border-radius:0 0 var(--radius,16px) var(--radius,16px);overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);}
.cv-browser-shot .et_pb_image_wrap{display:block;}
.cv-browser-shot img{display:block;width:100%;}
.browser-mock-item>.cv-browser-cap{margin:14px 0 0!important;}
.browser-mock-item .cv-caption{text-align:center;color:var(--alu);font-size:.86rem;}
/* "Warum"-Raster mit Foto */
.et_pb_row.why-grid{grid-template-columns:1.1fr 1fr;gap:clamp(40px,6vw,90px)!important;align-items:start;}
.et_pb_row.why-grid.cv-align-center{align-items:center;}
.et_pb_column.team-photo{position:relative!important;overflow:hidden;border-radius:var(--radius,16px);}
.et_pb_column.team-photo>.et_pb_image{margin:0!important;width:100%!important;max-width:none!important;}
/* Tablet/Mobil */
@media (max-width:980px){
  .et_pb_row.editorial-grid{grid-template-columns:repeat(2,1fr);}
  .et_pb_row.editorial-grid>.cv-fig:nth-child(4n+1),.et_pb_row.editorial-grid>.cv-fig:nth-child(4n+4){grid-column:span 2;}
  .et_pb_row.reel-row{grid-template-columns:repeat(2,1fr);}
  .et_pb_row.why-grid{grid-template-columns:1fr;}
}
@media (max-width:860px){.et_pb_row.photo-gallery-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:700px){
  .et_pb_row.editorial-grid{grid-template-columns:1fr;}
  .et_pb_row.editorial-grid>.cv-fig{grid-column:span 1!important;aspect-ratio:4/3!important;}
  .et_pb_row.photo-duo{grid-template-columns:1fr;}
}
@media (max-width:480px){.et_pb_row.reel-row{grid-template-columns:1fr;}}
/* FAQ-Abschnitte mit section-flow: Verlauf über die ganze Höhe */
.et_pb_section.faq-dark::before{top:0!important;bottom:0!important;left:0!important;right:0!important;height:auto!important;}

/* =====================================================================
 * MOBIL & TABLET – Korrekturen (28.10.2026, nachts)
 * ===================================================================== */
/* Kein seitliches Verschieben der Seite (Einblend-Animationen ragten über den Rand) */
html,body{overflow-x:clip;}
/* Prozess-Schritte in hellen Abschnitten: Titel/Text waren hell auf hell */
.section-light .process-step h4{color:#131312;}
.section-light .process-step p:not(.cv-inline){color:#4a4a47;}
@media (max-width:1080px){
  /* Foto-Rahmen im Kontakt-Bereich: auf Tablet/Mobil aus (überlagerte den Text) */
  .et_pb_row.cv-cta-frame-row{display:none!important;}
}
@media (max-width:980px){
  /* Mini-Kontakt im Footer: Felder hatten 160 px Höhe */
  .mini-contact-fields input[type="text"]{flex:0 0 auto!important;height:auto!important;min-height:50px;}
  /* Kontakt-Buttons: schwebende Leiste unten mittig statt rechts über dem Inhalt */
  .quick-contact{top:auto!important;bottom:calc(14px + env(safe-area-inset-bottom))!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;flex-direction:row!important;display:flex!important;gap:8px;padding:6px;border-radius:999px;background:rgba(19,19,18,.84);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(245,243,239,.14);box-shadow:0 14px 34px -14px rgba(0,0,0,.65);}
  .quick-contact a{width:44px!important;height:44px!important;margin:0!important;}
  .to-top{display:none!important;}
  .et-l--footer{padding-bottom:84px;}
  /* Geöffnetes Menü: Button-Text gut lesbar */
  body.nav-open .header-cta .btn{color:#131312!important;opacity:1!important;}
  /* Prozess-Schritte untereinander */
  .process-steps{grid-template-columns:1fr!important;}
}


/* =========================================================
   MOBIL & LESBARKEIT – Korrekturen II (28.10.2026, nachts)
   ========================================================= */
/* Kontakt-Abschnitt (orange): Verlauf oben volle Breite statt Ellipse */
.et_pb_section.cta-final::before{left:0!important;right:0!important;width:auto!important;border-radius:0!important;}
/* Mini-CTA "Schon eine konkrete Vorstellung?" – Seitenabstand */
@media (max-width:1280px){.cta-mini .container{padding-left:24px!important;padding-right:24px!important;}}
/* Lesbarkeit: helle Abschnitte */
.section-flow--light .usp-item h4,.section-light .usp-item h4,.section-flow--light .usp-item h3,.section-light .usp-item h3{color:#131312!important;}
.section-flow--light .usp-item p,.section-light .usp-item p,.section-flow--light .why-head p,.section-light .why-head p,.section-flow--light .services-head p,.section-light .services-head p{color:#4a4a47!important;}
.section-flow--light .et_pb_row[class*="story"] .et_pb_text p:not(.cv-inline),.section-light .et_pb_row[class*="story"] .et_pb_text p:not(.cv-inline){color:#4a4a47!important;}
.section-flow--light .step-label,.section-light .step-label{color:#6b6b66!important;}
/* Lesbarkeit: dunkle Abschnitte */
.et_pb_section:not(.section-light):not(.section-flow--light) .usp-item h4,.et_pb_section:not(.section-light):not(.section-flow--light) .usp-item h3{color:#f5f3ef!important;}
.et_pb_section:not(.section-light):not(.section-flow--light) .usp-item p,.et_pb_section:not(.section-light):not(.section-flow--light) .why-head p{color:rgba(245,243,239,.68)!important;}
/* Ablauf-Schritte: Tablet 2 Spalten, Handy 1 Spalte */
@media (max-width:980px){.process-steps{grid-template-columns:repeat(2,1fr)!important;}}
@media (max-width:620px){.process-steps{grid-template-columns:1fr!important;}.process-steps>.process-step{grid-column:auto!important;}}
/* Kontakt-Kacheln im Kontakt-Abschnitt: auf dem Handy eckiger statt Pillen */
@media (max-width:980px){.contact-strip a{border-radius:16px!important;}}
/* Schnellkontakt-Leiste: blendet beim Runterscrollen aus, beim Hochscrollen ein */
@media (max-width:980px){
  .quick-contact{transition:transform .35s ease,opacity .35s ease!important;}
  .quick-contact.qc-away{transform:translate(-50%,150%)!important;opacity:0!important;pointer-events:none;}
}

/* Kontakt-Fotorahmen (Desktop): passt sich dem linken Rand an, damit er die Überschrift nie überdeckt; unter 1360px ausgeblendet */
@media (min-width:1081px){.et_pb_column.cta-photo-frame{width:clamp(180px,calc((100vw - 800px) / 2 - 70px),420px)!important;}}
@media (min-width:1081px) and (max-width:1359px){.et_pb_row.cv-cta-frame-row{display:none!important;}}

/* Menü immer ganz oben (28.10.2026): Der Footer-Bereich (Theme Builder, z-index 1001) lag über dem Header (1000) und scrollte übers Menü */
body header.et-l.et-l--header{z-index:99999!important;}
body .site-header{z-index:99999!important;}
body footer.et-l.et-l--footer,body .et-l.et-l--footer{z-index:1!important;}
