/* Royal-blue identity and scroll-driven cleaning chapters. */
:root{--royal:#2464d7;--cyan:#18b6e8;--mint:#68d5ff;--canvas:#171a20;--panel:#252b35}
body{--accent:#2464d7!important}main{overflow:visible}
.utility,.header,.home-page .header{background:#151a23;color:#f4f8ff;border-color:#3b465a}
.header .brand,.home-page .brand{background:transparent;box-shadow:none;padding:0}
.brand img{width:100px;height:86px;object-fit:contain}.brand-extension{color:#fff;border-color:#54647d}.brand-location{color:#8fdfff}
.footer-brand img{background:transparent;width:88px;height:83px}.footer-brand small{color:#80d9ff}
.nav a:hover,.nav .active,.navgroup-button:hover{color:#70d9ff}
.dropdown,.nav.open{background:#222b39;color:white}.dropdown a:hover{background:#31517f}
.header-cta,.home-page .header-cta,.btn.primary,.home-page .hero-actions .primary{background:#2464d7;color:#fff;border:1px solid #5795ff;box-shadow:0 3px 22px #2464d735}
.btn.primary:hover,.header-cta:hover{background:#347aef;box-shadow:0 4px 28px #2464d777}
.inner-page .hero-actions .btn.primary{background:#2464d7;color:white;border-color:#5795ff}
.inner-page .page-hero .eyebrow,.inner-page .simple-hero .eyebrow{color:#81dfff}
.home-page .home-hero-bg{background:linear-gradient(90deg,#101824de,#1018248f 38%,#10182408 78%),url('/assets/team-human-symbol-20261015.fast.webp') center/cover}
.home-page .home-hero-bg{top:110px;background-position:center top}
.home-page .home-hero-inner{padding-top:148px}.home-page .home-hero h1 em{color:#6ed9ff}
.home-page .home-hero p{color:#f0f5ff}.home-page .hero-kicker{color:#b6eaff}
.home-page .statement{background:#2464d7;color:white}.statement-grid>span{color:white}
.scroll-phrase{background:#62d4fa;color:#102141;border-color:#a4edff}.scroll-phrase-track i{color:#2156bd}
.home-page .intro,.confidence-section{background:#eef2f7;color:#182335}
.home-page .intro-layout p,.confidence-grid p{color:#4e5b70}.home-page .intro .eyebrow,.confidence-grid article span{color:#2464d7}
.confidence-grid article{border-color:#bdcadd}.home-page .intro .text-link{color:#245bbf;border-color:#245bbf}
.closing{background:#214fb2}.closing .eyebrow{color:#b2edff}.closing .btn.primary{background:white;color:#2154b7;border-color:white}
.map-teaser{background:#202b3c}.map-teaser-heading{display:block}.map-teaser-heading .eyebrow{margin-bottom:15px}.map-teaser-heading>p:not(.eyebrow){max-width:760px}
.map-choices{box-shadow:none}.city-results{color:#1e334e}.map-teaser .featured-cities button{color:#d5e7ff}
.map-teaser .featured-cities button.selected,.map-teaser .region-tabs button.selected,.map-teaser .service-toggles button.selected{background:#2464d7;color:white;border-color:#6b9eff}
.care-scene{padding:64px 0 56px;background:#eaf0f8;color:#1a273c;border-top:1px solid #aac9f1;position:relative;isolation:isolate}
.care-deep{background:#202735;color:#f1f6ff;border-color:#41699e}
.care-heading{margin-bottom:30px}.care-heading .eyebrow{color:#2464d7;margin-bottom:14px}.care-deep .eyebrow{color:#72dfff}
.care-heading h2{font-size:58px;line-height:1.1;margin-bottom:14px}.care-heading>p:last-child{font-size:20px;margin:0;color:#53657c}.care-deep .care-heading>p:last-child{color:#bdcde6}
.care-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:54px;align-items:start}
.care-visual{position:sticky;top:24px;height:min(690px,80svh);min-height:430px;overflow:hidden;background:#21364c;isolation:isolate}
.care-visual img{width:100%;height:100%;object-fit:cover;object-position:65% center;transform:scale(var(--care-zoom,1));transition:transform .2s linear}
.care-deep .care-visual img{object-position:50% center}
.care-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,#0b1521db)}
.care-visual:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 30%,#72dcff33 47%,#ffffff44 49%,transparent 65%);transform:translateX(-125%)}
.care-visual.flash:after{animation:care-sweep 1.2s ease-out both}
.care-caption{position:absolute;left:28px;right:28px;bottom:76px;color:white}.care-caption>span{font-size:11px;color:#b4eaff;font-weight:700}.care-caption strong{display:block;font:800 34px/1.12 Manrope,sans-serif;min-height:78px;max-width:460px;margin-top:14px}
.care-visual.flash .care-caption strong{animation:caption-in .5s ease-out both}
.care-meter{position:absolute;left:28px;right:28px;bottom:52px;height:3px;background:#ffffff40}.care-meter span{display:block;width:14.28%;height:100%;background:#70dcff;box-shadow:0 0 12px #45cbff;transition:width .45s}
.care-count{position:absolute;bottom:20px;left:28px;color:white;font:700 12px Manrope}
.care-tasks{list-style:none;margin:0;padding:0;border-top:1px solid #bbcce3}
.care-task{display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:start;gap:18px;padding:38px 0;border-bottom:1px solid #bbcce3;position:relative;transition:color .4s,transform .5s;min-height:178px}
.care-task:before{content:'';height:2px;background:#2464d7;box-shadow:0 0 12px #329dff88;position:absolute;bottom:-1px;left:0;width:0;transition:width .65s}
.care-task-number{font:700 12px Manrope;padding-top:9px;color:#576b88}.care-task h3{font-size:27px;line-height:1.2;margin:0 0 13px}.care-task p{font-size:16px;color:#56667d;margin:0;line-height:1.65}
.care-task-mark{font-size:25px;color:#2464d7;transition:transform .5s}.care-task.is-active h3{color:#2464d7}.care-task.is-active:before{width:100%}.care-task.is-active .care-task-mark{transform:rotate(90deg)}
.care-deep .care-tasks,.care-deep .care-task{border-color:#43516a}.care-deep .care-task p{color:#c0cde2}.care-deep .care-task-number{color:#9fbcdf}.care-deep .care-task.is-active h3,.care-deep .care-task-mark{color:#70dcff}.care-deep .care-task:before{background:#70dcff}
.care-scope{font-size:12px;color:#62748d;margin:24px 0 0}.care-deep .care-scope{color:#a5b6cd}.care-detail>.text-link{color:#2464d7;border-color:#2464d7}.care-deep .text-link{color:#70dcff;border-color:#70dcff}
.motion-enabled:not(.motion-paused) .care-task.is-active>div{animation:task-pop .55s cubic-bezier(.2,.75,.25,1) both}
.home-hero,.page-hero,.simple-hero,.planner-hero,.care-scene,.service-context,.closing,.confidence-section{position:relative;isolation:isolate}
.ambient-sweep{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}
.ambient-sweep:before{content:'';position:absolute;top:0;bottom:0;left:-20%;width:24%;background:linear-gradient(110deg,transparent,#6ecaff12,transparent);transform:skewX(-16deg);animation:ambient-pass 9s linear infinite;animation-play-state:paused}
.is-lit>.ambient-sweep:before{animation-play-state:running}
.light-field:before{background:linear-gradient(112deg,transparent 43%,#66d6ff28 48%,#ffffff22 50%,transparent 57%);animation:hero-light 12s ease-in-out infinite alternate}
.light-field:after{border:0;border-right:1px solid #9fe7ff55;border-bottom:1px solid #9fe7ff55;inset:18% 4% 8% 78%;animation:line-breathe 6s ease-in-out infinite}
.motion-rail{height:3px;background:#364764}.motion-rail:after{height:3px;width:40%;background:linear-gradient(90deg,transparent,#2464d7,#84e7ff,transparent);box-shadow:0 0 16px #328bff}
.story-progress span{box-shadow:0 0 18px #55b8ff}.story-number,.story-panel a{color:#80dfff}
.motion-control{background:#1c3970ed;border-color:#72a8ff}.motion-control:hover{background:#2464d7}
.inner-page .contact-layout>div>p,.step p{color:#c4d3e9}.contact-first .contact-card{background:#25364e;color:white}.contact-first .contact-card p{color:#c4d3e9}.contact-detail a{color:#70d9ff}
.brand-wordmark{display:flex;flex-direction:column;align-items:center;gap:3px;flex-shrink:0}.home-page .brand .brand-wordmark img,.inner-page .brand .brand-wordmark img{width:64px;height:60px}.brand-wordmark b{font:800 10px/1.1 Manrope,sans-serif;color:#fff;white-space:nowrap}.footer-brand .brand-wordmark img{width:68px;height:66px}
#page-progress{background:#55caff;box-shadow:0 0 12px #3196ff}
.home-page .home-hero-bg{background:#192a40 url('/assets/city-poster.fast.webp') center/cover}
.hero-film{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#091323c9,#0913237a 46%,#09132326)}
.home-page .home-hero:before{display:none}
.home-page .home-hero h1{max-width:760px}
.home-page .hero-bottom>span:last-child{font-size:10px}
.motion-control{bottom:88px}
@keyframes care-sweep{from{transform:translateX(-125%)}to{transform:translateX(125%)}}
@keyframes caption-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes task-pop{from{transform:translateX(12px)}to{transform:none}}
@keyframes ambient-pass{to{left:120%}}
@keyframes hero-light{from{opacity:.35;translate:-12% 0}to{opacity:1;translate:15% 0}}
@keyframes line-breathe{50%{opacity:.25;translate:0 -12px}}
@media(max-width:900px){.care-layout{gap:28px}.care-heading h2{font-size:48px}.care-caption strong{font-size:28px}.care-task{gap:12px}.care-task h3{font-size:24px}}
@media(max-width:760px){.brand-wordmark img{width:55px;height:51px}.brand-wordmark b{font-size:9px}.brand-extension{font-size:12px}.care-scene{padding:44px 0}.care-heading{margin-bottom:24px}.care-heading h2{font-size:38px}.care-heading>p:last-child{font-size:18px}.care-layout{grid-template-columns:minmax(0,1fr);gap:0}.care-visual{top:0;height:34svh;min-height:240px;max-height:310px;z-index:2;margin:0 -19px 8px}.care-visual img{object-position:65% 40%}.care-caption{left:20px;right:20px;bottom:48px}.care-caption strong{font-size:25px;min-height:30px;margin-top:7px}.care-meter{left:20px;right:20px;bottom:32px}.care-count{left:20px;bottom:10px;font-size:10px}.care-task{min-height:165px;padding:28px 0;gap:12px;grid-template-columns:24px minmax(0,1fr) 18px;scroll-margin-top:36svh}.care-task h3{font-size:23px}.care-task p{font-size:15px}.home-page .home-hero-inner{padding-top:136px}.home-page .home-hero-bg{background:linear-gradient(90deg,#101824df,#10182465),url('/assets/team-human-symbol-20261015.fast.webp') 61% center/cover}.confidence-grid h3{font-size:25px}}
html.motion-paused .care-visual img{transform:none!important}html.motion-paused .ambient-sweep{display:none}
@media(prefers-reduced-motion:reduce){.care-visual img{transform:none!important}.ambient-sweep{display:none}}
