:root{--paper:#0c0c0e;--ink:#ecece8;--muted:#6a6a70;--line:#ffffff1c;--dark:#111114}body{background:var(--paper)}body:before{content:'';position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='white' filter='url(%23n)' opacity='.65' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.header{border:0;height:100px}.brand img{filter:invert(1);mix-blend-mode:screen}.header nav .nav-contact{border-color:#ffffff45;transition:background .25s}.header nav .nav-contact:hover{background:white;color:#111}.hero{min-height:850px;height:min(950px,100svh);position:relative;isolation:isolate;overflow:hidden;padding-top:25px}.hero-top{position:relative;z-index:3}.hero-location{color:#73737c}.live-dot{background:#ccd1c0;box-shadow:0 0 10px #cdd2bf66}.hero h1{margin:115px 0 30px;font-size:clamp(95px,10.3vw,163px);position:relative;z-index:2;width:70%;letter-spacing:-.065em;line-height:1.03;pointer-events:none}.hero h1 .serif{color:#a9abb4;display:inline-block}.hero-bottom{position:relative;z-index:3;display:block;margin:0;pointer-events:none}.hero-bottom p{font-size:13px;line-height:1.9;color:#8d8d98}.hero-bottom .text-link{pointer-events:auto;display:inline-flex;margin-top:27px;gap:30px}.circle{border-color:#ffffff35}.brand-stage{position:absolute;z-index:-1;right:-8%;top:55px;width:72%;height:calc(100% - 120px);background:none;overflow:visible;min-height:650px}.brand-stage:after{background:linear-gradient(90deg,#0c0c0e 0%,transparent 35%);box-shadow:none;z-index:1}.stage-grid{display:none}.hero-symbol{display:none}.stage-label,.stage-footer{display:none}.brand-canvas{width:100%;height:100%;display:block;position:relative;z-index:0}.hero-footnote{position:absolute;bottom:20px;left:5%;right:5%;z-index:3;color:#767680;border-color:#ffffff20}.hero-footnote>span:last-child{color:#c9c9d0}.hero:after{content:'';height:180px;position:absolute;left:0;right:0;bottom:0;background:linear-gradient(transparent,#0c0c0e);z-index:-1;pointer-events:none}.intro{padding-top:145px;padding-bottom:145px}.intro-main h2{font-size:clamp(40px,4.5vw,72px)}.little-line{border-color:#676771}.intro-copy p{color:#c1c1c9}.intro-copy p+p{color:#777782}.under-link{border-color:#ffffff40}.projects{background:#111114;padding-top:65px;padding-bottom:115px}.small-note{color:#666671}.projects-title h2{font-size:clamp(45px,5.6vw,82px)}.projects-count{color:#62626b}.project-grid{gap:40px}.project-visual{height:490px;transition:box-shadow .5s;transform-style:preserve-3d;will-change:transform}.visual-iahadut{background:radial-gradient(ellipse at 50% 30%,#a2b4a2,#526557);color:#e9efdf}.visual-ygirls{background:radial-gradient(ellipse at 50% 20%,#69414e,#2e1923)}.project-info{border-color:#ffffff20}.project-info h3{color:#e9e9e9;font-size:23px}.project-info p{color:#7a7a85}.project-info>span{color:#777782}.project-second{padding-top:150px}.project-open{background:#ffffff10;border-color:#ffffff55;backdrop-filter:blur(10px)}.project-card:hover .project-open{background:#f1f1ed;color:#151515;transform:rotate(45deg)}.visual-tag{color:#ffffffaa}.projects-title{margin-top:60px;margin-bottom:70px}.services{padding-top:130px}.services-heading h2{font-size:clamp(40px,4.7vw,72px)}.services-heading>p,.process-heading>p{color:#787883}.service-type,.service-number{color:#7a7a86}summary h3{font-size:38px;font-weight:400;transition:transform .3s,color .3s}summary:hover h3{transform:translateX(8px);color:white}.service-body>p{color:#91919c}.service-tags span{border-color:#ffffff25;color:#a8a8b1}.process{padding-top:65px;padding-bottom:150px}.process-steps p{color:#80808b}.process-steps article>span{color:#666673}.contact{background:#ddddda;color:#111114;position:relative;overflow:hidden}.contact:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--mx,70%) var(--my,50%),#ffffff99,transparent 65%)}.contact>*{position:relative}.contact-top>span{color:#767678}.contact-title{font-size:clamp(95px,13vw,190px);margin-top:85px}.contact-bottom{border-color:#1113}.contact-bottom p{color:#68686c}.contact-button{border-color:#77777c}.contact .contact-button:hover{background:#111;color:white}footer{padding-top:45px}footer>span,footer>a:not(.brand){color:#666672}dialog{background:#18181c;color:#ececec;border:1px solid #ffffff1a}dialog>p:not(.eyebrow){color:#a0a0ab}dialog .contact-button:hover{background:#eee;color:#111}.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0;background:#e9e9e1;z-index:50;box-shadow:0 0 10px #fff5}.cursor-halo{width:36px;height:36px;position:fixed;top:0;left:0;border:1px solid #ffffff60;border-radius:50%;pointer-events:none;z-index:40;opacity:0;transition:width .25s,height .25s,background .25s;mix-blend-mode:difference}.cursor-halo.active{width:70px;height:70px;background:#ffffff13}.reveal{opacity:0;transform:translateY(50px);transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1)}.reveal.in-view{opacity:1;transform:translateY(0)}.hero h1{animation:headline-in 1.2s cubic-bezier(.22,1,.36,1) both}.hero-bottom{animation:headline-in 1.2s .15s cubic-bezier(.22,1,.36,1) both}@keyframes headline-in{from{opacity:0;transform:translateY(35px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@media(min-width:1600px){.hero{height:950px}}@media(max-width:1000px){.hero{min-height:800px}.hero h1{margin-top:135px;font-size:12vw}.brand-stage{right:-22%;width:90%;opacity:.8}.project-visual{height:390px}}@media(max-width:650px){.header{height:80px}.header nav{background:#111114;border-color:#ffffff25}.hero{height:auto;min-height:860px;padding-top:22px;padding-bottom:75px}.hero h1{margin-top:55px;font-size:19.4vw;width:100%;line-height:1.02}.hero h1 .serif{white-space:nowrap}.hero-bottom p{font-size:12px;max-width:none}.hero-bottom .text-link{display:flex;justify-content:space-between;max-width:290px;margin-top:22px}.brand-stage{top:340px;right:-19%;height:470px;min-height:0;width:135%;opacity:1}.brand-stage:after{background:linear-gradient(#0c0c0e 0%,transparent 20%,transparent 80%,#0c0c0e)}.hero-footnote{left:6%;right:6%;bottom:18px}.intro{padding-top:80px;padding-bottom:80px}.intro-main h2{font-size:37px}.intro-copy{padding-left:8%}.projects{padding-top:35px;padding-bottom:70px}.projects-title{margin:35px 0}.projects-title h2{font-size:39px}.project-grid{gap:40px}.project-second{padding-top:0}.project-visual{height:390px}.project-info h3{font-size:21px}.services{padding-top:75px}.services-heading h2{font-size:37px}summary h3{font-size:25px}.process{padding-top:20px;padding-bottom:80px}.contact-title{font-size:18vw;margin:50px 0 35px}.contact-bottom .contact-button{width:100%}.cursor-halo{display:none}.reveal{transform:translateY(25px)}}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.cursor-halo{display:none}}
.project-afy{grid-column:1/-1;margin-top:35px}.visual-afy{height:420px;background:radial-gradient(ellipse at 65% 45%,#282e57 0%,#15182b 40%,#10121d 80%);color:#e1e3f4}.afy-wordmark{position:relative;z-index:1;font:500 clamp(100px,15vw,220px)/.9 'Manrope',sans-serif;letter-spacing:-.09em;padding-right:.09em;text-shadow:0 0 65px #b2baff20;transition:letter-spacing .7s}.afy-wordmark>span{display:block;text-align:center;font:500 9px/1.5 'DM Sans',sans-serif;letter-spacing:5px;margin:28px 0 0 9px;color:#999fc3}.afy-orbit{position:absolute;left:50%;top:50%;width:600px;height:220px;border:1px solid #a5afd52b;border-radius:50%;transform:translate(-50%,-50%) rotate(-25deg)}.orbit-two{width:720px;height:300px;transform:translate(-50%,-50%) rotate(25deg);border-color:#a5afd515}.orbit-one:before{content:'';position:absolute;top:50%;left:-3px;width:5px;height:5px;border-radius:50%;background:#abb5e6;box-shadow:0 0 15px #8f9fdc;animation:afy-light 4s ease-in-out infinite}.project-afy:hover .afy-wordmark{letter-spacing:-.055em}.project-afy .project-info>span{white-space:normal;text-align:right}@keyframes afy-light{0%,100%{opacity:.3;box-shadow:0 0 5px #8f9fdc}50%{opacity:1;box-shadow:0 0 20px #8f9fdc}}@media(max-width:650px){.project-afy{grid-column:auto;margin-top:0}.visual-afy{height:350px}.afy-wordmark{font-size:110px}.afy-wordmark>span{font-size:7px;letter-spacing:3px}.afy-orbit{width:390px;height:160px}.orbit-two{width:450px;height:210px}.project-afy .project-info>span{max-width:105px;font-size:7px}}
.services summary{grid-template-columns:65px minmax(0,1fr) 260px 30px}.services summary h3{font-size:clamp(25px,2.8vw,38px)}@media(max-width:1000px){.services summary{grid-template-columns:45px minmax(0,1fr) 30px}}@media(max-width:650px){.services summary{grid-template-columns:27px minmax(0,1fr) 25px;gap:8px}.services summary h3{font-size:24px;line-height:1.2}.services .service-body{margin-left:35px}.hero-bottom .text-link{max-width:330px}}
.services summary{grid-template-columns:minmax(0,1fr) 260px 30px}.services .service-body{margin-left:0}.services .services-heading{gap:45px}.services .services-heading h2{font-size:clamp(36px,4.3vw,66px)}.services-open-note{max-width:600px;margin:60px 0 0 auto;border-left:1px solid #ffffff30;padding-left:28px}.services-open-note>span{font-size:22px;letter-spacing:-.6px}.services-open-note p{font-size:13px;line-height:1.8;color:#898994}.contact-title{width:fit-content}.contact-title:hover .serif{color:#55555f;transition:color .3s}.hero-bottom .text-link{border-bottom:1px solid #ffffff45;padding-bottom:10px}@media(max-width:1000px){.services summary{grid-template-columns:minmax(0,1fr) 30px}}@media(max-width:650px){.services summary{grid-template-columns:minmax(0,1fr) 25px}.services .service-body{margin-left:0}.services .services-heading h2{font-size:35px}.services-open-note{padding-left:20px;margin-top:40px}.services-open-note>span{font-size:19px}}
.serif{font-family:'Manrope',sans-serif;font-style:normal;font-weight:500;letter-spacing:-.055em}.hero h1{font-weight:650;font-size:clamp(88px,9.4vw,150px);letter-spacing:-.065em;line-height:1.07}.hero h1 .serif{font-weight:650;letter-spacing:inherit;color:#c4c6cf}.services-heading .serif{font-weight:500}.contact-title .serif{font-weight:500}@media(max-width:1000px){.hero h1{font-size:11.2vw}}@media(max-width:650px){.hero h1{font-size:17.2vw;line-height:1.1;letter-spacing:-.06em}.hero h1 .serif{white-space:nowrap}.contact-title{font-size:17vw}}
.hero h1,.hero h1 .serif{font-weight:400;letter-spacing:-.055em}.hero h1 .serif{color:#b5b7c1}.serif,.services-heading .serif,.contact-title,.contact-title .serif{font-weight:400}.hero h1{line-height:1.12}.hero-bottom p{font-weight:400}.services-heading h2{font-weight:400}
.brand-stage.journey-stage{position:fixed;inset:0;width:100%;height:100svh;min-height:0;margin:0;opacity:1;z-index:0;pointer-events:none;overflow:hidden;background:none}.journey-stage:after{display:none}.header,main,footer{position:relative;z-index:1}.hero{background:transparent}.hero:after{display:none}.contact{background:transparent;color:var(--ink);border-top:1px solid #ffffff20}.contact:before{background:radial-gradient(ellipse at var(--mx,70%) var(--my,50%),#ffffff06,transparent 65%)}.contact-bottom{border-color:#ffffff25}.contact-bottom p{color:#93939c}.contact-top>span{color:#777782}.contact .contact-button:hover{background:#ecece8;color:#111114}.contact-title:hover .serif{color:#c7c9d2}footer{background:#0c0c0e}body:before{z-index:20}@media(prefers-reduced-motion:reduce){.journey-stage{opacity:.5}}
.scroll-progress{width:100%;transform:scaleX(0);transform-origin:left;will-change:transform}.journey-stage{contain:strict}.cursor-halo{will-change:transform}.hero h1,.hero-bottom{animation-name:headline-in-light}@keyframes headline-in-light{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@media(pointer:coarse){body:before{display:none}.journey-stage{transform:translateZ(0)}.brand-canvas{transform:translateZ(0)}.reveal{transition-duration:.55s;transform:translateY(16px)}.reveal.in-view{transform:translateY(0)}}
.studio-principles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:50px;margin-top:90px}.studio-principles article{border-top:1px solid var(--line);padding-top:24px}.principle-value{display:block;font-family:'Manrope',sans-serif;font-size:clamp(40px,4.7vw,64px);font-weight:400;letter-spacing:-.06em;line-height:1.2;white-space:nowrap}.principle-type{font-size:clamp(25px,2.7vw,38px);letter-spacing:-.05em;min-height:77px;display:flex;align-items:center}.studio-principles h3{font-size:16px;font-weight:500;letter-spacing:-.3px;margin:24px 0 12px}.studio-principles p{font-size:12px;line-height:1.8;color:#898994;max-width:300px;margin:0}@media(max-width:650px){.studio-principles{grid-template-columns:1fr;gap:32px;margin-top:50px}.studio-principles article{padding-top:20px}.principle-value{font-size:45px}.principle-type{font-size:33px;min-height:0}.studio-principles h3{margin-top:18px}.studio-principles p{max-width:100%}}

.hero h1{font-size:clamp(78px,8.1vw,130px)}.hero-bottom p{max-width:510px}@media(max-width:1000px){.hero h1{font-size:9.5vw}}@media(max-width:650px){.hero h1{font-size:14.5vw}.hero-bottom p{max-width:310px}.hero-bottom p br{display:none}}

.services summary{grid-template-columns:minmax(0,1fr) 30px}.contact-title{font-size:clamp(64px,9vw,140px)}@media(max-width:650px){.services summary{grid-template-columns:minmax(0,1fr) 25px}.contact-title{font-size:13.8vw}}

.quote-note{display:inline-block;margin-top:12px;color:var(--ink)}.contact-email{display:inline-block;margin-top:26px;font-size:14px;color:#b5b5bf;border-bottom:1px solid #ffffff35;padding-bottom:6px;overflow-wrap:anywhere}

/* Keep touch navigation vertical without pinch or double-tap zoom. */
html,body{touch-action:pan-y;}

.services .detail-icon{display:inline-block;text-align:center;transform:rotate(0deg);transform-origin:center;transition:transform .65s cubic-bezier(.22,1,.36,1);}
.services details[open] .detail-icon{transform:rotate(405deg);}
@media(prefers-reduced-motion:reduce){.services .detail-icon{transition:none;}}

.services .detail-icon,.services details[open] .detail-icon{transform:rotate(var(--icon-angle,0deg));transition-duration:.65s;}
.services details[open] .detail-icon{transition-duration:.28s;}
.process-steps{position:relative;gap:48px;}
.process-steps:before{content:'';position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,#2764ff,#78a0ff88,#ffffff20);}
.process-steps article{position:relative;border-top:0;padding-top:25px;}
.process-steps article:before{content:'';position:absolute;top:-4px;left:0;width:9px;height:9px;border-radius:50%;background:#6490ff;box-shadow:0 0 0 5px #0c0c0e,0 0 15px #316bff44;}
@media(max-width:650px){.process-steps{gap:32px;padding-left:26px;}.process-steps:before{top:4px;bottom:0;left:4px;right:auto;width:1px;height:auto;background:linear-gradient(#2764ff,#78a0ff88,#ffffff20);}.process-steps article{padding-top:0;}.process-steps article:before{left:-26px;top:3px;}.process-steps h3{margin-top:15px;}}
@media(prefers-reduced-motion:reduce){.services .detail-icon{transition:none;}}

.contact-options{display:grid;gap:12px;width:min(100%,420px);}.contact-options .contact-button{width:100%;justify-content:center;text-align:center;background:transparent;color:inherit;cursor:pointer;min-height:52px;}.contact-form-panel{max-width:700px;margin:45px 0 0 auto;border-top:1px solid var(--line);padding-top:28px;}.contact-form-panel[hidden]{display:none;}.contact-form-panel h3{font-size:28px;font-weight:400;margin:0 0 12px;}.contact-form-panel>p,.form-privacy,#lead-form-status{font-size:13px;line-height:1.7;color:#a1a1ac;}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:26px;}.contact-fields label{font-size:13px;display:grid;gap:9px;}.contact-fields label span{color:#777782;font-size:11px;}.contact-fields input,.contact-fields textarea{width:100%;min-width:0;border:1px solid #ffffff30;background:#101014;color:#eee;border-radius:10px;padding:14px;font:inherit;font-size:16px;}.contact-fields input:focus,.contact-fields textarea:focus{outline:2px solid #6490ff;outline-offset:2px;}.contact-fields label:last-child{grid-column:1/-1;}.form-trap{position:absolute;left:-9999px;}.contact-form-panel .contact-button{background:transparent;color:inherit;cursor:pointer;}.contact-form-panel .contact-button:disabled{opacity:.5;cursor:wait;}@media(max-width:650px){.contact-bottom{display:flex;flex-direction:column;align-items:stretch;gap:28px;}.contact-options{width:100%;}.contact-fields{grid-template-columns:1fr;gap:18px;}.contact-form-panel{margin-top:30px;}.contact-form-panel .contact-button{width:100%;}.contact-bottom p{max-width:100%;}}

.contact-options .contact-button{margin:0;font-size:14px;padding:16px 20px;line-height:1.3;}

.contact-bottom{align-items:flex-start;gap:50px;}.contact-options{width:auto;min-width:320px;grid-template-columns:1fr 1fr;gap:22px 28px;}.contact-options .contact-primary{grid-column:1/-1;width:auto;justify-self:start;min-height:48px;padding:14px 24px;border-radius:28px;border-color:#ffffff60;}.contact-options .contact-secondary{min-height:0;padding:0 0 7px;border:0;border-bottom:1px solid #ffffff30;border-radius:0;width:fit-content;text-align:left;justify-content:flex-start;font-size:13px;}.contact .contact-options .contact-secondary:hover{background:transparent;color:#fff;border-bottom-color:#fff;}.contact-bottom>p{margin-top:4px;}.contact-form-panel{margin-top:35px;}@media(max-width:650px){.contact-bottom{gap:25px;}.contact-options{min-width:0;width:100%;gap:22px 24px;}.contact-options .contact-primary{width:fit-content;}.contact-options .contact-secondary{width:fit-content;}.contact-options .contact-primary{font-size:14px;}}

/* Service discovery links keep the landing compact and readable. */
.service-more{display:block;width:fit-content;max-width:100%;font-size:13px;line-height:1.6;margin-top:22px;color:#9bb8ff;border-bottom:1px solid #9bb8ff55;padding-bottom:5px}.service-more:hover{color:#d5e1ff}.footer-services{display:flex;flex-wrap:wrap;gap:14px 26px;width:100%;font-size:12px;line-height:1.6;color:#b1b1bc}.footer-services a:hover{color:white}@media(max-width:650px){.footer-services{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px;font-size:11px}.service-more{font-size:12px}}

.project-discovery{display:block;width:100%;font-size:12px;color:#b1b1bc;margin-top:8px}.project-discovery:hover{color:white}
