/* SLOW · WEDDING — Linie C (Slow Travelling, „Die Mitgliedschaft“), Stand 28.09.2026
   Schriften, Papier, Tinte, Knöpfe, Bänder und Tickets 1:1 aus nonah.at/sm/c.html.
   Hochzeitsband: Orchidee #F0A3DB, Tiefton Beere #8A2E6B (Kosmos-Register). Hausfarben wie in C. */





*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;overflow-x:clip;scroll-behavior:smooth;scroll-padding-top:calc(var(--hd) + 20px)}
:root{
  --pa:#EDEADD;--pa2:#E8E5D8;--pa3:#F6F3E6;--ink:#272729;--mut:#5A5A57;
  --orch:#F0A3DB;--beere:#8A2E6B;
  --kl:#B6DA81;--os:#F3AD55;/* Giulia = Celeste (Beschluss Sascha 28.09.) */--gi:#7DD3C0;/* Goritschnigg = Koralle dunkler */--go:#F4847E;--see:#45A7F7;
  --line:rgba(39,39,41,.2);--line2:rgba(39,39,41,.4);
  --pad:clamp(20px,5vw,92px);--maxw:1560px;--hd:clamp(56px,7vh,74px);
  --e:cubic-bezier(.16,1,.3,1);
}
body{margin:0;background:var(--pa);color:var(--ink);font-family:'Fr',Georgia,serif;font-weight:300;
  font-variation-settings:'opsz' 14,'SOFT' 10,'WONK' 0;letter-spacing:.02em;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
:focus-visible{outline:2px solid var(--beere);outline-offset:3px}
.wr{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad)}
.s{padding:clamp(72px,11vh,150px) 0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}

/* Typo — die C-Überschrift: Versalzeile + kursive Zeile */
.hl{margin:0;display:flex;flex-direction:column;gap:.06em}
.hl-c{font-family:'Ar',system-ui,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:-.01em;
  line-height:1.02;font-size:clamp(26px,3.5vw,44px);font-variation-settings:'wdth' 100}
.hl-w{font-family:'Fr',Georgia,serif;font-style:italic;font-weight:400;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;
  font-size:clamp(50px,7vw,100px);line-height:.84;letter-spacing:-.015em;padding-bottom:.08em}
.hl.xl .hl-c{font-size:clamp(30px,4.6vw,64px)}
.hl.xl .hl-w{font-size:clamp(64px,10vw,150px)}
.hl.sm .hl-c{font-size:clamp(20px,2.2vw,28px)}
.hl.sm .hl-w{font-size:clamp(40px,4.8vw,64px)}
.eb{font-family:'Ar',system-ui,sans-serif;font-weight:400;font-size:14px;line-height:1;letter-spacing:.05em;
  text-transform:uppercase;color:var(--mut);margin:0 0 20px;display:flex;align-items:center;gap:10px}
.eb::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--beere)}
p{margin:0 0 1em;line-height:1.42}
.bd{font-size:clamp(17px,1.2vw,19px);line-height:1.46;max-width:60ch}
.lead{font-size:clamp(19px,1.6vw,24px);line-height:1.34;max-width:46ch}
.nt{font-family:'Ar',system-ui,sans-serif;font-size:13px;line-height:1.5;color:var(--mut);max-width:56ch;
  border-left:2px solid var(--line2);padding-left:14px}
.mono{font-family:'Mo',ui-monospace,monospace;font-size:12px;letter-spacing:.02em}

/* Knöpfe — eckig, Tinte, Versalien */
.bt{display:inline-flex;align-items:center;justify-content:center;gap:14px;height:62px;padding:0 30px;border:0;border-radius:0;
  background:var(--ink);color:var(--pa);font-family:'Ar',system-ui,sans-serif;font-weight:400;font-size:14px;
  letter-spacing:.05em;text-transform:uppercase;cursor:pointer;transition:background .25s,color .25s}
.bt:hover{background:#000}
.bt.gh{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}
.bt.gh:hover{background:var(--pa2)}
.bt.lt{background:var(--pa);color:var(--ink)}
.bt.lt:hover{background:#fff}
.row{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(24px,2.6vw,36px)}

/* Ticket (Höhe, wie in C) */
.tk{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:170px;padding:12px 26px;
  border:2px solid var(--tc,var(--orch));border-radius:999px;background:var(--pa3);color:var(--ink);text-align:center;line-height:1.15}
.tk span{font-family:'Fr',Georgia,serif;font-weight:400;font-size:17px;text-transform:uppercase;letter-spacing:.03em}
.tk b{font-family:'Ar',system-ui,sans-serif;font-weight:700;font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}

/* Kopf */
.hd{position:sticky;top:0;z-index:60;background:var(--pa);height:var(--hd);box-shadow:0 1px 0 var(--line)}
.hd-in{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);height:100%;display:flex;align-items:center;justify-content:space-between;gap:16px}
.hd-l,.hd-r{display:flex;align-items:center;gap:clamp(12px,1.4vw,24px);flex:1}
.hd-r{justify-content:flex-end}
.nv{font-family:'Ar',system-ui,sans-serif;font-size:13px;letter-spacing:.045em;text-transform:uppercase;padding:4px 0;white-space:nowrap;border-bottom:1px solid transparent}
.nv:hover,.nv[aria-current]{border-bottom-color:var(--ink)}
.mk{font-family:'Ar',system-ui,sans-serif;font-weight:700;font-size:clamp(15px,1.5vw,19px);letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.mk i{font-style:normal;opacity:.5;padding:0 .18em}
.hd .bt{height:40px;padding:0 20px;white-space:nowrap;font-size:13px}
.rd{display:none;font-family:'Ar',system-ui,sans-serif;font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--mut);margin:0;white-space:nowrap}
.rd b{font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
@media(min-width:980px){.rd{display:block}}

@media(max-width:900px){.hd-l .nv{display:none}.hd .bt{padding:0 14px}}

/* Hero — dunkel, Bildfolge der vier Häuser, zentrierte Versalien wie C */
.hero{position:relative;min-height:calc(100svh - var(--hd));display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;background:#111}
.hero .sl{position:absolute;inset:0}
.hero .sl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.08);
  animation:sl 24s infinite var(--e)}
.hero .sl img:nth-child(1){animation-delay:0s}
.hero .sl img:nth-child(2){animation-delay:6s}
.hero .sl img:nth-child(3){animation-delay:12s}
.hero .sl img:nth-child(4){animation-delay:18s}
@keyframes sl{0%{opacity:0;transform:scale(1.08)}5%,25%{opacity:.62}32%,100%{opacity:0;transform:scale(1)}}
.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(0,0,0,.05),rgba(0,0,0,.45));pointer-events:none}
.hero-in{position:relative;z-index:2;padding:clamp(70px,12vh,140px) var(--pad);color:var(--pa);max-width:1200px}
.hero h1{margin:0}
.hero .k{display:block;font-family:'Ar',system-ui,sans-serif;font-weight:400;font-size:clamp(14px,1.2vw,16px);letter-spacing:.2em;text-transform:uppercase;margin-bottom:clamp(18px,3vh,30px)}
.hero .ja{display:block;font-family:'Fr',Georgia,serif;font-style:italic;font-weight:300;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;
  font-size:clamp(110px,20vw,300px);line-height:.78;letter-spacing:-.03em}
.rot{position:relative;display:grid;overflow:hidden;margin:clamp(16px,2vw,26px) 0 clamp(12px,1.4vw,18px)}
.rot span{grid-area:1/1;font-family:'Ar',system-ui,sans-serif;font-weight:400;font-size:clamp(24px,4vw,56px);line-height:1.1;letter-spacing:-.01em;text-transform:uppercase;
  opacity:0;transform:translateY(100%);animation:rot 24s infinite}
.rot span:nth-child(2){animation-delay:6s}.rot span:nth-child(3){animation-delay:12s}.rot span:nth-child(4){animation-delay:18s}
@keyframes rot{0%{opacity:0;transform:translateY(100%)}3%,22%{opacity:1;transform:translateY(0)}26%,100%{opacity:0;transform:translateY(-100%)}}
.hero .sub{margin:0;font-family:'Fr',Georgia,serif;font-weight:300;font-size:clamp(17px,1.7vw,24px);text-transform:uppercase;letter-spacing:.03em}
.hero .bt{margin-top:clamp(26px,4vh,40px)}
.hero .ort{position:absolute;z-index:3;left:var(--pad);bottom:22px;font-family:'Ar',system-ui,sans-serif;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(237,234,221,.8);display:grid}
.hero .ort span{grid-area:1/1;opacity:0;animation:ort 24s infinite}
.hero .ort span:nth-child(2){animation-delay:6s}.hero .ort span:nth-child(3){animation-delay:12s}.hero .ort span:nth-child(4){animation-delay:18s}
@keyframes ort{0%,2%{opacity:0}5%,25%{opacity:1}30%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){
  .hero .sl img{animation:none;opacity:0}.hero .sl img:first-child{opacity:.62;transform:none}
  .rot{display:block}.rot span{opacity:0;animation:none;display:none}.rot span:first-child{display:block;opacity:1;transform:none}
  .hero .ort span{animation:none}.hero .ort span:first-child{opacity:1}}

/* Messband — Orchidee */
.band{background:var(--orch);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band-in{max-width:var(--maxw);margin:0 auto;padding:clamp(22px,2.8vw,34px) var(--pad);display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,3vw,54px);align-items:end}
.band .f{border-bottom:1px solid var(--ink);padding-bottom:12px}
.band .f p{margin:0 0 10px;font-family:'Ar',system-ui,sans-serif;font-size:14px;letter-spacing:.02em;text-transform:uppercase}
.band .f b{display:block;font-family:'Fr',Georgia,serif;font-weight:300;font-size:clamp(20px,2.3vw,31px);line-height:1.05;font-variation-settings:'opsz' 60}

/* Die Linie — Höhenprofil */
.ln-k{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,90px);align-items:end;margin-bottom:clamp(30px,4vw,56px)}
.ln{position:relative;width:100%;aspect-ratio:1400/560}
.ln svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ln .pfad{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-dasharray:2400;stroke-dashoffset:2400;transition:stroke-dashoffset 3.2s var(--e)}
.ln.an .pfad{stroke-dashoffset:0}
.ln .grund{fill:var(--pa2)}
.ln .see{fill:rgba(69,167,247,.28);stroke:var(--see);stroke-width:2}
.ln .rs{stroke:var(--line);stroke-dasharray:3 5}
.ln .rt{font-family:'Ar',system-ui,sans-serif;font-size:13px;fill:var(--mut);letter-spacing:.06em}
.ln .pt{position:absolute;transform:translate(-50%,-50%);opacity:0;transition:opacity .6s var(--e),transform .6s var(--e)}
.ln.an .pt{opacity:1}
.ln .pt i{display:block;width:14px;height:14px;border-radius:50%;background:var(--tc);border:1.5px solid var(--ink);margin:0 auto}
.ln .pt a{position:absolute;left:50%;transform:translateX(-50%);white-space:nowrap}
.ln .pt.o a{bottom:calc(100% + 16px)} .ln .pt.u a{top:calc(100% + 16px)}
.ln .pt a:hover .tk{background:#fff}
@media(max-width:760px){.ln .tk{min-width:0;padding:8px 14px}.ln .tk span{font-size:13px}.ln .tk b{font-size:11px}}

/* Kapitel je Ort — Apple-Dramaturgie: das Haus füllt den Schirm */
.kap{position:relative}
.hb{background:var(--tc);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hb.duo{background:linear-gradient(90deg,var(--kl) 0 50%,var(--os) 50% 100%)}
.hb-in{max-width:var(--maxw);margin:0 auto;padding:clamp(18px,2vw,26px) var(--pad);display:flex;align-items:center;gap:clamp(14px,2.4vw,34px);flex-wrap:wrap}
.hb-n{font-family:'Ar',system-ui,sans-serif;font-weight:700;font-size:clamp(20px,2.6vw,34px);letter-spacing:.06em;text-transform:uppercase}
.hb-o{font-family:'Ar',system-ui,sans-serif;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.hb .tk{margin-left:auto;min-width:0;padding:8px 18px;border-color:var(--ink)}
.hb .tk span{font-size:14px}
.voll{position:relative;height:min(92vh,980px);overflow:hidden;background:#111}
.voll img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 2.4s var(--e)}
.voll.an img{transform:scale(1)}
.voll figcaption{position:absolute;left:var(--pad);right:var(--pad);bottom:clamp(26px,5vh,60px);color:var(--pa);z-index:2}
.voll::after{content:"";position:absolute;inset:auto 0 0 0;height:55%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.55))}
.voll .hl-w{font-size:clamp(56px,9vw,140px);text-shadow:0 2px 30px rgba(0,0,0,.25)}
.voll .hl-c{text-shadow:0 1px 20px rgba(0,0,0,.3)}
.kt{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,90px);align-items:start}
.kt .bilder{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.kt .bilder figure{margin:0}
.kt .bilder figure:first-child{grid-column:1/-1}
.kt .bilder img{width:100%;aspect-ratio:3/2;object-fit:cover}
.kt .bilder figcaption,.cap{font-family:'Ar',system-ui,sans-serif;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);margin-top:10px}
.fx{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line2);margin-top:clamp(24px,2.4vw,34px)}
.fx div{padding:18px 16px 20px;border-right:1px solid var(--line2)}
.fx div:last-child{border-right:0}
.fx p{margin:0}
.fx .l{font-family:'Ar',system-ui,sans-serif;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin-bottom:10px}
.fx .w{font-family:'Fr',Georgia,serif;font-size:19px;font-weight:400;line-height:1.15;margin-bottom:8px}
.fx .t{font-size:14px;line-height:1.4;color:var(--mut)}

/* Räume */
.rm{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:clamp(30px,4vw,54px)}
.rm figure{margin:0;background:var(--pa3);border:1px solid var(--line)}
.rm img{width:100%;aspect-ratio:4/5;object-fit:cover}
.rm figcaption{padding:16px 16px 18px}
.rm .n{font-family:'Fr',Georgia,serif;font-style:italic;font-weight:400;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;font-size:34px;line-height:1}
.rm .z{font-family:'Ar',system-ui,sans-serif;font-size:13px;letter-spacing:.05em;text-transform:uppercase;margin-top:10px}

/* Küche — dunkel */
.dk{background:var(--ink);color:var(--pa)}
.dk .eb{color:rgba(237,234,221,.7)} .dk .eb::before{background:var(--orch)}
.dk .gute{font-family:'Fr',Georgia,serif;font-style:italic;font-weight:300;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;font-size:clamp(64px,10vw,160px);line-height:.84;letter-spacing:-.02em;margin:0 0 .3em}
.dk .gute em{color:var(--orch)}
.dk .zw{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,90px);align-items:center}
.dk .bilder{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dk .bilder img{width:100%;aspect-ratio:4/5;object-fit:cover}
.dk .bilder img:nth-child(2){margin-top:60px}

/* Schritte */
.st{list-style:none;padding:0;margin:clamp(30px,4vw,54px) 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;counter-reset:s;border-top:1px solid var(--ink)}
.st li{counter-increment:s;padding:24px 28px 10px 0;border-right:1px solid var(--line)}
.st li+li{padding-left:28px}.st li:last-child{border-right:0}
.st li::before{content:counter(s,decimal-leading-zero);display:block;font-family:'Mo',monospace;font-size:13px;color:var(--mut);margin-bottom:18px}
.st b{display:block;font-family:'Ar',system-ui,sans-serif;font-weight:400;font-size:clamp(20px,1.8vw,24px);text-transform:uppercase;letter-spacing:-.005em;margin-bottom:10px}

/* Fragen */
.fq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,5vw,90px)}
.fq details{border-bottom:1px solid var(--line2)}
.fq details:first-child{border-top:1px solid var(--ink)}
.fq summary{cursor:pointer;list-style:none;padding:22px 44px 22px 0;font-family:'Fr',Georgia,serif;font-weight:400;font-size:clamp(19px,1.6vw,23px);line-height:1.25;position:relative}
.fq summary::-webkit-details-marker{display:none}
.fq summary::after{content:"+";position:absolute;right:6px;top:18px;font-family:'Ar',system-ui,sans-serif;font-weight:300;font-size:30px;line-height:1;transition:transform .3s var(--e)}
.fq details[open] summary::after{transform:rotate(45deg)}
.fq details p{margin:0 0 24px;max-width:62ch}

/* Anfrage — die Einladungskarte */
.an-s{background:var(--orch);border-top:1px solid var(--line)}
.karte{max-width:1180px;margin:0 auto;background:var(--pa3);border:1px solid var(--ink);position:relative;
  display:grid;grid-template-columns:.9fr 1.1fr}
.karte::before,.karte::after{content:"";position:absolute;left:calc(45% - 14px);width:28px;height:28px;border-radius:50%;background:var(--orch);border:1px solid var(--ink)}
.karte::before{top:-15px;clip-path:inset(50% 0 0 0)} .karte::after{bottom:-15px;clip-path:inset(0 0 50% 0)}
.karte .kl{padding:clamp(28px,4vw,60px);border-right:1px dashed var(--line2);display:flex;flex-direction:column}
.karte .kr{padding:clamp(28px,4vw,60px)}
.karte .kl .mono{margin-top:auto;padding-top:30px;color:var(--mut)}
.satz{font-family:'Fr',Georgia,serif;font-weight:300;font-size:clamp(22px,2.2vw,30px);line-height:1.5;margin:0 0 26px}
.satz input,.satz select{font:inherit;font-style:italic;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;color:var(--beere);background:transparent;border:0;border-bottom:1.5px solid var(--ink);
  padding:0 4px 2px;border-radius:0;min-width:0;width:auto;-webkit-appearance:none;appearance:none}
.satz input{width:9.5em}.satz select{padding-right:18px;background:linear-gradient(45deg,transparent 50%,var(--ink) 50%) right 4px center/7px 7px no-repeat}
.satz input::placeholder{color:rgba(138,46,107,.55)}
.fm{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.fd{display:flex;flex-direction:column;gap:7px}.fd.v{grid-column:1/-1}
.fd label,.lg{font-family:'Ar',system-ui,sans-serif;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.fd input,.fd textarea{font:300 17px/1.4 'Fr',Georgia,serif;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--ink);border-radius:0;padding:8px 0}
.fd textarea{min-height:92px;resize:vertical;border:1px solid var(--line2);padding:10px 12px}
.fd input:focus,.fd textarea:focus,.satz input:focus,.satz select:focus{outline:none;border-color:var(--beere);box-shadow:0 1.5px 0 var(--beere)}
.ch{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.ch label{cursor:pointer}
.ch input{position:absolute;opacity:0;pointer-events:none}
.ch span{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:1px solid var(--ink);font-family:'Ar',system-ui,sans-serif;font-size:13px;letter-spacing:.04em;text-transform:uppercase;transition:background .2s}
.ch span::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c,var(--line2))}
.ch input:checked+span{background:var(--ink);color:var(--pa)}
.ch input:focus-visible+span{outline:2px solid var(--beere);outline-offset:2px}
.zu{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.4;grid-column:1/-1}
.zu input{margin-top:4px;accent-color:var(--beere)}
.hon{position:absolute;left:-9999px}
.hin{font-family:'Ar',system-ui,sans-serif;font-size:12px;letter-spacing:.03em;color:var(--mut);margin-top:10px}

/* Fuß */
.ft{background:var(--ink);color:rgba(237,234,221,.8);padding:clamp(56px,8vw,96px) 0 34px;font-family:'Ar',system-ui,sans-serif;font-size:14px;letter-spacing:.02em}
.ft .wr{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:28px}
.ft .mk{color:var(--pa);display:block;margin-bottom:14px}
.ft a{color:var(--pa)} .ft a:hover{text-decoration:underline}
.ft .hl-w{color:var(--pa);font-size:clamp(40px,4vw,56px);margin-bottom:10px}
.ft small{grid-column:1/-1;border-top:1px solid rgba(237,234,221,.2);padding-top:22px;margin-top:20px;color:rgba(237,234,221,.55);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* Auftritt beim Scrollen (IntersectionObserver, kein Scroll-Handler) */
.rv{opacity:0;transform:translateY(34px);transition:opacity 1s var(--e),transform 1s var(--e)}
.rv.an{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.voll img{transform:none}.ln .pfad{stroke-dashoffset:0;transition:none}.ln .pt{opacity:1}}

/* Einwilligung */
.einw{position:fixed;left:16px;right:16px;bottom:16px;z-index:80;max-width:540px;margin-left:auto;background:var(--pa3);border:1px solid var(--ink);padding:18px;font-size:15px;display:none}
.einw.an{display:block}.einw p{margin:0 0 12px}
.einw .row{margin-top:0}.einw .bt{height:44px;padding:0 18px}

/* Textseiten */
.tx{padding:clamp(60px,9vw,120px) 0}
.tx .hl{margin-bottom:40px}
.tx h2{font-family:'Ar',system-ui,sans-serif;font-weight:400;font-size:18px;letter-spacing:.04em;text-transform:uppercase;margin:34px 0 10px}
.tx p{max-width:70ch;font-size:17px}

@media(max-width:1100px){.rm{grid-template-columns:1fr 1fr}.ft .wr{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .ln-k,.kt,.dk .zw,.fq,.karte{grid-template-columns:1fr}
  .karte::before,.karte::after{display:none}
  .karte .kl{border-right:0;border-bottom:1px dashed var(--line2)}
  .band-in{grid-template-columns:1fr;gap:18px}
  .st{grid-template-columns:1fr}.st li{border-right:0;border-bottom:1px solid var(--line);padding:22px 0}.st li+li{padding-left:0}
}
@media(max-width:640px){
  .fx{grid-template-columns:1fr}.fx div{border-right:0;border-bottom:1px solid var(--line2)}.fx div:last-child{border-bottom:0}
  .fm{grid-template-columns:1fr}.rm{grid-template-columns:1fr 1fr;gap:10px}.rm .n{font-size:26px}
  .ft .wr{grid-template-columns:1fr}.voll{height:78vh}
  .hb .tk{margin-left:0}.satz input{width:7.5em}
  .hd .bt{height:34px;padding:0 12px;font-size:12px}.hd-r{gap:10px}
  .ln{aspect-ratio:1/1;margin:70px 0 70px}.satz{font-size:21px}
}

/* Punkte am rechten Rand: Etikett nach links ausrichten */
.ln .pt.re a{left:auto;right:-14px;transform:none}
.ln .pt.li a{left:-14px;transform:none}

/* Pause-Knopf der Bildfolge (WCAG 2.2.2) */
.pz{position:absolute;z-index:3;right:var(--pad);bottom:16px;background:transparent;border:1px solid rgba(237,234,221,.6);color:var(--pa);font-family:'Ar',system-ui,sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:8px 12px;cursor:pointer}
.hero.halt .sl img,.hero.halt .rot span,.hero.halt .ort span{animation-play-state:paused}
.ln{display:block}

/* ===== v3: Einstieg redaktionell (echte Hochzeit), Diptychon statt Diagramm, Messrand, Galerie ===== */
.ein{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:0;min-height:calc(100svh - var(--hd));background:var(--pa)}
.ein-t{padding:clamp(40px,7vh,90px) clamp(24px,4vw,64px) clamp(110px,14vh,150px) var(--pad);display:flex;flex-direction:column;justify-content:center;max-width:780px}
.ein-h{margin:0 0 clamp(20px,3vh,32px)}
.ein-h .ja{display:block;font-family:'Fr',Georgia,serif;font-style:italic;font-weight:300;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;
  font-size:clamp(150px,19vw,330px);line-height:.74;letter-spacing:-.045em;margin:0 0 .06em -.04em;color:var(--ink)}
.ein-h .ja::after{content:"";display:inline-block;width:.13em;height:.13em;border-radius:50%;background:var(--gi);margin-left:.04em;vertical-align:baseline}
.ein-h .hl-c{display:block;font-size:clamp(26px,3vw,44px)}
.ein .lead{max-width:40ch}
.ein-b{position:relative;margin:0;overflow:hidden;background:#ccc}
.ein-b img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:54% 30%;animation:einz 2.6s var(--e) both}
@keyframes einz{from{transform:scale(1.07);opacity:.2}to{transform:none;opacity:1}}
.ein-b figcaption{position:absolute;left:18px;bottom:16px;color:#fff;text-shadow:0 1px 10px rgba(0,0,0,.4);letter-spacing:.08em;text-transform:uppercase;font-size:11px}
.ein-k{position:absolute;margin:0;left:calc(52% - clamp(120px,11vw,200px));bottom:clamp(90px,13vh,140px);width:clamp(180px,17vw,300px);border:8px solid var(--pa);box-shadow:0 20px 50px rgba(0,0,0,.18);z-index:3;animation:einz 2.6s .4s var(--e) both}
.ein-k img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
/* Höhenleiste: die Linie als Haarlinie mit vier Stationen */
.leiste{position:absolute;left:0;right:0;bottom:0;z-index:4;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);background:var(--pa)}
.leiste a{display:flex;align-items:baseline;gap:12px;padding:18px var(--pad) 20px;border-right:1px solid var(--line);position:relative;transition:background .25s}
.leiste a:last-child{border-right:0}
.leiste a::before{content:"";position:absolute;top:-6px;left:var(--pad);width:11px;height:11px;border-radius:50%;background:var(--tc);border:1px solid var(--ink)}
.leiste a:hover{background:var(--pa3)}
.leiste b{font-family:'Mo',monospace;font-weight:400;font-size:13px}
.leiste span{font-family:'Ar',system-ui,sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--mut)}

/* Diptychon: Oben / Unten, eine Haarlinie läuft über beide Bilder */
.dp-s{padding-top:clamp(72px,11vh,140px)}
.dp-k{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,5vw,90px);align-items:end;margin-bottom:clamp(30px,4vw,56px)}
.dp-k .eb{grid-column:1/-1;margin-bottom:0}
.dp-k .lead{justify-self:end;max-width:38ch}
.dp{position:relative;display:grid;grid-template-columns:1fr 1fr;height:min(92vh,960px)}
.dp-h{position:relative;overflow:hidden;display:block;color:#fff}
.dp-h img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.6s var(--e)}
.dp-h:hover img{transform:scale(1.035)}
.dp-h::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.45))}
.dp-l{position:absolute;left:clamp(20px,3vw,48px);bottom:clamp(22px,4vh,48px);z-index:2;display:flex;flex-direction:column;gap:10px}
.dp-l .hl-w{font-size:clamp(64px,8vw,132px);color:#fff}
.dp-l .mono{letter-spacing:.1em;text-transform:uppercase}
.dp-lin{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:3}
.dp-lin path{fill:none;stroke:var(--pa);stroke-width:2;stroke-dasharray:1600;stroke-dashoffset:1600;transition:stroke-dashoffset 3.4s var(--e)}
.dp-s.an .dp-lin path,.dp-lin.an path{stroke-dashoffset:0}

/* Messrand: senkrechte Höhenskala am linken Blattrand (Linie C) */
.mr{position:fixed;z-index:40;left:14px;top:calc(var(--hd) + 7vh);bottom:9vh;width:34px;pointer-events:none;display:none}
.mr::before{content:"";position:absolute;left:8px;top:0;bottom:0;border-left:1px solid var(--line2)}
.mr i{position:absolute;left:4px;width:9px;border-top:1px solid var(--line2);font-style:normal}
.mr i span{position:absolute;left:14px;top:-7px;font-family:'Mo',monospace;font-size:10px;color:var(--mut);writing-mode:vertical-rl;transform:rotate(180deg)}
.mr b{position:absolute;left:3px;width:11px;height:11px;border-radius:50%;background:var(--granat,#9C2B23);top:var(--pos,0%);transform:translateY(-50%);transition:top 1.1s var(--e)}
/* Messrand bewusst aus: stört über randlosen Bildern */

/* Galerie: echte Hochzeit, waagrecht */
.gal{padding:clamp(40px,6vh,80px) 0 clamp(72px,10vh,130px);background:var(--pa)}
.gal-k{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:clamp(24px,3vw,40px)}
.gal-r{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--pad) 18px;scrollbar-width:thin;cursor:grab}.gal-r.zieht{cursor:grabbing;scroll-snap-type:none;user-select:none}.gal-r.zieht img{pointer-events:none}
.gal-nav{display:flex;justify-content:flex-start;gap:10px;margin-bottom:14px}.gal-b{width:46px;height:46px;border-radius:50%;border:1px solid var(--line);background:var(--pa3);color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background .2s,color .2s}.gal-b svg{width:22px;height:22px}.gal-b:hover{background:var(--ink);color:var(--pa)}.gal-b:disabled{opacity:.3;cursor:default}.gal-b:disabled:hover{background:var(--pa3);color:var(--ink)}
.gal-r figure{margin:0;flex:0 0 auto;scroll-snap-align:start}
.gal-r img{height:min(68vh,640px);width:auto;display:block}
.gal-r:focus-visible{outline:2px solid var(--beere)}

@media(max-width:900px){
  .ein{grid-template-columns:1fr;min-height:0}
  .ein-b{order:-1;height:62svh}
  .ein-t{padding:34px var(--pad) 40px}
  .ein-k{display:none}
  .leiste{position:static;grid-template-columns:1fr 1fr}
  .leiste a{padding:16px var(--pad);border-bottom:1px solid var(--line)}
  .dp{grid-template-columns:1fr;height:auto}.dp-h{height:70svh}
  .dp-lin{display:none}
  .dp-k{grid-template-columns:1fr}.dp-k .lead{justify-self:start}
  .gal-r img{height:52vh}
}
@media(max-width:760px){.gal-k{flex-direction:column;align-items:flex-start;gap:14px}}

/* ===== v7 (29.09.2026): menschlich statt technisch — keine Höhen, keine Versal-Etiketten, keine Mono-Schrift ===== */
.eb{font-family:'Fr',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(17px,1.3vw,20px);line-height:1.2;letter-spacing:.01em;text-transform:none;color:var(--beere);gap:14px;font-variation-settings:'opsz' 36,'SOFT' 100}
.eb::before{width:34px;height:1px;border-radius:0;background:currentColor}
.dk .eb{color:var(--orch)}.dk .eb::before{background:var(--orch)}
.bt{font-family:'Fr',Georgia,serif;font-weight:400;font-size:17px;letter-spacing:.01em;text-transform:none;height:58px;padding:0 32px}
.nv{font-family:'Fr',Georgia,serif;font-size:16px;letter-spacing:.01em;text-transform:none}
.mk{font-family:'Fr',Georgia,serif;font-weight:400;font-size:clamp(21px,1.9vw,27px);letter-spacing:0;text-transform:none;font-variation-settings:'opsz' 72}
.mk em{font-style:italic;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1}
.hd .bt{height:42px;padding:0 22px;font-size:15px}
.rd{display:none!important}
/* Einstieg */
.ein-t{padding-bottom:clamp(40px,7vh,90px)}
.ein-b img{object-position:50% 18%}
.ein-b figcaption{font-family:'Fr',Georgia,serif;font-style:italic;font-size:16px;letter-spacing:.01em;text-transform:none;left:24px;bottom:22px}
.ein-k{bottom:clamp(40px,8vh,96px);width:clamp(190px,17vw,300px)}
.ein-k img{aspect-ratio:4/5;object-position:50% 22%}
/* Oben / Unten */
.dp{gap:16px;height:min(80vh,860px)}
.dp-o{font-family:'Fr',Georgia,serif;font-style:italic;font-size:clamp(18px,1.5vw,23px);color:#fff}
.dp-lin{display:none}
/* Kapitel-Kopf: ruhig, Hausfarbe nur als Punkt */
.hb{background:var(--pa);border:0}
.hb-in{padding:clamp(40px,5vw,72px) var(--pad) clamp(22px,2.6vw,34px);align-items:baseline;gap:clamp(12px,1.6vw,22px)}
.hb-p{display:inline-flex;gap:6px;align-self:center}
.hb-p i{display:block;width:14px;height:14px;border-radius:50%;background:var(--tc)}
.hb-n{font-family:'Fr',Georgia,serif;font-style:italic;font-weight:400;text-transform:none;letter-spacing:-.01em;font-size:clamp(32px,3.6vw,56px);line-height:1;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1}
.hb-o{font-family:'Fr',Georgia,serif;font-size:clamp(16px,1.2vw,19px);letter-spacing:.01em;text-transform:none;color:var(--mut)}
.hb .tk,.fx{display:none}
.kt .bilder figcaption,.cap{font-family:'Fr',Georgia,serif;font-style:italic;font-size:15px;letter-spacing:.01em;text-transform:none}
.nt{font-family:'Fr',Georgia,serif;font-style:italic;font-size:clamp(16px,1.2vw,18px);border-left:0;padding-left:0}
/* Räume */
.rm .z{font-family:'Fr',Georgia,serif;font-style:italic;font-size:16px;letter-spacing:.01em;text-transform:none;color:var(--mut)}
/* Küche: Bilder groß */
.dk .zw{grid-template-columns:.8fr 1.2fr}
.dk .bilder{gap:20px}
.dk .bilder img:nth-child(2){margin-top:110px}
/* Schritte */
.st li::before{content:counter(s);font-family:'Fr',Georgia,serif;font-style:italic;font-size:clamp(46px,4.4vw,70px);line-height:1;color:var(--beere);font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;margin-bottom:14px}
.st b{font-family:'Fr',Georgia,serif;font-weight:400;text-transform:none;letter-spacing:0;font-size:clamp(22px,2vw,28px)}
/* Anfrage: Brief statt Formular-Maske */
.karte{grid-template-columns:.85fr 1.15fr;border:0;box-shadow:0 30px 90px rgba(138,46,107,.22)}
.karte::before,.karte::after{display:none}
.karte .kl{border-right:0;background:var(--pa);padding:0 0 clamp(28px,3vw,48px)}
.kl-b{margin:0 0 clamp(26px,3vw,42px)}
.kl-b img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 28%}
.karte .kl>.hl,.karte .kl>p{padding:0 clamp(28px,3.4vw,52px)}
.karte .kl .bd{margin-top:22px}
.kl-d{margin-top:auto;padding-top:24px;font-style:italic;color:var(--mut);font-size:16px;line-height:1.55}
.kl-d a{color:var(--ink);font-style:normal;border-bottom:1px solid var(--line2)}
.fd label,.lg{font-family:'Fr',Georgia,serif;font-style:italic;font-size:17px;letter-spacing:.01em;text-transform:none;color:var(--ink)}
.fd input{font-size:18px}
.ch span{font-family:'Fr',Georgia,serif;font-size:16px;letter-spacing:.01em;text-transform:none;border-radius:999px;border-color:var(--line2);height:44px;padding:0 20px;background:var(--pa3)}
.ch label:hover span{border-color:var(--ink)}
.ch input:checked+span{background:var(--ink);border-color:var(--ink);color:var(--pa)}
.hin{font-family:'Fr',Georgia,serif;font-style:italic;font-size:14px;letter-spacing:0}
.zu{font-size:15px}
/* Fuß mit Auftritt */
.ft{padding:0 0 34px;font-family:'Fr',Georgia,serif;font-size:16px;letter-spacing:.01em}
.ft .ft-o{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding-top:clamp(40px,5vw,72px);padding-bottom:clamp(20px,3vw,36px);border-bottom:1px solid rgba(237,234,221,.18)}
.ft-ja{margin:0;font-family:'Fr',Georgia,serif;font-style:italic;font-weight:300;font-variation-settings:'opsz' 144,'SOFT' 100,'WONK' 1;font-size:clamp(120px,18vw,300px);line-height:.74;letter-spacing:-.05em;color:var(--pa)}
.ft-ja span{color:var(--orch)}
.ft-cta{max-width:430px;padding-bottom:1.5vw}
.ft-satz{font-style:italic;font-size:clamp(26px,2.6vw,40px);line-height:1.15;color:var(--pa);margin:0 0 26px;font-variation-settings:'opsz' 144,'SOFT' 100}
.ft .ft-h{display:grid;grid-template-columns:repeat(5,1fr);gap:0 16px}
.ft-h a{display:flex;flex-direction:column;gap:4px;padding:clamp(18px,2vw,26px) 8px clamp(18px,2vw,26px) 0;border-bottom:1px solid rgba(237,234,221,.18)}
.ft-h a:hover{text-decoration:none}
.ft-h i{display:block;width:10px;height:10px;border-radius:50%;background:var(--tc);margin-bottom:8px}
.ft-h .n{font-style:italic;font-size:clamp(19px,1.5vw,23px);line-height:1.1;color:var(--pa);transition:color .25s;font-variation-settings:'opsz' 144,'SOFT' 100}
.ft-h .o{font-size:13px;color:rgba(237,234,221,.55)}
.ft-h a:hover .n{color:var(--tc)}
.ft .ft-u{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px;padding-top:clamp(26px,3vw,40px);font-size:14px;line-height:1.55}
.ft-u p{margin:0 0 10px}
.ft .ft-u a:not(.logo):not(.ft-ag){text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(237,234,221,.55)}
.ft .ft-u div>a:not(.logo){display:inline-block;padding:4px 0}
.ft-l{font-style:italic;color:var(--orch)}
.ft .mk{color:var(--pa);display:block;margin-bottom:12px}
.ft small{font-size:13px}
@media(max-width:1100px){.ft .ft-h{grid-template-columns:1fr 1fr 1fr}} @media(max-width:700px){.ft .ft-h{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .dp{height:auto}.karte .kl{padding-bottom:10px}
  .dk .zw{grid-template-columns:1fr}
  .ft .ft-o{flex-direction:column;align-items:flex-start}
}
@media(max-width:640px){
  .ft .ft-u{grid-template-columns:1fr}
  .dp{padding:0;gap:0}
  .dk .bilder img:nth-child(2){margin-top:50px}
}
/* Küche v7b: Überschrift + Text oben, zwei große Bilder darunter */
.dk .zw{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:end}
.dk .k-x .lead{margin:0 0 .4em}
.dk .bilder{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:20px;margin-top:clamp(40px,5vw,80px)}
.dk .bilder img{aspect-ratio:4/3}
.dk .bilder img:nth-child(2){margin-top:0}
@media(max-width:900px){.dk .zw{grid-template-columns:1fr}.dk .bilder{grid-template-columns:1fr}}
@media(max-width:900px){.karte{grid-template-columns:minmax(0,1fr)}}
/* v8 (29.09.2026) */
.ein-k{width:clamp(220px,20vw,340px)}
.ein-k img{aspect-ratio:4/3;object-position:50% 55%}
#giulia .voll{max-width:1600px;margin-left:auto;margin-right:auto}
.gal-r img{height:min(60vh,580px)}
.dk .zw{grid-template-columns:minmax(0,1fr)}
.dk .gute{font-size:clamp(44px,8vw,140px);margin:0 0 .35em}
.dk .k-x .lead{max-width:54ch}
.dk .bilder{margin-top:clamp(36px,4vw,64px)}
.dk .zw{row-gap:0}
.ein-t{padding-left:max(var(--pad),calc((100vw - var(--maxw))/2 + var(--pad)))}
/* v9 (29.09.2026): Vollbilder wieder randlos, Ja-Band vor der Anfrage, Anfrage ruhig auf Papier */
#giulia .voll{max-width:none}
.voll .cr{position:absolute;right:18px;bottom:14px;z-index:3;color:rgba(255,255,255,.78);font-family:'Fr',Georgia,serif;font-style:italic;font-size:12px}
.ja-b .voll{height:min(90vh,940px)}