html { scroll-behavior: smooth; }
html, body { max-width: 100%; }
.no-js .header-nav:target { transform: translateX(0); visibility: visible; }
.no-js .header-nav:target .header-nav__content { opacity: 1; visibility: visible; left: 0; }
.no-js .read-more { display: block; }
.no-js .news-toggle { display: none; }
.static-preview-form-disabled { min-height: 4rem; }
.static-map-card { display: flex; min-height: 300px; flex-direction: column; justify-content: center; align-items: center; padding: 3rem; margin: 2rem 0 4rem; background: #ecf4f4; border: 1px solid #d9e5e5; text-align: center; }
.static-map-card h3 { margin-top: 0; }
.static-map-card a { display: inline-block; padding: 12px 20px; background: #222; color: #fff; border-radius: 2px; }
.static-privacy-link { text-align: center; padding: 20px; font-size: 14px; background: #151515; }
.static-privacy-link a { color: #ddd; }
.news-toggle [role="button"] { display: inline-block; }
.news-toggle [role="button"]:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid #2db1e2; outline-offset: 5px; }
.luxury-gallery { padding: 0; border: 0; width: 96vw; height: 94vh; max-width: 1440px; max-height: 98vh; background: #111; color: #fff; overflow: hidden; }
.luxury-gallery::backdrop { background: rgba(0,0,0,.92); }
.luxury-gallery__image { display: block; width: 100%; height: 100%; object-fit: contain; }
.luxury-gallery button { position: absolute; z-index: 2; width: 50px; height: 50px; min-width: 0; padding: 0; margin: 0; color: #fff; background: rgba(0,0,0,.65); border: 1px solid #aaa; font-size: 28px; line-height: 1; cursor: pointer; }
.luxury-gallery__close { right: 12px; top: 12px; }
.luxury-gallery__prev { left: 12px; top: calc(50% - 25px); }
.luxury-gallery__next { right: 12px; top: calc(50% - 25px); }
.luxury-gallery__counter { position: absolute; bottom: 10px; left: 50%; transform: translateX(-50%); padding: 3px 12px; background: rgba(0,0,0,.6); font-size: 14px; }
#home [data-luxury-hero] .datePickerStart .input-group-addon { display: none; }
#home [data-luxury-hero] input[type="date"] { color-scheme: dark; }
@media (max-width: 800px) {
  /* The theme's table layout inherits the old booking widget's minimum width. */
  #home.s-home { display: block; width: 100%; max-width: 100%; min-width: 0; height: auto; min-height: 100svh; }
  #home .home-content { display: block; width: 100%; max-width: 100%; min-width: 0; height: auto; padding-bottom: 30px; overflow: visible; }
  #home .home-content__main { box-sizing: border-box; width: 100%; max-width: 640px; min-width: 0; margin: 0 auto; padding: 125px 24px 0; text-align: center; }
  #home .home-content__main > img[src*="staysafe_croatia"] { width: 90px; height: auto; top: 20px !important; right: auto !important; left: 24px; z-index: 1 !important; }
  #home .site-logo img { display: block; width: min(100%, 300px); max-width: 100% !important; height: auto; margin: 0 auto 18px; top: 0 !important; }
  #home .home-content h3 { font-size: 15px; margin: 0 0 16px; }
  #home .home-content h1 { width: 100%; min-width: 0; font-size: clamp(24px, 6.5vw, 30px) !important; line-height: 1.35; letter-spacing: -.025em; margin-bottom: 28px !important; overflow-wrap: break-word; }
  #home .cover { display: block; width: 100%; min-width: 0; }
  #home [data-luxury-hero] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px 12px; width: 100%; min-width: 0; margin: 0; }
  #home [data-luxury-hero] > #datePicker { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-column: 1 / -1; gap: 12px; width: 100%; min-width: 0; }
  #home [data-luxury-hero] .band_row, #home [data-luxury-hero] .band_input, #home [data-luxury-hero] .select-wrap { display: block; float: none !important; width: 100%; min-width: 0; max-width: 100%; margin: 0; padding: 0; }
  #home [data-luxury-hero] input { display: block; box-sizing: border-box; width: 100%; min-width: 0; max-width: 100%; height: 48px !important; margin: 0 !important; padding: 8px !important; font-size: 15px !important; line-height: 1.3; }
  #home [data-luxury-hero] input[type="submit"] { top: 0 !important; padding: 8px 4px !important; font-size: 13px !important; letter-spacing: 0; text-align: center; }
  #home [data-luxury-hero] input[type="date"]::-webkit-date-and-time-value { min-width: 0; text-align: left; }
  #home [data-luxury-hero] .input-group-addon { display: none; }
  #home .home-content__scroll { position: static !important; width: auto; max-width: 100%; margin: 30px 24px 0; text-align: center; }
  #home .home-content__scroll > div { position: static !important; left: auto !important; }
  #home .home-content__scroll a { max-width: 100%; font-size: 10px; line-height: 1.7; letter-spacing: .15em; }
}
@media (max-width: 350px) {
  #home .home-content__main { padding-left: 18px; padding-right: 18px; }
  #home [data-luxury-hero], #home [data-luxury-hero] > #datePicker { column-gap: 10px; }
  #home [data-luxury-hero] input[type="date"] { font-size: 14px !important; padding-left: 5px !important; padding-right: 5px !important; }
}
@media (max-width: 600px) { .static-map-card { padding: 2rem; min-height: 240px; } .luxury-gallery { width: 100vw; height: 90vh; } .luxury-gallery button { width: 42px; height: 42px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; } }
