:root{--ink:#171714;--muted:#6d6b64;--paper:#f7f5ef;--white:#fff;--gold:#a78b4b;--line:rgba(23,23,20,.14);--serif:"Cormorant Garamond",Georgia,serif;--sans:"Manrope",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--sans);font-size:16px;line-height:1.65}img{display:block;max-width:100%}a{color:inherit}.skip{position:fixed;left:1rem;top:-5rem;z-index:200;background:#000;color:#fff;padding:.7rem 1rem}.skip:focus{top:1rem}.wrap{width:min(1240px,calc(100% - 48px));margin:auto}.eyebrow{margin:0 0 1.3rem;color:var(--gold);font-size:.72rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.display{font-family:var(--serif);font-size:clamp(3.2rem,7vw,7.4rem);font-weight:400;line-height:.88;letter-spacing:-.045em}.title{margin:0;font-family:var(--serif);font-size:clamp(2.7rem,5.5vw,5.7rem);font-weight:400;line-height:.95;letter-spacing:-.035em}.lead{color:var(--muted);font-size:clamp(1.05rem,1.6vw,1.28rem);line-height:1.7}.header{position:fixed;inset:0 0 auto;z-index:100;border-bottom:1px solid transparent;transition:.25s}.header.scrolled{background:rgba(255,255,255,.94);border-color:var(--line);backdrop-filter:blur(16px)}.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand img{width:172px;height:auto}.links{display:flex;align-items:center;gap:2rem;font-size:.77rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.links a{text-decoration:none}.menu{display:none;border:0;background:transparent;font:700 .74rem var(--sans);letter-spacing:.12em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 1.45rem;border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;font-size:.75rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase;transition:.2s}.button:hover{background:var(--gold);border-color:var(--gold)}.button.light{background:transparent;color:var(--ink)}.button.light:hover{color:#fff}.hero{min-height:100svh;display:grid;grid-template-columns:46% 54%;background:var(--paper)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:140px clamp(30px,6vw,100px) 70px}.hero-copy .display{margin:0 0 2rem}.hero-copy .lead{max-width:600px;margin:0 0 2.2rem}.actions{display:flex;gap:.8rem;flex-wrap:wrap}.hero-image{position:relative;min-height:720px;overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,245,239,.12),transparent 35%)}.intro{padding:150px 0}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw}.intro-copy{max-width:740px}.intro-copy .lead:first-of-type{color:var(--ink);font-size:clamp(1.35rem,2vw,1.8rem)}.signature{margin-top:2.5rem;font-family:var(--serif);font-size:2rem;font-style:italic}.feature{display:grid;grid-template-columns:1.15fr .85fr;min-height:760px;background:var(--ink);color:#fff}.feature-image{min-height:680px}.feature-image img{width:100%;height:100%;object-fit:cover}.feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(50px,8vw,120px)}.feature-copy .lead{color:#c9c7bf}.specialties{padding:150px 0}.specialty{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center;padding:70px 0;border-top:1px solid var(--line)}.specialty:last-child{border-bottom:1px solid var(--line)}.specialty:nth-child(even) .specialty-media{order:2}.specialty-media{aspect-ratio:4/3;overflow:hidden}.specialty-media img{width:100%;height:100%;object-fit:cover}.specialty h3{margin:.2rem 0 1.2rem;font-family:var(--serif);font-size:clamp(2.5rem,5vw,5.3rem);font-weight:400;line-height:.95}.number{color:var(--gold);font-size:.75rem;letter-spacing:.16em}.experience{padding:130px 0;background:var(--paper)}.experience-head{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-bottom:70px}.gallery{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:12px}.gallery figure{margin:0;height:520px;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:90px;border-top:1px solid var(--line)}.principle{padding:38px 38px 0 0}.principle+.principle{padding-left:38px;border-left:1px solid var(--line)}.principle h3{font-family:var(--serif);font-size:2rem;font-weight:400}.contact{display:grid;grid-template-columns:1fr 1fr}.contact-copy{padding:clamp(60px,9vw,140px);background:var(--gold);color:#fff}.contact-copy .eyebrow{color:#fff}.contact-copy .button{margin-top:2rem}.contact-details{padding:clamp(60px,9vw,140px);background:var(--ink);color:#fff}.detail{padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid rgba(255,255,255,.18)}.detail span{display:block;color:#aaa79e;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}.detail p{margin:.6rem 0 0;font-size:1.05rem}.footer{padding:35px 0;background:var(--ink);color:#b9b6ae;border-top:1px solid rgba(255,255,255,.12);font-size:.78rem}.footer-row{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap}.footer a{color:#fff}.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.wrap{width:min(100% - 30px,680px)}.nav{height:72px}.brand img{width:145px}.menu{display:block}.links{display:none;position:absolute;top:72px;left:0px;right:0;flex-direction:column;align-items:stretch;gap:0;padding:15px;background:#fff;border-bottom:1px solid var(--line)}.links.open{display:flex}.links a{padding:15px}.hero{grid-template-columns:1fr;padding-top:72px}.hero-copy{padding:70px 24px 55px}.hero-image{min-height:58svh;order:-1}.intro,.specialties{padding:90px 0}.intro-grid,.experience-head{grid-template-columns:1fr;gap:35px}.feature,.specialty,.contact{grid-template-columns:1fr}.feature-image{min-height:60svh}.specialty:nth-child(even) .specialty-media{order:0}.specialty{gap:35px}.gallery{grid-template-columns:1fr 1fr}.gallery figure{height:330px}.gallery figure:first-child{grid-column:1/-1;height:430px}.principles{grid-template-columns:1fr}.principle+.principle{padding-left:0;border-left:0}.contact-copy,.contact-details{padding:70px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}
