@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--blue:#293fae;--ink:#171b26;--paper:#f5f2e9;--orange:#fb6a28;--line:rgba(23,27,38,.22)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.skip{position:absolute;top:-80px;left:20px;background:white;padding:12px;z-index:20}.skip:focus{top:10px}header{height:110px;display:flex;align-items:center;justify-content:space-between;padding:0 5.4%;border-bottom:1px solid var(--line)}.wordmark{font:700 25px/.9 'Space Grotesk',Arial,sans-serif;letter-spacing:-1.5px;display:block}.wordmark>span{color:var(--blue)}.wordmark small{display:block;font-size:10px;letter-spacing:6px;margin-top:10px}nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:600}.nav-contact{border:1px solid;padding:10px 22px;border-radius:99px}.hero{padding:27px 5.4% 0}.hero-meta,.section-top,.hero-bottom,.art-caption,.art-label,.eyebrow{font:600 11px/1.5 'Space Grotesk',Arial,sans-serif;letter-spacing:1.5px}.hero-meta,.section-top{display:flex;justify-content:space-between;gap:20px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:3%;align-items:center;padding:55px 0 45px}h1,h2,h3{font-family:'Space Grotesk',Arial,sans-serif;margin:0;font-weight:600}h1{font-size:clamp(65px,7.8vw,124px);line-height:.97;letter-spacing:-7px}h1 em{font-style:normal;color:var(--blue)}.intro{max-width:460px;font-size:18px;line-height:1.65;margin:28px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;background:var(--ink);color:var(--paper);padding:15px 24px;border:0;border-radius:3px;cursor:pointer;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.button:hover{background:var(--blue);transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.hero-art{position:relative;min-height:480px;background:var(--blue);border-radius:50% 50% 4px 4px;display:flex;align-items:center;padding:60px 20px;isolation:isolate}.hero-art img{width:112%;height:auto;max-width:none;margin-left:-6%;transform:rotate(-9deg);filter:drop-shadow(8px 12px 0 rgba(0,0,0,.12))}.art-label{position:absolute;top:35px;width:100%;left:0;text-align:center;color:var(--paper);font-size:10px}.art-caption{position:absolute;bottom:25px;left:25px;right:25px;color:var(--paper);font-size:9px;display:flex;justify-content:space-between;gap:10px}.orbit{position:absolute;inset:25px;border:1px solid #ffffff35;border-radius:50% 50% 2px 2px;z-index:-1}.hero-bottom{border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;gap:16px;letter-spacing:.8px;font-size:10px}.hero-bottom a{font-family:'DM Sans',Arial,sans-serif;letter-spacing:0;font-size:12px}.hero-bottom i{display:inline-block;width:7px;height:7px;background:var(--orange);border-radius:50%;margin-right:7px}.ticker{background:var(--orange);padding:20px 5.4%;display:flex;justify-content:space-between;align-items:center;gap:25px;overflow:hidden;white-space:nowrap;font:600 clamp(14px,2vw,24px)/1 'Space Grotesk',sans-serif}.ticker b{font-size:32px}.section{padding:80px 5.4% 90px}.section-top{margin-bottom:55px}.split{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}h2{font-size:clamp(35px,4vw,62px);line-height:1.08;letter-spacing:-2.8px}h2 span{color:var(--blue)}p{margin:0 0 20px}.large{font-size:22px;line-height:1.5}.split p:not(.large){color:#515360}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:65px}.services article{padding-top:20px;border-top:1px solid var(--ink)}.services article>span{font-size:12px;color:var(--blue)}h3{font-size:26px;letter-spacing:-1px;margin:25px 0 15px}.services p{font-size:15px;max-width:310px;color:#515360}.services small{font-size:10px;letter-spacing:1px;font-weight:700}.experience{background:var(--blue);color:var(--paper)}.experience h2 span{color:#b7c6ff}.experience .split{margin-bottom:50px}.experience .large{max-width:440px;font-size:20px}.company-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff45;border-left:1px solid #ffffff45}.company-grid>.company-link{min-height:140px;padding:30px 24px;border-right:1px solid #ffffff45;border-bottom:1px solid #ffffff45;display:flex;flex-direction:column;justify-content:space-between}.company-grid strong{font:600 26px/1.2 'Space Grotesk',sans-serif;letter-spacing:-1px}.company-grid small{font-size:9px;letter-spacing:1.5px;margin-top:22px;color:#c5cdf4}.credentials{padding-top:40px}.credentials p{font-size:14px;color:#d0d7f5}.credentials>div{display:flex;flex-wrap:wrap;gap:20px 35px;font:600 23px/1.3 'Space Grotesk',sans-serif}.credentials>small{display:block;font-size:11px;margin-top:25px;color:#c5cdf4}.text-link{display:inline-block;border-bottom:1px solid var(--ink);font-size:14px;padding-bottom:4px}.location{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:65px;padding-top:30px;font:500 clamp(20px,3.5vw,53px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-1px}.location small{font-size:14px;letter-spacing:0;margin-left:10px}.contact{background:#dfE5fa;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{margin:30px 0}.contact .large{max-width:480px}.email{display:inline-block;font-size:20px;border-bottom:1px solid;margin-top:20px}form{padding-top:8px}label{display:block;font-size:12px;font-weight:600;margin:0 0 7px}label span{font-weight:400}input,textarea{width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid #7d85a0;padding:10px 0;margin-bottom:25px;border-radius:0;font-size:15px;resize:vertical}input::placeholder,textarea::placeholder{color:#636b80}form .button{width:100%}.form-note{font-size:11px;margin-top:12px;color:#535c76}footer{padding:35px 5.4%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer>span{font-size:10px;letter-spacing:1px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){h1{letter-spacing:-4px}.hero-art{min-height:380px}.split{gap:7%}.company-grid{grid-template-columns:repeat(2,1fr)}.contact{gap:6%}.services{gap:22px}.section-top>span:last-child{font-size:9px}.large{font-size:19px}}@media(max-width:650px){header{height:90px}.wordmark{font-size:21px}nav{gap:16px;font-size:12px}nav a:first-child{display:none}.nav-contact{padding:8px 13px}.hero-meta{font-size:8px;letter-spacing:1px}.hero-grid{grid-template-columns:1fr;padding-top:40px;gap:35px}h1{font-size:76px;letter-spacing:-5px}.intro{font-size:17px;max-width:350px}.hero-art{min-height:330px;max-width:450px;width:100%;margin:0 auto}.hero-art img{width:100%;margin:0}.hero-bottom{display:block}.hero-bottom>a{display:block;margin-top:12px}.ticker{gap:20px;justify-content:flex-start;padding:17px 5.4%}.ticker b{font-size:22px}.section{padding-top:50px;padding-bottom:55px}.section-top{margin-bottom:35px}.section-top>span:last-child{display:none}.split,.contact{grid-template-columns:1fr;gap:30px}h2{font-size:42px;letter-spacing:-2px}.large{font-size:20px}.services{grid-template-columns:1fr;gap:28px;margin-top:35px}.services p{max-width:none}.services h3{margin-top:12px}.company-grid>.company-link{padding:22px 15px;min-height:125px}.company-grid strong{font-size:23px}.credentials>div{font-size:20px;gap:20px}.location{flex-wrap:wrap;font-size:25px;gap:15px}.location small{display:block;margin:7px 0 0;font-size:10px}.contact{gap:35px}.email{font-size:18px}footer{flex-wrap:wrap}footer>span:last-child{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand-history{display:flex;align-items:center;gap:30px;margin-top:45px}.brand-history img{width:145px;height:auto;border-radius:8px}.brand-history p{font:500 26px/1.3 "Space Grotesk",sans-serif;letter-spacing:-1px;margin:0}

/* Original AtariPunk artwork replaces the temporary typed wordmark. */
.wordmark{display:inline-flex;align-items:center;flex-shrink:0;line-height:0;letter-spacing:normal}.wordmark img{display:block;width:86px;height:auto;border-radius:6px}footer .wordmark img{width:74px}@media(max-width:650px){.wordmark img{width:72px}footer .wordmark img{width:65px}}
/* A tighter, more visual second edition. */
header{height:112px}.wordmark img{width:125px;max-height:100px;object-fit:contain;border-radius:0}.hero-grid{padding:32px 0 30px}.intro{font-size:18px;max-width:480px;margin:22px 0}.hero-art{min-height:440px;overflow:visible}.hero-art img{animation:character-bob 7s ease-in-out infinite;will-change:transform}.orbit{transform:translateY(var(--parallax,0px)) rotate(-7deg);border-radius:46% 54% 45% 55%;inset:35px -8px;background:linear-gradient(130deg,#ffffff12,transparent);transition:transform .15s linear}.section{padding-top:48px;padding-bottom:50px}.section-top{margin-bottom:30px}.split{gap:8%}h2{font-size:clamp(36px,3.7vw,56px);letter-spacing:-2.5px}.large{font-size:21px;line-height:1.45}.split p:last-child{margin-bottom:0}.services{margin-top:32px;gap:28px}.services article{padding:18px 0 0;position:relative}.service-top{display:flex;align-items:center;justify-content:space-between}.service-top>span{font:500 12px 'Space Grotesk',sans-serif}.service-top>b{font:500 52px/.9 'Space Grotesk',sans-serif;color:var(--blue);transition:transform .4s}.services article:nth-child(2) .service-top>b{color:var(--orange)}.services article:hover .service-top>b{transform:rotate(20deg)}.services h3{margin:12px 0 10px}.services p{margin-bottom:12px}.ticker{padding:0;position:relative;display:block;background:var(--orange)}.ticker-window{overflow:hidden;padding:21px 0}.ticker-track{width:max-content;display:flex;animation:marquee 32s linear infinite}.ticker-copy{display:flex;align-items:center;gap:38px;padding-right:38px;flex-shrink:0;font:600 23px/1 'Space Grotesk',sans-serif;letter-spacing:-.5px}.ticker-copy b{font-size:31px}.ticker button{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:1px solid var(--ink);background:var(--paper);font-size:12px;cursor:pointer}.motion-paused .ticker-track,.motion-paused .hero-art img{animation-play-state:paused}.city-bridge{background:var(--blue);color:var(--paper);overflow:hidden;padding:32px 5.4% 20px;position:relative}.bridge-top{display:flex;justify-content:space-between;align-items:center;gap:25px}.bridge-top p{font-size:13px;line-height:1.5;margin:0}.city-names{display:flex;justify-content:center;align-items:center;gap:clamp(20px,3.5vw,60px);margin-top:32px;font:600 clamp(35px,5.6vw,85px)/.95 'Space Grotesk',sans-serif;letter-spacing:-4px;position:relative;z-index:1}.city-names small{display:block;font:500 10px/1.6 'Space Grotesk',sans-serif;letter-spacing:3px;margin-top:14px;text-align:center}.city-arrow{color:var(--orange);font-size:1.1em;margin-top:-27px}.mobile-break{display:none}.city-scene{margin-top:-25px}.city-art{display:block;width:100%;height:auto;max-height:300px;overflow:visible}.travel-path{animation:route-flow 4s linear infinite}.city-sun{transform:translateY(var(--parallax,0px));transform-origin:center;transition:transform .15s linear}.bridge-bottom{display:flex;justify-content:space-between;gap:20px;font:500 9px/1.5 'Space Grotesk',sans-serif;letter-spacing:1px;margin-top:14px}.experience{background:var(--paper);color:var(--ink)}.experience h2 span{color:var(--blue)}.experience .split{margin-bottom:30px}.experience .large{font-size:19px}.company-grid{border-color:var(--line);grid-template-columns:repeat(4,1fr)}.company-grid>.company-link{border-color:var(--line);min-height:116px;padding:22px;transition:background .25s,transform .25s}.company-grid>.company-link:hover{background:#e4e9fa;transform:translateY(-3px)}.company-grid>.company-link:first-child{background:var(--orange)}.company-grid>.company-link:nth-child(2){background:var(--blue);color:var(--paper)}.company-grid>.company-link:nth-child(2) small{color:#d5dcff}.company-grid small{color:#565f78;margin-top:15px}.company-grid>.company-link:first-child small{color:var(--ink)}.company-grid strong{font-size:25px}.credentials{padding-top:25px}.credentials p{color:#515360;margin-bottom:16px}.credentials>div{gap:18px 32px;color:var(--blue)}.credentials>small{color:#515360;margin-top:18px}.about{background:#e5eafa;border-top:1px solid var(--line)}.about .split h2{font-size:clamp(34px,3.4vw,50px)}.about .large{font-size:20px}.contact{background:var(--paper);gap:8%}.contact h2{font-size:clamp(44px,5vw,72px);margin:20px 0}.contact .large{font-size:20px}.site-footer{display:block;background:#161d3a;color:var(--paper);padding:35px 5.4% 20px;overflow:hidden}.footer-main{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:35px;align-items:center}.footer-brand img{display:block;width:148px;height:auto;background:var(--paper);padding:5px;border-radius:8px}.footer-brand p{font-size:13px;margin:14px 0 0;color:#bdc5e8}.footer-invite>.eyebrow{font-size:10px;color:#bdc5e8}.footer-invite>a:not(.footer-email){display:flex;gap:25px;align-items:center;font:500 clamp(40px,5.5vw,78px)/1.2 'Space Grotesk',sans-serif;letter-spacing:-3px;margin:10px 0}.footer-invite>a span{color:var(--orange)}.footer-invite .footer-email{font-size:14px;letter-spacing:0;border-bottom:1px solid #7e89b0;padding-bottom:4px}.footer-characters{transform:rotate(7deg);align-self:end}.footer-characters img{width:100%;height:auto;display:block;filter:drop-shadow(6px 7px 0 #0003)}.footer-bottom{border-top:1px solid #ffffff30;margin-top:30px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;font-size:10px;letter-spacing:1px;color:#bdc5e8}.footer-bottom a:hover{color:var(--paper)}
@keyframes marquee{to{transform:translateX(-50%)}}@keyframes character-bob{0%,100%{transform:translateY(-5px) rotate(-9deg)}50%{transform:translateY(8px) rotate(-5deg)}}@keyframes route-flow{to{stroke-dashoffset:-68}}.motion-paused .travel-path{animation-play-state:paused}
@media(max-width:900px){.hero-art{min-height:360px}.company-grid{grid-template-columns:repeat(2,1fr)}.city-names{letter-spacing:-2px}.footer-main{gap:20px}.footer-brand img{width:120px}.footer-invite>a:not(.footer-email){font-size:50px}.footer-characters{align-self:center}.services{gap:20px}}
@media(max-width:650px){header{height:94px}.wordmark img{width:104px;max-height:88px}.hero-grid{padding:30px 0 22px;gap:25px}.hero-art{min-height:295px;max-width:380px}.intro{font-size:17px;margin:20px 0}.hero-bottom{padding:15px 0}.hero-meta{font-size:7px}.section{padding-top:32px;padding-bottom:34px}.section-top{margin-bottom:23px}.split{gap:22px}h2{font-size:38px}.services{gap:22px;margin-top:25px}.service-top>b{font-size:45px}.services h3{font-size:25px}.ticker-window{padding:18px 0}.ticker-copy{font-size:20px;gap:25px;padding-right:25px}.city-bridge{padding-top:25px}.bridge-top{align-items:flex-start}.bridge-top .eyebrow{font-size:8px;max-width:130px}.bridge-top p{font-size:10px}.city-names{font-size:clamp(28px,7.8vw,48px);gap:15px;letter-spacing:-1.7px;margin-top:25px;align-items:center;white-space:nowrap}.city-names small{font-size:7px;letter-spacing:1.2px;margin-top:10px}.city-arrow{margin-top:-18px}.city-scene{margin:0 -15%;}.city-art{width:100%;height:auto}.bridge-bottom{font-size:7px;gap:8px}.bridge-bottom>span:nth-child(2){display:none}.company-grid>.company-link{min-height:110px;padding:20px 15px}.company-grid strong{font-size:22px}.credentials>div{gap:14px 24px;font-size:21px}.about .split h2{font-size:38px}.contact h2{font-size:50px}.site-footer{padding-top:28px;padding-bottom:20px}.footer-main{grid-template-columns:1fr 1.3fr;gap:20px}.footer-brand img{width:110px}.footer-brand p{font-size:11px}.footer-invite>a:not(.footer-email){font-size:44px;letter-spacing:-2px;gap:14px}.footer-invite .footer-email{font-size:11px}.footer-invite>.eyebrow{font-size:8px}.footer-characters{grid-column:1/-1;max-width:230px;margin:-2px auto -10px;transform:rotate(3deg)}.footer-bottom{flex-wrap:wrap;justify-content:space-between;font-size:8px;gap:13px}.footer-bottom>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){.ticker-track,.hero-art img,.travel-path{animation:none!important}.orbit,.city-sun{transform:none!important}.ticker-copy[aria-hidden="true"]{display:none}#motion-toggle{display:none}.ticker-track{width:auto}.ticker-copy{flex-wrap:wrap;white-space:normal;font-size:14px;gap:14px;padding:0 15px}.ticker-copy b{font-size:20px}}

/* Shared columns align city labels to the landmark centres at x=219 and x=992. */
.city-names{display:grid;grid-template-columns:36.5% 29% 34.5%;justify-content:normal;align-items:start;gap:0;margin:22px 0 24px;letter-spacing:-2px;white-space:normal;font-size:clamp(30px,4.2vw,63px)}
.city-label{text-align:center;min-width:0;align-self:start}.city-name{display:block;white-space:nowrap;font:inherit;line-height:1.05}.city-names small{margin:12px 0 0;font-size:10px;letter-spacing:2px;line-height:1.4}.city-arrow{margin:0;padding:0 12px;color:var(--orange);align-self:center;transform:translateY(-10px);line-height:0}.city-arrow svg{display:block;width:100%;height:auto;max-height:70px}.city-scene{margin:0}.city-art{max-height:none;width:100%;height:auto}.exchange-loop{color:var(--paper)}.city-bridge{padding-top:26px}.bridge-top p{max-width:380px}.company-link{position:relative;cursor:pointer}.company-external{position:absolute;right:16px;bottom:18px;font-size:18px;line-height:1;transition:transform .2s}.company-link:hover .company-external{transform:translate(2px,-2px)}.company-link:focus-visible{outline:3px solid var(--orange);outline-offset:-4px;z-index:1}.company-link small{padding-right:20px}.credentials>div>a{transition:color .2s}.credentials>div>a:hover{color:var(--orange)}.credentials>div>a>span{font-size:11px;vertical-align:middle}
@media(max-width:900px){.city-names{font-size:clamp(27px,4.15vw,48px);letter-spacing:-1.5px}.city-arrow{padding:0 8px}.city-names small{font-size:8px;letter-spacing:1.3px}}
@media(max-width:650px){.city-names{grid-template-columns:36.5% 29% 34.5%;font-size:clamp(21px,5.6vw,34px);align-items:start;letter-spacing:-1px;margin:22px 0 25px}.city-label:last-child .city-name{white-space:normal;max-width:150px;min-height:2.1em;margin:auto}.city-label:first-child .city-name{min-height:2.1em;display:flex;align-items:center;justify-content:center}.city-names small{font-size:7px;letter-spacing:.6px;margin-top:8px}.city-arrow{align-self:center;padding:0 4px;transform:translateY(-10px)}.city-arrow svg{min-height:30px}.city-scene{margin:0}.bridge-top p{font-size:10px;max-width:190px}.city-bridge{padding-top:23px}.company-external{right:12px;bottom:18px;font-size:16px}.city-art{min-height:0}}

/* The paired city routes carry the exchange story; the floating ocean loop is removed. */
.city-names small{letter-spacing:2px;font-size:12px}.route-dot-east{animation:exchange-east 3.8s linear infinite}.route-dot-west{animation:exchange-west 3.8s linear infinite}.motion-paused .route-dot{animation-play-state:paused}@keyframes exchange-east{from{transform:translateX(0)}to{transform:translateX(276px)}}@keyframes exchange-west{from{transform:translateX(0)}to{transform:translateX(-276px)}}
@media (hover:hover) and (pointer:fine){body{cursor:auto}input,textarea{cursor:text}}
@media(max-width:650px){.city-names small{font-size:9px;letter-spacing:1px}.city-names{margin-bottom:20px}.company-grid>.company-link{min-height:112px}.contact{gap:25px}.form-note{margin-bottom:0}.site-footer{margin-top:0}.hero-meta>span{max-width:49%}.hero-meta>span:last-child{text-align:right}}
@media(max-width:360px){nav{gap:10px;font-size:11px}.nav-contact{padding:8px 10px}.wordmark img{width:92px}h1{font-size:67px}.hero-art{min-height:260px}.hero-meta{letter-spacing:.5px}.city-names{font-size:19px}.city-names small{font-size:8px}.company-grid strong{font-size:20px}.footer-invite>a:not(.footer-email){font-size:36px}.footer-invite .footer-email{font-size:10px}}
@media(prefers-reduced-motion:reduce){.route-dot{animation:none!important}.route-dot-east{transform:translateX(100px)}.route-dot-west{transform:translateX(-100px)}}
@media(max-width:650px){input,textarea{font-size:16px}nav>a{display:inline-flex;min-height:44px;align-items:center}.nav-contact{min-height:44px}.ticker button{width:44px;height:44px;right:8px}.credentials>div>a{display:inline-flex;min-height:44px;align-items:center}.footer-bottom a,.footer-email{display:inline-flex;min-height:44px;align-items:center}}
@media(max-width:360px){.orbit{inset:25px 8px;transform:translateY(var(--parallax,0px))}}
@media(max-width:650px){nav>a:first-child{display:none}}

/* Quiet ambient movement for the two city landmarks. */
.water-front{animation:water-west 7s linear infinite}.water-back{animation:water-east 10s linear infinite}.palm-tree{transform-box:view-box}.palm-left{transform-origin:913px 307px;animation:palm-left-sway 8s ease-in-out infinite}.palm-right{transform-origin:1080px 307px;animation:palm-right-sway 9.5s ease-in-out infinite;animation-delay:-3s}.tower-bulb{filter:drop-shadow(0 0 3px #ffce85);animation:tower-warmth 5s ease-in-out infinite}.tower-bulb.bulb-1{animation-delay:-2.5s}.motion-paused .water-drift,.motion-paused .palm-tree,.motion-paused .tower-bulb{animation-play-state:paused}
@keyframes water-west{from{transform:translateX(0)}to{transform:translateX(-42px)}}@keyframes water-east{from{transform:translateX(-42px)}to{transform:translateX(0)}}@keyframes palm-left-sway{0%,100%{transform:rotate(-.7deg)}50%{transform:rotate(1deg)}}@keyframes palm-right-sway{0%,100%{transform:rotate(.65deg)}50%{transform:rotate(-.85deg)}}@keyframes tower-warmth{0%,100%{opacity:.12}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.water-drift,.palm-tree,.tower-bulb{animation:none!important}.palm-tree{transform:none!important}.tower-bulb{opacity:.85}}

.listening-link{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;margin:0 0 26px;padding:12px 16px;border:1px solid currentColor;border-radius:6px;font-size:14px;text-decoration:none}.listening-link small{display:block;font-size:9px;letter-spacing:.1em;margin-top:3px}.listening-icon{font-size:25px;color:var(--orange,#fb6a28)}.listening-link:hover{background:#e9e9f6}.listening-link>span:last-child{margin-left:15px}

/* Spaced panels move gently within their own reserved scroll space. */
.feature-stage{padding:26px 0;margin:8px 0;position:relative}.feature-stage>.ticker,.feature-stage>.city-bridge{transform:translateY(var(--panel-shift,0px));box-shadow:0 12px 22px -20px #171b264d}.city-stage{padding:32px 0}.city-stage .city-sun{transition:none}.city-stage .city-scene{position:relative}.city-stage .city-scene:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 65%,#ffffff08,transparent 65%);transform:translateY(var(--parallax,0px));pointer-events:none}.motion-paused .feature-stage>.ticker,.motion-paused .feature-stage>.city-bridge{transform:none}
@media(max-width:650px){.feature-stage{padding:17px 0;margin:4px 0}.city-stage{padding:21px 0}}
@media(prefers-reduced-motion:reduce){.feature-stage>.ticker,.feature-stage>.city-bridge,.city-stage .city-scene:before{transform:none!important}}

/* The following opaque section scrolls over the slower moving colour panel. */
.feature-stage{z-index:0}.feature-stage>.ticker,.feature-stage>.city-bridge{will-change:transform}.approach,.experience{position:relative;z-index:1;background:var(--paper);box-shadow:0 -14px 28px -24px #171b2666}.city-stage{padding-bottom:0;margin-bottom:0}.ticker-stage{padding-bottom:0;margin-bottom:0}.motion-paused .feature-stage>.ticker,.motion-paused .feature-stage>.city-bridge{will-change:auto}
@media(prefers-reduced-motion:reduce){.feature-stage>.ticker,.feature-stage>.city-bridge{will-change:auto}}
/* Language navigation and shared finishing touches. */
.language-switch{border-bottom:1px solid currentColor;padding:7px 2px;white-space:nowrap;font-size:12px}.approach{padding-bottom:28px}.city-stage{padding-top:14px;margin-top:0}.footer-characters{position:relative;isolation:isolate}.footer-characters img{animation:footer-breathe 7s ease-in-out infinite;transform-origin:50% 90%}.footer-characters:after{content:"";position:absolute;bottom:0;left:18%;width:64%;height:8px;border-radius:50%;background:currentColor;opacity:.12;filter:blur(5px);z-index:-1;animation:footer-shadow 7s ease-in-out infinite}@keyframes footer-breathe{0%,65%,100%{transform:translateY(0) scale(1)}30%{transform:translateY(-12px) scale(1.025)}}@keyframes footer-shadow{0%,65%,100%{transform:scaleX(1);opacity:.12}30%{transform:scaleX(.8);opacity:.07}}.motion-paused .footer-characters img,.motion-paused .footer-characters:after{animation-play-state:paused}
html:is(:lang(ja),[data-language="ja"]) body{font-family:'DM Sans','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}html:is(:lang(ja),[data-language="ja"]) h1{font-size:clamp(48px,5.7vw,86px);line-height:1.35;letter-spacing:-.04em}html:is(:lang(ja),[data-language="ja"]) h2{font-size:clamp(28px,3vw,44px);line-height:1.5;letter-spacing:-.03em}html:is(:lang(ja),[data-language="ja"]) h3{font-size:23px;letter-spacing:0}html:is(:lang(ja),[data-language="ja"]) .city-names{font-size:clamp(26px,4.2vw,62px);letter-spacing:0}html:is(:lang(ja),[data-language="ja"]) .city-names small{letter-spacing:1px}html:is(:lang(ja),[data-language="ja"]) .large{font-size:19px}html:is(:lang(ja),[data-language="ja"]) .footer-invite>a:not(.footer-email){font-size:clamp(30px,4vw,58px)}
@media(max-width:650px){nav{gap:13px}nav>a[href="#experience"]{display:none}nav>.language-switch{display:inline-flex;min-height:44px}.approach{padding-bottom:22px}.city-stage{padding-top:10px}html:is(:lang(ja),[data-language="ja"]) h1{font-size:48px}html:is(:lang(ja),[data-language="ja"]) h2{font-size:30px}html:is(:lang(ja),[data-language="ja"]) .city-names{font-size:clamp(16px,4vw,26px)}html:is(:lang(ja),[data-language="ja"]) .city-label:last-child .city-name{white-space:nowrap;min-height:2.1em;display:flex;align-items:center;justify-content:center}html:is(:lang(ja),[data-language="ja"]) .city-names small{font-size:8px}html:is(:lang(ja),[data-language="ja"]) .intro{font-size:16px}html:is(:lang(ja),[data-language="ja"]) .bridge-top{align-items:flex-start}html:is(:lang(ja),[data-language="ja"]) .bridge-top .eyebrow{max-width:40%;font-size:9px}}
@media(prefers-reduced-motion:reduce){.footer-characters img,.footer-characters:after{animation:none!important}}
/* One drawn icon family, with no platform emoji substitutions. */
.drawn-icon{display:inline-block;width:1em;height:1em;vertical-align:middle;flex-shrink:0}.service-top>b{width:48px;height:48px;font-size:48px;line-height:1}.service-top>b>.drawn-icon{display:block;width:48px;height:48px}.services article:hover .service-top>b{transform:none}.ticker-copy>b{display:flex;align-items:center;font-size:28px}.ticker-copy>b>.drawn-icon{width:28px;height:28px}.footer-invite>a.footer-social{font:500 13px/1.4 'DM Sans',sans-serif;letter-spacing:0;display:flex;align-items:center;gap:7px;margin:12px 0 8px;min-height:32px;width:fit-content}.footer-invite .footer-email{display:inline-flex;align-items:center;min-height:32px;width:fit-content}.footer-invite>a:first-of-type{margin-bottom:8px}.footer-brand,.footer-invite{align-self:start}.footer-main{align-items:start}.footer-invite{padding-top:0}.footer-brand img{margin:0}.footer-invite>.eyebrow{display:block;margin:0 0 8px}
@media(max-width:650px){.footer-main{grid-template-columns:1fr;gap:24px;align-items:start}.footer-brand,.footer-invite{width:100%;text-align:left}.footer-brand{display:flex;align-items:center;gap:20px}.footer-brand img{width:100px}.footer-brand p{margin:0;line-height:1.65}.footer-invite>a:first-of-type{font-size:44px;margin:0 0 4px;letter-spacing:-2px}.footer-invite>a.footer-social{font-size:14px;letter-spacing:0;margin:0 0 2px;min-height:44px}.footer-invite .footer-email{font-size:14px;min-height:44px;margin:0;letter-spacing:0}.footer-characters{grid-column:auto;max-width:220px;width:70%;margin:0 auto;align-self:center}.footer-bottom{margin-top:22px;align-items:center;gap:12px}.footer-bottom>span{font-size:9px}.footer-bottom>a{font-size:10px}html:is(:lang(ja),[data-language="ja"]) .footer-invite>a.footer-social{font-size:14px;letter-spacing:0}html:is(:lang(ja),[data-language="ja"]) .footer-invite>a:first-of-type{font-size:36px;letter-spacing:0}}
html:is(:lang(ja),[data-language="ja"]) .footer-invite>a.footer-social{font:500 13px/1.4 'DM Sans',sans-serif;letter-spacing:0}.footer-social .drawn-icon{width:14px;height:14px}.footer-invite>a:first-of-type>.drawn-icon{width:.65em;height:.65em;color:var(--orange)}.footer-invite>a:first-of-type span .drawn-icon{width:.65em;height:.65em}
@media(max-width:650px){html:is(:lang(ja),[data-language="ja"]) .footer-invite>a.footer-social{font-size:14px}}

/* Review corrections: retain the artwork and motion; make reading and actions clearer. */
.service-top{position:relative;min-height:24px;align-items:flex-end}
.service-top>b{position:absolute;right:0;bottom:0;width:36px;height:36px}
.service-top>b>.drawn-icon{width:36px;height:36px}
.services h3{margin-top:8px}
.hero-meta,.section-top,.eyebrow{font-size:12px}
.art-label,.art-caption{font-size:11px}
.services small,.company-grid small,.credentials>small,.bridge-bottom{font-size:12px}
.service-top>span,.listening-link small,.footer-bottom,.footer-brand p,.footer-invite>.eyebrow{font-size:12px}
label,.form-note{font-size:14px}
a,button,input,textarea{touch-action:manipulation}
a:hover{text-decoration:underline;text-underline-offset:4px}
a.button:hover,.company-link:hover,.wordmark:hover,.listening-link:hover{text-decoration:none}
a,button{min-height:44px}
nav>a,.hero-bottom>a,.text-link,.footer-bottom>a,.footer-email,.footer-invite>a.footer-social{display:inline-flex;align-items:center;min-height:44px}
@media(hover:hover) and (pointer:fine){body a,body button,body .button,body .company-link{cursor:pointer}body input,body textarea{cursor:text}}
html:is(:lang(ja),[data-language="ja"]) .hero-grid .listening-link{margin:20px 0 0}
html:is(:lang(ja),[data-language="ja"]) .hero-grid{padding-bottom:16px}
html:is(:lang(ja),[data-language="ja"]) .hero-bottom{padding:10px 0}
@media(max-width:650px){
 .hero-meta{font-size:10px;letter-spacing:.5px}.section-top>.eyebrow{font-size:12px}
 .hero-bottom,.hero-bottom a{font-size:12px}.hero-bottom>a{margin-top:4px}
 .art-label,.art-caption{font-size:10px}.bridge-top .eyebrow,html:is(:lang(ja),[data-language="ja"]) .bridge-top .eyebrow{font-size:11px}
 .bridge-top p{font-size:12px}.bridge-bottom{font-size:10px}.city-names small,html:is(:lang(ja),[data-language="ja"]) .city-names small{font-size:11px}
 .language-switch{font-size:14px}.listening-link{font-size:15px}.listening-link small{font-size:11px}
 .footer-brand p,.footer-bottom>span,.footer-bottom>a,.footer-invite>.eyebrow{font-size:12px}
 html:is(:lang(ja),[data-language="ja"]) .hero-grid{gap:20px;padding-bottom:12px}
 html:is(:lang(ja),[data-language="ja"]) .hero-bottom{padding:8px 0}
}
.footer-invite>a.footer-social,.footer-invite .footer-email{display:flex;min-height:44px;width:fit-content}
.credentials>div>a{display:inline-flex;align-items:center;min-height:44px}

/* Brand artwork and aligned hero sign-off, shared by both language versions. */
.hero-bottom{align-items:center;font-size:14px;line-height:1.5;letter-spacing:0;padding:6px 0}
.hero-bottom>span,.hero-bottom>a{font-family:'DM Sans',Arial,sans-serif;font-size:14px;line-height:1.5;font-weight:600;letter-spacing:0;margin:0}
.hero-bottom>span{display:flex;align-items:center;min-height:44px}
html:is(:lang(ja),[data-language="ja"]) .hero-bottom{padding:6px 0}
.ticker-stage{padding-top:10px;margin-top:0}
.service-top>b{width:48px;height:48px;bottom:-4px}
.service-top>b>svg{display:block;width:48px;height:48px;overflow:hidden}
@media(max-width:650px){
 .hero-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:0;padding:4px 0}
 html:is(:lang(ja),[data-language="ja"]) .hero-bottom{padding:4px 0}
 .hero-bottom>span,.hero-bottom>a{font-size:14px;min-height:44px;margin:0}
 .ticker-stage{padding-top:8px;margin-top:0}
}

/* Native cursors stay stable over moving artwork and nested controls. */
body{cursor:auto}
a,button,[role="button"],.button,.company-link{cursor:pointer}
a *,button *,[role="button"] *{cursor:inherit}
input,textarea{cursor:text}
.art-label{top:16px}
.art-caption{bottom:10px}
@media(max-width:650px){.art-label{top:14px}.art-caption{bottom:8px}}

/* Same native-cursor strategy as Azabu: one asset/hotspot on every surface. */
@media(hover:hover) and (pointer:fine){
 body,body *{cursor:url('/assets/star-cursor.png') 22 4,auto!important}
 body :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=range]),textarea,[contenteditable=true]),body :is(input,textarea,[contenteditable=true]) *{cursor:text!important}
 body :disabled{cursor:not-allowed!important}
 a[href]:hover,button:not(:disabled):hover{outline:1px solid currentColor;outline-offset:3px}
 nav a:hover{outline:none}
 a.button:hover,button.button:hover,.company-grid>.company-link:hover{transform:none}
}
.art-label>span{display:block}
.art-subtitle{margin-top:4px;font-size:inherit;line-height:1.5;letter-spacing:1px}
.art-caption{justify-content:flex-end}
.bridge-bottom{margin-top:-6px}
