/* ==== TOKENS · Chiropraktik Mastermind 2027 · Sylt Edition ==== */
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-600-normal.woff2) format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-700-normal.woff2) format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-500-italic.woff2) format('woff2');font-weight:500;font-style:italic;font-display:swap}
@font-face{font-family:'Cormorant';src:url(/fonts/cormorant-garamond-latin-600-italic.woff2) format('woff2');font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:'Inter';src:url(/fonts/inter-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Inter';src:url(/fonts/inter-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'Inter';src:url(/fonts/inter-latin-600-normal.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'Inter';src:url(/fonts/inter-latin-700-normal.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Fira Code';src:url(/fonts/fira-code-latin-400-normal.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'Fira Code';src:url(/fonts/fira-code-latin-500-normal.woff2) format('woff2');font-weight:500;font-display:swap}

:root{
  --night:#0B0D11; --night-2:#12151B; --night-3:#1A1E26;
  --cream:#EEEAE2; --cream-2:#E5DFD4; --sand:#D9D1C3;
  --ink:#15171B; --ink-soft:rgba(21,23,27,.72); --ink-mute:rgba(21,23,27,.5);
  --cream-text:#EEEAE2; --cream-soft:rgba(238,234,226,.72); --cream-mute:rgba(238,234,226,.48);
  --dune:#C9AC74; --dune-2:#E2CB97; --sea:#8FA3B1; --sea-2:#5E7484;
  --line-d:rgba(238,234,226,.12); --line-l:rgba(21,23,27,.12);
  --serif:'Cormorant',Georgia,'Times New Roman',serif;
  --sans:-apple-system,'SF Pro Text','Inter',system-ui,sans-serif;
  --display:-apple-system,'SF Pro Display','Inter',system-ui,sans-serif;
  --mono:'Fira Code',ui-monospace,SFMono-Regular,monospace;
  --fs-h2:clamp(2.05rem,4vw,3.4rem); --fs-h3:clamp(1.15rem,1.6vw,1.35rem); --fs-lead:clamp(1.02rem,1.3vw,1.15rem); --fs-eyebrow:.7rem;
  --r-xl:28px; --r-lg:22px; --r-md:16px; --r-pill:999px;
  --sh-card:0 22px 55px -32px rgba(11,13,17,.55); --sh-soft:0 38px 85px -45px rgba(11,13,17,.7);
  --ease:cubic-bezier(.16,1,.3,1); --wrap:1240px; --pad:clamp(1.25rem,4vw,3rem);
}

/* ==== BASE ==== */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
body{margin:0;background:var(--night);color:var(--cream-text);font-family:var(--sans);font-size:1rem;line-height:1.62;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
h1,h2,h3{margin:0;text-wrap:balance}
p{margin:0}
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}
.sec{padding:clamp(4.5rem,9vw,8rem) 0;position:relative}
.sec.light{background:var(--cream);color:var(--ink)}
.sec.sand{background:var(--cream-2);color:var(--ink)}
.sec.dark{background:linear-gradient(180deg,var(--night-2),var(--night));color:var(--cream-text)}
.sec.dark::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(46% 60% at 82% 20%,rgba(143,163,177,.14),transparent 62%),radial-gradient(40% 50% at 12% 86%,rgba(201,172,116,.12),transparent 60%)}
.sec.dark>*{position:relative;z-index:2}
.eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--mono);font-size:var(--fs-eyebrow);letter-spacing:.22em;text-transform:uppercase;color:var(--dune);margin-bottom:1.1rem}
.eyebrow::before{content:"";width:22px;height:1px;background:currentColor;opacity:.7}
.light .eyebrow,.sand .eyebrow{color:#8A6A2E}
h2{font-family:var(--serif);font-weight:500;font-size:var(--fs-h2);line-height:1.04;letter-spacing:-.015em}
h2 em,h1 em{font-style:italic;font-weight:500;color:var(--dune)}
.light h2 em,.sand h2 em{color:#8A6A2E}
.lead{font-size:var(--fs-lead);line-height:1.6;max-width:33rem;margin-top:1.15rem;color:var(--cream-soft)}
.light .lead,.sand .lead{color:var(--ink-soft)}
.head{margin-bottom:clamp(2rem,4vw,3rem)}
.head.center{text-align:center}
.head.center .lead{margin-left:auto;margin-right:auto}
.head.split{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;flex-wrap:wrap}
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:var(--r-pill);padding:.95rem 1.85rem;font-weight:600;font-size:.95rem;line-height:1;border:1px solid transparent;transition:transform .35s var(--ease),background .3s,color .3s}
.btn::after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;transform:skewX(-20deg);background:linear-gradient(105deg,transparent,rgba(255,255,255,.35),transparent);transition:left .6s var(--ease)}
.btn:hover::after{left:130%}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.35;pointer-events:none}
.btn-p{background:var(--cream);color:var(--ink)}
.btn-d{background:var(--ink);color:var(--cream)}
.btn-o{background:transparent;border-color:var(--line-d);color:var(--cream-text)}
.light .btn-o,.sand .btn-o{border-color:var(--line-l);color:var(--ink)}
.tlink{font-weight:500;font-size:.95rem;display:inline-flex;align-items:center;gap:.4rem;opacity:.8;transition:opacity .3s,gap .3s}
.tlink:hover{opacity:1;gap:.7rem}
.pill{display:inline-flex;align-items:center;gap:.45rem;border-radius:var(--r-pill);padding:.5rem .95rem;font-size:.82rem;font-weight:500;border:1px solid var(--line-d);background:rgba(238,234,226,.06);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.pill svg{width:14px;height:14px}
.light .pill,.sand .pill{border-color:var(--line-l);background:rgba(21,23,27,.04)}
.mono{font-family:var(--mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.grain{position:fixed;inset:0;z-index:1500;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>")}

/* reveal */
html.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
html.js [data-reveal="zoom"]{transform:scale(.96)}
html.js [data-reveal="left"]{transform:translateX(-26px)}
html.js [data-reveal].in{opacity:1;transform:none}
[data-stagger]>*{transition-delay:calc(var(--i,0)*90ms)}

/* ==== HEADER ==== */
.hdr{position:fixed;top:0;left:0;right:0;z-index:100;transition:background .4s,border-color .4s,padding .4s}
.hdr .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:1.1rem;padding-bottom:1.1rem;transition:padding .4s}
.hdr.scrolled{background:rgba(11,13,17,.72);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid var(--line-d)}
.hdr.scrolled .wrap{padding-top:.7rem;padding-bottom:.7rem}
.hdr .logo img{height:30px;width:auto}
.hdr .right{display:flex;align-items:center;gap:1.2rem}
.hdr .date{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-mute)}
.hdr .btn{padding:.75rem 1.35rem;font-size:.86rem}

/* ==== HERO ==== */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;background:radial-gradient(60% 50% at 70% 30%,rgba(143,163,177,.14),transparent 60%),radial-gradient(40% 40% at 10% 90%,rgba(201,172,116,.12),transparent 60%),var(--night)}
.hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero-bg .giant{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-family:var(--display);font-weight:800;font-size:clamp(6rem,19vw,19rem);line-height:1;letter-spacing:-.05em;color:transparent;-webkit-text-stroke:1px rgba(238,234,226,.09);white-space:nowrap}
html.js .hero-bg .giant{opacity:0;animation:giant 2s var(--ease) .2s forwards}
@keyframes giant{from{opacity:0;transform:translate(-50%,-48%) scale(.97)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.hero .wrap{position:relative;z-index:2;width:100%;padding-top:7.5rem;padding-bottom:clamp(3rem,6vw,5rem);display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}
.hero-txt{container-type:inline-size}
.hero-pills{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1.6rem}
.hero h1{font-family:var(--serif);font-weight:500;font-size:min(clamp(2.6rem,4.6vw,4.4rem),9.4cqi);line-height:1.02;letter-spacing:-.015em}
.hero h1 span{display:block;white-space:nowrap}
.hero .lead{max-width:31rem}
.hero-cta{display:flex;align-items:center;gap:1.4rem;margin-top:2rem;flex-wrap:wrap}
.hero-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:2.6rem;max-width:34rem}
.fact{border:1px solid var(--line-d);border-radius:var(--r-lg);padding:1rem 1rem .9rem;background:rgba(238,234,226,.04)}
.fact b{display:block;font-family:var(--serif);font-weight:500;font-size:2.2rem;line-height:1;letter-spacing:-.02em;color:var(--dune-2)}
.fact span{display:block;margin-top:.45rem;font-size:.8rem;color:var(--cream-mute);line-height:1.35}
.hero-stack{position:relative;height:min(70vh,600px);margin-top:1.5rem}
.hs{position:absolute;margin:0;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-soft);border:1px solid rgba(238,234,226,.1);background:var(--night-3)}
.hs img{width:100%;height:100%;object-fit:cover}
.hs figcaption{position:absolute;left:.9rem;bottom:.8rem;font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(238,234,226,.85);background:rgba(11,13,17,.55);padding:.35rem .6rem;border-radius:99px;backdrop-filter:blur(8px)}
.hs-1{left:0;top:6%;width:66%;aspect-ratio:4/3;transform:rotate(-3deg);z-index:1}
.hs-2{right:0;top:0;width:36%;aspect-ratio:3/4;transform:rotate(2.5deg);z-index:2}
.hs-3{right:8%;bottom:0;width:54%;aspect-ratio:4/3;transform:rotate(-1.5deg);z-index:3}
html.js .hs{animation:float 9s ease-in-out infinite}
html.js .hs-2{animation-delay:-3s}html.js .hs-3{animation-delay:-6s}
@keyframes float{0%,100%{translate:0 0}50%{translate:0 -8px}}
.rise{opacity:1}
html.js .rise{opacity:0;transform:translateY(18px);animation:rise 1s var(--ease) forwards}
.rise.d1{animation-delay:.15s}.rise.d2{animation-delay:.3s}.rise.d3{animation-delay:.45s}.rise.d4{animation-delay:.6s}
@keyframes rise{to{opacity:1;transform:none}}

/* ==== EDITIONEN ==== */
.eds{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:1rem;align-items:stretch}
.ed{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:3/4;box-shadow:var(--sh-soft);background:var(--night-3)}
.ed img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease);filter:saturate(.7) contrast(1.05)}
.ed:hover img{transform:scale(1.05)}
.ed .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,17,.15) 0%,rgba(11,13,17,0) 30%,rgba(11,13,17,.88) 100%);display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem;color:var(--cream-text)}
.ed .yr{font-family:var(--display);font-weight:800;font-size:clamp(3rem,5vw,4.6rem);line-height:.9;letter-spacing:-.05em;color:rgba(238,234,226,.92);mix-blend-mode:screen}
.ed .ov b{font-family:var(--serif);font-weight:500;font-size:2rem;line-height:1;margin-top:.5rem;letter-spacing:-.01em}
.ed .ov span:last-child{font-size:.85rem;color:var(--cream-soft);margin-top:.35rem}
.ed .tag{position:absolute;top:1rem;left:1rem;z-index:2;background:var(--dune);color:var(--night);border-color:transparent;font-weight:600}
.ed.next{outline:2px solid var(--dune);outline-offset:4px}

/* ==== STATIONEN (Laufband) ==== */
.stations{background:var(--night);border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d);padding:1.1rem 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.stations .track{display:flex;gap:3.5rem;width:max-content;animation:marq 38s linear infinite}
.stations .track span{font-family:var(--mono);font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cream-mute);white-space:nowrap;display:inline-flex;align-items:center;gap:.9rem}
.stations .track span i{font-style:normal;color:var(--dune);font-weight:500}
.stations .track span::after{content:"◆";font-size:.5rem;color:var(--dune);opacity:.6;margin-left:2.6rem}
@keyframes marq{to{transform:translateX(-50%)}}

/* ==== GRUNDPFEILER ==== */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
.pillar{background:#F6F3EC;border:1px solid var(--line-l);border-radius:var(--r-xl);padding:2rem 1.8rem 1.9rem;min-height:300px;display:flex;flex-direction:column;box-shadow:var(--sh-card);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.pillar:hover{transform:translateY(-6px);box-shadow:var(--sh-soft)}
.pillar .num{font-family:var(--serif);font-weight:500;font-size:3.6rem;line-height:.9;color:#8A6A2E;letter-spacing:-.03em}
.pillar h3{font-family:var(--serif);font-weight:600;font-size:1.65rem;letter-spacing:-.01em;margin-top:auto;padding-top:2.2rem;line-height:1.1}
.pillar p{margin-top:.6rem;font-size:.95rem;line-height:1.55;color:var(--ink-soft)}
.pillar .tag{margin-top:1.2rem;align-self:flex-start}

/* ==== THEMEN 2027 ==== */
.focus{display:grid;grid-template-columns:1.05fr .95fr;gap:3rem;align-items:center}
.focus-big{font-family:var(--serif);font-weight:500;font-size:clamp(2.6rem,5.4vw,4.6rem);line-height:.98;letter-spacing:-.02em}
.focus-big em{color:var(--dune);font-style:italic}
.focus-big small{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--cream-mute);margin-bottom:1.2rem}
.focus-cards{display:grid;gap:.9rem}
.fcard{border:1px solid var(--line-d);border-radius:var(--r-lg);padding:1.4rem 1.5rem;background:rgba(238,234,226,.04);display:grid;grid-template-columns:auto 1fr;gap:1.1rem;align-items:start}
.fcard .ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(201,172,116,.12);color:var(--dune)}
.fcard .ico svg{width:22px;height:22px}
.fcard h3{font-family:var(--serif);font-weight:600;font-size:1.45rem;line-height:1.1}
.fcard p{margin-top:.35rem;font-size:.92rem;color:var(--cream-soft);line-height:1.5}
.chips{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2.4rem}
.chip{border:1px solid var(--line-d);border-radius:var(--r-pill);padding:.5rem .95rem;font-size:.82rem;color:var(--cream-soft);background:rgba(238,234,226,.03)}
.chips .lbl{width:100%;font-family:var(--mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--cream-mute);margin-bottom:.2rem}

/* ==== LOCATION + ANREISE ==== */
.loc{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.loc-img{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:4/3;box-shadow:var(--sh-soft)}
.loc-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.06);transition:transform 1.4s var(--ease)}
.loc-img.in img{transform:scale(1)}
.loc-img .cap{position:absolute;left:1rem;bottom:1rem;display:flex;gap:.5rem;flex-wrap:wrap}
.loc-img .cap .pill{background:rgba(11,13,17,.6);color:var(--cream-text);border-color:rgba(238,234,226,.15)}
.loc-img .vlabel{position:absolute;right:1.1rem;top:1.1rem;writing-mode:vertical-rl;font-family:var(--mono);font-size:.62rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(238,234,226,.75)}
.hotel-list{display:grid;gap:.7rem;margin-top:1.8rem}
.hotel-list div{display:flex;gap:.9rem;align-items:flex-start;font-size:.95rem;color:var(--ink-soft);line-height:1.5}
.hotel-list svg{width:18px;height:18px;flex:none;margin-top:.2rem;color:#8A6A2E}
.hotel-list b{color:var(--ink);font-weight:600}
.trip{margin-top:clamp(3.5rem,7vw,5.5rem)}
.trip-tabs{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.2rem}
.ttab{border:1px solid var(--line-l);background:transparent;color:var(--ink);border-radius:var(--r-pill);padding:.7rem 1.2rem;font-size:.9rem;font-weight:500;display:inline-flex;align-items:center;gap:.5rem;transition:background .3s,color .3s,transform .3s}
.ttab svg{width:16px;height:16px}
.ttab.on{background:var(--ink);color:var(--cream)}
.ttab.pulse{animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(21,23,27,.2)}50%{box-shadow:0 0 0 9px rgba(21,23,27,0)}}
.tpanel{display:none;background:#F6F3EC;border:1px solid var(--line-l);border-radius:var(--r-xl);padding:2rem;min-height:300px;box-shadow:var(--sh-card)}
.tpanel.on{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;align-items:center;animation:fadein .6s var(--ease)}
@keyframes fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.tpanel .dur{font-family:var(--serif);font-weight:500;font-size:4.4rem;line-height:.9;letter-spacing:-.03em;color:#8A6A2E}
.tpanel .dur small{display:block;font-family:var(--mono);font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:.6rem}
.tpanel .dur i{font-style:normal;font-size:1.1rem;font-family:var(--sans);color:var(--ink-mute);margin-left:.4rem;letter-spacing:0}
.tpanel h3{font-family:var(--serif);font-weight:600;font-size:1.5rem;margin-top:1.1rem;line-height:1.1}
.tpanel p{font-size:.92rem;color:var(--ink-soft);margin-top:.5rem;line-height:1.5}
.route{display:grid;gap:0;position:relative;padding-left:1.6rem}
.route::before{content:"";position:absolute;left:.42rem;top:.6rem;bottom:.6rem;width:1px;background:linear-gradient(180deg,#8A6A2E,rgba(138,106,46,.2))}
.stop{position:relative;padding:.35rem 0;font-weight:600;font-size:.98rem}
.stop::before{content:"";position:absolute;left:-1.6rem;top:.78rem;width:13px;height:13px;border-radius:50%;background:#8A6A2E;box-shadow:0 0 0 4px #F6F3EC}
.leg{justify-self:start;display:inline-flex;align-items:center;gap:.5rem;margin:.3rem 0 .3rem 0;border:1px solid var(--line-l);border-radius:var(--r-pill);padding:.42rem .9rem;font-size:.8rem;color:var(--ink-soft);background:#fff}
.leg svg{width:14px;height:14px}
.tip{display:flex;gap:.8rem;align-items:flex-start;margin-top:1.2rem;font-size:.85rem;color:var(--ink-mute);line-height:1.5}
.tip svg{width:16px;height:16px;flex:none;margin-top:.15rem}

/* ==== ABLAUF ==== */
.days{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
.day{border:1px solid var(--line-d);border-radius:var(--r-xl);padding:1.6rem 1.5rem;background:rgba(238,234,226,.035);min-height:230px;display:flex;flex-direction:column}
.day .d{font-family:var(--mono);font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--dune)}
.day h3{font-family:var(--serif);font-weight:600;font-size:1.55rem;margin-top:.7rem;line-height:1.1}
.day p{margin-top:auto;padding-top:1.4rem;font-size:.9rem;color:var(--cream-soft);line-height:1.5}
.day .pin{margin-top:1rem;align-self:flex-start;font-size:.76rem}

/* ==== VERANSTALTER ==== */
.hosts{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}
.host{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.6rem;align-items:end;border:1px solid var(--line-l);border-radius:var(--r-xl);background:#F6F3EC;overflow:hidden;box-shadow:var(--sh-card)}
.host figure{margin:0;aspect-ratio:4/5;position:relative;overflow:hidden}
.host figure img{width:100%;height:100%;object-fit:cover;object-position:50% 20%}
.host figure::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,#F6F3EC 100%)}
.host .txt{padding:1.6rem 1.6rem 1.6rem 0}
.host .role{font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:#8A6A2E}
.host h3{font-family:var(--serif);font-weight:600;font-size:1.8rem;margin-top:.5rem;line-height:1.05}
.host p{font-size:.9rem;color:var(--ink-soft);margin-top:.7rem;line-height:1.5}
.host .facts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.host .facts span{border:1px solid var(--line-l);border-radius:var(--r-pill);padding:.32rem .7rem;font-size:.74rem;color:var(--ink-soft);background:#fff}

/* ==== RÜCKBLICK ==== */
.edition{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:1.4rem}
.ecard{position:relative;border-radius:var(--r-xl);overflow:hidden;aspect-ratio:16/10;box-shadow:var(--sh-soft);background:var(--night-3)}
.ecard img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.ecard:hover img{transform:scale(1.04)}
.ecard .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,17,0) 40%,rgba(11,13,17,.85));display:flex;flex-direction:column;justify-content:flex-end;padding:1.5rem}
.ecard .ov .mono{color:var(--dune)}
.ecard .ov b{font-family:var(--serif);font-weight:500;font-size:2.1rem;line-height:1;margin-top:.4rem;color:var(--cream-text);letter-spacing:-.01em}
.ecard .ov span{font-size:.85rem;color:var(--cream-soft);margin-top:.3rem}
.ecard .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:74px;height:74px;border-radius:50%;background:rgba(238,234,226,.14);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(238,234,226,.35);display:grid;place-items:center;color:var(--cream-text);transition:transform .4s var(--ease),background .3s}
.ecard:hover .play{transform:translate(-50%,-50%) scale(1.08);background:rgba(238,234,226,.24)}
.ecard .play svg{width:24px;height:24px;margin-left:3px}
.ecard iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.gal{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:160px;gap:.7rem;margin-top:.7rem}
.gal figure{margin:0;border-radius:var(--r-md);overflow:hidden;position:relative}
.gal figure img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}
.gal figure:hover img{transform:scale(1.05)}
.gal .w2{grid-column:span 2}.gal .h2{grid-row:span 2}

/* ==== STIMMEN ==== */
.vids{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.vid{position:relative;border-radius:var(--r-lg);overflow:hidden;aspect-ratio:16/9;background:var(--night-3);box-shadow:var(--sh-card);cursor:pointer}
.vid img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}
.vid .ov{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,13,17,0) 45%,rgba(11,13,17,.88));display:flex;flex-direction:column;justify-content:flex-end;padding:1rem 1.1rem}
.vid .ov b{font-size:.92rem;color:var(--cream-text);font-weight:600}
.vid .ov span{font-size:.78rem;color:var(--cream-mute)}
.vid .play{position:absolute;left:50%;top:44%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:rgba(238,234,226,.14);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(238,234,226,.35);display:grid;place-items:center;color:var(--cream-text);transition:transform .4s var(--ease)}
.vid:hover .play{transform:translate(-50%,-50%) scale(1.08)}
.vid .play svg{width:18px;height:18px;margin-left:2px}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.quote{background:#F6F3EC;border:1px solid var(--line-l);border-radius:var(--r-lg);padding:1.5rem 1.5rem 1.3rem;display:flex;flex-direction:column;box-shadow:var(--sh-card)}
.quote p{font-family:var(--serif);font-size:1.22rem;line-height:1.35;font-weight:500;color:var(--ink)}
.quote .who{margin-top:auto;padding-top:1.1rem;font-size:.82rem;color:var(--ink-mute)}
.quote .who b{display:block;color:var(--ink);font-weight:600;font-size:.88rem}

/* ==== TICKET ==== */
.ticket{display:grid;grid-template-columns:1fr 1fr;gap:2.4rem;align-items:start}
.tcard{border:1px solid var(--line-d);border-radius:var(--r-xl);padding:2.2rem;background:linear-gradient(180deg,rgba(238,234,226,.07),rgba(238,234,226,.03));position:relative;overflow:hidden}
.tcard::before{content:"";position:absolute;inset:-40% -20% auto auto;width:60%;aspect-ratio:1;background:radial-gradient(circle,rgba(201,172,116,.22),transparent 60%);pointer-events:none}
.tcard>*{position:relative}
.price{display:flex;align-items:baseline;gap:.6rem;margin-top:.6rem}
.price b{white-space:nowrap;font-family:var(--serif);font-weight:500;font-size:4.2rem;line-height:.9;letter-spacing:-.03em;color:var(--cream-text);font-variant-numeric:tabular-nums}
.price span{font-size:.85rem;color:var(--cream-mute)}
.incl{display:grid;gap:.65rem;margin-top:1.6rem}
.incl div{display:flex;gap:.8rem;align-items:flex-start;font-size:.95rem;color:var(--cream-soft);line-height:1.45}
.incl svg{width:18px;height:18px;flex:none;color:var(--dune);margin-top:.15rem}
.note{margin-top:1.4rem;padding:1rem 1.1rem;border-radius:var(--r-md);border:1px solid var(--line-d);font-size:.82rem;color:var(--cream-mute);line-height:1.5;display:flex;gap:.7rem}
.note svg{width:16px;height:16px;flex:none;margin-top:.15rem;color:var(--dune)}
.seats{margin-top:1.5rem}
.seats .bar{height:6px;border-radius:99px;background:rgba(238,234,226,.1);overflow:hidden}
.seats .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--dune),var(--dune-2));transition:width 1.6s var(--ease)}
.seats .lbl{display:flex;justify-content:space-between;font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-mute);margin-top:.5rem}

/* funnel */
.fx{border:1px solid var(--line-d);border-radius:var(--r-xl);background:var(--cream);color:var(--ink);padding:1.8rem;box-shadow:var(--sh-soft)}
.fx-prog{display:flex;gap:.4rem;margin-bottom:1.3rem}
.fx-prog i{flex:1;height:4px;border-radius:99px;background:rgba(21,23,27,.12)}
.fx-prog i.on{background:var(--ink)}
.fx-step{display:none}
.fx-step.on{display:block;animation:fadein .5s var(--ease)}
.fx .q{font-family:var(--serif);font-weight:600;font-size:1.6rem;line-height:1.1}
.fx .sub{font-size:.88rem;color:var(--ink-mute);margin-top:.4rem}
.opts{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1.2rem}
.opts.two{grid-template-columns:1fr 1fr}
.opt{border:1px solid var(--line-l);background:#fff;border-radius:var(--r-md);padding:1rem .8rem;text-align:center;font-weight:600;font-size:.95rem;transition:transform .3s var(--ease),border-color .3s,background .3s}
.opt small{display:block;font-weight:400;font-size:.76rem;color:var(--ink-mute);margin-top:.2rem}
.opt:hover{transform:translateY(-2px)}
.opt.sel{background:var(--ink);color:var(--cream);border-color:var(--ink)}
.opt.sel small{color:var(--cream-mute)}
.fld{display:grid;gap:.75rem;margin-top:1.2rem}
.fld .row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}
.fld input,.fld textarea{width:100%;border:1px solid var(--line-l);border-radius:12px;background:#fff;padding:.9rem 1rem;font:inherit;font-size:.95rem;color:var(--ink);outline:none;transition:border-color .3s}
.fld input:focus,.fld textarea:focus{border-color:var(--ink)}
.fld textarea{min-height:88px;resize:vertical}
.fx-nav{display:flex;justify-content:space-between;align-items:center;margin-top:1.3rem;gap:1rem}
.fx-nav .back{background:none;border:0;color:var(--ink-mute);font-size:.88rem;padding:.5rem 0}
.fx-sum{display:grid;gap:.4rem;margin-top:1rem;font-size:.9rem;color:var(--ink-soft)}
.fx-sum div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line-l);padding:.45rem 0}
.fx-sum b{color:var(--ink);font-variant-numeric:tabular-nums}
.fx .legal{font-size:.74rem;color:var(--ink-mute);margin-top:.9rem;line-height:1.45}
.fx .done{text-align:center;padding:1.5rem 0}
.fx .done .q{font-size:1.8rem}
.fx .err{color:#9a2a2a;font-size:.84rem;margin-top:.6rem}.fx .err[hidden]{display:none}

/* ==== FAQ + LAURA ==== */
.faqwrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:3rem;align-items:start}
.laura{border:1px solid var(--line-l);border-radius:var(--r-xl);background:#F6F3EC;padding:1.6rem;display:grid;grid-template-columns:auto 1fr;gap:1.2rem;align-items:center;box-shadow:var(--sh-card)}
.laura figure{margin:0;width:92px;height:92px;border-radius:50%;overflow:hidden;border:2px solid #8A6A2E}
.laura figure img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.laura .role{font-family:var(--mono);font-size:.64rem;letter-spacing:.2em;text-transform:uppercase;color:#8A6A2E}
.laura h3{font-family:var(--serif);font-weight:600;font-size:1.5rem;margin-top:.3rem}
.laura p{font-size:.88rem;color:var(--ink-soft);margin-top:.3rem}
.laura .btn{margin-top:.8rem;padding:.7rem 1.2rem;font-size:.85rem}
.faq{display:grid;gap:.6rem}
.fq{border:1px solid var(--line-l);border-radius:var(--r-lg);background:#F6F3EC;overflow:hidden}
.fq button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem;text-align:left;background:none;border:0;padding:1.15rem 1.3rem;font-weight:600;font-size:1rem;color:var(--ink)}
.fq button svg{width:18px;height:18px;flex:none;transition:transform .4s var(--ease)}
.fq.open button svg{transform:rotate(45deg)}
.fq .a{max-height:0;overflow:hidden;transition:max-height .5s var(--ease)}
.fq .a p{padding:0 1.3rem 1.2rem;font-size:.92rem;color:var(--ink-soft);line-height:1.55}

/* ==== FOOTER ==== */
.foot{background:var(--night);padding:3.5rem 0 2.2rem;border-top:1px solid var(--line-d)}
.foot .top{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap}
.foot .top img{height:34px;width:auto;opacity:.9}
.foot nav{display:flex;gap:1.6rem;font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-mute)}
.foot nav a:hover{color:var(--cream-text)}
.foot .base{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-top:2.4rem;padding-top:1.4rem;border-top:1px solid var(--line-d);font-family:var(--mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cream-mute)}

/* sticky CTA */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:90;transform:translateY(110%);transition:transform .5s var(--ease);padding:.7rem var(--pad);background:rgba(11,13,17,.82);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-top:1px solid var(--line-d)}
.sticky.show{transform:none}
.sticky .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0}
.sticky .l b{font-family:var(--serif);font-size:1.25rem;font-weight:500}
.sticky .l span{display:block;font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cream-mute)}
.sticky .btn{padding:.8rem 1.4rem;font-size:.88rem;white-space:nowrap;flex:none}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}[data-reveal]{opacity:1;transform:none}.rise,.hero-bg .giant{opacity:1;transform:translate(-50%,-50%)}}
.m-only{display:none}

/* ==== MOBILE-LAYER (ein Block) ==== */
@media (max-width:768px){
  :root{--pad:1.25rem}
  .sec{padding:clamp(4.2rem,15vw,5.2rem) 0}
  h2{font-size:clamp(1.85rem,8.4vw,2.2rem)}
  .head,.head.split{text-align:center;display:block}
  .head.split>*{margin-left:auto;margin-right:auto}
  .lead{font-size:1rem;margin-left:auto;margin-right:auto}
  .m-hide{display:none}.m-only{display:block}
  h2 br{display:none}h2 br.br-m{display:inline}
  .hdr .date{display:none}
  .hdr .logo img{height:24px}
  .hero{min-height:auto}
  .hero .wrap{grid-template-columns:1fr;gap:2rem;padding-top:6.5rem;padding-bottom:2.6rem;text-align:center}
  .hero-pills{justify-content:center}
  .hero h1{font-size:min(clamp(2.1rem,9.6vw,2.7rem),13cqi)}
  .hero h1 span{white-space:normal}
  .hero .lead{max-width:none}
  .hero-cta{flex-direction:column;align-items:stretch;gap:.9rem}
  .hero-cta .btn{width:100%;padding:1.05rem 1.5rem}
  .hero-cta .tlink{justify-content:center}
  .hero-facts{grid-template-columns:repeat(3,1fr);gap:.5rem;max-width:none;margin-top:1.8rem}
  .fact{padding:.85rem .5rem .75rem;text-align:center}
  .fact b{font-size:1.6rem}.fact span{font-size:.68rem}
  .hero-stack{height:62vw;max-height:360px;order:-1}
  .hero-bg .giant{font-size:26vw;top:38%}
  .eds{display:flex}
  .ed{aspect-ratio:4/5}
  .swipe{display:flex;gap:.8rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--pad) 3.4rem;margin:0 calc(-1*var(--pad)) -2.4rem;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .swipe::-webkit-scrollbar{display:none}
  .swipe>*{flex:0 0 84%;scroll-snap-align:center}
  .swipe [data-reveal]{opacity:1;transform:none;transition:none}
  .dots{display:flex;justify-content:center;gap:.4rem;margin-top:.9rem}
  .dots i{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.25;transition:opacity .3s,transform .3s}
  .dots i.on{opacity:.9;transform:scale(1.25)}
  .pillars{display:flex}
  .pillar{min-height:260px;text-align:center;align-items:center}
  .pillar .tag{align-self:center}
  .focus{grid-template-columns:1fr;gap:2rem;text-align:center}
  .focus-big{font-size:clamp(2.4rem,11vw,3rem)}
  .fcard{text-align:left}
  .chips{justify-content:center}
  .loc{grid-template-columns:1fr;gap:1.6rem}
  .eds.swipe>*{flex-basis:78%}
  .loc-img{border-radius:var(--r-lg)}
  .loc .txt{text-align:center}
  .hotel-list div{text-align:left}
  .trip-tabs{justify-content:center}
  .tpanel.on{grid-template-columns:1fr;padding:1.4rem;text-align:center}
  .tpanel .dur{font-size:3.4rem}
  .route{text-align:left}
  .days{display:flex}
  .day{min-height:200px;text-align:center;align-items:center}
  .day .pin{align-self:center}
  .hosts{grid-template-columns:1fr;gap:1rem}
  .host{grid-template-columns:1fr;text-align:center}
  .host figure{aspect-ratio:4/4}
  .host figure::after{background:linear-gradient(180deg,transparent 60%,#F6F3EC 100%)}
  .host .txt{padding:0 1.3rem 1.5rem}
  .host .facts{justify-content:center}
  .edition{grid-template-columns:1fr}
  .gal{grid-template-columns:repeat(2,1fr);grid-auto-rows:150px}
  .gal .w2{grid-column:span 2}.gal .h2{grid-row:span 1}
  .gal figure:nth-child(n+7){display:none}
  .vids,.quotes{display:flex}
  .quote{text-align:center}
  .ticket{grid-template-columns:1fr;gap:1.4rem}
  .tcard{padding:1.6rem;text-align:center}
  .price{justify-content:center}
  .price b{font-size:2.9rem}
  .price{flex-direction:column;gap:.2rem;align-items:center}
  .incl div{text-align:left}
  .fx{padding:1.3rem}
  .fx .q{font-size:1.4rem}
  .opts{grid-template-columns:repeat(3,1fr)}
  .fld .row{grid-template-columns:1fr}
  .fx-nav .btn{flex:1}
  .faqwrap{grid-template-columns:1fr;gap:1.6rem}
  .laura{grid-template-columns:1fr;text-align:center;justify-items:center}
  .foot .top{flex-direction:column;text-align:center}
  .foot nav{flex-wrap:wrap;justify-content:center;gap:1rem}
  .foot .base{justify-content:center;text-align:center}
  .sticky .l span{display:none}
  .sticky .l b{font-size:1.05rem}
}
@media (hover:none){.pillar:hover,.btn:hover{transform:none}}
