.booking-help[hidden], .enquiry-context[hidden], .measurement-consent[hidden], .measurement-consent [hidden] { display: none !important; }
.booking-help { display: flex; align-items: center; gap: 28px; justify-content: space-between; margin-top: 22px; padding: clamp(22px, 3vw, 34px); color: #f5f0e7; background: #203128; border: 1px solid #947348; border-radius: 14px; }
.booking-help > div { min-width: 0; max-width: 650px; }
.booking-help h3 { margin: 0 0 12px; color: #f5f0e7; font-family: "EB Garamond", Georgia, serif; font-size: clamp(1.7rem, 2.6vw, 2.2rem); font-weight: 400; line-height: 1.18; }
.booking-help p { margin: 0; color: #e4e5da; font-size: 1rem; line-height: 1.65; }
.booking-help .btn { flex: 0 0 auto; }
.enquiry-context { grid-column: 1 / -1; margin: 0 0 20px; padding: 16px 18px; border-left: 2px solid #b9955c; background: #203128; color: #f5f0e7; font-size: 1rem; line-height: 1.6; }
.footer-bottom .cookie-reopen { appearance: none; border: 0; background: transparent; padding: 0; color: inherit; font: inherit; cursor: pointer; text-align: left; text-decoration: underline; text-underline-offset: 4px; }
.measurement-consent { z-index: 20000; width: min(660px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); overflow-y: auto; overscroll-behavior: contain; padding: clamp(20px, 3vw, 28px); color: #f5f0e7; background: #1b2821; border: 1px solid #9a805b; border-radius: 14px; box-shadow: 0 15px 60px #0005; }
.measurement-consent h2 { margin: 0 0 12px; color: #f5f0e7; font: 400 1.85rem/1.2 "EB Garamond", Georgia, serif; letter-spacing: normal; }
.measurement-consent p { margin: 0 0 20px; color: #e3dfd5; font-size: .88rem; line-height: 1.65; }
.measurement-consent a { color: #e3c28f; text-decoration: underline; text-underline-offset: 3px; }
.measurement-consent .cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.measurement-consent .cookie-actions button, .measurement-consent [data-cookie-save] { flex: 1; min-height: 44px; padding: 12px 14px; border: 1px solid #b4ac99; border-radius: 6px; background: #f5f0e7; color: #1a211c; font: 600 .8rem/1.4 Inter, sans-serif; cursor: pointer; }
.measurement-consent .cookie-actions button:hover, .measurement-consent [data-cookie-save]:hover { background: #e2d6c4; }
.measurement-consent .cookie-settings { display: grid; gap: 18px; margin: 0 0 20px; padding-block: 18px; border-block: 1px solid #f5f0e733; }
.measurement-consent .cookie-settings label { display: flex; gap: 13px; align-items: flex-start; cursor: pointer; }
.measurement-consent .cookie-settings input { flex: 0 0 22px; width: 22px; height: 22px; margin-top: 3px; accent-color: #c7a779; }
.measurement-consent .cookie-settings b, .measurement-consent .cookie-settings small { display: block; font-family: Inter, sans-serif; }
.measurement-consent .cookie-settings b { color: #fffaf0; font-size: .9rem; line-height: 1.4; margin-bottom: 5px; }
.measurement-consent .cookie-settings small { color: #ddd7cb; font-size: .8rem; line-height: 1.5; }
.measurement-consent :focus-visible, .cookie-reopen:focus-visible, .booking-help a:focus-visible { outline: 2px solid #e3c28f; outline-offset: 5px; }
@media (max-width: 680px) {
  .booking-help { align-items: stretch; flex-direction: column; gap: 18px; }
  .booking-help .btn { text-align: center; }
  .measurement-consent { bottom: 16px; right: 16px; left: 16px; width: auto; }
  .measurement-consent .cookie-actions { flex-direction: column; }
  .measurement-consent .cookie-actions button { width: 100%; }
}
