@import "https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600&family=Nunito:wght@300;400;500;600&display=swap";:root{--accent:#d2ded0;--accent-ink:#607367;--ivory:#f7f5f0;--stone:#d8d1c6;--stone-deep:#b8aea1;--charcoal:#343732;--ink:#42453f;--white:#fff;--serif:"Cinzel", Georgia, serif;--sans:"Nunito", Arial, sans-serif;--ease:cubic-bezier(.33, 1, .68, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ivory);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;font-weight:400;line-height:1.5}body,a,button,summary{cursor:default}a,button,summary{cursor:pointer}a{color:inherit;text-decoration:none}img{width:100%;display:block}::selection{background:var(--accent);color:var(--charcoal)}.section-pad{padding-left:clamp(24px,4vw,64px);padding-right:clamp(24px,4vw,64px)}.site-header{z-index:20;height:112px;color:var(--white);justify-content:space-between;align-items:center;padding:0 clamp(24px,4vw,64px);display:flex;position:absolute;inset:0 0 auto}.brand{align-items:center;gap:14px;display:inline-flex}.brand-mark{width:44px;height:44px;font-family:var(--serif);color:var(--accent);border:1px solid #ffffffb8;place-items:center;font-size:25px;display:grid}.brand-name{font-family:var(--serif);letter-spacing:-.015em;font-size:18px}.desktop-nav{align-items:center;gap:clamp(24px,3vw,52px);font-size:14px;display:flex}.desktop-nav a{padding:7px 0;position:relative}.desktop-nav a:after,.text-link:after{content:"";transform-origin:100%;height:1px;transition:transform .6s var(--ease);background:currentColor;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after,.text-link:hover:after,.text-link:focus-visible:after{transform-origin:0;transform:scaleX(1)}.desktop-nav .nav-contact{border-bottom:1px solid #ffffffb3}.mobile-menu{display:none}.hero{height:max(700px,100svh);min-height:700px;color:var(--white);background:var(--charcoal);position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:50% 55%;height:100%;animation:hero-in 1.8s var(--ease) both}.hero-shade{background:linear-gradient(90deg,#1f1f1c8c 0%,#1f1f1c14 62%,#1f1f1c38 100%),linear-gradient(#0000 50%,#1919177a);position:absolute;inset:0}.hero-copy{position:absolute;bottom:clamp(72px,9vw,130px);left:clamp(24px,4vw,64px)}.eyebrow{letter-spacing:.16em;text-transform:uppercase;margin:0 0 28px;font-size:12px;font-weight:600}.hero-eyebrow{margin-bottom:24px}.hero h1,.introduction h2,.section-heading h2,.studio-copy h2,.process-intro h2,.contact-copy h2{font-family:var(--serif);letter-spacing:-.035em;margin:0;font-weight:400}.hero h1{max-width:840px;font-size:clamp(64px,8.2vw,126px);line-height:.94}em{color:var(--accent);font-style:normal;font-weight:400}.hero-copy .text-link{margin-top:36px}.text-link{align-items:center;gap:22px;padding:6px 0;font-size:14px;display:inline-flex;position:relative}.light-link{color:var(--white)}.hero-note{text-align:right;margin:0;font-size:13px;line-height:1.55;position:absolute;bottom:88px;right:clamp(24px,4vw,64px)}.scroll-cue{letter-spacing:.15em;text-transform:uppercase;transform-origin:100%;align-items:center;gap:14px;font-size:11px;display:flex;position:absolute;top:50%;right:clamp(24px,4vw,64px);transform:rotate(90deg)translate(50%)}.scroll-cue i{background:#ffffffb3;width:48px;height:1px;display:block}.introduction{background:var(--ivory);padding-top:clamp(100px,12vw,190px);padding-bottom:clamp(110px,15vw,230px)}.intro-grid{grid-template-columns:1.5fr .65fr;align-items:end;gap:9vw;display:grid}.introduction h2,.section-heading h2,.process-intro h2{font-size:clamp(50px,6.5vw,100px);line-height:1.03}.introduction em,.section-heading em,.process-intro em{color:var(--accent-ink)}.intro-copy{max-width:470px;padding-bottom:8px}.intro-copy p{color:#5b5d58;margin:0 0 35px;font-size:clamp(17px,1.25vw,20px);line-height:1.65}.work-section{background:var(--stone);padding-bottom:15px}.section-heading{padding-top:clamp(95px,10vw,150px);padding-bottom:clamp(80px,9vw,140px);position:relative}.section-number{letter-spacing:.12em;margin:0;font-size:13px;position:absolute;bottom:54px;right:clamp(24px,4vw,64px)}.project-grid{grid-template-columns:repeat(2,1fr);gap:15px;padding:0 15px;display:grid}.project{color:#fff;min-height:520px;position:relative;overflow:hidden}.project-wide{aspect-ratio:2/.93;grid-column:1/-1}.project-tall,.project-square{aspect-ratio:1/1.08}.project img{object-fit:cover;height:100%;transition:transform 1.1s var(--ease)}.project:after{content:"";background:linear-gradient(#0000 48%,#1c1d1bad);transition:background .6s;position:absolute;inset:0}.project:hover img{transform:scale(1.035)}.project:hover:after{background:linear-gradient(#1c1d1b14 35%,#1c1d1bbf)}.project-overlay{z-index:2;position:absolute;bottom:clamp(25px,3vw,45px);left:clamp(25px,3vw,48px);right:30px}.project-overlay p,.project-overlay span{letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:12px}.project-overlay h3{font-family:var(--serif);letter-spacing:-.03em;margin:12px 0 8px;font-size:clamp(31px,3vw,48px);font-weight:400}.project-overlay span{opacity:.7}.studio-section{background:var(--charcoal);color:var(--white);padding-top:clamp(110px,12vw,190px);padding-bottom:clamp(110px,12vw,190px)}.studio-statement{text-align:center;max-width:1140px;margin:0 auto clamp(100px,13vw,210px)}.studio-statement blockquote{font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(42px,5.8vw,86px);font-weight:400;line-height:1.14}.studio-grid{grid-template-columns:1.2fr .85fr;align-items:center;gap:clamp(50px,9vw,150px);display:grid}.studio-image{width:100%}.studio-image img{aspect-ratio:1.1;object-fit:cover}.studio-image p{letter-spacing:.1em;text-transform:uppercase;opacity:.65;margin:15px 0 0;font-size:12px}.studio-copy{max-width:540px}.studio-copy h2{margin-bottom:32px;font-size:clamp(42px,4.4vw,68px);line-height:1.1}.studio-copy>p:not(.eyebrow){color:#ffffffbf;margin:0 0 38px;font-size:17px;line-height:1.7}.process-section{background:var(--ivory);grid-template-columns:.9fr 1fr;gap:9vw;padding-top:clamp(110px,13vw,200px);padding-bottom:clamp(110px,13vw,200px);display:grid}.process-intro{align-self:start;position:sticky;top:80px}.process-intro h2{font-size:clamp(48px,5.8vw,84px)}.process-list{margin:0;padding:0;list-style:none}.process-list li{border-top:1px solid #42453f47;grid-template-columns:45px 1fr;gap:32px;padding:40px 0 58px;display:grid}.process-list li:last-child{border-bottom:1px solid #42453f47}.process-list li>span{letter-spacing:.12em;padding-top:9px;font-size:12px}.process-list h3{font-family:var(--serif);letter-spacing:-.03em;margin:0 0 12px;font-size:36px;font-weight:400}.process-list p{color:#656761;max-width:470px;margin:0;line-height:1.65}.contact-section{background:var(--charcoal);min-height:92svh;color:var(--white);flex-direction:column;justify-content:space-between;display:flex}.contact-copy{padding-top:clamp(120px,13vw,210px);padding-bottom:110px}.contact-copy h2{max-width:1150px;font-size:clamp(50px,7.4vw,112px);line-height:1.02}.contact-copy>p:not(.eyebrow){color:#ffffffb8;max-width:480px;margin:38px 0 42px;font-size:17px}.contact-link{min-width:min(100%,390px);font-family:var(--serif);transition:padding .45s var(--ease), color .3s ease;border-top:1px solid #fff9;border-bottom:1px solid #fff9;justify-content:space-between;align-items:center;gap:100px;padding:18px 0;font-size:25px;display:inline-flex}.contact-link:hover,.contact-link:focus-visible{color:var(--accent);padding-left:12px;padding-right:12px}footer{border-top:1px solid #fff3;grid-template-columns:1fr auto;align-items:end;gap:30px;padding:38px clamp(24px,4vw,64px);display:grid}.footer-brand{font-family:var(--serif);font-size:24px}.footer-meta{letter-spacing:.1em;text-transform:uppercase;opacity:.65;gap:35px;font-size:11px;display:flex}.credits{color:#ffffff80;grid-column:1/-1;font-size:10px}.credits summary{width:max-content}.credits div{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.credits a{text-underline-offset:3px;text-decoration:underline}.reveal{animation:both reveal;animation-timeline:view();animation-range:entry 8% cover 28%}@keyframes reveal{0%{opacity:0;transform:translateY(36px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-in{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}:focus-visible{outline-offset:5px;outline:2px solid}@media (width<=900px){.site-header{height:88px}.desktop-nav{display:none}.mobile-menu{display:block}.mobile-menu summary{border-bottom:1px solid #fff9;padding:5px 0;font-size:13px;list-style:none}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu[open]{z-index:50;background:var(--charcoal);padding:34px 24px;position:fixed;inset:0}.mobile-menu[open] summary{position:absolute;top:32px;right:24px}.mobile-menu[open] summary span{font-size:0}.mobile-menu[open] summary span:after{content:"Close";font-size:13px}.mobile-menu nav{flex-direction:column;justify-content:center;gap:20px;height:100%;display:flex}.mobile-menu nav a{font-family:var(--serif);font-size:clamp(40px,13vw,62px);line-height:1.05}.hero{min-height:720px}.hero-copy{bottom:90px}.hero h1{font-size:clamp(58px,16vw,90px)}.hero-note,.scroll-cue{display:none}.intro-grid,.studio-grid,.process-section{grid-template-columns:1fr}.intro-grid{gap:55px}.project-grid{grid-template-columns:1fr}.project-wide{aspect-ratio:.86;grid-column:auto}.project-tall,.project-square{aspect-ratio:.86}.project{min-height:460px}.section-number{display:none}.studio-grid{gap:80px}.studio-image img{aspect-ratio:.86}.process-intro{position:static}.process-section{gap:80px}footer{grid-template-columns:1fr}.footer-meta{flex-direction:column;gap:8px}}@media (width<=540px){.brand-name{font-size:15px}.brand-mark{width:38px;height:38px;font-size:23px}.hero-copy .text-link{margin-top:30px}.eyebrow{margin-bottom:22px}.introduction h2,.section-heading h2,.process-intro h2{font-size:clamp(45px,13vw,65px)}.project-grid{gap:10px;padding:0 10px}.project{min-height:430px}.process-list li{gap:18px}.contact-link{gap:30px;font-size:21px}footer{padding-top:30px;padding-bottom:30px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
