:root{--ink:#17231e;--cream:#f3f0e8;--paper:#fbfaf6;--gold:#c99b58;--muted:#68716d;--line:rgba(23,35,30,.16);--serif:"Yu Mincho","Hiragino Mincho ProN",serif;--sans:"Helvetica Neue","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.8}img{display:block;width:100%}a{color:inherit;text-decoration:none}.skip-link{position:fixed;left:1rem;top:-5rem;background:#fff;padding:.75rem;z-index:100}.skip-link:focus{top:1rem}.site-header{height:86px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;z-index:10;color:#fff;border-bottom:1px solid rgba(255,255,255,.24)}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border:1px solid currentColor;display:grid;place-items:center;font:500 20px/1 Georgia,serif}.brand strong{display:block;font:500 18px/1 Georgia,serif;letter-spacing:.2em}.brand small{display:block;font-size:10px;letter-spacing:.12em;margin-top:6px;opacity:.75}.site-header nav{display:flex;align-items:center;gap:34px;font-size:13px;letter-spacing:.08em}.site-header nav a{transition:opacity .2s}.site-header nav a:hover{opacity:.65}.nav-cta{border:1px solid rgba(255,255,255,.7);padding:11px 19px}.menu-toggle{display:none;background:none;border:0;color:#fff;font:inherit}.hero{min-height:780px;height:100svh;position:relative;color:#fff;display:flex;align-items:flex-end;overflow:hidden}.hero-media{position:absolute;inset:0;background-color:#17231e;background-size:cover;background-position:center;background-repeat:no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,19,15,.8),rgba(10,19,15,.15) 70%),linear-gradient(0deg,rgba(10,19,15,.55),transparent 55%)}.hero-content{position:relative;z-index:1;padding:0 clamp(24px,8vw,124px) clamp(70px,10vh,108px);max-width:920px}.eyebrow,.section-label{font-size:11px;letter-spacing:.3em;font-weight:600}.eyebrow{color:#e1c18a}.hero h1{font-family:var(--serif);font-size:clamp(48px,7.2vw,100px);line-height:1.12;letter-spacing:.02em;font-weight:500;margin:18px 0 24px}.hero h1 em{font-style:normal;color:#e6d1aa}.hero-copy{font-family:var(--serif);font-size:clamp(16px,1.55vw,21px);line-height:2;max-width:690px;margin:0}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:38px}.button{display:inline-flex;min-height:54px;align-items:center;padding:0 28px;letter-spacing:.08em;font-weight:600;font-size:14px}.button-light{background:#fff;color:var(--ink)}.text-link{font-size:14px;border-bottom:1px solid rgba(255,255,255,.5);padding:12px 0}.text-link span{margin-left:12px}.hero-note{position:absolute;right:clamp(24px,4vw,64px);bottom:34px;z-index:1;text-align:right;font-size:11px;letter-spacing:.08em;line-height:1.8;opacity:.72}.section{padding:clamp(90px,12vw,170px) clamp(24px,8vw,124px)}.section-pad{padding:0 clamp(24px,8vw,124px) clamp(90px,12vw,170px)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.section-label{color:#9b713d;margin:0 0 25px}.intro h2,.section-heading h2,.contact h2{font-family:var(--serif);font-size:clamp(36px,4.5vw,66px);font-weight:500;line-height:1.35;margin:0;letter-spacing:.03em}.intro-copy{max-width:610px}.lead{font-family:var(--serif);font-size:clamp(19px,2vw,27px);line-height:1.9;margin:0 0 28px}.intro-copy>p:last-child{color:var(--muted);font-size:16px}.strength-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.strength-card{background:var(--paper);padding:40px 28px 34px;min-height:280px}.strength-card span{font:14px Georgia,serif;color:var(--gold)}.strength-card h3{font-family:var(--serif);font-size:25px;font-weight:500;margin:48px 0 16px}.strength-card p{font-size:14px;color:var(--muted);margin:0}.works{background:var(--ink);color:#fff}.section-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:8vw;align-items:end;margin-bottom:70px}.section-heading>p{color:#adb4b0;max-width:480px;margin:0}.works-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:390px;gap:14px}.work{margin:0;position:relative;overflow:hidden;background:#28342f}.work-wide{grid-column:span 2}.work img{height:100%;object-fit:cover;transition:transform .6s ease;filter:saturate(.76)}.work:hover img{transform:scale(1.025)}.work figcaption{position:absolute;inset:auto 0 0;display:flex;justify-content:space-between;padding:22px;color:#fff;background:linear-gradient(transparent,rgba(0,0,0,.7));font-size:12px;letter-spacing:.12em}.work figcaption b{font:400 16px Georgia,serif}.process{background:var(--cream)}.process .section-heading>p{color:var(--muted)}.process-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process-list li{display:grid;grid-template-columns:100px 1fr;padding:38px 0;border-bottom:1px solid var(--line)}.process-list li>span{font:18px Georgia,serif;color:var(--gold)}.process-list h3{font-family:var(--serif);font-size:26px;font-weight:500;margin:0 0 10px}.process-list p{color:var(--muted);margin:0}.message{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.message-quote blockquote{font-family:var(--serif);font-size:clamp(32px,4vw,56px);line-height:1.55;margin:0;color:var(--ink)}.message-copy h3{font-family:var(--serif);font-size:20px;font-weight:500;margin:38px 0 10px}.message-copy p:not(.lead):not(.signature){color:var(--muted)}.signature{display:flex;align-items:baseline;gap:18px;margin-top:46px;padding-top:24px;border-top:1px solid var(--line)}.signature strong{font-family:var(--serif);font-size:25px}.signature span{font-size:12px;color:var(--muted)}.contact{background:#c99855;color:#17231e;padding:clamp(80px,11vw,150px) 24px;text-align:center}.contact-inner{max-width:900px;margin:auto}.contact .section-label{color:#17231e}.contact>div>p:not(.section-label):not(.hours){font-family:var(--serif);font-size:18px;margin:25px auto 35px}.phone{max-width:620px;margin:0 auto;border-top:1px solid rgba(23,35,30,.35);border-bottom:1px solid rgba(23,35,30,.35);padding:24px 0;display:grid;grid-template-columns:1fr auto;align-items:center;text-align:left}.phone small{font-size:10px;letter-spacing:.2em}.phone strong{grid-row:2;font:clamp(34px,5vw,58px)/1.2 Georgia,serif;letter-spacing:.04em}.phone span{grid-column:2;grid-row:1/3;font-size:13px}.hours{font-size:13px;margin-top:28px}footer{background:#101814;color:#fff;padding:55px clamp(24px,6vw,90px) 30px;display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:start}.footer-brand{display:flex;gap:14px;align-items:center}.footer-brand strong{display:block;font:500 18px Georgia,serif;letter-spacing:.18em}.footer-brand small{font-size:10px;opacity:.6}.footer-meta{font-size:12px;line-height:1.3;color:#9fa7a3}.copyright{grid-column:1/-1;margin:35px 0 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.15);font-size:10px;letter-spacing:.14em;color:#78817c}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}@media(max-width:900px){.site-header{height:74px}.menu-toggle{display:block}.site-header nav{position:absolute;top:74px;left:0;right:0;background:var(--ink);padding:26px;display:none;flex-direction:column;align-items:flex-start;gap:22px}.site-header nav.open{display:flex}.hero{min-height:720px}.hero-note{display:none}.intro,.message,.section-heading{grid-template-columns:1fr}.intro,.message{gap:55px}.section-heading{gap:28px}.strength-grid{grid-template-columns:1fr 1fr}.works-grid{grid-template-columns:1fr 1fr;grid-auto-rows:330px}.work-wide{grid-column:span 2}}@media(max-width:600px){.brand small{display:none}.hero-content{padding-bottom:64px}.hero h1{font-size:48px}.hero-copy{font-size:15px}.hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.section{padding:88px 24px}.section-pad{padding:0 24px 88px}.strength-grid{grid-template-columns:1fr}.strength-card{min-height:auto}.strength-card h3{margin-top:25px}.works-grid{display:block}.work{height:320px;margin-bottom:12px}.process-list li{grid-template-columns:58px 1fr}.phone{grid-template-columns:1fr}.phone span{grid-column:1;grid-row:3;margin-top:12px}footer{grid-template-columns:1fr}footer>a{margin-top:15px}.copyright{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.work img{transition:none}}
.brand{gap:16px}.brand-logo{display:block;width:190px;height:auto;filter:invert(1);object-fit:contain}.brand>small{margin:0}.footer-brand{gap:18px}.footer-logo{display:block;width:176px;height:auto;filter:invert(1);object-fit:contain}@media(max-width:600px){.brand-logo{width:154px}}
