:root{--ink:#252923;--muted:#575b53;--cream:#f7f4f1;--white:#fffdfa;--mauve:#b69ba2;--mauve-dark:#795965;--line:#d9d6cf;--green:#5a6a60;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit}button,input,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--mauve-dark);outline-offset:3px}.section-wrap{max-width:1260px;margin:auto;padding-left:5.5vw;padding-right:5.5vw}.site-header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;background:var(--cream);position:relative;z-index:5}.brand{text-decoration:none;display:inline-flex;align-items:baseline;gap:5px;position:relative;line-height:1}.brand-script{font:italic 36px var(--serif);letter-spacing:-2px}.brand-neat{font-size:23px;font-weight:700;letter-spacing:.11em}.brand-rule{position:absolute;height:2px;width:56px;background:var(--mauve);right:1px;bottom:-9px}.site-header nav{display:flex;align-items:center;gap:2.2vw;font-size:14px;font-weight:600}.site-header nav a{text-decoration:none}.site-header nav a:hover,.text-link:hover{color:var(--mauve-dark)}.nav-contact{border-bottom:1px solid var(--ink);padding-bottom:4px}.menu-button{display:none}.hero{min-height:670px;display:grid;grid-template-columns:52% 48%;background:#eeebe6}.hero-copy{padding:112px 4vw 100px 10.5vw;position:relative;z-index:1}.eyebrow{text-transform:uppercase;letter-spacing:.21em;font-weight:700;font-size:12px;color:var(--mauve-dark);line-height:1.6;margin:0 0 24px}.hero h1,h2{font-family:var(--serif);font-weight:400;line-height:1.18;letter-spacing:-.035em}.hero h1{font-size:clamp(49px,5vw,84px);margin:0 0 27px;white-space:nowrap}.hero h1 em{color:var(--mauve-dark);font-weight:400}.hero-intro{font-size:19px;line-height:1.65;max-width:520px;color:#41453e;margin:0 0 35px}.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:16px 24px;text-decoration:none;cursor:pointer;font-weight:600;font-size:14px;min-height:54px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#455047}.text-link{font-size:14px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:5px}.hero-visual{position:relative;min-height:550px;background:linear-gradient(135deg,#c9d0c2,#f6f0e9 65%,#bda3aa);overflow:hidden}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;position:absolute;inset:0}.hero-caption{position:absolute;bottom:27px;right:28px;padding:11px 17px;background:rgba(255,253,250,.89);font:italic 16px var(--serif);z-index:1}.intro{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:12%;padding-top:125px;padding-bottom:50px}.intro h2,.approach h2,.about h2,.pricing h2,.work h2,.contact h2{font-size:clamp(36px,3.7vw,57px);margin:0}.intro>p{font-size:18px;color:var(--muted);max-width:540px;margin:0 0 5px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-bottom:130px}.service{border-top:1px solid #b7b5ae;padding:27px 25px 20px 0}.service-number{color:var(--mauve-dark);font:italic 19px var(--serif)}.service h3{font:400 27px var(--serif);letter-spacing:-.02em;margin:31px 0 14px}.service p{color:var(--muted);max-width:310px;margin:0}.approach{background:#e8ebe5;padding:120px 0}.approach-inner{display:grid;grid-template-columns:1fr 1fr;gap:12%}.approach-heading>p:last-child{color:var(--muted);max-width:370px;font-size:18px}.steps{border-top:1px solid #b6c0b4}.steps>div{display:grid;grid-template-columns:56px 1fr;gap:10px;padding:22px 0;border-bottom:1px solid #b6c0b4}.steps span{font:italic 20px var(--serif);color:var(--green)}.steps p{margin:0;color:#4e554d}.steps strong{display:block;color:var(--ink);font-size:17px}.about{display:grid;grid-template-columns:38% 1fr;gap:12%;align-items:center;padding-top:150px;padding-bottom:150px}.about-marker{min-height:420px;background:#ded6d1;color:#655359;display:flex;align-items:center;justify-content:center;font:italic 120px var(--serif);letter-spacing:-.12em;position:relative}.about-marker span{font:normal 25px var(--serif);position:absolute;right:25%;top:24%}.about p:not(.eyebrow):not(.signature){font-size:18px;color:var(--muted);max-width:640px}.signature{font:italic 35px var(--serif);color:var(--mauve-dark);margin-top:24px}.pricing{background:#e9dfe0;padding:115px 0 95px}.pricing-head{max-width:730px;margin-bottom:48px}.pricing-head>p:last-child{color:var(--muted);font-size:18px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.pricing-grid article{padding:38px 32px;background:rgba(255,253,250,.62);min-height:310px}.pricing-grid article.featured{background:var(--white)}.price-label{color:var(--mauve-dark);text-transform:uppercase;font-size:12px;letter-spacing:.14em;font-weight:700}.pricing h3{font:400 27px var(--serif);margin:29px 0 12px}.price{font:500 29px var(--serif);color:var(--ink);margin:0 0 20px}.price small{font:500 14px var(--sans);color:var(--muted)}.pricing-grid article>p:last-child{color:var(--muted);margin:0}.pricing-note{font-size:13px;color:#605c59;margin-top:24px}.work{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:end;padding-top:115px;padding-bottom:115px}.work>p{color:var(--muted);font-size:18px;margin:0}.work a{color:var(--mauve-dark);font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}.contact{background:var(--ink);color:var(--white);padding:120px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:11%}.contact .eyebrow{color:#d8b9c2}.contact h2{margin-bottom:25px}.contact p{color:#d3d6cf;max-width:450px}.contact-email{display:inline-block;margin-top:30px;color:#efd5dc;text-decoration:none;border-bottom:1px solid #efd5dc;font-size:19px}.contact form{display:flex;flex-direction:column}.contact form>label,.contact legend{font-size:14px;font-weight:600;margin:0 0 7px}.contact label span,.contact legend span{color:#d8b9c2}.contact input:not([type=checkbox]),.contact textarea{width:100%;border:1px solid #828b81;background:#fffdfa;color:var(--ink);border-radius:0;padding:13px 15px;margin-bottom:20px}.contact textarea{resize:vertical;min-height:112px}.contact fieldset{border:0;margin:0 0 22px;padding:0}.contact legend{margin-bottom:11px}.contact fieldset label{display:block;color:#e9ebe8;margin:8px 0;cursor:pointer;font-size:15px}.contact input[type=checkbox]{accent-color:#b79ca5;margin-right:8px;width:17px;height:17px;vertical-align:middle}.contact button{align-self:flex-start}.contact .form-note{font-size:13px;margin:13px 0 0}.contact #form-error{color:#ffd7dc;margin:0 0 10px}footer{background:#1b1f1b;color:#d6d9d2;padding:45px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-brand{font:italic 27px var(--serif);text-decoration:none;color:white}.footer-inner p{font-size:13px;margin:5px 0}.footer-inner>div:last-child{display:flex;gap:24px;align-items:center;font-size:14px}.footer-inner a{text-decoration:none}footer a:hover{text-decoration:underline}
@media(max-width:900px){.site-header{height:78px}.site-header nav{gap:15px}.site-header nav a{font-size:12px}.hero{min-height:570px}.hero-copy{padding:90px 35px 85px 6vw}.hero h1{font-size:clamp(42px,5.2vw,60px)}.hero-intro{font-size:17px}.intro,.approach-inner,.contact-inner{gap:6%}.about{gap:8%}.about-marker{min-height:350px;font-size:95px}.pricing-grid article{padding:28px 22px}.price{font-size:24px}}
@media(max-width:700px){.section-wrap{padding-left:24px;padding-right:24px}.site-header{padding:0 24px;height:74px}.brand-script{font-size:31px}.brand-neat{font-size:20px}.menu-button{display:flex;align-items:center;gap:8px;background:none;border:0;font-size:15px;font-weight:700;padding:12px 0}.menu-button span{font-size:20px}.site-header nav{display:none;position:absolute;left:0;right:0;top:74px;background:var(--cream);padding:20px 24px 30px;box-shadow:0 18px 24px rgba(0,0,0,.08);flex-direction:column;align-items:stretch;gap:14px}.site-header nav.open{display:flex}.site-header nav a{font-size:17px;padding:5px 0}.nav-contact{border:0}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:73px 24px 63px}.hero h1{font-size:clamp(45px,11vw,67px);white-space:normal}.hero-intro{font-size:17px}.hero-visual{min-height:315px}.hero-caption{bottom:15px;right:15px;font-size:14px}.intro,.approach-inner,.about,.work,.contact-inner{display:block}.intro{padding-top:80px;padding-bottom:15px}.intro>p{font-size:17px;margin-top:28px}.services-grid{display:block;padding-bottom:80px}.service{padding:20px 0 30px}.service h3{margin-top:20px}.approach{padding:80px 0}.approach-heading{margin-bottom:35px}.about{padding-top:85px;padding-bottom:85px}.about-marker{min-height:270px;margin-bottom:50px;font-size:90px}.about p:not(.eyebrow):not(.signature){font-size:17px}.pricing{padding:80px 0}.pricing-grid{display:block}.pricing-grid article{min-height:0;margin-bottom:10px}.work{padding-top:85px;padding-bottom:85px}.work>p{margin-top:28px}.contact{padding:85px 0}.contact-inner>div:first-child{margin-bottom:50px}.contact-email{margin-top:10px;font-size:17px}.footer-inner{display:block}.footer-inner>div:last-child{margin-top:28px;flex-wrap:wrap}.eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
