.language-switch{position:fixed;z-index:60;right:5%;top:14px;display:flex;gap:3px;padding:4px;border:1px solid #ffffff80;border-radius:30px;background:#edf2f5f5;box-shadow:0 3px 18px #10223b20;color:#10223b;font:600 12px/1 Arial,sans-serif;backdrop-filter:blur(12px)}
.language-switch a{display:grid;place-items:center;min-width:44px;min-height:36px;border-radius:24px;color:inherit;text-decoration:none;letter-spacing:.04em}
.language-switch a[aria-current="page"]{background:#10223b;color:#fff}.language-switch a:focus-visible{outline:3px solid #488bbd;outline-offset:3px}
body>header{padding-right:calc(5% + 116px)}
.hero-navigation{right:calc(4% + 116px)}
body:has(.automation-hero)>.language-switch{top:31px;right:4%}
@media(max-width:700px){
 .language-switch{top:10px;right:6%}
 body>header{padding-right:calc(6% + 108px);gap:10px;flex-wrap:wrap;align-content:center}
 .hero-navigation{left:6%;right:calc(6% + 108px);gap:10px;padding:10px 12px;font-size:12px;min-height:46px}
 body:has(.automation-hero)>.language-switch{top:18px;right:6%}
 .language-switch a{min-width:40px}
}
@media(max-height:600px) and (min-aspect-ratio:6/5){body:has(.automation-hero)>.language-switch{top:12px}}

/* Keep primary navigation aligned with the language control while scrolling. */
body>.hero-navigation{position:fixed;z-index:60;top:31px;height:46px;min-height:46px;padding:4px;gap:4px;line-height:1;font-size:12px;background:#edf2f5f5;box-shadow:0 3px 18px #10223b20;border-radius:30px}
body>.hero-navigation a{display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border:0;border-radius:24px}
body>.hero-navigation a:hover{background:#10223b10}
@media(max-width:700px){body>.hero-navigation{top:18px;gap:0}body>.hero-navigation a{padding:0 7px}}
@media(max-height:600px) and (min-aspect-ratio:6/5){body>.hero-navigation{top:12px}}
body>.hero-navigation a[aria-current="location"]{background:#10223b;color:#fff}

/* One centered control group across the home stories. */
.navigation-dock{position:fixed;z-index:60;left:50%;bottom:20px;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap}
body>.navigation-dock>.hero-navigation{position:static;top:auto;right:auto;left:auto;display:flex;align-items:center;height:46px;min-height:46px;padding:4px;gap:4px;font-size:12px;line-height:1;border-radius:30px;background:#edf2f5f5;box-shadow:0 3px 18px #10223b20}
body>.navigation-dock>.hero-navigation a{display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 16px;border:0;border-radius:24px}
body>.navigation-dock>.hero-navigation a[aria-current="location"]{background:#10223b;color:#fff}
body:has(.automation-hero) .navigation-dock>.language-switch{position:static;top:auto;right:auto;left:auto;bottom:auto;height:46px;min-height:46px}
.motion-button,.islands-motion{display:none!important}
.aqua-section .scene-label,.fitness-section .exercise-status{display:none!important}
@media(max-width:700px){.navigation-dock{bottom:82px;gap:8px;width:max-content;max-width:calc(100% - 16px)}body>.navigation-dock>.hero-navigation{gap:0;padding:4px}body>.navigation-dock>.hero-navigation a{padding:0 7px}body:has(.automation-hero) .navigation-dock>.language-switch a{min-width:40px}}
@media(max-width:700px){.energy-section .energy-jump{bottom:100px}}

/* On mobile the home navigation opens below a fixed top-right button. */
.mobile-menu-toggle{display:none}
@media(max-width:700px), (max-width:900px) and (max-height:540px){
 .mobile-menu-toggle:not([hidden]){position:fixed;z-index:65;top:max(16px,env(safe-area-inset-top));right:max(16px,env(safe-area-inset-right));display:grid;place-items:center;width:48px;height:48px;padding:0;border:1px solid #ffffff80;border-radius:50%;background:#edf2f5f5;color:#10223b;box-shadow:0 3px 18px #10223b20;backdrop-filter:blur(12px);cursor:pointer;-webkit-tap-highlight-color:transparent}
 .mobile-menu-toggle svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
 .mobile-menu-toggle:active{background:#dce5ec}
 .mobile-menu-toggle:focus-visible,.navigation-dock a:focus-visible{outline:3px solid #488bbd;outline-offset:3px}
 body>.navigation-dock.mobile-navigation-ready{display:none;left:auto;right:max(16px,env(safe-area-inset-right));top:calc(max(16px,env(safe-area-inset-top)) + 60px);bottom:auto;transform:none;width:240px;max-width:calc(100vw - 32px);max-height:calc(100dvh - max(16px,env(safe-area-inset-top)) - 92px);overflow-y:auto;padding:12px;border:1px solid #ffffff80;border-radius:24px;background:#edf2f5f5;box-shadow:0 12px 36px #10223b30;backdrop-filter:blur(16px);white-space:normal}
 body>.navigation-dock.mobile-navigation-ready.is-open{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 body>.navigation-dock.mobile-navigation-ready>.hero-navigation{flex-direction:column;align-items:stretch;gap:8px;height:auto;min-height:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;font-size:16px;line-height:1.5}
 body>.navigation-dock.mobile-navigation-ready>.hero-navigation a{justify-content:flex-start;min-height:48px;padding:0 16px;border-radius:14px}
 body>.navigation-dock.mobile-navigation-ready>.hero-navigation a:hover{background:#10223b10}
 body>.navigation-dock.mobile-navigation-ready>.hero-navigation a[aria-current="location"]{background:#10223b;color:#fff}
 body>.navigation-dock.mobile-navigation-ready>.language-switch{justify-content:center;gap:8px;height:auto;min-height:0;padding:12px 0 0;border:0;border-top:1px solid #10223b20;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
 body>.navigation-dock.mobile-navigation-ready>.language-switch a{flex:1;min-width:48px;min-height:48px;font-size:14px}

 /* Reserve a clear top row for the fixed menu on each home story. */
 body:has(.mobile-menu-toggle) .portfolio .masthead,
 body:has(.mobile-menu-toggle) .portfolio .fitness-heading,
 body:has(.mobile-menu-toggle) .portfolio .energy-heading,
 body:has(.mobile-menu-toggle) .portfolio .gallery-heading{top:calc(max(16px,env(safe-area-inset-top)) + 72px)}
 body:has(.mobile-menu-toggle) .studio-stage{padding-top:calc(max(16px,env(safe-area-inset-top)) + 72px)}
 body:has(.mobile-menu-toggle) .studio-discuss{position:static;display:inline-flex;align-items:center;min-height:48px;margin-top:24px}
 body:has(.mobile-menu-toggle) .aqua-section .intro{top:calc(max(16px,env(safe-area-inset-top)) + 132px);left:5%;right:5%;max-width:90%}
 .portfolio .aqua-section .wordmark{font-size:clamp(32px,9vw,40px);line-height:1.08;letter-spacing:-1px}
 .portfolio .aqua-section .intro p{font-size:16px;line-height:1.5;max-width:32ch;letter-spacing:0;color:#24483e;text-shadow:none;text-wrap:pretty}
 .portfolio .aqua-section:before{background:linear-gradient(180deg,#f4f8f2 0,#f4f8f2f2 200px,#f4f8f200 350px,transparent 85%,#eff8dcc9)}
 body:has(.mobile-menu-toggle) .energy-heading h2{font-size:clamp(30px,8.5vw,39px)}
 body:has(.mobile-menu-toggle) .energy-section.meadow-mobile .app-preview{width:clamp(177px,43vw,230px)}
 body:has(.mobile-menu-toggle) .energy-section.meadow-mobile .energy-phone-content{width:min(43vw,230px);max-width:100%;margin-inline:auto}

 /* Keep standalone-page actions below the language switch, fully visible. */
 body>header[class],body>header:not([class]){display:grid;grid-template-columns:minmax(0,1fr) 104px;align-items:center;align-content:center;gap:16px;min-height:112px;height:auto;padding:16px 6%}
 body>header[class]>nav,body>header:not([class])>nav{display:none}
 body>header>a:first-of-type{grid-column:1;min-width:0;max-width:100%}
 body>header>a:last-of-type{grid-column:1/-1;justify-self:start}
 .closing footer{flex-wrap:wrap}
 .closing footer>a{max-width:100%;overflow-wrap:anywhere}
 .gallery-links a{display:flex;align-items:center;min-height:44px}
}
@media(max-width:900px){body>main>.hero{width:100%}}
@media(max-width:700px) and (max-height:650px){
 .portfolio #aqua .app-preview{left:auto;right:5%;top:208px;width:177px;transform:none}
 .portfolio #aqua .phone-wrap,.portfolio #aqua .phone{width:110px;transform:none}
 .portfolio #aqua .phone-wrap{animation:none;margin-bottom:16px}
 .portfolio #aqua .phone{height:214px;border-radius:25px}
}
@media(max-width:900px) and (max-height:540px) and (min-aspect-ratio:6/5){
 .portfolio>#aqua{min-height:100svh}
 body:has(.mobile-menu-toggle) #aqua .intro{right:auto;max-width:44%;width:44%}
 .portfolio #aqua .app-preview{left:auto;right:148px;top:80px;width:177px;transform:none}
 .portfolio #aqua .phone-wrap,.portfolio #aqua .phone{width:110px;transform:none}
 .portfolio #aqua .phone-wrap{animation:none;margin-bottom:16px}
 .portfolio #aqua .phone{height:214px;border-radius:25px}
}
