@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--ink:#151519;--muted:#727277;--paper:#fafafa;--pink:#f23d69;--purple:#8c47cf;--line:#dedee2;--font:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;height:auto}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:550;line-height:1.12;letter-spacing:-.055em}.gradient{background:linear-gradient(105deg,#e65347 3%,#e43283 49%,#8541c4 96%);color:transparent;background-clip:text;-webkit-background-clip:text}.muted{color:var(--muted)}.skip-link{position:absolute;z-index:30;top:-100px;left:20px;background:white;padding:10px}.skip-link:focus{top:10px}.header{position:absolute;left:0;right:0;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:29px 4.2%;transition:background .2s}.header.scrolled{position:fixed;background:rgba(250,250,250,.93);backdrop-filter:blur(16px);border-bottom:1px solid #ededf0;padding-top:16px;padding-bottom:16px}.logo{font-size:38px;font-weight:700;letter-spacing:-.075em;line-height:1}.logo span{color:var(--pink)}.header-actions{display:flex;align-items:center;gap:47px}.button{display:inline-flex;align-items:center;justify-content:center;gap:27px;min-height:46px;padding:8px 24px;border:1px solid currentColor;border-radius:9px;background:transparent;font-size:15px;font-weight:450;line-height:1.4;transition:background .2s,transform .2s,color .2s}.button:hover{background:var(--ink);color:white;transform:translateY(-2px)}.button-light:hover{background:white;color:var(--ink)}.menu-toggle{position:relative;background:none;border:0;padding:8px 0;width:40px;height:40px;display:grid;align-content:center;gap:6px}.menu-toggle span{height:1.5px;background:var(--ink);width:100%;transition:transform .2s,width .2s}.menu-toggle span:nth-child(2){width:65%;justify-self:end}.menu-toggle span:nth-child(3){width:45%;justify-self:end}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(7.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){width:100%;transform:translateY(-7.5px) rotate(-45deg)}.menu{position:fixed;z-index:15;inset:0;background:#f7f5f8;padding:150px 9% 60px;display:flex;align-items:center;justify-content:space-between;gap:50px}.menu[hidden]{display:none}.menu-links{width:min(650px,70%)}.menu-links a{display:flex;justify-content:space-between;gap:40px;align-items:center;border-bottom:1px solid var(--line);padding:17px 0;font-size:clamp(28px,4vw,52px);letter-spacing:-.05em}.menu-links span{font-size:12px;letter-spacing:0}.menu>p{color:var(--muted);line-height:2}.hero{height:max(720px,95vh);max-height:1000px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;text-align:center;padding:140px 7% 180px}.hero-watermark{position:absolute;top:50%;left:50%;transform:translate(-50%,-65%);font-size:clamp(90px,15vw,235px);font-weight:550;line-height:1;letter-spacing:-.07em;white-space:nowrap;color:white;pointer-events:none}.hero-content{position:relative;z-index:1}.hero h1{font-size:clamp(32px,3.25vw,49px);font-weight:400;line-height:1.08;letter-spacing:-.06em}.hero h1 .gradient{font-weight:600}.hero p{max-width:870px;margin:34px auto 23px;font-size:16px;line-height:1.8}.hero strong{font-weight:650}.scroll-cue{position:absolute;left:21px;top:45%;writing-mode:vertical-rl;transform:rotate(180deg);font-size:12px;display:flex;gap:15px}.discipline-strip{position:absolute;bottom:47px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:24px}.discipline-strip>div{display:flex;align-items:center;gap:19px;text-align:left}.discipline-strip b{font-size:23px;letter-spacing:-.06em;line-height:1}.discipline-strip span{font-size:10px;color:#6e6e75;line-height:1.3}.section-surface{margin:0 15px 16px;border-radius:24px;padding:110px 3.6%;scroll-margin-top:20px}.kicker{font-size:14px;line-height:1.5;font-weight:400;color:var(--muted);letter-spacing:-.025em;display:flex;align-items:center;gap:15px;margin-bottom:21px}.dot{display:inline-block;width:13px;height:13px;flex-shrink:0;border-radius:50%;background:var(--pink);box-shadow:0 0 10px #f23d6912}h2{font-size:clamp(32px,3.6vw,54px)}.intro{background:#fff;display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center;min-height:780px}.intro-copy h2{font-size:clamp(34px,3.1vw,46px);margin-bottom:34px}.intro-copy>p:not(.kicker){font-size:16px;margin-bottom:20px;line-height:1.9;max-width:560px}.intro-copy .button{margin-top:2px}.intro-collage{height:480px;position:relative}.intro-collage img{object-fit:cover;border-radius:30px}.collage-small{position:absolute;left:12%;top:0;width:25%;height:140px}.collage-tall{position:absolute;left:0;top:175px;width:35%;height:245px}.collage-site{position:absolute;right:0;top:85px;width:58%;height:310px;border-radius:30px;background:#070d29;overflow:hidden;color:white;box-shadow:0 25px 55px #18122312}.collage-site img{height:100%;width:100%;object-fit:cover;opacity:.85}.mini-nav{position:absolute;top:16px;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;z-index:1}.mini-nav b{font-size:18px;letter-spacing:-.04em}.mini-nav span{font-size:7px}.mini-bottom{position:absolute;bottom:23px;left:22px;font-size:27px;line-height:1;letter-spacing:-.06em}.collage-caption{position:absolute;bottom:0;left:12%;font-size:11px;color:var(--muted)}.portfolio{background:radial-gradient(ellipse at 0 0,#30231f 0,transparent 48%),radial-gradient(ellipse at 100% 100%,#261c30 0,transparent 50%),#151717;color:white;padding-top:105px;padding-bottom:85px}.portfolio .kicker{color:#a0a0a2}.section-heading{margin-bottom:65px}.section-heading h2{max-width:760px;font-size:clamp(32px,3.1vw,46px);font-weight:550}.concept-note{font-size:12px;margin-top:22px;color:#aaa8b0}.projects{display:grid;grid-template-columns:1fr 1fr;column-gap:5%;row-gap:55px;margin-bottom:68px}.project{background:none;border:none;display:block;text-align:left;padding:0;min-width:0;align-self:start}.project:nth-child(even){margin-top:115px}.project-image{position:relative;aspect-ratio:1.2;overflow:hidden;border-radius:22px;isolation:isolate}.project-image>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.65,.3,1);z-index:-2}.project:hover .project-image>img{transform:scale(1.045)}.project-screen{position:absolute;inset:20px;pointer-events:none}.screen-brand{position:absolute;top:0;left:0;font-size:27px;letter-spacing:-.065em;font-weight:650;line-height:1}.screen-nav{position:absolute;top:2px;right:0;font-size:8px}.screen-title{position:absolute;bottom:49px;left:0;font-size:clamp(23px,3.1vw,46px);font-weight:550;letter-spacing:-.06em;line-height:.95}.screen-cta{position:absolute;bottom:0;left:0;border:1px solid currentColor;padding:6px 10px;font-size:8px;border-radius:30px}.zest{color:#201c25}.zest .project-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#f0dcf1c9,transparent 48%);z-index:-1}.zest .screen-title{color:#21182c;text-shadow:0 1px 25px #fff8}.orbit .project-image:after,.haven .project-image:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#070c1cbd,transparent 65%);z-index:-1}.haven-logo{font-family:Georgia,serif;font-weight:400;font-style:italic}.haven .screen-title{font-family:Georgia,serif;font-weight:400;font-size:clamp(36px,4.5vw,66px);letter-spacing:-.06em}.forma-lab{color:#242331}.forma-lab .project-image>img{object-position:center}.forma-lab .screen-title{font-weight:500;text-shadow:0 1px 25px white}.project-arrow{position:absolute;right:20px;bottom:20px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#fffc;color:#111;transition:transform .3s}.project:hover .project-arrow{transform:rotate(45deg)}.project-meta{display:flex;justify-content:space-between;gap:25px;padding:20px 0 0;color:#fff}.project-meta h3{font-size:24px;line-height:1.2;margin-bottom:10px}.project-meta p{font-size:12px;line-height:1.5;color:#b4b2bb}.project-meta>span{font-size:10px;padding-top:6px;color:#b4b2bb;white-space:nowrap}.portfolio>.button{margin-top:10px}.services{background:white;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;padding-top:120px}.service-intro h2{font-size:clamp(60px,7.5vw,112px);line-height:.93;letter-spacing:-.07em;font-weight:500}.service-art{margin:35px -18px -25px}.service-art img{width:100%;mix-blend-mode:multiply}.service-copy{padding-top:10px}.service-copy>.lead{font-size:21px;letter-spacing:-.04em;font-weight:500;line-height:1.5;margin-bottom:22px}.service-copy>p:not(.lead){font-size:15px;line-height:1.85;color:#626268}.accordions{border-top:1px solid var(--line);margin-top:30px}.accordions details{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;cursor:pointer;font-size:17px;line-height:1.4;letter-spacing:-.035em;font-weight:500}summary::-webkit-details-marker{display:none}summary span{font-size:24px;font-weight:400;transition:transform .2s;color:var(--muted)}details[open] summary span{transform:rotate(45deg)}details p{font-size:14px;color:#66666c;line-height:1.8;padding:0 25px 22px 0}.service-copy>.button{margin-top:32px}.difference{background:#f0edf2}.difference-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%;align-items:center}.difference-tabs{border-top:1px solid #cecad2}.difference-tabs button{background:none;border:0;border-bottom:1px solid #cecad2;width:100%;padding:24px 0;display:flex;align-items:center;justify-content:space-between;font-size:21px;letter-spacing:-.04em;text-align:left;color:#8e8994}.difference-tabs button[aria-selected=true]{color:#19151d}.difference-tabs button[aria-selected=true] span{color:var(--pink)}.principle-panel{position:relative;min-height:330px;padding:35px 0}.principle-number{position:absolute;right:5px;top:-40px;font-size:200px;line-height:1;color:white;font-weight:600;letter-spacing:-.07em}.principle-panel h3{position:relative;font-size:clamp(30px,3.1vw,45px);margin-bottom:28px}.principle-panel p{position:relative;font-size:16px;line-height:1.8;max-width:470px}.process{background:white}.process-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:center}.process-visual{aspect-ratio:.95;border-radius:25px;overflow:hidden;position:relative;background:#030a24}.process-visual img{width:100%;height:100%;object-fit:cover}.process-visual>span{position:absolute;left:32px;bottom:32px;font-size:clamp(32px,4vw,60px);font-weight:500;letter-spacing:-.06em;line-height:1;color:white}.process-steps article{padding:22px 0;border-top:1px solid var(--line)}.process-steps article>span{font-size:11px;color:#8b768c}.process-steps h3{font-size:23px;margin:10px 0 12px;font-weight:500}.process-steps p{font-size:14px;color:#6c6c72;max-width:440px;line-height:1.8}.faq{background:#f0edf2;display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.faq h2{font-size:clamp(45px,5.5vw,80px)}.faq .accordions{margin-top:0}.contact{text-align:center;background:white;padding-bottom:35px}.contact>.kicker{justify-content:center}.contact h2{font-size:clamp(45px,6.2vw,90px);line-height:1.03;font-weight:500}.contact>p:not(.kicker){margin:29px 0;color:#68686d}.contact-foot{margin-top:100px;border-top:1px solid #e9e9ec;padding-top:35px;display:flex;align-items:center;justify-content:space-between;gap:25px;text-align:left}.contact-foot span,.contact-foot>a:last-child{font-size:12px;color:var(--muted)}.footer{display:flex;justify-content:space-between;gap:20px;padding:10px 5% 26px;font-size:10px;color:var(--muted)}dialog{border:0;padding:0;max-height:90vh;overflow:auto;border-radius:24px;box-shadow:0 30px 90px #19142a33;background:white;color:var(--ink)}dialog::backdrop{background:#100c20a6;backdrop-filter:blur(9px)}.project-dialog{width:min(920px,92vw)}.project-dialog>img{width:100%;height:440px;object-fit:cover}.close-dialog{position:absolute;z-index:5;right:18px;top:18px;width:40px;height:40px;border:1px solid #ddd;border-radius:50%;background:#fff;font-size:27px;line-height:1}.dialog-content{padding:38px 45px}.dialog-content>p:not(.kicker){max-width:670px;line-height:1.8;margin:20px 0}.dialog-content .muted{font-size:12px}.brief-dialog{width:min(640px,92vw);padding:45px}.brief-dialog h2{font-size:39px}.brief-dialog>div>p:not(.kicker){font-size:14px;color:var(--muted);margin:18px 0 25px}form{margin-top:24px}form label{display:block;font-size:13px;font-weight:500;margin-bottom:18px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #d3cfd8;border-radius:8px;padding:11px 13px;background:#fbfafc;color:#211c28;font-size:15px;line-height:1.5}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}#brief-preview{font:14px/1.7 var(--font);white-space:pre-wrap;overflow-wrap:anywhere;background:#f4f1f6;padding:20px;border-radius:14px;max-height:310px;overflow:auto;margin:25px 0}.text-button{display:block;margin-top:20px;border:0;border-bottom:1px solid;background:none;padding:0;font-size:13px}[hidden]{display:none!important}
@media(min-width:1600px){.section-surface{padding-left:max(5%,calc((100% - 1340px)/2));padding-right:max(5%,calc((100% - 1340px)/2))}}
@media(max-width:980px){.section-surface{padding:80px 4%}.intro{gap:6%;min-height:680px}.intro-collage{height:400px}.collage-small{height:110px}.collage-tall{top:143px;height:210px}.collage-site{top:65px;height:265px}.intro-copy>p:not(.kicker){font-size:14px}.mini-nav span{display:none}.mini-bottom{font-size:22px}.project-meta{display:block}.project-meta>span{display:block;margin-top:10px}.service-copy>.lead{font-size:18px}.services{gap:7%}.difference-grid{gap:7%}.process-grid{gap:7%}.discipline-strip b{font-size:20px}.discipline-strip>div{gap:10px}.discipline-strip span{font-size:9px}}
@media(max-width:680px){html{scroll-padding-top:80px}.header{padding:24px 6%}.logo{font-size:34px}.header-actions{gap:24px}.header .button{min-height:39px;font-size:12px;padding:7px 13px;gap:16px}.menu-toggle{width:30px}.hero{height:760px;min-height:650px;max-height:880px;padding:140px 8% 205px}.hero h1{font-size:34px;line-height:1.12}.hero p{font-size:14px;line-height:1.8;margin-top:27px}.desktop-break{display:none}.hero-watermark{font-size:100px;top:44%}.scroll-cue{display:none}.discipline-strip{display:grid;grid-template-columns:1fr 1fr;gap:25px;bottom:36px;left:8%;right:8%}.discipline-strip>div{gap:13px}.discipline-strip b{font-size:23px}.discipline-strip span{font-size:9px}.section-surface{margin:0 9px 10px;border-radius:21px;padding:65px 6%}.intro{grid-template-columns:1fr;gap:42px;padding-top:40px}.intro-collage{height:350px;max-width:440px;width:100%;margin:auto}.collage-small{height:108px;width:27%}.collage-tall{height:185px;top:130px}.collage-site{top:55px;height:240px}.collage-caption{font-size:10px}.intro-copy h2{font-size:37px;margin-bottom:26px}.intro-copy>p:not(.kicker){font-size:15px}.kicker{font-size:12px;gap:10px}.dot{height:10px;width:10px}.section-heading{margin-bottom:36px}.section-heading h2{font-size:32px}.concept-note{font-size:10px;line-height:1.5}.projects{grid-template-columns:1fr;gap:38px;margin-bottom:45px}.project:nth-child(even){margin-top:0}.project-image{aspect-ratio:1.05}.project-screen{inset:18px}.screen-title{font-size:34px}.haven .screen-title{font-size:49px}.project-meta{display:flex;padding-top:16px}.project-meta h3{font-size:22px;margin-bottom:6px}.project-meta p{font-size:11px;max-width:210px}.project-meta>span{font-size:8px;white-space:normal;max-width:95px;text-align:right;margin-top:0}.services{grid-template-columns:1fr;gap:20px}.service-intro h2{font-size:75px}.service-art{margin:20px -8px 0}.service-art img{max-height:300px;object-fit:contain}.service-copy{padding-top:0}.service-copy>.lead{font-size:20px}.difference-grid{grid-template-columns:1fr;gap:30px}.difference-tabs button{font-size:19px;padding:20px 0}.principle-panel{min-height:265px;padding-top:23px}.principle-number{font-size:160px;top:-5px}.principle-panel h3{font-size:34px}.principle-panel p{font-size:14px}.process-grid{grid-template-columns:1fr;gap:35px}.process-visual{aspect-ratio:1.3}.process-visual>span{font-size:40px;left:23px;bottom:23px}.process-steps article{padding:20px 0}.process-steps h3{font-size:23px}.faq{grid-template-columns:1fr;gap:38px}.faq h2{font-size:50px}.contact h2{font-size:47px}.contact>p:not(.kicker){font-size:14px}.contact-foot{margin-top:65px;padding-top:25px;flex-wrap:wrap}.contact-foot span{display:none}.footer{flex-direction:column;gap:3px;font-size:9px;padding:13px 8% 25px}.button{font-size:14px;padding:10px 21px}.menu{padding:120px 8% 50px;display:block}.menu-links{width:100%}.menu-links a{font-size:32px}.menu>p{margin-top:40px;font-size:13px}.project-dialog>img{height:300px}.dialog-content{padding:28px}.brief-dialog{padding:38px 25px}.brief-dialog h2{font-size:34px}.form-row{grid-template-columns:1fr;gap:0}input,select,textarea{font-size:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
