/* Public booking identity, matched to camping-beau-rivage.net (November 2026).
   Loaded last on guest pages only; booking logic and availability are unchanged. */
:root{--sand:#faf3e7;--cream:#faf3e7;--ink:#1a1a1a;--teal:#6d8985;--sage:#6d8985;--teal-dark:#475956;--line:#ded8cd;--muted:#62665e;--br-accent:#b7775d;--br-surface:#f2ebdd}
body{background:var(--cream)!important;color:var(--ink)!important;font-family:'Roboto Slab',Georgia,serif!important}
body>header{background:var(--cream)!important;color:var(--teal-dark);border-bottom:1px solid var(--line);min-height:94px;padding:12px max(24px,calc((100vw - 1200px)/2));align-items:center;box-shadow:none}
body>header .brand,body>header>strong{color:var(--teal-dark);display:flex;align-items:center;gap:16px;text-decoration:none;font:500 30px/1.1 Caveat,cursive!important}
.br-site-logo{display:block;width:95px;height:68px;object-fit:contain;flex-shrink:0}
body>header .brand small{font:9px/1.6 'Roboto Slab',Georgia,serif;letter-spacing:1.5px;margin-top:5px}
body>header nav{display:flex;gap:7px;flex-wrap:wrap}
body>header nav a{color:var(--teal-dark);border-radius:999px;padding:7px 10px;font:500 12px 'Roboto Slab',Georgia,serif;text-decoration:none}
body>header nav a:hover{background:var(--br-surface)}
body>header nav a[aria-current=page]{background:var(--teal-dark);color:#fff}
h1,h2{font-family:Caveat,cursive!important;color:var(--teal-dark);font-weight:500}
body:has(.choices) main{margin-top:0;pointer-events:auto;padding-top:24px}
.welcome{margin-bottom:24px}.welcome h1{font-size:clamp(36px,4.2vw,54px);line-height:1.15}
.choice,.card{background:#fffdf8!important;border:1px solid var(--line);border-radius:20px;box-shadow:0 7px 22px #4759560b}
.choice .eyebrow{color:#788064}.detail,.receipt-summary{background:var(--br-surface)}
.choice>img,.mh-intro img{filter:none}
body .button,body .look button,body button.primary{background:var(--teal-dark)!important;color:#fff;border-radius:999px}
body .button:hover,body .look button:hover,body button.primary:hover{background:#59706d!important}
body .mh-actions #mh-open-map,body .mh-actions #guest-quote,body .mh-actions #guest-continue{background:var(--teal-dark)!important;color:#fff!important}
body .mh-actions #guest-continue{background:#96624c!important}
body .mh-actions #guest-continue:hover{background:#80523f!important}
body .website-return .button,body .guest-request-title .button{background:transparent!important;color:var(--teal-dark);border:1px solid #849c99;box-shadow:none}
body .website-return .button:hover,body .guest-request-title .button:hover{background:var(--br-surface)!important}
input,select,textarea{border-color:#c6cec6}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #b7775d;outline-offset:3px}
input[type=checkbox]{accent-color:var(--teal-dark)}
body dialog,body #guest-calculation,body #guest-calendar,body #guest-party-menu,body #mh-week-picker{background:#fffdf8;color:var(--ink);border-color:var(--line)}
body #guest-quote-result{background:#eef1e9;border-color:#cfd8ca}
body .guest-days button.edge{background:var(--teal-dark);color:#fff}
body .guest-days button.range{background:#e4ebe5}
body #mh-week-options .mh-week-option[aria-pressed=true]{background:#e4ebe5;box-shadow:inset 3px 0 var(--teal-dark)}
body .signoff,body .mh-intro p{color:var(--teal-dark)}
/* Preserve the blue/yellow pitch markers and the established form layouts. */
@media(max-width:650px){
 body>header{padding:12px 16px;gap:10px;flex-wrap:wrap}
 body>header .brand,body>header>strong{font-size:25px!important;gap:10px}
 .br-site-logo{width:66px;height:52px}
 body>header nav{gap:2px}body>header nav a{padding:7px 8px}
 body:has(.choices) main{padding-top:18px}
 .welcome h1{font-size:39px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
