:root{--bg:#F8DFDB;--blush:#F2D1CB;--ink:#2B1A1C;--muted:#796163;--bronze:#8C7142;--maroon:#8C3E44;--maroon-dark:#6B2E33;--rule:#E3C3BC;--sh:0 10px 30px rgba(76,30,34,.08)}
@media (prefers-color-scheme:dark){:root{--bg:#211618;--blush:#2E2224;--ink:#F4E9E4;--muted:#C2A9AC;--bronze:#D8B37F;--maroon:#D98A8F;--maroon-dark:#C97178;--rule:#4F393C;--sh:0 10px 30px rgba(0,0,0,.35)}}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;background:var(--bg);color:var(--ink);font:300 17px/1.7 Jost,"Helvetica Neue",Arial,sans-serif}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;line-height:1.12;margin:0}
h2{font-size:clamp(34px,4.5vw,52px);margin-bottom:14px}h3{font-size:26px}p{margin:0 0 16px}
a{color:inherit}:focus-visible{outline:2px solid var(--bronze);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--bg);padding:8px 12px;z-index:20}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}section{padding:88px 0}
.top{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--rule)}
.bar{display:flex;justify-content:space-between;align-items:center;height:68px}
.brand{display:inline-flex;align-items:center;gap:9px;font-family:"Cormorant Garamond",Georgia,serif;font-size:23px;font-weight:600;text-decoration:none}
.mark{height:24px;width:29px;object-fit:contain;border-radius:3px;flex:none}
nav{display:flex;align-items:center;gap:26px;font-size:15px}nav a{text-decoration:none;color:var(--muted)}
nav a:hover,nav a[aria-current]{color:var(--ink)}nav a[aria-current]{border-bottom:1px solid var(--maroon)}
.btn{display:inline-block;padding:13px 28px;border-radius:999px;border:1px solid var(--ink);text-decoration:none;font:400 16px Jost,sans-serif;background:none;color:var(--ink);cursor:pointer;transition:transform .2s,box-shadow .2s}
.btn:hover{transform:translateY(-2px);box-shadow:var(--sh);border-color:var(--maroon)}.btn.solid{background:var(--maroon);border-color:var(--maroon);color:#FBF6F2}
.btn.solid:hover{background:var(--maroon-dark);border-color:var(--maroon-dark)}
.btn.sm{padding:8px 20px;font-size:14px}nav .btn{color:#FBF6F2}.btn.light{background:var(--bg);color:var(--ink);border-color:var(--bg)}
.burger{display:none;background:none;border:0;padding:10px;cursor:pointer}.burger span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0}
.hero{background:var(--blush);padding:0}.hero .wrap{padding-top:72px;padding-bottom:72px}
.banner-hero .band{background:var(--bg);padding:0}.banner-hero .banner{width:100%;max-width:1100px;height:auto;display:block;margin:0 auto}
.banner-hero .wrap.in{text-align:center;padding-top:40px}
.banner-hero .sub.center{margin-left:auto;margin-right:auto}.btns.center{justify-content:center}
.eyebrow{font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;color:var(--bronze);margin:0 0 14px;letter-spacing:.03em}
.grid2{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}.grid2.top{align-items:start}
.hero h1{font-size:clamp(44px,6.5vw,80px)}.sub{color:var(--muted);font-size:19px;max-width:34em;margin:22px 0 32px}.btns{display:flex;gap:14px;flex-wrap:wrap}
.arch{border:1px solid var(--bronze);border-radius:999px 999px 8px 8px;padding:10px;background:var(--bg)}.arch img{display:block;width:100%;height:auto;border-radius:999px 999px 4px 4px}
.in{animation:rise .9s ease both}@keyframes rise{from{opacity:0;transform:translateY(14px)}}
.lead{color:var(--muted);max-width:36em;margin-bottom:44px}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:24px}
.card{background:var(--blush);border-radius:10px;padding:28px;box-shadow:var(--sh);display:flex;flex-direction:column}
.card p{color:var(--muted);font-size:16px;flex:1}.ic{width:34px;height:34px;color:var(--bronze);margin-bottom:14px}
.more{color:var(--maroon);font-weight:500;text-decoration:none;border-bottom:1px solid currentColor;align-self:flex-start}
.tint{background:var(--blush)}.center{text-align:center}.big{font-size:clamp(38px,6vw,70px);margin-bottom:26px}
.narrow{max-width:40em;margin:0 auto 28px;color:var(--muted);font-size:18px}
.whys{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:36px 40px}
.why{border-top:2px solid var(--bronze);padding-top:16px}.why p{color:var(--muted);font-size:16px}
.cta{background:var(--maroon-dark);color:#FBF6F2;text-align:center}.cta h2{color:#FBF6F2}.cta p{max-width:34em;margin:0 auto 28px;opacity:.85}
.phead{background:var(--blush);padding:64px 0 52px}.phead h1{font-size:clamp(42px,6vw,68px)}.phead p{color:var(--muted);margin:10px 0 0}
.role{color:var(--bronze);font-weight:400}.mt{margin:26px 0 6px}.photo{width:100%;height:auto;border-radius:8px;box-shadow:var(--sh)}
.rev{grid-template-columns:.8fr 1.2fr}.creds{border-top:1px solid var(--rule);padding-top:18px;color:var(--muted);font-size:16px}
.area{padding:34px 0;border-bottom:1px solid var(--rule)}.ah{display:flex;align-items:center;gap:16px}.ah .ic{margin:0}.ah h2{margin:0;font-size:40px}
.area ul{margin:18px 0 0 50px;padding:0;max-width:40em}.area li{margin-bottom:6px}
.form{display:grid;gap:18px}.form label{display:grid;gap:6px;font-size:15px;color:var(--muted)}
.form input,.form select,.form textarea{font:300 17px Jost,sans-serif;padding:12px 14px;border:1px solid var(--rule);border-radius:8px;background:var(--bg);color:var(--ink)}
.form [aria-invalid=true]{border-color:#B3382C}.hp{position:absolute;left:-9999px}.form .btn{justify-self:start}
#status{margin:0;min-height:1.5em}#status.err{color:#B3382C}#status.ok{color:#2F7A4B}
.office{padding:14px 0;border-bottom:1px solid var(--rule)}.office p{margin:0;color:var(--muted)}.office p a{color:var(--maroon)}.muted{color:var(--muted);margin-top:20px;font-size:16px}
footer{background:var(--blush);padding-top:56px;font-size:15px}.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px}
.foot h3{font-size:20px;margin-bottom:8px}.foot a,.foot span{display:block;color:var(--muted);text-decoration:none;padding:2px 0}.foot p{color:var(--muted);margin-top:8px}
.copy{margin-top:40px;padding-top:20px;padding-bottom:28px;border-top:1px solid var(--rule);color:var(--muted);font-size:14px}
.totop{position:fixed;right:20px;bottom:20px;width:46px;height:46px;border-radius:50%;border:0;background:var(--ink);color:var(--bg);font-size:20px;cursor:pointer;box-shadow:var(--sh)}
.js .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s,transform .6s}.js .reveal.on{opacity:1;transform:none}
@media (max-width:860px){.grid2,.rev{grid-template-columns:1fr;gap:36px}.arch{max-width:420px}.foot{grid-template-columns:1fr 1fr}section{padding:64px 0}
.burger{display:block}nav{display:none;position:absolute;top:68px;left:0;right:0;flex-direction:column;align-items:flex-start;gap:16px;padding:20px 24px 26px;background:var(--bg);border-bottom:1px solid var(--rule)}nav.open{display:flex}.area ul{margin-left:0}}
@media (max-width:520px){.foot{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js .reveal{opacity:1;transform:none}}
.map{margin-top:22px;border-radius:8px;overflow:hidden;box-shadow:var(--sh);border:1px solid var(--rule)}
.map iframe{width:100%;height:260px;border:0;display:block}
