:root{--paper:#f4f3ef;--surface:#fbfaf7;--surface-soft:#e6eeea;--ink:#172321;--muted:#5a6863;--line:#d2dad5;--accent:#2e7c72;--accent-deep:#1d5d54;--focus:#1b5c52;--shadow:#1b3f3724;--radius:14px;color-scheme:light dark;background:var(--paper);color:var(--ink);font-family:Avenir Next,Segoe UI,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;color:var(--ink);margin:0;font-size:16px;line-height:1.6;overflow-x:hidden}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:3px}button,input,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}.shell{width:min(1180px,100% - 64px);margin:0 auto}.skip-link{z-index:2;background:var(--ink);color:var(--paper);padding:.65rem .9rem;position:absolute;top:0;left:1rem;transform:translateY(-130%)}.skip-link:focus{transform:translateY(.5rem)}.site-header{border-bottom:1px solid var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:2rem;min-height:72px;display:flex}.brand,.footer-brand{color:var(--ink);text-decoration:none;display:inline-flex}.logo-lockup{color:currentColor;width:152px;display:inline-flex}.logo-lockup svg{width:100%;height:auto;display:block}nav{align-items:center;gap:1.6rem;font-size:.9rem;display:flex}nav a,.footer-links a{color:var(--muted);text-decoration:none;transition:color .18s}nav a:hover,.footer-links a:hover,.footer-links a[aria-current=page]{color:var(--ink)}.hero{grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);align-items:center;gap:clamp(3.5rem,8vw,8rem);min-height:min(760px,78dvh);padding:48px 0 72px;display:grid}.hero-copy{max-width:34rem}.eyebrow,.project-kicker{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:700;line-height:1.3}h1,h2,h3{letter-spacing:-.055em;margin:0;font-weight:700;line-height:1.02}h1{max-width:12ch;font-size:clamp(3.65rem,7vw,6.5rem)}h2{max-width:13ch;font-size:clamp(2.55rem,5vw,4.8rem)}h3{font-size:clamp(2rem,3.2vw,3rem)}.hero-copy h1{margin-top:1.4rem}.hero-copy>p:not(.eyebrow){max-width:31rem;color:var(--muted);margin:1.7rem 0 0;font-size:clamp(1.05rem,1.45vw,1.25rem);line-height:1.55}.hero-visual{margin:0}.hero-visual img{aspect-ratio:3/2;border-radius:var(--radius);width:100%;height:auto;box-shadow:0 22px 60px var(--shadow);object-fit:cover;display:block}.button,.submit-button{border:1px solid var(--ink);border-radius:var(--radius);justify-content:center;align-items:center;gap:.55rem;min-height:48px;padding:.75rem 1.05rem;font-weight:700;text-decoration:none;transition:transform .18s,background-color .18s,color .18s,border-color .18s;display:inline-flex}.button{background:var(--ink);color:var(--paper);margin-top:2rem}.button:hover,.submit-button:hover{border-color:var(--accent-deep);background:var(--accent-deep);color:#f8fbf8;transform:translateY(-2px)}.button:active,.submit-button:active{transform:translateY(1px)}.projects,.studio-note,.contact{border-top:1px solid var(--line)}.projects{padding:108px 0 132px}.section-heading{gap:1.3rem;max-width:42rem;margin-bottom:3.8rem;display:grid}.section-heading p,.studio-note p,.contact-intro>p:last-child{color:var(--muted);margin:0}.featured-project{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);grid-template-columns:minmax(0,.78fr) minmax(300px,1.22fr);align-items:stretch;min-height:430px;display:grid;overflow:hidden}.featured-project-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(2rem,6vw,5rem);display:flex}.featured-project-copy h3{margin-top:1.25rem}.featured-project-copy>p:not(.project-kicker){max-width:27rem;color:var(--muted);margin:1.2rem 0 0}.featured-project-visual{background:var(--surface-soft);place-items:center;min-height:430px;margin:0;display:grid}.featured-project-visual img{aspect-ratio:1;border-radius:calc(var(--radius) - 2px);object-fit:cover;width:min(64%,280px);height:auto;box-shadow:0 18px 40px var(--shadow);display:block}.text-link{color:var(--ink);align-items:center;gap:.5rem;margin-top:1.8rem;font-weight:700;text-decoration:none;display:inline-flex}.text-link span{color:var(--accent);font-size:1.1em;transition:transform .18s}.text-link:hover{color:var(--ink)}.text-link:hover span{transform:translate(2px,-2px)}.project-row{grid-template-columns:minmax(180px,.55fr) minmax(0,1.45fr);align-items:center;gap:clamp(2rem,8vw,8rem);padding:3.25rem 0 1rem;display:grid}.project-card{color:var(--ink);text-decoration:none}.project-card:hover{color:var(--ink)}.project-visual{border-radius:var(--radius);background:var(--surface-soft);place-items:center;min-height:210px;transition:transform .22s,background-color .22s;display:grid}.project-card:hover .project-visual{background:#dce9e3;transform:translateY(-4px)}.project-visual img{border-radius:calc(var(--radius) - 2px);object-fit:cover;width:132px;height:132px;display:block}.project-detail h3{margin-top:1.15rem}.project-detail>p:not(.project-kicker){max-width:36rem;color:var(--muted);margin:1rem 0 0}.project-detail .text-link{margin-top:1.25rem}.studio-note{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3rem;padding:104px 0;display:grid}.studio-note-copy{max-width:47rem}.studio-note h2{max-width:11ch}.studio-note p{max-width:35rem;margin-top:1.5rem}.studio-note>.text-link{white-space:nowrap;margin:0 0 .35rem}.contact{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(2.5rem,9vw,9rem);padding:104px 0 144px;display:grid}.contact-intro h2{margin-top:1.25rem}.contact-intro>p:last-child{max-width:22rem;margin-top:1.3rem}.contact-form{gap:1.15rem;display:grid}.field{gap:.42rem;display:grid}.field label{color:var(--ink);font-size:.88rem;font-weight:700}.field input,.field textarea{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:100%;color:var(--ink);padding:.8rem .9rem;transition:border-color .18s,box-shadow .18s}.field input::placeholder,.field textarea::placeholder{color:var(--muted);opacity:1}.field textarea{resize:vertical;min-height:9.5rem}.field input:hover,.field textarea:hover,.field input:focus,.field textarea:focus{border-color:var(--accent)}.submit-button{background:var(--ink);min-width:142px;color:var(--paper);justify-self:start;margin-top:.35rem}.form-status{min-height:1.6em;color:var(--muted);margin:0;font-size:.9rem}.form-status[data-state=error]{color:#a14339}.form-status[data-state=success]{color:var(--accent-deep)}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.site-footer{border-top:1px solid var(--line);padding:2.5rem 0 3.2rem}.footer-inner{justify-content:space-between;align-items:end;gap:2rem;display:flex}.footer-brand .logo-lockup{width:92px}.footer-note{color:var(--muted);margin:.45rem 0 0;font-size:.82rem}.footer-links{flex-wrap:wrap;gap:1.25rem;font-size:.85rem;display:flex}.legal-page,.product-page{max-width:860px;padding:104px 0 144px}.legal-page h1,.product-page h1{max-width:12ch;font-size:clamp(3.2rem,7vw,6rem)}.legal-page .updated{color:var(--muted);margin:1rem 0 4rem;font-size:.88rem}.legal-page h2{letter-spacing:-.025em;margin-top:3rem;font-size:1.55rem}.legal-page p,.legal-page li{max-width:65ch;color:var(--muted);margin:1rem 0 0}.legal-page ul{margin:1rem 0 0;padding-left:1.2rem}.legal-page li+li{margin-top:.65rem}.product-page{max-width:1180px;margin:0 auto}.product-hero{grid-template-columns:minmax(0,.82fr) minmax(300px,1.18fr);align-items:center;gap:clamp(3rem,8vw,8rem);min-height:590px;padding-top:48px;display:grid}.back-link{color:var(--muted);font-size:.9rem;text-decoration:none}.product-copy .eyebrow{margin-top:3.3rem}.product-copy h1{margin-top:1.25rem}.product-copy>p:not(.eyebrow){max-width:31rem;color:var(--muted);margin:1.6rem 0 0;font-size:1.1rem}.product-art{margin:0}.product-art img{aspect-ratio:3/2;border-radius:var(--radius);object-fit:cover;width:100%;height:auto;box-shadow:0 22px 60px var(--shadow);display:block}.product-art figcaption{color:var(--muted);margin-top:.8rem;font-size:.85rem}.product-overview,.product-links{border-top:1px solid var(--line);padding:104px 0}.product-overview>h2,.product-links>h2{max-width:14ch}.product-notes{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,7vw,7rem);margin-top:4rem;display:grid}.product-note{border-top:1px solid var(--line);padding-top:1.4rem}.product-note h3{letter-spacing:-.025em;font-size:1.5rem}.product-note p{max-width:30rem;color:var(--muted);margin:.9rem 0 0}.product-link-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:3rem;display:grid}.product-link-list a{border-bottom:1px solid var(--line);min-height:64px;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;font-weight:700;text-decoration:none;display:flex}.product-link-list a span{color:var(--accent);transition:transform .18s}.product-link-list a:hover span{transform:translate(3px,-3px)}@media (prefers-reduced-motion:no-preference){.hero-copy{animation:.65s cubic-bezier(.16,1,.3,1) both rise-in}.hero-visual{animation:.8s cubic-bezier(.16,1,.3,1) .1s both rise-in}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}}@media (width<=820px){.shell{width:min(100% - 32px,620px)}.header-inner{min-height:68px}.hero,.contact,.featured-project,.product-hero{grid-template-columns:1fr}.hero{gap:3.2rem;min-height:auto;padding:64px 0 88px}h1{max-width:11ch;font-size:clamp(3.45rem,14vw,5.2rem)}.hero-visual{order:2}.projects,.studio-note,.contact,.product-overview,.product-links{padding:72px 0}.section-heading{margin-bottom:2.5rem}.featured-project-copy{padding:2.5rem 2rem 2rem}.featured-project-visual{min-height:320px}.project-row{grid-template-columns:1fr;gap:1.8rem;padding-top:3rem}.studio-note{grid-template-columns:1fr;gap:1.5rem}.studio-note>.text-link{margin:0}.contact{gap:3rem;padding-bottom:96px}.legal-page,.product-page{padding:72px 0 96px}.product-hero{gap:3rem;min-height:auto;padding-top:16px}.product-copy .eyebrow{margin-top:2.5rem}.product-art{order:2}.product-notes,.product-link-list{grid-template-columns:1fr;gap:1.5rem;margin-top:2.7rem}.footer-inner{flex-direction:column;align-items:start}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-color-scheme:dark){:root{--paper:#1c2523;--surface:#24302d;--surface-soft:#2f4841;--ink:#edf2ed;--muted:#b7c4be;--line:#4c5d57;--accent:#8dd1c2;--accent-deep:#b0e2d7;--focus:#b0e2d7;--shadow:#00000047}.button,.submit-button{background:var(--accent);border-color:var(--accent);color:#12201d}.button:hover,.submit-button:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:#12201d}.project-card:hover .project-visual{background:#38554c}.form-status[data-state=error]{color:#ffb2a7}}
