/* Cookie consent banner (shown only when analytics/ad tools are configured) */
.vt-consent { position: fixed; z-index: 120; left: 50%; bottom: 14px; transform: translateX(-50%); width: min(620px, calc(100% - 24px)); display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; padding: 14px 16px 14px 20px; border-radius: 20px; background: rgba(255, 253, 248, .97); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); box-shadow: 0 18px 50px -12px rgba(18, 32, 26, .5); border: 1px solid #e7dcc6; color: #44514a; font-size: .88rem; line-height: 1.5; animation: vtConsentIn .5s cubic-bezier(.2, .8, .2, 1); }
.vt-consent p { flex: 1 1 280px; margin: 0; }
.vt-consent a { color: #1f4d3f; font-weight: 700; }
.vt-consent-btns { display: flex; gap: 8px; margin-left: auto; }
.vt-consent button { min-height: 42px; padding: 0 20px; border-radius: 999px; border: 1.5px solid #e7dcc6; background: #fff; color: #1f4d3f; font: inherit; font-weight: 700; cursor: pointer; }
.vt-consent button.primary { background: #1f4d3f; border-color: #1f4d3f; color: #fff; }
.vt-consent button:focus-visible { outline: 3px solid #e9b44c; outline-offset: 2px; }
@keyframes vtConsentIn { from { opacity: 0; transform: translate(-50%, 18px); } }
@media (max-width: 520px) { .vt-consent { bottom: 10px; padding: 14px; } .vt-consent-btns { width: 100%; } .vt-consent button { flex: 1; } }

/* While the banner is up, the booking panel sits above it instead of underneath */
@media (max-width: 719px) {
  .bk { bottom: var(--consent-h, 0px); height: calc(100% - var(--consent-h, 0px)); }
}
@media (min-width: 720px) {
  .bk { top: calc(50% - var(--consent-h, 0px) / 2); max-height: calc(min(860px, 100dvh - 48px) - var(--consent-h, 0px)); }
}

/* footer link styled as a link */
.footer .linkish { color: inherit; font-weight: 500; text-decoration: none; text-align: left; font-size: inherit; font-family: inherit; }
.footer .linkish:hover { color: var(--terracotta); text-decoration: underline; }
body.build .footer .linkish:hover { color: var(--gold-2); }
