/* Language navigation and space for translated labels. */
.site-header{gap:2rem}
.site-header>.brand{flex-shrink:0}
.site-header>#main-nav{order:2;margin-left:auto}
.header-tools{order:3;display:flex;align-items:center;gap:1.25rem;flex-shrink:0}
.language-switcher{display:flex;align-items:center;gap:.15rem;font-family:var(--sans);font-size:.7rem;line-height:1;letter-spacing:.06em}
.language-switcher a{display:flex;align-items:center;justify-content:center;min-width:2rem;min-height:2rem;opacity:.65;border:1px solid transparent;transition:opacity .2s,border-color .2s}
.language-switcher a:hover{opacity:1}
.language-switcher a[aria-current]{opacity:1;border-color:currentColor}
.footer-language-switcher{justify-content:flex-end;margin-top:.35rem}
@media(min-width:1101px) and (max-width:1400px){.site-header{gap:1.2rem}.site-header nav{gap:1.15rem}.site-header nav a{font-size:.78rem}}
@media(max-width:1100px){
 .site-header{height:6rem;gap:1rem}
 .menu-toggle{display:flex;font-size:.875rem}
 .menu-lines{width:1.5rem;height:.65rem;border-top:1px solid;border-bottom:1px solid}
 .site-header.menu-open{position:fixed;border-bottom:0}
 .site-header.menu-open:before{content:"";position:absolute;inset:0 calc(-1 * var(--gutter));background:var(--ink);z-index:-1}
 .inner-page .site-header.menu-open{position:fixed;left:var(--gutter);right:var(--gutter);margin:0;color:var(--paper)}
 .site-header #main-nav{display:none;position:absolute;top:100%;left:calc(-1 * var(--gutter));right:calc(-1 * var(--gutter));margin:0;background:var(--ink);color:var(--paper);padding:1.2rem var(--gutter) 2rem;max-height:calc(100svh - 6rem);overflow:auto}
 .site-header #main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .site-header #main-nav a{font-size:1.15rem;padding:.9rem 0;border-top:1px solid #ffffff25;border-bottom:0}
 .site-header #main-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:6px}
}
@media(max-width:800px){.footer-language-switcher{justify-content:flex-start}}
@media(max-width:600px){
 .site-header,.home-page .site-header{height:6.5rem}
 .header-tools{flex-direction:column;align-items:flex-end;gap:.15rem}
 .header-tools .menu-toggle{padding:.35rem 0 .4rem;font-size:.8rem}
 .language-switcher{font-size:.65rem}
 .language-switcher a{min-width:2rem;min-height:2rem}
 .brand-name{font-size:1.85rem}.brand-caption{font-size:.61rem;letter-spacing:.2em}
 .site-header #main-nav{max-height:calc(100svh - 6.5rem)}
 .hero-top{padding-top:9rem}
 html[lang="de"] .hero h1{font-size:clamp(2.9rem,14.3vw,4.7rem)}
 html[lang="en"] .hero h1{font-size:clamp(2.9rem,14.5vw,4.7rem)}
 html[lang="de"] .wine-panel h3{font-size:clamp(2.35rem,10.5vw,3.5rem)}
 html[lang="de"] .home-contact h2{font-size:3rem}
 html[lang="de"] .hero-bottom>a{max-width:8.5rem}
}
@media(max-width:360px){.brand-name{font-size:1.65rem}.brand-caption{font-size:.55rem}.site-header{gap:.5rem}.hero-top{padding-top:8.6rem}.language-switcher a{min-width:1.9rem}}

@media(max-width:800px){html[lang="de"] .wine-story h2{font-size:clamp(2.8rem,12vw,6rem)}}
@media(max-width:520px){html[lang="de"] .generations-heading h2{font-size:clamp(2.6rem,12vw,3.4rem)}}
