/* Small migration repairs; retain the restaurant's original layout and styles. */
.independent-contact{padding:150px 24px 90px;min-height:65vh;max-width:900px;margin:auto}
.independent-contact p{margin:24px auto;max-width:680px;line-height:1.7}
.contact-note{font-size:15px;opacity:.8}
.open-table-holder{display:block;min-height:64px;padding:20px 0}
.map-newsletter .custom-temp-btn{display:inline-block;margin-top:20px}
#map-v3-container{height:100%;min-height:360px}
.owl-carousel:not(.owl-loaded){display:flex;overflow:auto;gap:20px}
.owl-carousel:not(.owl-loaded)>*{flex:0 0 32%}
.reviews-v2-wrapper .owl-carousel:not(.owl-loaded)>*{flex-basis:100%}
.owl-nav button{font-size:32px!important;min-width:44px;min-height:44px}
.custom-loader,.loader-1{display:none!important}
.all-photos .gallery-v4-grid-item{display:block!important}
.food-menu-nav-item:focus-visible,.custom-temp-btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid #d5aa58;outline-offset:4px}
@media(max-width:600px){.owl-carousel:not(.owl-loaded)>*{flex-basis:90%}.independent-contact{padding-top:120px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Seasonal offers: October 2026 */
.seasonal-offers{background:#152227;color:#fff;padding:48px 20px;text-align:center}
.seasonal-offers:first-child{scroll-margin-top:110px}
main>.seasonal-offers:first-child{padding-top:140px}
.seasonal-offers h2{font-size:clamp(26px,4vw,38px);color:#c9ab81;margin:0 0 28px;line-height:1.2}
.seasonal-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1000px;margin:0 auto}
.seasonal-offer-card{border:1px solid #c9ab81;padding:28px 24px;background:#1c2c32}
.seasonal-offers .seasonal-kicker{font-size:14px;letter-spacing:.06em;color:#e1c99f;margin:0 0 12px}
.seasonal-offers h3{font-size:28px;color:#fff;margin:0 0 14px;line-height:1.2}
.seasonal-offers p{font-size:17px;line-height:1.5;margin:10px 0;color:#fff}
.seasonal-offers .seasonal-price{font-size:21px;font-weight:700;color:#e1c99f}
.seasonal-offers .seasonal-reserve{margin:24px 0 0}
.seasonal-offers a{color:#fff;text-decoration:underline}
.seasonal-menu-preview{display:block;margin-top:24px;background:#fff;line-height:0}
.seasonal-menu-preview img{display:block;width:100%;height:auto;max-width:100%}
.seasonal-offers .seasonal-menu-link{display:inline-block;margin-top:16px;padding:10px 12px;border:1px solid #c9ab81;font-size:16px;line-height:1.5}
.seasonal-menu-preview:focus-visible,.seasonal-menu-link:focus-visible{outline:3px solid #fff;outline-offset:5px}
#seasonal-menus,[id$="-menu"].seasonal-offer-card{scroll-margin-top:120px}
@media(max-width:640px){.seasonal-offer-grid{grid-template-columns:1fr}.seasonal-offers{padding:36px 16px}.seasonal-offer-card{padding:24px 18px}}

/* Keep section content visible without depending on legacy scroll animations. */
.home-page .about-us-v8-content,
.home-page .about-us-v8-content .text-holder,
.home-page .about-us-v8-content h1 span,
.home-page .about-us-v8-content .custom-temp-btn {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
}
/* Compact phone sections; preserve photos, text, and working controls. */
@media (max-width: 767px) {
  .home-page .about-us-v8-item { height: auto !important; min-height: 0 !important; }
  .home-page .about-us-v8-image { height: 180px !important; min-height: 0 !important; background-attachment: scroll !important; background-position: center center !important; }
  .home-page .about-us-v8-content { height: auto !important; min-height: 0 !important; }
  .home-page .about-us-v8-content .text-wrapper { height: auto !important; padding: 24px 20px !important; }
  .home-page .about-us-v8-content .text-content { display: block; }
  .home-page #order_tmt, .home-page #jobs_tmt { padding: 28px 20px !important; }
  .home-page #reservations_open_table_v2 { padding: 28px 16px !important; }
  .home-page #reviews_v2 { padding: 28px 16px !important; }
  .home-page #gallery_v4 .gallery-v4-grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; height: auto !important; }
  .home-page #gallery_v4 .gallery-v4-grid-sizer { display: none !important; }
  .home-page #gallery_v4 .gallery-v4-grid-item { position: relative !important; top: auto !important; left: auto !important; width: 100% !important; height: auto !important; aspect-ratio: 1; }
  .home-page #gallery_v4 .gallery-v4-grid-item a,
  .home-page #gallery_v4 .gallery-v4-grid-item .img { width: 100%; height: 100%; }
  .home-page #gallery_v4 .gallery-v4-grid-item img { width: 100%; height: 100%; object-fit: cover; }
  .home-page #slideshow_v2,
  .home-page #slideshow_v2 .uk-slidenav-position,
  .home-page #slideshow_v2 .uk-slideshow,
  .home-page #slideshow_v2 .uk-slideshow > li { height: 300px !important; min-height: 0 !important; }
  .home-page #slideshow_v2 .uk-slideshow > li > img { height: 100% !important; width: 100%; object-fit: cover; }
  .home-page #slideshow_v2 h1 { font-size: 28px !important; }
  .home-page #openstreetmap_v3 .map-holder,
  .home-page #openstreetmap_v3 .map-item,
  .home-page #openstreetmap_v3 .map-newsletter .text-wrapper { height: auto !important; min-height: 0 !important; }
  .home-page #openstreetmap_v3 .map-newsletter .text-wrapper { position: relative !important; padding: 28px 20px !important; }
  .home-page #openstreetmap_v3 .map-newsletter .text-content { top: auto !important; transform: none !important; }
  .home-page #openstreetmap_v3 .map-holder > section { display: flow-root; }
  .home-page #map-v3-container,
  .home-page #map-v3-container iframe { height: 280px !important; min-height: 280px !important; }
  .home-page #contact_v3 { padding-top: 28px !important; padding-bottom: 32px !important; }
}

/* Keep Catering and Reservations readable over the existing photo backgrounds. */
body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact {
  width: calc(100% - 48px) !important; max-width: 900px !important;
  height: auto !important; min-height: 0 !important; margin: 164px auto 48px !important; padding: 32px 28px !important;
  background: #14232a; color: #fff; border: 1px solid #c9ab81;
}
body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact h1 { color: #fff !important; margin: 0 0 24px; }
body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact p { color: #fff !important; }
body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact .contact-note { color: #dce1e3 !important; opacity: 1; }
body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact .custom-temp-btn { background: #c9ab81 !important; color: #14232a !important; border-color: #c9ab81 !important; }
@media (max-width: 767px) {
  body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact { width: calc(100% - 32px) !important; margin-top: 104px !important; margin-bottom: 28px !important; padding: 28px 20px !important; }
  body:is(.catering, .reservations-tmt-page) #pageIframe.independent-contact h1 { font-size: 36px; }
}

body.reservations-tmt-page #pageIframe.independent-contact p a { color: #e5c99f !important; text-decoration: underline; text-underline-offset: 3px; }

/* Let the birthday/private-party background grow with all of its content. */
body.parties-tmt-page #pageIframe.pe-page { height: auto !important; min-height: 0 !important; background: #fbf8f2 !important; color: #222b2c !important; padding: 164px 26px 48px; box-sizing: border-box; }
body.parties-tmt-page .tmt-iframe-holder { height: auto !important; min-height: 0 !important; }
/* Keep Events readable and remove oversized inherited card spacing. */
body.events-container #content .pagecontent { background: #14232a; color: #fff; padding: 28px 20px; }
body.events-container #content .pagecontent h1,
body.events-container #content .pagecontent h2,
body.events-container #content .pagecontent p { color: #fff !important; }
body.events-container #content .container { margin-bottom: 0 !important; }
body.events-container #content .pagecontent > .container { max-width: 1000px; }
body.events-container #content .events-holder { margin: 0 !important; padding: 24px 0 !important; }
body.events-container #content .event-content { padding-bottom: 0; }
body.events-container #content .seasonal-offers h2 { color: #c9ab81 !important; }
body.events-container #content .seasonal-offers h3,
body.events-container #content .seasonal-offers p { color: #fff !important; }
@media (max-width: 800px) {
  body.parties-tmt-page #pageIframe.pe-page { padding: 96px 20px 32px; }
  body.parties-tmt-page .pe-features { gap: 18px; margin: 28px 0; }
  body.parties-tmt-page .pe-celebration-gallery { margin-bottom: 28px; }
  body.events-container #content .pagecontent { padding: 24px 16px; }
  body.events-container #content .events-holder { padding: 20px 0 !important; }
}
