.city-v81{overflow:hidden}
.city-v81 .city-v81-hero{padding-top:clamp(132px,13vw,190px);padding-bottom:clamp(60px,8vw,112px);background:radial-gradient(circle at 85% 22%,#f3edff 0,transparent 45%),#fff}
.city-v81-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.95fr);gap:clamp(28px,5vw,80px);align-items:center}
.city-v81-hero .hero-copy{min-width:0;max-width:720px;padding:0}
.city-v81-hero .hero-copy h1{font-size:clamp(34px,3.2vw,49px);line-height:1.095;letter-spacing:-.045em;max-width:29ch;margin:24px 0;overflow-wrap:normal}
.city-v81-hero .hero-copy .sub{font-size:clamp(16px,1.3vw,19px);line-height:1.68;max-width:61ch}
.city-v81-hero .hero-cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:30px}
.city-v81-remote{font-size:12px;letter-spacing:.025em;color:var(--ink-faint);margin:22px 0 0}
.city-v81-map{margin:0;min-width:0;padding:0;border:0;background:transparent;transform:none}
.city-v81-map img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
.city-v81-map figcaption{font-size:12px;color:var(--ink-faint);text-align:center;padding:13px 4px 3px}
.city-v81-marquee{padding:45px 0 54px;background:#211935;color:#fff}
.city-v81-marquee .eyebrow{color:#bba7fa}.city-v81-marquee h2{font-size:clamp(25px,3.4vw,43px);line-height:1.15;max-width:21ch;margin:12px 0 26px;color:#fff}
.city-v81-track{display:flex;width:max-content;gap:30px;animation:city-v81-scroll 75s linear infinite}.city-v81-track:hover{animation-play-state:paused}
.city-v81-run{display:flex;gap:30px;align-items:center;flex:0 0 auto}.city-v81-run span{display:inline-flex;align-items:center;gap:30px;white-space:nowrap;font-size:clamp(24px,4vw,55px);font-weight:800;letter-spacing:-.04em;line-height:1.15;color:#e7dbff}.city-v81-run span:after{content:'✦';color:#a786ff;font-size:.42em}
@keyframes city-v81-scroll{to{transform:translateX(calc(-50% - 15px))}}
.city-v81-services .s-head{max-width:900px}.city-v81-services .s-head p{max-width:65ch;color:var(--ink-soft);line-height:1.7}
.city-v81-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px}
.city-v81-service{display:flex;flex-direction:column;min-width:0;background:#fff;border:1px solid #e8e0ef;border-radius:18px;padding:27px;box-shadow:0 8px 26px #2617380a}
.city-v81-service .city-v81-number{font-size:13px;font-weight:800;color:var(--city-accent);letter-spacing:.1em}
.city-v81-service h3{font-size:clamp(20px,1.7vw,25px);line-height:1.2;margin:15px 0 9px}.city-v81-service p{font-size:15px;line-height:1.65;color:var(--ink-soft);margin:0 0 20px}
.city-v81-service a{font-size:14px;font-weight:750;color:var(--p1);margin-top:auto;text-decoration:none}.city-v81-service a:hover{text-decoration:underline}
.city-v81-approach{background:#f7f3fb}.city-v81-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,6vw,90px)}.city-v81-two>div{border-left:3px solid var(--city-accent);padding-left:26px}.city-v81-two h2{font-size:clamp(27px,2.5vw,38px);line-height:1.16;max-width:21ch;margin:15px 0}.city-v81-two p{color:var(--ink-soft);line-height:1.75;max-width:57ch}
.city-v81-proof-grid{display:grid;grid-template-columns:1fr .8fr;align-items:center;gap:clamp(35px,8vw,110px)}.city-v81-proof h2{font-size:clamp(30px,3.3vw,48px);max-width:18ch;line-height:1.12;margin:15px 0}.city-v81-proof p{line-height:1.75;color:var(--ink-soft);max-width:59ch}.city-v81-proof .hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.city-v81-proof-panel{display:grid;gap:7px;background:#271d3a;border-radius:24px;padding:clamp(26px,4vw,45px);color:#fff;box-shadow:0 20px 65px #291c3f24}.city-v81-proof-panel span{font-size:12px;letter-spacing:.15em;color:#bda4fb;margin-top:13px}.city-v81-proof-panel strong{font-size:clamp(21px,2vw,30px);line-height:1.2}
.city-v81-related{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:32px;color:var(--ink-soft);font-size:14px}.city-v81-related span{font-weight:700}.city-v81-related a{color:var(--p1);text-decoration:underline;text-underline-offset:3px}
@media(max-width:880px){.city-v81-hero-grid,.city-v81-proof-grid{grid-template-columns:1fr}.city-v81-map{max-width:620px;transform:none}.city-v81-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.city-v81 .city-v81-hero{padding-top:130px;padding-bottom:52px}.city-v81-hero .hero-copy h1{font-size:clamp(27px,7.2vw,34px);line-height:1.13;max-width:29ch;margin:16px 0}.city-v81-hero .hero-copy .sub{font-size:16px}.city-v81-map{padding:7px;border-radius:18px}.city-v81-map img{border-radius:12px}.city-v81-map figcaption{font-size:11px}.city-v81-grid,.city-v81-two{grid-template-columns:1fr}.city-v81-service{padding:23px}.city-v81-marquee{padding:36px 0 43px}.city-v81-track,.city-v81-run{gap:22px}.city-v81-run span{gap:22px}.city-v81-two>div{padding-left:18px}.city-v81-proof .hero-cta{align-items:stretch}.city-v81-proof .hero-cta .btn{justify-content:center}}
@media(prefers-reduced-motion:reduce){.city-v81-track{animation:none;max-width:100vw;overflow:auto}}

/* City-page refinements: service first, portfolio, compact project approach. */
.city-v81-services{background:#faf8fd}
.city-v81-services .s-head h2{max-width:19ch;font-size:clamp(30px,3.5vw,47px);line-height:1.13}
.city-v81-services .s-head p{max-width:67ch}
.city-v81 #city-work{background:#fff}
.city-v81 #city-work .portfolio-heading{align-items:end}
.city-v81-approach{background:#f7f3fb}
.city-v81-approach-grid{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:clamp(30px,7vw,105px);align-items:start}
.city-v81-approach-heading h2{font-size:clamp(29px,3vw,43px);line-height:1.16;margin:16px 0;max-width:20ch}
.city-v81-approach-heading p{color:var(--ink-soft);line-height:1.72;max-width:55ch}
.city-v81-scenarios{display:grid;gap:16px}
.city-v81-scenarios>div{padding:24px 28px;background:#fff;border:1px solid #e8e0ef;border-radius:18px}
.city-v81-scenarios span{font-size:12px;font-weight:800;letter-spacing:.12em;color:var(--city-accent)}
.city-v81-scenarios p{font-size:17px;line-height:1.65;color:var(--ink);margin:12px 0 0}
.city-v81-marquee{padding:43px 0 50px;background:#211935;color:#fff}
.city-v81-marquee .eyebrow{color:#bba7fa}
.city-v81-marquee h2{font-size:clamp(25px,3.4vw,43px);line-height:1.15;margin:12px 0 7px;color:#fff}
.city-v81-marquee p{color:#ddd0f4;font-size:14px;line-height:1.5;margin:0 0 27px}
.city-v81-map figcaption{display:none}
@media(max-width:880px){.city-v81-approach-grid{grid-template-columns:1fr}}
@media(max-width:640px){.city-v81-hero .hero-copy h1{font-size:clamp(27px,7vw,34px);max-width:30ch}.city-v81-map{padding:0}.city-v81-scenarios>div{padding:20px}.city-v81-marquee{padding:36px 0 43px}}
