/* Shared warm natural palette for booking, payment and administration. */
:root{--ink:#242b23;--olive:#142d29;--olive2:#64704f;--paper:#f6f3eb;--mist:#eeede5;--line:#deded2;--danger:#8c2f28;--ok:#2a5938}
body.booking-page{background:#f6f5f0;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
.booking-shell{padding-top:34px}
.brand-link{color:#142d29;letter-spacing:.14em;font-weight:750}
.panel{background:#fdfdf9;border-color:#e1dfd3;box-shadow:0 18px 55px #2a36200a;border-radius:22px}
.booking-page h1,.booking-page h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em}
.booking-page h1{font-size:clamp(36px,5.2vw,58px)}
.booking-page .muted{color:#60685b}
.booking-page input,.booking-page select,.booking-page textarea{background:#fffefb;border-color:#cacfc1;border-radius:10px;min-height:46px;color:#23352b}
.booking-page input[type=checkbox]{min-height:auto;accent-color:#142d29}
.booking-page input:focus,.booking-page select:focus,.booking-page textarea:focus{outline:2px solid #82936b;outline-offset:2px}
.booking-page .primary{background:#142d29;color:#fffdf5;border-radius:12px}
.booking-page .primary:hover:not(:disabled){background:#263721}
.booking-page .secondary{background:#e7e9dc;color:#30412a;border-radius:12px}
.booking-page .summary{background:#142d29;color:#fffdf5;padding:24px;border-radius:18px}
.booking-page .summary-row.deposit{color:#ece2bc}
.booking-page a{color:#344b2c;text-underline-offset:3px}
.booking-page a.primary{color:#fffdf5}
.booking-page .summary a{color:#f6f2d9}
.booking-page .contact-strip{display:flex;gap:12px 24px;flex-wrap:wrap;margin:26px 0 0;padding:18px 0 0;border-top:1px solid #dbded2;font-size:14px;color:#46503f}
.booking-page .contact-strip a{font-weight:650}
.booking-page .summary .calendar-card a{color:#344b2c}
.booking-page .admin-nav{flex-wrap:wrap}
@media(max-width:780px){.booking-page .summary{padding:18px}.booking-page .panel{padding:22px 16px}.booking-shell{width:calc(100% - 24px)}.booking-page .contact-strip{flex-direction:column;gap:9px}}

.booking-page .primary,.booking-page .secondary{border-radius:3px}.booking-page .panel{border-radius:8px}.booking-page .summary{border-radius:6px}
