.header{transition:box-shadow .3s,background .3s;isolation:isolate}
.header.is-scrolled{background:rgba(255,255,255,.96);box-shadow:0 8px 35px #062e3510}
.reading-progress{position:absolute;bottom:-1px;left:0;height:3px;width:100%;background:linear-gradient(90deg,#0fb7cc,#cff26c);transform:scaleX(0);transform-origin:left;pointer-events:none}
nav a{position:relative;min-height:44px}
nav a:after{content:"";position:absolute;left:0;bottom:0;height:2px;background:var(--cyan);width:100%;transform:scaleX(0);transform-origin:left;transition:transform .25s}
nav a[aria-current="location"]:after,nav a:hover:after{transform:scaleX(1)}
.hero{display:block;min-height:730px;height:calc(100svh - 134px);max-height:1080px;isolation:isolate}
.hero-copy{width:60%;max-width:940px;padding:clamp(65px,8vh,125px) 30px 50px 6%;pointer-events:none}
.hero-copy a{pointer-events:auto}
.hero h1{font-size:clamp(48px,5.2vw,86px);line-height:1.09}
.hero-line{display:block;overflow:hidden;padding-bottom:.11em;margin-bottom:-.11em}
.hero-line>span{display:block}
.hero-copy>p{max-width:460px;color:#dae8e6}
.hero-visual{position:absolute;inset:0;z-index:-1}
.hero-visual>img,.hero-visual>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:72% center}
.hero-visual>video{opacity:0;transition:opacity .4s}
.hero-visual.video-ready>video{opacity:1}
.hero-image-shade{background:linear-gradient(90deg,#042831fa 0%,#042831dc 27%,#04283166 53%,#04283108 75%),linear-gradient(0deg,#052d35e6 0%,transparent 36%,#052d3533 100%)}
.visual-tag{left:auto;right:5%;bottom:58px;max-width:390px;background:#092f3659;backdrop-filter:blur(10px)}
.image-note{font-size:12px;bottom:22px;right:5%;color:#d7e5e1}
.hero-foot{font-size:11px;letter-spacing:.055em;margin-top:48px;flex-wrap:wrap}
.eyebrow{font-size:12px;line-height:1.6;max-width:470px}
.benefit-strip{position:relative;isolation:isolate}
.benefit-strip>div>span{width:32px;height:32px;border:1px solid #cadacd;border-radius:50%;display:grid;place-items:center;font-size:12px;color:#356659}
.kicker{font-size:12px}
.section-head{position:relative}
.section-head:after{content:"";position:absolute;bottom:-23px;left:0;width:64px;height:2px;background:var(--cyan);transform-origin:left}
.service-grid{padding-top:15px;perspective:1000px}
.service-card{position:relative;overflow:hidden;isolation:isolate;transition:background .25s,border-color .25s,box-shadow .25s}
.service-card:hover{transform:none;border-color:#74b9b5;box-shadow:0 20px 50px #053c3510}
.service-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--spot-x,50%) var(--spot-y,40%),#cff26c33,transparent 65%);opacity:0;pointer-events:none;z-index:-1;transition:opacity .3s}
.service-card:hover:before{opacity:1}
.service-icon{position:relative;transition:background .3s,color .3s}
.service-card:hover .service-icon{background:var(--deep);color:var(--lime)}
.card-number{font-size:12px}
.button{position:relative;overflow:hidden;isolation:isolate;transition:background .2s,box-shadow .2s}
.button:before{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,#ffffff26 50%,transparent 65%);transform:translateX(-110%);pointer-events:none;z-index:-1}
.button:hover:before{transform:translateX(110%);transition:transform .65s}
.button:hover{box-shadow:0 8px 22px #001e281a}
.button span,.inline-action>span,.text-link>span{transition:transform .25s;display:inline-block}
.button:hover span,.inline-action:hover>span{transform:translate(3px,-3px)}
.text-link:hover>span{transform:translateY(3px)}
.technology{align-items:start}
.technology-visual{position:sticky;top:140px;box-shadow:0 25px 70px #083e3510;transform-origin:center}
.technology-visual>.kicker{font-size:12px;line-height:1.7}
.technology-visual>img{transform-origin:center}
.technology-caption a{min-height:44px;display:flex;align-items:center;font-size:13px}
.layer-list details{transition:background .25s,padding .25s}
.layer-list details[open]{background:#fff7;padding-left:12px;padding-right:12px;border-radius:8px}
.layer-num{transition:background .25s,color .25s;position:relative;overflow:hidden;font-size:12px}
.layer-list details[open] .layer-num{background:var(--deep);color:var(--lime)}
.plus,.faq-list summary>span{transition:transform .3s}
.project-grid{perspective:1000px}
.video-button{isolation:isolate}
.play{transition:background .25s,box-shadow .25s}
.video-button:hover .play{background:var(--lime);box-shadow:0 0 0 10px #cfff7020}
.project-meta{font-size:12px;line-height:1.7;flex-wrap:wrap;letter-spacing:.04em}
.duration{font-size:12px}
.about-band{position:relative;overflow:hidden;isolation:isolate;padding-top:95px;padding-bottom:95px}
.about-band:before,.contact:before{content:"";position:absolute;width:660px;height:660px;border:1px solid #b8e87d17;border-radius:50%;left:-160px;top:-100px;box-shadow:0 0 0 70px #b8e87d06,0 0 0 140px #b8e87d04;pointer-events:none;z-index:-1}
.about-band h2{font-size:clamp(34px,3.5vw,54px);line-height:1.22}
.about-band h2 span{display:inline;color:var(--lime)}
.store-grid{perspective:1100px}
.product-card{transition:box-shadow .3s,border-color .3s;transform-origin:center}
.product-card:hover{box-shadow:0 20px 55px #073b3615;border-color:#90bab1}
.product-image>img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.product-card:hover .product-image>img{transform:scale(1.035)}
.product-image>span,.status-label{font-size:12px}
.product-bottom>button{min-height:44px;font-size:14px}
.quote-steps{position:relative;padding-left:22px}
.quote-track,.quote-fill{position:absolute;left:0;top:28px;bottom:28px;width:2px;background:#dce5e1;transform-origin:top;pointer-events:none}
.quote-fill{background:linear-gradient(var(--cyan),#89b64a);transform:scaleY(1)}
.quote-steps>div>span{font-size:30px;min-width:44px;transition:color .3s}
.quote-steps>div.is-current>span{color:#008f9d}
.faq-list details{transition:background .25s,padding .25s}
.faq-list details[open]{background:#f4f8f3;padding-left:15px;padding-right:15px;border-radius:8px}
.contact{position:relative;overflow:hidden;isolation:isolate}
.contact:before{left:auto;right:-150px;top:80px}
.contact-form{box-shadow:0 35px 95px #00171e40}
.field{transition:opacity .2s}
.field label{font-size:14px;transition:color .2s}
.field:focus-within label{color:#008f9d}
.field input,.field select,.field textarea{transition:border-color .2s,box-shadow .2s,background .2s}
.field:focus-within input,.field:focus-within select,.field:focus-within textarea{border-color:#0b9ca8;box-shadow:0 0 0 3px #0fb7cc12}
.contact-channels small{font-size:12px;line-height:1.5}
.footer-label{font-size:12px}
.footer-top a{transition:color .2s}
.footer-top a:hover{color:#008f9d}
html.motion-paused{scroll-behavior:auto}
.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation:none!important;transition:none!important}
@media(min-width:1600px){.hero-copy{padding-left:max(6%,calc((100vw - 1500px)/2))}}
@media(max-width:1100px){.hero{height:auto;min-height:750px}.hero-copy{width:65%;padding-top:70px}.hero h1{font-size:clamp(48px,5.8vw,68px)}.visual-tag{max-width:320px;bottom:45px}.technology-visual{top:120px}}
@media(max-width:760px){
 .hero{height:auto;min-height:900px;max-height:none;padding-bottom:290px}
 .hero-copy{width:100%;padding:44px 6% 30px;max-width:none}
 .hero h1{font-size:clamp(39px,10.7vw,68px);line-height:1.08}
 .hero-visual{height:100%;inset:0}
 .hero-visual>img,.hero-visual>video{object-position:77% bottom;height:440px;inset:auto 0 0}
 .hero-image-shade{background:linear-gradient(180deg,#052d35 0%,#052d35 50%,#052d35f2 55%,#052d3544 76%,#052d3577 100%)}
 .hero-copy>p{max-width:520px;font-size:16px;color:#d2e0df}
 .eyebrow{font-size:11px;letter-spacing:.075em}
 .hero-foot{font-size:10px;margin-top:32px;gap:10px}
 .visual-tag{bottom:45px;right:6%;left:6%;max-width:none;padding:14px 18px;font-size:12px}
 .visual-tag strong{font-size:16px}
 .image-note{bottom:15px;right:6%;font-size:12px}
 .technology-visual{position:relative;top:auto}
 .technology-caption{align-items:center}
 .about-band{padding:65px 6%}
 .about-band h2{font-size:34px}
 .project-meta{font-size:12px}
 .header>.button{font-size:12px;min-height:44px}
 .benefit-strip{gap:14px}
 .benefit-strip>div{font-size:14px}
 .topbar,.topbar>a{font-size:11px}
 .kicker{font-size:12px}
 nav a{width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.technology-visual{position:relative;top:auto}}
