:root{--booking-bg:#f6f2e9;--booking-accent:#76523b;--booking-soft:#eadbc7;--booking-ink:#17312b}
:root[data-season=spring]{--booking-bg:#f3f5ed;--booking-accent:#365d4d;--booking-soft:#dce7d5}
:root[data-season=summer]{--booking-bg:#f0f6f3;--booking-accent:#245d5b;--booking-soft:#d2e7de}
:root[data-season=winter]{--booking-bg:#f1f4f6;--booking-accent:#405e70;--booking-soft:#dbe5eb}
body.booking-page{background-color:var(--booking-bg);background-image:radial-gradient(ellipse at 8% 15%,var(--booking-soft) 0%,transparent 55%),linear-gradient(135deg,var(--booking-bg),var(--booking-soft));background-attachment:fixed;color:var(--booking-ink)}
.booking-shell{max-width:1140px;margin:auto;padding:46px 24px 60px}
.booking-welcome{position:relative;display:grid;grid-template-columns:1.55fr 1fr;gap:48px;align-items:center;padding:12px 0 32px}
.booking-welcome h1{font:clamp(2.2rem,4.7vw,3.8rem)/1.08 Georgia,serif;letter-spacing:-.035em;max-width:760px;margin:12px 0 18px}
.booking-welcome .eyebrow{color:var(--booking-accent)}
.booking-welcome p{max-width:640px;line-height:1.7;margin:12px 0}
.booking-welcome .season-greeting{font:italic 1.15rem Georgia,serif;color:var(--booking-accent)}
.booking-facts{background:rgba(255,255,255,.7);border:1px solid #d9ded5;border-radius:18px;padding:24px;box-shadow:0 8px 32px #163a2910}
.booking-facts h2{font:1.3rem Georgia,serif;margin:0 0 16px}
.booking-facts dl{margin:0}.booking-facts dt{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#51635d;margin-top:12px}.booking-facts dd{margin:4px 0;font-size:.98rem;line-height:1.5}
.booking-frame-shell{border:1px solid #d9ded5;border-radius:22px;overflow:hidden;background:linear-gradient(135deg,var(--booking-bg),var(--booking-soft));box-shadow:0 18px 55px #18392e12}
.booking-frame-intro{padding:22px 28px;background:linear-gradient(105deg,#fff,var(--booking-soft));border-bottom:1px solid #d9ded5;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.booking-frame-intro h2{font:1.55rem Georgia,serif;margin:0 0 5px}.booking-frame-intro p{margin:0;font-size:.95rem;line-height:1.6}
.booking-frame-intro a,.booking-help a{color:var(--booking-accent);text-underline-offset:4px;font-weight:600}
.booking-frame-shell iframe{display:block;width:100%;height:1260px;border:0;background:#fff}
.booking-help{font-size:.95rem;line-height:1.7;padding:20px 4px;max-width:900px}
.booking-page a:focus-visible{outline:3px solid var(--booking-accent);outline-offset:5px}
@media(max-width:720px){.booking-shell{padding:24px 16px 40px}.booking-welcome{grid-template-columns:1fr;gap:16px;padding-bottom:24px}.booking-facts{padding:18px}.booking-facts dl{display:grid;grid-template-columns:1fr 1fr;gap:8px 22px}.booking-facts dt{margin-top:0}.booking-frame-intro{padding:20px}.booking-frame-shell iframe{height:1480px}}

.booking-handoff{padding:30px 28px 32px}.booking-handoff>p{line-height:1.7;margin:0 0 18px}.booking-topics{list-style:none;padding:0;margin:0 0 28px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.booking-topics li{border:1px solid #e0e5dd;border-radius:12px;padding:15px 18px;background:var(--booking-bg);font-size:.95rem;line-height:1.5}.booking-primary{display:inline-flex;align-items:center;gap:12px;padding:16px 24px;border-radius:10px;background:var(--booking-ink);color:white!important;text-decoration:none;font-weight:600}.booking-primary:hover{background:var(--booking-accent)}.booking-provider{font-size:.85rem;color:#50625b;margin-top:18px!important}@media(max-width:720px){.booking-topics{grid-template-columns:1fr 1fr}.booking-handoff{padding:24px 20px}}@media(max-width:430px){.booking-topics{grid-template-columns:1fr}.booking-primary{width:100%;justify-content:center;text-align:center;font-size:.95rem;padding:16px 12px}}
:root{--booking-bg:#f4e9d7;--booking-soft:#dfbe96}
:root[data-season=spring]{--booking-bg:#eaf0df;--booking-soft:#b9d1ad}
:root[data-season=summer]{--booking-bg:#dff0e9;--booking-soft:#a9d4c9}
:root[data-season=winter]{--booking-bg:#e4edf3;--booking-soft:#b4cadb}
.booking-page .header{background:var(--booking-bg)}
.booking-facts{background:var(--booking-bg)}
.booking-topics li{background:rgba(255,255,255,.58)}
