@font-face{font-family:Century Gothic;src:url(/media/fonts/Century%20Gothic/centurygothic.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Century Gothic;src:url(/media/fonts/Century%20Gothic/centurygothic_bold.ttf) format("truetype");font-style:normal;font-weight:700;font-display:swap}@font-face{font-family:Cooper Black Zeta;src:url(/media/fonts/Cooper%20Black%20Zeta/CooperBlackZeta-Regular.otf) format("opentype");font-style:normal;font-weight:400;font-display:swap}:root{--font-main: "Century Gothic", "Avenir Next", Avenir, sans-serif;--font-accent: "Cooper Black Zeta", Georgia, serif;--font-accent-size: clamp(2.5rem, 5.5vw, 5.5rem);font-family:var(--font-main);color:#111;background:#f4f2ee;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh}#root{opacity:0}.app-ready #root{opacity:1;transition:opacity .18s ease}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}img{display:block;width:100%}.site-shell{min-height:100vh;display:flex;flex-direction:column}.site-header,.site-footer{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.25rem 2rem}.site-header{position:sticky;top:0;z-index:10;align-items:flex-end;justify-content:flex-start;gap:.1rem;padding:.32rem 1.6rem .2rem;background:color-mix(in srgb,#f4f2ee 88%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .25s ease}.site-header--hidden{transform:translateY(-100%)}.brand{flex:0 0 auto}.brand img{width:auto;height:3.1875rem;object-fit:contain;object-position:center left}.site-nav{display:flex;gap:.7rem;margin-left:.7rem;font-family:var(--font-main);font-size:.9rem}.site-nav a.active{text-decoration:underline;text-underline-offset:.3rem}main{flex:1}.page-pad{padding:5rem 2rem}.hero{min-height:78vh;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start}.hero h1,.page-heading h1,.text-page h1,.contact-page h1{margin:0;max-width:14ch;font-size:var(--font-accent-size);line-height:.92;letter-spacing:-.055em;font-weight:500}.hero h1,.page-heading h1{font-family:var(--font-accent);font-weight:400;letter-spacing:-.035em}.hero h1{max-width:17ch;line-height:.98}.hero-copy,.text-page>p:last-child{max-width:44rem;font-size:1.05rem;line-height:1.6}.eyebrow{margin:0 0 1rem;text-transform:uppercase;letter-spacing:.12em;font-size:.72rem}.text-link{margin-top:1rem;border-bottom:1px solid currentColor}.project-nav-link{display:inline-flex;align-items:center;gap:.65rem;border:1px solid currentColor;border-radius:999px;padding:.7rem 1.05rem;font-size:.75rem;letter-spacing:.04em;transition:color .2s ease,background-color .2s ease,transform .2s ease}.hero .project-nav-link{margin-top:1rem}.project-nav-link:hover,.project-nav-link:focus-visible{color:#f4f2ee;background:#111;transform:translateY(-2px)}.project-nav-link:focus-visible{outline:1px solid #111;outline-offset:3px}.moodboard-strip{--parallax-y: 0px;position:relative;width:100%;height:min(45vw,42rem);overflow:hidden}.moodboard-strip img{width:100%;height:auto;transform:translateY(var(--parallax-y));will-change:transform}.moodboard-strip>p{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;margin:0;padding:1rem;color:#fff;font-family:var(--font-accent);font-size:var(--font-accent-size);line-height:.9;text-align:center;text-shadow:0 2px 24px rgb(0 0 0 / 35%)}.home-mock{min-height:75vh;display:flex;flex-direction:column;justify-content:center}.home-mock h2{max-width:17ch;margin:0;font-family:var(--font-accent);font-size:var(--font-accent-size);font-weight:400;line-height:.98}.home-mock>p:last-child{max-width:48rem;margin:2rem 0 0;font-size:1.05rem;line-height:1.7}.page-heading{margin-bottom:4rem}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4rem 1.5rem}.project-media{aspect-ratio:4 / 3;display:grid;place-items:center;overflow:hidden;background:#dedad2;color:#777}.project-card .project-media{transition:background-color .35s ease}.project-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.project-card a:hover .project-media,.project-card a:focus-visible .project-media{background:#d3cec5}.project-card a:hover .project-media img,.project-card a:focus-visible .project-media img{transform:scale(1.025)}.project-card a:focus-visible{outline:1px solid currentColor;outline-offset:.4rem}.project-meta{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding-top:.8rem}.project-meta h2,.project-meta p{margin:0;font-size:.85rem;font-weight:400}.project-meta p:last-child{grid-column:1 / -1;color:#6d6d6d}.project-detail-header{display:grid;grid-template-columns:2fr 1fr;gap:3rem;align-items:end}.project-back{grid-column:1 / -1;justify-self:start}.project-detail-header h1{margin:0;max-width:12ch;font-family:var(--font-accent);font-size:var(--font-accent-size);font-weight:400;line-height:.9;letter-spacing:-.04em}.project-facts{display:grid;gap:.8rem;margin:0;font-size:.78rem}.project-facts div{display:grid;grid-template-columns:5rem 1fr;gap:1rem;padding-top:.65rem}.project-facts dt{color:#777;text-transform:uppercase;letter-spacing:.08em}.project-facts dd{margin:0}.project-description{grid-column:1 / -1;margin:0;max-width:58ch;font-size:clamp(1.15rem,1.5vw,1.35rem);line-height:1.6}.project-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;align-items:start}.project-gallery-column{display:grid;gap:1rem}.project-gallery-column:last-child{margin-top:clamp(3rem,7vw,7rem)}.project-gallery-column a{overflow:hidden;cursor:zoom-in}.project-gallery img{height:auto;transition:transform .5s ease}.project-gallery-column a:hover img{transform:scale(1.02)}.text-page{display:grid;gap:2rem}.not-found-title,.about-title,.contact-page h1{font-family:var(--font-accent);font-weight:400}.contact-page{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,34rem),1fr));gap:4rem}.contact-form{display:grid;gap:1.4rem}.contact-form label{display:grid;gap:.45rem;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #aaa;border-radius:0;padding:.8rem 0;background:transparent;outline:none}.contact-form button{justify-self:start;border:1px solid #111;border-radius:999px;padding:.75rem 1.35rem;background:transparent;cursor:pointer}.contact-form button:disabled{cursor:wait;opacity:.55}.site-footer{margin-top:5rem;border-top:1px solid #d0ccc5;font-size:.78rem}@media(max-width:720px){.site-header,.site-footer,.page-pad{padding-left:1rem;padding-right:1rem}.site-header{align-items:flex-end;padding-left:.8rem;padding-right:.8rem}.site-nav{gap:.4rem;margin-left:.5rem;flex-wrap:wrap;justify-content:flex-start;font-size:.78rem}.brand img{width:auto;height:2.625rem}.project-grid,.contact-page{grid-template-columns:1fr}.project-detail-header{grid-template-columns:1fr;gap:2.5rem}.project-description{grid-column:1}.project-gallery{grid-template-columns:1fr}.project-gallery-column:last-child{margin-top:0}.hero{min-height:72vh}}@media(prefers-reduced-motion:reduce){.moodboard-strip img{transform:none}*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
