h1{font-size:clamp(2.25rem,5vw,4.6rem);line-height:1.16}
h2{font-size:clamp(1.8rem,3vw,3rem);line-height:1.2}
h3{font-size:1.3rem;line-height:1.25}
.hero-glass strong{font-size:2.2rem}.stat strong{font-size:1.9rem}.product-card .number{font-size:2.3rem}.service-row .n{font-size:1.65rem}.contact-item strong{font-size:1.25rem}.cta h2{max-width:750px}
.icon{display:inline-block;width:18px;height:18px;vertical-align:middle;flex-shrink:0;margin-left:5px}.button .icon{margin-left:0}.arrow-icon{transition:transform .25s ease}a:hover .arrow-icon{transform:translate(2px,-2px)}
.social-icons{display:flex;gap:12px;margin-top:20px}.social-icon{display:grid;place-items:center;width:42px;height:42px;border:1px solid currentColor;border-radius:50%;color:var(--teal)}.social-icon svg{width:19px;height:19px}.footer .social-icon{color:#aac9c6}
.contact-map{padding:0;min-height:440px;border:1px solid var(--line);background:var(--pale)}.contact-map:before,.contact-map:after{display:none}.contact-map iframe{width:100%;height:100%;min-height:440px;border:0;display:block;flex:1}
.blueprint-band{height:260px;margin-top:40px;background:var(--paper) url('/assets/blueprint.svg') center/contain no-repeat;border-block:1px solid var(--line)}
.photo-split .copy{position:relative;isolation:isolate}.photo-split .copy:before{content:'';position:absolute;inset:auto 0 0;height:190px;background:url('/assets/blueprint.svg') center/cover no-repeat;opacity:.2;z-index:-1;pointer-events:none}
.page-hero:after{background:url('/assets/blueprint.svg') center/cover no-repeat;border:0;border-radius:0;box-shadow:none;right:-40px;top:0;width:50%;height:100%;opacity:.2}
.button{transition:background .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.button:hover{transform:translateY(-2px);box-shadow:0 7px 18px #082d2d20}.nav a{transition:color .2s ease}.document img{transition:opacity .25s ease}.product-card{transition:transform .3s ease,box-shadow .3s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #103a3a12}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}
@keyframes appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero-content,.page-hero .shell{animation:appear .8s ease both}.hero-glass{animation:appear 1s .15s ease both}
@media(max-width:600px){h1{font-size:2.35rem}h2{font-size:1.9rem}h3{font-size:1.2rem}.hero-content{padding-top:130px;padding-bottom:160px}.hero{min-height:630px}.blueprint-band{height:155px;background-size:auto 155px}.contact-map,.contact-map iframe{min-height:340px}.page-hero:after{width:100%;opacity:.12}.social-icons{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.document{margin:0;min-width:0}
.brand{border:0;width:80px;height:80px;flex-shrink:0}.brand img{width:100%;height:100%;object-fit:contain}.footer .brand{width:100px;height:100px}
@media(max-width:600px){.brand{width:60px;height:60px}.footer .brand{width:90px;height:90px}}
.footer-bottom a{display:inline;margin:0;text-decoration:underline;text-underline-offset:3px}
.cta{position:relative;isolation:isolate;overflow:hidden}
.cta:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('/assets/blueprint.svg') center/750px auto repeat;filter:brightness(0) invert(1);opacity:.13}
@media(max-width:600px){
 h1{font-size:2rem;line-height:1.18}h2{font-size:1.55rem;line-height:1.25}h3{font-size:1.05rem;line-height:1.3}
 .hero{min-height:0;height:auto}.hero-content{padding-top:114px;padding-bottom:50px}.hero h1{margin-bottom:20px}.hero .lead{font-size:16px;line-height:1.6;margin-bottom:0}.hero-glass{display:none}.hero-actions{margin-top:25px;gap:10px}.hero-actions .button{font-size:14px;padding:11px 15px;gap:9px;min-height:44px}.hero-actions .icon{width:15px;height:15px}
 .stat strong{font-size:1.6rem}.product-card .number{font-size:1.8rem}.service-row .n{font-size:1.4rem}.contact-item strong{font-size:1.1rem}.page-hero p{font-size:17px}
 .document-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.document{padding:5px}.document img{aspect-ratio:auto;width:100%;height:auto}.document figcaption{padding:8px 2px 3px;font-size:12px;line-height:1.5}
 .footer{text-align:center;padding-top:45px}.footer-grid{justify-items:center;gap:27px}.footer-grid>div{width:100%;min-width:0}.footer .brand{display:grid;margin:0 auto 20px}.footer .social-icons{justify-content:center}.footer-address{font-size:14px;line-height:1.65}.footer-address br{display:none}.footer-bottom{line-height:1.8}
 .cta{padding:50px 0}.cta .shell{text-align:center}.cta h2{margin:0 auto}.cta .button{margin-top:23px}.cta:before{background-size:550px auto}
}
