@font-face{font-family:"Cormorant Infant";src:url("fonts/cormorant-infant-variable.ttf") format("truetype");font-weight:400;font-display:swap}@font-face{font-family:IBMPlex;src:url("fonts/ibm-plex-sans-400.ttf") format("truetype");font-weight:400;font-display:swap}@font-face{font-family:IBMPlex;src:url("fonts/ibm-plex-sans-500.ttf") format("truetype");font-weight:500;font-display:swap}:root{--ink:#171916;--paper:#f3f0e8;--white:#fff;--olive:#68705a;--clay:#a9543d;--muted:#686b64;--gutter:clamp(1.3rem,5.2vw,4.8rem)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:IBMPlex,Arial,sans-serif}a{color:inherit}button{font:inherit}.skip-link{position:fixed;top:-5rem;left:1rem;z-index:99;background:#fff;padding:.8rem}.skip-link:focus{top:1rem}.eyebrow{font-size:.66rem;text-transform:uppercase;letter-spacing:.18em;margin:0 0 1.3rem;color:rgba(255,255,255,.85)}.eyebrow.ink{color:#565b52}.hero{height:100vh;height:100svh;min-height:42rem;position:relative;overflow:hidden;color:#fff;background:#222}.hero-bg,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-bg{object-fit:cover;object-position:center 52%;transform:scale(1.01)}.hero-shade{background:linear-gradient(90deg,rgba(16,17,14,.78) 0%,rgba(16,17,14,.42) 44%,rgba(16,17,14,.03) 75%),linear-gradient(0deg,rgba(15,16,13,.58),transparent 45%)}.site-header{position:relative;z-index:5;height:5.8rem;padding:0 var(--gutter);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;border-bottom:1px solid rgba(255,255,255,.3)}.wordmark{min-height:44px;display:flex;flex-direction:column;justify-content:center;text-decoration:none}.wordmark strong{font-size:.84rem;letter-spacing:.08em;font-weight:500}.wordmark span{font-size:.55rem;text-transform:uppercase;letter-spacing:.19em;opacity:.72}.desktop-nav{display:flex;gap:2.4rem}.desktop-nav a{text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:.62rem}.header-cta{justify-self:end;border:1px solid rgba(255,255,255,.65);background:rgba(23,25,22,.35);color:#fff;padding:.82rem 1.15rem;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem}.menu-toggle,.mobile-menu{display:none}.hero-copy{position:absolute;z-index:3;left:var(--gutter);top:clamp(9.3rem,18vh,11.5rem);max-width:47rem}.hero h1{font-family:"Cormorant Infant",serif;font-weight:400;font-size:clamp(4rem,6.5vw,6.8rem);line-height:.84;letter-spacing:-.045em;margin:0}.hero-sub{max-width:42rem;font-size:clamp(.9rem,1.1vw,1.02rem);line-height:1.55;color:rgba(255,255,255,.88);margin:1.7rem 0}.button,.inquiry button{display:inline-flex;border:0;background:var(--ink);color:#fff;padding:.95rem 1.3rem;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.64rem}.button-light{background:#fff;color:var(--ink)}.hero-meta{position:absolute;z-index:3;left:var(--gutter);right:var(--gutter);bottom:1.4rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;font-size:.58rem;text-transform:uppercase;letter-spacing:.12em}.hero-meta span:nth-child(2){text-align:center}.hero-meta span:last-child{text-align:right}
.approach{padding:clamp(6rem,10vw,10rem) var(--gutter);display:grid;grid-template-columns:.52fr 1.3fr;gap:5vw;background:#fff}.approach-body h2,.section-title h2,.practice h2,.inquiry h2{font-family:"Cormorant Infant",serif;font-size:clamp(3rem,5vw,5.25rem);font-weight:400;line-height:.96;letter-spacing:-.035em;margin:0}.approach-body>p{max-width:52rem;color:var(--muted);font-size:1rem;line-height:1.65}.approach-points{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:3rem}.approach-points article{border-top:1px solid #cbcfc7;padding-top:1rem}.approach-points span{font-size:.62rem}.approach-points h3{font-family:"Cormorant Infant",serif;font-size:1.45rem;font-weight:400;margin:1.8rem 0 .5rem}.approach-points p{color:var(--muted);line-height:1.5}.image-pair{grid-column:1/-1;position:relative;height:47rem;margin-top:4rem}.image-pair figure{position:absolute;margin:0;overflow:hidden}.image-one{left:0;top:0;width:64%;height:86%}.image-two{right:0;bottom:0;width:37%;height:53%;border:1rem solid #fff}.image-pair img{width:100%;height:100%;object-fit:cover}
.projects{padding:clamp(6rem,9vw,8rem) var(--gutter);background:var(--paper);overflow:hidden}.section-title{display:grid;grid-template-columns:1.25fr .75fr;align-items:end;gap:4rem}.section-title>p{max-width:32rem;color:var(--muted);line-height:1.55}.collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.3rem;margin-top:4rem;transition:transform .45s ease}.project-card{position:relative;height:31rem;overflow:hidden;background:#ccc}.project-card img{width:100%;height:100%;object-fit:cover}.project-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(14,15,13,.83))}.project-card>div{position:absolute;z-index:2;left:1.25rem;right:1.25rem;bottom:1.15rem;color:#fff;display:grid}.project-card span,.project-card small{text-transform:uppercase;letter-spacing:.13em;font-size:.56rem}.project-card strong{font-family:"Cormorant Infant",serif;font-size:2rem;font-weight:400;margin:.4rem 0}.collection-controls{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.3rem}.collection-controls button{min-width:4.8rem;min-height:44px;background:transparent;border:1px solid #b9bcb4;text-transform:uppercase;font-size:.58rem;letter-spacing:.1em}.named-work{display:grid;grid-template-columns:.7fr 1.3fr;gap:3rem;border-top:1px solid #c9ccc4;margin-top:4rem;padding-top:1.5rem}.named-work p{font-size:.7rem;text-transform:uppercase;letter-spacing:.13em}.named-work ul{list-style:none;margin:0;padding:0}.named-work li{font-family:"Cormorant Infant",serif;font-size:clamp(1.5rem,2.4vw,2.5rem);padding:.7rem 0;border-bottom:1px solid #c9ccc4}
.practice{padding:clamp(6rem,10vw,9rem) var(--gutter);background:var(--ink);color:#fff;display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw}.proof-grid article{display:grid;grid-template-columns:3rem .65fr 1.35fr;gap:1rem;border-top:1px solid rgba(255,255,255,.25);padding:1.5rem 0}.proof-grid span{font-size:.6rem}.proof-grid h3{font-family:"Cormorant Infant",serif;font-size:1.5rem;font-weight:400;margin:0}.proof-grid p{color:rgba(255,255,255,.74);line-height:1.55;margin:0}.inquiry{padding:clamp(6rem,10vw,9rem) var(--gutter);display:grid;grid-template-columns:.83fr 1.17fr;gap:7vw;align-items:center;background:#fff}.inquiry-copy>p:nth-of-type(2){max-width:35rem;color:var(--muted);line-height:1.6}.inquiry button{margin-top:1.5rem}.inquiry figure{margin:0;height:39rem;overflow:hidden}.inquiry img{width:100%;height:100%;object-fit:cover}footer{padding:3.5rem var(--gutter);background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr;gap:3rem}footer p{margin:0;color:rgba(255,255,255,.65);font-size:.75rem;line-height:1.6}
@media(max-width:900px){.site-header{grid-template-columns:1fr auto;height:5.4rem}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;align-items:center;gap:.45rem;min-height:44px;border:1px solid rgba(255,255,255,.5);background:rgba(23,25,22,.3);color:#fff;padding:.7rem 1rem}.menu-toggle span{width:.32rem;height:.32rem;border-radius:50%;background:#fff}.mobile-menu{position:fixed;inset:0;z-index:20;background:var(--ink);padding:6rem var(--gutter) 3rem;flex-direction:column;gap:1.5rem;visibility:hidden;opacity:0;pointer-events:none}.mobile-menu.is-open{display:flex;visibility:visible;opacity:1;pointer-events:auto}.mobile-menu a{font-family:"Cormorant Infant",serif;font-size:clamp(2.8rem,9vw,5rem);text-decoration:none}.menu-close{position:absolute;right:var(--gutter);top:1.2rem;min-width:4rem;min-height:44px}.hero-copy{max-width:78vw}.approach{grid-template-columns:1fr}.image-pair{height:38rem}.section-title{grid-template-columns:1fr}.collection{grid-template-columns:repeat(3,72vw)}.practice{grid-template-columns:1fr}.inquiry{grid-template-columns:1fr 1fr}footer{grid-template-columns:1fr 1fr}footer p:last-child{grid-column:1/-1}}
@media(max-width:600px){.hero{height:100vh;height:100svh;min-height:0}.site-header{padding:0 1rem}.hero-copy{left:1.25rem;right:1.25rem;top:7rem;max-width:none}.hero h1{font-size:clamp(3.2rem,15vw,4.1rem);line-height:.88}.hero-sub{font-size:.84rem;line-height:1.45;margin:1.15rem 0;background:rgba(17,18,15,.76);padding:.6rem}.hero-meta{left:1.25rem;right:1.25rem;grid-template-columns:1fr 1fr;gap:1rem}.hero-meta span:nth-child(2){text-align:right}.hero-meta span:last-child{display:none}.approach,.projects,.practice,.inquiry{padding:5rem 1.25rem}.approach-body h2,.section-title h2,.practice h2,.inquiry h2{font-size:2.9rem}.approach-points{grid-template-columns:1fr}.image-pair{height:30rem;margin-top:2rem}.image-one{width:78%;height:76%}.image-two{width:48%;height:45%;border-width:.6rem}.collection{grid-template-columns:repeat(3,82vw)}.project-card{height:29rem}.named-work{grid-template-columns:1fr}.proof-grid article{grid-template-columns:2rem 1fr}.proof-grid p{grid-column:2}.inquiry{grid-template-columns:1fr}.inquiry figure{height:28rem}.inquiry-copy{order:1}.inquiry figure{order:2}footer{grid-template-columns:1fr;padding:3.5rem 1.25rem}footer p:last-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.collection,.mobile-menu{transition:none}}
.error-page{min-height:100svh;background:var(--ink);color:#fff;display:flex;flex-direction:column}.error-main{flex:1;display:grid;align-content:center;padding:clamp(7rem,12vw,11rem) var(--gutter);border-top:1px solid rgba(255,255,255,.25)}.error-main p{font-size:.67rem;text-transform:uppercase;letter-spacing:.18em;color:#bec6af}.error-main h1{font-family:"Cormorant Infant",serif;font-size:clamp(3.5rem,7vw,7rem);font-weight:400;line-height:.9;max-width:12ch;margin:0}.error-main a{display:inline-flex;width:max-content;margin-top:2rem;padding:.9rem 1.2rem;background:#fff;color:var(--ink);text-decoration:none;text-transform:uppercase;font-size:.65rem;letter-spacing:.14em}
.hero-shade{pointer-events:none}
@media(min-width:601px) and (max-width:900px){.hero-meta span{background:rgba(17,18,15,.72);padding:.3rem .42rem}}

/* image-first source-geometry lock: centered first-fold message and single central action. */
.hero-copy{left:50%;right:auto;top:clamp(9rem,17vh,11rem);width:min(90%,52rem);max-width:52rem;transform:translateX(-50%);text-align:center}
.hero-copy .eyebrow{margin-bottom:1.1rem}.hero h1{margin-inline:auto}.hero-sub{max-width:45rem;margin:1.7rem auto}.hero-meta{display:none}
@media(max-width:900px){.hero-copy{left:50%;right:auto;max-width:min(88vw,48rem)}}
@media(max-width:600px){.hero-copy{left:50%;right:auto;top:7.2rem;width:calc(100% - 2.5rem);max-width:none}.hero-sub{margin:1.15rem auto}.hero h1{font-size:clamp(3.05rem,14.5vw,4rem)}}

/* Brand fidelity: official client logo */
.client-logo{display:block;width:auto;max-width:min(240px,42vw);height:clamp(34px,4vw,54px);object-fit:contain;object-position:left center}footer .client-logo{height:clamp(30px,3vw,44px);max-width:min(220px,48vw)}
.inquiry-copy>a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:1.5rem;border:0;background:var(--ink);color:#fff;padding:.95rem 1.3rem;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:.64rem}
