/* Right-side hamburger navigation, as requested for v4. */
.nav-dock{left:auto;right:34px;top:35px;bottom:auto;transform:none;padding:0;background:#fff;border-color:#ffffffc9;border-radius:40px;box-shadow:0 4px 24px #06294212;z-index:91}
.menu-toggle{min-height:46px;border-radius:40px;gap:17px;padding:14px 20px;font-size:12px}
.menu-glyph{display:flex;flex-direction:column;gap:5px;width:19px;transform:none!important}
.menu-glyph i{display:block;width:19px;height:1px;border-radius:0;transition:transform .25s,opacity .25s}
.menu-glyph i:nth-child(n+3){display:none}
.menu-toggle[aria-expanded=true] .menu-glyph i:first-child{transform:translateY(3px) rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-glyph i:nth-child(2){transform:translateY(-3px) rotate(-45deg)}
.dock-current{display:none}
.top-actions{padding-right:164px}
.menu-panel{left:auto;right:16px;top:16px;bottom:16px;transform:none;width:min(480px,calc(100vw - 32px));max-height:calc(100svh - 32px);border-radius:26px;padding:35px 40px 30px;box-shadow:-20px 0 100px #062b4330;z-index:92}
.menu-panel.is-open{animation:sideMenuIn .35s var(--ease) both}
.menu-panel-top{margin-bottom:35px;font-size:10px}
.menu-panel-top button{width:37px;height:37px}
.menu-grid{grid-template-columns:1fr;gap:0}
.menu-grid a{font-size:26px;padding:12px 0;letter-spacing:-.04em}
.menu-grid a span{display:flex;align-items:baseline;gap:15px}
.menu-grid a small{font-size:9px;color:var(--muted);font-weight:400;letter-spacing:.02em}
.menu-grid a svg{width:20px;height:20px}
.menu-panel-foot{margin-top:34px;display:block;line-height:1.8}
.menu-panel-foot a{display:block;font-size:15px;margin:7px 0 20px;color:var(--ink)}
.menu-panel-foot .menu-tagline{font-size:12px;color:var(--blue);letter-spacing:-.02em}
.menu-backdrop{position:fixed;inset:0;background:#06335166;backdrop-filter:blur(5px);z-index:90;border:0;cursor:default}
body.menu-open{overflow:hidden}
.quick-contact{bottom:25px}
.footer-wrap{padding-bottom:20px}
.sticky-story.is-static-story{height:auto;min-height:0}
html.motion-paused .story-stage{position:relative;top:0;height:auto;min-height:0;max-height:none;padding:60px 6%;display:grid;grid-template-columns:1fr 1fr;gap:30px}
html.motion-paused .story-copy{position:relative;left:auto;top:auto;width:auto}
html.motion-paused .story-product{position:relative;left:auto;bottom:auto;width:100%;height:500px;grid-column:2;grid-row:1}
html.motion-paused .story-card{position:relative;top:auto;right:auto;width:100%;max-width:none;min-height:0;transform:none!important;grid-column:1/-1}
html.motion-paused .story-bottom{position:relative;left:auto;bottom:auto;grid-column:1/-1}
@keyframes sideMenuIn{from{opacity:0;translate:25px 0}to{opacity:1;translate:0 0}}
@media(max-height:800px) and (min-width:901px){.story-stage{min-height:0}.story-copy{top:10%}.story-copy h2{font-size:min(5.2vw,66px);margin:20px 0}.story-copy p{font-size:14px;margin-bottom:23px}.story-card{min-height:300px;padding:26px 30px}.story-card .card-number{margin-bottom:25px}.hero{min-height:740px}}
@media(max-height:850px){.menu-grid a{font-size:23px;padding:10px 0}.menu-panel-top{margin-bottom:24px}.menu-panel-foot{margin-top:24px}.menu-panel-foot a{margin-bottom:15px}}
@media(max-width:900px){.nav-dock{right:30px;top:31px}.top-actions{padding-right:151px}.footer-wrap{padding-bottom:20px}}
@media(max-width:600px){.nav-dock{top:25px;right:23px;border-radius:30px}.menu-toggle{min-height:40px;padding:11px 15px;gap:12px;font-size:11px}.top-actions{padding-right:125px}.top-enquiry{padding:11px 12px;font-size:10px;gap:5px}.top-enquiry svg{width:11px;height:11px}.menu-glyph{width:17px}.menu-glyph i{width:17px}.menu-panel{top:9px;bottom:9px;right:9px;max-height:calc(100svh - 18px);width:calc(100vw - 18px);padding:27px 28px 30px;border-radius:22px}.menu-panel-top{margin-bottom:28px}.menu-grid a{font-size:25px;padding:12px 0}.menu-panel-foot{margin-top:25px}.menu-panel-foot a{font-size:14px}.footer-wrap{padding-bottom:65px}.quick-contact{bottom:19px}.hero-aside{bottom:45px}html.motion-paused .story-stage{display:flex;padding:40px 24px 30px}html.motion-paused .story-product{height:350px}}
@media(max-width:390px){.top-enquiry{display:none}.menu-grid a{font-size:22px;padding:10px 0}.menu-panel-top{margin-bottom:24px}}
@media(prefers-reduced-motion:reduce){.menu-panel.is-open{animation:none}.menu-backdrop{backdrop-filter:none}}

/* Shared navigation; the same markup is embedded in every HTML page. */
.menu-panel{overflow-y:auto;overscroll-behavior:contain}
.menu-grid{align-content:start}
.menu-grid>.menu-group{border-bottom:1px solid #e3ecf1}
.menu-grid>.menu-group>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;padding:12px 0;font-size:26px;line-height:1.35;letter-spacing:-.04em}
.menu-group>summary::-webkit-details-marker{display:none}
.menu-grid>.menu-group>summary::after{content:'+';font-size:23px;font-weight:400;flex:none;width:24px;text-align:center}
.menu-grid>.menu-group[open]>summary::after{content:'−'}
.menu-grid .menu-submenu{padding:0 0 14px 16px}
.menu-grid .menu-submenu a{display:block;min-height:40px;padding:9px 0;font-size:15px;line-height:1.45;letter-spacing:0;border:0;color:var(--muted)}
.menu-grid .menu-submenu a:hover,.menu-grid a[aria-current="page"]{color:var(--blue)}
.menu-grid a[aria-current="page"]{text-decoration:nonr;text-underline-offset:5px}
.menu-group>summary:focus-visible{outline:2px solid #288bc2;outline-offset:3px}
@media(max-height:850px){.menu-grid>.menu-group>summary{font-size:23px;padding:10px 0}}
@media(max-width:600px){.menu-grid>.menu-group>summary{font-size:25px;padding:12px 0}}
@media(max-width:390px){.menu-grid>.menu-group>summary{font-size:22px;padding:10px 0}}
