/* Ergänzungen vom 21.10.2026 (Janniks Markierungen): Kapitelleiste, Titelbild Hochzeit, Unterseiten im Stil der Hauptseiten, Animationen.
   Janniks Wahl vom 21.10.2026: überall Variante A, Animationspaket komplett. */
:root{--hdr-h:68px}
.dt,.ev{--acc:var(--gold,var(--ch,#8C6B3F))}

/* ---------------------------------------------------------------- Kapitelleiste */
.chap{position:relative}
.chap .wrap{gap:26px}
.chap-k{flex:none;font-size:10.5px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:#8C6B3F;white-space:nowrap;padding-right:26px;border-right:1px solid var(--line,#E3DCCF)}
.chap a{position:relative;transition:color .25s}
.chap a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#C9A86A;transform:scaleX(0);transform-origin:0 50%;transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.chap a:hover::after,.chap a.on::after{transform:scaleX(1)}
.chap a.on{color:var(--ink,#22211F)}
.chap-pr{display:none}

/* Leiste läuft beim Scrollen mit, zeigt das aktive Kapitel und den Fortschritt (Wahl A) */
.chap{position:sticky;top:var(--hdr-h);z-index:5;background:rgba(250,249,246,.94);-webkit-backdrop-filter:saturate(1.2) blur(12px);backdrop-filter:saturate(1.2) blur(12px)}
.chap a{padding:20px 0}
.chap-pr{display:block;position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:linear-gradient(90deg,#C9A86A,#E2C38D);transform-origin:0 50%;transform:scaleX(var(--p,0));opacity:.55}
html:has(.chap){scroll-padding-top:calc(var(--hdr-h) + 76px)}
@media (max-width:760px){html:has(.chap){scroll-padding-top:84px}}


/* ---------------------------------------------------------------- Titelbild Hochzeit: weiter herausgezoomt (Markierung 1)
   Erst ab 1.200 px: darunter deckt das Foto ohnehin fast die ganze Breite, dort bleibt der bisherige Ausschnitt (Gesichter-Test 834 px). */
@media (min-width:1200px){
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]){background:#171614}
/* Ganzes Foto in voller Höhe rechts, weicher Übergang nach links (Wahl A) */
.main-page .dt .hero img.bg[src*="hochzeit-hero"]{inset:0 0 0 auto !important;left:auto !important;right:0 !important;width:auto !important;max-width:none !important;height:100% !important;aspect-ratio:2000/1673;transform:none !important;object-fit:cover;object-position:50% 50% !important;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30%) !important;mask-image:linear-gradient(90deg,transparent 0,#000 30%) !important}
}

/* ---------------------------------------------------------------- Unterseiten im Stil der Hauptseiten */
.xhero{position:relative}
.xhero .lbl{color:var(--acc)}
.xhero .lead{font-size:20px;line-height:1.55;color:var(--ink,#22211F);max-width:620px}
.xintro{color:var(--muted,#5F5950);max-width:620px}
.xnote{display:flex;flex-wrap:wrap;gap:8px 22px;margin:18px 0 0 !important;font-size:13.5px;color:var(--muted,#5F5950)}
.xnote span{display:inline-flex;align-items:center;gap:8px}
.xnote span::before{content:"";width:6px;height:6px;border-radius:50%;background:#C9A86A;box-shadow:0 0 0 3px rgba(201,168,106,.22)}
.xhero .ctas{margin-top:30px}
/* Text links, Foto im Goldrahmen rechts, Kennzahlen darunter (Wahl A) */
.xhero-a{padding:164px 0 84px;background:linear-gradient(180deg,#FAF9F6 0%,var(--bg,#F8F6F1) 100%)}
.xhero-g{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:76px;align-items:center}
.xhero-a:not(.with-img) .xhero-g{grid-template-columns:minmax(0,1fr);max-width:880px}
.xhfig{margin:0 14px 14px 0;position:relative}
.xhfig img{width:100%;height:580px;object-fit:cover;object-position:50% 30%;display:block}
.xfacts{background:#FAF9F6 !important;color:#22211F !important}
.xfacts .wrap,.rfacts .wrap{display:flex !important;flex-wrap:wrap;gap:1px;background:#E3DCCF;background-clip:content-box}
.xfacts .wrap>div,.rfacts .wrap>div{flex:1 1 190px;min-width:0;background:#FAF9F6;padding:24px 22px !important;border:0 !important;display:flex;flex-direction:column;gap:6px}
.xf .k,.rfacts .k{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#7A5C33 !important;font-weight:700}
.xf .v,.rfacts .v{font-size:15px;line-height:1.45;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}
@media (max-width:760px){.xfacts .wrap>div,.rfacts .wrap>div{flex-basis:150px;padding:16px 14px !important}}

/* Abschnitte */
.xsec{padding:104px 0}
.xsec + .xsec{border-top:1px solid var(--line,#E3DCCF)}
.xsec .h2{margin-bottom:24px}
.xsec-t{max-width:780px}
.xsec-t p,.xsec-b p{color:var(--muted,#5F5950)}
.xsec.with-img .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:84px;align-items:center}
.xsec.with-img .xsec-t{max-width:none}
.xsec.flip .xfig{order:-1}
.xfig{margin:0 14px 14px 0}
.xfig img{width:100%;height:520px;object-fit:cover;display:block}
.xfig figcaption{font-size:13px;color:var(--muted,#5F5950);padding-top:12px}
.xsec.wide .wrap{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:64px;align-items:start}
.xsec.wide .xsec-h{position:sticky;top:calc(var(--hdr-h) + 96px)}
.xsec-b>p:first-child{margin-top:0}
.xcards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:8px}
.xcard{position:relative;background:#fff;border:1px solid var(--line,#E3DCCF);padding:30px 30px 26px;transition:border-color .3s,translate .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.xcard:hover{border-color:#C9A86A;translate:0 -4px;box-shadow:0 18px 40px rgba(31,30,28,.08)}
.xcard::before{content:"";position:absolute;left:0;top:0;height:2px;width:56px;background:#C9A86A;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.xcard:hover::before{width:100%}
.xc-ic{width:30px;height:30px;color:var(--acc);fill:none;stroke:currentColor;stroke-width:1.3}
.xcard .dn{position:absolute;right:26px;top:24px;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:22px;color:#C9A86A}
.xcard h3{font-size:21px;font-weight:500;letter-spacing:-.02em;margin:18px 0 10px;line-height:1.25}
.xcard p{font-size:15.5px;margin:0 0 12px}
.xcard p:last-child{margin-bottom:0}
.xqa{margin-top:28px}
/* Tipp-Kasten */
.xtip{padding:24px 0 104px}
.xtip-box{display:grid;grid-template-columns:88px minmax(0,1fr);gap:34px;align-items:start;background:#22211F;color:#fff;padding:52px 56px;position:relative;overflow:hidden}
.xtip-box::after{content:"„";position:absolute;right:34px;top:-30px;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:220px;line-height:1;color:rgba(201,168,106,.16);pointer-events:none}
.xtip-box .rph{width:88px;height:88px;border-radius:50%;object-fit:cover;border:1px solid #C9A86A;padding:4px;background:#22211F}
.xtip-box .lbl{color:#E2C38D;margin-bottom:12px}
.xtip-box .h3x{color:#fff;margin:0 0 14px}
.xtip-box p{color:rgba(255,255,255,.82) !important;max-width:760px;font-size:17px}
.xtip-box a{color:#E2C38D}
/* Kundenstimme / Referenzen */
.xband{position:relative}
.xrev{background:#1E1C1A;color:#fff;overflow:hidden;text-align:center}
.xband-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.32}
.xrev::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(30,28,26,.35) 0%,rgba(30,28,26,.9) 80%)}
.xrev-in{position:relative;z-index:1;padding-top:112px;padding-bottom:104px;display:flex;flex-direction:column;align-items:center}
.xrev .lbl{color:#E2C38D}
.xrev-st{display:flex;gap:6px;color:#E2C38D;margin:6px 0 26px}.xrev-st .ic{width:18px;height:18px;fill:currentColor}
.xrev-q{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:clamp(28px,3.4vw,44px);line-height:1.22;max-width:900px;margin:0 0 24px;color:#fff}
.xrev-q p{margin:0;color:inherit}
.xrev-who{font-size:14px;color:rgba(255,255,255,.72);margin:0 0 30px}
.xrev-who b{color:#fff;font-weight:600}
.tl-link.light{color:#fff}
.xref{padding:96px 0;background:#FAF9F6;border-top:1px solid var(--line,#E3DCCF);border-bottom:1px solid var(--line,#E3DCCF)}
.xsteps{padding-top:104px}
.xs-ic{display:none}
.xgal-s{padding:0 0 96px}
.xgal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.xgal img{width:100%;height:320px;object-fit:cover;display:block}
.xgal figcaption{font-size:13px;color:var(--muted,#5F5950);padding-top:10px}
.xchap{border-top:1px solid var(--line,#E3DCCF);border-bottom:1px solid var(--line,#E3DCCF);background:var(--bg,#F8F6F1)}
.xchap .wrap{display:flex;gap:30px;align-items:center;overflow-x:auto;scrollbar-width:none}
.xchap .wrap::-webkit-scrollbar{display:none}
.xchap a{display:flex;align-items:baseline;gap:10px;padding:22px 0;font-size:14px;font-weight:500;text-decoration:none;white-space:nowrap;color:var(--muted,#5F5950)}
.xchap a .no{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;color:#8C6B3F;font-size:17px}

@media (max-width:1100px){
.xhero-g,.xsec.with-img .wrap,.xsec.wide .wrap{gap:44px}
.xhfig img{height:460px}.xfig img{height:420px}
}
@media (max-width:900px){
.xhero-g,.xsec.with-img .wrap,.xsec.wide .wrap{grid-template-columns:1fr}
.xsec.flip .xfig{order:0}
.xsec.wide .xsec-h{position:static}
.xgal{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
.xhero-a{padding:118px 0 52px}
.xhfig img{height:340px}
.xhero .lead{font-size:18px}
.xtip-box::after{font-size:150px;right:14px;top:-18px}
.xsec{padding:68px 0}
.xfig img{height:300px}
.xcards{grid-template-columns:1fr}
.xcard{padding:26px 22px 22px}
.xtip{padding:8px 0 68px}
.xtip-box{grid-template-columns:1fr;gap:20px;padding:36px 24px}
.xtip-box .rph{width:72px;height:72px}
.xrev-in{padding-top:80px;padding-bottom:76px}
.xgal{grid-template-columns:1fr}.xgal img{height:260px}
.xref{padding:68px 0}
}
.xfig-s{margin-top:40px}
.xfig-s img{height:340px}
@media (max-width:900px){.xfig-s{margin-top:28px}.xfig-s img{height:260px}}
.xref-more{margin:28px 0 0}

/* ---------------------------------------------------------------- Animationen (Recherche 21.10.2026)
   Grundsatz: der sichtbare Endzustand ist der Normalfall. Nur transform, opacity und clip-path, keine Dauerbewegung,
   kein Eingriff ins Scrollen. Bei reduzierter Bewegung oder ohne Browser-Unterstützung steht alles still da.
   Scroll-gekoppelte Effekte laufen ab Safari 26, Chrome 115. Ältere Browser zeigen sie einfach nicht. */
.display .ln{display:block}
.display .ln>*{vertical-align:top}
@keyframes ln-up{from{transform:translateY(105%)}to{transform:translateY(0)}}
@keyframes line-x{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes fade-up{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes inner{from{translate:0 -4%}to{translate:0 4%}}
@keyframes drift{from{translate:0 0}to{translate:0 12%}}
@keyframes gold-sweep{from{background-position:100% 0}to{background-position:0 0}}
@keyframes wave{0%{transform:scale(1);opacity:0}15%{opacity:.8}100%{transform:scale(1.9);opacity:0}}
@keyframes pic-open{from{clip-path:inset(7%);scale:1.06}to{clip-path:inset(0);scale:1}}
@media (prefers-reduced-motion:no-preference){
 /* 1. Titel steigt zeilenweise aus einer Maske */
 .anim .hero .display.r{animation:none}
 .anim .hero .display .ln{overflow:hidden;overflow:clip;padding:0 .14em .18em 0;margin:0 -.14em -.18em 0}
 .anim .hero .display .ln>*{display:inline-block;animation:ln-up 1.1s cubic-bezier(.2,.7,.2,1) .15s both}
 .anim .hero .display .ln+.ln>*{animation-delay:.3s}
 /* 5. Klangwelle am goldenen Anfrageknopf, einmal nach dem Laden */
 :is(.dt,.ev) .hero .ctas .btn:first-child{position:relative}
 .anim .hero .ctas .btn:first-child::before,.anim .hero .ctas .btn:first-child::after{content:"";position:absolute;left:0;top:50%;width:52px;height:52px;margin-top:-26px;border-radius:50%;border:1px solid #C9A86A;pointer-events:none;animation:wave 1.8s cubic-bezier(.2,.7,.2,1) 1.6s both}
 .anim .hero .ctas .btn:first-child::after{animation-delay:1.95s}
 /* 8. Bewertungen wechseln weich */
 .anim :is(.rvs-tag,.rvs-q,.rvs-who){animation:fade-up .6s cubic-bezier(.2,.7,.2,1) both}
 .anim .rvs-who{animation-delay:.14s}
}
/* 4. Goldener Lichtstreif über dem Akzentwort, einmal, nur auf dunklem Titelbild (Desktop) */
@media (prefers-reduced-motion:no-preference) and (min-width:761px){
 .anim .hero .display .ln>.it{padding:0 .1em .18em 0;margin:0 -.1em -.18em 0;text-shadow:none;background:linear-gradient(100deg,#D9BC8A 40%,#FFF3D6 50%,#D9BC8A 60%) 100% 0/250% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent;animation:ln-up 1.1s cubic-bezier(.2,.7,.2,1) .3s both,gold-sweep 1.6s cubic-bezier(.4,0,.2,1) 1.3s both}
}
/* Hover-Hof an den runden Knopf-Symbolen */
@media (hover:hover) and (prefers-reduced-motion:no-preference){
 :is(.dt,.ev) .btn .ic{transition:transform .35s,background .35s,box-shadow .5s}
 :is(.dt,.ev) .btn:is(:hover,:focus-visible) .ic{box-shadow:0 0 0 7px rgba(201,168,106,.22)}
}
@supports (animation-timeline:view()){
@media (prefers-reduced-motion:no-preference){
 /* 3. Große Fotos öffnen sich wie ein Fenster, der Goldrahmen bleibt stehen */
 .anim :is(.portal .zoom,.occ-im,.lgal figure,.xfig,.xhfig){view-timeline:--pic}
 .anim :is(.portal .zoom,.occ-im,.lgal figure,.xfig,.xhfig) img{animation:pic-open linear both;animation-timeline:--pic;animation-range:entry 10% cover 40%}
 /* 6. Goldene Haarlinien zeichnen sich beim Hineinscrollen */
 .anim .lbl{view-timeline:--ln}
 .anim .lbl::after{transform-origin:left;animation:line-x linear both;animation-timeline:--ln;animation-range:cover 8% cover 30%}
 .anim .xcard{view-timeline:--card}
 .anim .xcard::before{transform-origin:left;animation:line-x linear both;animation-timeline:--card;animation-range:entry 20% cover 35%}
 /* 7. Rechenbeispiel auf der Eventseite füllt sich */
 .anim .bx-ex{view-timeline:--bx}
 .anim .bx-bar i{transform-origin:left;animation:line-x linear both;animation-timeline:--bx}
 .anim .bx-bar .p{animation-range:cover 15% cover 40%}
 .anim .bx-bar .r{animation-range:cover 40% cover 50%}
 /* 10. Fotos mit Tiefe: das Bild gleitet leicht im Rahmen */
 .anim :is(.gmos .gi,.ww figure,.tli-f){view-timeline:--in}
 .anim :is(.gmos .gi,.ww figure,.tli-f) img{scale:1.1;animation:inner linear both;animation-timeline:--in;animation-range:cover}
}
@media (prefers-reduced-motion:no-preference) and (min-width:761px){
 /* 11. Sanfte Parallaxe: Titelbild und Bewertungs-Hintergrund bleiben beim Scrollen leicht zurück (in Ruhe unverändert) */
 .anim .hero{view-timeline:--hero}
 .anim .hero img.bg{animation:drift linear both !important;animation-timeline:--hero !important;animation-range:exit !important}
 .anim :is(.rvs,.xrev){view-timeline:--rvs}
 .anim :is(.rvs-bg,.xband-bg){scale:1.1;animation:inner linear both;animation-timeline:--rvs;animation-range:cover}
}
}
/* 2. Location-Foto wandert in die Detailseite (Seitenübergang, ab Safari 18.2) */
.rcard img,.lfig img{view-transition-class:loc}
::view-transition-group(*.loc){animation-duration:.6s;animation-timing-function:cubic-bezier(.2,.7,.2,1)}
::view-transition-old(*.loc),::view-transition-new(*.loc){height:100%;object-fit:cover}
/* Regionsseiten: Abschnitte als Karten */
.rsecs .xcard .h3x{margin:18px 0 12px}
.rsecs .xcard p{color:var(--muted,#5F5950)}
.rsecs + .lrow{margin-top:24px}
.xrev + .sec,.xref + .sec{padding-top:104px !important}
@media (max-width:760px){.xrev + .sec,.xref + .sec{padding-top:68px !important}}

/* ---------------------------------------------------------------- Korrekturen nach Janniks Durchsicht in allen Größen (21.10.2026, Markierungen 5–16) */
/* Kennzahlen im Titelbild, iPad und kleine Laptops: Sterne laufen nicht mehr in die Nachbarspalte */
@media (min-width:761px) and (max-width:1199px){
 .main-page .hero .sc .v{flex-wrap:wrap !important;gap:6px 10px !important}
 .main-page .hero .sc .v .stars{gap:3px !important}
 .main-page .hero .sc .v .stars .ic{width:15px !important;height:15px !important}
 .main-page .hero .sc{min-width:0}
}
/* Handy: Kennzahlen wie am Desktop mit Sternen, Link zu den Bewertungen und DJ-Allianz */
@media (max-width:760px){
 .main-page .hero .stats .grid{grid-template-columns:1fr 1fr !important;row-gap:0 !important;padding:6px 0 4px !important}
 .main-page .hero .stats .sc{padding:16px 0 16px 16px !important;border-left:1px solid rgba(31,30,28,.12) !important;border-top:1px solid rgba(31,30,28,.12) !important;grid-column:auto !important}
 .main-page .hero .stats .sc:first-child{grid-column:1/-1 !important;padding-left:0 !important;border-left:0 !important;border-top:0 !important}
 .main-page .hero .stats .sc:nth-child(2){padding-left:0 !important;border-left:0 !important}
 .main-page .hero .stats .sc .v{font-size:36px !important;gap:12px !important}
 .main-page .hero .stats .sc .v .stars{display:flex !important;gap:3px !important}
 .main-page .hero .stats .sc .v .stars .ic{width:18px !important;height:18px !important}
 .main-page .hero .stats .sc .lk{display:inline-block !important;font-size:13.5px !important;margin-top:8px !important;color:#7A5C33 !important}
 .main-page .hero .stats .sc.net{display:flex !important;flex-direction:row !important;align-items:center !important;justify-content:flex-start !important;gap:16px !important;grid-column:1/-1 !important;padding-left:0 !important;border-left:0 !important}
 .main-page .hero .stats .sc.net .badge{width:52px !important;height:52px !important;flex:none}
 .main-page .hero .stats .sc.net .v2{font-size:17px !important;color:#22211F !important}
 /* Anfrageknopf, darunter „Direkt zu“ mit beiden Zielen in einer Reihe */
 .main-page .hero .ctas{flex-direction:column !important;align-items:flex-start !important;gap:18px !important}
 .main-page .hero .ways{flex-wrap:nowrap;gap:8px;width:100%}
 .main-page .hero .ways .t{font-size:10.5px;letter-spacing:.14em;margin-right:2px;white-space:nowrap}
 .main-page .hero .ways a{min-height:40px;padding:0 14px;font-size:14px;white-space:nowrap}
 /* Kapitelleiste auf dem Handy weglassen (Markierung 9) */
 .chap{display:none !important}
 /* Abstand nach dem Club-Absatz (Markierung 10) */
 .club-note{margin-bottom:30px !important}
 /* White Wedding: Schrift auf dem hellen Foto lesbar (Markierung 12) */
 .wwf-scrim{background:linear-gradient(0deg,rgba(18,17,15,.92) 0%,rgba(18,17,15,.74) 48%,rgba(18,17,15,.3) 80%,rgba(18,17,15,.08) 100%) !important}
 .wwf-in .display,.wwf-in .lbl,.wwf-cap{text-shadow:0 2px 18px rgba(0,0,0,.45)}
 .rvs .rvs-bg{height:320px !important}
}
@media (max-width:359px){.main-page .hero .ways{flex-wrap:wrap}}
/* Trenz Events: ganzer Fotospiegel im Bild (Markierung 14) */
.te-im{aspect-ratio:1/1 !important}
.te-im img{object-position:50% 50%}
/* Startseite „Ich bin Jannik“: Fakten auf dem iPad untereinander statt in zu schmalen Spalten (Markierung 15) */
@media (min-width:761px) and (max-width:1100px){
 .facts{grid-template-columns:1fr !important}
 .fact,.fact+.fact{display:grid;grid-template-columns:56px minmax(0,1fr);column-gap:16px;align-items:center;padding:14px 0 !important;border-left:0 !important}
 .fact+.fact{border-top:1px solid rgba(31,30,28,.12)}
 .fact .rph{grid-row:1/span 2;margin:0 !important;width:56px;height:56px}
}
/* Logos „Vertrauen u. a. diese Kunden“ lebendiger (Markierung 16): Kacheln heben sich, Logos in Farbe auf Touch-Geräten,
   Link-Kachel füllt die letzte Reihe, Kacheln erscheinen nacheinander */
.lw-grid.lw-all>div{position:relative;transition:background .35s,translate .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s}
.lw-grid.lw-all>div::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:#C9A86A;transform:scaleX(0);transform-origin:0 50%;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.lw-grid.lw-all>div:not(.lw-more):hover{background:#fff !important;translate:0 -3px;box-shadow:0 14px 30px rgba(31,30,28,.08);z-index:1}
.lw-grid.lw-all>div:hover::after{transform:scaleX(1)}
.lw-grid.lw-all img{transition:filter .35s,opacity .35s,transform .45s cubic-bezier(.2,.7,.2,1)}
.lw-grid.lw-all>div:hover img{transform:scale(1.06)}
.lw-grid.lw-all .lw-more{background:#22211F !important}
.lw-grid.lw-all .lw-more a{color:#fff !important;border-bottom-color:#C9A86A !important}
.lw-grid.lw-all .lw-more a .ic{color:#E2C38D}
@media (hover:none){.lw-grid.lw-all img,.lw-grid.lw-all img.sq{filter:none !important;opacity:1 !important}}
@media (max-width:1100px){.lw-grid.lw-all .lw-more{grid-column:span 3}}
@media (max-width:640px){.lw-grid.lw-all .lw-more{grid-column:span 1}}
@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){
 .anim .lw-grid.lw-all>div{animation:fade-up linear both;animation-timeline:view();animation-range:entry 0% entry 60%}
}}
/* Gefunden mit pruefung/bsp/ueberlauf_test.py (alle Seiten, 390/820/1280 px) */
@media (min-width:901px) and (max-width:1439px){.rvhero-fig blockquote{left:20px}}   /* Zitatkarte lag über dem Bridebook-Link */
.xsec-h .h2,.xhero .h1x{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}   /* lange Wörter in EN/FR-Überschriften */
.rcard b{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}   /* „Heckenaschbacherhof“ lief bei 560 px 6 px aus der Kachel (Abschlussprüfung, Grenzbreiten) */
@media (max-width:1280px){.xsec.wide .xsec-h .h2{font-size:40px}}

/* Barrierefreiheit (Abschlussprüfung 21.10.2026): Kontraste der goldenen Akzente, Klickflächen, unsichtbare Überschrift */
.vh{position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.tno{color:#A07A44 !important}                                    /* große Schmuckziffern: mindestens 3:1 */
.xcard .dn{color:#A07A44;font-size:24px}
.where,.trust-note a,.portal .pp .k{color:#7A5C33 !important}       /* kleine Goldschrift auf Sand: mindestens 4,5:1 */
.site-hdr .logo{padding:6px 0;margin:-6px 0}                       /* größere Klickfläche am Logo */
/* Hover-Effekte anderer Karten ebenfalls über translate (CO-04) */
@media (hover:hover){.dcard:hover,.dwband:hover{translate:0 -3px}}
.dcard:hover,.dcard:focus-visible,.dwband:hover,.dwband:focus-visible{transform:none}

/* Abschlussprüfung, Barriere-Scan: Orts-Etikett im geteilten Location-Kopf (4,16:1) und Kategoriezeile in Karten ohne Bild (1,21:1) mit ausreichendem Kontrast */
.lhero.lsplit p.lbl.on-dark{color:#7A5C33 !important}
.rcard.noimg .t .k{color:#7A5C33 !important}
/* Touch-Ziele mindestens 24 px hoch (WCAG 2.5.8). Bei Inline-Links vergrößert der Innenabstand nur die Klickfläche, nicht die Zeile */
.ftr .fb a{padding-block:4px}
.legal nav a,.trust-note a,span.v a{padding-block:2px}
.rvc footer a{padding-block:3px}
.rvc-more summary,a.occ-more{min-height:24px}
/* Event-Referenz bis 1100 px: Foto oben, Karte überlappt es unten, Bildnachweis unter der Karte.
   Vorher lag die Karte bei 761 bis 1100 px über Etikett und Foto, und der Bildnachweis stand bei 390 px auf der Karte */
@media (max-width:1100px){
  .cb .cb-cap{position:static !important;margin:-36px 0 28px !important;padding:0 24px}
}
@media (min-width:761px) and (max-width:1100px){
  .cb{padding:64px 0 0 !important}
  .cb .cb-img{width:calc(100% - 48px) !important;height:460px !important;margin-left:24px !important}
  .cb .cb-tag{top:84px !important}
  .cb .cb-in{position:relative !important;inset:auto !important;margin-top:-90px !important;padding:0 48px !important}
}
@media (max-width:760px){.cb .cb-cap{padding:0 20px}}
/* Abschlussprüfung, Überlauftest an den Grenzbreiten (761 bis 1199 px) */
/* Kennzahlen im Titelbild, 4 Spalten bei 761 bis 1100 px: „Im Netzwerk“ brauchte 190 px in 174 px */
@media (min-width:761px) and (max-width:1100px){
 .main-page .hero .stats .sc{padding-right:14px}
 .main-page .hero .stats .sc + .sc{padding-left:18px}
 .main-page .hero .stats .sc.net{gap:12px}
 .main-page .hero .stats .sc.net .badge{width:44px;height:44px}
 .main-page .hero .stats .sc.net .v2{overflow-wrap:break-word}
}
@media (min-width:761px) and (max-width:860px){.main-page .hero .stats .sc.net{flex-direction:column;align-items:flex-start;gap:8px}}
/* White Wedding, Merkmale Look/Sound/Licht: Bild über dem Text, solange drei Spalten schmal sind */
@media (min-width:761px) and (max-width:1000px){.wf{flex-direction:column;gap:14px}}
.wf p,.faqp-g .h3x,.ltxt .h1x,.ltxt h1,.lgrid .h2{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}
/* Fußzeile Trenz Events: Knöpfe in eigener Zeile bis 1199 px (vorher nur bis 900 px, Text wurde bei 901 px auf 25 px gedrückt) */
@media (max-width:1199px){.fte{grid-template-columns:auto minmax(0,1fr) !important}.fte ul{grid-column:1 / -1}}
/* Dunkle Link-Kachel „Alle Referenzen ansehen“ auch auf der Event-Seite: dort war eine spezifischere helle Regel aus site.css stärker (weißer Text auf Hellgrau, 1,05:1) */
.sec.occ + .sec .lw-grid.lw-all > div.lw-more,.ev .lw-grid.lw-all > div.lw-more,.lw-grid.lw-all > div.lw-more{background:#22211F !important}
/* Logos nie breiter als ihre Kachel (Referenzen bei 1.101 px: 7 px über den Rand) */
.lw-grid>div{grid-template-columns:minmax(0,1fr)}
.lw-grid img{max-width:min(170px,100%)}
/* Anlass-Kachel „Verfügbarkeit prüfen“ bei vier Spalten (1.101 bis 1.199 px): Knopf darf umbrechen statt überzustehen */
@media (max-width:1199px){.occ-card.occ-cta .btn{max-width:100%;white-space:normal;text-align:left}}
/* Codex-Gegenprüfung 22.10.2026 */
/* CX-01: Titelbild Start und Hochzeit auf dem Tablet. Die Kennzahlen sind unten verankert und bis 274 px hoch (FR, 761 px), reserviert waren 222 px. Mehr Platz, damit sich Hinweise und Kennzahlen nie überlagern */
@media (min-width:761px) and (max-width:860px){.main-page .dt .hero > .wrap{padding-bottom:312px !important}}
@media (min-width:861px) and (max-width:1199px){.main-page .dt .hero > .wrap{padding-bottom:266px !important}}
/* CX-02: auf dem Tablet läuft der Text weiter ins helle Foto. Stärkerer Verlauf unter Text und Kennzahlen, ab 1.200 px bleibt der abgenommene Desktop-Look */
@media (min-width:761px) and (max-width:1199px){
 .dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.42) 0,rgba(14,13,12,.3) 140px,rgba(14,13,12,0) 250px),linear-gradient(90deg,rgba(14,13,12,.88) 0%,rgba(14,13,12,.78) 54%,rgba(14,13,12,.34) 84%,rgba(14,13,12,.16) 100%),linear-gradient(0deg,rgba(14,13,12,.72) 0%,rgba(14,13,12,0) 42%) !important}
}
/* Kennzahlenleiste ab 761 px dunkler: kleine goldene Beschriftungen über hellen Fotostellen hatten auch am Desktop nur 2,05:1 (Nachkontrolle CX-02) */
@media (min-width:761px){.main-page .dt .hero .stats{background:linear-gradient(0deg,rgba(14,13,12,.92) 0%,rgba(14,13,12,.76) 100%) !important}}
/* CX-03: Porträt auf /regionen/ (und überall, wo es als Titelbild steht) bis 900 px mit ganzem Kopf: Gesicht liegt bei 13 bis 28 % der Bildhöhe */
@media (max-width:900px){.xhfig img[src*="jannik-laughing"]{object-position:50% 5%}}   /* 5 % statt 10 %: bei 760 und 900 px fehlten 7,6 und 2,4 px Haar (Nachkontrolle CX-03), rechnerisch jetzt 21 bis 36 px Luft über dem Haar */
/* CX-09: Club-Logos in den Referenzkarten nie breiter als die Karte (Apartment bei 761 px 7 px über den Rand) */
.refc{grid-template-columns:minmax(0,1fr)}
.refc img{max-width:min(180px,100%)}
/* Einleitung im Titelbild ab 1.200 px: einzelne Stellen über hellem Foto unter 4,5:1. Verlauf links etwas kräftiger, rechts (Gesicht) unverändert frei */
@media (min-width:1200px){.dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.42) 0,rgba(14,13,12,.3) 140px,rgba(14,13,12,0) 250px),linear-gradient(90deg,rgba(14,13,12,.8) 0%,rgba(14,13,12,.6) 46%,rgba(14,13,12,.14) 74%,rgba(14,13,12,0) 82%),linear-gradient(0deg,rgba(14,13,12,.66) 0%,rgba(14,13,12,0) 34%) !important}}
/* Hochzeitsfoto 761 bis 1.199 px: Titelbereich ist seit CX-01 höher, das Foto wird stärker vergrößert. Ausschnitt etwas nach rechts, damit das Gesicht (60 bis 70 % der Bildbreite) ganz im Bild bleibt */
@media (min-width:761px) and (max-width:1199px){.dt .hero img.bg[src*="hochzeit-hero"]{object-position:20% 6% !important}}
/* Codex-Nachkontrolle CY-03/CY-04 (22.10.2026): Kopfzeile (Anfrage- und Sprachlinks) und kleine Titelzeile liegen ab 761 px über hellem Himmel, gemessen 3,6 bis 4,4:1.
   Beide Verläufe oben haben dafür einen dunklen Streifen bekommen (erste Ebene, endet bei 250 px). Die Gesichter beginnen frühestens bei 293 px und bleiben unverändert */
/* Codex-Nachkontrolle 2 (22.10.2026) CZ-01 und CZ-03: Event-Titelbild ab 761 px. Das Schwarzweißfoto (helles Publikum, Lichterketten) lag mit dem
   leichten Verlauf unter Kopfzeile, Titel, Einleitung und Kennzahlen bei 1,0 bis 3,8:1. Foto leicht abgedunkelt (85 %), oben derselbe Streifen wie auf Start und Hochzeit,
   Verlauf ab 1.200 px am mittigen Textblock ausgerichtet (Container 1.160 px), Kennzahlenleiste dunkel hinterlegt. Der DJ rechts bleibt sichtbar */
@media (min-width:761px){
 .ev .hero img.bg{filter:grayscale(1) contrast(1.04) brightness(.85) !important}
 .main-page .ev .hero .kpis{background:linear-gradient(0deg,rgba(14,13,12,.92) 0%,rgba(14,13,12,.76) 100%)}
}
@media (min-width:761px) and (max-width:1199px){
 .ev .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.42) 0,rgba(14,13,12,.3) 140px,rgba(14,13,12,0) 250px),linear-gradient(90deg,rgba(14,13,12,.86) 0%,rgba(14,13,12,.78) 60%,rgba(14,13,12,.62) 82%,rgba(14,13,12,.5) 100%) !important}
}
@media (min-width:1200px){
 .ev .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.42) 0,rgba(14,13,12,.3) 140px,rgba(14,13,12,0) 250px),linear-gradient(90deg,rgba(14,13,12,.82) 0%,rgba(14,13,12,.7) calc(50% + 60px),rgba(14,13,12,.52) calc(50% + 420px),rgba(14,13,12,.16) calc(50% + 620px),rgba(14,13,12,0) calc(50% + 760px)),linear-gradient(0deg,rgba(14,13,12,.5) 0%,rgba(14,13,12,0) 40%) !important}
}
/* CZ-02: die Fotobeschriftung oben rechts stieß bei 761 bis 901 px an die lange Titelzeile (EN/FR bis 176 px Überdeckung). Auf dem Tablet ausgeblendet, wie schon am Handy */
@media (min-width:761px) and (max-width:1100px){.ev .hero .hcap{display:none !important}}
/* Entscheidung Q23 (22.10.2026): Regionskarten auf den Hochzeits-Hauptseiten. Die Hauptseiten laden sub.css nicht, deshalb die Kartenregeln hier, gleich wie auf den Unterseiten */
.reg-cards .dcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:8px}
.reg-cards .dcard{position:relative;display:flex;flex-direction:column;gap:10px;min-height:200px;padding:28px 28px 26px;background:#FFFDF9;border:1px solid #E7DFD1;color:#22211F;text-decoration:none;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.reg-cards .dcard:hover,.reg-cards .dcard:focus-visible{border-color:#C9A86A;box-shadow:0 22px 44px -28px rgba(34,33,31,.4)}
.reg-cards .dcard .dn{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#7A5C33;font-weight:600}
.reg-cards .dcard b{font-family:"Cormorant Garamond",serif;font-style:italic;font-weight:400;font-size:32px;line-height:1.05;hyphens:auto;overflow-wrap:break-word}
.reg-cards .dcard small{font-size:14px;line-height:1.5;color:#6B645A}
.reg-cards .dcard .go{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1.5px solid #C9A86A;border-radius:50%;color:#8C6B3F;transition:background .3s,color .3s,border-color .3s}
.reg-cards .dcard:hover .go,.reg-cards .dcard:focus-visible .go{background:#8C6B3F;border-color:#8C6B3F;color:#fff}
@media (max-width:1000px){.reg-cards .dcards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.reg-cards .dcards{grid-template-columns:minmax(0,1fr)}.reg-cards .dcard{min-height:0}}
/* Entscheidung Q21 (22.10.2026): „Vérifier votre date“ ist länger als „Demander une date“. Auf Französisch bis 400 px WhatsApp und Anruf nur als Symbol (wie unter 360 px in allen Sprachen), damit der Knopf Luft hat */
/* Beschriftung nur optisch ausblenden, der Link behält seinen Namen für Vorleseprogramme (Codex-Nachkontrolle 4, DA-01; gilt auch für die ältere Regel bis 360 px in site.css) */
@media (max-width:440px){html[lang="fr"] .mbar .i span{display:block;position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}}
/* Dabei fiel auf: „Termin anfragen“ stieß bei 375 px am Knopfrand an. Symbol-Darstellung deshalb bis 380 px statt 360 px in allen Sprachen */
@media (max-width:380px){.mbar .i span{display:block;position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}}
/* Entscheidung Q4 C (22.10.2026): Event-Titelbild als Originalfoto in Farbe (öffentliche Veranstaltung, ohne Unkenntlichmachung). Kein Graufilter mehr, ab 761 px bleibt die leichte Abdunklung */
.ev .hero img.bg.bw{filter:none !important}
@media (min-width:761px){.ev .hero img.bg.bw{filter:brightness(.85) !important}}

/* ---------------------------------------------------------------- Locations-Übersicht neu (Markierungen vom 22.10.2026) */
.lohero .lohero-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.lohero .h1x{font-size:clamp(34px,3.4vw,52px)}
.lmosaic{position:relative;display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr;gap:14px;height:clamp(460px,40vw,600px)}
.lmosaic::before{content:"";position:absolute;inset:-16px 16px 16px -16px;border:1px solid #C9A86A;pointer-events:none}
.lm-t{position:relative;display:block;overflow:hidden;background:#22211F;color:#fff;text-decoration:none}
.lm-1{grid-row:1/3}
.lm-t img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.lm-t:hover img{transform:scale(1.04)}
.lm-t::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,13,12,.8) 0%,rgba(14,13,12,0) 50%)}
.lm-c{position:absolute;left:18px;right:18px;bottom:16px;z-index:1;display:flex;flex-direction:column;gap:3px}
.lm-c .k{font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:#EAD6AE}
.lm-c b{font-size:19px;font-weight:400;line-height:1.2;letter-spacing:-.01em}
.lstats{background:#FFFFFF;border-top:1px solid #E3DCCF;border-bottom:1px solid #E3DCCF}
.lstats .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.lstats .lsi{display:grid;grid-template-columns:46px minmax(0,1fr);column-gap:16px;row-gap:4px;align-items:center;padding:30px 24px 30px 0}
.lstats .lsi+.lsi{padding-left:24px;border-left:1px solid #E3DCCF}
.lstats .lsi-ic{grid-row:1/3;width:46px;height:46px;padding:12px;border:1px solid #C9A86A;border-radius:50%;color:#8C6B3F}
.lstats b{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;font-size:clamp(26px,2.3vw,34px);line-height:1.05;color:#1F1E1C}
.lstats .lstars{display:inline-flex;gap:2px;color:#B8924F}
.lstats .lstars .ic{width:14px;height:14px;fill:currentColor}
.lstats .lsi>span{font-size:14px;line-height:1.4;color:#5F5950;overflow-wrap:break-word}
.lregnav{padding:64px 0 0}
.lregnav .lbl{margin:0 0 18px}
.lr-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.lr-g a{display:flex;align-items:center;gap:16px;padding:12px 16px 12px 12px;background:#FFFFFF;border:1px solid #E3DCCF;color:#22211F;text-decoration:none;transition:border-color .3s,box-shadow .3s,transform .3s}
.lr-g a:hover{border-color:#C9A86A;box-shadow:0 18px 40px -26px rgba(60,45,20,.4);transform:translateY(-2px)}
.lr-g img,.lr-ic{flex:none;width:72px;height:72px;border-radius:50%;object-fit:cover}
.lr-ic{display:grid;place-items:center;border:1px dashed #C9A86A;color:#8C6B3F}
.lr-ic .ic{width:22px;height:22px}
.lr-t{display:flex;flex-direction:column;gap:3px;min-width:0}
.lr-t .no{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:17px;line-height:1;color:#8C6B3F}
.lr-t b{font-size:16px;font-weight:500;line-height:1.25;overflow-wrap:break-word}
.lr-t>span:last-child{font-size:13px;color:#5F5950}
.lreg{padding:96px 0 32px}
.lreg-h{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:end;margin:0 0 36px;padding:0 0 32px;border-bottom:1px solid #E3DCCF}
.lreg-h .lbl{display:flex;align-items:baseline;gap:14px}
.lreg-h .lbl .no{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:22px;letter-spacing:0;text-transform:none;color:#7A5C33}
.lreg-h .h2{margin:6px 0 0}
.lreg-x p{font-size:17px;line-height:1.65;color:#4A453E;margin:0 0 12px;max-width:620px}
.lreg-x p:last-child{margin-bottom:0}
.lsub{display:flex;align-items:baseline;gap:12px;margin:36px 0 16px;font-size:11.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#7A5C33}
.lsub:first-of-type{margin-top:0}
.lsub span{font-size:14px;font-weight:400;letter-spacing:0;text-transform:none;color:#5F5950}
.lsub::after{content:"";flex:1;height:1px;background:#E3DCCF}
.lcards{grid-template-columns:repeat(4,minmax(0,1fr))}
.lband{margin:0 0 28px}
.lband img{width:100%;height:clamp(300px,30vw,440px);object-fit:cover;display:block}
.lband figcaption{position:static;margin:10px 0 0;padding:0;font-size:13px;color:#5F5950;background:none}
.lband figcaption a{color:#5F5950}
.lreg-alt{background:#F4F0E8}
.ltip{padding-top:96px}
.ltip .xtip-box .lbl .no{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:22px;letter-spacing:0;color:#E2C38D}
@media (max-width:1100px){
.lohero .lohero-g{grid-template-columns:minmax(0,1fr);gap:56px}
.lmosaic{height:420px;margin:0 16px 0 16px}
.lcards{grid-template-columns:repeat(3,minmax(0,1fr))}
.lr-g{grid-template-columns:repeat(2,minmax(0,1fr))}
.lstats .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}
.lstats .lsi:nth-child(3){padding-left:0;border-left:0}
.lstats .lsi:nth-child(n+3){border-top:1px solid #E3DCCF}
}
@media (max-width:760px){
.lmosaic{height:300px;gap:8px;margin:0 8px}
.lmosaic::before{inset:-10px 10px 10px -10px}
.lm-c{left:12px;right:12px;bottom:10px}
.lm-c b{font-size:15px}
.lm-c .k{font-size:9.5px}
.lstats .lsi{grid-template-columns:38px minmax(0,1fr);column-gap:12px;padding:20px 12px 20px 0}
.lstats .lsi+.lsi{padding-left:12px}
.lstats .lsi:nth-child(3){padding-left:0}
.lstats .lsi-ic{width:38px;height:38px;padding:9px}
.lstats .lsi>span{font-size:13px}
.lregnav{padding-top:44px}
.lr-g{gap:10px}
.lr-g a{flex-direction:column;align-items:flex-start;gap:10px;padding:12px}
.lr-g img,.lr-ic{width:52px;height:52px}
.lreg{padding:68px 0 20px}
.lreg-h{grid-template-columns:minmax(0,1fr);gap:16px;margin-bottom:24px;padding-bottom:24px}
.lcards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.lcards .rcard{height:210px}
.lcards .rcard .t{left:12px;right:12px;bottom:12px}
.lcards .rcard b{font-size:16px}
.lcards .rcard .k{font-size:9.5px;letter-spacing:.14em}
.lcards .rcard.noimg .t{top:16px;bottom:14px}
.lcards .rcard.noimg b{font-size:18px}
.ltip{padding-top:68px}
}
.lcards.n5{grid-template-columns:repeat(5,minmax(0,1fr))}
.lcards.n5 .rcard b{font-size:19px}
.lpair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:36px}
.lpair .lsub{margin-top:0}
.lpair .lcards{grid-template-columns:repeat(2,minmax(0,1fr))}
.ltip .xtip-box .btn{color:#fff}
.ltip .xtip-box .ctas{margin-top:22px}
@media (max-width:1100px){.lcards.n5{grid-template-columns:repeat(3,minmax(0,1fr))}.lpair{grid-template-columns:minmax(0,1fr);gap:0}.lpair>div+div{margin-top:36px}}
@media (max-width:760px){.lcards.n5{grid-template-columns:repeat(2,minmax(0,1fr))}.lpair .lcards{gap:10px}}
@media (max-width:760px){.lohero .lmosaic{order:-1;height:260px;margin:0 10px 6px}.lohero .lohero-g{gap:40px}}
.lstats b{min-width:0}
.lstats .lstars{flex-wrap:wrap}
.lr-t b,.lreg-h .h2{overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}
.lr-t .no{color:#7A5C33}
@media (max-width:1100px){.lreg-h{grid-template-columns:minmax(0,1fr);gap:18px}}
@media (max-width:380px){.lr-g{grid-template-columns:minmax(0,1fr)}.lr-g a{flex-direction:row;align-items:center}.lstats .lstars .ic{width:12px;height:12px}}

/* ---------------------------------------------------------------- Design A „Elfenbein“ (Janniks Wahl 22.10.2026 abends): heller Titelbereich auf Start- und
   Hochzeitsseite (.dt) ab 761 px. Das Handy war unten schon hell. Die Eventseite (.ev) bleibt bewusst dunkel, damit sie sich abhebt. */
@media (min-width:761px){
.main-page .dt .hero,.main-page .dt .hero:has(img.bg){background:#F5EFE5 !important;color:#22211F}
/* Fester heller Grund bis hinter die rechte Textkante (gemessen höchstens 616 px bis 1.200 px Breite, darüber höchstens 51 %), erst danach weicher Übergang ins Foto (Codex DC-01) */
.main-page .dt .hero .scrim{--hs:max(640px,54%);background:linear-gradient(90deg,#F5EFE5 0,#F5EFE5 var(--hs),rgba(245,239,229,.8) calc(var(--hs) + 70px),rgba(245,239,229,0) calc(var(--hs) + 220px)) !important}

.main-page .dt .hero .h1,.main-page .dt .hero .lbl{color:#7A5C33 !important;text-shadow:none !important}
.main-page .dt .hero .display{color:#1F1E1C !important;text-shadow:none !important}
.main-page .dt .hero .display .ln>.it{background:none !important;-webkit-text-fill-color:#8C6B3F;color:#8C6B3F !important}
.main-page .dt .hero p.txt{color:#4A453E !important;text-shadow:none !important}
.main-page .dt .hero .cta-note,.main-page .dt .hero .cta-note span{color:#5F5950 !important}
.main-page .dt .hero .btn{color:#1F1E1C !important;border-color:#C9A86A !important}
.main-page .dt .hero .btn.line-l .ic,.main-page .dt .hero .btn.ol .ic{background:transparent !important;border:1.5px solid #C9A86A !important;color:#8C6B3F !important}
/* weiße Kennzahlenfläche (DC-03) ersetzt durch die Glaskarte am Ende der Datei */
.main-page .dt .hero .sc{border-color:#E2DBCE !important}
.main-page .dt .hero .sc .k{color:#7A5C33 !important}
.main-page .dt .hero .sc .v,.main-page .dt .hero .sc .v2{color:#1F1E1C !important}
.main-page .dt .hero .sc .d,.main-page .dt .hero .sc.net .d{color:#5F5950 !important}
.main-page .dt .hero .sc .lk{color:#7A5C33 !important}
.main-page .dt .hero .stars .ic{color:#B8924F !important;fill:#B8924F !important}
/* Schnelllinks der Startseite auf hellem Grund (Codex DC-02) */
.main-page .dt .hero .ways .t{color:#7A5C33}
.main-page .dt .hero .ways a{color:#22211F;border-color:#C9A86A;background:#FFFDF9;-webkit-backdrop-filter:none;backdrop-filter:none}
.main-page .dt .hero .ways a::after{color:#8C6B3F}
.main-page .dt .hero .ways a:hover{background:#F4EEE3}
/* Kopfzeile von Anfang an hell (wie nach dem Scrollen) */
.main-page .dt .site-hdr{background:rgba(250,249,246,.96);background-image:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#22211F;border-bottom:1px solid #E3DCCF}
.main-page .dt .site-hdr::before{display:none}
.main-page .dt .site-hdr .logo .lw{display:none !important}
.main-page .dt .site-hdr .logo .lb{display:block !important}
.main-page .dt .site-hdr .nav a,.main-page .dt .site-hdr .lsw a,.main-page .dt .site-hdr .lsw span{color:#22211F}
.main-page .dt .site-hdr .nav a.on{color:#7A5C33}   /* aktiver Menüpunkt dunkler: über dem dunklen Titelbild blendet die helle Kopfzeile leicht ab (gemessen 4,3:1 mit #8C6B3F) */
.main-page .dt .site-hdr .btn{color:#22211F}
.main-page .dt .burger{border-color:#CFC6B6}
/* DJ-Allianz-Zeichen auf der weißen Kennzahlenleiste dunkel zeigen wie am Handy (invert+screen ergab auf Weiß nur Weiß, Codex DD-01) */
.main-page .dt .hero .stats .sc.net .badge{filter:none !important;mix-blend-mode:multiply !important;opacity:1 !important}
}

/* Locations-Übersicht: Beschriftungen im Fotomosaik und auf schmalen Karten auf deckend dunklem Grund (Codex DC-04, DC-05) */
.lm-t::after{background:linear-gradient(0deg,rgba(14,13,12,.55) 0%,rgba(14,13,12,0) 45%)}
/* Übergang nur im oberen Innenabstand, die Schrift liegt immer auf mindestens 82 % Abdunklung (Codex-Nachkontrolle 7, DC-04 bei 321 px) */
.lm-c{left:0;right:0;bottom:0;padding:30px 18px 16px;background:linear-gradient(0deg,rgba(14,13,12,.9) 0,rgba(14,13,12,.82) calc(100% - 16px),rgba(14,13,12,0) 100%)}
/* Ortsname und Name aller Location-Karten auf deckend dunklem Band (auch die schon vorher schwachen kleinen Ortsnamen, Nachkontrolle 6) */
.rcard:not(.noimg) .t{left:0;right:0;bottom:0;padding:44px 22px 20px;background:linear-gradient(0deg,rgba(14,13,12,.9) 0,rgba(14,13,12,.82) calc(100% - 24px),rgba(14,13,12,0) 100%)}
@media (max-width:760px){
.lm-c{padding:22px 10px 10px}
.lcards .rcard:not(.noimg) .t{padding:34px 12px 12px}
.lcards.n5 .rcard b{font-size:16px}
}

/* ---------------------------------------------------------------- Finale Stilrunde (Janniks Markierungen vom 23.10.2026) */
/* 1. Faktenleiste der Unterseiten wie die Kennzahlen der Locations-Übersicht */
.lstats.xfacts2 .wrap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:#E3DCCF}
.lstats.xfacts2 .wrap:has(.lsi:nth-child(6)){grid-template-columns:repeat(6,minmax(0,1fr))}
.lstats.xfacts2 .lsi{background:#FFFFFF;padding:26px 20px 26px 0;border:0 !important;padding-left:20px}
.lstats.xfacts2 .lsi:first-child{padding-left:0}
.lstats.xfacts2 .lsi>span .k{display:block;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#7A5C33;font-weight:700;margin-bottom:3px}
.lstats.xfacts2 b{font-size:clamp(24px,2vw,30px)}
.lstats.xfacts2 .lstars{margin-left:2px}
@media (max-width:1100px){.lstats.xfacts2 .wrap,.lstats.xfacts2 .wrap:has(.lsi:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}.lstats.xfacts2 .lsi{padding:22px 16px}.lstats.xfacts2 .lsi:first-child{padding-left:16px}}
@media (max-width:760px){.lstats.xfacts2 .wrap,.lstats.xfacts2 .wrap:has(.lsi:nth-child(6)){grid-template-columns:repeat(2,minmax(0,1fr))}.lstats.xfacts2 .lsi{padding:18px 12px;grid-template-columns:38px minmax(0,1fr)}.lstats.xfacts2 .lsi:first-child{padding-left:12px}.lstats.xfacts2 b{font-size:22px}}
.xchap{border-top:0}
/* 2. Textreine Abschnitte: große Kapitelziffer, erster Absatz als Einleitung, goldene Linie */
.xsec-text .xsec-h{position:relative}
.xsec-text .xnum{position:absolute;left:-6px;top:-92px;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:200px;line-height:1;color:rgba(201,168,106,.16);pointer-events:none;user-select:none}
.xsec-text .xsec-b{border-left:1px solid #C9A86A;padding-left:40px}
.xsec-text .xsec-b>p:first-child{font-size:20px;line-height:1.6;color:#22211F}
.xsec-text .xsec-b>p{max-width:640px}
@media (max-width:760px){.xsec-text .xnum{font-size:120px;top:-56px;left:-4px}.xsec-text .xsec-b{border-left:0;padding-left:0;border-top:1px solid #C9A86A;padding-top:22px}.xsec-text .xsec-b>p:first-child{font-size:18px}}
/* 3. Eventseite: Einleitung unter der Überschrift statt rechts daneben, Leistungskarten mit Foto, Firmenlauf mit ganzem Aufbau */
.ev .occ-head,.ev .lt-head{display:block;margin-bottom:48px}
.ev .occ-head>.lead,.ev .lt-head>.lead{max-width:720px;margin-top:18px;font-size:18px;line-height:1.65;color:#4A453E}
.ev .lt{padding:0;overflow:hidden;gap:0;background:#FFFFFF}
.ev .lt .rph{width:100%;height:250px;border-radius:0;box-shadow:none;object-fit:cover;object-position:50% 40%}
.ev .lt .rph.icn{display:grid;place-items:center;background:#F3E9D6;color:#8C6B3F}
.ev .lt .rph.icn .ic{width:40px;height:40px}
.ev .lt h3{margin:22px 26px 0;font-size:21px}
.ev .lt p{margin:10px 26px 0;flex:1}
.ev .lt .tg{margin:18px 26px 24px;border-color:#C9A86A;color:#7A5C33;background:#FFFDF9}
.ev .lt .tg.k{background:#8C6B3F;border-color:#8C6B3F;color:#fff}
.ev .ph .tno{font-size:52px}
.ev .run-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);grid-template-areas:"fig tl" "cap tl";gap:12px 64px;align-items:start}
.ev .run-grid .run-img{grid-area:fig;height:auto;aspect-ratio:3/4;margin:0}
.ev .run-grid .run-img img{width:100%;height:100%;object-fit:cover;object-position:50% 50% !important}
.ev .run-grid .run-cap{grid-area:cap;margin:0;font-size:13px;color:#5F5950}
.ev .run-grid .tline{grid-area:tl;grid-template-columns:1fr;gap:0;margin:0;align-self:center;padding-left:4px}
.ev .run-grid .tline::before{content:"";position:absolute;left:9px;top:10px;bottom:14px;width:1px;background:#DDD3C3}
.ev .run-grid .tline li{padding:0 0 28px 44px}
.ev .run-grid .tline li i{position:absolute;left:4px;top:8px;width:11px;height:11px;border-radius:50%;background:#C9A86A;box-shadow:0 0 0 4px #F8F6F1}
.ev .run-grid .tline b{font-size:30px}
@media (max-width:900px){.ev .run-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"fig" "cap" "tl";gap:10px}.ev .run-grid .tline{margin-top:28px}.ev .run-grid .run-img{aspect-ratio:4/5}}
/* 4. Über mich: Referenzen als dunkles Band, DJ-Allianz als Sandband */
.csec.band-dark{background:#1E1C1A;color:#fff}
.csec.band-dark .h2,.csec.band-dark h3,.csec.band-dark .h3x,.csec.band-dark b{color:#fff}
.csec.band-dark p{color:rgba(255,255,255,.82)}
.csec.band-dark .tl-link{color:#E2C38D}
.csec.band-dark .refi{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:#fff}
.csec.band-dark .refi .k{color:#E2C38D}
.csec.band-dark .refi .lg{background:#fff;border-radius:6px;padding:10px}
.csec.band-dark .refi small{color:rgba(255,255,255,.65)}
.csec.band-dark .refmore{border-color:rgba(255,255,255,.18)}
.csec.band-dark .refmore summary{color:#fff}
.csec.band-dark .refcols li,.csec.band-dark .refcols small{color:rgba(255,255,255,.75)}
.csec.band-dark .refcols b{color:#fff}
.csec.band-sand{background:#F3E9D6}
.csec.band-sand .bdg{background:#FFFDF9}
/* 5. Reiseziele: Abschnitte großzügiger (nur Desktop, die Handyregeln aus sub.css bleiben) */
@media (min-width:1001px){
.dsec{grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:24px 56px;padding:40px 0 48px}
.dsec.with-fig{grid-template-columns:minmax(0,3.2fr) minmax(0,5fr) minmax(0,3.8fr)}
.dsec-fig img{height:300px;border-radius:2px}
.dsec .dname{font-size:46px}
}
.dsec .dsec-t h3{font-size:24px}
.dsec .dsec-t p{font-size:17px;line-height:1.65}
/* Faktenleiste auf sehr schmalen Handys: Zahl darf umbrechen, Schrift etwas kleiner */
.lstats.xfacts2 b{min-width:0;overflow-wrap:anywhere}
@media (max-width:400px){.lstats.xfacts2 b{font-size:19px}.lstats.xfacts2 .lsi{grid-template-columns:34px minmax(0,1fr);column-gap:10px;padding:16px 10px}.lstats.xfacts2 .lsi-ic{width:34px;height:34px;padding:8px}}

/* ---------------------------------------------------------------- Kennzahlen als durchgehende Glasleiste im Titelbild (Janniks Markierung 3f9086148e vom 23.10.2026:
   „über die volle Länge, lesbar und so transparent wie möglich in das große Foto mit einbinden. Auf allen Seiten.“) ab 761 px.
   Deckkraft so niedrig wie der gemessene Kontrast erlaubt (4,5:1 für kleine Schrift gegen den tatsächlich gerenderten Untergrund). */
@media (min-width:761px){
.main-page .dt .hero .stats{background:rgba(255,255,255,.62) !important;background-image:none !important;border-top:1px solid rgba(255,255,255,.75) !important;-webkit-backdrop-filter:blur(24px) saturate(1.2);backdrop-filter:blur(24px) saturate(1.2);bottom:0}
.main-page .ev .hero .kpis{background:linear-gradient(0deg,rgba(14,13,12,.62) 0%,rgba(14,13,12,.22) 100%) !important;background-image:linear-gradient(0deg,rgba(14,13,12,.62) 0%,rgba(14,13,12,.22) 100%) !important;border-top:0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);bottom:0}
.main-page .ev .hero .kpis > .wrap{border-top:1px solid rgba(227,199,143,.45) !important;padding-top:22px}
.main-page .dt .hero .stats > .wrap,.main-page .ev .hero .kpis > .wrap{background:none;border:0;box-shadow:none;border-radius:0}
.main-page .dt .hero .stats .sc{border-color:rgba(31,30,28,.16) !important}
.main-page .dt .hero .stats .sc .k,.main-page .dt .hero .stats .sc .lk{color:#2E2316 !important}   /* kleine Beschriftungen dunkler, damit sie auch über dunklen Fotostellen 4,5:1 halten */
.main-page .dt .hero .stats .sc .d,.main-page .dt .hero .stats .sc.net .d{color:#3A3631 !important}
.main-page .dt .hero .stats .sc .v,.main-page .dt .hero .stats .sc .v2{color:#15140F !important}
}

/* Faktenleiste mit Textwerten (Location-Detailseiten) und wenigen Spalten */
.lstats.xfacts2 b.t{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:clamp(17px,1.4vw,20px);line-height:1.3;letter-spacing:-.01em}
.lstats.xfacts2 b a{color:inherit;text-decoration:none;border-bottom:1px solid #C9A86A}
.lstats.xfacts2 b a:hover{color:#4A3820;border-bottom-color:#8C6B3F}
.lstats.xfacts2.n3 .wrap{grid-template-columns:repeat(3,minmax(0,1fr))}
.lstats.xfacts2.n4 .wrap{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px){.lstats.xfacts2.n3 .wrap,.lstats.xfacts2.n4 .wrap{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.lstats.xfacts2 b.t{font-size:16px}}
/* Links in der Faktenleiste als Berührziel mindestens 24 px hoch */
.lstats.xfacts2 b a{display:inline-block;padding:3px 0;line-height:1.3}

/* ---------------------------------------------------------------- Faktenleiste über die volle Breite (Janniks Markierung 7521119b7e vom 23.10.2026).
   Band und Linien laufen über die Fensterbreite; die Zellen nutzen bis 1520 px die volle Breite und halten darüber Abstand zu einem 1600-px-Raster (bei 1600 px 40 px je Seite) (Außenabstand am Rahmen, nicht in der ersten Zelle: Codex DF-01). */
.lstats.xfacts2{background:linear-gradient(180deg,#FFFFFF 0%,#FBF9F5 100%);border-top:1px solid #E3DCCF;border-bottom:1px solid #E3DCCF}
.lstats.xfacts2 .wrap{max-width:none;padding:0 clamp(0px,calc((100vw - 1600px) / 2 + 40px),50vw);background:#E3DCCF;background-clip:content-box}
.lstats.xfacts2 .lsi{padding:30px 28px;background:#FFFFFF}
.lstats.xfacts2 .lsi:first-child{padding-left:28px}
.lstats.xfacts2 .lsi:last-child{padding-right:28px}
@media (max-width:1100px){.lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:22px 20px}}
@media (max-width:760px){.lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:18px 14px}}

/* Reisezielfotos: Querformat 3:2 (1800 × 1200) aus den Pexels-Originalen zugeschnitten (Codex DF-05/DF-06), Tablets mit mehr Bildhöhe */
.dsec-fig img[src*="reise-mallorca"]{object-position:50% 40%}
@media (min-width:761px) and (max-width:1000px){.dsec-fig img{height:360px}}

/* Faktenleiste: keine Wortzerstückelung (Codex DF-01, Rest aus Nachkontrolle 9). Umbruch nur zwischen Wörtern; dafür bei fünf/sechs Werten erst ab 1401 px alle Werte in einer Zeile, dazwischen drei Spalten, und auf sehr schmalen Handys das Symbol über dem Text. */
.lstats.xfacts2 b,.lstats.xfacts2 .lsi>span{overflow-wrap:normal;word-break:normal;hyphens:manual}
.lstats.xfacts2 .lsi>span .k{letter-spacing:.14em}
@media (min-width:1101px) and (max-width:1400px){.lstats.xfacts2 .wrap,.lstats.xfacts2 .wrap:has(.lsi:nth-child(6)){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1101px) and (max-width:1700px){.lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:26px 20px}}
@media (max-width:400px){.lstats.xfacts2 .lsi{grid-template-columns:minmax(0,1fr);row-gap:6px}.lstats.xfacts2 .lsi-ic{grid-row:auto}}

/* Locations-Übersicht (Kennzahlenleiste ohne xfacts2): ebenfalls keine Wortzerstückelung, unter 401 px Symbol über dem Text (Codex Nachkontrolle 10, DF-01 Rest) */
.lstats b,.lstats .lsi>span{overflow-wrap:normal;word-break:normal;hyphens:manual}
@media (max-width:400px){.lstats .lsi{grid-template-columns:minmax(0,1fr);row-gap:6px}.lstats .lsi-ic{grid-row:auto}}

/* Janniks Anmerkungen vom 25.10.2026 */
/* Hervorgehobene Begriffe (Gold, Cormorant kursiv) auch in den Überschriften aller Unterseiten (83bcdda143, da5c2ef813) */
.h1x .it,.h2 .it,.h3x .it,.display-s .it{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:400;color:#8C6B3F;font-size:1.06em}
.xband .it,.band-dark .it{color:#E3C78F}
@media (min-width:761px){.lhero:not(.lsplit):not(.noimg) .it,.rhero .display-s .it{color:#E3C78F}}   /* nur auf dunklem Titelgrund; .lsplit/.noimg-Titel der Event-Locations sind hell */   /* Location- und Regionaltitel sind nur ab 761 px dunkel hinterlegt (sub.css), mobil hell: dort bleibt das normale Gold */
/* „Ich bin Jannik“ auch auf der Hochzeitsseite weit oben (8015ee5ca9) */
#jannik.about{background:#F5EFE5}
#jannik .ab{display:grid;grid-template-columns:6fr 6fr;gap:96px;align-items:center}
#jannik .ab p{margin:0 0 18px;color:#5F5950}
@media (max-width:1100px){#jannik .ab{gap:56px}}
#jannik .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:34px 0 38px;border-top:1px solid rgba(31,30,28,.12)}
#jannik .fact{display:block;padding:24px 20px 0 0}   /* die Hochzeitsseite legt .fact sonst als Raster mit 56-px-Bildspalte an */
#jannik .fact+.fact{padding-left:20px;border-left:1px solid rgba(31,30,28,.12)}
#jannik .fact b{display:block;font-weight:600;font-size:16px;margin-bottom:4px;color:#1F1E1C}
#jannik .fact span{font-size:14.5px;color:#5F5950;line-height:1.5;display:block}
@media (max-width:1100px){#jannik .facts{grid-template-columns:minmax(0,1fr);margin:28px 0 32px}#jannik .fact{padding:16px 0 0}#jannik .fact+.fact{padding-left:0;border-left:0;border-top:1px solid rgba(31,30,28,.12);margin-top:16px}}
@media (max-width:760px){#jannik .ab{grid-template-columns:minmax(0,1fr);gap:40px}}

/* Locations-Übersicht: Kennzahlen als helle Glaskarte, die in das Fotomosaik hineinragt (Janniks Wahl vom 25.10.2026, Markierung 7c3e0691c0, Variante B) */
.lohero{padding-bottom:72px}
.lohero + .lstats{position:relative;z-index:2;margin-top:-52px;background:none;border:0}   /* ragt nur in den freien Rand unter Text und Mosaik, verdeckt nichts (Codex DJ-01) */
.lohero + .lstats .wrap{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(18px) saturate(1.2);backdrop-filter:blur(18px) saturate(1.2);border:1px solid rgba(201,168,106,.45);box-shadow:0 24px 60px rgba(31,30,28,.12);border-radius:2px;padding:0 8px}
.lohero + .lstats .lsi{padding:30px 28px 30px 24px}
.lohero + .lstats .lsi+.lsi{border-left:1px solid rgba(31,30,28,.12)}
.lohero + .lstats + .lregnav{padding-top:88px}
@media (max-width:760px){.lohero{padding-bottom:56px}.lohero + .lstats{margin:-30px 12px 0}.lohero + .lstats .wrap{padding:0}.lohero + .lstats .lsi{padding:18px 14px}.lohero + .lstats .lsi:nth-child(3){border-left:0}.lohero + .lstats .lsi:nth-child(n+3){border-top:1px solid rgba(31,30,28,.12)}}

/* ---------------------------------------------------------------- Titelbereiche „wie die aktuelle djtrenz.de“ (Janniks Markierung 01a98dbdc0 und Bild vom 25.10.2026: Variante A).
   Ab 761 px: Foto vollflächig sichtbar, dunkler Verlauf nur links und oben, helle Schrift, Kennzahlen als transparente Zeile mit feinen Linien direkt im Bild (Start, Hochzeit; Event war schon dunkel). Mobil bleibt der helle Aufbau. */
@media (min-width:761px){
.main-page .dt .hero,.main-page .dt .hero:has(img.bg){background:#171614 !important;color:#F7F2EA}
.main-page .dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.45) 0,rgba(14,13,12,0) 260px),linear-gradient(90deg,rgba(14,13,12,.9) 0%,rgba(14,13,12,.84) 42%,rgba(14,13,12,.62) 68%,rgba(14,13,12,.38) 100%) !important}   /* Verlauf so stark, dass kleine helle Schrift 4,5:1 hält (gemessen gegen das gerenderte Foto) */
.main-page .dt .hero .h1,.main-page .dt .hero .lbl{color:#EAD6AE !important}
.main-page .dt .hero .display{color:#FFFFFF !important}
.main-page .dt .hero .display .ln>.it{color:#E3C78F !important;-webkit-text-fill-color:#E3C78F}
.main-page .dt .hero p.txt{color:#FFFFFF !important}
.main-page .dt .hero .cta-note,.main-page .dt .hero .cta-note span{color:#F4EFE6 !important}
.main-page .dt .hero .btn{color:#FFFFFF !important}   /* Knopftext hell auf dem Foto; der Kreis bleibt gold */
.main-page .dt .hero .btn.line-l .ic,.main-page .dt .hero .btn.ol .ic{border-color:#E3C78F !important;color:#E3C78F !important}
.main-page .dt .hero .ways .t{color:#EAD6AE}
.main-page .dt .hero .ways a{color:#FFFFFF;border-color:rgba(255,255,255,.4);background:rgba(255,255,255,.08)}
.main-page .dt .hero .ways a::after{color:#E3C78F}
.main-page .dt .hero .ways a:hover{background:rgba(255,255,255,.18)}
.main-page .dt .hero .stats{background:linear-gradient(0deg,rgba(14,13,12,.92) 0%,rgba(14,13,12,.72) 100%) !important;background-image:linear-gradient(0deg,rgba(14,13,12,.92) 0%,rgba(14,13,12,.72) 100%) !important;border-top:0 !important;-webkit-backdrop-filter:blur(8px) !important;backdrop-filter:blur(8px) !important}
.main-page .dt .hero .stats > .wrap{border-top:1px solid rgba(255,255,255,.35) !important;padding-top:22px}
.main-page .dt .hero .stats .sc{border-color:rgba(255,255,255,.22) !important}
.main-page .dt .hero .stats .sc .k,.main-page .dt .hero .stats .sc .lk{color:#EAD6AE !important}
.main-page .dt .hero .stats .sc .v,.main-page .dt .hero .stats .sc .v2{color:#FFFFFF !important}
.main-page .dt .hero .stats .sc .d,.main-page .dt .hero .stats .sc.net .d{color:#F4EFE6 !important}
.main-page .dt .hero .stats .sc.net .badge{filter:brightness(0) invert(1) !important;mix-blend-mode:normal !important;opacity:.95 !important}
.main-page .dt .hero .stars .ic{color:#E3C78F !important;fill:#E3C78F !important}
.main-page .ev .hero .kpis{background:linear-gradient(0deg,rgba(14,13,12,.92) 0%,rgba(14,13,12,.72) 100%) !important;background-image:linear-gradient(0deg,rgba(14,13,12,.92) 0%,rgba(14,13,12,.72) 100%) !important;-webkit-backdrop-filter:blur(8px) !important;backdrop-filter:blur(8px) !important}
.main-page .ev .hero .kpis > .wrap{border-top:1px solid rgba(255,255,255,.35) !important}
}
@media (min-width:761px) and (max-width:1100px){.main-page .dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.45) 0,rgba(14,13,12,0) 260px),linear-gradient(90deg,rgba(14,13,12,.9) 0%,rgba(14,13,12,.86) 55%,rgba(14,13,12,.72) 80%,rgba(14,13,12,.55) 100%) !important}}   /* Tablet: Text reicht weiter nach rechts */

/* ---------------------------------------------------------------- Linienführung einheitlich (Janniks Markierung ea9f2767e0 vom 26.10.2026)
   1. Titelbild Start/Hochzeit/Event: nur eine durchgehende Linie über den Kennzahlen, senkrechte Trennlinien stoßen an sie an. */
@media (min-width:761px){
.main-page .dt .hero .stats > .wrap,.main-page .ev .hero .kpis > .wrap{border-top:0 !important;padding-top:0 !important}
.main-page .dt .hero .stats .grid{padding:0 !important;border-top:1px solid rgba(255,255,255,.32) !important}
.main-page .dt .hero .stats .sc{padding:26px 32px 30px !important}
.main-page .dt .hero .stats .sc:first-child{padding-left:0 !important}
.main-page .ev .hero .kpis .grid{border-top:1px solid rgba(255,255,255,.32) !important}
.main-page .dt .hero .stats .sc,.main-page .ev .hero .kpis .kp{border-color:rgba(255,255,255,.2) !important}
}
/* 2. Goldrahmen um Fotos überall gleich: um 14 px nach rechts unten versetzt (wie .gf); vorher Location-Details mit umlaufendem Rahmen und Locations-Mosaik nach links oben */
.lfig{padding:0 !important;border:0 !important;margin:0 14px 0 0 !important}
.lfig img{box-shadow:14px 14px 0 0 #F1ECE3,14px 14px 0 1px #C9A86A}
.lfig figcaption{margin-top:24px}
.lmosaic::before{inset:16px -16px -16px 16px}
@media (max-width:760px){.lmosaic::before{inset:10px -10px -10px 10px}.lfig{margin:0 10px 0 0 !important}.lfig img{box-shadow:10px 10px 0 0 #F1ECE3,10px 10px 0 1px #C9A86A}.lfig figcaption{margin-top:18px}}
/* 3. Glaskarte der Locations-Übersicht exakt auf der Inhaltskante (1120 px wie Text und Mosaik) */
@media (min-width:761px){.lohero + .lstats .wrap{max-width:none;width:min(1120px,calc(100% - 80px));margin:0 auto;padding:0}}
@media (min-width:761px) and (max-width:1100px){.lohero + .lstats .wrap{width:calc(100% - 64px)}}   /* Kante am responsiven Seitenrand (Codex DK-03) */

/* Codex DJ-02: Titelknöpfe der Eventseite behalten beim Überfahren helle Schrift (vorher dunkel auf transparent) */
@media (min-width:761px){.main-page .ev .hero .btn:hover,.main-page .ev .hero .btn.ol:hover{color:#FFFFFF !important}}   /* nur auf dem dunklen Titelbild; mobil liegt der Text auf hellem Grund (Codex DK-01) */
/* Codex DJ-03: goldene Titelzeile im White-Wedding-Fotoblock über hellen Fotostellen lesbar */
.wwf-scrim{background:linear-gradient(0deg,rgba(18,17,15,.94) 0%,rgba(18,17,15,.82) 48%,rgba(18,17,15,.55) 80%,rgba(18,17,15,.32) 100%) !important}
.wwf-in .display .it{color:#F0DDB4 !important}

/* ---------------------------------------------------------------- Titelbild „Mischung aus B und C“ (Janniks Wahl vom 26.10.2026 zur Markierung ea9f2767e0):
   heller als zuvor, Kennzahlen auf durchscheinendem Glasband mit Verlauf nach oben, helle Beschriftungen; Tablet 761–1100 px dunkler, weil der Text dort weiter ins Foto reicht.
   Kontrast mit Codex' Verfahren gemessen: 6 Seiten × 6 Breiten, 36 von 36 Fällen ohne Unterschreitung. */
@media (min-width:761px){
.main-page .dt .hero .lbl,.main-page .dt .hero .display,.main-page .dt .hero p.txt,.main-page .dt .hero .cta-note,.main-page .dt .hero .stats .sc,.main-page .ev .hero .kpis .kp{text-shadow:0 1px 2px rgba(0,0,0,.3),0 2px 16px rgba(0,0,0,.28)}
}
/* V5 „Mischung B und C“: Foto heller als C, Glasband durchscheinender mit Verlauf nach oben, damit es ins Bild übergeht; Beschriftungen hell; Tablet wie C */
@media (min-width:761px){
.main-page .dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.34) 0,rgba(14,13,12,0) 210px),linear-gradient(90deg,rgba(14,13,12,.8) 0%,rgba(14,13,12,.64) 40%,rgba(14,13,12,.28) 65%,rgba(14,13,12,.05) 100%) !important}
.main-page .dt .hero .stats,.main-page .ev .hero .kpis{background:linear-gradient(0deg,rgba(14,13,12,.56) 0%,rgba(14,13,12,.4) 100%) !important;background-image:linear-gradient(0deg,rgba(14,13,12,.56) 0%,rgba(14,13,12,.4) 100%) !important;-webkit-backdrop-filter:blur(20px) saturate(1.15) !important;backdrop-filter:blur(20px) saturate(1.15) !important}
.main-page .dt .hero .lbl,.main-page .dt .hero .stats .sc .k,.main-page .dt .hero .stats .sc .lk,.main-page .ev .hero .kpis .k{color:#F4E6C9 !important}
.main-page .dt .hero .stats .sc .d,.main-page .dt .hero .cta-note span{color:#FFFFFF !important}
.main-page .dt .hero .ways a{background:rgba(14,13,12,.28) !important;color:#FFFFFF !important}
}
@media (min-width:761px) and (max-width:1200px){
.main-page .dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.4) 0,rgba(14,13,12,0) 240px),linear-gradient(90deg,rgba(14,13,12,.88) 0%,rgba(14,13,12,.82) 55%,rgba(14,13,12,.66) 80%,rgba(14,13,12,.5) 100%) !important}
}
@media (min-width:761px){
.main-page .dt .hero .stats .sc.net .k{color:#FFFFFF !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats{background:linear-gradient(0deg,rgba(14,13,12,.58) 0%,rgba(14,13,12,.46) 100%) !important;background-image:linear-gradient(0deg,rgba(14,13,12,.58) 0%,rgba(14,13,12,.46) 100%) !important}
}

@media (min-width:761px){.main-page .dt .hero .stats .sc.net .v2,.main-page .dt .hero .stats .sc.net .d{color:#FFFFFF !important}}

/* Codex DK-02: Hochzeits-Titelbild (helles Schwarzweißfoto) ab 1201 px links etwas kräftiger abdunkeln, damit kleine Hinweise auch über hellen Stellen 4,5:1 halten */
@media (min-width:1201px){.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .scrim{background:linear-gradient(180deg,rgba(14,13,12,.34) 0,rgba(14,13,12,0) 210px),linear-gradient(90deg,rgba(14,13,12,.84) 0%,rgba(14,13,12,.72) 40%,rgba(14,13,12,.4) 65%,rgba(14,13,12,.1) 100%) !important}}
/* Codex DK-04: Eventkarten bis 1100 px (breite, flache Karten) Ausschnitt höher, Kopf vollständig */
.ev .lt .rph[src*="jannik-moderation"]{object-position:50% 10% !important}   /* ganzer Kopf mit Haar und Kinn (Codex DK-04, DL-01) */
@media (max-width:1100px){.ev .lt .rph[src*="jannik-ansprechpartner"]{object-position:50% 10% !important}}
@media (min-width:761px) and (max-width:1100px){.ev .lt .rph[src*="jannik-moderation"]{object-position:50% 5% !important}}
@media (max-width:760px){.ev .lt .rph{height:340px}.ev .lt .rph[src*="jannik-moderation"]{object-position:50% 5% !important}}   /* einspaltig: flache 718-px-Karten brauchen mehr Höhe, damit der Kopf vollständig passt */

/* ================================================================ Runde 27.10.2026 (Janniks Markierungen 12:48–12:57, Entscheidungen im Chat, befunde.md Abschnitt 14) */
/* Kontakt-Knöpfe unter den Abschnitten (persönlich, „Schreibt mir einfach“ usw.) */
.cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:40px}
.cta-row .cta-hint{font-size:14px;color:#5F5950}
.shead + .cta-row,.pnote + .cta-row{margin-top:28px}
.rvs .cta-row{margin-top:34px}
.places .cta-row{margin-top:30px}
/* Fragenbereich: zwei Spalten, links Überschrift mit Ansprechkarte, rechts alle Fragen nummeriert (Hauptseiten und Unterseiten) */
.qx{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:72px;align-items:start}
.qx-sub{margin-top:18px}
.qx-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px 18px;align-items:center;margin-top:30px;padding:24px 26px;background:#FFFFFF;border:1px solid #E6DED0;border-top:2px solid #C9A86A}
.qx-card .rph{width:64px;height:64px;border-radius:50%;object-fit:cover;margin:0;box-shadow:0 0 0 3px #FFFFFF,0 0 0 4px #C9A86A}
.qx-tx b{display:block;font-size:17px;font-weight:600;margin-bottom:4px;color:#1F1E1C}
.qx-tx span{display:block;font-size:14px;line-height:1.55;color:#5F5950}
.qx-bt{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px}
.qx-l2{font-size:14px;font-weight:600;color:#7A5C33;text-decoration:none;border-bottom:1px solid rgba(140,107,63,.45);padding-bottom:2px}
.qx-l2:hover{color:#1F1E1C;border-color:#1F1E1C}
.qx-r details{border-top:1px solid rgba(31,30,28,.12)}
.qx-r details:last-of-type{border-bottom:1px solid rgba(31,30,28,.12)}
.qx-r summary{display:grid;grid-template-columns:44px minmax(0,1fr) 32px;align-items:center;padding:22px 0;font-size:18px;font-weight:500;line-height:1.4;cursor:pointer;list-style:none}
.qx-r summary::-webkit-details-marker{display:none}
.qx-r summary .n{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;color:#8C6B3F;font-size:22px;line-height:1}
.qx-r summary .pm{justify-self:end;color:#8C6B3F}
.qx-r details[open] summary .pm{transform:rotate(45deg)}
.qx-r details p{margin:0 0 24px 44px;color:#5F5950;font-size:15px;line-height:1.65;max-width:62ch}
.qx-r .faq-more{display:flex;flex-wrap:wrap;gap:12px 26px;padding-top:26px}
@media (max-width:900px){
 .qx{grid-template-columns:1fr;gap:0}
 .qx-l{display:contents}
 .qx-l > .lbl,.qx-l > .h2,.qx-l > .qx-sub{order:1}
 .qx-r{order:2;margin-top:28px}
 .qx-card{order:3;margin-top:34px}
 .qx-r summary{font-size:17px;grid-template-columns:38px minmax(0,1fr) 28px}
 .qx-r details p{margin-left:38px}
}
@media (max-width:420px){.qx-card{grid-template-columns:52px minmax(0,1fr);padding:20px}.qx-card .rph{width:52px;height:52px}.qx-r details p{margin-left:0}}
/* Destination Weddings als vier Reiseziele (Hochzeitsseite) */
.dwtiles{margin-top:44px;padding-top:36px;border-top:1px solid rgba(31,30,28,.12)}
.dwt-h{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:22px}
.dwt-h .k{margin:0 0 10px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:#7A5C33;font-weight:600}
.dwt-h .h{margin:0;font-size:30px;line-height:1.15;color:#1F1E1C}
.dwt-h .h .it{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;color:#8C6B3F;font-size:1.08em}
.dwt-h .t{margin:10px 0 0;font-size:15px;color:#5F5950;max-width:60ch}
.dwt-h .tl-link{white-space:nowrap}
.dwt-g{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.dwt{position:relative;display:block;aspect-ratio:4/5;overflow:hidden;color:#FFFFFF;text-decoration:none;background:#1F1E1C}
.dwt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.dwt:hover img{transform:scale(1.04)}
.dwt::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,13,12,.7) 0%,rgba(14,13,12,0) 55%)}
.dwt span{position:absolute;left:18px;bottom:16px;z-index:1;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:26px;line-height:1.1}
@media (max-width:900px){.dwt-g{grid-template-columns:repeat(2,minmax(0,1fr))}.dwt-h{flex-direction:column;align-items:flex-start}}
@media (max-width:420px){.dwt span{font-size:22px;left:14px;bottom:12px}}
/* Kennzahlenband im Titelbild deutlich transparenter (Wahl B, alle Hauptseiten ab 761 px) */
@media (min-width:761px){
.main-page .dt .hero .stats,.main-page .ev .hero .kpis{background:linear-gradient(0deg,rgba(14,13,12,.34) 0%,rgba(14,13,12,.16) 100%) !important;background-image:linear-gradient(0deg,rgba(14,13,12,.34) 0%,rgba(14,13,12,.16) 100%) !important;-webkit-backdrop-filter:blur(12px) saturate(1.2) !important;backdrop-filter:blur(12px) saturate(1.2) !important}
.main-page .dt .hero .stats .sc,.main-page .ev .hero .kpis .kp{text-shadow:0 1px 2px rgba(0,0,0,.5),0 2px 14px rgba(0,0,0,.45) !important}
}
/* Hochzeitsseite: helles Titelbild (Wahl A „Heller Schleier“), gleiches Foto, dunkle Schrift, helles Kennzahlenband */
@media (min-width:761px){
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .scrim{background:linear-gradient(90deg,rgba(250,246,239,.95) 0%,rgba(250,246,239,.88) 34%,rgba(250,246,239,.5) 58%,rgba(250,246,239,.1) 100%) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) img.bg{filter:brightness(1.1) contrast(.92) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .lbl{color:#7A5C33 !important;text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .display,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .display span{color:#22211F !important;text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .display .ln>.it{color:#8C6B3F !important;-webkit-text-fill-color:#8C6B3F !important;background:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) p.txt,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .cta-note,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .cta-note span{color:#3A3631 !important;text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.light,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.light *{color:#22211F !important;text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.line-l,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.line-l *{color:#22211F !important;border-color:rgba(34,33,31,.35) !important;text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats{background:linear-gradient(0deg,rgba(250,246,239,.92) 0%,rgba(250,246,239,.76) 100%) !important;background-image:linear-gradient(0deg,rgba(250,246,239,.92) 0%,rgba(250,246,239,.76) 100%) !important;-webkit-backdrop-filter:blur(18px) saturate(1.1) !important;backdrop-filter:blur(18px) saturate(1.1) !important;border-top:1px solid rgba(140,107,63,.35) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc *{text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .k,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .lk,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net .k{color:#7A5C33 !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .v,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .v2,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .d,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net .v2,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net .d{color:#22211F !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .grid,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc{border-color:rgba(140,107,63,.28) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net img.badge{filter:brightness(.3) sepia(.5) !important}
}
@media (min-width:761px) and (max-width:1200px){
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .scrim{background:linear-gradient(90deg,rgba(250,246,239,.96) 0%,rgba(250,246,239,.92) 55%,rgba(250,246,239,.74) 80%,rgba(250,246,239,.5) 100%) !important}
}
/* Über mich: Clubs und DJ-Allianz über die volle Breite (Wahl A), Clubs mit Burgfest-Foto, Profile rechts */
.csec .wrap.two{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center}
.csec .wrap.two .csec-t{max-width:none !important;width:auto !important}
.band-dark .bph{margin:0}
.band-dark .bph img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;box-shadow:14px 14px 0 0 #1A1917,14px 14px 0 1px #C9A86A}
.band-dark .bph figcaption{font-size:12px;color:#BDB5A8;margin-top:24px}
.band-sand .wrap.two .badges{display:grid !important;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 !important}
.band-sand .wrap.two .badges .bdg{width:auto !important;margin:0 !important}
.bdg-tx .bdg-w{display:grid;place-items:center;height:48px;font-weight:700;font-size:19px;letter-spacing:.01em;color:#1F5E43}
@media (max-width:900px){
 .csec .wrap.two{grid-template-columns:1fr;gap:40px}
 .band-dark .bph{max-width:420px}
 .band-sand .wrap.two .badges{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Fragen in Ratgeber-Abschnitten (xsec): Ansprechkarte unter der Überschrift, Fragen nummeriert */
.xsec-h .qx-card{margin-top:26px}
.xqa.qx-r{border-top:0 !important}
.xqa.qx-r details{padding:0 !important}
/* Helle Knöpfe (goldener Kreis) auf hellem Grund mit dunkler Schrift: Kontakt-Knöpfe und Ansprechkarte */
.cta-row .btn.light,.qx-card .btn.light{color:#1F1E1C !important}
.cta-row .btn.light:hover,.qx-card .btn.light:hover{color:#1F1E1C !important}
.rvs .cta-row{justify-content:flex-start}
.rvs .cta-row .cta-hint{color:#5F5950}
/* Kontrast nach Messung 27.10.2026 (Codex-Verfahren, 6 Seiten × 22 Breiten): Netzwerk-Feld rechts im transparenten Band über hellen Bildstellen
   mit zusätzlicher Abdunklung nur am rechten Rand; helles Hochzeits-Titelbild: kleine Zeile über der Überschrift dunkler */
@media (min-width:761px){
.main-page .dt .hero:not(:has(img.bg[src*="hochzeit-hero"])) .stats{background-image:linear-gradient(90deg,rgba(14,13,12,0) 50%,rgba(14,13,12,.34) 78%,rgba(14,13,12,.42) 100%),linear-gradient(0deg,rgba(14,13,12,.34) 0%,rgba(14,13,12,.16) 100%) !important}
.main-page .dt .hero .stats .sc.net *{text-shadow:0 1px 2px rgba(0,0,0,.6),0 2px 16px rgba(0,0,0,.55) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net *{text-shadow:none !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .lbl{color:#5C4322 !important}
}
/* ---------------------------------------------------------------- Runde 27.10.2026 nachmittags (Markierungen 14:09–14:15, Wahl im Chat):
   Kennzahlen wie auf der Live-Seite (Wahl A): kein Band, feine Linie, Zahlen 36 px, feine Trennlinien, Foto unten sanft abgedunkelt.
   Hochzeitsseite: schlanke Variante C ohne Trennlinien, so transparent wie auf der Startseite, dunkle Schrift; Titelfoto deutlich herausgezoomt (Wahl 2). */
@media (min-width:761px){
.main-page .dt .hero .stats,.main-page .dt .hero:has(img.bg) .stats,.main-page .dt .hero:not(:has(img.bg[src*="hochzeit-hero"])) .stats,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats,.main-page .ev .hero .kpis{background:none !important;background-image:none !important;-webkit-backdrop-filter:none !important;backdrop-filter:none !important;border-top:0 !important}
.main-page .dt .hero .stats::before,.main-page .ev .hero .kpis::before{content:"";position:absolute;left:0;right:0;bottom:0;height:360px;background:linear-gradient(0deg,rgba(14,13,12,.66) 0%,rgba(14,13,12,.36) 45%,rgba(14,13,12,0) 100%);pointer-events:none;z-index:0}
.main-page .dt .hero .stats .wrap,.main-page .ev .hero .kpis .wrap{position:relative;z-index:1}
.main-page .dt .hero .stats .grid,.main-page .ev .hero .kpis .grid{border-top:1px solid rgba(238,229,208,.32) !important;padding:24px 0 30px !important}
.main-page .dt .hero .stats .sc,.main-page .ev .hero .kpis .kp{border:0 !important;padding:0 24px 0 28px !important;border-left:1px solid rgba(238,229,208,.22) !important;background:none !important}
.main-page .dt .hero .stats .sc:first-child,.main-page .ev .hero .kpis .kp:first-child{border-left:0 !important;padding-left:0 !important}
.main-page .dt .hero .stats .sc .v,.main-page .ev .hero .kpis .kp .v{font-size:36px !important;line-height:1.1 !important;gap:10px !important}
.main-page .ev .hero .kpis .kp .v[style]{font-size:15px !important;line-height:1.45 !important;margin-top:6px !important}
.main-page .dt .hero .stats .sc .v .stars svg,.main-page .ev .hero .kpis .kp .v .stars svg{width:15px !important;height:15px !important}
.main-page .dt .hero .stats .sc .v2{font-size:15px !important;line-height:1.35 !important}
.main-page .dt .hero .stats .sc .d,.main-page .ev .hero .kpis .kp .d{font-size:14px !important;margin-top:6px !important}
.main-page .dt .hero .stats .sc .k,.main-page .ev .hero .kpis .kp .k{font-size:11px !important;margin-bottom:8px !important}
.main-page .dt .hero .stats .sc .lk{font-size:13px !important}
.main-page .dt .hero .stats .sc.net img.badge{width:52px !important;height:52px !important}
.main-page .dt .hero .stats .sc,.main-page .dt .hero .stats .sc *,.main-page .ev .hero .kpis .kp,.main-page .ev .hero .kpis .kp *{text-shadow:0 1px 2px rgba(0,0,0,.45),0 2px 12px rgba(0,0,0,.35) !important}
/* Hochzeitsseite: Variante C (ohne Trennlinien, schlanker), transparent, dunkle Schrift */
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats::before{background:linear-gradient(0deg,rgba(250,246,239,.72) 0%,rgba(250,246,239,.38) 45%,rgba(250,246,239,0) 100%)}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .grid{border-top-color:rgba(140,107,63,.4) !important;column-gap:56px !important;padding:20px 0 26px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc{border-left:0 !important;padding-left:0 !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .v{font-size:30px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .d{font-size:13px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc *{text-shadow:none !important}
/* Hochzeitsseite: Titelfoto deutlich herausgezoomt, rechts in voller Höhe, links weich in die helle Fläche */
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]){background:#F3EEE6 !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) img.bg{left:auto !important;right:0 !important;width:60% !important;object-position:50% 40% !important;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 26%);mask-image:linear-gradient(90deg,transparent 0,#000 26%)}
}
/* Eventseite: Firmenfeiern regional als dunkles Band mit feinen Pillen (Wahl C, mit mehr Suchbegriffen) */
.rgx-dark{margin-top:64px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center;padding:44px 48px;background:#1F1E1C;color:#FFFFFF}
.rgx-dark .lbl{color:#E3C78F !important}
.rgx-dark .rgx-t{font-size:30px;line-height:1.15;margin:8px 0 0;color:#FFFFFF}
.rgx-dark .rgx-t .it{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;color:#F0DDB4;font-size:1.08em}
.rgx-dark .rgx-s{margin:14px 0 0;font-size:14px;line-height:1.6;color:#DCD5CA}
.rgx-dark .rgx-g{display:flex;flex-wrap:wrap;gap:10px}
.rgx-dark .rgx-g a{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border:1px solid rgba(227,199,143,.55);border-radius:999px;color:#FFFFFF;text-decoration:none;font-size:14px;font-weight:500}
.rgx-dark .rgx-g a:hover{background:rgba(227,199,143,.12)}
.rgx-dark .rgx-g a svg{width:15px;height:15px;color:#E3C78F}
@media (max-width:900px){.rgx-dark{grid-template-columns:1fr;gap:24px;padding:32px 24px}}
/* ---------------------------------------------------------------- Runde 27.10.2026 abends (Markierungen 14:48–15:12, Wahl im Chat, befunde.md 14c) */
/* Ansprechkarte im Fragenbereich (Wahl C „drei Kacheln“) */
.qx-card.kc{display:block;padding:28px;background:#FFFFFF;border:1px solid #E6DED0;border-top:2px solid #C9A86A;box-shadow:0 18px 40px rgba(31,30,28,.07)}
.kc-top{display:grid;grid-template-columns:72px minmax(0,1fr);gap:16px;align-items:center}
.kc-top .rph{width:72px;height:72px;border-radius:50%;object-fit:cover;margin:0;box-shadow:0 0 0 3px #FFFFFF,0 0 0 4px #C9A86A}
.kc-top b{display:block;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:25px;font-weight:500;line-height:1.1;color:#1F1E1C}
.kc-top span{display:block;margin-top:4px;font-size:13px;line-height:1.45;color:#6E675E}
.kc-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0}
.kc-row .t{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 6px 14px;border:1px solid #EDE6DA;background:#FBF8F2;text-decoration:none;color:#1F1E1C;font-size:13px;font-weight:600;transition:border-color .2s}
.kc-row .t:hover{border-color:#C9A86A}
.kc-row .t .ic,.sx-ch .c .ic{width:38px;height:38px;padding:8px;border-radius:50%;fill:none;stroke:#FFFFFF;stroke-width:1.8;color:#FFFFFF}
.kc-row .wa .ic,.sx-ch .wa .ic{background:#25D366}
.kc-row .ph .ic,.sx-ch .ph .ic{background:#8C6B3F}
.kc-row .ig .ic,.sx-ch .ig .ic{background:linear-gradient(45deg,#F58529,#DD2A7B 55%,#8134AF)}
.kc-row .ml .ic,.sx-ch .ml .ic{background:#5C4322}
.qx-card.kc .btn.light{color:#1F1E1C !important}
.xsec-h .qx-card.kc{margin-top:26px}
/* Links unter den Fragen als ruhige Liste mit Unterzeile */
.faq-more.km{display:block !important;padding-top:30px !important}
.faq-more.km a{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;padding:16px 0;border-bottom:1px solid rgba(31,30,28,.1);text-decoration:none;color:#1F1E1C}
.faq-more.km a:first-child{border-top:1px solid rgba(31,30,28,.1)}
.faq-more.km b{display:block;font-size:16px;font-weight:600}
.faq-more.km small{display:block;margin-top:2px;font-size:13px;color:#6E675E}
.faq-more.km .ic{justify-self:end;width:32px;height:32px;padding:8px;border-radius:50%;border:1px solid #C9A86A;color:#8C6B3F}
.faq-more.km a:hover b{color:#7A5C33}
/* Abschluss-Kontakt der Unterseiten als helle Karte (Wahl A) */
.sub-cta{background:#F3EEE6 !important;padding:96px 0 !important}
.sub-cta .wrap{display:block !important}
.sub-cta .sx{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:44px;align-items:center;padding:40px 44px;background:#FFFFFF;border:1px solid #E6DED0;border-top:2px solid #C9A86A;box-shadow:0 18px 40px rgba(31,30,28,.07)}
.sub-cta .sx-p{width:150px;height:150px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 4px #FFFFFF,0 0 0 5px #C9A86A}
.sub-cta .sx-t .h2{margin:0}
.sub-cta .sx-t .lead{margin:12px 0 0;max-width:56ch}
.sx-ch{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.sx-ch .c{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 6px;border-radius:999px;background:#F6F1E8;color:#1F1E1C;text-decoration:none;font-size:13px;font-weight:600}
.sx-ch .c .ic{width:28px;height:28px;padding:6px}
.sx-ch .c:hover{background:#EFE6D6}
.sub-cta .sx .btn.light{color:#1F1E1C !important;white-space:nowrap}
@media (max-width:900px){
 .sub-cta{padding:64px 0 !important}
 .sub-cta .sx{grid-template-columns:96px minmax(0,1fr);gap:20px 22px;padding:28px 24px}
 .sub-cta .sx-p{width:96px;height:96px}
 .sub-cta .sx .btn.light{grid-column:1/-1}
}
@media (max-width:520px){.sub-cta .sx{grid-template-columns:1fr}.sub-cta .sx-p{width:88px;height:88px}}
@media (max-width:420px){.kc-row{gap:6px}.kc-row .t{font-size:12px;padding:14px 4px 12px}}
/* Kartenraster in Ratgebern und Unterseiten als ruhige nummerierte Liste (Wahl A) */
.xcards{display:block !important;border-top:1px solid rgba(31,30,28,.14);margin-top:8px}
.xcard{display:grid !important;grid-template-columns:64px minmax(0,1fr);column-gap:22px;background:none !important;border:0 !important;border-bottom:1px solid rgba(31,30,28,.14) !important;padding:28px 0 !important;box-shadow:none !important;translate:none !important}
.xcard>svg{display:none !important}
.xcard .dn{grid-row:1/span 9;position:static !important;font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:40px !important;line-height:1 !important;color:#C9A86A !important}
.xcard h3{margin:4px 0 8px !important;font-size:20px !important}
.xcard p{max-width:64ch}
.xcard>*:not(.dn){grid-column:2}
@media (max-width:760px){.xcard{grid-template-columns:44px minmax(0,1fr);column-gap:14px;padding:22px 0 !important}.xcard .dn{font-size:30px !important}}
/* Hochzeitsseite: Titelbild dunkel wie Start- und Eventseite (Wahl A), Foto über die ganze Breite */
@media (min-width:761px){
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]){background:#171614 !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) img.bg{left:0 !important;right:0 !important;width:100% !important;-webkit-mask-image:none !important;mask-image:none !important;object-position:60% 40% !important;filter:brightness(.92) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .scrim{background:linear-gradient(180deg,rgba(14,13,12,.34) 0,rgba(14,13,12,0) 210px),linear-gradient(90deg,rgba(14,13,12,.8) 0%,rgba(14,13,12,.62) 40%,rgba(14,13,12,.22) 66%,rgba(14,13,12,0) 100%) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .lbl{color:#EAD6AE !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .display,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .display span{color:#FFFFFF !important;text-shadow:0 1px 2px rgba(0,0,0,.3),0 2px 16px rgba(0,0,0,.28) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .display .ln>.it{color:#E3C78F !important;-webkit-text-fill-color:#E3C78F !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) p.txt,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .cta-note,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .cta-note span{color:#F3EEE6 !important;text-shadow:0 1px 2px rgba(0,0,0,.3),0 2px 16px rgba(0,0,0,.28) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.light,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.light *{color:#FFFFFF !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.line-l,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .btn.line-l *{color:#FFFFFF !important;border-color:rgba(255,255,255,.45) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats::before{background:linear-gradient(0deg,rgba(14,13,12,.66) 0%,rgba(14,13,12,.36) 45%,rgba(14,13,12,0) 100%) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .grid{border-top-color:rgba(238,229,208,.32) !important;column-gap:0 !important;padding:24px 0 30px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc{border-left:1px solid rgba(238,229,208,.22) !important;padding:0 24px 0 28px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc:first-child{border-left:0 !important;padding-left:0 !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .v{font-size:36px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .d{font-size:14px !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .k,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .lk,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net .k{color:#F4E6C9 !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .v,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .v2,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc .d,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net .v2,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net .d{color:#FFFFFF !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc,.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc *{text-shadow:0 1px 2px rgba(0,0,0,.45),0 2px 12px rgba(0,0,0,.35) !important}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net img.badge{filter:none !important}
}
@media (min-width:761px) and (max-width:1200px){
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .scrim{background:linear-gradient(180deg,rgba(14,13,12,.4) 0,rgba(14,13,12,0) 240px),linear-gradient(90deg,rgba(14,13,12,.88) 0%,rgba(14,13,12,.82) 55%,rgba(14,13,12,.66) 80%,rgba(14,13,12,.5) 100%) !important}
}
/* White Wedding: scharfes Original (4284 × 5712), ganzer Aufbau sichtbar, weniger Abdunklung (Janniks Wunsch: gleiches Foto, besser und klarer) */
#ww .wwf{background:#2A2522 !important}
#ww .wwf-img[src*="white-wedding-lights-hd"]{object-position:50% 56% !important}
#ww .wwf-scrim{background:linear-gradient(90deg,rgba(14,13,12,.55) 0%,rgba(14,13,12,.2) 38%,rgba(14,13,12,0) 60%),linear-gradient(0deg,rgba(14,13,12,.6) 0%,rgba(14,13,12,0) 34%) !important}
@media (min-width:1101px){#ww .wwf{height:860px !important}}
@media (max-width:760px){#ww .wwf-scrim{background:linear-gradient(0deg,rgba(14,13,12,.78) 0%,rgba(14,13,12,.3) 45%,rgba(14,13,12,0) 70%) !important}}
/* Kontrast „Im Netzwerk“ über der hellen Spiegelkugel (Hochzeit, 1201–1281 px): weicher dunkler Schein nur hinter diesem Feld */
@media (min-width:761px){
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net{position:relative;isolation:isolate}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net::before{content:"";position:absolute;inset:-34px -48px -34px -20px;background:radial-gradient(closest-side,rgba(14,13,12,.55),rgba(14,13,12,.3) 60%,rgba(14,13,12,0));z-index:-1;pointer-events:none}
.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net *{text-shadow:0 1px 2px rgba(0,0,0,.65),0 2px 16px rgba(0,0,0,.6) !important}
}
/* Runde 28.10.2026 (Markierung 34bef6e65e): Hinweis neben den Kontakt-Knöpfen kursiv in Gold (Event-Seiten automatisch Blau) */
.cta-row .cta-hint{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-size:19px;line-height:1.3;color:#8C6B3F;letter-spacing:0}
.rvs .cta-row .cta-hint{color:#7A5C33}
#ww .cta-row{margin-top:40px}

/* Runde 28 Design (Prüfbericht V, 28.10.2026) */
/* Umsetzung der Befunde aus agenten/V-design-kundensicht.md und der Codex-Endprüfung (EP-03 bis EP-06, EP-10). Belege: agenten/V28-belege/, Bericht agenten/V28-umsetzung.md.
   V-01 (blaue Etiketten „Kern/Immer/Transparent“) ist im Generator behoben (scripts/fixes_runde27.py, Kaskade der blauen Kopien), nicht hier. */

/* V-02: Event-Titelbild 761 bis 1.100 px, Kennzahlen im 2 × 2-Raster mit Zeilenabstand; linke Spalte ohne Trennlinie und Einzug */
@media (min-width:761px) and (max-width:1100px){
 .main-page .ev .hero .kpis .grid{row-gap:22px !important}
 .main-page .ev .hero .kpis .kp:nth-child(odd){border-left:0 !important;padding-left:0 !important}
}

/* V-03: Kapitelleiste. Solange rechts noch Kapitel folgen, läuft die Leiste weich aus (statt hart abgeschnittener Wörter);
   am Ende der Leiste verschwindet der Verlauf. Das aktive Kapitel rückt wie bisher per plus.js ins Bild. Ohne Unterstützung (Firefox) bleibt alles wie bisher */
@property --chf{syntax:'<length>';inherits:false;initial-value:0px}
@keyframes chap-fade{from{--chf:72px}92%{--chf:72px}to{--chf:0px}}
@supports (animation-timeline:scroll()){
 .chap .wrap{animation:chap-fade linear both;animation-timeline:scroll(self inline);-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - var(--chf)),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - var(--chf)),transparent)}
}

/* V-04: Faktenleiste der Unterseiten. (a) Band und Linien über die volle Breite, das erste Symbol an der Inhaltskante (wie Text und Fotos; bis 1.100 px über den Innenabstand der Zellen);
   bei fünf oder sechs Werten ab 1.401 px Symbol über dem Wert, damit die Texte in der Inhaltsbreite nicht zerstückeln. (b) Abstand zum folgenden Abschnitt.
   (c) Kein leeres Feld: fünf Werte als 3 + 2, ungerade letzte Zelle über die ganze Zeile */
.lstats.xfacts2{background:#FFFFFF}
.lstats.xfacts2 .wrap{padding-inline:max(20px,calc((100% - 1200px) / 2 + 20px))}
.ev-sub .lstats.xfacts2 .wrap{padding-inline:max(20px,calc((100% - 1240px) / 2 + 20px))}
.lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:26px 20px}
@media (min-width:1401px){
 .lstats.xfacts2:not(.n3):not(.n4) .lsi{grid-template-columns:minmax(0,1fr);row-gap:6px;align-content:start}
 .lstats.xfacts2:not(.n3):not(.n4) .lsi-ic{grid-row:auto;width:40px;height:40px;padding:10px;margin-bottom:8px}
}
@media (min-width:761px) and (max-width:1400px){
 .lstats.xfacts2:not(.n3):not(.n4) .wrap:has(> .lsi:nth-child(5):last-child){grid-template-columns:repeat(6,minmax(0,1fr))}
 .lstats.xfacts2:not(.n3):not(.n4) .wrap:has(> .lsi:nth-child(5):last-child) > .lsi{grid-column:span 2}
 .lstats.xfacts2:not(.n3):not(.n4) .wrap:has(> .lsi:nth-child(5):last-child) > .lsi:nth-child(n+4){grid-column:span 3}
}
@media (max-width:1100px){
 .lstats.xfacts2 .wrap,.ev-sub .lstats.xfacts2 .wrap{padding-inline:0}
 .lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:22px 20px 22px 32px}
 .lstats.xfacts2.n3 .lsi:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:760px){
 .lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:18px 14px 18px 20px}
 .lstats.xfacts2 .lsi:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:400px){.lstats.xfacts2 .lsi,.lstats.xfacts2 .lsi:first-child,.lstats.xfacts2 .lsi:last-child{padding:16px 12px 16px 20px}}
.lstats + section.sec[style*="padding-top: 0"]{padding-top:112px !important}
.ev-sub .lstats + section.sec[style*="padding-top: 0"]{padding-top:120px !important}
@media (max-width:760px){.lstats + section.sec[style*="padding-top: 0"]{padding-top:76px !important}.ev-sub .lstats + section.sec[style*="padding-top: 0"]{padding-top:80px !important}}

/* V-05: Ansprechkarte ohne zweites Porträt (Klasse kc-s aus fixes_runde27.py, wenn die Abschlusskarte direkt folgt) */
.qx-card.kc.kc-s .kc-row{margin-top:0}

/* V-08: Handyleiste. Anfrageknopf als Pille in Akzentfarbe wie in der Kopfzeile (Event-Seiten: Royalblau mit weißer Schrift per Generator);
   solange die Leiste unten steht, tritt der gleiche Knopf oben zurück (ein klarer nächster Schritt) */
.mbar .m{background:#C9A86A;color:#22211F}
@media (max-width:760px){
 .site-hdr .hdr-r .btn{transition:opacity .25s,visibility .25s}
 html:has(.mbar.on) .site-hdr .hdr-r .btn{opacity:0;visibility:hidden;pointer-events:none}
}

/* V-09, EP-04: Etiketten auf dunklen Bändern und Fotos hell. „Was Paare sagen“ (site.css setzt p.lbl mit !important dunkel) und White Wedding
   in allen Breiten mit einem weich auslaufenden dunklen Band nur hinter der Zeile (alle vier wechselbaren Fotos geprüft), damit das Foto sonst klar bleibt (Janniks Wunsch: weniger Abdunklung) */
.xrev p.lbl,.xrev p.lbl .no{color:#E2C38D !important}
#ww .wwf-in p.lbl,#ww .wwf-in p.lbl .no{color:#F4E6C9 !important}
#ww .wwf-in p.lbl{position:relative;isolation:isolate;text-shadow:0 1px 2px rgba(0,0,0,.55)}
#ww .wwf-in p.lbl::before{content:"";position:absolute;left:-28px;right:-28px;top:-14px;bottom:-14px;background:linear-gradient(90deg,rgba(14,13,12,0),rgba(14,13,12,.66) 28px,rgba(14,13,12,.66) calc(100% - 28px),rgba(14,13,12,0));-webkit-mask-image:linear-gradient(180deg,transparent,#000 12px,#000 calc(100% - 12px),transparent);mask-image:linear-gradient(180deg,transparent,#000 12px,#000 calc(100% - 12px),transparent);z-index:-1;pointer-events:none}
#ww .wwf-in p.lbl{align-self:flex-start}
@media (min-width:761px){#ww .wwf-in p.lbl::before{left:-36px;right:-36px}}

/* EP-04: Galerie der Startseite, weiße Bildunterschriften auf kräftigerem Verlauf (gemessen auch bei 820 und 1.280 px unter 4,5:1) */
.gi figcaption{background:linear-gradient(0deg,rgba(14,13,12,.88) 0%,rgba(14,13,12,.76) 58%,rgba(14,13,12,0) 100%)}

/* EP-03: Ortslabel auf der Alvisse-Fotokarte (Eventseite) wieder hell, auf verlässlich dunkler Textzone hinter dem Textblock */
.el-img .where{color:#EAD6AE !important}
.el-img .el-t{position:relative;isolation:isolate}
.el-img .el-t::before{content:"";position:absolute;left:-40px;right:-40px;top:-48px;bottom:-40px;background:linear-gradient(0deg,rgba(18,17,15,.5) 0%,rgba(18,17,15,.5) calc(100% - 48px),rgba(18,17,15,0) 100%);z-index:-1;pointer-events:none}

/* V-10, EP-10: DJ-Allianz-Zeichen im dunklen Hochzeits-Titelbild hell wie auf der Startseite */
@media (min-width:761px){.main-page .dt .hero:has(img.bg[src*="hochzeit-hero"]) .stats .sc.net img.badge{filter:brightness(0) invert(1) !important;opacity:.95 !important}}

/* V-11: Überschriften und Kacheltitel. Ausgeglichene Zeilen; Silbentrennung nur noch in langen Wörtern und nie mit Resten unter fünf Buchstaben
   („Mu-sik“, „Hochzeitslocati-ons“, „Res-taurant“). Umbrüche an festen Bindestrichen („Hochzeits-DJ“) brauchen geschützte Bindestriche im Text */
:is(h1,h2,.h1x,.h2,.display-s,.h3x):not(.lbl){text-wrap:balance}
:is(h1,h2,h3,.h1x,.h2,.h3x,.display-s,.rcard b,.lr-t b,.lm-c b,.dcard b,.dwt span){hyphenate-limit-chars:10 5 5;-webkit-hyphenate-limit-before:5;-webkit-hyphenate-limit-after:5}
:is(.rcard b,.lr-t b,.lm-c b){text-wrap:balance}
@media (max-width:420px){.lr-t b{font-size:15px}}   /* „Hochzeitslocations“ passt bei 390 px ungetrennt in die Kachel (136 statt 146 px bei 144 px Platz) */
.nw{white-space:nowrap}   /* für zusammengesetzte Begriffe in Überschriften, z. B. <span class="nw">Hochzeits-DJ</span> (Umsetzung im Text durch die andere Sitzung) */

/* V-12: Location-Kacheln ohne Foto im dunklen Stil der Fotokacheln (Ort und Name unten, goldene Kante oben); Firmen-Unterseiten:
   „Alle Locations“ rechts neben der Überschrift wie auf den Hochzeitsseiten */
.rcard.noimg{background:#24221F;color:#FFFFFF;border-top:3px solid #C9A86A}
.rcard.noimg:hover{background:#2C2926}
.rcard.noimg .t{top:auto;bottom:20px;justify-content:flex-end}
.rcard.noimg .t .k,.rcard.noimg .t > .k{color:#EAD6AE !important}
.rcard.noimg b{color:#FFFFFF;font-size:21px;margin-top:0;flex:none}
.rcard.noimg .t > .more{color:#EAD6AE !important;margin-top:10px}
@media (max-width:760px){.lcards .rcard.noimg b{font-size:16px}.lcards .rcard.noimg .t{bottom:12px}}
.ev-sub .shead{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;flex-wrap:wrap;margin-bottom:56px}
.ev-sub .shead>div{flex:1 1 560px}

/* V-17, EP-05: kleine goldene Schrift auf Creme mindestens 4,5:1 (dunkleres Gold), große Schmuckziffern mindestens 3:1 (wie .tno) */
.cta-row .cta-hint{color:#7A5C33}
.rvs .rvs-sum a,.rvs .rvs-tag,.rvs .rvs-nav span{color:#7A5C33 !important}
.stp .n{color:#A07A44}
.xcard .dn{color:#A07A44 !important}

/* V-18: kleinste Großbuchstaben-Etiketten auf dem Handy mindestens 11 px */
@media (max-width:760px){
 .lm-c .k,.lcards .rcard .k{font-size:11px;letter-spacing:.12em}
 .main-page .hero .stats .sc .k{font-size:11px !important}
 .main-page .hero .ways .t{font-size:11px;letter-spacing:.12em}
 .lstats.xfacts2 .lsi>span .k{font-size:11px}
}

/* V-19: Kontaktzeilen im Anfragebereich als Tippflächen von 44 px Höhe */
@media (max-width:760px){.ask-c{gap:0}.ask-c a{min-height:44px}}

/* V-21: Erfahrungen, Hinweis zu den Bewertungen mit Abstand zum Titelbereich */
.rvlist[style*="padding-top: 0"]{padding-top:56px !important}
@media (max-width:760px){.rvlist[style*="padding-top: 0"]{padding-top:40px !important}}

/* V-25: Startseite und Hochzeitsseite auf dem Handy, Logo und Menü über hellem Laub: oben etwas dunkler */
@media (max-width:760px){.main-page .dt .hero .scrim{background:linear-gradient(180deg,rgba(14,13,12,.38) 0,rgba(14,13,12,0) 140px),linear-gradient(rgba(14,13,12,.1) 0%,rgba(14,13,12,0) 36%,rgba(248,246,241,0) 62%,#F8F6F1 92%) !important}}

/* EP-06: Fokusrahmen auf dunklen Titelbildern hell (mindestens 3:1 zur Fläche); Event-Kopfzeile, solange sie über dem Titelbild liegt */
@media (min-width:761px){
 .main-page .hero :focus-visible{outline-color:#FFFFFF}
 html:not(.scrolled):not(.menu-open) .main-page .ev .site-hdr :is(.nav a,.lsw a,.hdr-r a,.logo,.burger):focus-visible{outline-color:#FFFFFF}
}

/* Logowand mit Namenszellen (Testbau 28.10.2026): ruhige Wortmarken passend zu den Graustufen-Logos, ausgeglichene Zeilen, Hover wie bei den Logos */
.lw-grid.lw-all .lw-txt{padding:16px 14px !important}
.lw-txt b{font-size:14.5px;font-weight:600;line-height:1.3;letter-spacing:-.005em;color:#4A453E;text-wrap:balance;transition:color .3s}
.lw-grid.lw-all .lw-txt:hover b{color:#1F1E1C}
.lw-txt small{font-size:12px;line-height:1.4;text-wrap:balance}
.lw-grid.lw-all img[src*="logo-leismann"]{filter:grayscale(1) brightness(.4) contrast(1.4);opacity:.9}
@media (max-width:760px){.lw-txt b{font-size:14px}}
/* Wand ohne Link-Kachel (Referenzen, Firmen-Unterseiten): keine leere Restfläche in der letzten Reihe */
@media (min-width:641px) and (max-width:1100px){
 .lw-grid.lw-all:not(:has(.lw-more)) > div:nth-child(4n+1):nth-last-child(2),.lw-grid.lw-all:not(:has(.lw-more)) > div:nth-child(4n+2):last-child,.lw-grid.lw-all:not(:has(.lw-more)) > div:nth-child(4n+3):last-child{grid-column:span 2}
 .lw-grid.lw-all:not(:has(.lw-more)) > div:nth-child(4n+1):last-child{grid-column:1/-1}
}
@media (max-width:640px){.lw-grid.lw-all:not(:has(.lw-more)) > div:nth-child(odd):last-child{grid-column:1/-1}}
/* Referenzkarten ohne Logo: Name und Rolle auf derselben Höhe wie in den Karten mit Logo */
.refc:not(:has(img)){align-content:end}

/* Prüfstand 32 (Prüfreihe 28.10.2026): Plus-Zeichen der geöffneten Frage drehte die ganze Fläche und ragte 6 px über den Fragenbereich;
   jetzt dreht nur das Symbol (20 px, gedreht 28,3 px) in einer festen 30-px-Fläche. Anlass-Kachel „Ihr Anlass ist nicht dabei?“: Knopf bricht in allen Breiten um statt überzustehen (vorher nur bis 1.199 px) */
.qx-r summary .pm{display:inline-grid;place-items:center;width:30px;height:30px}
.qx-r details[open] summary .pm{transform:none}
.qx-r details[open] summary .pm .ic{transform:rotate(45deg)}
.occ-card.occ-cta .btn{max-width:100%;white-space:normal;text-align:left}

/* Runde 28 nach Livegang (Janniks Rückmeldung 28.10.2026): Formular direkt anspringen, Datum tippen oder wählen, grüner Haken */
#enquiry-form{scroll-margin-top:96px}
.date-in{position:relative;display:flex;align-items:stretch}
.date-in input[name=date]{flex:1;min-width:0;padding-right:52px}
.date-cal{position:absolute;right:4px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:grid;place-items:center;border:0;background:transparent;color:#8C6B3F;cursor:pointer;border-radius:8px}
.date-cal svg{width:22px;height:22px}
.date-cal:hover{background:rgba(201,168,106,.12)}
.date-cal:focus-visible{outline:2px solid #22211F;outline-offset:2px}
.date-pick{position:absolute;right:0;bottom:0;width:44px;height:1px;opacity:0;pointer-events:none;border:0;padding:0}
body.ev-blue .date-cal{color:#2C5296}
.enquiry-ok .ok-mark{width:64px;height:64px;margin:0 0 14px}
.enquiry-ok .ok-mark svg{width:100%;height:100%;display:block}
.enquiry-ok .ok-mark circle{fill:#1E8E4E}
.enquiry-ok .ok-mark path{fill:none;stroke:#FFFFFF;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:okdraw .45s .15s ease-out forwards}
.enquiry-ok .ok-mark{animation:okpop .35s ease-out}
@keyframes okdraw{to{stroke-dashoffset:0}}
@keyframes okpop{from{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}
@media (prefers-reduced-motion:reduce){.enquiry-ok .ok-mark,.enquiry-ok .ok-mark path{animation:none;stroke-dashoffset:0}}
.phero .qx-card.kc{margin-top:28px;max-width:560px}
/* PageSpeed 28.10.2026: Link in der Fußzeile nicht nur über Farbe erkennbar */
.ftr .fb a{text-decoration:underline;text-underline-offset:3px}
