:root{--cream:#faf6ee;--beige:#f1e7d6;--tan:#8a6f4a;--tan-d:#7a5c34;--soot:#231f1c;--soot2:#3a332d;--ember:#a63d16;--ember-d:#8a3010;--text:#2b2622;--muted:#5d544b;--r:14px;--sh:0 8px 30px rgba(35,31,28,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--text);background:var(--cream);padding-bottom:64px}
h1,h2,h3,.brand span,.foot-brand{font-family:Georgia,"Times New Roman",serif;color:var(--soot);line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2rem,5.5vw,3.3rem)}h2{font-size:clamp(1.6rem,3.5vw,2.3rem)}h3{font-size:1.3rem}
a{color:var(--ember-d)}img,video{max-width:100%;display:block;height:auto}
:focus-visible{outline:3px solid var(--ember);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;background:var(--soot);color:#fff;padding:.6em 1em;z-index:99}.skip:focus{left:8px;top:8px}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}.narrow{max-width:800px}.center{text-align:center}
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,246,238,.96);backdrop-filter:blur(8px);border-bottom:1px solid #e6dac6}
.hdr{display:flex;align-items:center;gap:12px;min-height:66px}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;margin-right:auto}.brand span{font-size:1.35rem;margin:0}.brand small{font-size:.65em;letter-spacing:.15em;color:var(--tan-d)}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}nav a{display:block;padding:.5em .7em;color:var(--soot);text-decoration:none;font-weight:500;font-size:.95rem;border-radius:8px}nav a:hover,nav a[aria-current]{background:var(--beige)}
.menu-btn{display:none;background:none;border:1px solid var(--tan);border-radius:8px;padding:.45em .8em;font:inherit;color:var(--soot)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:.8em 1.25em;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;font-size:1rem;cursor:pointer;min-height:48px}
.btn-primary,.btn-call{background:var(--ember);color:#fff}.btn-primary:hover,.btn-call:hover{background:var(--ember-d)}
.btn-ghost{border-color:var(--soot);color:var(--soot)}.btn-light{background:var(--soot);color:#fff}
.btn-call{padding:.55em 1em;min-height:44px;white-space:nowrap}
.hero{background:linear-gradient(160deg,var(--beige),var(--cream) 60%);padding:40px 0 56px}
.hero-grid{display:grid;gap:32px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;font-weight:700;color:var(--tan-d);margin:0 0 .8em}
.lead{font-size:1.15rem;color:var(--muted);max-width:40em}
.ctas{display:flex;flex-wrap:wrap;gap:10px;margin:1.4em 0}
.center .ctas{justify-content:center}
.ticks{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px;color:var(--muted);font-size:.95rem}.ticks li:before{content:"✓ ";color:var(--ember);font-weight:700}
.hero-media{position:relative;border-radius:22px;overflow:hidden;box-shadow:var(--sh);max-width:520px;width:100%;justify-self:center;aspect-ratio:1/1;background:var(--soot)}
.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-sm{padding:28px 0 40px}.crumbs{font-size:.9rem;color:var(--muted);margin-bottom:1em}
.sec{padding:60px 0}.alt{background:var(--beige)}.sub{color:var(--muted);margin-top:-.3em}
.cards{display:grid;gap:18px;margin-top:24px}
.card{background:#fff;border-radius:var(--r);padding:26px;box-shadow:var(--sh);border-top:4px solid var(--tan)}.card p{color:var(--muted)}.more{font-weight:700}
.why{list-style:none;padding:0;display:grid;gap:14px;margin:24px 0 0}.why li{background:var(--cream);padding:18px 20px;border-radius:var(--r);border-left:4px solid var(--ember)}
.ba{display:grid;gap:26px;margin-top:20px}.ba figure{margin:0}.pair{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pair>div{position:relative}
.pair img,.gallery img{border-radius:10px;aspect-ratio:3/4;object-fit:cover;width:100%}
.tag{position:absolute;left:10px;top:10px;background:var(--soot);color:#fff;font-size:.8rem;font-weight:700;padding:.2em .7em;border-radius:999px}.tag.after{background:var(--ember)}
figcaption{font-size:.92rem;color:var(--muted);margin-top:.5em;text-align:center}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.gallery figure{margin:0}
.gallery video{border-radius:10px;aspect-ratio:9/16;object-fit:cover;width:100%;background:var(--soot)}
.two{display:grid;gap:40px}.cities{columns:2;padding-left:1.1em}
.faq details{background:#fff;border-radius:10px;margin:0 0 10px;padding:0 18px;box-shadow:0 2px 8px rgba(0,0,0,.05)}
.faq summary{cursor:pointer;font-weight:700;padding:16px 0;color:var(--soot)}.faq details p{margin:0 0 16px;color:var(--muted)}
.cta-band{background:var(--soot);color:#efe6d8}.cta-band h2{color:#fff}.cta-band a{color:#f3c9a0}.cta-band .btn-ghost{border-color:#fff;color:#fff}.cta-band .btn-light{background:var(--beige);color:var(--soot)}
.small{font-size:.92rem}.prose h2{margin-top:1.4em}.prose li{margin:.3em 0}
.form .field{margin:0 0 16px;border:0;padding:0}.form label,.form legend{display:block;font-weight:700;margin-bottom:6px}
.form input:not([type=checkbox]),.form textarea{width:100%;padding:.75em;border:1.5px solid #8a7a66;border-radius:10px;font:inherit;background:#fff}
.form .chk{font-weight:400;display:flex;gap:10px;align-items:center;padding:4px 0}.form .chk input{width:20px;height:20px;accent-color:var(--ember)}
.status{font-weight:700;color:var(--ember-d)}
.site-footer{background:#1a1715;color:#d9cfc1;padding:44px 0 20px}.site-footer a{color:#f3c9a0}
.foot{display:grid;gap:24px}.foot-brand{color:#fff;font-size:1.4rem}.foot-h{color:#fff;font-weight:700;margin-bottom:.3em}.copy{font-size:.85rem;border-top:1px solid #3a332d;padding-top:16px;margin-top:20px}
.mobile-bar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr 1.3fr;z-index:60;box-shadow:0 -4px 16px rgba(0,0,0,.2)}
.mobile-bar a{padding:16px 6px;text-align:center;font-weight:700;text-decoration:none;color:#fff;background:var(--soot2)}.mobile-bar a:last-child{background:var(--ember)}
@media (max-width:899px){.menu-btn{display:block}nav ul{display:none;position:absolute;left:0;right:0;top:66px;background:var(--cream);flex-direction:column;padding:10px 20px 18px;border-bottom:1px solid #e6dac6;box-shadow:var(--sh)}nav ul.open{display:flex}.btn-call .lbl{display:none}.brand span{font-size:1.15rem}}
@media (max-width:420px){.btn-call{font-size:0;padding:.6em}.btn-call svg{width:22px;height:22px}.btn-call:after{content:"Call";font-size:.95rem}}
@media (min-width:700px){.cards{grid-template-columns:repeat(3,1fr)}.why{grid-template-columns:1fr 1fr}.ba{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:repeat(4,1fr)}.foot{grid-template-columns:2fr 1.3fr 1.3fr}.two{grid-template-columns:1fr 1fr}}
@media (min-width:900px){body{padding-bottom:0}.mobile-bar{display:none}.hero{padding:64px 0 80px}.hero-grid{grid-template-columns:1.25fr .75fr}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.social{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px}.center .social{justify-content:center}
.social a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:.4em .9em;border-radius:999px;border:1.5px solid currentColor;text-decoration:none;font-weight:600;font-size:.92rem}
.social a:hover{background:rgba(255,255,255,.08)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.cta-band a.btn-primary{color:#fff}
.cta-band :focus-visible,.site-footer :focus-visible,.mobile-bar :focus-visible,.btn-light:focus-visible{outline-color:#fff}
.err{display:block;color:#8a3010;font-weight:700;font-size:.92rem;margin-top:4px}.err[hidden]{display:none}
.form [aria-invalid=true]{border-color:#8a3010;border-width:2px}
.menu-btn{min-height:44px}
@media (max-width:899px){html{scroll-padding-bottom:80px}}
