/* Home page migration: retain the original artwork, palette and desktop layout. */
body { background-color: #071b25; font-family: candara, Calibri, Arial, sans-serif; }
main::after { content: ''; display: block; clear: both; }
.home-slideshow { position: relative; border: 1px solid #444a4a; }
.home-slides img { display: block; width: 100%; height: auto; aspect-ratio: 601 / 315; object-fit: cover; }
.home-slides img[hidden], [hidden] { display: none; }
.slide-controls { position: absolute; top: 5px; right: 5px; display: flex; gap: 4px; }
.slide-controls button { border: 1px solid #82b6cb; border-radius: 4px; padding: 3px 7px; background: #0e171c; color: white; cursor: pointer; }
.slide-controls button[aria-pressed="true"] { background: #3d6d82; }
.slide-caption { margin: 0; padding: 10px; background: #0e171c; color: white; font: italic 19px Helvetica, Arial, sans-serif; }
.player { display: flex; justify-content: flex-end; padding-top: 8px; }
.player audio { width: 230px; height: 32px; }
.booking-action { text-align: center; }
a.book_button { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; font-family: Arial, sans-serif; }
#cssmenu > ul > li > button { border: 0; padding: 0 20px; line-height: 49px; background: linear-gradient(to bottom, #0d1c23, #223943); color: #e2e5e6; font-family: Helvetica, Arial, sans-serif; font-weight: bold; text-transform: uppercase; text-shadow: #0d191f 2px 3px; cursor: pointer; }
#cssmenu .has-sub:focus-within > ul, #cssmenu .has-sub.open > ul { display: block; }
:focus-visible { outline: 3px solid #f3a253; outline-offset: 3px; }
@media (max-width: 1064px) {
  .wrap { width: 100%; background-position: top center; }
  .content { width: calc(100% - 32px); }
  #cssmenu { height: auto; }
  #cssmenu > ul { float: none; display: flex; flex-wrap: wrap; }
  #cssmenu > ul > li { float: none; }
  #cssmenu a, #cssmenu > ul > li > button { padding-left: 12px; padding-right: 12px; }
  .main { float: none; display: grid; grid-template-columns: minmax(0, 1.8fr) minmax(0, 1fr); width: 100%; }
  .main > * { min-width: 0; }
  .slider { grid-row: span 2; float: none; width: auto; min-height: 0; }
  .book_now, .social { float: none; width: auto; }
  .book_now { height: auto; }
  .social ul { padding-left: 0; text-align: center; }
  .upcoming_events, .hot_deals { box-sizing: border-box; width: 100%; height: auto; }
  .upcoming_events_text, .hot_deals_text { width: 100%; }
  .event_gallery { width: 100%; display: grid; grid-template-columns: repeat(auto-fit, minmax(127px, 1fr)); gap: 6px; }
  .event { float: none; margin: 0; }
  .hot_deals table, .footer table { width: 100%; }
  .quick_links { clear: both; }
  .quick_links ul { display: flex; flex-wrap: wrap; gap: 15px 0; }
  .quick_links ul li a { padding: 5px 10px; }
}
@media (max-width: 640px) {
  .content { width: calc(100% - 20px); }
  .keywords { padding: 0 10px; }
  .main { grid-template-columns: 1fr; }
  .slider { grid-row: auto; }
  .book_now_inner { min-height: 277px; }
  .hot_deals table, .hot_deals tbody, .hot_deals tr, .hot_deals td { display: block; width: auto; height: auto; }
  .hot_deals td { padding: 8px 0; }
  .footer td { display: block; width: auto; padding-bottom: 12px; }
}
