/* All principal content is laid out on one native horizontal scroll surface. */
html:has(.horizontal-site){height:100%;overflow:hidden;scroll-behavior:auto}
.horizontal-site{height:100%;overflow:hidden;background:#050e13}
.horizontal-site .header{position:fixed;background:linear-gradient(#050e1af0,#050e1300);height:82px}
.horizontal-viewport{position:fixed;inset:0;display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain;scroll-behavior:auto;z-index:2;outline:none}
.horizontal-viewport::-webkit-scrollbar{display:none}
.horizontal-viewport.is-driving{scroll-snap-type:none}
.screen{position:relative;flex:0 0 100%;width:100%;height:100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:normal;overflow:hidden;background:#050e13f5}
.screen.mobile-continuation{display:none}
.screen-inner{height:100%;width:100%;padding:120px var(--pad) 95px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#49616c transparent;display:flex;flex-direction:column;justify-content:center}
.cover-screen,.manifesto-screen{background:transparent}
.cover-screen .screen-inner,.manifesto-screen .screen-inner{padding:0;overflow:hidden;display:block}
.hero-intro{bottom:145px;opacity:1!important;transform:none!important;will-change:auto}
.hero-label,.hero-coordinate{top:125px}
.hero-story{top:29%;left:51%;opacity:1!important;transform:none!important;pointer-events:auto!important}
.hero-story h1{font-size:clamp(42px,5vw,82px)}
.optical-scene{position:fixed;inset:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse at 65% 42%,#102b39,#07151d 45%,#050e13 75%)}
.optical-scene svg{display:block;width:100%;height:100%;overflow:hidden}
.ring{fill:none;stroke:#80afbf;stroke-width:1}.ring.outer{opacity:.12}.ring.middle{opacity:.25}.ring.accent{opacity:.5;stroke-width:1.5;stroke-dasharray:650 110}.ring.core{stroke:#d2f2f8;stroke-width:1.6}.ring.core-glow{stroke:#d2f2f8;stroke-width:9;opacity:.07}
.incoming,.incoming-glow,.light-ray{fill:none;stroke-width:1.3}.incoming{stroke:url(#incoming)}.incoming-glow{stroke:#c6f8ff;stroke-width:8;opacity:.06}.light-ray{opacity:.85}.light-point{fill:#eefff8}
.journey-controls{position:fixed;z-index:22;bottom:0;left:0;right:0;height:72px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(transparent,#050e13 55%)}
.journey-instruction{font:9px Plex,monospace;color:var(--muted);letter-spacing:.1em;display:flex;align-items:center;gap:18px}.journey-instruction>span{font-size:20px;color:var(--cyan)}
.screen-dots{display:flex;align-items:center;gap:4px}.screen-dots a{display:grid;place-items:center;width:24px;height:34px}.screen-dots span{display:block;width:5px;height:5px;border-radius:50%;background:#70858c;transition:background .15s,transform .15s}.screen-dots a[aria-current=step] span{background:var(--cyan);transform:scale(1.6)}
.screen-stepper{display:flex;align-items:center;gap:18px}.screen-stepper button{color:var(--text);background:transparent;border:1px solid var(--line);height:36px;width:38px;font-size:20px}.screen-stepper button:hover{border-color:var(--cyan);color:var(--cyan)}.screen-stepper button:disabled{opacity:.25;cursor:default}.screen-count{font:10px Plex,monospace;color:var(--muted);min-width:50px;text-align:center}
.intro-section,.care-section,.about-layout,.about-principles,.contact-layout{padding:0;border:0;background:none}
.approach-screen .intro-section{align-items:center;gap:12%}.intro-copy .standout{font-size:clamp(21px,2.5vw,36px)}.intro-copy .text-link{margin-top:24px}
.service-context{margin-bottom:40px;display:flex;justify-content:space-between;gap:30px;align-items:center}.service-context>p{font-size:13px;max-width:320px}
.service-slide{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%}.service-copy h2{font-size:clamp(44px,5.9vw,88px);margin-bottom:23px}.service-copy .tags{color:var(--accent);margin-bottom:25px}.service-copy>p{max-width:510px}.service-copy .service-introduction{font-size:13px;margin-top:18px}.service-copy .text-link{margin-top:24px}
.web-art{height:365px;border:1px solid #ef7a9f45;padding:25px 30px;position:relative;overflow:hidden;background:linear-gradient(130deg,#271923,#0b151c);transform:rotate(-3deg)}.art-browser{display:flex;justify-content:space-between;align-items:center;font:9px Plex,monospace;color:#ef7a9f}.art-browser i{font-size:23px;font-style:normal}.art-headline{font-size:clamp(33px,4vw,60px);line-height:1.1;margin-top:36px;position:relative;z-index:1}.art-headline em{color:var(--pink);font-style:normal}.art-lines{margin-top:24px;display:grid;gap:8px}.art-lines i{height:2px;background:#d5a6b735;width:45%}.art-lines i:last-child{width:30%}.art-cta{font:9px Plex,monospace;display:block;margin-top:25px}.art-orbit{position:absolute;width:260px;height:260px;right:-130px;top:60px;border:1px solid #ef7a9f80;border-radius:50%;box-shadow:0 0 0 35px #ef7a9f07,0 0 0 70px #ef7a9f04}
.search-art{padding:10px 0}.search-input{border:1px solid #4caff34d;padding:20px 24px;display:flex;gap:20px;color:var(--blue);font-size:22px}.search-input span{font-size:13px;color:var(--muted);align-self:center}.search-result{border-left:2px solid var(--blue);margin-top:28px;padding:24px 30px;background:linear-gradient(90deg,#142d40,#071015);position:relative}.search-result small{font:9px Plex,monospace;color:var(--blue)}.search-result strong{display:block;font-size:37px;line-height:1.2;font-weight:400;margin:20px 0}.search-result i{height:2px;background:#4caff340;display:block;margin-top:9px;width:65%}.search-result>span{position:absolute;right:25px;bottom:25px;font-size:25px;color:var(--blue)}.search-ghost{height:28px;margin:18px 30px;border-top:1px solid #4caff31c;border-bottom:1px solid #4caff309}
.direct-art{display:flex;align-items:center;position:relative;height:340px;justify-content:center}.direct-art>span{width:100px;height:100px;display:grid;place-items:center;border:1px solid #65dbe07a;border-radius:50%;font:14px Plex,monospace;flex-shrink:0}.direct-to{box-shadow:0 0 0 18px #65dbe008,0 0 0 36px #65dbe004}.direct-line{height:1px;background:linear-gradient(90deg,#65dbe033,var(--cyan));flex:1;max-width:170px;position:relative}.direct-line i{position:absolute;right:0;top:-2px;width:5px;height:5px;border-radius:50%;background:var(--cyan)}.direct-art small{position:absolute;bottom:24px;font:9px Plex,monospace;letter-spacing:.1em;color:var(--muted)}
.care-section{gap:9%}.care-copy h2{font-size:clamp(45px,5vw,75px);margin:25px 0}.care-copy p{font-size:15px}.care-panel{padding:25px 30px}.heartbeat{height:85px}.care-item{padding:15px 0}.care-claim{font-size:22px;margin-top:20px}
.about-heading{margin-bottom:30px}.about-heading h2{font-size:clamp(44px,5vw,76px);margin-top:20px}.about-layout{grid-template-columns:.75fr 1.4fr;gap:9%;align-items:center}.about-mark{min-height:350px}.about-layout .prose p{font-size:14px}.about-layout .prose .lead{font-size:20px}.about-layout .prose p+p{margin-top:16px}.about-layout .signature{font-size:23px;margin-top:20px}.about-principles{margin-top:55px;gap:50px}.method-screen .section-title{margin-top:30px}.method-cta{margin-top:40px;font-size:14px}.method-cta a{margin-left:25px}
.portfolio-screen .work-heading{margin-bottom:32px}.portfolio-screen h2{font-size:clamp(40px,4.7vw,68px);margin-top:20px}.portfolio-screen .project-image{max-height:40vh}.portfolio-screen .project-note{font-size:13px}.portfolio-screen .project-meta{padding:18px 0}
.contact-heading{margin-bottom:25px}.contact-heading h2{font-size:clamp(40px,4.9vw,70px);margin:17px 0}.contact-heading>p{font-size:14px;max-width:740px}.contact-layout{gap:12%;align-items:start}.contact-form{gap:15px}.field{gap:4px}.field input,.field textarea{padding:10px 0;font-size:14px}.field textarea{min-height:85px;height:85px}.form-note{font-size:11px}.contact-item{padding:14px 0}.contact-item>a,.contact-item>p{font-size:22px}.contact-item .secondary{font-size:12px;margin-top:3px}.contact-item small{margin-top:3px}.contact-details .contact-item:last-child{border-bottom:0}
.closing-cta h2{font-size:clamp(46px,6vw,90px);margin:22px 0}.closing-screen .footer{padding:35px 0 0;margin-top:35px}.closing-screen .footer-top{padding-bottom:25px}.closing-screen .footer-brand .logo{font-size:21px}.closing-screen .footer-brand p{margin-top:10px}.closing-screen .footer-links{gap:5px}.closing-screen .footer-bottom{padding-top:15px}
.privacy-dialog{color:var(--text);background:#08171e;border:1px solid var(--line);width:min(900px,calc(100% - 30px));max-height:85dvh;padding:35px;overscroll-behavior:contain}.privacy-dialog::backdrop{background:#02090de8}.privacy-dialog>form{display:flex;justify-content:flex-end;position:sticky;top:0}.privacy-dialog>h2{font-size:clamp(30px,4vw,54px);margin:25px 0}.privacy-dialog .privacy-content{padding:0}.privacy-dialog .eyebrow{margin-top:15px}
@media(max-height:760px) and (min-width:901px){.screen-inner{padding-top:100px;padding-bottom:80px}.hero-intro{bottom:115px}.hero-story{top:22%}.hero-label,.hero-coordinate{top:103px}.service-context{margin-bottom:22px}.service-copy h2{font-size:58px}.care-copy h2{font-size:52px;margin:15px 0}.care-copy p{font-size:13px}.care-copy p+p{margin-top:12px}.care-item{padding:11px 0}.heartbeat{height:55px;padding:12px 0}.care-claim{font-size:18px;margin-top:12px}.about-heading{margin-bottom:15px}.about-heading h2{font-size:46px;margin-top:12px}.about-layout .prose p{font-size:13px}.about-layout .prose .lead{font-size:17px}.contact-heading h2{font-size:44px;margin:12px 0}.contact-heading{margin-bottom:14px}.contact-item{padding:10px 0}.contact-form{gap:10px}.closing-cta h2{font-size:55px}.closing-screen .footer{margin-top:20px;padding-top:25px}}
@media(max-width:900px){.journey-instruction{display:none}.hero-story{left:44%}.hero-story h1{font-size:50px}.service-slide{gap:6%}.service-copy h2{font-size:48px}.web-art{padding:20px;height:330px}.service-copy>p{font-size:14px}.about-layout{gap:5%;grid-template-columns:.7fr 1.3fr}.about-mark:before{width:240px;height:240px}.about-mark:after{width:300px;height:300px}.contact-item>a,.contact-item>p{font-size:19px}}
@media(max-width:650px){.horizontal-site .header{height:76px}.screen-inner{padding:105px 24px 88px;justify-content:flex-start}.hero-intro{bottom:140px}.hero-label{top:105px}.hero-story{top:39%;left:24px;right:24px}.hero-story h1{font-size:clamp(38px,10vw,54px)}.hero-story p{font-size:14px}.hero-story .text-link{margin-top:18px}.journey-controls{padding:0 18px;height:65px;gap:8px}.screen-stepper{gap:9px}.screen-stepper button{width:33px;height:34px}.screen-count{font-size:9px;min-width:40px}.screen-dots{gap:0}.screen-dots a{width:15px;height:34px}.screen-dots span{width:4px;height:4px}.intro-section{gap:25px}.intro-section h2{font-size:36px;margin-top:20px}.intro-copy p{font-size:14px}.intro-copy p+p{margin-top:16px}.intro-copy .standout{font-size:24px;margin:23px 0}.intro-copy .text-link{margin-top:18px}.service-context{display:block;margin-bottom:28px}.service-context .eyebrow{font-size:8px;letter-spacing:.08em}.service-context>p{font-size:11px;margin-top:13px;max-width:100%}.service-slide{grid-template-columns:1fr;gap:30px}.service-copy h2{font-size:44px}.service-copy .tags{font-size:9px;margin:17px 0}.service-copy>p{font-size:14px}.service-copy .service-introduction{font-size:12px}.service-copy .text-link{margin-top:18px}.web-art,.search-art,.direct-art{display:none}.care-section{gap:30px}.care-copy h2{font-size:43px}.care-copy p{font-size:14px}.care-panel{padding:20px}.panel-top{font-size:8px}.care-item p{font-size:12px}.about-heading{margin-bottom:25px}.about-heading h2{font-size:43px}.about-layout{grid-template-columns:1fr}.about-mark{display:none}.about-layout .prose .lead{font-size:19px}.about-layout .prose p{font-size:14px}.about-principles{grid-template-columns:1fr;margin-top:25px;gap:24px}.about-principles h2{font-size:26px;margin:10px 0}.about-principles p{font-size:14px}.method-screen .section-title{font-size:35px;margin-top:20px}.method-cta{margin-top:25px}.method-cta a{margin-left:0}.portfolio-screen .work-heading{margin-bottom:25px}.portfolio-screen .work-heading>p{display:none}.portfolio-screen h2{font-size:39px;margin-top:18px}.portfolio-screen .work-grid{gap:14px}.portfolio-screen .project-image{max-height:none;aspect-ratio:1.9}.portfolio-screen .project-meta h3{font-size:21px}.portfolio-screen .project-meta p{font-size:10px}.portfolio-screen .project-meta{padding:13px 0}.portfolio-screen .project-note{font-size:12px}.contact-heading h2{font-size:41px}.contact-heading>p{font-size:13px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-details{margin-top:10px}.closing-cta h2{font-size:46px}.closing-screen .footer{margin-top:30px}.closing-screen .footer-top{gap:25px}.closing-screen .footer-bottom div{flex-wrap:wrap}.privacy-dialog{padding:20px}}
@media(max-width:650px){.screen.mobile-continuation{display:block}.desktop-detail{display:none}.mobile-continuation .screen-inner>.eyebrow{margin-bottom:35px;font-size:9px}.mobile-continuation .contact-details{margin-top:0}.mobile-continuation .contact-item{padding:20px 0}.portfolio-screen .project-image{aspect-ratio:2.3}.screen-dots a{width:12px}.contact-screen .contact-heading{margin-bottom:20px}.care-screen .care-copy h2{margin-top:30px}.privacy-dialog .privacy-content{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.horizontal-site .hero-intro{top:auto;bottom:145px}.horizontal-site .hero-story{top:29%;max-width:none}.horizontal-site .hero-story h1{font-size:clamp(42px,5vw,82px)}@media(max-width:650px){.horizontal-site .hero-story{top:39%}.horizontal-site .hero-story h1{font-size:clamp(38px,10vw,54px)}}}
