body{overflow-x:hidden}.scroll-progress{position:fixed;z-index:100;left:0;top:0;height:3px;width:100%;background:var(--red);transform:scaleX(0);transform-origin:left;will-change:transform}.cursor-glow{position:fixed;z-index:3;width:280px;height:280px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(103,184,223,.16),transparent 67%);transform:translate(-50%,-50%);opacity:0;transition:opacity .25s}.site-header{transition:height .35s,box-shadow .35s}.site-header.scrolled{height:78px;box-shadow:0 12px 35px rgba(11,29,50,.08)}
.hero-visual>img{height:112%;transition:transform .25s linear,filter .5s;will-change:transform}.hero-visual:hover>img{filter:saturate(.95)}.hero-visual:before{content:"";position:absolute;z-index:3;top:-35%;left:-75%;width:48%;height:175%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.33),transparent);transform:rotate(8deg);animation:glassSweep 6s ease-in-out 1.4s infinite;pointer-events:none}@keyframes glassSweep{0%,62%{left:-75%}100%{left:145%}}
.trust-line{overflow:hidden;padding:0}.ticker-track{height:100%;width:max-content;display:flex;align-items:center;gap:44px;padding-left:44px;animation:ticker 25s linear infinite}.trust-line:hover .ticker-track{animation-play-state:paused}.trust-line i{flex:0 0 auto}@keyframes ticker{to{transform:translateX(-50%)}}
.service-card{transition:transform .18s ease,box-shadow .3s;transform-style:preserve-3d;will-change:transform}.service-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(103,184,223,.13),transparent 42%);opacity:0;transition:.3s;pointer-events:none}.service-card:hover:before{opacity:1}.service-card:hover{z-index:2;box-shadow:0 24px 55px rgba(14,33,52,.15)}.service-card>*{position:relative;z-index:1}.service-card .icon{transition:transform .35s}.service-card:hover .icon{transform:translateY(-5px) rotate(-5deg) scale(1.08)}
.stamp{animation:stampFloat 4.5s ease-in-out infinite}@keyframes stampFloat{0%,100%{transform:translateY(0) rotate(-8deg)}50%{transform:translateY(-12px) rotate(-3deg)}}.area-list span,.area-list strong{transition:transform .3s,color .3s}.area-list strong:hover{transform:translateX(12px);color:var(--blue)}
.reveal{transform:translateY(38px);filter:blur(5px);transition:opacity .9s cubic-bezier(.2,.75,.2,1),transform .9s cubic-bezier(.2,.75,.2,1),filter .9s}.reveal.visible{filter:none}.service-card:nth-child(2){transition-delay:.1s}.service-card:nth-child(3){transition-delay:.2s}.floating-card{animation:floatCard 5s ease-in-out infinite}@keyframes floatCard{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@media(max-width:900px){.cursor-glow{display:none}.site-header.scrolled{height:76px}.ticker-track{animation-duration:19s}.trust-line{padding:0;overflow:hidden}.service-card{transition-delay:0s!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.cursor-glow{display:none}}

/* Restrained, service-business controls */
.button.primary{background:var(--navy);box-shadow:none;border-bottom:3px solid var(--red);padding:15px 22px;transition:background .2s}.button.primary:hover{background:#162d47}.text-link{font-weight:700;border-bottom:1px solid #9babb6;padding-bottom:4px}.service-card a{font-size:13px;letter-spacing:.02em;border-bottom:1px solid currentColor;padding-bottom:4px}.service-card:hover{transform:translateY(-3px)}
.site-credit{min-height:76px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:16px;color:#7b8790;font-size:11px;background:#f8fafb;transition:background .2s}.site-credit:hover{background:#eef3f6}.site-credit img{width:138px;height:auto;clip-path:none}
