:root{--ease-premium:cubic-bezier(.22,.75,.25,1)}
.site-header{transition:box-shadow .35s var(--ease-premium),border-color .35s,background .35s}
.site-header.is-scrolled{box-shadow:0 9px 28px #20283808;border-color:#D8E1E7;background:#FFFFFFF5;backdrop-filter:blur(12px)}
.reading-progress{position:absolute;top:0;left:0;right:0;height:2px;background:transparent;overflow:hidden;pointer-events:none}
.reading-progress>span{display:block;width:100%;height:100%;transform:scaleX(var(--reading-progress,0));transform-origin:left;background:linear-gradient(90deg,var(--teal),var(--indigo),var(--magenta))}
.brand-name{letter-spacing:-.04em}
.brand img{transition:transform .4s var(--ease-premium)}
.brand:hover img{transform:translateY(-2px)}
.main-nav>a:not(.btn){position:relative;text-decoration:none!important}
.main-nav>a:not(.btn):after{content:"";position:absolute;left:0;right:0;bottom:7px;height:1px;background:var(--teal);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-premium)}
.main-nav>a:not(.btn):hover:after,.main-nav>a[aria-current=page]:not(.btn):after{transform:scaleX(1)}
.services-menu[open] .service-dropdown{animation:menu-arrive .24s var(--ease-premium) both}
.service-dropdown a{transition:background .2s,transform .25s var(--ease-premium)}
.service-dropdown a:hover{transform:translateX(3px)}
.btn{position:relative;overflow:hidden;isolation:isolate;box-shadow:0 5px 14px #0E6B7C0A;transition:background .2s,transform .3s var(--ease-premium),box-shadow .3s var(--ease-premium)}
.btn:after{content:"";position:absolute;inset:-70% -20%;background:linear-gradient(110deg,transparent 42%,#FFFFFF18 50%,transparent 58%);transform:translateX(-130%);pointer-events:none;z-index:-1}
.btn:hover:after,.btn:focus-visible:after{animation:button-light .7s var(--ease-premium)}
.btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px #0E6B7C1A}
.btn:active{transform:translateY(0);box-shadow:none}
.btn.secondary{box-shadow:none}
.arrow{transition:transform .3s var(--ease-premium)}
.home-hero{padding:64px 0 61px;position:relative;background:radial-gradient(ellipse at 85% 45%,#EDF0F6 0%,transparent 44%),linear-gradient(145deg,#fff 10%,#F5F7F9 100%)}
.hero-grid{grid-template-columns:1.25fr .95fr;gap:48px;position:relative}
.hero-copy.entrance{animation:none}
.hero-title{font-size:clamp(40px,4.12vw,62px);letter-spacing:-.045em;line-height:1.14}
.hero-title>span{position:relative}
.hero-title em{color:var(--teal)}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
.hero-title em{background:linear-gradient(105deg,#0E6B7C 10%,#3E517C 48%,#9A2E86 90%);background-size:180% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:text-light 2.5s var(--ease-premium) 1}
}
.hero-support{font-size:19px;max-width:550px;line-height:1.7}
.hero-scope{display:flex;align-items:center;gap:10px}
.hero-scope:before{content:"";width:5px;height:5px;flex:0 0 5px;background:var(--teal);border-radius:50%}
.hero-visual{position:relative;min-width:0;width:100%;margin:0;perspective:1200px}
.hero-art-stage{position:relative;aspect-ratio:1/1;isolation:isolate}
.hero-art-halo{position:absolute;inset:10% -6%;background:radial-gradient(ellipse at 31% 52%,#C9E6EA70 0,transparent 48%),radial-gradient(ellipse at 72% 33%,#D7DEEE90 0,transparent 47%),radial-gradient(ellipse at 77% 75%,#EAD8E960 0,transparent 42%);border-radius:50%;animation:halo-arrive 1.5s var(--ease-premium) both;pointer-events:none}
.hero-art-grid{position:absolute;inset:9% 3%;background-image:radial-gradient(#BCCAD5 1px,transparent 1px);background-size:25px 25px;opacity:.35;mask-image:radial-gradient(ellipse,#000 10%,transparent 67%);transform:rotate(-8deg);pointer-events:none}
.art-canvas{position:relative;transform:perspective(1200px) translate3d(var(--art-x,0px),var(--art-y,0px),0) rotateX(var(--art-rx,0deg)) rotateY(var(--art-ry,0deg));transition:transform .6s var(--ease-premium);transform-style:preserve-3d;will-change:transform}
.sculpture-float{animation:sculpture-drift 6s ease-in-out 1.3s 2}
.sculpture-image{width:100%;height:auto;object-fit:contain;animation:sculpture-arrive 1.25s var(--ease-premium) both;user-select:none;-webkit-user-drag:none}
.hero-service-labels{position:absolute;inset:0;pointer-events:none}
.hero-service{position:absolute;display:flex;align-items:center;gap:8px;padding:9px 12px;background:#FFFFFFF5;border:1px solid #D8E2E8;border-radius:6px;color:var(--accent);font-size:12px;line-height:1.5;font-weight:600;box-shadow:0 9px 20px #20283807;animation:label-arrive .8s var(--ease-premium) both}
.hero-service.security{top:17%;left:-5%;animation-delay:.4s}
.hero-service.cloud{top:6%;right:0;animation-delay:.5s}
.hero-service.engineering{bottom:5%;right:-3%;animation-delay:.6s}
.service-bead{width:5px;height:5px;flex:0 0 5px;border-radius:50%;background:var(--accent)}
.hero-visual figcaption{font-size:12px;color:var(--muted);line-height:1.6;max-width:460px;margin:9px auto 0;text-align:center}
.hero-visual figcaption>span{display:block;color:var(--ink);font-weight:600;margin-bottom:3px}
.section-heading h2{letter-spacing:-.045em}
.section-heading .eyebrow{letter-spacing:.11em}
.services-section{position:relative;background:#fff}
.service-card{background:linear-gradient(145deg,#fff 55%,var(--tint));transition:transform .45s var(--ease-premium),box-shadow .45s var(--ease-premium),border-color .3s}
.service-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px #20283810}
.service-card:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(110deg,transparent 35%,#FFFFFF80 50%,transparent 65%);pointer-events:none;opacity:0}
.service-card:hover:after{animation:card-light .8s var(--ease-premium)}
.service-art{background:linear-gradient(145deg,#FFFFFF80,var(--tint));position:relative}
.service-art svg{transition:transform .5s var(--ease-premium);transform-origin:center}
.service-card:hover .service-art svg{transform:translateY(-4px) scale(1.035)}
.service-card:hover .card-link .arrow{transform:translateX(6px)}
.card-link{transition:color .3s}
.service-index{display:flex;align-items:center;gap:8px}
.service-index:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}
.coordination{background:radial-gradient(ellipse at 8% 20%,#16313D 0%,transparent 53%),linear-gradient(130deg,#141B26,#1B2331);position:relative}
.coordination:before{content:"";position:absolute;inset:0;background-image:radial-gradient(#94B0C020 .7px,transparent .7px);background-size:26px 26px;mask-image:linear-gradient(90deg,#000,transparent 55%);pointer-events:none}
.coord-grid{position:relative}
.coord-copy h2>span{color:#A9D6DC}
@supports ((background-clip:text) or (-webkit-background-clip:text)){
.coord-copy h2>span{background:linear-gradient(100deg,#A9D6DC,#C4CDEA);background-clip:text;-webkit-background-clip:text;color:transparent}
}
.scenario{background:linear-gradient(145deg,#23303A,#1B2430);border-color:#445364;box-shadow:0 25px 65px #00000018}
.scenario-row{transition:background .3s,border-color .3s}
.scenario-row:hover{border-top-color:#76909D}
.scenario-icon{transition:transform .35s var(--ease-premium)}
.scenario-row:hover .scenario-icon{transform:translateY(-3px)}
.sample-sheet,.decision-sheet{box-shadow:0 18px 45px #2028380B}
.sample-heading{background:linear-gradient(115deg,var(--tint),#F9FBFC)}
.closing{background:radial-gradient(ellipse at 100% 110%,#226A84 0%,transparent 50%),linear-gradient(110deg,#0E6B7C,#0D5C71)}
.closing:after{border-color:#FFFFFF25;width:490px;height:490px;right:-50px;top:-150px}
.closing:before{content:"";position:absolute;width:330px;height:330px;border:1px solid #FFFFFF18;border-radius:50%;right:30px;top:-70px;pointer-events:none}
.footer-invitation>a .arrow{transition:transform .3s var(--ease-premium)}
.footer-invitation>a:hover .arrow{transform:translateX(5px)}
.footer-column a{transition:color .25s}
.contact-form{box-shadow:0 23px 60px #20283809}
.field input,.field select,.field textarea{transition:border-color .2s,box-shadow .2s}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #0E6B7C0D}
.optional-details[open] .optional-grid{animation:menu-arrive .24s var(--ease-premium)}
.motion-paused .sculpture-float,.motion-paused .sculpture-image,.motion-paused .hero-service,.motion-paused .hero-art-halo{animation-play-state:paused}
@keyframes menu-arrive{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
@keyframes button-light{to{transform:translateX(130%)}}
@keyframes card-light{0%{left:-100%;opacity:0}20%{opacity:.6}100%{left:100%;opacity:0}}
@keyframes text-light{from{background-position:100% 0}to{background-position:0 0}}
@keyframes sculpture-arrive{from{opacity:0;transform:translateY(24px) scale(.93) rotate(-3deg)}to{opacity:1;transform:none}}
@keyframes sculpture-drift{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes halo-arrive{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}
@keyframes label-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes draft-arrive{from{opacity:.3;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(min-width:1500px){
.home-hero{padding-top:72px;padding-bottom:70px}
}
@media(max-width:1150px){
.hero-grid{grid-template-columns:1.22fr .98fr;gap:32px}
.hero-service{font-size:11px;padding:8px 10px}
.hero-service.security{left:-4%;top:17%}
.hero-service.engineering{right:-1%;bottom:3%}
.hero-visual figcaption{font-size:12px}
}
@media(max-width:960px){
.home-hero{padding:49px 0 44px}
.hero-grid{grid-template-columns:1fr;gap:22px}
.hero-title{font-size:56px}
.hero-visual{max-width:535px;margin-inline:auto}
.hero-art-stage{aspect-ratio:1.12/1}
.art-canvas{max-width:460px;margin-inline:auto}
.hero-service{font-size:12px}
.hero-service.security{left:-1%;top:24%}
.hero-service.cloud{right:1%;top:9%}
.hero-service.engineering{right:0;bottom:0}
.hero-visual figcaption{margin-top:14px;max-width:470px}
.hero-support{max-width:665px}
.service-card:hover{transform:translateY(-5px)}
}
@media(max-width:760px){
.home-hero{padding:37px 0 37px}
.hero-title{font-size:clamp(38px,7.5vw,54px)}
.main-nav.is-open{animation:menu-arrive .22s var(--ease-premium)}
.main-nav>a:not(.btn):after{bottom:5px;left:6px;right:6px}
.hero-visual{max-width:490px}
.hero-art-stage{aspect-ratio:auto}
.art-canvas{width:100%;max-width:340px}
.sculpture-image{height:300px;width:100%;object-fit:contain}
.hero-service-labels{position:static;display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:8px}
.hero-service{position:static!important;font-size:12px;padding:7px 10px;border-radius:5px;box-shadow:none;animation-delay:0s!important}
.hero-art-halo{inset:0 2% 12%}
.hero-visual figcaption{font-size:12px;margin-top:13px;max-width:420px}
.hero-art-grid{inset:0 10% 17%}
.art-canvas{will-change:auto}
.hero-scope{font-size:13px}
.closing:before{right:-160px}
}
@media(max-width:480px){
.home-hero{padding:31px 0 33px}
.hero-title{font-size:clamp(34px,9.8vw,40px);line-height:1.13}
.hero-grid{gap:20px}
.hero-support{font-size:17px}
.art-canvas{max-width:310px}
.sculpture-image{height:262px}
.hero-service{font-size:12px;padding:6px 9px}
.hero-service-labels{gap:6px;margin-top:4px}
.hero-visual figcaption{font-size:12px;max-width:340px}
.hero-visual figcaption>span{font-size:13px}
.service-card:hover{transform:translateY(-3px)}
.service-card:hover .service-art svg{transform:none}
.btn:hover{transform:translateY(-2px)}
.section-heading .eyebrow{letter-spacing:.07em}
}
@media(max-width:360px){
.hero-title{font-size:34px}
.sculpture-image{height:238px}
.hero-service{font-size:11.5px;padding:6px 8px}
}
@media(prefers-reduced-motion:reduce){
.art-canvas,.sculpture-float,.sculpture-image{transform:none!important;animation:none!important}
.hero-service,.hero-art-halo,.hero-title em{animation:none!important}
.btn:hover,.service-card:hover{transform:none}
.reading-progress{display:none}
*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
