@font-face{font-family:"Clash Display";src:local("Clash Display"),local("ClashDisplay");font-weight:600;font-style:normal}
:root{--black:#161616;--white:#f4f3ef;--line:rgba(244,243,239,.42);--pad:clamp(22px,5vw,76px);--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}
html{scrollbar-gutter:stable;background:var(--black);scroll-behavior:smooth;scroll-snap-type:y proximity}
body{margin:0;background:var(--black);color:var(--white);font-family:"Roc Grotesk","Helvetica Neue",Arial,sans-serif;overflow-x:hidden}
.site{background:var(--black)}

/* Intro and fixed navigation */
.intro{
  position:fixed;
  inset:0;
  z-index:100;
  background:var(--black);
  display:grid;
  place-items:center;
  opacity:1;
  pointer-events:none;
  transition:opacity 1.5s var(--ease);
}
.intro-stage{
  width:min(78vw,900px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.intro-video{
  width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}
.intro-claim{
  width:min(58%,620px);
  height:auto;
  margin-top:18px;
  opacity:0;
  transform:translateY(5px);
  transition:opacity .32s var(--ease), transform .32s var(--ease);
}
.intro.show-claim .intro-claim{
  opacity:1;
  transform:none;
}
body.is-loaded .intro{opacity:0}

body.is-loaded .intro{opacity:0}
.site-header{position:fixed;z-index:30;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:22px var(--pad);mix-blend-mode:difference}
.brand-lockup{display:flex;align-items:center;gap:14px;text-decoration:none;opacity:0;transform:translateY(-14px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease)}
body.is-loaded .brand-lockup{opacity:1;transform:none}
.brand-mark{display:block;width:62px;height:35px;object-fit:contain;object-position:left center}
.brand-wordmark{display:block;width:210px;height:auto;max-height:24px;object-fit:contain;object-position:left center}
.header-meta{font-size:9px;letter-spacing:.16em}
.progress{position:fixed;z-index:30;right:var(--pad);top:50%;height:120px;width:1px;background:var(--line);transform:translateY(-50%)}
.progress-fill{display:block;width:100%;height:16.666%;background:var(--white);transition:height .6s var(--ease)}

/* Desktop: one full-bleed image layer and one independent copy layer. */
.panel{position:relative;min-height:112svh;height:112svh;display:grid;grid-template-columns:1fr 1fr;isolation:isolate;overflow:hidden;scroll-snap-align:start;background:var(--black);margin:0}
.panel-media{position:absolute;inset:0;z-index:0;overflow:hidden;background:var(--black)}
.panel-media img{display:block;width:100%;height:100%;object-fit:cover;opacity:1;filter:none;transform:scale(1.045);transform-origin:center center;will-change:transform;opacity:.72;transition:transform 1200ms cubic-bezier(.22,.61,.36,1),opacity 900ms ease}
.panel.is-revealed .panel-media img{transform:scale(1);opacity:1}
/* No global shade: the source photography remains at its native brightness. */
.panel-media:after{content:none}

.panel-content{align-self:center;grid-column:1;width:min(620px,calc(50vw - (2 * var(--pad))));margin-left:var(--pad);padding-top:40px;min-width:0;z-index:3;opacity:1;transform:none;clip-path:none}
.panel--reverse .panel-content{grid-column:2;margin-left:0;margin-right:var(--pad);justify-self:end;width:min(620px,calc(50vw - (2 * var(--pad))));text-align:left}
.panel[data-panel="05"] .panel-content{grid-column:2;margin-left:0;margin-right:var(--pad);justify-self:end;width:min(540px,calc(50vw - (2 * var(--pad))))}
.panel[data-panel="06"] .panel-content{grid-column:1;margin-left:var(--pad);margin-right:0;justify-self:start;width:min(560px,calc(50vw - (2 * var(--pad))))}
.panel[data-panel="05"] .panel-media:after,
.panel[data-panel="06"] .panel-media:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none}
.panel[data-panel="05"] .panel-media:after{background:linear-gradient(90deg,rgba(22,22,22,0) 28%,rgba(22,22,22,.18) 48%,rgba(22,22,22,.72) 78%,rgba(22,22,22,.9) 100%)}
.panel[data-panel="06"] .panel-media:after{background:linear-gradient(90deg,rgba(22,22,22,.82) 0%,rgba(22,22,22,.62) 22%,rgba(22,22,22,.12) 52%,rgba(22,22,22,0) 74%)}
.panel[data-panel="04"] .panel-media img{object-position:58% center}
.panel[data-panel="03"] .panel-media:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(22,22,22,.02) 0%,rgba(22,22,22,.12) 42%,rgba(22,22,22,.72) 100%)}

.eyebrow{font-size:10px;line-height:1.65;letter-spacing:.22em;text-transform:uppercase;margin-bottom:28px;max-width:360px}
.section-index{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.16em;margin-bottom:22px}
.section-index i{display:block;width:42px;height:1px;background:var(--line)}
h1,h2{font-family:"Clash Display","Arial Narrow",Arial,sans-serif;font-weight:400;font-size:clamp(36px,4.65vw,78px);line-height:.94;letter-spacing:-.045em;margin:0 0 30px;text-transform:uppercase;max-width:100%;overflow-wrap:normal;word-break:normal}
h1 strong,h2 strong{font-weight:400}
p{max-width:410px;font-size:16px;line-height:1.5;letter-spacing:.01em;margin:0;color:rgba(244,243,239,.82)}
.scroll-cue{position:absolute;left:var(--pad);bottom:34px;display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:.22em;z-index:3}
.scroll-cue i{display:block;width:38px;height:1px;background:var(--line)}
.panel-footer{position:absolute;left:var(--pad);right:var(--pad);bottom:30px;display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:9px;letter-spacing:.18em;z-index:3}
.footer-lockup{display:flex;align-items:center}.footer-mark{display:block;width:32px;height:19px;object-fit:contain}

/* Image treatment is intentionally uniform across all sections. */

/* Mobile: the composition becomes a deliberate two-part editorial layout.
   Copy is a normal-flow block above the image; the image gets its own viewport
   so the object can be focused independently instead of being lost in a crop. */
@media(max-width:820px){
  html{scroll-snap-type:none}
  .site-header{padding:16px 22px;mix-blend-mode:normal;background:linear-gradient(to bottom,rgba(22,22,22,.72),transparent)}
  .brand-lockup{gap:9px}.brand-mark{width:48px;height:28px}.brand-wordmark{width:160px;max-height:20px}.header-meta{display:none}
  .progress{right:16px;height:90px}

  /* Mobile uses one continuous full-bleed composition per section.
     The image is the section background; copy sits above it instead of
     creating a separate #161616 block between image panels. */
  .panel,.panel--reverse{
    position:relative;
    display:block;
    min-height:100svh;
    height:100svh;
    overflow:hidden;
    scroll-snap-align:none;
    background:var(--black)
  }
  .panel-media{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    overflow:hidden;
    background:var(--black);
    z-index:0
  }
  .panel-media img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1.045);
    will-change:transform
  }
  .panel.is-revealed .panel-media img{transform:scale(1);opacity:1}
  .panel-content,.panel--reverse .panel-content,.panel[data-panel="05"] .panel-content,.panel[data-panel="06"] .panel-content{
    position:absolute;
    inset:0;
    order:initial;
    display:block;
    align-self:auto;
    width:auto;
    max-width:none;
    min-height:0;
    height:100%;
    margin:0;
    padding:116px 52px 54px 22px;
    justify-self:auto;
    grid-column:auto;
    text-align:left;
    z-index:3;
    background:transparent
  }
  .panel[data-panel="05"] .panel-media:after{background:linear-gradient(90deg,rgba(22,22,22,.78) 0%,rgba(22,22,22,.52) 38%,rgba(22,22,22,.08) 78%,rgba(22,22,22,0) 100%)}
  .panel[data-panel="06"] .panel-media:after{background:linear-gradient(90deg,rgba(22,22,22,.78) 0%,rgba(22,22,22,.52) 38%,rgba(22,22,22,.08) 78%,rgba(22,22,22,0) 100%)}

  .panel[data-panel="01"] .panel-media img{object-position:22% center}
  .panel[data-panel="02"] .panel-media img{object-position:82% center}
  .panel[data-panel="03"] .panel-media img{object-position:48% center}
  .panel[data-panel="04"] .panel-media img{object-position:84% center}
  .panel[data-panel="05"] .panel-media img{object-position:22% center}
  .panel[data-panel="06"] .panel-media img{object-position:78% center}
  .eyebrow{font-size:8px;letter-spacing:.18em;margin-bottom:18px;max-width:280px}
  .section-index{margin-bottom:18px;font-size:9px}.section-index i{width:30px}
  h1,h2{font-size:clamp(34px,9.8vw,60px);line-height:.94;letter-spacing:-.04em;margin-bottom:22px}
  p{font-size:14px;line-height:1.5;max-width:330px}
  .scroll-cue{display:none !important}
  .panel-footer{position:absolute;left:0;right:0;bottom:0;order:initial;min-height:86px;padding:24px 22px;display:flex;font-size:7px;gap:10px;background:transparent;z-index:4}
  .footer-mark{width:25px;height:16px}.panel-footer>span:not(.footer-lockup){white-space:nowrap}
  .intro-video{width:92vw}
}
@media(max-width:560px){
  /* Section 04: keep the artwork further inside the narrow viewport. */
  .panel[data-panel="04"] .panel-media img{object-position:92% center}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}


/* WAGENSCHLAG privacy preferences — intentionally restrained and editorial. */
.privacy-notice,
.privacy-settings-panel{
  position:fixed;
  left:24px;
  right:24px;
  bottom:24px;
  z-index:50;
  max-width:760px;
  padding:22px 24px;
  background:rgba(18,18,18,.96);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 60px rgba(0,0,0,.35);
  color:#f3f0ea;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  font-size:12px;
  line-height:1.55;
}
.privacy-notice{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.privacy-copy{max-width:510px}
.privacy-kicker{font-size:9px;letter-spacing:.18em;text-transform:uppercase;opacity:.65;margin-bottom:9px}
.privacy-notice p,.privacy-settings-panel p{margin:0 0 12px;max-width:none}
.privacy-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.privacy-btn{appearance:none;border:1px solid rgba(255,255,255,.35);background:transparent;color:inherit;padding:10px 13px;font:inherit;font-size:10px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.privacy-btn:hover,.privacy-btn:focus-visible{background:rgba(255,255,255,.12);outline:none}
.privacy-btn.primary{background:#f3f0ea;color:#161616;border-color:#f3f0ea}
.privacy-link{position:fixed;right:var(--pad);bottom:28px;z-index:50;font-size:9px;line-height:1;letter-spacing:.18em;text-transform:uppercase;color:rgba(244,243,239,.82);background:transparent;border:0;cursor:pointer;padding:0;font-family:inherit}
.privacy-link:hover,.privacy-link:focus-visible{color:#fff}
.privacy-settings-panel{display:none;max-width:620px}
.privacy-settings-panel.is-open{display:block}
.privacy-heading{font-size:20px;letter-spacing:-.02em;margin:0 0 12px}
.privacy-option{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-top:1px solid rgba(255,255,255,.14)}
.privacy-option input{margin-top:4px;accent-color:#f3f0ea}
.privacy-option strong{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}
.privacy-option span{display:block;opacity:.72;font-size:11px}
.privacy-close{position:absolute;top:12px;right:14px;border:0;background:transparent;color:inherit;font-size:18px;cursor:pointer}
@media(max-width:640px){
  .privacy-notice,.privacy-settings-panel{left:14px;right:14px;bottom:14px;padding:18px}
  .privacy-notice{display:block}
  .privacy-actions{margin-top:14px}
  .privacy-btn{flex:1 1 auto}
  .privacy-link{right:22px;bottom:24px;font-size:7px;letter-spacing:.18em}
}


/* Shared WAGENSCHLAG menu */
.header-actions{display:flex;align-items:center;gap:28px}
.menu-toggle{appearance:none;border:0;background:none;color:var(--white);font:inherit;font-size:9px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:12px;padding:8px 0;position:relative;z-index:61}
.menu-lines{width:28px;height:14px;position:relative;display:block}
.menu-lines:before,.menu-lines:after{content:"";position:absolute;left:0;width:28px;height:1px;background:currentColor;transition:transform .5s var(--ease),top .5s var(--ease)}
.menu-lines:before{top:4px}.menu-lines:after{top:10px}
.menu-toggle[aria-expanded="true"] .menu-lines:before{top:7px;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-lines:after{top:7px;transform:rotate(-45deg)}
.menu-overlay{position:fixed;inset:0;background:rgba(10,10,10,.18);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:60;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility .55s ease}
.menu-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.menu-inner{position:relative;width:min(78vw,620px);min-width:0;padding:132px 48px 70px;background:rgba(22,22,22,.94);transform:translateX(24px);transition:transform .65s var(--ease);isolation:isolate}
.menu-overlay.is-open .menu-inner{transform:translateX(0)}
.menu-brand-mark{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);width:30px;height:auto;opacity:.58;pointer-events:none}
.menu-nav{display:flex;flex-direction:column;align-items:flex-start;gap:19px}
.menu-nav a{font-family:"Clash Display","Arial Narrow",Arial,sans-serif;font-size:clamp(40px,6vw,82px);line-height:.95;letter-spacing:-.045em;text-transform:uppercase;color:var(--white);text-decoration:none;opacity:.82;transform:translateY(18px);transition:transform .7s var(--ease),opacity .7s ease,color .3s ease}
.menu-overlay.is-open .menu-nav a{opacity:.82;transform:none}
.menu-overlay.is-open .menu-nav a:nth-child(2){transition-delay:.07s}.menu-overlay.is-open .menu-nav a:nth-child(3){transition-delay:.14s}.menu-overlay.is-open .menu-nav a:nth-child(4){transition-delay:.21s}
.menu-nav a:hover{color:var(--white);opacity:1}
.menu-close{position:absolute;top:24px;right:var(--pad);appearance:none;border:0;background:none;color:var(--white);font:inherit;font-size:9px;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;display:flex;align-items:center;gap:12px;z-index:62;opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .4s ease,transform .4s ease}
.menu-overlay.is-open .menu-close{opacity:.8;visibility:visible;transform:none;transition-delay:.32s}
.close-lines{width:22px;height:22px;position:relative;display:block}.close-lines:before,.close-lines:after{content:"";position:absolute;top:10px;left:0;width:22px;height:1px;background:currentColor}.close-lines:before{transform:rotate(45deg)}.close-lines:after{transform:rotate(-45deg)}
body.menu-open{overflow:hidden;padding-right:var(--menu-scrollbar-compensation,0px)}
@media(max-width:820px){.header-actions{gap:16px}.header-actions .header-meta{display:none}.menu-inner{width:78vw;padding:112px 30px 60px}.menu-nav{gap:16px}.menu-nav a{font-size:clamp(34px,8vw,58px);letter-spacing:-.03em}.menu-close{top:16px;right:22px}.menu-brand-mark{bottom:28px;width:30px}}

/* Final refinement: keep the index navigation calm and legible on desktop. */
@media (min-width: 821px){
  .home-page .menu-inner{
    width:min(86vw,860px);
    padding:118px 64px 78px;
  }
  .home-page .menu-nav{gap:17px;}
  .home-page .menu-nav a{
    font-size:clamp(42px,4.35vw,66px);
    white-space:nowrap;
  }
}
@media (max-width: 820px){
  .home-page .menu-nav a{white-space:normal;}
}


/* v52 — index menu aligned with the subpage navigation */
.menu-overlay{
  align-items:stretch !important;
  justify-content:flex-end !important;
  background:rgba(10,10,10,.10) !important;
  backdrop-filter:blur(3px) !important;
  -webkit-backdrop-filter:blur(3px) !important;
  transition:opacity .45s ease,visibility .45s ease !important;
}
.menu-inner{
  position:relative !important;
  box-sizing:border-box !important;
  width:min(30vw,420px) !important;
  min-width:260px !important;
  height:100% !important;
  margin:0 !important;
  padding:132px clamp(28px,3.2vw,52px) 72px !important;
  display:block !important;
  background:rgba(22,22,22,.68) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  border-left:1px solid rgba(244,243,239,.08) !important;
  box-shadow:-24px 0 70px rgba(0,0,0,.12) !important;
  transform:translateX(104%) !important;
  transition:transform .72s cubic-bezier(.2,.75,.2,1) !important;
}
.menu-overlay.is-open .menu-inner{transform:translateX(0) !important}
.menu-brand-mark{position:absolute !important;left:50% !important;bottom:38px !important;transform:translateX(-50%) !important;width:34px !important;height:auto !important;opacity:.58 !important;pointer-events:none !important}
.menu-nav{display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:19px !important}
.menu-nav a{
  font-family:"Roc Grotesk","Helvetica Neue",Arial,sans-serif !important;
  font-size:10px !important;
  line-height:1.65 !important;
  font-weight:400 !important;
  letter-spacing:.22em !important;
  text-transform:uppercase !important;
  color:rgba(244,243,239,.76) !important;
  text-decoration:none !important;
  opacity:0 !important;
  transform:translateY(8px) !important;
  transition:transform .7s var(--ease),opacity .7s ease,color .3s ease !important;
}
.menu-overlay.is-open .menu-nav a{opacity:.82 !important;transform:none !important}
.menu-overlay.is-open .menu-nav a:nth-child(2){transition-delay:.07s !important}
.menu-overlay.is-open .menu-nav a:nth-child(3){transition-delay:.14s !important}
.menu-overlay.is-open .menu-nav a:nth-child(4){transition-delay:.21s !important}
.menu-nav a:hover{color:var(--white) !important;opacity:1 !important}
.menu-close{
  position:absolute !important;top:22px !important;right:clamp(24px,3vw,46px) !important;z-index:3 !important;
  appearance:none !important;border:0 !important;background:none !important;color:var(--white) !important;font:inherit !important;
  font-size:9px !important;letter-spacing:.2em !important;text-transform:uppercase !important;
  display:flex !important;align-items:center !important;gap:12px !important;cursor:pointer !important;padding:8px 0 !important;
  opacity:0 !important;visibility:hidden !important;transform:translateY(-6px) !important;
  transition:opacity 1.35s ease .32s,transform 1.35s var(--ease) .32s,visibility 0s linear 1.67s !important;
}
.menu-overlay.is-open .menu-close{opacity:.8 !important;visibility:visible !important;transform:none !important;transition-delay:.32s !important}
.close-lines{position:relative !important;width:22px !important;height:14px !important;display:block !important}
.close-lines:before,.close-lines:after{content:"";position:absolute;top:7px;left:0;width:22px;height:1px;background:currentColor}
.close-lines:before{transform:rotate(45deg)}.close-lines:after{transform:rotate(-45deg)}
.home-page .menu-side{display:none !important}
@media(max-width:820px){
  .menu-inner{width:min(78vw,360px) !important;min-width:0 !important;padding:112px 30px 60px !important}
  .menu-brand-mark{bottom:28px !important;width:30px !important}
  .menu-close{top:16px !important;right:22px !important}
  .menu-nav{gap:16px !important}
  .menu-nav a{font-size:9px !important;letter-spacing:.20em !important}
}

/* Final alignment: keep the closing tagline optically centered after removing the location line. */
.panel-footer > span:not(.footer-lockup){
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  white-space:nowrap;
}

/* v57 — mobile image visibility refinement
   Keep the editorial layout intact while giving the photography more room. */
@media (max-width:820px){
  .panel-content,
  .panel--reverse .panel-content,
  .panel[data-panel="05"] .panel-content,
  .panel[data-panel="06"] .panel-content{
    padding:104px 22px 88px;
  }
  .eyebrow{margin-bottom:14px;}
  .section-index{margin-bottom:14px;}
  h1,h2{
    font-size:clamp(32px,8.6vw,54px);
    line-height:.94;
    margin-bottom:16px;
  }
  p{
    max-width:315px;
    font-size:12.5px;
    line-height:1.42;
  }
  /* Move the sculptural element away from the text column on narrow screens. */
  .panel[data-panel="03"] .panel-media img{object-position:18% center;}
}
@media (max-width:560px){
  .panel[data-panel="03"] .panel-media img{object-position:12% center;}
}

/* Homepage section headlines linking to the corresponding subpages */
.section-headline-link{color:inherit;text-decoration:none;display:inline-block;cursor:pointer}
.section-headline-link:hover{color:inherit;text-decoration:none}


/* Privacy controls stay behind the open menu. */
.privacy-notice,.privacy-settings-panel,.privacy-link{z-index:50 !important}
.menu-overlay{z-index:60 !important}
.menu-toggle,.menu-close{z-index:61 !important}
body.menu-open .privacy-link{opacity:.18;pointer-events:none}

/* Language switch */
.language-switch{display:flex;align-items:center;gap:5px;font-size:9px;letter-spacing:.16em;text-transform:uppercase}
.language-switch button{appearance:none;border:0;background:none;color:rgba(244,243,239,.52);font:inherit;font-size:inherit;letter-spacing:inherit;padding:5px 2px;cursor:pointer}
.language-switch button.is-active{color:var(--white)}
.language-switch span{opacity:.28}
.site-header .header-actions{gap:24px}
@media(max-width:820px){.site-header .header-actions{gap:14px}.language-switch{font-size:8px}}
@media(max-width:560px){
  .site-header{padding:14px 18px}
  .brand-lockup{gap:7px;min-width:0;flex:1}
  .brand-mark{width:38px;height:24px;flex:0 0 auto}
  .brand-wordmark{width:clamp(108px,34vw,128px);max-width:100%;max-height:18px;flex:0 1 auto}
  .site-header .header-actions{gap:10px;flex:0 0 auto}
  .language-switch{font-size:7px;gap:3px}
  .language-switch button{padding:4px 1px}
  .menu-toggle{font-size:8px;letter-spacing:.18em;gap:9px}
  .menu-lines{width:24px;height:13px}
  .menu-lines:before,.menu-lines:after{width:24px}
  .menu-lines:before{top:4px}.menu-lines:after{top:9px}
}


/* Mobile final polish — preserve the full-size symbol, reduce only the wordmark,
   keep the menu strokes optically consistent, and align privacy with the footer row. */
@media (max-width:820px){
  .brand-mark{width:48px !important;height:28px !important;flex:0 0 48px !important;}
  .brand-wordmark{width:130px !important;max-width:130px !important;height:auto !important;max-height:18px !important;flex:0 0 130px !important;}
  .menu-lines{width:24px !important;height:14px !important;display:block !important;flex:0 0 24px !important;}
  .menu-lines:before,.menu-lines:after{width:24px !important;height:0 !important;border-top:1px solid currentColor !important;background:none !important;}
  .menu-lines:before{top:4px !important;}
  .menu-lines:after{top:10px !important;}
}
@media (max-width:560px){
  .brand-mark{width:48px !important;height:28px !important;flex-basis:48px !important;}
  .brand-wordmark{width:108px !important;max-width:108px !important;flex-basis:108px !important;}
  .brand-lockup{gap:7px !important;}
}
@media (max-width:820px){
  .privacy-link{right:22px !important;bottom:39px !important;font-size:6px !important;line-height:1 !important;letter-spacing:.16em !important;}
}



/* WAGENSCHLAG — SHORT LANDSCAPE LAYOUT
   Dedicated only to landscape viewports with limited vertical space.
   Portrait mobile and normal desktop are intentionally untouched. */
@media (orientation: landscape) and (max-height: 720px){
  html,body{overflow-x:hidden;scroll-snap-type:none}

  /* Header remains visually identical, but the area below it becomes a soft
     mask so content disappears gracefully before it reaches the navigation. */
  .site-header{
    padding:9px 22px !important;
    min-height:0 !important;
    mix-blend-mode:normal !important;
    background:rgba(22,22,22,.94) !important;
    isolation:isolate;
  }
  .site-header::after{
    content:"";
    position:absolute;
    left:0;right:0;
    top:100%;
    height:86px;
    pointer-events:none;
    z-index:1;
    background:linear-gradient(to bottom,rgba(22,22,22,.94) 0%,rgba(22,22,22,.62) 42%,rgba(22,22,22,0) 100%);
  }
  .brand-lockup,.site-header .header-actions{position:relative;z-index:2}
  .brand-mark{width:48px !important;height:28px !important;flex:0 0 48px !important}
  .brand-wordmark{width:130px !important;max-width:130px !important;max-height:18px !important;flex:0 0 130px !important}
  .brand-lockup{gap:7px !important}
  .site-header .header-actions{gap:12px !important}
  .language-switch{font-size:8px !important}
  .menu-toggle{font-size:8px !important;gap:9px !important}
  .menu-lines{width:24px !important;height:14px !important;flex:0 0 24px !important}
  .menu-lines:before,.menu-lines:after{width:24px !important;height:0 !important;border-top:1px solid currentColor !important;background:none !important}
  .menu-lines:before{top:4px !important}.menu-lines:after{top:10px !important}

  /* Homepage: the section is content-led. Nothing is allowed to overlap the
     next section because copy is in normal document flow. */
  .home-page .panel,
  .home-page .panel--reverse{
    position:relative !important;
    display:block !important;
    height:auto !important;
    min-height:100vh !important;
    overflow:hidden !important;
    scroll-snap-align:none !important;
    isolation:isolate !important;
  }
  .home-page .panel-media{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    z-index:0 !important;
  }
  .home-page .panel-media img{
    position:absolute !important;
    inset:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
  }
  .home-page .panel-content,
  .home-page .panel--reverse .panel-content,
  .home-page .panel[data-panel="05"] .panel-content,
  .home-page .panel[data-panel="06"] .panel-content{
    position:relative !important;
    inset:auto !important;
    display:block !important;
    width:auto !important;
    max-width:none !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:118px 52px 112px 22px !important;
    z-index:3 !important;
    transform:none !important;
    grid-column:auto !important;
    align-self:auto !important;
    justify-self:auto !important;
  }
  .home-page .panel-content p{max-width:560px !important}
  .home-page .panel-content h1,
  .home-page .panel-content h2{margin-bottom:24px !important}
  .home-page .panel-content .eyebrow{margin-bottom:16px !important}
  .home-page .panel-content .section-index{margin-bottom:18px !important}
  .home-page .scroll-cue{display:none !important}

  /* No fixed footer in the short landscape mode. The only homepage footer
     lives in section 06 and remains at the actual end of its content. */
  .home-page .panel-footer{
    position:relative !important;
    left:auto !important;right:auto !important;bottom:auto !important;
    min-height:0 !important;
    padding:16px 22px 34px !important;
    display:flex !important;
    align-items:center !important;
    z-index:5 !important;
  }

  /* Privacy remains accessible but no longer creates a second visual layer
     over the content. */
  .privacy-link{
    right:22px !important;
    bottom:20px !important;
    font-size:6px !important;
    line-height:1 !important;
    letter-spacing:.16em !important;
    z-index:50 !important;
  }

  body::before,body::after{display:none !important}
}

/* Intro claim sizing */
@media (max-width: 900px){
  .intro-stage{width:92vw}
  .intro-claim{width:min(68%,620px);margin-top:14px}
}
@media (max-width: 600px){
  .intro-stage{width:92vw}
  .intro-claim{width:72%;margin-top:12px}
}

/* Landing: understated link affordance beneath linked section copy (04–06). */
.home-page .section-subpage-arrow{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;margin-top:14px;color:inherit;text-decoration:none;opacity:.9;transition:opacity .2s ease,transform .2s ease;position:relative;z-index:5}
.home-page .section-subpage-arrow svg{display:block;width:28px;height:28px}
.home-page .section-subpage-arrow:hover,.home-page .section-subpage-arrow:focus-visible{opacity:1;transform:translateX(4px)}
.home-page .section-subpage-arrow:focus-visible{outline:1px solid currentColor;outline-offset:2px}
@media(max-width:700px){.home-page .section-subpage-arrow{margin-top:8px;width:40px;height:40px}}

/* Explicit, robust link indicator for homepage sections 04–06. */
.home-page .panel-content > a.section-subpage-arrow{
  display:flex !important; position:relative !important; visibility:visible !important;
  opacity:1 !important; align-items:center; justify-content:flex-start;
  width:64px; height:42px; margin:18px 0 0 !important; padding:0 !important;
  color:#fff !important; z-index:20; text-decoration:none; line-height:1;
  transform:none; transition:transform .25s ease;
}
.home-page .panel-content > a.section-subpage-arrow svg{
  display:block !important; width:42px !important; height:32px !important;
  min-width:42px; opacity:1 !important; color:#fff !important;
  stroke:#fff !important; fill:none !important; overflow:visible;
}
.home-page .panel-content > a.section-subpage-arrow svg path{stroke:#fff !important;stroke-width:1.6 !important}
.home-page .panel-content > a.section-subpage-arrow:hover{transform:translateX(5px)}
@media(max-width:820px){.home-page .panel-content > a.section-subpage-arrow{margin-top:12px !important;height:40px}}
