:root{
  --night:#0e1311; --night-2:#161d1a; --moss:#2c4538; --bone:#f1ece0; --paper:#f7f4ec;
  --signal:#ff6a2b; --signal-dk:#e5530f; --ink:#1b211e; --ink-2:#4b5650; --line:#d9d4c6;
  --f-display:"Roboto","Helvetica Neue",Arial,sans-serif;
  --f-body:"Open Sans","Segoe UI",Arial,sans-serif;
  --r:4px; --wrap:1240px;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{font-family:var(--f-body);color:var(--ink);background:var(--paper);line-height:1.6;font-size:17px;-webkit-font-smoothing:antialiased}
img,video{display:block;max-width:100%}
a{color:inherit}
.wrap{width:min(var(--wrap),100% - 40px);margin-inline:auto}
h1,h2,h3{font-family:var(--f-display);text-transform:uppercase;line-height:1.05;letter-spacing:.01em;font-weight:700;text-wrap:balance}
:focus-visible{outline:3px solid var(--signal);outline-offset:3px}

/* Header */
.top{position:sticky;top:0;z-index:50;background:var(--night);color:var(--bone);transition:box-shadow .3s}
.top.is-stuck{box-shadow:0 8px 24px rgba(0,0,0,.35)}
.top__in{width:min(var(--wrap),100% - 40px);margin-inline:auto;display:flex;align-items:center;gap:32px;height:68px}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--f-display);font-weight:700;font-size:28px;letter-spacing:.04em;color:var(--bone)}
.logo i{font-style:normal;color:var(--signal)}
.mainnav{display:flex;gap:26px;margin-left:auto}
.mainnav a{font-family:var(--f-display);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:19px;text-decoration:none;padding:4px 0;border-bottom:3px solid transparent;transition:border-color .2s}
.mainnav a:hover,.mainnav a.is-on{border-color:var(--signal)}
.search{display:flex;align-items:center;gap:8px;background:#1c2521;border:1px solid #2b3731;border-radius:var(--r);padding:0 12px;height:40px;width:260px;transition:border-color .2s,width .3s}
.search:focus-within{border-color:var(--signal);width:300px}
.search input{background:none;border:0;color:var(--bone);font:inherit;font-size:15px;width:100%;outline:0}
.search input::placeholder{color:#8b9a92}
.catnav{display:flex;gap:8px;overflow-x:auto;padding:0 20px 12px;scrollbar-width:none;justify-content:center}
.catnav::-webkit-scrollbar{display:none}
.chip{font:600 14px/1 var(--f-body);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;color:var(--bone);background:transparent;border:1px solid #33423a;border-radius:99px;padding:10px 16px;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .15s}
.chip:hover{border-color:var(--signal)}
.chip:active{transform:scale(.97)}
.chip.is-on{background:var(--signal);border-color:var(--signal);color:var(--night)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;background:var(--signal);color:var(--night);font-family:var(--f-display);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:19px;padding:12px 22px;border:0;border-radius:var(--r);text-decoration:none;cursor:pointer;transition:transform .2s,background .2s}
.btn:hover{background:#ff7f48;transform:translateY(-2px)}
.btn:active{transform:translateY(1px) scale(.98)}

/* Hero */
.hero{position:relative;height:min(78vh,720px);min-height:480px;background:var(--night);overflow:hidden;isolation:isolate}
.slides,.slide{position:absolute;inset:0}
.slide{opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s}
.slide::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,19,17,.15),rgba(14,19,17,.55)),var(--img) center/cover no-repeat;transform:scale(1.08)}
.slide.is-on{opacity:1;visibility:visible}
.slide.is-on::before{animation:kb 9s ease-out both}
@keyframes kb{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero__contours{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;mix-blend-mode:screen;opacity:.55;z-index:1;pointer-events:none}
.slide__card{position:absolute;z-index:2;left:max(20px,calc((100% - var(--wrap))/2));bottom:12%;max-width:560px;background:rgba(241,236,224,.94);color:var(--ink);padding:26px 30px 30px;border-radius:var(--r);border-top:5px solid var(--signal);transform:translateY(24px);opacity:0;transition:transform .9s .35s cubic-bezier(.22,1,.36,1),opacity .9s .35s}
.slide.is-on .slide__card{transform:none;opacity:1}
.slide__q{font-size:15px;color:var(--ink-2);margin-bottom:6px}
.slide__card h2{font-size:clamp(32px,4.2vw,50px);margin-bottom:18px}
.arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:0;background:rgba(14,19,17,.6);color:var(--bone);display:grid;place-items:center;cursor:pointer;transition:background .2s}
.arrow:hover{background:var(--signal);color:var(--night)}
.arrow--prev{left:14px}.arrow--next{right:14px}
.dots{position:absolute;z-index:3;right:max(20px,calc((100% - var(--wrap))/2));bottom:28px;display:flex;gap:10px}
.dots button{width:14px;height:14px;border-radius:50%;border:2px solid var(--bone);background:transparent;cursor:pointer;padding:0;transition:background .2s,transform .2s}
.dots button.is-on{background:var(--signal);border-color:var(--signal);transform:scale(1.2)}
.progress{position:absolute;z-index:3;left:0;right:0;bottom:0;height:4px;background:rgba(255,255,255,.12)}
.progress i{display:block;height:100%;background:var(--signal);transform-origin:left;transform:scaleX(0)}

/* Intro */
.intro{padding:76px 0 56px;text-align:center}
.peak{color:var(--moss)}
.intro .peak{margin:0 auto 10px}
.intro h1{font-size:clamp(40px,6vw,72px);color:var(--night)}
.lead{max-width:62ch;margin:18px auto 0;color:var(--ink-2);font-size:19px}
.facts{list-style:none;padding:0;margin:44px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-width:920px}
.facts li{padding:26px 16px;text-align:left}
.facts li+li{border-left:1px solid var(--line)}
.facts b{display:block;font-family:var(--f-display);font-size:58px;line-height:1;color:var(--signal-dk);font-weight:700}
.facts span{color:var(--ink-2);font-size:15px}

/* Bands */
.band{padding:84px 0;color:var(--bone)}
.band--dark{background:var(--night)}
.band--moss{background:var(--moss)}
.band__grid{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:center}
.band__grid--rev{grid-template-columns:7fr 5fr}
.band h2{font-size:clamp(34px,4.4vw,56px);margin-bottom:16px}
.band p{color:#cfd8d2;max-width:50ch;margin-bottom:26px}
.eyebrow{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.14em;color:var(--signal);font-size:18px;font-weight:600;margin-bottom:10px!important}
.media{border-radius:var(--r);overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.45);background:var(--night)}
.media video{width:100%;aspect-ratio:16/9;object-fit:cover}

/* Sections */
.sec{padding:84px 0 20px}
.sec__head{display:flex;align-items:flex-end;gap:12px;margin-bottom:32px;border-bottom:2px solid var(--night);padding-bottom:12px}
.sec__head h2{font-size:clamp(32px,4vw,48px)}
.meta{font-size:14px;color:var(--ink-2);margin-bottom:8px;display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}
.tag{font-family:var(--f-display);text-transform:uppercase;letter-spacing:.1em;font-weight:700;font-size:15px;color:var(--night);background:var(--signal);padding:2px 9px;border-radius:2px}
h3 a{text-decoration:none;background:linear-gradient(var(--signal),var(--signal)) 0 100%/0 3px no-repeat;transition:background-size .35s}
h3 a:hover{background-size:100% 3px}
.more{display:inline-block;margin-top:12px;font-weight:600;color:var(--signal-dk);text-decoration:none;border-bottom:2px solid transparent;transition:border-color .2s}
.more:hover{border-color:var(--signal-dk)}
.row,.card,.feat,.mini{transition:opacity .35s,transform .35s}
.is-hidden{display:none!important}

.list{display:grid;gap:44px}
.row{display:grid;grid-template-columns:5fr 7fr;gap:36px;align-items:center}
.row:nth-child(even){grid-template-columns:7fr 5fr}
.row:nth-child(even) .row__img{order:2}
.row__img,.card__img,.feat__img,.mini__img{display:block;overflow:hidden;border-radius:var(--r);background:var(--night-2)}
.row__img img{aspect-ratio:3/2;width:100%;object-fit:cover}
.row h3{font-size:clamp(26px,3vw,38px);margin-bottom:12px}
img{transition:transform .8s cubic-bezier(.22,1,.36,1)}
a:hover>img{transform:scale(1.05)}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.card__img{margin-bottom:16px}
.card__img img{aspect-ratio:4/3;width:100%;object-fit:cover}
.card h3{font-size:27px;margin-bottom:10px}
.card p:not(.meta){color:var(--ink-2);font-size:16px}

.feature{display:grid;grid-template-columns:8fr 4fr;gap:32px}
.feat{position:relative;border-radius:var(--r);overflow:hidden;background:var(--night);color:var(--bone)}
.feat__img img{aspect-ratio:16/9;width:100%;object-fit:cover}
.feat__body{padding:26px 30px 32px}
.feat h3{font-size:clamp(28px,3.4vw,42px);margin-bottom:10px}
.feat .meta{color:#b8c4bd}
.feat p:not(.meta){color:#cfd8d2}
.feat .more{color:var(--signal)}
.feature__side{display:grid;gap:24px;align-content:start}
.mini__img img{aspect-ratio:16/10;width:100%;object-fit:cover}
.mini div{padding-top:12px}
.mini h3{font-size:24px}

.empty{padding:40px 0;text-align:center;color:var(--ink-2)}

/* Aktivität */
.act{margin-top:84px;padding:76px 0;background:var(--bone);border-top:1px solid var(--line)}
.act__h{text-align:center;font-size:clamp(30px,4vw,46px);margin-bottom:34px}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.tile{position:relative;aspect-ratio:3/4;border-radius:var(--r);overflow:hidden;display:flex;align-items:flex-end;text-decoration:none;color:var(--bone);background:linear-gradient(180deg,transparent 40%,rgba(14,19,17,.85)),var(--img) center/cover;transition:transform .3s,box-shadow .3s}
.tile::before{content:"";position:absolute;inset:0;background:inherit;transition:transform .8s cubic-bezier(.22,1,.36,1);z-index:0}
.tile span{position:relative;z-index:1;font-family:var(--f-display);font-weight:700;text-transform:uppercase;font-size:32px;letter-spacing:.04em;padding:18px 20px;border-left:5px solid var(--signal);margin:0 0 20px}
.tile:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(14,19,17,.28)}
.tile:hover::before{transform:scale(1.07)}

/* Newsletter + Footer */
.news{background:var(--signal);color:var(--night);padding:64px 0}
.news__in{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.news h2{font-size:clamp(32px,4vw,48px);margin-bottom:8px}
.news label{display:block;font-weight:600;margin-bottom:6px}
.news__form div{display:flex;gap:10px}
.news input{flex:1;min-width:0;height:50px;border:2px solid var(--night);background:var(--paper);border-radius:var(--r);padding:0 14px;font:inherit}
.news .btn{background:var(--night);color:var(--bone)}
.news .btn:hover{background:#26322d}
.foot{background:var(--night);color:#a8b5ad;padding:40px 0;font-size:15px}
.foot__in{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center;justify-content:space-between}
.foot nav{display:flex;gap:22px}
.foot a{text-decoration:none}.foot nav a:hover{color:var(--signal)}

/* Responsive */
@media (max-width:991px){
  .band__grid,.band__grid--rev,.news__in{grid-template-columns:1fr}
  .band__grid--rev .media{order:2}
  .row,.row:nth-child(even){grid-template-columns:1fr;gap:18px}
  .row:nth-child(even) .row__img{order:0}
  .cards{grid-template-columns:1fr 1fr}
  .feature{grid-template-columns:1fr}
  .tiles{grid-template-columns:1fr 1fr}
  .search{display:none}
  .mainnav{margin-left:auto}
}
@media (max-width:640px){
  body{font-size:16px}
  .top__in{height:58px}
  .logo{font-size:23px}
  .catnav{justify-content:flex-start}
  .hero{height:72vh;min-height:520px}
  .slide__card{left:16px;right:16px;bottom:56px;padding:20px 20px 22px}
  .arrow{display:none}
  .dots{left:16px;right:auto;bottom:22px}
  .cards{grid-template-columns:1fr}
  .facts{grid-template-columns:1fr}
  .facts li+li{border-left:0;border-top:1px solid var(--line)}
  .band{padding:56px 0}
  .news__form div{flex-direction:column}
  .news .btn{justify-content:center}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  html{scroll-behavior:auto}
  .hero__contours{display:none}
}

/* Roboto (Überschriften) ist breiter als die vorherige Schmalschrift: Größen und Laufweiten angepasst */
h1,h2,h3{letter-spacing:-.005em;line-height:1.12;font-weight:700}
body{font-size:16.5px;line-height:1.65}
.logo{font-size:23px;letter-spacing:.02em;font-weight:900}
.mainnav a{font-size:15px;font-weight:700;letter-spacing:.06em}
.chip{font-family:var(--f-body);font-size:13px;font-weight:600}
.btn{font-size:15px;font-weight:700;letter-spacing:.06em}
.slide__card h2{font-size:clamp(26px,3.2vw,40px)}
.intro h1{font-size:clamp(34px,5vw,58px)}
.facts b{font-size:48px;font-weight:900}
.band h2{font-size:clamp(28px,3.5vw,44px)}
.eyebrow{font-size:14px;font-weight:700;letter-spacing:.12em}
.sec__head h2{font-size:clamp(26px,3.2vw,38px)}
.tag{font-size:12px;font-weight:700;letter-spacing:.06em}
.row h3{font-size:clamp(22px,2.4vw,30px)}
.card h3{font-size:21px}
.feat h3{font-size:clamp(24px,2.7vw,34px)}
.mini h3{font-size:19px}
.act__h{font-size:clamp(26px,3.2vw,38px)}
.tile span{font-size:24px;font-weight:700}
.news h2{font-size:clamp(26px,3.2vw,38px)}
.facts span{font-size:14px}

/* Biwak-Test: Menüpunkt und Teaser */
.mainnav a.mainnav__test{color:var(--signal);border:1.5px solid var(--signal);border-radius:99px;padding:5px 14px;border-bottom-width:1.5px;transition:background .2s,color .2s}
.mainnav a.mainnav__test:hover{background:var(--signal);color:var(--night)}
.qtease{background:var(--bone);padding:68px 0 72px;border-top:1px solid var(--line)}
.qtease__head{max-width:62ch;margin:0 auto 34px;text-align:center}
.qtease__head h2{font-size:clamp(28px,3.6vw,44px);color:var(--night);margin-bottom:10px}
.qtease__head p{color:var(--ink-2)}
.eyebrow--dark{color:var(--signal-dk)}
.qtease__tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.qt{position:relative;display:block;aspect-ratio:3/4;border-radius:var(--r);overflow:hidden;background:var(--night);text-decoration:none;color:var(--bone);transition:transform .3s,box-shadow .3s}
.qt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.qt::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(14,19,17,.88))}
.qt span{position:absolute;z-index:1;left:0;right:0;bottom:0;padding:16px 18px 18px;display:grid;gap:4px}
.qt b{font-family:var(--f-display);font-size:21px;line-height:1.15}
.qt em{font-style:normal;font-size:14px;font-weight:700;color:var(--signal);opacity:.0;transform:translateY(6px);transition:.25s}
.qt:hover,.qt:focus-visible{transform:translateY(-5px);box-shadow:0 18px 36px rgba(14,19,17,.28)}
.qt:hover em,.qt:focus-visible em{opacity:1;transform:none}
@media (max-width:991px){.qtease__tiles{grid-template-columns:1fr 1fr}.qt em{opacity:1;transform:none}}
@media (max-width:640px){.mainnav{gap:14px}.mainnav a{font-size:13px}.mainnav a.mainnav__test{padding:4px 10px}.logo{font-size:20px}.qtease{padding:48px 0 52px}.qt{aspect-ratio:4/5}.qt b{font-size:17px}}
@media (max-width:640px){.mainnav a[href$="#shop"]{display:none}.top__in{gap:12px}}
