/* ============================================================
   mountainplayground.at — Design-Tokens
   Weiß als Grund, Farbe kommt ausschließlich aus Fotos + Logo.
   ============================================================ */
:root{
  --bg:#ffffff;
  --ink:#101010;
  --muted:#6a6a6a;
  --faint:#9a9a9a;
  --line:#e6e6e6;
  --black:#101010;
  --sand:#f5f4f2;
  --max:1240px;
  --sans:'Inter', system-ui, -apple-system, sans-serif;
  --display:'Archivo', 'Inter', system-ui, sans-serif;
  --brand:'Fredoka', 'Archivo', sans-serif;
  --nav-h:76px;
  --bar-h:38px;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  background:var(--bg);color:var(--ink);
  font-family:var(--sans);font-weight:400;font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:.001ms!important;transition-duration:.001ms!important;}
}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:2px;}

h1,h2,h3,h4{font-family:var(--display);font-weight:800;letter-spacing:-0.02em;line-height:1.02;text-transform:uppercase;}

.wrap{max-width:var(--max);margin:0 auto;padding:0 40px;}
@media(max-width:640px){.wrap{padding:0 22px;}}

.eyebrow{
  font-family:var(--display);font-weight:700;font-size:12.5px;
  letter-spacing:.16em;text-transform:uppercase;color:var(--muted);
}
/* Die kleinen, oft als Frage formulierten Überschriften über den großen
   Titeln — bewusst größer, weil sie den Abschnitt einordnen. */
.sec-head .eyebrow,
.alt-body .eyebrow,
.split-body .eyebrow,
.note .eyebrow,
.page-hero .eyebrow,
.hero .eyebrow,
.cta .eyebrow{
  font-size:14px;letter-spacing:.13em;
}

.reveal{opacity:0;transform:translateY(24px);
  transition:opacity .75s cubic-bezier(.16,.8,.24,1),transform .75s cubic-bezier(.16,.8,.24,1);}
.reveal.in{opacity:1;transform:none;}

/* ---------- Buttons ---------- */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  background:var(--black);color:#fff;
  font-family:var(--display);font-weight:700;font-size:13px;
  letter-spacing:.08em;text-transform:uppercase;
  padding:15px 26px;border-radius:6px;
  border:1.5px solid var(--black);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.btn:hover{transform:translateY(-2px);background:#000;}
.btn-outline{background:transparent;color:var(--ink);}
.btn-outline:hover{background:var(--black);color:#fff;}
.btn-light{background:#fff;color:var(--black);border-color:#fff;}
.btn-light:hover{background:#eee;border-color:#eee;}
.btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.75);}
.btn-ghost:hover{background:#fff;color:var(--black);border-color:#fff;}
.btn .ar{transition:transform .2s ease;}
.btn:hover .ar{transform:translateX(3px);}

/* ---------- Topbar ---------- */
.topbar{
  background:var(--black);color:#fff;height:var(--bar-h);
  font-size:12px;letter-spacing:.04em;
  position:fixed;top:0;left:0;right:0;z-index:120;
}
.topbar .wrap{display:flex;align-items:center;justify-content:space-between;height:var(--bar-h);}
.tb-left{opacity:.62;text-transform:uppercase;font-family:var(--display);font-weight:600;letter-spacing:.12em;font-size:11px;}
.tb-right{display:flex;gap:22px;align-items:center;}
.tb-right a{opacity:.8;display:inline-flex;white-space:nowrap;align-items:center;gap:7px;transition:opacity .2s;}
.tb-right a:hover{opacity:1;}
.tb-right svg{width:13px;height:13px;fill:currentColor;flex:none;}
@media(max-width:820px){.tb-left{display:none;}.topbar .wrap{justify-content:center;}}
/* Am Handy nur die zwei Symbole: Brief und WhatsApp, ohne Text; Telefon raus */
@media(max-width:600px){
  .tb-right a[href^="tel:"]{display:none;}
  .tb-right{gap:20px;}
  .tb-right a{font-size:0;gap:0;padding:6px 2px;}
  .tb-right a svg{width:17px;height:17px;}
}

/* ---------- Navigation ---------- */
nav.main{
  position:fixed;top:var(--bar-h);left:0;right:0;z-index:110;
  background:rgba(255,255,255,.94);backdrop-filter:saturate(180%) blur(14px);
  border-bottom:1px solid var(--line);
}
nav.main .wrap{display:flex;align-items:center;justify-content:space-between;height:var(--nav-h);gap:28px;}

.nav-mark{display:flex;align-items:center;gap:11px;flex:none;}
.nav-mark img{width:40px;height:auto;}
.nav-mark span{
  font-family:var(--brand);font-weight:600;font-size:19px;
  line-height:1.05;letter-spacing:-.01em;color:var(--ink);
}
.nav-mark span b{display:block;font-weight:600;font-size:12.5px;color:inherit;letter-spacing:0;}

.nav-links{display:flex;align-items:center;gap:4px;}
.nav-item{position:relative;}
.nav-item>a{
  display:inline-flex;align-items:center;gap:6px;
  font-family:var(--display);font-weight:600;font-size:13.5px;
  letter-spacing:.04em;text-transform:uppercase;
  padding:10px 14px;border-radius:6px;color:var(--ink);
  transition:background .18s ease;
}
.nav-item>a:hover{background:var(--sand);}
.caret{width:7px;height:7px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);opacity:.5;transition:transform .18s ease;}
.nav-item:hover .caret{transform:rotate(45deg) translate(1px,1px);}

.dropdown{
  position:absolute;top:calc(100% + 6px);left:50%;transform:translateX(-50%);
  min-width:246px;background:#fff;border:1px solid var(--line);border-radius:12px;
  box-shadow:0 24px 52px rgba(16,16,16,.14);padding:8px;
  opacity:0;visibility:hidden;translate:0 6px;
  transition:opacity .18s ease,translate .18s ease,visibility .18s;
}
.nav-item:hover>.dropdown,.nav-item:focus-within>.dropdown{opacity:1;visibility:visible;translate:0 0;}
.dropdown a{
  display:block;padding:10px 14px;border-radius:8px;
  font-size:15.5px;font-weight:500;color:var(--ink);white-space:nowrap;
  transition:background .15s ease;
}
/* Direktes Kind des Dropdowns = Hauptseite der Rubrik, klar hervorgehoben */
.dropdown > a{
  font-family:var(--display);font-weight:700;font-size:14.5px;
  letter-spacing:.02em;padding:11px 14px;
}
.dropdown a:hover{background:var(--sand);}
.dd-label{
  font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--faint);padding:10px 14px 6px;
}
.dd-div{height:1px;background:var(--line);margin:7px 10px;}
/* Untergeordnete Eintraege: eingerueckt an einer durchgehenden grauen Linie */
.dd-nest{margin:3px 0 1px 18px;padding-left:12px;border-left:1.5px solid var(--line);}
.dd-nest a{font-size:14.5px;color:var(--muted);padding:9px 12px;}
.dd-nest a:hover{color:var(--ink);background:var(--sand);}

.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px;flex:none;}
.nav-toggle span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;transition:transform .25s,opacity .25s;}
body.menu-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
body.menu-open .nav-toggle span:nth-child(2){opacity:0;}
body.menu-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

@media(max-width:1080px){
  .nav-links,nav.main .btn{display:none;}
  .nav-toggle{display:block;}
}

/* Mobile-Menü */
.mobile-menu{
  position:fixed;top:calc(var(--bar-h) + var(--nav-h));left:0;right:0;bottom:0;
  background:#fff;z-index:105;padding:26px 22px 60px;overflow-y:auto;
  transform:translateY(-12px);opacity:0;visibility:hidden;
  transition:opacity .25s ease,transform .25s ease,visibility .25s;
}
body.menu-open .mobile-menu{opacity:1;visibility:visible;transform:none;}
.mm-group{border-bottom:1px solid var(--line);}
.mm-group>button{
  width:100%;background:none;border:0;cursor:pointer;text-align:left;
  display:flex;align-items:center;justify-content:space-between;
  font-family:var(--display);font-weight:800;font-size:19px;text-transform:uppercase;
  letter-spacing:-.01em;color:var(--ink);padding:19px 2px;
}
.mm-group>button .caret{opacity:.45;transform:rotate(45deg);}
.mm-group.open>button .caret{transform:rotate(-135deg);}
.mm-sub{display:none;padding:0 2px 18px;}
.mm-group.open .mm-sub{display:block;}
.mm-sub a{display:block;padding:9px 0;font-size:16px;color:var(--muted);}
.mm-sub a:hover{color:var(--ink);}
.mm-cta{margin-top:26px;display:flex;flex-direction:column;gap:12px;}
.mm-cta .btn{justify-content:center;}

/* ---------- Hero: langer Sticky-Scroll, Text erscheint nacheinander ---------- */
.hero{
  position:relative;width:100%;
  margin-top:calc(var(--bar-h) + var(--nav-h));
  height:calc(1900px + 100svh);
  background:#0d0d0d;
}
.hero-sticky{
  position:sticky;top:calc(var(--bar-h) + var(--nav-h));
  height:calc(100svh - var(--bar-h) - var(--nav-h));min-height:520px;
  width:100%;overflow:hidden;background:#0d0d0d;
}
.hero-sticky picture,.hero-sticky img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-grad{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,10,10,.30) 0%,rgba(10,10,10,.16) 38%,rgba(10,10,10,.72) 100%);
}
.hero-in{
  position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;
  padding-bottom:clamp(56px,9vh,104px);pointer-events:none;
}
.hero-in .wrap{width:100%;}
.hero-in a{pointer-events:auto;}
/* Startzustand der gestaffelten Elemente – das Skript blendet sie beim Scrollen ein */
.h-el{opacity:0;transform:translateY(26px);will-change:opacity,transform;}
.hero .eyebrow{color:rgba(255,255,255,.82);}
.hero h1{
  color:#fff;font-size:clamp(42px,8.2vw,116px);font-weight:900;
  margin-top:16px;max-width:15ch;text-shadow:0 2px 40px rgba(0,0,0,.35);
}
.hero-lead{
  color:rgba(255,255,255,.92);font-size:clamp(15.5px,1.7vw,19px);
  max-width:52ch;margin:22px 0 32px;line-height:1.62;
  text-shadow:0 1px 20px rgba(0,0,0,.4);
}
.hero-cta{display:flex;gap:13px;flex-wrap:wrap;}
.hero-scroll{
  position:absolute;left:50%;bottom:clamp(24px,4vh,40px);transform:translateX(-50%);z-index:4;
  display:flex;flex-direction:column;align-items:center;gap:13px;
  transition:opacity .4s ease;pointer-events:none;
}
.hero-scroll span{
  font-family:var(--display);font-size:11px;font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;color:#fff;text-shadow:0 1px 16px rgba(0,0,0,.55);
}
.hero-scroll i{
  display:flex;align-items:center;justify-content:center;
  width:48px;height:48px;border-radius:50%;
  border:1.5px solid rgba(255,255,255,.75);
  background:rgba(255,255,255,.12);
  -webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);
  box-shadow:0 6px 26px rgba(0,0,0,.28);
  animation:bob 2s ease-in-out infinite;
}
.hero-scroll i::after{
  content:"";width:12px;height:12px;margin-top:-4px;
  border-right:2.2px solid #fff;border-bottom:2.2px solid #fff;
  transform:rotate(45deg);
}
@keyframes bob{0%,100%{transform:translateY(0);}50%{transform:translateY(8px);}}
@media(max-width:600px){
  .hero-scroll i{width:42px;height:42px;}
  .hero-scroll span{font-size:10px;letter-spacing:.18em;}
}
/* Ohne Bewegungswunsch: kurzer Hero, Text sofort sichtbar */
@media (prefers-reduced-motion:reduce){
  .hero{height:calc(100svh - var(--bar-h) - var(--nav-h));}
  .h-el{opacity:1!important;transform:none!important;}
  .hero-scroll{display:none;}
}

/* ---------- Stats-Band ---------- */
.stats{background:var(--black);color:#fff;}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:40px 40px;}
.stat{text-align:center;display:block;color:inherit;transition:opacity .2s;}
a.stat:hover{opacity:.75;}
a.stat:hover .l{color:#fff;}
.stat .n{font-family:var(--display);font-weight:900;font-size:clamp(28px,3.6vw,44px);line-height:1;}
.stat .l{font-size:12.5px;color:rgba(255,255,255,.58);margin-top:9px;letter-spacing:.02em;line-height:1.4;}
@media(max-width:700px){.stats .wrap{grid-template-columns:repeat(2,1fr);gap:30px 16px;padding:34px 22px;}}

/* ---------- Sections ---------- */
section.blk{padding:clamp(64px,9vw,110px) 0;}
section.sand{background:var(--sand);}
.sec-head{max-width:760px;margin-bottom:clamp(36px,5vw,56px);}
.sec-head.center{margin-left:auto;margin-right:auto;text-align:center;}
.sec-head h2{font-size:clamp(30px,5vw,58px);margin-top:13px;}
.sec-head p{font-size:16.5px;line-height:1.7;color:var(--muted);margin-top:18px;max-width:60ch;}
.sec-head.center p{margin-left:auto;margin-right:auto;}

/* ---------- Angebots-Karten ---------- */
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
@media(max-width:900px){.offers{grid-template-columns:1fr;gap:18px;}}
.offer{
  position:relative;display:block;border-radius:14px;overflow:hidden;
  background:#111;aspect-ratio:3/4;isolation:isolate;
}
.offer img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transition:transform .7s cubic-bezier(.16,.8,.24,1);}
.offer:hover img{transform:scale(1.05);}
.offer::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.18) 45%,rgba(0,0,0,.8) 100%);
}
.offer-in{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;color:#fff;}
.offer-in h3{font-size:clamp(24px,2.6vw,32px);font-weight:900;}
.offer-in p{font-size:14.5px;line-height:1.55;color:rgba(255,255,255,.86);margin-top:11px;}
.offer-more{
  margin-top:17px;display:inline-flex;align-items:center;gap:8px;
  font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
}
.offer-more i{width:16px;height:1.5px;background:#fff;transition:width .25s ease;}
.offer:hover .offer-more i{width:26px;}

/* ---------- Split (Über mich) ---------- */
.split{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(32px,5vw,68px);align-items:center;}
@media(max-width:900px){.split{grid-template-columns:1fr;gap:32px;}}
.split-media{border-radius:14px;overflow:hidden;aspect-ratio:4/5;background:var(--sand);}
.split-media img{width:100%;height:100%;object-fit:cover;}
.split-body h2{font-size:clamp(28px,4.4vw,50px);}
.split-body p{color:var(--muted);font-size:16.5px;line-height:1.72;margin-top:18px;}
.quals{margin-top:30px;border-top:1px solid var(--line);}
.qual{display:flex;justify-content:space-between;gap:20px;align-items:baseline;
  padding:13px 0;border-bottom:1px solid var(--line);}
.qual .q{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.01em;text-transform:uppercase;}
.qual .y{font-size:13px;color:var(--faint);font-variant-numeric:tabular-nums;flex:none;}

/* ---------- Nummerierte Liste (Guiding) ---------- */
.numlist{border-top:1px solid var(--line);}
.num{display:grid;grid-template-columns:64px 1fr auto;gap:22px;align-items:center;
  padding:26px 0;border-bottom:1px solid var(--line);}
.num h3 a:hover{text-decoration:underline;text-underline-offset:4px;}
.btn-sm{padding:11px 18px;font-size:12px;}
.num .i{font-family:var(--display);font-weight:800;font-size:13px;color:var(--faint);letter-spacing:.06em;}
.num h3{font-size:clamp(20px,2.6vw,30px);}
.num p{color:var(--muted);font-size:15px;margin-top:7px;line-height:1.6;max-width:64ch;}
.num .go{font-family:var(--display);font-size:12px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--muted);white-space:nowrap;}
@media(max-width:760px){
  .num{grid-template-columns:44px 1fr;gap:16px;}
  .num .go{display:none;}
  .num .btn{grid-column:2;justify-self:start;margin-top:14px;}
}

/* ---------- Extravaganza ---------- */
.extra{display:grid;grid-template-columns:1fr .82fr;gap:clamp(32px,5vw,64px);align-items:center;}
@media(max-width:900px){.extra{grid-template-columns:1fr;}}
.toys{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:32px;}
.toy{border:1px solid var(--line);background:#fff;border-radius:12px;padding:22px 20px;transition:border-color .2s ease,transform .2s ease;}
.toy:hover{border-color:var(--ink);transform:translateY(-2px);}
.toy h4{font-size:16px;font-weight:800;}
.toy p{font-size:13.5px;color:var(--muted);margin-top:7px;line-height:1.5;}
.extra-media{border-radius:14px;overflow:hidden;aspect-ratio:3/4;}
.extra-media img{width:100%;height:100%;object-fit:cover;}
@media(max-width:520px){.toys{grid-template-columns:1fr;}}

/* ---------- Preis-/Kalender-Notiz ---------- */
.note{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,4vw,56px);align-items:start;}
@media(max-width:860px){.note{grid-template-columns:1fr;gap:28px;}}
.note h2{font-size:clamp(26px,3.6vw,42px);}
.note p{color:var(--muted);font-size:16px;line-height:1.72;margin-top:16px;}

/* ---------- CTA-Band ---------- */
.cta{background:var(--black);color:#fff;text-align:center;padding:clamp(64px,9vw,112px) 0;}
.cta h2{font-size:clamp(30px,5.6vw,68px);color:#fff;}
.cta p{color:rgba(255,255,255,.7);font-size:17px;margin:20px auto 34px;max-width:48ch;line-height:1.65;}
.cta .hero-cta{justify-content:center;}
.cta .eyebrow{color:rgba(255,255,255,.55);}

/* ---------- Footer ---------- */
footer{background:#fff;border-top:1px solid var(--line);padding:64px 0 34px;}
.f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;}
@media(max-width:900px){.f-grid{grid-template-columns:1fr 1fr;gap:34px;}}
@media(max-width:560px){.f-grid{grid-template-columns:1fr;}}
.f-brand .nav-mark{margin-bottom:16px;}
.f-brand p{font-size:14.5px;color:var(--muted);line-height:1.65;max-width:34ch;}
.f-col h4{font-family:var(--display);font-size:11.5px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--faint);margin-bottom:15px;}
.f-col a,.f-col span{display:block;font-size:14.5px;color:var(--muted);padding:5px 0;transition:color .18s;}
.f-col a:hover{color:var(--ink);}
.f-contact a{display:flex;align-items:center;gap:9px;}
.f-contact svg{width:14px;height:14px;fill:currentColor;flex:none;opacity:.6;}
.f-partners{display:flex;gap:20px;align-items:center;margin-top:14px;flex-wrap:wrap;}
.f-partners img{height:26px;width:auto;opacity:.45;transition:opacity .2s;filter:grayscale(1);}
.f-partners a:hover img{opacity:.85;}
.f-bottom{margin-top:52px;padding-top:22px;border-top:1px solid var(--line);
  display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;
  font-size:13px;color:var(--faint);}
.f-bottom a:hover{color:var(--ink);}

/* ============================================================
   Unterseiten
   ============================================================ */

/* Kompakter Seitenkopf statt Vollbild-Hero */
.page-hero{
  position:relative;margin-top:calc(var(--bar-h) + var(--nav-h));
  height:clamp(360px,52vh,540px);overflow:hidden;background:#0d0d0d;
}
.page-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.page-hero .hero-grad{
  background:linear-gradient(180deg,rgba(10,10,10,.34) 0%,rgba(10,10,10,.22) 40%,rgba(10,10,10,.74) 100%);
}
.page-hero-in{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:clamp(34px,5vh,56px);}
.page-hero .eyebrow{color:rgba(255,255,255,.8);}
.page-hero h1{color:#fff;font-size:clamp(34px,6.4vw,82px);font-weight:900;margin-top:14px;max-width:16ch;
  text-shadow:0 2px 40px rgba(0,0,0,.35);}
.page-hero p{color:rgba(255,255,255,.9);font-size:clamp(15px,1.6vw,18.5px);max-width:52ch;margin-top:18px;
  line-height:1.6;text-shadow:0 1px 20px rgba(0,0,0,.4);}

/* Brotkrumen */
.crumbs{border-bottom:1px solid var(--line);}
.crumbs .wrap{display:flex;align-items:center;gap:9px;padding-top:15px;padding-bottom:15px;
  font-size:13px;color:var(--faint);flex-wrap:wrap;}
.crumbs a:hover{color:var(--ink);}
.crumbs .sep{opacity:.5;}
.crumbs .cur{color:var(--ink);font-weight:500;}

/* Sprungnavigation innerhalb einer Seite */
.jump{position:sticky;top:calc(var(--bar-h) + var(--nav-h));z-index:60;
  background:rgba(255,255,255,.95);backdrop-filter:saturate(180%) blur(12px);
  border-bottom:1px solid var(--line);}
.jump .wrap{display:flex;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;
  scrollbar-width:none;}
.jump .wrap::-webkit-scrollbar{display:none;}
.jump a{flex:none;font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.05em;
  text-transform:uppercase;padding:8px 14px;border:1px solid var(--line);border-radius:999px;
  color:var(--muted);transition:border-color .18s,color .18s,background .18s;}
.jump a:hover{border-color:var(--ink);color:var(--ink);background:var(--sand);}

/* Fließtext-Block */
.prose{max-width:64ch;}
.prose p{color:var(--muted);font-size:16.5px;line-height:1.75;margin-top:18px;}
.prose p:first-child{margin-top:0;}
.prose p strong{color:var(--ink);font-weight:600;}

/* Wechselnde Text/Bild-Blöcke */
.alt{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,64px);align-items:center;}
.alt + .alt{margin-top:clamp(56px,8vw,96px);}
.alt.flip .alt-media{order:2;}
@media(max-width:900px){.alt{grid-template-columns:1fr;gap:28px;}.alt.flip .alt-media{order:0;}}
.alt-media{border-radius:14px;overflow:hidden;aspect-ratio:4/3;background:var(--sand);}
.alt-media.tall{aspect-ratio:3/4;}
.alt-media img{width:100%;height:100%;object-fit:cover;}
.alt-body h2{font-size:clamp(26px,3.8vw,44px);}
.alt-body .eyebrow{margin-bottom:12px;display:block;}
.alt-body p{color:var(--muted);font-size:16.5px;line-height:1.72;margin-top:16px;}

/* Merkmalsliste */
.ticks{margin-top:26px;display:grid;gap:11px;}
.tick{display:flex;gap:12px;align-items:flex-start;font-size:15.5px;color:var(--muted);line-height:1.55;}
.tick::before{content:"";flex:none;width:7px;height:7px;margin-top:8px;background:var(--ink);
  transform:rotate(45deg);}

/* Video-Einbettung */
.video{border-radius:14px;overflow:hidden;background:#000;aspect-ratio:16/9;}
.video iframe{width:100%;height:100%;border:0;display:block;}
.video.portrait{aspect-ratio:9/16;max-width:340px;}

/* Faktenkasten */
.facts{border:1px solid var(--line);border-radius:14px;padding:26px 28px;background:#fff;}
.facts h3{font-size:14px;margin-bottom:16px;}
.fact{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--line);
  font-size:14.5px;}
.fact:last-child{border-bottom:0;}
.fact .k{color:var(--muted);}
.fact .v{font-weight:500;text-align:right;}

/* Hinweis auf noch offene Inhalte */
.todo{border:1px dashed var(--line);border-radius:14px;padding:24px 26px;background:var(--sand);}
.todo h3{font-size:14px;margin-bottom:9px;}
.todo p{font-size:14.5px;color:var(--muted);}

/* Aufruf an kuenftige Partner (Antwort 20) */
.f-join{margin-top:16px;font-size:13.5px;color:var(--muted);line-height:1.55;max-width:34ch;}
.f-join a{border-bottom:1px solid var(--line);}
.f-join a:hover{color:var(--ink);border-color:var(--ink);}

/* ============================================================
   Sprachumschalter
   ============================================================ */
.lang{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.3);
  border-radius:999px;padding:2px;margin-left:6px;flex:none;}
.lang button,.tb-right .lang a{
  background:none;border:0;cursor:pointer;color:rgba(255,255,255,.72);opacity:1;display:inline-block;
  font-family:var(--display);font-weight:700;font-size:10.5px;letter-spacing:.1em;
  padding:5px 11px;border-radius:999px;line-height:1;
  transition:background .18s ease,color .18s ease;
}
.lang button:hover,.tb-right .lang a:hover{color:#fff;}
.lang button.is-on,.tb-right .lang a.is-on{background:#fff;color:var(--black);}

/* Kurzmeldung, solange die englische Fassung fehlt */
.toast{
  position:fixed;top:calc(var(--bar-h) + var(--nav-h) + 16px);left:50%;
  transform:translateX(-50%) translateY(-8px);z-index:200;
  background:var(--black);color:#fff;font-size:14px;
  padding:13px 20px;border-radius:10px;box-shadow:0 18px 44px rgba(0,0,0,.28);
  opacity:0;visibility:hidden;transition:opacity .25s ease,transform .25s ease,visibility .25s;
  max-width:calc(100vw - 40px);text-align:center;
}
.toast.show{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0);}

/* ============================================================
   Platzhalter für Fotos und Videos, die noch fehlen
   ============================================================ */
.ph{
  position:relative;display:flex;align-items:center;justify-content:center;
  background:repeating-linear-gradient(135deg,#efedea 0 14px,#e8e6e2 14px 28px);
  color:var(--faint);border-radius:14px;overflow:hidden;
}
.ph-in{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;padding:26px;}
.ph svg{width:28px;height:28px;fill:currentColor;opacity:.5;}
.ph b{font-family:var(--display);font-size:10.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;}
.ph span{font-size:12.5px;max-width:28ch;line-height:1.5;}
.ph.dark{background:repeating-linear-gradient(135deg,#1c1c1c 0 14px,#161616 14px 28px);
  color:rgba(255,255,255,.52);}
.page-hero .ph{position:absolute;inset:0;border-radius:0;
  align-items:flex-start;justify-content:flex-end;}
.page-hero .ph-in{padding:20px 26px;align-items:flex-end;text-align:right;gap:6px;opacity:.7;}
.page-hero .ph svg{width:22px;height:22px;}
.page-hero .ph span{font-size:11.5px;max-width:24ch;}

/* ============================================================
   Kalender-Einbettung
   ============================================================ */
.cal{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--sand);}
.cal iframe{width:100%;height:620px;border:0;display:block;}
@media(max-width:700px){.cal iframe{height:520px;}}

/* ============================================================
   Anfrageformular
   ============================================================ */
.form{display:grid;gap:16px;max-width:620px;}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:560px){.row2{grid-template-columns:1fr;}}
.field{display:grid;gap:7px;}
.field label{font-family:var(--display);font-size:11px;font-weight:700;
  letter-spacing:.13em;text-transform:uppercase;color:var(--muted);}
.field input,.field select,.field textarea{
  font-family:var(--sans);font-size:15.5px;color:var(--ink);
  border:1px solid var(--line);border-radius:9px;padding:13px 14px;background:#fff;
  width:100%;transition:border-color .18s ease;
}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--ink);outline:none;}
.field textarea{min-height:130px;resize:vertical;}
.form-hint{font-size:13px;color:var(--faint);line-height:1.55;}
.contact-ways{display:grid;gap:12px;margin-top:26px;}
.way{display:flex;align-items:center;gap:13px;border:1px solid var(--line);
  border-radius:11px;padding:15px 17px;transition:border-color .18s ease,transform .18s ease;}
.way:hover{border-color:var(--ink);transform:translateY(-1px);}
.way svg{width:19px;height:19px;fill:var(--ink);flex:none;}
.way b{font-family:var(--display);font-size:13.5px;font-weight:700;letter-spacing:.02em;display:block;}
.way small{font-size:13px;color:var(--muted);}

/* ============================================================
   Rechtstexte
   ============================================================ */
.legal{max-width:78ch;}
.legal h2{font-size:clamp(24px,3.4vw,38px);margin:0 0 20px;}
.legal h3{font-size:16px;margin:30px 0 10px;text-transform:none;letter-spacing:-.01em;}
.legal p{color:var(--muted);font-size:15.5px;line-height:1.75;margin-bottom:14px;}
.legal p strong{color:var(--ink);font-weight:600;}
.legal .box{border:1px solid var(--line);border-radius:12px;padding:22px 24px;margin-bottom:26px;}
.legal .box p{margin:0;font-size:15.5px;color:var(--ink);line-height:1.7;}
.legal-nav{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:38px;}
.legal-nav a{font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.05em;
  text-transform:uppercase;padding:9px 15px;border:1px solid var(--line);border-radius:999px;color:var(--muted);}
.legal-nav a:hover{border-color:var(--ink);color:var(--ink);}

/* ============================================================
   Terminauswahl auf der Kalenderseite
   ============================================================ */
.picker{border:1px solid var(--line);border-radius:14px;padding:26px 28px;background:#fff;}
.picker h3{font-size:15px;margin-bottom:6px;}
.picker > p{font-size:14px;color:var(--muted);margin-bottom:20px;line-height:1.55;}
.picker-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;}
@media(max-width:560px){.picker-grid{grid-template-columns:1fr;}}
.picker .field{margin-bottom:14px;}
.picker-out{
  border-top:1px solid var(--line);margin-top:20px;padding-top:18px;
  font-size:14.5px;line-height:1.65;color:var(--muted);min-height:26px;
}
.picker-out b{color:var(--ink);font-weight:600;display:block;margin-bottom:6px;
  font-family:var(--display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;}
.picker-tage{display:flex;flex-wrap:wrap;gap:7px;margin-top:9px;}
.picker-tag{font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:.02em;
  background:var(--sand);border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:var(--ink);}
.picker-cta{display:flex;gap:11px;flex-wrap:wrap;margin-top:20px;}
.picker-cta .btn{flex:none;}
.picker-cta .btn[aria-disabled="true"]{opacity:.4;pointer-events:none;}

/* Mobilmenü: Hauptseite der Rubrik hervorheben, Unterpunkte eingerückt */
.mm-sub > a{
  font-family:var(--display);font-weight:700;font-size:15.5px;
  color:var(--ink);letter-spacing:.01em;
}
.mm-sub .dd-nest{margin-top:4px;}
.mm-sub .dd-nest a{font-size:15px;padding:8px 0;}
.alt-media video{width:100%;height:100%;object-fit:cover;display:block;background:#000;}

/* Bildausschnitte nach Martins Wünschen (02.11.2026) */
.pos-snb-start{object-position:8% 50%;}
.pos-piste{object-position:50% 65%;}
.pos-gelaende{object-position:50% 0%;}
.pos-freeski{filter:brightness(1.1);}
.pos-guiding-hero{object-position:42% 62%;}
.pos-sicherheit{object-position:50% 8%;}
.pos-heli{object-position:28% 50%;transform:scale(1.35);transform-origin:28% 100%;}
.offer:hover .pos-heli{transform:scale(1.4);}
.pos-lvs{object-position:50% 15%;transform:scale(1.18);transform-origin:0 0;}
.split-media.kurz{aspect-ratio:5/4;}
.split-media.kurz img{object-position:50% 80%;}
@media(max-width:900px){.split-media.kurz{aspect-ratio:1/1;}.split-media.kurz img{object-position:50% 100%;}}
.pos-extra-start{object-position:0% 50%;}
@media(max-width:700px){
  .pos-snb-hero{object-position:20% 50%;}
  .split-media:has(.pos-wer){aspect-ratio:4/3;}
  .pos-wer{object-position:50% 100%;}
  .pos-guiding-hero{transform:scale(1.06);transform-origin:42% 0%;}
  .pos-ski-hero{object-position:36% 50%;transform:scale(1.09);transform-origin:50% 100%;}
}

/* Überschriften vereinheitlicht (02.11.2026): groß nur Seiteneinstieg und Abschluss,
   alle Abschnitte dazwischen gleich groß */
.sec-head h2,.split-body h2,.note h2,.alt-body h2,.extra h2{font-size:clamp(26px,3.8vw,44px);}
section.blk:first-of-type .sec-head h2,#angebot .sec-head h2,.cta h2{font-size:clamp(30px,5vw,58px);}
/* Splitboard: unten etwas weg, der Tourengeher bleibt im Bild */
.alt-media:has(.pos-split){aspect-ratio:1/1;}
.pos-split{object-position:50% 35%;}
/* Ski-Kopf am Desktop: Bild nach oben, damit die Schrift kein Gesicht schneidet */
/* Seitenköpfe am Desktop alle gleich hoch, hoch genug für die drei auf dem Ski-Foto */
@media(min-width:701px){.page-hero{height:min(40vw,66vh);min-height:380px;}.pos-ski-hero{object-position:50% 82%;}}
@media(max-width:700px){.page-hero picture img{object-position:50% 74%;}}
/* Powsurf: unten etwas weg */
.alt-media.tall:has(.pos-powsurf),.alt-media.tall:has(.pos-telemark){aspect-ratio:9/10;}
.pos-powsurf,.pos-telemark{object-position:50% 22%;}
/* Am Desktop kein WhatsApp oben in der Leiste */
@media(min-width:701px){.tb-right a[href*="wa.me"]{display:none;}}
/* Am Desktop kein Telefon-Knopf (die Nummer oben in der Leiste bleibt) und kein WhatsApp */
@media(min-width:701px){
  .btn[href^="tel:"],.way[href^="tel:"],a[href*="wa.me"],#p-whatsapp,.nur-handy{display:none !important;}
}
@media(max-width:700px){.nur-desktop{display:none;}}
/* Sprungmarken: Überschrift nicht unter der fixen Kopfleiste verstecken */
html{scroll-padding-top:calc(var(--bar-h) + var(--nav-h) + 24px);}
/* Telemark-Seite */
.pos-tele-hero{object-position:50% 26%;}
.galerie{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:56px;}
.galerie .g-item{border-radius:14px;overflow:hidden;aspect-ratio:1/1;background:var(--sand);}
.galerie .g-item img{width:100%;height:100%;object-fit:cover;display:block;}
@media(max-width:700px){.galerie{grid-template-columns:repeat(2,1fr);gap:10px;}}
.pos-einsteiger{object-position:50% 20%;}
