@font-face{font-family:Inter;src:local('Inter');font-display:swap}
:root{--ink:#1d2429;--muted:#7a807f;--orange:#df632b;--paper:#fbfbf9;--line:#dedfdc;--navy:#151b22;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:none;border-color:var(--orange)}button{cursor:pointer}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2{font-weight:400;letter-spacing:-.06em}em{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.06em}button{border:0}::selection{background:#f57732;color:#fff}.container{width:calc(100% - 44px);max-width:1320px;margin-inline:auto}.section-pad{padding-block:80px}.eyebrow,.overline{font-size:.75rem;font-weight:500;letter-spacing:.15em;line-height:1.6}.section-number{color:var(--orange);margin-right:16px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;gap:20px}.section-aside{font-size:.75rem;letter-spacing:.08em;color:#777e7b;display:none}.muted{color:#909591}.orange-line{display:inline-block;width:30px;height:1px;background:#ff945c;vertical-align:middle;margin-right:12px}.skip-link{position:fixed;z-index:100;left:20px;top:-80px;padding:14px;background:#fff;color:#111}.skip-link:focus{top:20px}
.header{position:fixed;z-index:20;top:16px;left:22px;right:22px;max-width:1320px;margin:auto;min-height:68px;padding:10px 17px;display:flex;align-items:center;justify-content:space-between;color:#fff;border:1px solid #ffffff35;background:linear-gradient(115deg,#ffffff17,#ffffff07);box-shadow:0 8px 40px #0000000d,inset 0 1px 0 #ffffff0d;border-radius:16px;backdrop-filter:blur(22px) saturate(130%);-webkit-backdrop-filter:blur(22px) saturate(130%);transition:background .35s,box-shadow .35s}.header.scrolled{background:#1b242ae8;box-shadow:0 5px 24px #0002}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:30px;height:35px}.brand strong{font-size:1.6rem;line-height:.95;font-weight:600;letter-spacing:-.04em;display:block}.brand-dot{color:#f57732}.brand small{display:block;font-size:.5rem;font-weight:500;letter-spacing:.17em;margin-top:6px}.desktop-nav,.nav-contact{display:none}.menu-toggle{background:transparent;width:40px;height:40px;display:grid;place-content:center;gap:6px;border-radius:50%;z-index:2}.menu-toggle span{width:21px;height:1px;background:#fff;transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{position:absolute;top:calc(100% + 9px);left:0;right:0;padding:20px 24px 24px;border-radius:16px;background:#1b242af7;box-shadow:0 14px 30px #0003;visibility:hidden;opacity:0;transform:translateY(-8px);transition:.25s}.mobile-nav.open{opacity:1;visibility:visible;transform:none}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;font-size:1.35rem;padding:18px 0;border-bottom:1px solid #ffffff20}.mobile-nav a span{font-size:.75rem;color:#e78c5b}.mobile-nav p{font-size:.625rem;letter-spacing:.08em;margin-top:24px;color:#b4baba}
.hero{position:relative;min-height:780px;height:100svh;max-height:1200px;background:#18232a;color:#fff;overflow:hidden}.hero-image-wrap,.hero-shade{position:absolute;inset:0}.hero-image{width:100%;height:120%;object-fit:cover;object-position:60% center;position:absolute;top:-10%;will-change:transform}.hero-shade{background:linear-gradient(90deg,#071119a6 0%,#0a151a4d 54%,#0d172b00 100%),linear-gradient(0deg,#07121ad1,transparent 35%,#07121a2b)}.hero-content{position:relative;z-index:1;padding-top:210px}.hero-eyebrow{font-size:.625rem;letter-spacing:.14em;margin-bottom:27px}.hero h1{font-size:clamp(3.4rem,9.4vw,7.8rem);line-height:1.03;max-width:1050px;letter-spacing:-.055em}.hero h1 em{color:#e5e4dd;letter-spacing:-.055em}.hero-description{margin-top:26px;color:#e0e2df;font-size:1rem;line-height:1.7;font-weight:350}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:56px;border-radius:50px;font-size:.875rem;padding:7px 8px 7px 23px;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.button-light{background:#f7f7f1;color:#222a2a;margin-top:32px}.circle-arrow{height:40px;width:40px;display:grid;place-items:center;font-size:1.3rem;border:1px solid #272f3129;border-radius:50%;transition:transform .3s}.button:hover .circle-arrow{transform:rotate(45deg)}.hero-bottom{position:absolute;z-index:1;bottom:45px;left:0;right:0;display:flex;align-items:end;justify-content:space-between}.scroll-cue{display:flex;gap:12px;align-items:center;font-size:.625rem;letter-spacing:.13em}.scroll-line{width:1px;height:31px;background:#ffffff40;position:relative;overflow:hidden}.scroll-line:after{content:"";position:absolute;top:0;left:0;width:1px;height:13px;background:#fff;animation:scroll 2s infinite}@keyframes scroll{from{transform:translateY(-13px)}to{transform:translateY(34px)}}.hero-bottom>p{display:none;font-size:.625rem;letter-spacing:.12em;line-height:1.8;color:#d4dad7}.hero-index{font-size:.75rem;letter-spacing:.1em}.hero-index span{opacity:.5;margin-left:10px}.image-caption{position:absolute;right:22px;bottom:15px;color:#d5d9d59c;font-size:.6rem;letter-spacing:.09em}
.mini-mark{font-size:2rem;font-weight:300}.intro-grid{display:grid;gap:40px}.intro h2{font-size:clamp(2.5rem,5.3vw,4.7rem);line-height:1.13}.intro h2 em{color:var(--ink)}.intro-copy{max-width:465px;align-self:center}.overline{display:block;color:var(--orange);margin-bottom:22px}.intro-copy>p{font-size:1.0625rem;line-height:1.85;color:#68706e}.intro-copy>p+p{margin-top:18px}.text-link{display:inline-flex;align-items:center;gap:32px;padding:0 0 10px;background:transparent;border-bottom:1px solid #a9adab;font-size:.875rem;font-weight:500;margin-top:30px}.text-link span{font-size:1.4rem;transition:transform .25s}.text-link:hover span{transform:translate(3px,-3px)}.values{margin-top:60px;border-top:1px solid var(--line);display:grid}.values>div{padding:25px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:36px 1fr;column-gap:15px}.value-icon{font-size:1.5rem;color:var(--orange);grid-row:1/3;align-self:center}.square-icon{width:21px;height:21px;border:1px solid var(--orange);margin-left:2px;position:relative}.square-icon:after{content:"";position:absolute;inset:4px -5px -5px 4px;border:1px solid var(--orange)}.values h3{font-size:1rem;font-weight:500;margin-bottom:9px}.values p{font-size:.875rem;color:#7b817e;line-height:1.5}
.projects{background:#f0f1ed}.projects-heading{display:flex;flex-direction:column;gap:25px;justify-content:space-between;margin-bottom:40px}.projects h2,.services h2{font-size:clamp(2.7rem,5.7vw,5rem);line-height:1.07}.projects-heading>p{font-size:1rem;line-height:1.8;color:#737b76;align-self:start}.project-grid,.project-stack{display:grid;gap:35px}.project-card{padding:0;text-align:left;background:transparent;width:100%;min-width:0}.project-image{position:relative;overflow:hidden;border-radius:3px;isolation:isolate}.project-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#1221271f,transparent 40%)}.project-image img{width:100%;height:310px;object-fit:cover;transition:transform 1s var(--ease)}.project-feature .project-image img{object-position:60% center;height:420px}.project-card:hover img{transform:scale(1.045)}.project-badge{position:absolute;z-index:1;left:17px;top:17px;font-size:.625rem;letter-spacing:.11em;background:#fbfbf2e8;padding:9px 12px;border:1px solid #ffffff77;border-radius:20px;color:#303731;backdrop-filter:blur(12px)}.project-open{position:absolute;z-index:1;right:16px;bottom:16px;color:white;border:1px solid #ffffff59;background:#ffffff15;backdrop-filter:blur(14px);border-radius:50%;width:44px;height:44px;display:grid;place-content:center;font-size:1.5rem;transition:background .25s}.project-card:hover .project-open{background:var(--orange)}.project-caption{display:flex;justify-content:space-between;gap:16px;margin-top:18px}.project-caption h3{font-size:1.4rem;font-weight:400;letter-spacing:-.025em}.project-caption p{font-size:.875rem;line-height:1.6;color:#777e77;margin-top:6px}.project-caption>span{font-size:.75rem;color:#9a9f99;padding-top:6px}.concept-note{font-size:.625rem;letter-spacing:.08em;color:#6e756e;line-height:1.8;margin-top:45px;border-top:1px solid #d5d9d1;padding-top:20px}
.services{display:grid;gap:44px}.services-intro .eyebrow{margin-bottom:35px}.services-intro>p:not(.eyebrow){margin-top:25px;font-size:1rem;line-height:1.8;color:#7a817e}.service-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;gap:18px;align-items:center;padding:28px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.service-number{font-size:.75rem;color:var(--orange)}summary h3{font-size:1.08rem;font-weight:400;letter-spacing:-.02em}.expand-icon{margin-left:auto;width:24px;height:24px;flex-shrink:0;position:relative}.expand-icon:before,.expand-icon:after{content:"";position:absolute;top:11px;left:6px;width:12px;height:1px;background:#535d56}.expand-icon:after{transform:rotate(90deg);transition:transform .2s}details[open] .expand-icon:after{transform:rotate(0)}.service-body{padding:0 25px 28px 33px}.service-body p{font-size:1rem;line-height:1.8;color:#79807b}.service-body>span{display:block;font-size:.625rem;letter-spacing:.09em;color:#9b6c53;line-height:1.7;margin-top:25px}
.manifesto{position:relative;overflow:hidden;background:#353e37;color:#fff;min-height:490px;display:flex;align-items:center}.manifesto-image-wrap,.manifesto-shade{position:absolute;inset:0}.manifesto-image-wrap img{position:absolute;top:-15%;height:130%;width:100%;object-fit:cover;object-position:60% center;will-change:transform}.manifesto-shade{background:linear-gradient(90deg,#10211ca6,#10211c22),#11211826}.manifesto-content{position:relative;z-index:1}.manifesto-content .eyebrow{font-size:.625rem;margin-bottom:32px}.manifesto-title{font-size:clamp(3rem,7.5vw,6.7rem);line-height:1.05;letter-spacing:-.05em;font-weight:350}.manifesto-content>p:last-child{font-size:.9375rem;line-height:1.7;margin-top:25px;color:#e5e9e0}.contact-grid{display:grid;gap:48px}.contact h2{font-size:clamp(3.1rem,6.7vw,6rem);line-height:1.05}.orange-dot{font-size:.36em;color:var(--orange);margin-left:9px;vertical-align:baseline}.contact-grid>div>p{font-size:1rem;line-height:1.8;color:#7a817d;margin-top:25px}.contact-form{align-self:center;max-width:520px;width:100%}.form-heading{font-size:1.4rem;letter-spacing:-.03em;margin-bottom:30px}.contact-form label{display:block;font-size:.875rem;margin-top:25px}.contact-form input,.contact-form textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #cdd2cc;border-radius:0;font-size:1rem;padding:14px 0;color:var(--ink);resize:vertical;transition:border-color .2s;line-height:1.5}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#91978f;opacity:1}.contact-form .form-note{font-size:.75rem;line-height:1.6;color:#747c74;margin-block:18px}.button-dark{background:var(--navy);color:#fff;width:100%}.button-dark .circle-arrow{border-color:#ffffff40}.form-status{padding:15px 0;color:#646f63;font-size:.875rem;line-height:1.6}.footer{background:var(--navy);color:#f7f7f3;padding-top:42px}.footer-top{display:flex;flex-wrap:wrap;gap:30px;justify-content:space-between;align-items:center;padding-bottom:35px}.footer-top>p{font-size:.875rem;line-height:1.8;color:#a2aaa7;flex-basis:100%;order:3}.back-top{font-size:.75rem;display:flex;gap:15px;align-items:center}.back-top span{border:1px solid #ffffff30;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;font-size:1.1rem}.footer-bottom{border-top:1px solid #ffffff1c;padding-block:24px;display:flex;flex-wrap:wrap;gap:14px 25px;justify-content:space-between;color:#929c99;font-size:.75rem}.footer-bottom>span{display:none;font-size:.625rem;letter-spacing:.1em}
.project-dialog{width:calc(100% - 30px);max-width:920px;padding:0;border:none;border-radius:12px;background:var(--paper);color:var(--ink);max-height:90svh;overflow-y:auto;box-shadow:0 24px 120px #0007}.project-dialog::backdrop{background:#0a151bc9;backdrop-filter:blur(12px)}.project-dialog>img{height:280px;width:100%;object-fit:cover}.dialog-close{position:absolute;right:14px;top:14px;width:44px;height:44px;background:#f6f6f3ee;border-radius:50%;font-size:1.2rem;z-index:1}.dialog-content{padding:28px}.dialog-content h2{font-size:2.5rem;line-height:1.15;margin-block:14px}.dialog-content>p:not(.eyebrow){font-size:1rem;color:#6d766f;line-height:1.8}.dialog-content .dialog-note{font-size:.75rem!important;margin-top:20px}.dialog-content .eyebrow{color:var(--orange)}
.motion-ready .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s var(--ease),transform .9s var(--ease)}.motion-ready .reveal.visible{opacity:1;transform:none}
@media(min-width:600px){.container{width:calc(100% - 80px)}.header{left:40px;right:40px}.hero-content{padding-top:225px}.hero h1{font-size:clamp(4.7rem,9vw,7.8rem)}.hero-eyebrow{font-size:.75rem}.hero-description{font-size:1.125rem}.hero-bottom>p{display:block}.image-caption{right:40px}.project-image img{height:420px}.project-feature .project-image img{height:560px}.values{grid-template-columns:repeat(3,1fr)}.values>div{display:block;border-bottom:0;padding:30px 18px 0 0}.value-icon{display:block;height:32px;margin-bottom:22px}.square-icon{height:21px;margin-bottom:33px;margin-top:0}.project-dialog>img{height:420px}.dialog-content{padding:38px}.section-aside{display:block}.footer-bottom>span{display:block}}
@media(min-width:900px){.container{width:calc(100% - 112px)}.section-pad{padding-block:112px}.header{top:26px;left:56px;right:56px;min-height:76px;padding:13px 19px 13px 23px;border-radius:18px}.brand img{width:35px;height:39px}.brand strong{font-size:1.85rem}.brand small{font-size:.5625rem}.desktop-nav{display:flex;gap:36px;font-size:.8125rem;color:#e0e4e1}.desktop-nav a{position:relative;padding:10px 0}.desktop-nav a:after{content:"";position:absolute;bottom:3px;left:0;right:100%;height:1px;background:#f28b53;transition:right .25s}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}.nav-contact{display:flex;align-items:center;gap:28px;border:1px solid #ffffff3a;border-radius:30px;font-size:.8125rem;padding:12px 19px;background:#ffffff09;transition:background .25s}.nav-contact:hover{background:#ffffff20}.nav-contact span{font-size:1.25rem}.menu-toggle,.mobile-nav{display:none}.hero{min-height:820px}.hero-content{padding-top:max(230px,26vh)}.hero-image{object-position:center center}.hero h1{font-size:clamp(5rem,7.9vw,7.6rem)}.hero-description{margin-top:30px}.hero-bottom{bottom:50px}.hero-bottom>p{margin-left:auto;margin-right:100px;font-size:.6875rem}.scroll-cue{font-size:.6875rem}.image-caption{right:56px}.intro-grid{grid-template-columns:1.15fr 1fr;gap:80px}.intro-copy{padding-top:8px;margin-left:auto}.intro h2{font-size:clamp(3rem,4.6vw,4.5rem)}.section-heading{margin-bottom:50px}.values{margin-top:65px;gap:35px}.values>div{display:grid;grid-template-columns:38px 1fr;padding-top:35px}.values .value-icon{margin:0;align-self:center}.values .square-icon{height:21px}.values h3{font-size:1.0625rem}.projects-heading{flex-direction:row;align-items:end;margin-bottom:55px}.projects-heading>p{align-self:end;margin-right:55px}.project-grid{grid-template-columns:1.2fr 1fr;gap:40px}.project-stack{gap:35px}.project-feature{align-self:stretch;display:flex;flex-direction:column}.project-feature .project-image{flex:1;min-height:600px;width:100%}.project-feature .project-image img{height:100%;position:absolute;object-position:58% center}.project-stack .project-image img{height:265px}.project-caption{margin-top:21px}.project-caption h3{font-size:1.5rem}.project-badge{top:22px;left:22px}.project-open{right:22px;bottom:22px}.services{grid-template-columns:1fr 1.12fr;gap:80px}.services h2{font-size:clamp(2.7rem,4vw,3.7rem)}.services-intro .text-link{margin-top:37px}.service-list{margin-top:3px}summary{padding-block:29px;gap:25px}summary h3{font-size:1.375rem}.service-body{padding-left:40px;padding-right:30px}.manifesto{min-height:620px}.manifesto-content .eyebrow{font-size:.75rem}.manifesto-content>p:last-child{font-size:1.0625rem}.contact-grid{grid-template-columns:1.05fr 1fr;gap:100px}.contact h2{font-size:clamp(3.5rem,5.9vw,5.5rem)}.contact-form{margin-left:auto}.footer{padding-top:50px}.footer-top{padding-bottom:45px}.footer-top>p{flex-basis:auto;order:0;margin-right:auto;margin-left:100px}.footer-bottom{padding-block:28px}}
@media(min-width:1500px){.hero-content{padding-top:27vh}.hero h1{font-size:8rem}.section-pad{padding-block:130px}}
@media(max-width:359px){.hero h1{font-size:3rem}.hero-eyebrow{font-size:.6rem;letter-spacing:.06em}.hero{min-height:740px}.hero-content{padding-top:180px}.brand small{font-size:.45rem}.container{width:calc(100% - 36px)}.header{left:18px;right:18px}.contact h2{font-size:2.8rem}.project-feature .project-image img{height:350px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.parallax{transform:none!important}}
