/* Small additions that let the original layout work across page routes. */
html{scroll-behavior:auto}
.page-products header{position:relative}
.skip-link{position:absolute;left:1rem;top:-5rem;z-index:100;padding:.7rem 1rem;background:#fff;color:#111}
.skip-link:focus{top:1rem}
.menu-toggle{display:none;background:transparent;color:var(--tx);border:1px solid var(--line);padding:.55rem .8rem;border-radius:3px;cursor:pointer}
.nav{position:relative}
.nav-cta{white-space:nowrap}
.page-title{font-size:clamp(25px,3.2vw,38px);margin:0}
main#content>section:first-child{padding-top:60px}
.model-stage-source{border-top:1px solid var(--line);padding:48px 0 160px;text-align:center;scroll-margin-top:90px}
.model-stage-source .model-stage__canvas{position:relative;inset:auto;width:min(100%,660px);height:350px;min-height:350px;margin:0 auto 18px;background:radial-gradient(ellipse at 50% 80%,rgba(176,33,40,.16),transparent 65%)}
.model-stage__controls{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.model-stage__controls button{background:var(--gr2);border:1px solid var(--line);color:var(--tx);padding:10px 18px;cursor:pointer}
.model-stage__controls button[aria-pressed=true]{border-color:var(--red2);color:#fff}
.model-stage-source>div>p:last-child{color:var(--mut);font-size:12px;margin-top:12px}
.calc-validation-banner{max-width:1152px;margin:24px auto;padding:14px 18px;border:1px solid var(--warn);color:var(--tx);display:flex;gap:14px;flex-wrap:wrap}
.contact-form-shell{max-width:700px;margin:28px auto;padding:28px;border:1px solid var(--line);background:var(--gr2);text-align:left}
.contact-form-shell label{display:block;margin:14px 0 5px;color:var(--mut);font-size:13px}
.contact-form-shell input,.contact-form-shell textarea{width:100%;padding:11px;background:var(--gr);color:var(--tx);border:1px solid var(--line)}
.contact-form-shell button{margin-top:16px;opacity:.7}
.nav a:focus-visible,.nav button:focus-visible{outline:3px solid var(--red2);outline-offset:4px}
@media(max-width:1050px){
 .menu-toggle{display:block;margin-left:auto}
 .nav>nav{order:4}
 .nav>nav ul{display:none;position:absolute;top:100%;left:0;right:0;z-index:70;background:var(--gr);border:1px solid var(--line);padding:14px 20px;max-height:calc(100vh - 90px);overflow:auto;flex-direction:column;gap:0}
 .nav>nav ul[data-open=true]{display:flex}
 .nav>nav ul li{padding:8px 0;border-bottom:1px solid var(--line)}
 .nav-cta{margin-left:0}
}
@media(max-width:560px){
 .nav{gap:10px;height:auto;min-height:70px;flex-wrap:wrap;padding-top:10px;padding-bottom:10px}
 .nav .logo{font-size:18px;gap:8px}
 .nav .logo .r{font-size:14px}
 .nav-cta{font-size:12px!important;padding:9px 10px!important}
 .menu-toggle{font-size:12px;padding:8px}
 .hero{padding-top:46px}
 .stats{grid-template-columns:repeat(2,1fr)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
