/* Shared supplied identity; transparent artwork, no logo tile. */
body .header,body.v2 .header,body.v3 .header{background:#f7fafb;color:#123d52;border-bottom:1px solid #d9e6e9}
body.reference-v1 .header{position:sticky;top:0}
body .nav-wrap,body.premium .nav-wrap,body.premium.v2 .nav-wrap{height:126px;min-height:126px;padding:5px 5%;gap:22px}
body .header .logo,body.premium .header .logo{width:178px;padding:0;background:transparent!important;border:0;border-radius:0;flex-shrink:0}
body .header .logo img,body.premium .header .logo img{width:178px;height:116px;object-fit:contain;background:transparent!important}
body.reference-v1 nav{color:#123d52}body.reference-v1 .services-toggle{color:#123d52}
body.reference-v1 .ref-hero{padding-top:65px}body.reference-v1 .ref-hero.home-hero{min-height:540px}
body footer,body.v2 footer,body.v3 footer{background:#edf4f4;color:#204655;border-top:1px solid #d5e3e5}
body footer h2,body footer h3,body footer a,body footer p,body.v2 footer p,body.v3 footer p{color:#204655}
body footer a:hover{color:#006b4c}
body footer .footer-brand>img,body.premium footer .footer-brand>img{width:210px;height:142px;object-fit:contain;padding:0;background:transparent!important;border-radius:0}
body .footer-base{border-color:#cbdcde}
body.v2{--bg:#f4f9fb;--surface:#fff;--ink:#13435e;--muted:#486371;--accent:#087c57;--bright:#e0f1ee;--line:#ccdee5;--dark:#0a4a70}
body.v2 .header-cta,body.v2 .btn{background:#096b53;color:white}body.v2 .btn:hover,body.v2 .header-cta:hover{background:#5c356f;color:white}
body.v2 .process,body.v2 .service-selector{background:linear-gradient(120deg,#e9f3fa,#e3f2e9)}
body.v2 .coverage{background:#0a4a70}body.v2 .coverage h2,body.v2 .coverage p,body.v2 .coverage .section-label{color:#fff}
body.premium.v2 .hero:after,body.premium.v2 .page-intro:after{background:linear-gradient(90deg,#073750ed,#073750b8 50%,#07375020)}
body.v2 .cta-band{background:linear-gradient(100deg,#e3f2ed,#ece6f2);color:#13435e}
body.v2 .service-card>div{border-color:#0d8a63}body.v2 .service-card:nth-child(2)>div{border-color:#665078}
body.premium.v2{font-size:15px}body.premium.v2 p,body.premium.v2 .service-card p,body.premium.v2 .steps p,body.premium.v2 .faqs p{font-size:15px}
body.premium.v3{font-size:16px}body.premium.v3 p,body.premium.v3 .service-card p,body.premium.v3 .steps p,body.premium.v3 .faqs p{font-size:16px}
body.premium.v2 h2{font-size:clamp(25px,2.5vw,34px)}body.premium.v3 h2{font-size:clamp(26px,2.4vw,32px)}
body.premium.v2 h3,body.premium.v2 .service-card h3{font-size:25px}body.premium.v3 h3,body.premium.v3 .service-card h3{font-size:23px}
body.premium.v2 .hero .hero-copy h1,body.premium.v2 .page-intro h1{font-size:clamp(32px,3.5vw,49px)}body.premium.v3 .hero .hero-copy h1,body.premium.v3 .page-intro h1{font-size:clamp(32px,3.3vw,46px)}
body.premium.v2 nav>a,body.premium.v2 .services-toggle,body.premium.v3 nav>a,body.premium.v3 .services-toggle{font-size:13px}
.client-strip{overflow:hidden;padding:35px 0;background:linear-gradient(110deg,#eff7fa,#eaf6ef);border-block:1px solid #d8e7e7;color:#17435b}
.client-strip-heading{padding:0 6%;margin-bottom:20px}.client-strip h2{font:600 25px/1.3 Arial,sans-serif;color:#17435b;margin:0 0 7px}.client-strip p{font:14px/1.6 Arial,sans-serif;color:#4c6470;margin:0}
.client-window{overflow:hidden}.client-track{display:flex;width:max-content;animation:clients-drift 32s linear infinite}.client-group{display:flex;gap:20px;align-items:center;padding-right:20px}.client-item{width:185px;height:85px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;background:#ffffffc9;border:1px solid #d6e4e6;border-radius:10px;color:#204e62;font:600 17px/1.3 Arial,sans-serif;padding:10px;text-align:center}.client-item small{font:10px/1.2 Arial,sans-serif;letter-spacing:.08em;color:#526b77}.client-item img{width:150px;height:55px;object-fit:contain}.client-window:hover .client-track,.client-window:focus-within .client-track{animation-play-state:paused}@keyframes clients-drift{to{transform:translateX(-50%)}}
@media(max-width:1000px){body .nav-wrap,body.premium .nav-wrap,body.premium.v2 .nav-wrap{gap:14px;padding-inline:4%}body.premium nav{gap:15px}}
@media(max-width:900px){body .nav-wrap,body.premium .nav-wrap,body.premium.v2 .nav-wrap{height:108px;min-height:108px;gap:12px}body .header .logo,body.premium .header .logo{width:142px}body .header .logo img,body.premium .header .logo img{width:142px;height:96px}body.reference-v1 nav,body.premium nav{top:108px;background:#fff;color:#123d52}body .hamburger,body.premium .hamburger{border-color:#b5ccd4;color:#12475c}body .hamburger span{background:#12475c}body.reference-v1 .ref-hero{padding-top:45px}body.reference-v1 .ref-hero.home-hero{min-height:500px}}
@media(max-width:650px){body .nav-wrap,body.premium .nav-wrap,body.premium.v2 .nav-wrap{padding-inline:14px;gap:10px}body .header .logo,body.premium .header .logo{width:136px}body .header .logo img,body.premium .header .logo img{width:136px;height:94px}body.premium .hamburger,body .hamburger{flex-shrink:0}body .header-cta,body.premium .header-cta{font-size:10px;padding:10px;gap:5px}body.premium.v2 p,body.premium.v2 .service-card p{font-size:15px}body.premium.v3 p,body.premium.v3 .service-card p{font-size:15px}body.premium.v2 .service-card h3{font-size:24px}body.premium.v3 .service-card h3{font-size:22px}body.premium.v2 .hero .hero-copy h1,body.premium.v2 .page-intro h1,body.premium.v3 .hero .hero-copy h1,body.premium.v3 .page-intro h1{font-size:32px}.client-strip{padding:28px 0}.client-item{width:155px}.client-strip h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){.client-track{animation:none}.client-window{overflow-x:auto}}

/* Contrast repair: supersede legacy photo/footer backgrounds as one paired theme. */
body.premium.v1 footer,body.premium.v2 footer,body.premium.v3 footer,body.reference-v1 footer{
 background:linear-gradient(115deg,#f4f8fa,#e5f1ec);color:#204655;
}
body.premium footer :is(h2,h3,p,a,small),body.premium footer .footer-base{color:#204655;opacity:1}
body.premium footer a:hover,body.premium footer a:focus-visible{color:#00754e}
body.premium footer .footer-brand>img{filter:none;opacity:1;mix-blend-mode:normal}
body.premium.v2 .cta-band{background:linear-gradient(110deg,#093b55,#145d72);color:#fff}
body.premium.v3 .cta-band{background:linear-gradient(110deg,#123b30,#215b42);color:#fff}
body.premium .cta-band :is(h2,p){color:#fff}
body.premium .cta-band .btn{background:#e1f1ea;color:#153f32}
body.premium .cta-band .btn:hover,body.premium .cta-band .btn:focus-visible{background:#fff;color:#006b48}
body .header nav>a:hover,body .header nav>a:focus-visible,
body .header .services-toggle:hover,body .header .services-toggle:focus-visible,
body .header .services-toggle[aria-expanded=true],
body .header .service-links a:hover,body .header .service-links a:focus-visible{color:#00754e}
body .header .service-links a:hover,body .header .service-links a:focus-visible{background:#e6f4ec}
body.premium .service-selector :is(h2,h3){color:#17435b}
body.premium .service-selector p{color:#405c69}
body.premium .service-selector [role=tab]{color:#17435b;transition:color .2s,background .2s}
body.premium .service-selector [role=tab]:hover,body.premium .service-selector [role=tab]:focus-visible,
body.premium .service-selector [role=tab][aria-selected=true]{color:#00754e;background:#fff;border-bottom-color:#00754e}
body.premium .service-card a:hover,body.premium .service-card a:focus-visible{color:#00754e}
/* Preserve the full city composition and tower tip. */
body.premium .coverage>img{height:auto!important;max-height:none;min-height:0;object-fit:contain;aspect-ratio:3/2!important}
body.premium .page-intro.city-intro{min-height:0;grid-template-rows:auto}
body.premium .page-intro.city-intro>div:nth-child(2){height:auto!important;min-height:0;aspect-ratio:3/2}
body.premium .page-intro.city-intro img{width:100%;height:auto!important;min-height:0;max-height:none;aspect-ratio:3/2;object-fit:contain;transform:none}
body.premium .page-intro.city-intro>div:first-child{align-self:end;padding-bottom:5%!important}
body.premium .page-intro.city-intro:after{background:linear-gradient(0deg,#092d43ed,transparent 75%)}
@media(max-width:700px){
 body.premium .page-intro.city-intro{display:flex!important;flex-direction:column}
 body.premium .page-intro.city-intro>div:first-child{background:var(--dark)!important;padding:28px 6%!important}
 body.premium .page-intro.city-intro>div:nth-child(2){width:100%;height:auto!important;min-height:0}
 body.premium .page-intro.city-intro:after{display:none}
}

/* Logo palette and typography refinement. */
body.premium.v2,body.premium.v3{--brand-pink:#922875;--brand-blue:#00558e;--brand-green:#00754e;--ink:#16445e;--muted:#405c6b;--bright:#e5f2f8;--line:#cfdee7}
body.premium.v2 .process :is(h2,h3,.textlink){color:#77205f}
body.premium.v2 .steps article{border-color:#dfb8d3;border-top:3px solid #922875;background:#fffafb}
body.premium.v3 .steps article{border-color:#bdd8e8;border-top:3px solid #00558e;background:#fff}
body.premium.v2 .cta-band,body.premium.v3 .cta-band{background:linear-gradient(110deg,#00558e,#087ab0);color:#fff}
body.premium .cta-band :is(h2,p){color:#fff}
body.premium.v2 .cta-band .btn,body.premium.v3 .cta-band .btn{background:#fff;color:#00558e}
body.premium.v2 .cta-band .btn:hover,body.premium.v3 .cta-band .btn:hover{background:#f4deed;color:#77205f}
body.premium.v3 .coverage{background:#00558e;color:#fff}
body.premium.v3 .coverage :is(h2,p,.section-label){color:#fff}
body.premium.v3 .header-cta,body.premium.v3 .btn{background:#00754e;color:#fff}
body.premium.v3 .service-selector,body.premium.v3 .questions{background:linear-gradient(110deg,#edf6fc,#f6fafc)}
body.premium.v2 .service-selector{background:linear-gradient(110deg,#f6e9f2,#eff6fb)}
body.premium.v2 .client-strip{background:linear-gradient(110deg,#f8edf5,#edf6fb)}
body.premium.v3 .client-strip{background:linear-gradient(110deg,#eaf4fb,#f4f9fc)}
body.premium{font-size:16px}
body.premium.v2{font-size:16px}body.premium.v3{font-size:17px}
body.premium p,body.premium.v2 p{font-size:16px;line-height:1.75}
body.premium.v3 p{font-size:17px;line-height:1.75}
body.premium :is(.service-card p,.steps p,.faqs p,.insight-card p,.enquiry p){font-size:16px}
body.premium.v3 :is(.service-card p,.steps p,.faqs p,.insight-card p){font-size:17px}
body.premium :is(nav>a,.services-toggle,.service-links a,.textlink,.btn,.service-selector [role=tab]){font-size:15px}
body.premium .faqs summary{font-size:18px}
body.premium.v2 h2,body.premium.v3 h2{font-size:clamp(27px,2.4vw,35px);line-height:1.2}
body.premium.v2 h3{font-size:26px}body.premium.v3 h3{font-size:24px}
/* Compact, aligned footer: wider brand column shifts the other columns right. */
body.premium.v2 footer{background:linear-gradient(115deg,#fff7fc,#edf5fb);border-top:3px solid #922875}
body.premium.v3 footer{background:linear-gradient(115deg,#f4f9fc,#e6f1fa);border-top:3px solid #00558e}
body.premium footer{padding:44px 6% 94px}
body.premium footer .footer-grid{max-width:1280px;grid-template-columns:minmax(0,1.55fr) minmax(0,.8fr) minmax(0,1fr);gap:clamp(30px,5vw,76px);align-items:start}
body.premium footer .footer-grid>div{min-width:0}
body.premium footer .footer-brand>img{width:190px;height:130px;margin-bottom:18px}
body.premium footer .footer-brand h2{font:600 25px/1.25 'AQ Sans',Arial,sans-serif;letter-spacing:-.025em;margin-bottom:16px;max-width:310px}
body.premium footer .footer-brand p{font-size:16px;line-height:1.7;max-width:39ch;margin-bottom:0}
body.premium footer .footer-grid h3{font:700 19px/1.3 'AQ Sans',Arial,sans-serif;letter-spacing:0;margin:10px 0 23px;color:#00558e}
body.premium footer .footer-grid>div>a,body.premium footer .footer-grid>div>p{font-size:16px;line-height:1.7}
body.premium footer .footer-grid>div>a{margin:0 0 12px}
body.premium footer .social-marks{margin:23px 0 0;gap:10px}
body.premium footer .social-marks>span{width:36px;height:36px;border:1px solid #d6e2ea;border-radius:7px}
body.premium footer .footer-base{max-width:1280px;margin-top:30px;padding-top:20px;font-size:14px;gap:14px;border-color:#c5d8e4}
@media(max-width:1100px){body.premium nav{gap:14px}body.premium :is(nav>a,.services-toggle){font-size:14px}body.premium footer .footer-grid{gap:28px;grid-template-columns:1.35fr .8fr 1fr}}
@media(max-width:900px){body.premium footer .footer-grid{grid-template-columns:1fr 1fr;gap:30px}body.premium footer .footer-brand{grid-column:1/-1}body.premium footer .footer-brand p{max-width:60ch}}
@media(max-width:650px){body.premium p,body.premium.v2 p,body.premium.v3 p{font-size:16px}body.premium .header-cta{font-size:11px}body.premium footer{padding:32px 6% 100px}body.premium footer .footer-grid{gap:28px 18px}body.premium footer .footer-grid>div>a,body.premium footer .footer-grid>div>p{font-size:15px}body.premium footer .footer-grid h3{font-size:18px}body.premium footer .footer-brand h2{font-size:24px}body.premium footer .footer-brand>img{width:175px;height:120px}body.premium footer .footer-base{display:block;line-height:1.8}body.premium footer .footer-base>a{display:block;margin-top:8px}body.premium :is(.textlink,.btn,.service-selector [role=tab]){font-size:14px}}

body.reference-v1 .client-track{animation-duration:180s}body.reference-v1 .client-item{width:190px;height:138px;background:#fff;gap:10px;padding:14px}body.reference-v1 .client-item img{width:auto;height:auto;max-width:140px;max-height:70px;object-fit:contain}body.reference-v1 .client-name{font:600 12px/1.4 Arial,sans-serif;color:#204655;max-width:160px}body.reference-v1 .client-strip-heading{margin-bottom:22px}