/* Geometry measured against the approved 1122 × 1402 references. */
:root{--shell:64.5rem}
.hero{min-height:32.1rem;grid-template-columns:42.5% 57.5%}
.hero-visual{right:-1vw;top:0;width:61%;height:100%}
.hero-visual__picture,.contact-visual>picture{position:absolute;inset:0;display:block}
.hero-visual__picture img,.contact-visual>picture img{display:block;width:100%;height:100%}
.hero-visual canvas{opacity:.24;mix-blend-mode:screen}
.hero-visual--home,.hero-visual--solutions{mask-image:none;overflow:visible}
.orbital{border-color:rgba(207,121,8,.17);inset:22% 10% 25% 27%}
.orbital--two{border-color:rgba(10,112,119,.13);inset:18% 21% 18% 22%}
.hero-core-brand{position:absolute;z-index:4;left:55%;top:48%;width:clamp(3rem,4vw,4.4rem);aspect-ratio:80/92;transform:translate(-50%,-50%) scaleY(.95);background:url("../../images/brand-icon.svg") center/contain no-repeat;filter:blur(.22px) drop-shadow(0 1px 4px rgba(120,72,8,.13)) saturate(.78) contrast(.92);opacity:.72;mix-blend-mode:multiply;pointer-events:none}
.hero-core-brand:before{content:"";position:absolute;inset:-24%;border-radius:50%;background:radial-gradient(circle at 33% 22%,rgba(255,255,255,.72),transparent 31%),linear-gradient(155deg,rgba(255,255,255,.2),transparent 45%,rgba(239,174,63,.08));mix-blend-mode:screen;filter:blur(2px)}
.hero-core-brand:after{content:"";position:absolute;left:-8%;right:-8%;top:23%;height:22%;border-radius:50%;background:rgba(255,255,255,.24);filter:blur(5px);transform:rotate(-18deg)}
.contact-brand-panel{position:absolute;z-index:1;left:50%;top:7%;width:22%;aspect-ratio:.78;transform:translateX(-50%) perspective(700px) rotateY(-3deg);border:1px solid rgba(255,255,255,.42);border-radius:clamp(1rem,2vw,1.8rem);background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,250,241,.025));box-shadow:inset 0 0 0 1px rgba(15,112,119,.035),inset 0 1px 10px rgba(255,255,255,.26),0 18px 38px rgba(103,70,25,.035);backdrop-filter:blur(1.5px);opacity:.58;mask-image:linear-gradient(#000 0,#000 72%,transparent 100%)}
.contact-brand-panel>span{position:absolute;inset:25%;background:url("../../images/brand-icon.svg") center/contain no-repeat;opacity:.42;filter:blur(.45px) saturate(.68) contrast(.9);mix-blend-mode:multiply}
.contact-brand-panel:after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,rgba(255,255,255,.38),transparent 38%,rgba(220,162,68,.06));pointer-events:none}
.contact-table-orb-brand{position:absolute;z-index:3;left:64%;top:68%;width:7%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 24%,rgba(255,255,255,.9),rgba(255,250,238,.2) 38%,rgba(218,154,48,.09) 68%,rgba(255,255,255,.38));box-shadow:inset -5px -7px 12px rgba(191,120,19,.1),inset 5px 4px 10px rgba(255,255,255,.65),0 5px 16px rgba(120,75,15,.12);pointer-events:none}
.contact-table-orb-brand:before{content:"";position:absolute;inset:25%;background:url("../../images/brand-icon.svg") center/contain no-repeat;opacity:.57;filter:blur(.25px) saturate(.8);mix-blend-mode:multiply}
.contact-table-orb-brand:after{content:"";position:absolute;inset:4%;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.65),transparent 38%,rgba(255,255,255,.1));filter:blur(.5px)}
.people-card{height:15.75rem;min-height:0;grid-template-columns:43% 57%;align-items:stretch}
.people-illustration{position:relative;min-height:0}
.people-illustration img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%;transform:none}
.people-card>div:last-child{display:flex;flex-direction:column;justify-content:center;padding:1.35rem 2.35rem}
.people-card h2{margin-bottom:.55rem}.people-card p{margin-bottom:.45rem}.mini-steps{margin-top:.9rem}
.page-home>.section{padding-block:2rem 1.75rem}
.page-home .section-head{margin-bottom:.75rem}
.page-home .solution-card{height:12.4rem;min-height:0}
.page-home .solution-card h3{margin:.55rem 0 .35rem}
.page-home .solution-card p{font-size:.7rem;line-height:1.38}
.page-home .solution-card>a{position:absolute;right:1.1rem;bottom:1rem}
.page-solutions .hero{min-height:33rem}
.page-vision .hero{min-height:29.2rem}
.page-solutions>.section{padding-block:1.55rem 1.8rem}
.page-solutions .section-head{margin-bottom:.75rem}
.solution-grid--detailed .solution-card{min-height:32rem}
.solution-grid--detailed .solution-art{height:18.7rem}
.page-solutions .value-band{margin-top:0}
.page-vision>.value-band{transform:none;margin-top:clamp(1.25rem,1.6vw,1.75rem);margin-bottom:0}
.page-vision .vision-story{padding-top:clamp(1.75rem,2.2vw,2.25rem);padding-bottom:.65rem;align-items:center}
.vision-art{min-height:23rem}
.vision-points article{padding-top:.8rem;padding-bottom:.8rem}
.approach{margin-top:.8rem;padding:1.4rem 1.6rem;align-items:center}
.approach-steps article{padding-inline:.75rem}
.page-contact .hero{min-height:27rem}
.contact-grid{height:28.7rem;align-items:stretch;gap:1.35rem;padding-top:1.45rem;padding-bottom:0}
.contact-form{padding:1.25rem 1.55rem}
.contact-form>p{margin-bottom:.55rem}
.field-grid{gap:.45rem 1rem}
.contact-form label{margin-bottom:.42rem}
.contact-form input,.contact-form textarea{padding:.58rem .67rem;margin-top:.2rem}
.contact-form textarea{height:5.8rem;min-height:5.8rem}
.contact-options{grid-template-rows:repeat(3,1fr);gap:.75rem}
.contact-options article{min-height:0;padding:1rem 1.15rem}
.page-contact .contact-grid+.section{padding-top:1.9rem}
.site-footer{margin-top:auto;padding:1.6rem 0 .8rem}
@media(max-width:960px){:root{--shell:calc(100% - 2.5rem)}.hero{min-height:32rem}.page-solutions .hero,.page-vision .hero{min-height:30rem}.people-card{height:15rem}.people-card>div:last-child{padding:1.2rem 1.5rem}}
@media(max-width:720px){:root{--shell:calc(100% - 1.5rem)}.hero,.page-solutions .hero,.page-vision .hero{min-height:auto}.hero-visual{width:calc(100% + 1.5rem);height:22rem;right:auto}.people-card{height:auto}.people-illustration{height:15rem}.people-illustration img{position:absolute}.people-card>div:last-child{display:block;padding:1.5rem}.page-home .solution-card{height:auto;min-height:12.4rem}.solution-grid--detailed .solution-art{height:21rem}.contact-grid{height:auto;align-items:initial}.contact-options{grid-template-rows:none}.contact-form textarea{height:7.5rem}}
