:root{
  --ink:#152219; --ink-2:#0d1710; --parchment:#F5EEDC; --parchment-2:#EDE2C6;
  --gold:#D9A441; --gold-bright:#F1C874; --brick:#9A2B23; --brick-dark:#7A211B;
  --coquina:#B7A98C; --charcoal:#2A251E;
}
*{box-sizing:border-box;}
body{margin:0; background:var(--parchment); color:var(--charcoal); font-family:'Karla',Arial,sans-serif; font-size:16px; line-height:1.65;}
h1,h2,h3{font-family:'Cinzel',Georgia,serif; letter-spacing:0.02em; margin:0; color:var(--ink);}
a{color:inherit;}
.wrap{max-width:960px; margin:0 auto; padding:0 24px;}
.eyebrow{font-family:'Cinzel',Georgia,serif; font-size:0.72rem; letter-spacing:0.28em; text-transform:uppercase; color:var(--brick); margin:0 0 0.7rem; font-weight:600;}

/* nav */
.nav{background:var(--ink-2); border-bottom:1px solid rgba(217,164,65,0.3);}
.nav-inner{max-width:1180px; margin:0 auto; padding:14px 24px; display:flex; align-items:center; justify-content:space-between;}
.nav-inner img{height:42px; width:auto;}
.nav-phone{color:var(--gold-bright); font-weight:700; text-decoration:none; font-size:0.92rem;}
.nav-cta{display:flex; align-items:center; gap:16px;}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; font-family:'Cinzel',Georgia,serif; font-weight:600; font-size:0.82rem; letter-spacing:0.06em; text-transform:uppercase; padding:12px 22px; border-radius:4px; border:2px solid transparent; cursor:pointer; text-decoration:none;}
.btn-primary{background:linear-gradient(180deg,var(--gold-bright),var(--gold)); color:var(--ink-2);}
.btn-ghost{background:transparent; border-color:var(--brick); color:var(--brick);}

/* page hero */
.page-hero{background:linear-gradient(160deg,var(--ink) 0%, var(--ink-2) 100%); color:var(--parchment); padding:56px 0 44px; text-align:center;}
.page-hero h1{font-size:clamp(1.7rem,4.5vw,2.6rem); color:#FBF3DE; line-height:1.15;}
.page-hero p{max-width:640px; margin:16px auto 0; color:var(--coquina); font-size:1.05rem;}
.breadcrumb{font-size:0.8rem; color:var(--coquina); margin-bottom:14px;}
.breadcrumb a{color:var(--gold-bright); text-decoration:none;}

/* content */
.content{padding:56px 0;}
.content h2{font-size:1.5rem; margin-bottom:16px; color:var(--ink);}
.content p{margin:0 0 16px;}
.lede{font-size:1.08rem; color:var(--charcoal);}
.checklist{list-style:none; margin:0 0 32px; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:10px 24px;}
.checklist li{padding-left:26px; position:relative;}
.checklist li::before{content:"✓"; position:absolute; left:0; color:var(--brick); font-weight:700;}
@media(max-width:600px){.checklist{grid-template-columns:1fr;}}

.local-box{background:var(--parchment-2); border:1px solid var(--coquina); border-radius:6px; padding:24px 28px; margin:28px 0;}
.local-box h3{font-size:1.1rem; margin-bottom:8px; color:var(--brick);}

.price-strip{display:flex; flex-wrap:wrap; gap:14px; margin:24px 0 32px;}
.price-chip{background:var(--ink); color:var(--parchment); border-radius:6px; padding:14px 18px; flex:1; min-width:150px; text-align:center;}
.price-chip .amt{font-family:'Cinzel',Georgia,serif; color:var(--gold-bright); font-size:1.15rem; font-weight:700;}
.price-chip .lbl{font-size:0.78rem; color:var(--coquina); text-transform:uppercase; letter-spacing:0.05em; margin-top:4px;}

.faq{margin:32px 0;}
.faq-item{border-bottom:1px solid var(--coquina); padding:18px 0;}
.faq-item h3{font-size:1.05rem; margin-bottom:8px; color:var(--ink);}
.faq-item p{margin:0; color:#5b5346;}

.related{background:var(--parchment-2); padding:40px 0; margin-top:20px;}
.related h2{font-size:1.25rem; margin-bottom:18px;}
.related-grid{display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:10px;}
.related-grid a{display:block; background:#fff; border:1px solid var(--coquina); border-radius:4px; padding:12px 14px; text-decoration:none; color:var(--charcoal); font-size:0.9rem;}
.related-grid a:hover{border-color:var(--brick); color:var(--brick);}

.cta-band{background:linear-gradient(160deg,var(--brick-dark),var(--brick) 65%); color:#FBF3DE; padding:48px 0; text-align:center;}
.cta-band h2{color:#FBF3DE; font-size:1.5rem; margin-bottom:10px;}
.cta-band p{color:#F3D9C9; margin-bottom:22px;}
.cta-buttons{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}

footer{background:var(--ink-2); color:var(--coquina); padding:34px 0; font-size:0.85rem; text-align:center;}
footer a{color:var(--gold-bright); text-decoration:none;}
