:root{--ink:#1c211f;--deep:#182521;--cream:#f5f3ef;--line:#d9ddd7;--muted:#69726d;--gold:#b69359}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}.utility{height:34px;background:var(--deep);color:#e7e9e6;padding:0 5vw;display:flex;gap:24px;align-items:center;font-size:12px}.utility a:last-child{margin-left:auto}header{height:88px;padding:0 5vw;display:flex;justify-content:space-between;align-items:center;background:rgba(245,243,239,.93);backdrop-filter:blur(18px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(28,33,31,.05)}.brand{font-family:'Playfair Display',serif;display:flex;flex-direction:column;line-height:.82;font-size:19px;letter-spacing:-.6px}.brand strong{font-size:31px;font-weight:500;letter-spacing:-1.5px}nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:600}nav>a:not(.nav-cta){opacity:.75}nav>a:hover{opacity:1}.nav-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border-radius:999px;padding:13px 19px;font-size:14px;font-weight:700;border:0;cursor:pointer;transition:.25s}.nav-cta{background:var(--ink);color:white}.menu{display:none}.hero{height:calc(100svh - 122px);min-height:610px;position:relative;color:white;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:saturate(.74)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,16,14,.78) 0%,rgba(10,16,14,.39) 48%,rgba(10,16,14,.08))}.hero-copy{position:absolute;top:50%;left:9vw;max-width:760px;transform:translateY(-47%)}.eyebrow{text-transform:uppercase;letter-spacing:2.1px;font-size:11px;font-weight:700;color:var(--gold);margin:0 0 18px}.hero h1,h2{font-family:'Playfair Display',serif;font-weight:500;letter-spacing:-2.8px;line-height:.95;margin:0}.hero h1{font-size:clamp(56px,8vw,123px)}em{font-style:italic}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:495px;margin:28px 0 32px;color:#e8eae7}.actions{display:flex;gap:12px;flex-wrap:wrap}.primary{background:#fff;color:#1b2521}.primary:hover{background:#d9c09a}.button span,.call span{font-size:21px;line-height:0}.ghost{border:1px solid rgba(255,255,255,.55);color:white}.ghost:hover{background:white;color:var(--ink)}.scroll{position:absolute;bottom:27px;left:9vw;font-size:11px;text-transform:uppercase;letter-spacing:1.7px}.scroll span{font-size:19px;margin-left:10px}.proof{padding:33px 7vw;background:#e8ebe6;display:flex;justify-content:space-between;align-items:center;gap:30px}.proof>p{font-size:15px;max-width:200px;margin:0}.proof>div{display:flex;align-items:center;gap:42px}.proof img{width:114px;height:50px;object-fit:contain;mix-blend-mode:multiply}.proof b{font-size:12px;font-weight:600;line-height:1.25}.intro,.services,.journal{padding:135px 9vw}.intro h2,.services h2,.journal h2,.contact h2{font-size:clamp(45px,6vw,82px)}.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:880px;margin:48px 0 0 auto}.split p{font-size:18px;margin:0}.split p+ p{color:var(--muted)}.work{padding:0 5vw 130px}.section-head{display:flex;align-items:end;justify-content:space-between;margin:0 4vw 38px}.section-head h2{font-size:clamp(40px,5vw,68px)}.section-head a,.service-grid a,.journal span{color:#516559;font-weight:700;font-size:14px}.gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:14px}.gallery figure{margin:0;height:395px;position:relative;overflow:hidden;background:#ddd}.gallery .large{grid-row:span 2;height:804px}.gallery img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.gallery figure:hover img{transform:scale(1.04)}figcaption{position:absolute;bottom:15px;left:18px;color:white;font-size:12px;letter-spacing:.3px;text-shadow:0 1px 7px #000}.services{background:var(--deep);color:#f2f2ed}.services h2{margin-bottom:60px}.service-grid{border-top:1px solid rgba(255,255,255,.23)}.service-grid article{display:grid;grid-template-columns:70px 1fr 1.3fr auto;gap:25px;padding:27px 0;border-bottom:1px solid rgba(255,255,255,.23);align-items:start}.service-grid span{color:var(--gold);font-size:13px}.service-grid h3{font-family:'Playfair Display',serif;font-size:27px;font-weight:500;margin:-8px 0 0}.service-grid p{margin:0;color:#bac1bc;font-size:14px;max-width:460px}.service-grid a{color:#fff;white-space:nowrap}.process{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;padding:135px 9vw}.process h2{font-size:clamp(40px,5vw,68px)}ol{list-style:none;padding:0;margin:0}ol li{display:grid;grid-template-columns:60px 1fr;gap:18px;padding:23px 0;border-top:1px solid var(--line)}ol li:last-child{border-bottom:1px solid var(--line)}ol b{color:var(--gold);font-size:13px}ol h3{margin:0 0 6px;font-size:18px}ol p{margin:0;color:var(--muted);font-size:15px}.testimonial{background:#dbe0d9;text-align:center;padding:135px 9vw}.testimonial blockquote{font-family:'Playfair Display',serif;font-size:clamp(35px,5vw,68px);line-height:1.05;letter-spacing:-2px;max-width:1000px;margin:26px auto}.author{font-size:13px;color:var(--muted)}.review-strip{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #bdc5bc;margin-top:76px;padding-top:25px;text-align:left}.review-strip span{font-family:'Playfair Display',serif;font-size:17px}.review-strip b{display:block;font-family:'DM Sans';font-size:12px;color:var(--muted);margin-top:6px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}.journal-grid a{border-top:1px solid var(--ink);padding:18px 0 30px;min-height:180px;display:flex;flex-direction:column;align-items:start}.journal-grid small{font-size:11px;color:var(--muted)}.journal-grid h3{font-family:'Playfair Display',serif;font-size:26px;line-height:1.1;font-weight:500;margin:17px 0}.journal-grid span{margin-top:auto}.contact{background:#202b27;color:#f5f3ef;display:grid;grid-template-columns:1fr 1fr;gap:9vw;padding:130px 9vw}.contact>div>p:not(.eyebrow){color:#c5ccc5;max-width:520px}.contact .call{font-family:'Playfair Display',serif;font-size:35px;display:block;margin:36px 0 10px}.contact form{display:grid;grid-template-columns:1fr 1fr;gap:19px}.contact label{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#b4beb5}.contact input,.contact textarea{display:block;width:100%;background:transparent;border:0;border-bottom:1px solid #829088;padding:9px 0;color:white;font:16px 'DM Sans';outline:none}.contact label:last-of-type{grid-column:span 2}.contact form button{justify-self:start;margin-top:8px}.contact .primary{background:#d8bd90}footer{padding:48px 5vw 30px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:end}footer div{display:flex;gap:18px;font-size:13px;font-weight:700}footer p{font-size:11px;color:var(--muted);text-align:right;margin:0}
@media(max-width:800px){.utility{padding:0 20px;gap:14px}.utility span,.utility a:last-child{display:none}header{height:73px;padding:0 20px}.menu{display:flex;border:0;background:transparent;gap:9px;font:600 13px 'DM Sans';align-items:center}.menu i,.menu i:after{height:1px;width:16px;background:var(--ink);display:block;content:'';position:relative}.menu i:after{position:absolute;top:5px}nav{display:none;position:absolute;top:73px;left:0;right:0;background:var(--cream);padding:12px 20px 22px;box-shadow:0 16px 25px #1c211f12;flex-direction:column;align-items:start;gap:17px}nav.open{display:flex}.hero{height:calc(100svh - 107px);min-height:600px}.hero-copy{left:24px;right:24px}.hero h1{font-size:60px;letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:16px}.scroll{left:24px}.proof{padding:26px 24px;display:block}.proof>p{max-width:none;margin-bottom:20px}.proof>div{gap:14px;justify-content:space-between}.proof img{width:91px}.proof b{font-size:10px}.intro,.services,.journal{padding:80px 24px}.split,.process,.contact{display:block}.split{margin-top:30px}.split p{font-size:16px;margin:0 0 20px}.work{padding:0 12px 80px}.section-head{margin:0 12px 30px;display:block}.section-head h2{margin-bottom:17px}.gallery{grid-template-columns:1fr 1fr;gap:8px}.gallery figure{height:235px}.gallery .large{height:480px;grid-column:span 2;grid-row:auto}.service-grid article{grid-template-columns:35px 1fr;gap:12px;padding:24px 0}.service-grid p,.service-grid a{grid-column:2}.service-grid h3{font-size:24px}.process{padding:80px 24px}.process>div{margin-bottom:44px}.testimonial{padding:80px 24px}.testimonial blockquote{letter-spacing:-1px}.review-strip{display:block;margin-top:45px}.review-strip span{display:block;margin:0 0 22px}.journal-grid{display:block;margin-top:30px}.journal-grid a{min-height:145px}.contact{padding:80px 24px}.contact>div{margin-bottom:48px}.contact .call{font-size:29px}.contact form{display:block}.contact label{display:block;margin-bottom:20px}.contact form button{width:100%}footer{padding:35px 24px;display:block}footer div{margin:26px 0}footer p{text-align:left}.contact h2{font-size:48px}}
.page-hero{min-height:670px;position:relative;color:#fff;display:flex;align-items:end;padding:9vw;overflow:hidden}.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.52) saturate(.75)}.page-hero>div{position:relative;max-width:780px}.page-hero h1{font-size:clamp(52px,7vw,104px);font-family:'Playfair Display',serif;line-height:.94;letter-spacing:-3px;margin:0}.page-hero div>p:not(.eyebrow){max-width:620px;font-size:18px;margin:25px 0 30px}.page-copy{padding:120px 18vw;max-width:1200px}.page-copy h2{font-size:clamp(39px,5vw,70px);margin:0 0 30px}.page-copy>p:not(.eyebrow){font-size:21px;line-height:1.55;color:#56615b;max-width:800px}.page-copy .call{font-family:'Playfair Display',serif;font-size:42px;display:block;margin:35px 0 10px}@media(max-width:800px){.page-hero{min-height:580px;padding:34px 24px}.page-hero h1{letter-spacing:-2px}.page-copy{padding:75px 24px}.page-copy>p:not(.eyebrow){font-size:18px}}
.page-hero-copy{z-index:1}.page-intro{padding:145px 9vw;display:grid;grid-template-columns:1fr 1.1fr;gap:90px}.page-intro h2,.page-showcase h2,.page-cta h2{font-size:clamp(46px,5.8vw,84px);font-family:'Playfair Display',serif;line-height:.96;letter-spacing:-2.5px;margin:0}.page-intro>div>p{font-size:20px;color:var(--muted);margin:3px 0 35px}.page-intro>div>a{font-weight:700;color:#526b59}.page-intro>div>a span{font-size:20px;margin-left:7px}.page-showcase{display:grid;grid-template-columns:1fr 1fr;background:#e1e5df}.page-showcase-copy{padding:11vw 9vw}.page-showcase-copy>p:not(.eyebrow){font-size:17px;color:#59645e;max-width:410px;margin:30px 0}.dark{background:var(--deep);color:#fff}.page-image-stack{height:650px;position:relative}.page-image-stack img{width:100%;height:100%;object-fit:cover}.page-image-stack small{position:absolute;bottom:18px;left:20px;color:#fff;letter-spacing:1px;font-size:10px;text-transform:uppercase}.page-steps{background:var(--deep);color:#fff;padding:115px 9vw}.page-steps>div{display:grid;grid-template-columns:repeat(3,1fr);margin-top:54px;border-top:1px solid #738078}.page-steps article{padding:27px 30px 20px 0;border-right:1px solid #738078}.page-steps article+article{padding-left:30px}.page-steps article:last-child{border:0}.page-steps b{color:var(--gold);font-size:13px}.page-steps h3{font:500 28px 'Playfair Display';margin:30px 0 8px}.page-steps p{color:#c2cbc4;max-width:250px;font-size:14px}.page-cta{text-align:center;padding:135px 20px;background:#d7c098}.page-cta .eyebrow{color:#5a4931}.page-cta h2{margin-bottom:37px}.page-cta>p{font-size:13px;margin-top:24px}.page-cta>p a{text-decoration:underline;font-weight:700}@media(max-width:800px){.page-intro{display:block;padding:80px 24px}.page-intro h2{margin-bottom:34px}.page-intro>div>p{font-size:17px}.page-showcase{display:block}.page-showcase-copy{padding:80px 24px}.page-image-stack{height:430px}.page-steps{padding:80px 24px}.page-steps>div{display:block}.page-steps article,.page-steps article+article{padding:24px 0;border-right:0;border-bottom:1px solid #738078}.page-cta{padding:85px 20px}.page-cta h2{letter-spacing:-1.7px}}
body{-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}.brand{display:flex;align-items:center}.brand img{display:block;width:154px;height:auto}.nav-cta,.button{gap:18px;padding:13px 21px;font-size:14px;font-weight:700;letter-spacing:.01em;line-height:1.25;transition:background-color .2s,color .2s,border-color .2s;white-space:nowrap;-webkit-font-smoothing:antialiased}footer .brand img{filter:invert(1) brightness(4);opacity:.95}@media(max-width:800px){.brand img{width:132px}}
body{text-rendering:auto}.brand img{width:176px;max-height:54px;object-fit:contain}.hero-copy{top:31%;transform:none}.button,.nav-cta{font-family:'DM Sans',Arial,sans-serif;text-rendering:auto;filter:none;backdrop-filter:none;transform:none}@media(max-width:800px){.brand img{width:148px}.hero-copy{top:28%}}
@media(min-width:801px){.hero-copy{top:14%;transform:none}.hero h1{font-size:clamp(52px,7vw,90px)}}.review-wall{padding:130px 9vw;background:#f1eee8}.review-wall h2{font:500 clamp(45px,5vw,76px)/.98 'Playfair Display';letter-spacing:-2px;margin:0 0 58px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-grid article{background:#fff;padding:32px;min-height:265px;display:flex;flex-direction:column}.review-grid q{font:500 22px/1.2 'Playfair Display';letter-spacing:-.6px}.review-grid b{margin-top:auto;padding-top:26px;font-size:13px}.review-grid small{font-size:11px;color:var(--muted);margin-top:4px}@media(max-width:800px){.review-wall{padding:75px 24px}.review-grid{display:block}.review-grid article{min-height:0;margin-bottom:10px}.review-grid q{font-size:20px}}
@media(min-width:801px){.hero-copy{top:13%}.hero h1{font-size:clamp(48px,5.5vw,76px);line-height:.94}.hero-copy>p:not(.eyebrow){margin:18px 0 22px;font-size:17px}.scroll{display:none}}
@media(min-width:801px){.hero-copy{top:14%;max-width:900px}.hero h1{font-size:clamp(60px,6vw,100px);line-height:.91}.hero-copy>p:not(.eyebrow){max-width:590px;margin:24px 0 28px;font-size:19px;line-height:1.45}.hero-copy .button{font-size:15px;padding:15px 25px}}
@media(min-width:1200px){.hero-copy{top:16%;max-width:1020px}.hero h1{font-size:clamp(78px,7.1vw,128px);line-height:.88}.hero-copy>p:not(.eyebrow){max-width:650px;font-size:21px;margin:28px 0 32px}.hero-copy .button{font-size:16px;padding:17px 30px}}
