/* Audit refinements shared by the Spanish and English pages. */
.search-field label { color: #4d5c53; }
.search-field input:focus-visible, .search-field select:focus-visible {
  outline: 2px solid #4d5c53; outline-offset: 5px;
}
.language-switch { display: inline-flex; align-items: center; flex: 0 0 auto; gap: 2px; padding: 3px; border: 1px solid currentColor; border-radius: 4px; font: 700 .78rem/1.2 system-ui, sans-serif; }
.language-switch a { display: inline-flex; align-items: center; justify-content: center; min-width: 38px; min-height: 38px; padding: 7px; text-decoration: none; }
.language-switch a[aria-current="page"] { color: #17231d; background: #f0d6a2; }
.language-switch a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.nav-shell > .language-switch { order: 3; margin-left: 18px; }
.nav-shell .nav-links { gap: clamp(14px, 2vw, 30px); }
.detail-nav > div { flex-wrap: wrap; justify-content: flex-end; }
.footer-policies { display: flex; flex-wrap: wrap; gap: 12px 24px; max-width: 1180px; margin: 0 auto 28px; padding: 0 24px; font-size: .86rem; }
.footer-policies a, .booking-policy-note a, .consent a { text-decoration: underline; text-underline-offset: 3px; }
.booking-policy-note { color: #4d5c53; font-size: .85rem; margin: 12px 0; }
.video-transcript { margin: 18px 0; font-size: .9rem; }
.video-transcript summary { cursor: pointer; font-weight: 650; }
.video-transcript p { margin: 10px 0 0; }
.seo-section details p a { text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 1000px) and (min-width: 801px) {
  .nav-shell { width: calc(100% - 32px); }
  .brand img { width: 110px; }
  .nav-shell .nav-links { font-size: .74rem; gap: 12px; }
  .nav-book { padding: 10px; }
  .nav-shell > .language-switch { margin-left: 10px; }
}
@media (max-width: 800px) {
  .nav-shell > .language-switch { margin-left: auto; margin-right: 10px; order: 0; }
  .nav-shell > .nav-toggle { order: 1; }
  .nav-shell .nav-links { order: 2; }
  .language-switch a { min-height: 40px; }
  .detail-nav { flex-wrap: wrap; gap: 10px; }
  .detail-nav > div { gap: 10px 14px; }
  .footer-policies { padding: 0 20px; }
}
.stay-practical { padding-block: 38px; color: #314038; }
.stay-practical p { margin: 8px 0; }
.stay-practical a { text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.footer-policy-links { display: flex; flex-wrap: wrap; gap: 10px 20px; font-size: .85rem; }
.footer-policy-links a { text-decoration: underline; text-underline-offset: 3px; }
.detail-nav { height: auto; min-height: 100px; padding-block: 12px; }
.detail-nav > .language-switch { margin-left: 20px; }
.payment-hero .language-switch { margin: 16px 0; color: #fff; }
.payment-hero .language-switch a { color: inherit; }
.payment-hero .language-switch a[aria-current="page"] { color: #17231d; }
.payment-footer .footer-policies { padding: 0; margin-top: 20px; }
.payment-hero { overflow: hidden; }
.payment-hero::after { pointer-events: none; }
.payment-page footer { flex-wrap: wrap; }
.payment-page .footer-policies { width: 100%; padding: 0; margin: 0; align-items: center; }
.payment-page .footer-policies a, .payment-page .footer-policies button { color: #294c39; }
.payment-page .footer-policies button { padding: 10px 14px; border: 1px solid #abb4a9; border-radius: 4px; background: transparent; cursor: pointer; }
@media (max-width: 800px) {
  .detail-nav > .language-switch { margin-left: auto; }
  .detail-nav > div { order: 3; width: 100%; justify-content: flex-start; }
  .detail-nav .language-switch a { display: inline-flex; }
}
