*{box-sizing:border-box}
:root{--ink:#18201f;--paper:#f3f0e8;--warm:#ded7c8;--accent:#bd6d45;--muted:#6c716c;--line:rgba(24,32,31,.18);--white:#fbfaf6}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}
a{color:inherit}
.wrap{width:min(1160px,calc(100% - 48px));margin:auto}
.skip{position:absolute;left:16px;top:-80px;background:var(--ink);color:#fff;padding:10px 14px;z-index:10}
.skip:focus{top:16px}
.site-header{border-bottom:1px solid var(--line);background:rgba(243,240,232,.96)}
.header-inner{min-height:82px;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--ink);font-weight:800;font-size:12px;letter-spacing:.08em}
.brand strong{display:block;font-family:Georgia,serif;font-size:19px;line-height:1}
.brand small{display:block;margin-top:4px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}
nav{display:flex;gap:22px;font-size:13px}
nav a{text-decoration:none}
nav a:hover,.text-link:hover{color:var(--accent)}
.header-phone{font-weight:700;text-decoration:none;white-space:nowrap}
.hero{padding:92px 0 88px;background:var(--warm)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:90px;align-items:end}
.eyebrow,.section-kicker,.note-label,.availability,.contact-card span{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.eyebrow{margin:0 0 24px;color:var(--accent)}
h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;line-height:1.05}
h1{font-size:clamp(48px,7vw,88px);letter-spacing:-.045em;max-width:900px;margin:0}
.lead{font-size:19px;max-width:650px;margin:30px 0 0;color:#404743}
.actions{display:flex;align-items:center;gap:26px;margin-top:34px;flex-wrap:wrap}
.button{display:inline-block;padding:14px 20px;text-decoration:none;font-weight:800;font-size:13px;letter-spacing:.02em}
.button-dark{background:var(--ink);color:var(--white)}
.button-light{border:1px solid rgba(255,255,255,.55);color:var(--white)}
.text-link{font-weight:700;text-decoration:underline;text-underline-offset:5px}
.hero-note{border-left:2px solid var(--accent);padding:8px 0 8px 24px}
.hero-note a{display:block;font-family:Georgia,serif;font-size:26px;text-decoration:none;margin:8px 0 12px}
.hero-note p{margin:0 0 18px;color:#555d57}
.availability{display:inline-block;color:var(--accent)}
.statement{padding:100px 0}
.statement-grid{display:grid;grid-template-columns:220px minmax(0,760px);gap:80px}
.section-kicker{color:var(--accent);margin:7px 0 0}
h2{font-size:clamp(38px,5vw,60px);letter-spacing:-.035em;margin:0 0 44px}
.service-list{border-top:1px solid var(--line)}
.service-list article{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:27px 0;border-bottom:1px solid var(--line)}
.service-list article>span{font-family:Georgia,serif;font-size:14px;color:var(--accent)}
.service-list h3{font-size:28px;margin:0 0 6px}
.service-list p{margin:0;color:var(--muted);max-width:620px}
.quiet{font-size:13px;color:var(--muted);max-width:680px;margin-top:28px}
.field-note{background:#26302e;color:var(--white);padding:105px 0}
.field-grid{display:grid;grid-template-columns:260px 1fr;gap:80px}
.field-number{font-size:clamp(70px,10vw,130px);font-family:Georgia,serif;color:var(--accent);line-height:.8}
.field-note .section-kicker{color:#d89067}
.field-note h2{margin-bottom:26px}
.field-note p{max-width:680px;font-size:18px;color:#d9ddd8}
.field-note .small-note{font-size:13px;color:#aeb7b2;margin-top:26px}
.reviews{padding:100px 0;background:#8f6b56;color:var(--white)}
.reviews-grid{display:grid;grid-template-columns:1fr 420px;gap:100px;align-items:center}
.reviews .section-kicker{color:#f3c1a4}
.reviews h2{margin-bottom:25px}
.review-intro{max-width:640px;color:#f1e8e0;font-size:17px}
blockquote{margin:0;border-left:1px solid rgba(255,255,255,.55);padding-left:32px}
blockquote p{font:500 28px/1.3 Georgia,serif;margin:0 0 18px}
cite{font-size:12px;font-style:normal;color:#ead8ca}
.contact{padding:105px 0}
.contact-grid{display:grid;grid-template-columns:1fr 360px;gap:110px}
.contact h2{margin-bottom:25px}
.contact p{max-width:620px;color:var(--muted);font-size:18px}
.contact-card{border-top:2px solid var(--ink);padding-top:20px}
.contact-card span{display:block;color:var(--muted);margin-top:17px}
.contact-card a:not(.text-link){display:block;font:500 30px Georgia,serif;text-decoration:none;margin-top:3px}
address{font-style:normal;font-size:17px;margin:3px 0 22px}
footer{border-top:1px solid var(--line);padding:28px 0 36px}
.footer-inner{display:flex;justify-content:space-between;gap:30px;color:var(--muted);font-size:13px}
.footer-inner p{margin:0}
.footer-inner a{font-weight:700}
@media(max-width:900px){
 .header-inner{flex-wrap:wrap;padding:17px 0}.header-phone{order:2}.header-inner nav{order:3;width:100%;justify-content:space-between;padding-bottom:4px}
 .hero{padding:70px 0}.hero-grid,.reviews-grid,.contact-grid{grid-template-columns:1fr;gap:48px}
 .hero-note{max-width:360px}.statement-grid,.field-grid{grid-template-columns:1fr;gap:35px}.field-number{font-size:72px}
 .reviews-grid blockquote{max-width:600px}
}
@media(max-width:600px){
 .wrap{width:min(100% - 32px,1160px)}
 nav{gap:13px;font-size:12px;overflow:auto}
 h1{font-size:48px}.hero{padding:58px 0 64px}.lead{font-size:17px}
 .statement,.field-note,.reviews,.contact{padding:72px 0}
 .service-list article{grid-template-columns:42px 1fr}
 .service-list h3{font-size:25px}.review-intro{font-size:16px}blockquote p{font-size:24px}
 .footer-inner{display:block}.footer-inner p+p{margin-top:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
