:root{--ink:#f5f0e8;--muted:#bdb6ab;--night:#101316;--deep:#171b20;--ember:#d97843;--gold:#e2b767;--line:rgba(255,255,255,.12);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--night);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;line-height:1.05}h1{font-size:clamp(3rem,7vw,6.7rem);letter-spacing:-.055em;max-width:880px;margin-bottom:1.5rem}h2{font-size:clamp(2.2rem,4.5vw,4.2rem);letter-spacing:-.035em;margin-bottom:1.25rem}h3{font-size:1.3rem}.site-header{max-width:var(--max);margin:auto;padding:1.3rem 2rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:.8rem;text-decoration:none;font-family:Georgia,serif;font-size:1.12rem}.brand-mark{width:2.4rem;height:2.4rem;border:1px solid var(--gold);border-radius:50%;display:grid;place-items:center;color:var(--gold);font:600 .78rem/1 Inter,sans-serif;letter-spacing:.08em}nav{display:flex;align-items:center;gap:1.7rem}nav a{text-decoration:none;font-size:.9rem;color:var(--muted)}nav a:hover{color:var(--ink)}.nav-cta{border:1px solid var(--gold);padding:.7rem 1rem;border-radius:999px!important;color:var(--ink)!important}.hero,.section,footer{max-width:var(--max);margin:auto;padding-left:2rem;padding-right:2rem}.hero{min-height:760px;padding-top:7.5rem;padding-bottom:5rem;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:4rem;align-items:end;background:radial-gradient(circle at 73% 30%,rgba(217,120,67,.19),transparent 26%),radial-gradient(circle at 72% 35%,rgba(226,183,103,.08),transparent 45%)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700;color:var(--gold);margin-bottom:1.2rem}.lead{font-size:1.15rem;max-width:720px;color:#d4cec4}.actions{display:flex;flex-wrap:wrap;gap:.9rem;margin:2.1rem 0 1.1rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.2rem;padding:.8rem 1.25rem;border-radius:2px;text-decoration:none;font-weight:700;font-size:.94rem;border:1px solid transparent;cursor:pointer}.primary{background:linear-gradient(135deg,var(--ember),var(--gold));color:#17110e}.secondary{border-color:var(--line);color:var(--ink);background:rgba(255,255,255,.03)}.availability{color:var(--muted);font-size:.9rem}.hero-panel{padding:2rem;border-left:1px solid var(--gold);background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.015))}.hero-panel h2{font-size:2rem}.panel-kicker{color:var(--muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.15em}.hero-panel ul{padding-left:1.15rem;color:#d4cec4}.hero-panel li+li{margin-top:.55rem}.section{padding-top:7rem;padding-bottom:7rem;border-top:1px solid var(--line)}.section-intro{display:grid;grid-template-columns:.7fr 1.25fr;gap:4rem}.section-intro .eyebrow{grid-column:1/-1;margin-bottom:-2rem}.section-intro>p:last-child{font-size:1.08rem;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:4rem;border:1px solid var(--line)}.cards article{padding:2rem;background:var(--night)}.cards span{color:var(--ember);font-size:.8rem}.cards h3{margin-top:2.4rem}.cards p{color:var(--muted);margin-bottom:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.split p:not(.eyebrow){color:var(--muted)}.quote-block{min-height:460px;display:flex;align-items:flex-end;padding:2.5rem;background:radial-gradient(circle at 50% 25%,rgba(226,183,103,.26),transparent 26%),linear-gradient(150deg,#252119,#12171b);border:1px solid var(--line)}blockquote{font:italic 2.1rem/1.25 Georgia,serif;margin:0;max-width:420px}.locations{text-align:center;background:linear-gradient(180deg,transparent,rgba(217,120,67,.08),transparent)}.locations>p:not(.eyebrow){max-width:760px;margin-left:auto;margin-right:auto;color:var(--muted)}.county-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.7rem;margin-top:2rem}.county-list span{border:1px solid var(--line);padding:.65rem 1rem;border-radius:999px}.booking{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.booking>div>p:not(.eyebrow){color:var(--muted)}.direct-contact a{font-size:1.5rem;color:var(--gold);text-decoration:none}form{display:grid;gap:.65rem;padding:2rem;background:var(--deep);border:1px solid var(--line)}label{font-size:.88rem;font-weight:650;margin-top:.45rem}input,select,textarea{width:100%;font:inherit;color:var(--ink);background:#0d1013;border:1px solid #3a3e41;border-radius:2px;padding:.8rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--gold);outline-offset:2px}form .button{margin-top:1rem;width:100%}.form-note{min-height:1.5rem;margin:0;color:var(--muted);font-size:.85rem}footer{padding-top:3rem;padding-bottom:3rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted)}footer strong,footer a{color:var(--ink);text-decoration:none}footer p{margin:.35rem 0 0}
@media(max-width:800px){nav a:not(.nav-cta){display:none}.site-header{padding:1rem}.brand{font-size:.95rem}.hero{min-height:auto;padding:5rem 1.25rem 4rem;grid-template-columns:1fr;gap:3rem}.hero-panel{margin-top:0}h1{font-size:clamp(3.1rem,16vw,4.8rem)}.section{padding:5rem 1.25rem}.section-intro,.split,.booking{grid-template-columns:1fr;gap:2.7rem}.section-intro .eyebrow{margin-bottom:0}.cards{grid-template-columns:1fr}.quote-block{min-height:330px}footer{padding:2.5rem 1.25rem;flex-direction:column;gap:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.brand{color:var(--gold)}
.brand-logo{width:3rem;height:3rem;object-fit:cover;border-radius:50%;border:1px solid rgba(226,183,103,.5)}
.brand-banner{max-width:var(--max);margin:0 auto;padding:1.25rem 2rem 0}
.brand-banner img{display:block;width:100%;height:auto;border:1px solid rgba(226,183,103,.22);box-shadow:0 30px 90px rgba(0,0,0,.42)}
.quote-block{position:relative;overflow:hidden;isolation:isolate}
.quote-block img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.38;z-index:-1}
.quote-block::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.8));z-index:-1}
@media(max-width:800px){.brand-logo{width:2.45rem;height:2.45rem}.brand-banner{padding:.75rem .75rem 0}}
