/* Corbett Vantara — shared header & footer (index + blog pages) */
:root{
  --forest-deep: hsl(150,40%,12%);
  --forest-mid: hsl(140,35%,22%);
  --gold: hsl(38,70%,50%);
  --gold-light: hsl(40,60%,75%);
  --cream: hsl(40,33%,94%);
  --bg: hsl(40,33%,94%);
  --fg: hsl(150,33%,10%);
  --muted-fg: hsl(150,10%,40%);
  --card-bg: hsl(40,25%,97%);
  --border-color: hsl(40,20%,82%);
  --nav-bg: hsl(152, 42%, 7%);
  --nav-bg-mid: hsl(150, 36%, 10%);
  --nav-border: rgba(191, 144, 48, 0.28);
  --nav-link-dim: rgba(252, 249, 240, 0.55);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Lato',sans-serif;background:var(--bg);color:var(--fg);line-height:1.6}
body.has-site-chrome{padding-top:84px}
h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',serif}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.font-body{font-family:'Lato',sans-serif}
.font-display{font-family:'Playfair Display',serif}

.navbar{position:fixed;top:0;left:0;right:0;z-index:50;background:linear-gradient(180deg,var(--nav-bg) 0%,var(--nav-bg-mid) 100%);border-bottom:1px solid var(--nav-border);box-shadow:0 8px 28px rgba(0,0,0,.4)}
.navbar .inner{display:flex;align-items:center;justify-content:space-between;min-height:84px;height:auto;max-width:1280px;margin:0 auto;padding:0.55rem 1.5rem;gap:1.25rem}
.navbar .logo{display:flex;align-items:center;justify-content:flex-start;flex-shrink:0;line-height:0;margin:0;min-height:52px}
.navbar .logo img{height:auto;width:auto;max-height:min(76px,18vw);max-width:min(220px,58vw);min-height:48px;object-fit:contain;object-position:left center;display:block;flex-shrink:0}
.nav-links{display:flex;align-items:center;gap:2rem;list-style:none}
.nav-links a{color:var(--nav-link-dim);font-size:0.8rem;text-transform:uppercase;letter-spacing:0.2em;transition:color .3s}
.nav-links a:hover,.nav-links a.active{color:var(--gold-light)}
.nav-book{display:flex;align-items:center;gap:0.5rem;background:var(--gold);border:1px solid hsl(38,65%,42%);color:var(--forest-deep);padding:0.5rem 1rem;border-radius:4px;font-size:0.8rem;font-weight:700;transition:background .3s,filter .3s}
.nav-book:hover{background:var(--gold-light);filter:brightness(1.02)}
.hamburger{display:none;background:none;border:none;cursor:pointer;padding:0.5rem}
.hamburger span{display:block;width:24px;height:2px;background:rgba(252,249,240,0.9);margin:5px 0;transition:all .3s}
.mobile-menu{display:none;background:var(--nav-bg-mid);padding:1.5rem;border-top:1px solid var(--nav-border)}
.mobile-menu a{display:block;color:var(--nav-link-dim);font-size:0.85rem;text-transform:uppercase;letter-spacing:0.15em;padding:0.75rem 0;transition:color .3s}
.mobile-menu a:hover,.mobile-menu a.active{color:var(--gold-light)}
.mobile-menu.open{display:block}
@media(max-width:1023px){.nav-links,.nav-book{display:none!important}.hamburger{display:block}}
@media(max-width:480px){.navbar .inner{min-height:76px;padding:0.5rem 1rem}.navbar .logo img{max-height:64px;max-width:min(200px,62vw);min-height:44px}}

.footer{background:linear-gradient(180deg,var(--nav-bg) 0%,var(--nav-bg-mid) 100%);border-top:1px solid var(--nav-border);padding:5rem 1rem 0;box-shadow:0 -6px 28px rgba(0,0,0,.35)}
.footer .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2.5rem;max-width:1280px;margin:0 auto 2.5rem}
.footer-brand{display:block;width:auto;height:72px;max-width:none;max-height:88px;object-fit:contain;object-position:left center;margin-bottom:1rem;border-radius:8px}
.footer h4{font-family:'Playfair Display',serif;font-size:0.85rem;font-weight:600;color:var(--cream);text-transform:uppercase;letter-spacing:0.15em;margin-bottom:1rem}
.footer p,.footer li,.footer a{color:rgba(240,233,220,0.5);font-size:0.85rem;line-height:1.8}
.footer a:hover{color:var(--gold)}
.footer ul{list-style:none}
.footer .bottom{margin:0 -1rem 0;padding:1.5rem 1rem 2.25rem;text-align:center;background:linear-gradient(180deg,var(--nav-bg) 0%,var(--nav-bg-mid) 100%);border-top:1px solid var(--nav-border);box-shadow:0 -8px 24px rgba(0,0,0,.35)}
.footer .bottom p{color:var(--nav-link-dim);font-size:0.8125rem;letter-spacing:0.06em;margin:0}
.footer .contact-link{display:flex;align-items:flex-start;gap:0.75rem;margin-bottom:1rem}
.footer .contact-link svg{width:16px;height:16px;stroke:var(--gold);fill:none;stroke-width:2;margin-top:0.2rem;flex-shrink:0}
@media(max-width:767px){.footer .grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.footer .grid{grid-template-columns:1fr}}

.book-icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Reserve Your Retreat — above footer on all chrome pages */
.booking{padding:5rem 1rem;background:var(--forest-deep)}
.booking .grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:1280px;margin:0 auto}
.booking .left .tag{color:var(--gold);font-size:0.8rem;text-transform:uppercase;letter-spacing:0.25em;margin-bottom:0.75rem}
.booking .left h2{font-family:'Playfair Display',serif;font-size:clamp(1.8rem,4vw,3rem);font-weight:700;color:var(--cream);margin-bottom:1.5rem}
.booking .left>p{color:rgba(240,233,220,0.6);line-height:1.7;margin-bottom:2.5rem}
.contact-item{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}
.contact-item .ci-icon{width:48px;height:48px;border-radius:50%;background:rgba(191,144,48,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-item .ci-icon svg{width:20px;height:20px;stroke:var(--gold);fill:none;stroke-width:2}
.contact-item .ci-label{color:rgba(240,233,220,0.4);font-size:0.7rem;text-transform:uppercase;letter-spacing:0.15em}
.contact-item .ci-value{color:var(--cream);font-size:0.875rem}
.contact-item .ci-value a{color:inherit}
.booking form{background:rgba(35,70,50,0.5);border:1px solid rgba(240,233,220,0.1);border-radius:8px;padding:2rem}
.form-row{display:grid;gap:1.25rem;margin-bottom:1.25rem}
.form-row.cols-2{grid-template-columns:1fr 1fr}
.form-row.cols-3{grid-template-columns:1fr 1fr 1fr}
.form-group label{display:block;color:rgba(240,233,220,0.6);font-size:0.7rem;text-transform:uppercase;letter-spacing:0.15em;margin-bottom:0.5rem}
.form-group input,.form-group select,.form-group textarea{width:100%;background:rgba(240,233,220,0.05);border:1px solid rgba(240,233,220,0.1);border-radius:4px;padding:0.75rem 1rem;font-size:0.875rem;color:var(--cream);font-family:'Lato',sans-serif;transition:border-color .3s;outline:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:rgba(191,144,48,0.5)}
.form-group textarea{resize:none}
.form-group select option{background:var(--forest-deep);color:var(--cream)}
.btn-gold-full{width:100%;background:var(--gold);color:var(--forest-deep);font-weight:700;text-transform:uppercase;letter-spacing:0.1em;font-size:0.85rem;padding:1rem;border:none;border-radius:4px;cursor:pointer;transition:background .3s;font-family:'Lato',sans-serif}
.btn-gold-full:hover{background:var(--gold-light)}
.btn-gold-full:disabled{opacity:0.65;cursor:not-allowed}
@media(max-width:1023px){.booking .grid{grid-template-columns:1fr}.form-row.cols-3{grid-template-columns:1fr}}
@media(max-width:640px){.form-row.cols-2{grid-template-columns:1fr}}

body.has-site-chrome .policy-page{padding-top:0}
.policy-page{max-width:720px;margin:0 auto;padding:2.5rem 1.25rem 3rem}
.policy-page a{color:var(--gold)}
.policy-page a:hover{text-decoration:underline}
.policy-page .back{display:inline-block;margin-bottom:2rem;font-size:.9rem;color:var(--gold)}
.policy-page h1{font-size:clamp(1.5rem,4vw,2rem);color:var(--forest-deep);margin:0 0 .5rem}
.policy-page .meta{color:var(--muted-fg);font-size:.85rem;margin:0 0 2rem}
.policy-page h2{font-size:1.1rem;color:var(--gold);margin:2rem 0 .75rem}
.policy-page p,.policy-page li{font-size:.95rem;color:var(--fg)}
.policy-page ul{padding-left:1.25rem}
