/* 2026 interaction layer: intentionally progressive; core content remains usable without JavaScript. */
:root{--glass:rgba(255,255,255,.08);--glass-strong:rgba(255,255,255,.14);--glass-border:rgba(183,211,241,.27);--motion:cubic-bezier(.16,1,.3,1)}
body{transition:opacity .45s var(--motion),background-color .45s ease;overflow-x:hidden}
body.page-ready{opacity:1}
.hero{isolation:isolate;background:#06162c}
.hero::before{content:"";position:absolute;inset:-20%;z-index:0;background:radial-gradient(circle at 78% 30%,rgba(23,104,181,.34),transparent 30%),radial-gradient(circle at 56% 76%,rgba(201,156,71,.16),transparent 25%),linear-gradient(120deg,rgba(4,16,35,.64),rgba(5,26,53,.22),rgba(8,24,44,.55));background-size:130% 130%;animation:luxuryGradient 16s ease-in-out infinite alternate;pointer-events:none}
.hero-art{will-change:transform;transition:transform .15s linear}
.hero-content{max-width:680px!important}
.hero-content .eyebrow{margin-top:10px}
.lottie-orbit{position:absolute;z-index:2;right:7vw;top:17%;width:132px;height:132px;pointer-events:none;opacity:.82;filter:drop-shadow(0 8px 28px rgba(55,143,255,.38));animation:floatOrbit 7s ease-in-out infinite}
.hero .hero-content{z-index:3}
.section-soft{position:relative;background:linear-gradient(135deg,#f4f8fc 0%,#edf4fb 45%,#f7fafc 100%)}
.section-soft::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 10% 12%,rgba(48,128,204,.09),transparent 21%),radial-gradient(circle at 90% 85%,rgba(201,156,71,.09),transparent 23%)}
.section-soft>.container{position:relative}
.statement,.service-card,form,.image-strips figure,.facts-band,.contact-grid>div{border:1px solid var(--glass-border);box-shadow:0 18px 46px rgba(11,31,56,.10);transition:transform .3s var(--motion),box-shadow .3s ease,border-color .3s ease,background .3s ease}
.statement,.service-card,form,.facts-band{background:linear-gradient(145deg,rgba(255,255,255,.90),rgba(238,246,253,.72));backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.statement-dark{background:linear-gradient(145deg,rgba(9,37,70,.86),rgba(11,31,56,.94));border-color:rgba(170,205,241,.2)}
.service-card{overflow:hidden;position:relative}
.service-card::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 15%,rgba(255,255,255,.45) 48%,transparent 75%);transform:translateX(-130%);transition:transform .7s var(--motion);pointer-events:none}
.service-card:hover,.statement:hover{transform:translateY(-7px) scale(1.012);box-shadow:0 28px 60px rgba(11,31,56,.18);border-color:rgba(23,104,181,.46)}
.service-card:hover::after{transform:translateX(130%)}
.image-strips figure{border-color:rgba(255,255,255,.38)}
.image-strips figure:hover{transform:translateY(-5px);box-shadow:0 24px 48px rgba(11,31,56,.22)}
.image-strips figure:hover img{transform:scale(1.05)}
.button{position:relative;overflow:hidden;transition:transform .3s var(--motion),box-shadow .3s ease,background .3s ease!important;box-shadow:0 8px 20px rgba(201,156,71,.18)}
.button::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.45) 50%,transparent 80%);transform:translateX(-140%);transition:transform .65s var(--motion)}
.button:hover,.button:focus-visible{transform:translateY(-3px) scale(1.035)!important;box-shadow:0 15px 30px rgba(201,156,71,.32)}
.button:hover::before,.button:focus-visible::before{transform:translateX(140%)}
.icon{transition:transform .3s var(--motion),box-shadow .3s ease,background .3s ease}.service-card:hover .icon,.statement:hover .icon{transform:scale(1.08) rotate(-4deg);box-shadow:0 9px 22px rgba(23,104,181,.18)}
.facts{padding:0 0 112px;background:linear-gradient(135deg,#f4f8fc,#edf4fb)}
.facts-band{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-radius:18px;overflow:hidden}
.fact{padding:34px 28px;text-align:center;position:relative}.fact+.fact::before{content:"";position:absolute;left:0;top:22%;height:56%;width:1px;background:linear-gradient(transparent,rgba(23,104,181,.28),transparent)}
.fact-number{display:block;color:var(--blue);font:700 clamp(2.35rem,5vw,4.35rem)/1 Manrope,Montserrat,Arial,sans-serif;letter-spacing:-.06em}.fact-label{display:block;margin-top:10px;color:var(--muted);font-size:.83rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}
.values{position:relative;overflow:hidden}.values::before{content:"";position:absolute;width:560px;height:560px;right:-220px;top:-290px;border:1px solid rgba(81,150,224,.17);border-radius:50%;box-shadow:0 0 0 54px rgba(81,150,224,.04),0 0 0 108px rgba(81,150,224,.03);animation:floatOrbit 10s ease-in-out infinite}.values .container{position:relative}
.cta{position:relative;overflow:hidden;background:linear-gradient(115deg,#081e38,#164f8d 46%,#0d2f58 72%,#8b692e);background-size:240% 240%;animation:luxuryGradient 14s ease-in-out infinite alternate}.cta::before,.cta::after{content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}.cta::before{width:430px;height:430px;left:-170px;bottom:-260px;background:radial-gradient(circle,rgba(30,130,237,.54),transparent 68%);animation:floatOrbit 9s ease-in-out infinite}.cta::after{width:330px;height:330px;right:-110px;top:-200px;background:radial-gradient(circle,rgba(230,185,92,.38),transparent 68%);animation:floatOrbit 11s ease-in-out infinite reverse}.cta .container{position:relative;z-index:1}
.contact-grid>div{padding:26px;border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.86),rgba(239,246,253,.65));backdrop-filter:blur(10px)}
.contact-grid>div:hover{transform:translateY(-4px);box-shadow:0 22px 45px rgba(11,31,56,.15)}
.motion-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .75s var(--motion),transform .75s var(--motion)}
.motion-ready .reveal.reveal-left{transform:translateX(-35px)}.motion-ready .reveal.reveal-right{transform:translateX(35px)}
.motion-ready .reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}.motion-ready .reveal[data-delay="1"]{transition-delay:.09s}.motion-ready .reveal[data-delay="2"]{transition-delay:.18s}.motion-ready .reveal[data-delay="3"]{transition-delay:.27s}
.section-is-active{animation:sectionFocus .75s var(--motion)}
@keyframes luxuryGradient{0%{background-position:0% 30%}100%{background-position:100% 70%}}@keyframes floatOrbit{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-13px,0)}}@keyframes sectionFocus{0%{filter:brightness(1)}45%{filter:brightness(1.04)}100%{filter:brightness(1)}}
@media(max-width:700px){.lottie-orbit{width:86px;height:86px;right:5vw;top:13%;opacity:.65}.facts{padding-bottom:76px}.facts-band{grid-template-columns:1fr}.fact{padding:24px}.fact+.fact::before{top:0;left:20%;width:60%;height:1px}.hero::before{inset:-35%;animation-duration:20s}.contact-grid>div{padding:0;border:0;background:transparent;box-shadow:none;backdrop-filter:none}.contact-grid>div:hover{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.motion-ready .reveal{opacity:1!important;transform:none!important}.lottie-orbit{display:none}}
