/* Logivo mobile adaptation for it_therestaurant2 + mod_menu (#icemegamenu) */

html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

img,
video,
embed,
object {
  max-width: 100%;
  height: auto;
}
iframe {
  max-width: 100%;
  /* height left to iframe author / TravelLine — do not force auto */
}

#mainmenu .mobile-nav-toggle {
  display: none;
  appearance: none;
  -webkit-appearance: none;
  border: 0;
  background: #fff;
  color: #333;
  width: 100%;
  min-height: 48px;
  margin: 0;
  padding: 12px 16px;
  border-radius: 5px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
  cursor: pointer;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  font-family: "caviardreams", "Open Sans", sans-serif;
  font-size: 18px;
  line-height: 1.2;
  text-align: left;
  z-index: 10001;
}

#mainmenu .mobile-nav-toggle .mobile-nav-label {
  flex: 1;
}

#mainmenu .mobile-nav-toggle .mobile-nav-icon {
  position: relative;
  width: 24px;
  height: 18px;
  flex: 0 0 24px;
}

#mainmenu .mobile-nav-toggle .mobile-nav-icon span {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: #970000;
  border-radius: 1px;
  transition: transform 0.2s ease, opacity 0.2s ease, top 0.2s ease;
}

#mainmenu .mobile-nav-toggle .mobile-nav-icon span:nth-child(1) { top: 0; }
#mainmenu .mobile-nav-toggle .mobile-nav-icon span:nth-child(2) { top: 8px; }
#mainmenu .mobile-nav-toggle .mobile-nav-icon span:nth-child(3) { top: 16px; }

#mainmenu.is-open .mobile-nav-toggle .mobile-nav-icon span:nth-child(1) {
  top: 8px;
  transform: rotate(45deg);
}

#mainmenu.is-open .mobile-nav-toggle .mobile-nav-icon span:nth-child(2) {
  opacity: 0;
}

#mainmenu.is-open .mobile-nav-toggle .mobile-nav-icon span:nth-child(3) {
  top: 8px;
  transform: rotate(-45deg);
}

/* Large tablets / small laptops */
@media only screen and (max-width: 1199px) {
  .navbar-static-top .container,
  .navbar-fixed-top .container,
  .navbar-fixed-bottom .container,
  .container {
    width: auto !important;
    max-width: 100% !important;
    padding-left: 15px;
    padding-right: 15px;
    box-sizing: border-box;
  }

  #mainmenu ul.nav.menu > li > a {
    padding: 12px 12px !important;
    font-size: 17px !important;
  }
}

/* Tablets and below */
@media only screen and (max-width: 979px) {
  #header {
    position: relative !important;
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 10px;
    padding: 12px 0;
  }

  #header .container > .row {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }

  #header #notice,
  #header #logo,
  #header .header-right {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    margin: 0 auto !important;
  }

  #header #logo img {
    max-width: min(280px, 80vw);
    height: auto !important;
  }

  #header #notice {
    order: 2;
    padding-top: 4px !important;
  }

  #header #logo {
    order: 1;
  }

  #header .header-right {
    order: 3;
  }

  #header #topmenu,
  #header #language,
  #header #search {
    float: none !important;
    text-align: center !important;
  }

  #header #topmenu .menu li,
  #header #language div.mod-languages li {
    float: none !important;
    display: inline-block !important;
  }

  #mainmenu {
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    z-index: 10000;
  }

  #mainmenu .container {
    padding-left: 15px;
    padding-right: 15px;
  }

  #mainmenu .mobile-nav-toggle {
    display: flex !important;
  }

  #mainmenu ul.nav.menu,
  #mainmenu ul#icemegamenu {
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    height: auto !important;
    margin-top: 8px !important;
    overflow: hidden !important;
    border-radius: 5px !important;
  }

  #mainmenu.is-open ul.nav.menu,
  #mainmenu.is-open ul#icemegamenu {
    display: flex !important;
  }

  #mainmenu ul.nav.menu > li,
  #mainmenu ul#icemegamenu > li {
    float: none !important;
    width: 100% !important;
    border-bottom: 1px solid #eee;
  }

  #mainmenu ul.nav.menu > li:last-child,
  #mainmenu ul#icemegamenu > li:last-child {
    border-bottom: 0;
  }

  #mainmenu ul.nav.menu > li > a,
  #mainmenu ul#icemegamenu > li > a {
    padding: 14px 16px !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
    min-height: 48px;
    box-sizing: border-box;
  }

  #mainmenu ul.nav.menu > li > ul.nav-child,
  #mainmenu ul#icemegamenu > li > ul.nav-child {
    position: static !important;
    display: none;
    width: 100% !important;
    min-width: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: #f7f7f7 !important;
  }

  #mainmenu ul.nav.menu > li.open > ul.nav-child,
  #mainmenu ul.nav.menu > li.parent.is-expanded > ul.nav-child,
  #mainmenu ul#icemegamenu > li.open > ul.nav-child,
  #mainmenu ul#icemegamenu > li.parent.is-expanded > ul.nav-child {
    display: block !important;
  }

  #mainmenu ul.nav.menu > li:hover > ul.nav-child {
    display: none;
  }

  #mainmenu ul.nav.menu > li.parent.is-expanded:hover > ul.nav-child,
  #mainmenu ul.nav.menu > li.open:hover > ul.nav-child {
    display: block !important;
  }

  #mainmenu ul.nav.menu > li > ul.nav-child > li > a {
    padding: 12px 16px 12px 28px !important;
    font-size: 15px !important;
    color: #444 !important;
  }

  #content_shadow {
    margin-top: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    background: none !important;
  }

  #iceslideshow {
    min-height: 180px !important;
    max-height: 360px !important;
  }

  #iceslideshow .carousel-caption {
    top: 0 !important;
    font-size: 22px !important;
    line-height: 1.3 !important;
    padding: 12px 16px !important;
  }

  #iceslideshow .carousel-caption .mod-description p {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  #iceslideshow .carousel-indicators {
    bottom: 12px !important;
  }

  #promo .row,
  #content #promo .row,
  #promo {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #content #promo .moduletable,
  #promo .moduletable.span4,
  #promo .span4 {
    float: none !important;
    width: 100% !important;
    margin: 0 0 18px !important;
    box-sizing: border-box;
  }

  #content #promo .moduletable .moduletable_heading h3,
  #content #promo .moduletable .moduletable_heading h3 span {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }

  #content .span8,
  #content .span4,
  #sidebar,
  #middlecol,
  .row-fluid [class*="span"] {
    float: none !important;
    width: 100% !important;
    margin-left: 0 !important;
  }

  #sidebar {
    clear: both;
    margin-top: 20px;
  }

  table {
    display: block;
    width: 100% !important;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .item-page img,
  .blog img,
  .items-leading img,
  .moduletable img {
    max-width: 100% !important;
    height: auto !important;
  }

  .btn,
  a.btn,
  .readmore a,
  input.button,
  button {
    max-width: 100%;
    box-sizing: border-box;
  }

  #footer .row > [class*="span"] {
    float: none !important;
    width: 100% !important;
    margin: 0 0 16px !important;
  }

  #copyright {
    text-align: center;
  }

  /* TravelLine booking strip */
  .tl-container,
  .tl-bar,
  #block-search,
  .tl-widget {
    max-width: 100% !important;
    overflow-x: auto;
  }
}

/* Phones */
@media only screen and (max-width: 767px) {
  body {
    overflow-x: hidden;
  }

  #header {
    padding: 10px 0 6px;
  }

  #header #logo img {
    max-width: min(220px, 72vw);
  }

  #header #notice,
  #header #notice span,
  #header #notice p {
    font-size: 13px !important;
    line-height: 1.35 !important;
  }

  #mainmenu .mobile-nav-toggle {
    font-size: 16px;
    min-height: 46px;
  }

  #mainmenu ul.nav.menu > li > a,
  #mainmenu ul#icemegamenu > li > a {
    font-size: 15px !important;
    padding: 13px 14px !important;
  }

  #iceslideshow {
    min-height: 140px !important;
    max-height: 220px !important;
  }

  #iceslideshow .carousel-caption {
    font-size: 18px !important;
    padding: 10px 12px !important;
  }

  #iceslideshow .carousel-caption .mod-description {
    display: none;
  }

  .iceslide_link,
  ul#ice-switcher {
    display: none !important;
  }

  #content #promo .moduletable .moduletable_heading h3,
  #content #promo .moduletable .moduletable_heading h3 span {
    font-size: 18px !important;
  }

  #page_heading h1,
  #page_heading .page-header h2,
  .page-header h2,
  .item-page h1,
  .item-page h2 {
    font-size: 22px !important;
    line-height: 1.25 !important;
  }

  .blog .items-leading .pull-left.item-image,
  .blog .pull-left.item-image,
  .blog .pull-right.item-image {
    float: none !important;
    display: block;
    text-align: center;
    margin: 0 0 12px !important;
  }

  #gotop .scrollup {
    right: 12px !important;
  }
}

/* Small phones */
@media only screen and (max-width: 480px) {
  .container {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  #header #logo img {
    max-width: min(180px, 70vw);
  }

  #mainmenu ul.nav.menu > li > a,
  #mainmenu ul#icemegamenu > li > a {
    font-size: 14px !important;
  }

  #iceslideshow {
    min-height: 120px !important;
    max-height: 220px !important;
  }

  #iceslideshow .carousel-caption {
    font-size: 16px !important;
  }

  #content #promo .moduletable .moduletable_heading h3 span .mod-title {
    font-size: 16px !important;
  }
}

/* Landscape phones */
@media only screen and (max-width: 767px) and (orientation: landscape) {
  #iceslideshow {
    max-height: 200px !important;
  }
}

/* Prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  #mainmenu .mobile-nav-toggle .mobile-nav-icon span {
    transition: none;
  }
}

/* === LAYOUT FLOW FIX === */
@media only screen and (max-width: 979px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  #iceslideshow,
  #iceslideshow.container,
  #iceslideshow.iceslideshow-fill {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  #iceslideshow .carousel,
  #iceslideshow .carousel-inner,
  #iceslideshow .item {
    width: 100% !important;
  }

  #iceslideshow .item > img,
  #iceslideshow .item > a,
  #iceslideshow .item > a > img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
  }

  #header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    height: auto !important;
    z-index: 20 !important;
    background: rgba(255, 255, 255, 0.96) !important;
  }

  #mainmenu {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 30 !important;
    margin: 8px 0 12px !important;
    clear: both !important;
  }

  #content_shadow {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
  }

  /* Critical: desktop uses negative margin to overlay absolute chrome */
  #content {
    margin-top: 12px !important;
    position: relative !important;
    z-index: 5 !important;
    padding: 12px 10px 20px !important;
    min-height: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body #mainmenu ul.nav.menu.mod-list,
  body #mainmenu ul#icemegamenu.nav.menu {
    display: none !important;
  }

  body #mainmenu.is-open ul.nav.menu.mod-list,
  body #mainmenu.is-open ul#icemegamenu.nav.menu {
    display: flex !important;
    flex-direction: column !important;
    height: auto !important;
  }
}


/* TravelLine + booking bar */
@media only screen and (max-width: 979px) {
  .tl-container, .tl-bar, .tl-widget, #block-search, .tl-container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .tl-bar, .tl-bar-inner, .tl-form {
    display: block !important;
    width: 100% !important;
  }
  .tl-bar input, .tl-bar select, .tl-bar button, .tl-bar .tl-btn {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  iframe[src*="travelline"], iframe[id*="tl"], iframe[class*="tl"] {
    max-width: 100% !important;
    width: 100% !important;
  }
  #page_heading, #page_heading .container {
    width: 100% !important;
    text-align: center;
  }
  .iceCarousel, .icecarousel, #icecarousel {
    overflow: hidden !important;
  }
  .iceCarousel img, .icecarousel img {
    max-width: 100% !important;
    height: auto !important;
  }
}


/* Room cards / article rows on phones */
@media only screen and (max-width: 767px) {
  .blog .items-row .item,
  .blog .item,
  .blog .items-leading,
  .category-module li,
  .blog-featured .item {
    width: 100% !important;
    float: none !important;
    margin: 0 0 20px !important;
  }

  .blog .item .pull-left,
  .blog .item .pull-right,
  .item-image {
    float: none !important;
    display: block !important;
    margin: 0 0 12px !important;
    width: 100% !important;
  }

  .blog h2, .blog .page-header h2, .blog .item h2 {
    font-size: 20px !important;
    line-height: 1.3 !important;
  }

  a.btn, .btn, .readmore a {
    display: inline-block !important;
    margin-top: 8px !important;
  }
}

/* === PREMIUM CANVAS + NO-OVERFLOW LOCK === */

:root {
  --kasimov-ink: #f7f4ef;
  --kasimov-deep: #1a1613;
  --kasimov-warm: #2b221c;
  --kasimov-ember: rgba(151, 0, 0, 0.22);
  --kasimov-gilt: rgba(201, 169, 110, 0.12);
  --kasimov-panel: #ffffff;
}

html {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
  touch-action: manipulation;
  overscroll-behavior-x: none;
  background-color: var(--kasimov-ink);
}

body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  overscroll-behavior-x: none;
  touch-action: pan-y;
  position: relative;
  min-height: 100%;
  color: #2a2420;
  background-color: var(--kasimov-ink) !important;
  background-image:
    radial-gradient(ellipse 110% 70% at 50% -15%, var(--kasimov-ember), transparent 58%),
    radial-gradient(ellipse 80% 55% at 110% 30%, var(--kasimov-gilt), transparent 52%),
    radial-gradient(ellipse 70% 50% at -10% 85%, rgba(70, 48, 32, 0.45), transparent 50%),
    linear-gradient(168deg, var(--kasimov-deep) 0%, var(--kasimov-ink) 42%, var(--kasimov-warm) 100%) !important;
  background-attachment: scroll;
  background-repeat: no-repeat;
  background-size: cover;
}


img, video, iframe, embed, object, svg {
  max-width: 100% !important;
}

/* Kill Bootstrap phone gutters that push scrollWidth past the viewport */
@media only screen and (max-width: 979px) {
  html, body {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
    width: 100% !important;
    max-width: 100vw !important;
  }

  .container,
  .navbar .container,
  #mainmenu .container,
  #header .container,
  #footer.container,
  footer#footer,
  #iceslideshow.container,
  #content.container,
  #content_shadow.container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  #iceslideshow.container,
  #iceslideshow.iceslideshow-fill {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  [class*="span"],
  .row-fluid [class*="span"] {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    box-sizing: border-box !important;
  }

  /* Premium content panel */
  #content {
    background: var(--kasimov-panel) !important;
    box-shadow:
      0 1px 0 rgba(255, 255, 255, 0.06) inset,
      0 24px 80px rgba(0, 0, 0, 0.45) !important;
    border-radius: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #header {
    background: rgba(255, 255, 255, 0.92) !important;
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.2);
  }

  #mainmenu .mobile-nav-toggle,
  #mainmenu.is-open ul.nav.menu {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;
  }

  #footer,
  footer#footer {
    background: transparent !important;
    color: rgba(255, 245, 230, 0.78) !important;
  }

  #footer a,
  #copyright,
  #copyright .copytext,
  #copyright a {
    color: rgba(255, 245, 230, 0.72) !important;
  }

  /* Contain horizontal scroll inside widgets only */
  table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .tl-container,
  .tl-bar,
  .tl-widget,
  #block-search {
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  /* Soften TravelLine strip so it doesn't blow layout */
  .tl-container,
  .tl-bar {
    box-sizing: border-box !important;
  }
}

/* Desktop / large screens: same premium canvas behind the white stage */
@media only screen and (min-width: 980px) {
  body {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  #content {
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.4) !important;
  }

  #footer,
  footer#footer,
  #copyright,
  #copyright .copytext,
  #copyright a {
    color: rgba(255, 245, 230, 0.75) !important;
  }
}

/* === CONTAIN WIDE WIDGETS === */
#icecarousel,
.icecarousel,
.iceCarousel {
  max-width: 100% !important;
}

html, body {
  overflow-x: hidden !important;
  overflow-x: clip !important;
}

/* Prevent iOS rubber-band horizontal drag from nested overflowers */
@media only screen and (max-width: 979px) {
  #icecarousel,
  .icecarousel,
  .tl-container,
  .tl-bar,
  #block-search {
    overscroll-behavior-x: none !important;
  }
}

/* === CONTACTS + TL BOOKING FIX === */

#header #notice,
#header #language,
#header .header-right {
  float: none !important;
  text-align: left !important;
}

#header #notice,
#header #logo,
#header .header-right {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.kasimov-contacts {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  text-align: left !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  color: #656565 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.kasimov-contacts__icon {
  width: 28px !important;
  height: 28px !important;
  flex: 0 0 28px !important;
  margin: 0 !important;
  display: block !important;
}

.kasimov-contacts__text {
  flex: 1 1 auto !important;
  text-align: left !important;
}

a.kasimov-phone,
a.kasimov-address__link {
  color: #656565 !important;
  text-decoration: none !important;
  border-bottom: 1px dotted rgba(101, 101, 101, 0.45);
}

a.kasimov-phone:hover,
a.kasimov-phone:focus,
a.kasimov-address__link:hover,
a.kasimov-address__link:focus {
  color: #970000 !important;
  border-bottom-color: #970000;
}

/* Desktop header: keep contacts left, logo centered-ish without right-float chaos */
@media only screen and (min-width: 980px) {
  #header .container > .row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  #header #notice {
    order: 1 !important;
    width: 34% !important;
    float: none !important;
    text-align: left !important;
  }

  #header #logo {
    order: 2 !important;
    width: 32% !important;
    float: none !important;
    text-align: center !important;
  }

  #header .header-right {
    order: 3 !important;
    width: 34% !important;
    float: none !important;
    text-align: left !important;
    padding-top: 0 !important;
  }

  #header #language {
    text-align: left !important;
  }
}

@media only screen and (max-width: 979px) {
  #header .container > .row {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  #header #logo {
    order: 1 !important;
    text-align: center !important;
  }

  #header #notice {
    order: 2 !important;
    text-align: left !important;
    padding-top: 0 !important;
  }

  #header .header-right {
    order: 3 !important;
    text-align: left !important;
  }

  .kasimov-contacts {
    font-size: 15px !important;
  }

  .kasimov-phones {
    flex-wrap: wrap !important;
  }
}

/* TravelLine booking bar — never overflow viewport (esp. rooms pages) */
#tl-search-form,
#tl-search-form.kasimov-tl-search,
.kasimov-tl-search {
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  -webkit-overflow-scrolling: touch;
}

#tl-search-form iframe,
#tl-search-form > div,
#tl-search-form [class*="tl-"],
#content #tl-search-form {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media only screen and (max-width: 979px) {
  #tl-search-form,
  #tl-search-form.kasimov-tl-search {
    margin: 0 0 10px 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
  }

  #tl-search-form * {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* TL often injects fixed-width search strip */
  #tl-search-form form,
  #tl-search-form table,
  #tl-search-form .tl-form,
  #tl-search-form .tl-container {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* === HOMEPAGE CHROME 2026 === */

/* Hide old TravelLine leftovers — EXCEPT hero booking search */
a.kasimov-tl-mobile-cta {
  display: none !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
/* Keep content-area bare #tl-search-form hidden if empty leftover */
#content > #tl-search-form:empty,
#content > .kasimov-tl-search:empty {
  display: none !important;
}

/* Desktop: original flow — slideshow first, logo/header overlay on top */
@media only screen and (min-width: 980px) {
  body {
    display: block !important;
  }
  #header,
  #mainmenu,
  #iceslideshow,
  #headerimage,
  #content,
  #icecarousel,
  #footer,
  #gotop {
    order: unset !important;
  }

  #content_shadow {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
  }

  /* Header overlays hero like original theme */
  #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 40 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 10px 0 0 !important;
    margin: 0 !important;
  }

  #header .container {
    width: 1170px !important;
    max-width: 96% !important;
    margin: 0 auto !important;
  }

  /* Logo on top row; phones + address compact below */
  #header .container > .row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px 18px !important;
  }
  #header #logo {
    order: 1 !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    float: none !important;
    text-align: center !important;
    margin: 0 0 4px !important;
  }
  #header #logo img {
    max-height: 92px !important;
    width: auto !important;
  }
  #header #notice,
  #header .header-right {
    order: 2 !important;
    float: none !important;
    width: auto !important;
    flex: 0 0 auto !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  #header #notice {
    order: 2 !important;
  }
  #header .header-right {
    order: 3 !important;
  }
  #header .kasimov-contacts {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: rgba(255,255,255,0.92) !important;
    padding: 5px 10px !important;
    border-radius: 4px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.12);
  }
  #header .kasimov-contacts,
  #header a.kasimov-phone,
  #header a.kasimov-address__link {
    color: #222 !important;
    text-shadow: none !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }
  #header a.kasimov-phone,
  #header a.kasimov-address__link {
    border-bottom: 1px dotted rgba(34,34,34,.35) !important;
  }

  #mainmenu {
    position: relative !important;
    z-index: 35 !important;
    margin-top: 0 !important;
    background: #fff !important;
  }
  #mainmenu .mobile-nav-toggle { display: none !important; }
  #mainmenu ul#icemegamenu,
  #mainmenu ul.nav.menu {
    display: table !important;
    margin: 0 auto !important;
    width: auto !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  #mainmenu ul#icemegamenu > li,
  #mainmenu ul.nav.menu > li {
    display: table-cell !important;
    float: none !important;
    width: auto !important;
  }
}

/* Compact 4★ badge — not oversized */
.kasimov-rating {
  display: inline-flex !important;
  align-items: center !important;
  gap: 2px !important;
  margin-left: 6px !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  vertical-align: middle;
}
.kasimov-rating__num {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #c9a227 !important;
  line-height: 1 !important;
}
.kasimov-rating__star {
  width: 12px !important;
  height: 12px !important;
}

/* Professional sidebar cards */
#sidebar .kasimov-side-mod > .moduletable_heading,
#sidebar .kasimov-side-mod .module-title,
#sidebar .moduletable.kasimov-side-mod > h3,
#sidebar .kasimov-side-mod h3 {
  display: none !important;
}
#sidebar .kasimov-side-card {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  margin: 0 0 16px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  background: #fff !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.12) !important;
  transition: transform .2s ease, box-shadow .2s ease;
}
#sidebar .kasimov-side-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 34px rgba(0,0,0,.16) !important;
}
#sidebar .kasimov-side-card__media {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  background: #1a1a1a;
}
#sidebar .kasimov-side-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
}
#sidebar .kasimov-side-card__badge {
  position: absolute;
  left: 10px;
  bottom: 10px;
  padding: 4px 9px;
  border-radius: 999px;
  background: rgba(0,0,0,.62);
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
}
#sidebar .kasimov-side-card__body {
  display: block;
  padding: 12px 14px 14px;
}
#sidebar .kasimov-side-card__title {
  display: block;
  font-size: 15px;
  font-weight: 700;
  color: #1f1f1f;
  margin: 0 0 4px;
}
#sidebar .kasimov-side-card__text {
  display: block;
  font-size: 12.5px;
  line-height: 1.4;
  color: #666;
  margin: 0 0 10px;
}
#sidebar .kasimov-side-card__cta {
  display: inline-block;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
  text-transform: uppercase;
  color: #7a0000;
  border-bottom: 1px solid rgba(122,0,0,.35);
}
#sidebar .kasimov-side-card--review .kasimov-side-card__media--review {
  background: linear-gradient(135deg, #1e5bb8, #3d8bfd);
}
#sidebar .kasimov-side-card--review .kasimov-side-card__media--review img {
  object-fit: contain !important;
  padding: 12px;
}

/* Bottom sliding tab — original tab style, bottom edge, to rooms */
a.iceslide_link,
a.kasimov-prices-tab {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: fixed !important;
  top: auto !important;
  bottom: 0 !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) translateY(0) !important;
  z-index: 9999 !important;
  width: auto !important;
  min-width: 132px !important;
  height: 34px !important;
  padding: 0 16px !important;
  margin: 0 !important;
  border-radius: 4px 4px 0 0 !important;
  background: #4c4c4c !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 34px !important;
  text-decoration: none !important;
  letter-spacing: .02em !important;
  box-shadow: 0 -2px 12px rgba(0,0,0,.25) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-bottom: 0 !important;
  transition: transform .25s ease, background .2s ease !important;
}
a.iceslide_link:hover,
a.kasimov-prices-tab:hover {
  background: #595959 !important;
  color: #fff !important;
  transform: translateX(-50%) translateY(-3px) !important;
}
a.iceslide_link i,
a.iceslide_link::after {
  display: none !important;
  content: none !important;
}

/* Ice carousel captions stay labeled */
#icecarousel .icecarousel-caption,
.icecarousel .icecarousel-caption {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: absolute !important;
  left: 0; right: 0; bottom: 0; top: auto !important;
  padding: 8px 10px !important;
  background: linear-gradient(transparent, rgba(0,0,0,.75)) !important;
  text-align: center !important;
}
#icecarousel a.kasimov-menu-cat,
#icecarousel .icecarousel-title a {
  color: #fff !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}


/* === FINAL CHROME POLISH === */
@media only screen and (min-width: 980px) {
  /* Logo on top; phones + address as ONE tight pill under logo */
  #header .container > .row {
    display: flex !important;
    flex-flow: row wrap !important;
    justify-content: center !important;
    align-items: center !important;
    column-gap: 0 !important;
    row-gap: 6px !important;
  }
  #header #logo,
  #header #logo.span4 {
    order: 1 !important;
    flex: 0 0 100% !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    text-align: center !important;
  }
  #header #notice,
  #header #notice.span4,
  #header .header-right,
  #header .header-right.span4 {
    float: none !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
  }
  #header #notice { order: 2 !important; }
  #header .header-right { order: 3 !important; }

  /* Single shared pill */
  #header #notice .kasimov-contacts,
  #header .header-right .kasimov-contacts {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 0 !important;
    background: rgba(255,255,255,0.94) !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.14) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    color: #222 !important;
  }
  #header #notice .kasimov-contacts {
    padding: 5px 8px 5px 10px !important;
    border-radius: 4px 0 0 4px !important;
  }
  #header .header-right .kasimov-contacts {
    padding: 5px 10px 5px 8px !important;
    border-radius: 0 4px 4px 0 !important;
    border-left: 1px solid rgba(0,0,0,.10) !important;
    margin-left: 0 !important;
  }
  #header .kasimov-contacts__icon {
    width: 18px !important;
    height: 18px !important;
    flex: 0 0 18px !important;
  }
  #header .kasimov-contacts__text {
    flex: 0 1 auto !important;
    white-space: nowrap !important;
  }
}

/* Compact star stays small (footer / copy) */
.kasimov-rating__star {
  width: 12px !important;
  height: 12px !important;
}
.kasimov-rating__num {
  font-size: 13px !important;
}

/* Prices tab: classic edge tab that peeks from bottom and slides up */
a.iceslide_link,
a.kasimov-prices-tab {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: fixed !important;
  top: auto !important;
  right: auto !important;
  left: 18px !important;
  bottom: 0 !important;
  z-index: 10050 !important;
  width: auto !important;
  min-width: 0 !important;
  height: 38px !important;
  padding: 0 18px !important;
  margin: 0 !important;
  border-radius: 4px 4px 0 0 !important;
  background: #4c4c4c !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 38px !important;
  letter-spacing: .03em !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: 0 -2px 14px rgba(0,0,0,.28) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-bottom: 0 !important;
  transform: translateY(14px) !important;
  transition: transform .28s ease, background .2s ease, box-shadow .2s ease !important;
}
a.iceslide_link:hover,
a.iceslide_link:focus,
a.kasimov-prices-tab:hover,
a.kasimov-prices-tab:focus {
  background: #5a5a5a !important;
  color: #fff !important;
  transform: translateY(0) !important;
  box-shadow: 0 -4px 18px rgba(0,0,0,.34) !important;
}
a.iceslide_link i,
a.iceslide_link::after,
a.kasimov-prices-tab i,
a.kasimov-prices-tab::after {
  display: none !important;
  content: none !important;
}

/* Sidebar cards — hotel-site premium polish */
#sidebar .kasimov-side-card {
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.10) !important;
  background: #fff !important;
  overflow: hidden !important;
}
#sidebar .kasimov-side-card__media {
  aspect-ratio: 16 / 9 !important;
}
#sidebar .kasimov-side-card__badge {
  left: 12px !important;
  bottom: 12px !important;
  padding: 5px 10px !important;
  border-radius: 10px !important;
  background: rgba(0,0,0,.72) !important;
  font-size: 11px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
#sidebar .kasimov-side-card__body {
  padding: 14px 16px 16px !important;
}
#sidebar .kasimov-side-card__title {
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: -.01em !important;
  color: #1a1a1a !important;
  margin: 0 0 6px !important;
}
#sidebar .kasimov-side-card__text {
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #5c5c5c !important;
  margin: 0 0 12px !important;
}
#sidebar .kasimov-side-card__cta {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  color: #7a0000 !important;
  border-bottom: 1px solid rgba(122,0,0,.4) !important;
}
#sidebar .kasimov-side-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 14px 32px rgba(0,0,0,.14) !important;
}
#sidebar .kasimov-side-card--review .kasimov-side-card__media--review {
  background: linear-gradient(145deg, #1a4f9c 0%, #2f7de0 55%, #5aa0f0 100%) !important;
}


/* === PREMIUM SIDE CARDS OVERLAY === */
#sidebar .kasimov-side-mod > .moduletable_heading,
#sidebar .kasimov-side-mod .module-title,
#sidebar .moduletable.kasimov-side-mod > h3,
#sidebar .kasimov-side-mod h3,
#sidebar .sidebar_module.kasimov-side-mod > h3 {
  display: none !important;
}
#sidebar .kasimov-side-card {
  display: block !important;
  text-decoration: none !important;
  color: #fff !important;
  margin: 0 0 18px !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  background: #111 !important;
  border: 0 !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.18) !important;
  transition: transform .25s ease, box-shadow .25s ease;
}
#sidebar .kasimov-side-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 18px 36px rgba(0,0,0,.22) !important;
}
#sidebar .kasimov-side-card__media {
  display: block !important;
  position: relative !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
  background: #1a1a1a !important;
}
#sidebar .kasimov-side-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  transform: scale(1.02);
  transition: transform .45s ease;
}
#sidebar .kasimov-side-card:hover .kasimov-side-card__media img {
  transform: scale(1.07);
}
#sidebar .kasimov-side-card__veil {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(0,0,0,.15) 0%,
    rgba(0,0,0,.28) 40%,
    rgba(0,0,0,.78) 100%);
  pointer-events: none;
}
#sidebar .kasimov-side-card__overlay {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 18px 18px 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  z-index: 2;
}
#sidebar .kasimov-side-card__kicker {
  display: inline-block;
  margin-bottom: 4px;
  padding: 3px 8px;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #fff;
  background: rgba(255,255,255,.16);
  border: 1px solid rgba(255,255,255,.28);
  border-radius: 2px;
}
#sidebar .kasimov-side-card__stars {
  display: block;
  margin-bottom: 2px;
  font-size: 13px;
  letter-spacing: 2px;
  color: #e8c56a;
  line-height: 1;
}
#sidebar .kasimov-side-card__title {
  display: block !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: -.01em !important;
  color: #fff !important;
  margin: 0 !important;
  line-height: 1.2 !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.35);
}
#sidebar .kasimov-side-card__text {
  display: block !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  color: rgba(255,255,255,.82) !important;
  margin: 0 0 8px !important;
}
#sidebar .kasimov-side-card__cta {
  display: inline-block !important;
  margin-top: 2px;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  border-bottom: 1px solid rgba(255,255,255,.55) !important;
  padding-bottom: 1px;
}
#sidebar .kasimov-side-card:hover .kasimov-side-card__cta {
  border-bottom-color: #fff !important;
}
/* kill old body/badge leftovers if any */
#sidebar .kasimov-side-card__body,
#sidebar .kasimov-side-card__badge {
  display: none !important;
}


/* === CONTACT CLUSTER ONE PILL === */
@media only screen and (min-width: 980px) {
  #header #language,
  #header .header-right {
    display: none !important;
  }
  #header #notice {
    order: 2 !important;
    float: none !important;
    width: auto !important;
    margin: 0 auto !important;
  }
  #header .kasimov-contacts--cluster {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 5px 12px !important;
    border-radius: 4px !important;
    background: rgba(255,255,255,0.94) !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.14) !important;
    white-space: nowrap !important;
  }
  #header .kasimov-contacts__group {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
  }
  #header .kasimov-contacts__divider {
    width: 1px !important;
    height: 14px !important;
    background: rgba(0,0,0,.14) !important;
    flex: 0 0 1px !important;
  }
  #header .kasimov-contacts__icon {
    width: 16px !important;
    height: 16px !important;
    flex: 0 0 16px !important;
  }
  #header .kasimov-contacts__text,
  #header a.kasimov-phone,
  #header a.kasimov-address__link {
    font-size: 13px !important;
    line-height: 1.2 !important;
    color: #222 !important;
    flex: 0 0 auto !important;
  }
}


/* === BATCH UX 2026-09-18 === */

/* Phones: never wrap */
#header .kasimov-contacts--cluster,
#header .kasimov-contacts__group,
#header .kasimov-contacts__text,
#header a.kasimov-phone,
#header a.kasimov-address__link {
  white-space: nowrap !important;
  flex-wrap: nowrap !important;
}
#header .kasimov-contacts--cluster {
  max-width: none !important;
  overflow: visible !important;
  gap: 8px !important;
  font-size: 12.5px !important;
}
#header .kasimov-phones__sep { white-space: nowrap !important; }

/* Global book CTA */
a.kasimov-book-cta {
  position: fixed !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 10060 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 40px !important;
  padding: 0 18px !important;
  border-radius: 3px !important;
  background: linear-gradient(180deg, #a40000, #7a0000) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.35) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease !important;
}
a.kasimov-book-cta:hover {
  background: linear-gradient(180deg, #b80a0a, #8a0000) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.4) !important;
}

/* Per-room Забронировать — always visible, next to price */
.price {
  position: relative !important;
  display: block !important;
  overflow: visible !important;
  min-height: 32px !important;
  padding-right: 170px !important;
  clear: both !important;
}
.price .book-button,
a.book-button {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: auto !important;
  margin: 0 !important;
  width: 155px !important;
  height: 28px !important;
  line-height: 28px !important;
  text-align: center !important;
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  white-space: nowrap !important;
  background: linear-gradient(to bottom, #990000, #7f0000) !important;
  z-index: 5 !important;
}
.price .book-button:hover,
a.book-button:hover {
  background: linear-gradient(to bottom, #ad0000, #900000) !important;
  color: #fff !important;
}
@media (max-width: 767px) {
  .price { padding-right: 0 !important; }
  .price .book-button,
  a.book-button {
    position: static !important;
    display: inline-block !important;
    margin: 8px 0 0 !important;
  }
  a.kasimov-book-cta {
    top: auto !important;
    bottom: 56px !important;
    right: 12px !important;
    height: 36px !important;
    padding: 0 14px !important;
    font-size: 12px !important;
  }
}

/* Social: no white panels */
#footer #social,
#social,
#social_icons,
#footer #social_icons {
  background: transparent !important;
  background-color: transparent !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  box-shadow: none !important;
}
#social_icons ul,
#social_icons ul.kasimov-social {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 8px 0 0 !important;
  list-style: none !important;
}
#social_icons ul li {
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
#social_icons ul li a {
  display: block !important;
  width: 32px !important;
  height: 32px !important;
  background: none !important;
  background-image: none !important;
  opacity: 1 !important;
}
#social_icons ul li a img {
  width: 32px !important;
  height: 32px !important;
  display: block !important;
  background: transparent !important;
  border-radius: 8px !important;
}
#social_icons ul li a span { display: none !important; }
#social_icons ul li.social_facebook,
#social_icons ul li.social_twitter { display: none !important; }

/* Footer: tighten social ↔ copyright */
#footer {
  padding-top: 8px !important;
  padding-bottom: 16px !important;
}
#footer #copyright {
  margin: 6px 0 0 !important;
  padding: 8px 0 0 !important;
  background: none !important;
  min-height: 0 !important;
  text-align: center !important;
}
#footer #copyright p.copytext {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
hr.bottomsep {
  padding: 0 0 28px 0 !important;
  margin: 0 !important;
}

/* Prices tab: fully visible, not clipped by browser */
a.iceslide_link,
a.kasimov-prices-tab {
  left: 18px !important;
  right: auto !important;
  bottom: 0 !important;
  top: auto !important;
  transform: translateY(0) !important;
  height: 40px !important;
  line-height: 40px !important;
  padding: 0 18px !important;
  border-radius: 6px 6px 0 0 !important;
  z-index: 10050 !important;
}
a.iceslide_link:hover,
a.iceslide_link:focus,
a.kasimov-prices-tab:hover,
a.kasimov-prices-tab:focus {
  transform: translateY(-4px) !important;
}

/* Menu carousel: white labels at bottom, hide red top titles */
#icecarousel .icecarousel-inner {
  position: relative !important;
  overflow: hidden !important;
}
#icecarousel .kasimov-menu-label {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 4 !important;
  display: block !important;
  padding: 28px 10px 10px !important;
  background: linear-gradient(transparent, rgba(0,0,0,.78)) !important;
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  letter-spacing: .02em !important;
  pointer-events: none !important;
}
#icecarousel h4.kasimov-menu-title-hide,
#icecarousel .kasimov-menu-title-hide,
#icecarousel h4 a.icecarousel-title {
  /* hide red titles once JS moves label; until then force white bottom via overlay path */
}
#icecarousel h4 {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  margin: 0 !important;
  padding: 26px 8px 10px !important;
  background: linear-gradient(transparent, rgba(0,0,0,.78)) !important;
  z-index: 3 !important;
  text-align: center !important;
}
#icecarousel h4 a,
#icecarousel h4 a.icecarousel-title,
#icecarousel .icecarousel-title {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  text-shadow: 0 1px 6px rgba(0,0,0,.45) !important;
}
#icecarousel .icecarousel-inner:hover .icecarousel-caption,
#icecarousel .icecarousel-caption {
  background: transparent !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
#icecarousel .kasimov-menu-title-hide {
  display: none !important;
}

/* Restaurant + Services: full-width photo gallery, not crushed left */
#headerimage,
#headerimage .custom,
#headerimage .stretchMe {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
#headerimage img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
}

/* Content galleries on restaurant / information */
body #content .item-page img[style*="width: 250"],
body #content .blog img[style*="width: 250"],
body #content img[src*="/restaurant/"],
body #content img[src*="restaurant/res"],
body #content .items-leading img[width="300"],
body #content .blog img[width="300"],
body #content img[src*="/billiard/"],
body #content img[src*="/ploschadka/"] {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 0 14px !important;
  display: block !important;
  float: none !important;
  border-radius: 4px !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.12) !important;
}

/* Prefer 2-col grid when many images in a row of text nodes — wrap via flex on paragraph parents is hard;
   target common blog layouts */
#content .items-leading,
#content .items-row,
#content .blog {
  display: block !important;
}
#content .item-image,
#content .pull-left.item-image,
#content .pull-right.item-image {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 16px !important;
}
@media only screen and (min-width: 980px) {
  /* Restaurant/services article body: make consecutive content images breathe as mosaic */
  body.com_content #content .item-page,
  body.com_content #content .blog {
    overflow: visible !important;
  }
}

/* Reveal animations — luxury entrance */
.kasimov-reveal {
  opacity: 0;
  transform: translateY(28px) scale(0.985);
  filter: blur(2px);
  transition:
    opacity .85s cubic-bezier(.22,1,.36,1),
    transform .85s cubic-bezier(.22,1,.36,1),
    filter .85s cubic-bezier(.22,1,.36,1);
  will-change: opacity, transform, filter;
}
.kasimov-reveal.is-in {
  opacity: 1;
  transform: none;
  filter: none;
}
@media (prefers-reduced-motion: reduce) {
  .kasimov-reveal { opacity: 1 !important; transform: none !important; filter: none !important; transition: none !important; }
}


/* === CAROUSEL LABEL FIX === */
#icecarousel .icecarousel > div,
#icecarousel .iceCarousel > div,
#icecarousel .slideshow,
#icecarousel .icecarousel-item,
#icecarousel li,
#icecarousel .span2,
#icecarousel .span3,
#icecarousel .span4 {
  position: relative !important;
}
#icecarousel h4 {
  position: absolute !important;
  left: 8px !important;
  right: 8px !important;
  bottom: 0 !important;
  top: auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 28px 10px 10px !important;
  background: linear-gradient(transparent, rgba(0,0,0,.82)) !important;
  z-index: 5 !important;
  text-align: center !important;
  color: #fff !important;
}
#icecarousel h4 a,
#icecarousel h4 a:link,
#icecarousel h4 a:visited,
#icecarousel .icecarousel-title {
  color: #fff !important;
  background: none !important;
}
/* Services/Restaurant gallery grid */
#content .kasimov-gallery-img,
body #content img.kasimov-gallery-img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 0 16px !important;
  border-radius: 4px !important;
}
@media only screen and (min-width: 900px) {
  /* Make sequences of gallery imgs feel like a rich mosaic inside article */
  #content p:has(img.kasimov-gallery-img) {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
  }
  #content p:has(img.kasimov-gallery-img) img {
    margin: 0 !important;
  }
}


/* === ULTIMATE OVERRIDES === */
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited {
  position: fixed !important;
  top: 16px !important;
  right: 16px !important;
  left: auto !important;
  z-index: 2147483000 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 148px !important;
  height: 42px !important;
  padding: 0 20px !important;
  margin: 0 !important;
  border-radius: 3px !important;
  background: linear-gradient(180deg, #b10a0a 0%, #7a0000 100%) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  line-height: 42px !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.4) !important;
  border: 1px solid rgba(255,255,255,.2) !important;
  white-space: nowrap !important;
}
html body a.kasimov-book-cta:hover {
  background: linear-gradient(180deg, #c41212 0%, #8c0000 100%) !important;
  color: #fff !important;
}

html body a.iceslide_link,
html body a.kasimov-prices-tab {
  transform: none !important;
  bottom: 0 !important;
  top: auto !important;
  left: 16px !important;
  height: 42px !important;
  line-height: 42px !important;
  padding: 0 20px !important;
}
html body a.iceslide_link:hover,
html body a.kasimov-prices-tab:hover {
  transform: translateY(-5px) !important;
}

html body #social,
html body #social_icons,
html body #footer #social,
html body #footer #social_icons {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}
html body #social_icons ul {
  margin: 4px 0 0 !important;
  padding: 0 !important;
}
html body #footer #copyright {
  margin-top: 4px !important;
  padding-top: 4px !important;
  background: none !important;
}

/* Menu titles white on image bottom */
html body #icecarousel .lof-inner,
html body #icecarousel .icecarousel-inner,
html body #icecarousel .iceCarousel-item,
html body #icecarousel li,
html body #icecarousel .span2,
html body #icecarousel .span3 {
  position: relative !important;
}
html body #icecarousel h4 {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 30px 8px 10px !important;
  background: linear-gradient(to top, rgba(0,0,0,.82), transparent) !important;
  z-index: 6 !important;
  text-align: center !important;
  color: #fff !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
}
html body #icecarousel h4 a,
html body #icecarousel h4 a:link,
html body #icecarousel h4 a:visited,
html body #icecarousel h4 a:hover,
html body #icecarousel .icecarousel-title {
  color: #ffffff !important;
  background: transparent !important;
  text-decoration: none !important;
  font-weight: 600 !important;
}
html body #icecarousel .icecarousel-caption,
html body #icecarousel .icecarousel-inner:hover .icecarousel-caption {
  opacity: 0 !important;
  background: transparent !important;
}
html body #icecarousel .kasimov-menu-label {
  color: #fff !important;
}
html body #icecarousel h4.kasimov-menu-title-hide {
  display: none !important;
}

/* Phones never wrap */
html body #header .kasimov-contacts--cluster,
html body #header .kasimov-contacts--cluster * {
  white-space: nowrap !important;
}


/* === GALLERY MOSAIC === */
@media only screen and (min-width: 900px) {
  /* Restaurant / services: wrap consecutive content images into mosaic via JS class */
  #content .kasimov-gallery-mosaic {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
    margin: 12px 0 24px !important;
  }
  #content .kasimov-gallery-mosaic img,
  #content .kasimov-gallery-mosaic .kasimov-gallery-img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    margin: 0 !important;
    border-radius: 4px !important;
  }
  #content .kasimov-gallery-mosaic img:first-child,
  #content .kasimov-gallery-mosaic img:nth-child(6n+1) {
    grid-column: 1 / -1 !important;
    height: 420px !important;
  }
}
body #content img[src*="/restaurant/"],
body #content img[src*="/billiard/"],
body #content img.kasimov-gallery-img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 0 14px !important;
  float: none !important;
  display: block !important;
}


/* === FULLWIDTH INNER PAGES === */
@media only screen and (min-width: 980px) {
  body.kasimov-page-restaurant #content #component,
  body.kasimov-page-services #content #component,
  body.kasimov-page-restaurant #content .span8,
  body.kasimov-page-services #content .span8,
  body.kasimov-page-restaurant #content .span9,
  body.kasimov-page-services #content .span9,
  body.kasimov-page-restaurant #content > .row > [class*="span"]:first-child,
  body.kasimov-page-services #content > .row > [class*="span"]:first-child {
    width: 100% !important;
    float: none !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  body.kasimov-page-restaurant #sidebar,
  body.kasimov-page-services #sidebar,
  body.kasimov-page-restaurant #content > .row > .span4,
  body.kasimov-page-services #content > .row > .span4 {
    display: none !important;
  }
}


/* === MOSAIC WIDTH FIX === */
#content .kasimov-gallery-mosaic {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 16px 0 28px !important;
  clear: both !important;
}
#content .kasimov-gallery-mosaic > a,
#content .kasimov-gallery-mosaic > img {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
#content .kasimov-gallery-mosaic img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  border-radius: 4px !important;
  box-shadow: 0 12px 30px rgba(0,0,0,.14) !important;
}
#content .kasimov-gallery-mosaic > :first-child,
#content .kasimov-gallery-mosaic > :nth-child(6n+1) {
  grid-column: 1 / -1 !important;
}
#content .kasimov-gallery-mosaic > :first-child img,
#content .kasimov-gallery-mosaic > :nth-child(6n+1) img {
  height: 440px !important;
}


/* === DESKTOP HERO CHROME 2026 === */
@media only screen and (min-width: 980px) {
  /* Full-viewport hero on homepage */
  body.kasimov-page-home #iceslideshow,
  body.kasimov-page-home #iceslideshow.container,
  body.kasimov-page-home #iceslideshow.iceslideshow-fill {
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    overflow: hidden !important;
  }
  body.kasimov-page-home #iceslideshow .carousel,
  body.kasimov-page-home #iceslideshow .carousel-inner,
  body.kasimov-page-home #iceslideshow .item {
    height: 100vh !important;
    min-height: 100vh !important;
  }
  body.kasimov-page-home #iceslideshow .item > img,
  body.kasimov-page-home #iceslideshow .item > a,
  body.kasimov-page-home #iceslideshow .item > a > img {
    width: 100% !important;
    height: 100vh !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  /* No dots — smooth autoplay only */
  body.kasimov-page-home #iceslideshow .carousel-indicators {
    display: none !important;
  }

  /* Captions at very bottom of hero */
  body.kasimov-page-home #iceslideshow .carousel-caption {
    top: auto !important;
    bottom: 36px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    padding: 0 24px !important;
    margin: 0 !important;
    background: transparent !important;
    text-align: center !important;
  }
  body.kasimov-page-home #iceslideshow .carousel-caption .mod-description,
  body.kasimov-page-home #iceslideshow .carousel-caption .mod-description p {
    display: inline-block !important;
    max-width: 920px !important;
    margin: 0 auto !important;
    padding: 12px 22px !important;
    background: rgba(0,0,0,.42) !important;
    color: #fff !important;
    font-size: 22px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;
    text-shadow: 0 1px 10px rgba(0,0,0,.35) !important;
    border-radius: 10px !important;
  }

  /* Header overlays hero: contacts top → logo → menu */
  body.kasimov-page-home #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 60 !important;
    background: linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.18) 55%, transparent 100%) !important;
    padding: 10px 0 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
  }
  body.kasimov-page-home #header .container {
    width: 1170px !important;
    max-width: 96% !important;
    margin: 0 auto !important;
  }
  body.kasimov-page-home #header .container > .row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
  }
  /* Contacts at the very top */
  body.kasimov-page-home #header #notice {
    order: 1 !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
  }
  body.kasimov-page-home #header #logo {
    order: 2 !important;
    float: none !important;
    width: auto !important;
    margin: 4px 0 2px !important;
    text-align: center !important;
  }
  body.kasimov-page-home #header #logo img,
  body.kasimov-page-home #header #logo .logo {
    max-height: 118px !important;
    height: 118px !important;
    width: auto !important;
  }
  body.kasimov-page-home #header .kasimov-contacts--cluster {
    background: rgba(255,255,255,.92) !important;
    box-shadow: 0 4px 18px rgba(0,0,0,.18) !important;
  }

  /* Menu inside hero header */
  body.kasimov-page-home #header #mainmenu,
  body.kasimov-page-home #mainmenu {
    order: 3 !important;
    position: relative !important;
    width: 100% !important;
    margin: 6px 0 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }
  body.kasimov-page-home #mainmenu .container {
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important;
  }
  body.kasimov-page-home #mainmenu ul#icemegamenu,
  body.kasimov-page-home #mainmenu ul.nav.menu {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 4px 18px !important;
    background: transparent !important;
    float: none !important;
    margin: 0 auto !important;
    padding: 8px 12px !important;
  }
  body.kasimov-page-home #mainmenu ul#icemegamenu > li,
  body.kasimov-page-home #mainmenu ul.nav.menu > li {
    float: none !important;
    display: inline-block !important;
    background: transparent !important;
  }
  body.kasimov-page-home #mainmenu ul#icemegamenu > li > a,
  body.kasimov-page-home #mainmenu ul.nav.menu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 8px rgba(0,0,0,.45) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: .02em !important;
    padding: 6px 4px !important;
    background: transparent !important;
  }
  body.kasimov-page-home #mainmenu ul#icemegamenu > li.active > a,
  body.kasimov-page-home #mainmenu ul#icemegamenu > li > a:hover {
    color: #f0d48a !important;
  }

  /* Content starts below full hero */
  body.kasimov-page-home #content_shadow { display: none !important; }
  body.kasimov-page-home #content.container {
    margin-top: 0 !important;
  }
}

/* Book CTA — compact elegant */
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited {
  top: 14px !important;
  right: 14px !important;
  min-width: 0 !important;
  width: auto !important;
  height: 32px !important;
  line-height: 32px !important;
  padding: 0 14px !important;
  border-radius: 10px !important;
  font-size: 11px !important;
  font-weight: 650 !important;
  letter-spacing: .06em !important;
  background: rgba(122,0,0,.88) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 4px 14px rgba(0,0,0,.28) !important;
}
html body a.kasimov-book-cta:hover {
  background: rgba(150,10,10,.95) !important;
  transform: translateY(-1px) !important;
}

/* Prices tab — attractive green */
html body a.iceslide_link,
html body a.kasimov-prices-tab {
  background: #1f8a4c !important;
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: 0 -2px 16px rgba(20,100,55,.35) !important;
}
html body a.iceslide_link:hover,
html body a.kasimov-prices-tab:hover {
  background: #24a058 !important;
}

/* Mosaic: even 2-col, no orphan full-span first */
#content .kasimov-gallery-mosaic {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
}
#content .kasimov-gallery-mosaic > :first-child,
#content .kasimov-gallery-mosaic > :nth-child(6n+1) {
  grid-column: auto !important;
}
#content .kasimov-gallery-mosaic img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
}


/* === HERO TIGHTEN === */
@media only screen and (min-width: 980px) {
  body.kasimov-page-home #header .container > .row {
    gap: 6px !important;
  }
  body.kasimov-page-home #header #mainmenu {
    order: 3 !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    background: transparent !important;
  }
  body.kasimov-page-home #mainmenu .container {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
  }
  body.kasimov-page-home #mainmenu ul#icemegamenu,
  body.kasimov-page-home #mainmenu ul.nav.menu {
    padding: 4px 8px 8px !important;
    margin: 0 !important;
    min-height: 0 !important;
  }
  body.kasimov-page-home #header #logo img,
  body.kasimov-page-home #header #logo .logo {
    max-height: 130px !important;
    height: 130px !important;
  }

  /* Captions glued to bottom of hero viewport */
  body.kasimov-page-home #iceslideshow .carousel-inner,
  body.kasimov-page-home #iceslideshow .item {
    /* position relative removed */
  }
  body.kasimov-page-home #iceslideshow .carousel-caption,
  body.kasimov-page-home #iceslideshow .item .carousel-caption,
  body.kasimov-page-home #iceslideshow .carousel-caption.active {
    position: absolute !important;
    top: auto !important;
    bottom: 48px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    max-width: 90% !important;
    z-index: 5 !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Kill every possible slider dot */
  body.kasimov-page-home #iceslideshow .carousel-indicators,
  body.kasimov-page-home #iceslideshow ol.carousel-indicators,
  body.kasimov-page-home #iceslideshow .carousel-indicators li,
  body.kasimov-page-home #iceslideshow .flex-control-nav,
  body.kasimov-page-home #iceslideshow .flex-control-paging {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
  }
}


/* === HERO MENU TOP RESET === */
@media only screen and (min-width: 980px) {
  body.kasimov-page-home #header {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  body.kasimov-page-home #header .container > .row {
    flex-flow: column nowrap !important;
    flex-wrap: nowrap !important;
    height: auto !important;
    min-height: 0 !important;
  }
  body.kasimov-page-home #header #mainmenu,
  body.kasimov-page-home #mainmenu {
    top: 0 !important;
    bottom: auto !important;
    position: relative !important;
    margin: 0 !important;
  }
  body.kasimov-page-home #header #logo {
    flex: 0 0 auto !important;
  }
  body.kasimov-page-home #header #mainmenu {
    flex: 0 0 auto !important;
  }
}


/* === HOME ORDER + ROOMS + FOOTER PETS === */

/* Green book CTA (same family as prices) */
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited {
  background: #1f8a4c !important;
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: 0 4px 14px rgba(20,100,55,.35) !important;
}
html body a.kasimov-book-cta:hover {
  background: #24a058 !important;
}

/* Hero contacts: never clip address */
@media only screen and (min-width: 980px) {
  body.kasimov-page-home #header {
    overflow: visible !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.kasimov-page-home #header .container {
    overflow: visible !important;
  }
  body.kasimov-page-home #header #notice {
    max-width: calc(100vw - 200px) !important;
  }
  body.kasimov-page-home #header .kasimov-contacts--cluster {
    max-width: 100% !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  body.kasimov-page-home #header .kasimov-contacts__group--address,
  body.kasimov-page-home #header .kasimov-contacts__text,
  body.kasimov-page-home #header a.kasimov-address__link {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }
  body.kasimov-page-home #iceslideshow {
    overflow: hidden !important; /* photos only */
  }
}

/* Homepage extras: tour + review as wide cards, not narrow sidebar */
#kasimov-home-extras {
  margin: 10px auto 36px !important;
}
#kasimov-home-extras .kasimov-home-extras__grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 18px !important;
}
#kasimov-home-extras .sidebar_module,
#kasimov-home-extras .moduletable,
#kasimov-home-extras .custom.kasimov-side-mod {
  margin: 0 !important;
  float: none !important;
  width: auto !important;
}
#kasimov-home-extras .kasimov-side-card {
  margin: 0 !important;
  height: 100% !important;
}
@media (max-width: 900px) {
  #kasimov-home-extras .kasimov-home-extras__grid {
    grid-template-columns: 1fr !important;
  }
}

/* Hide empty sidebar remnants on inner pages */
body:not(.kasimov-page-home) #sidebar:empty,
body.kasimov-page-rooms #sidebar .kasimov-side-card,
body.kasimov-page-restaurant #sidebar,
body.kasimov-page-services #sidebar {
  display: none !important;
}

/* Footer pets link */
.kasimov-footer-pets {
  text-align: center !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
}
.kasimov-footer-pets a {
  color: #c9a227 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(201,162,39,.45) !important;
}
.kasimov-footer-pets a:hover {
  color: #e0b84a !important;
}

/* Rooms: full-width photos + Подробнее as button, tight gap */
body.kasimov-page-rooms #middlecol,
body.kasimov-page-rooms #content .span8,
body.kasimov-page-rooms #content .span9 {
  width: 100% !important;
  float: none !important;
  max-width: 100% !important;
}
body.kasimov-page-rooms #sidebar { display: none !important; }

body.kasimov-page-rooms .item-image,
body.kasimov-page-rooms .blog .item-image,
body.kasimov-page-rooms .items-leading .item-image,
body.kasimov-page-rooms .pull-left.item-image,
body.kasimov-page-rooms .pull-right.item-image {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 12px !important;
}
body.kasimov-page-rooms .item-image img,
body.kasimov-page-rooms .blog img[itemprop="thumbnailUrl"],
body.kasimov-page-rooms .items-leading img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 4px !important;
}

body.kasimov-page-rooms .items-leading,
body.kasimov-page-rooms .blog .item,
body.kasimov-page-rooms .leading-0,
body.kasimov-page-rooms .leading-1,
body.kasimov-page-rooms .leading-2,
body.kasimov-page-rooms .leading-3,
body.kasimov-page-rooms .leading-4 {
  margin-bottom: 28px !important;
  padding-bottom: 8px !important;
}

body.kasimov-page-rooms p.readmore,
body.kasimov-page-rooms .readmore {
  margin: 10px 0 0 !important;
  padding: 0 !important;
  clear: both !important;
  float: none !important;
  text-align: left !important;
}
body.kasimov-page-rooms a.readmore,
body.kasimov-page-rooms p.readmore a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 36px !important;
  padding: 0 18px !important;
  margin: 0 !important;
  background: #1f8a4c !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
  text-decoration: none !important;
  border-radius: 3px !important;
  border: 0 !important;
  box-shadow: 0 4px 12px rgba(20,100,55,.28) !important;
  float: none !important;
}
body.kasimov-page-rooms a.readmore:hover,
body.kasimov-page-rooms p.readmore a:hover {
  background: #24a058 !important;
  color: #fff !important;
}
body.kasimov-page-rooms a.readmore .icon-chevron-right {
  display: none !important;
}

/* About hotel: wide gallery */
body.kasimov-page-about #sidebar { display: none !important; }
body.kasimov-page-about #middlecol { width: 100% !important; float: none !important; }


/* === ADDR + ROOMS READMORE POLISH === */

/* Address never clipped — all pages, all desktop widths */
@media only screen and (min-width: 980px) {
  #header,
  #header .container,
  #header #notice,
  #header .header-right,
  #header .kasimov-contacts,
  #header .kasimov-contacts--cluster,
  #header .kasimov-contacts__group,
  #header .kasimov-contacts__group--address {
    overflow: visible !important;
  }
  #header #notice {
    width: auto !important;
    max-width: none !important;
    flex: 0 1 auto !important;
  }
  #header .kasimov-contacts--cluster {
    max-width: none !important;
    width: max-content !important;
    flex-wrap: nowrap !important;
  }
  #header .kasimov-contacts__group--address,
  #header .kasimov-contacts__text,
  #header a.kasimov-address__link {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
    max-width: none !important;
    flex: 0 0 auto !important;
  }
  /* leave room for book CTA on the right */
  body.kasimov-page-home #header #notice {
    margin-right: 150px !important;
  }
}

/* Rooms: Подробнее is <a class="btn"> inside p.readmore */
body.kasimov-page-rooms p.readmore {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  clear: both !important;
}
body.kasimov-page-rooms p.readmore a.btn,
body.kasimov-page-rooms p.readmore a,
body.kasimov-page-rooms .readmore a.btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 36px !important;
  line-height: 36px !important;
  padding: 0 18px !important;
  margin: 0 !important;
  background: #1f8a4c !important;
  background-image: none !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
  text-decoration: none !important;
  text-shadow: none !important;
  border: 0 !important;
  border-radius: 3px !important;
  box-shadow: 0 4px 12px rgba(20,100,55,.28) !important;
  float: none !important;
}
body.kasimov-page-rooms p.readmore a.btn:hover,
body.kasimov-page-rooms p.readmore a:hover {
  background: #24a058 !important;
  color: #fff !important;
}
body.kasimov-page-rooms p.readmore .icon-chevron-right {
  display: none !important;
}
/* kill huge empty gaps after price / before readmore */
body.kasimov-page-rooms .items-leading .item,
body.kasimov-page-rooms .blog .items-row,
body.kasimov-page-rooms .leading-0,
body.kasimov-page-rooms .leading-1,
body.kasimov-page-rooms .leading-2,
body.kasimov-page-rooms .leading-3,
body.kasimov-page-rooms .leading-4,
body.kasimov-page-rooms .item {
  margin-bottom: 24px !important;
  padding-bottom: 0 !important;
  min-height: 0 !important;
}
body.kasimov-page-rooms .item-image::after,
body.kasimov-page-rooms .blog::after {
  content: none !important;
  display: none !important;
  height: 0 !important;
}
body.kasimov-page-rooms .price,
body.kasimov-page-rooms .kasimov-room-book {
  margin: 8px 0 !important;
}

/* About: force full-width gallery images even without mosaic */
body.kasimov-page-about #middlecol,
body.kasimov-page-about #content .span8,
body.kasimov-page-about #content .span9,
body.kasimov-page-about #content .span12 {
  width: 100% !important;
  float: none !important;
  max-width: 100% !important;
}
body.kasimov-page-about img[src*="about-hotel"],
body.kasimov-page-about img.kasimov-gallery-img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  margin: 0 0 14px !important;
  float: none !important;
}
body.kasimov-page-about #sidebar { display: none !important; }


/* === EMPTY PRICE + ADDR PILL === */

/* Collapse empty price / book placeholders that create huge gaps before Подробнее */
body.kasimov-page-rooms .price:empty,
body.kasimov-page-rooms .price:not(:has(*)):not(:has(img)) {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* also hide price blocks that only contain whitespace / empty links */
body.kasimov-page-rooms .price {
  min-height: 0 !important;
}
body.kasimov-page-rooms .price a:empty {
  display: none !important;
}

/* Contacts pill: ensure full address fits inside white bar */
@media only screen and (min-width: 980px) {
  #header .kasimov-contacts--cluster {
    padding-left: 14px !important;
    padding-right: 16px !important;
    gap: 10px !important;
    column-gap: 12px !important;
  }
  #header .kasimov-contacts__group--phones {
    flex: 0 0 auto !important;
  }
  #header .kasimov-contacts__group--address {
    flex: 0 0 auto !important;
    padding-right: 2px !important;
  }
  #header a.kasimov-address__link {
    font-size: 12.5px !important;
    letter-spacing: 0 !important;
  }
}


/* === ABOUT FULLWIDTH + PRICE SHELLS === */

body.kasimov-page-about #content .item-page,
body.kasimov-page-about #middlecol .inside,
body.kasimov-page-about article {
  max-width: 100% !important;
  width: 100% !important;
}

/* When mosaic not yet applied: stack full width */
body.kasimov-page-about img[src*="about-hotel"],
body.kasimov-page-about img.kasimov-gallery-img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  float: none !important;
  display: block !important;
  margin: 0 0 16px !important;
  clear: both !important;
}

/* Mosaic grid for about like restaurant */
body.kasimov-page-about .kasimov-mosaic {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 16px 0 24px !important;
}
body.kasimov-page-about .kasimov-mosaic > a,
body.kasimov-page-about .kasimov-mosaic > img,
body.kasimov-page-about .kasimov-mosaic > figure {
  margin: 0 !important;
  width: 100% !important;
}
body.kasimov-page-about .kasimov-mosaic img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
}
@media (max-width: 700px) {
  body.kasimov-page-about .kasimov-mosaic {
    grid-template-columns: 1fr !important;
  }
  body.kasimov-page-about .kasimov-mosaic img {
    height: 200px !important;
  }
}

/* Empty/near-empty price shells before Подробнее */
body.kasimov-page-rooms div.price:not(:has(a)):not(:has(img)):not(:has(strong)):not(:has(span:not(:empty))):not(:has(.kasimov-rate)):not(:has(.kasimov-rate-note)):not(:has(p)) {
  display: none !important;
}

/* Keep rates / note visible even after book button was moved into actions row */
html body.kasimov-page-rooms #content div.price.kasimov-room-rates,
html body.kasimov-page-rooms #content .kasimov-room-rates,
html body.kasimov-page-rooms #content div.price:has(.kasimov-rate-note),
html body.kasimov-page-rooms #content div.price:has(.kasimov-rate) {
  display: block !important;
  height: auto !important;
  visibility: visible !important;
  opacity: 1 !important;
}


/* === LIGHTGALLERY ABOUT === */
body.kasimov-page-about a[data-lightbox],
body.kasimov-page-about a[data-lightbox="image-1"],
body.kasimov-page-about .item-page a[href*="about-hotel"] {
  display: block !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}
body.kasimov-page-about a[data-lightbox] img,
body.kasimov-page-about .item-page img[src*="about-hotel"],
body.kasimov-page-about img.kasimov-gallery-img {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  float: none !important;
  display: block !important;
  object-fit: cover !important;
}
/* optional 2-col mosaic if many images */
body.kasimov-page-about .kasimov-about-gallery {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 18px 0 28px !important;
}
body.kasimov-page-about .kasimov-about-gallery a[data-lightbox] {
  margin: 0 !important;
}
body.kasimov-page-about .kasimov-about-gallery img {
  height: 220px !important;
  object-fit: cover !important;
}
@media (max-width: 700px) {
  body.kasimov-page-about .kasimov-about-gallery {
    grid-template-columns: 1fr !important;
  }
}


/* === ABOUT GALLERY FORCE === */
body.kasimov-page-about #content.container,
body.kasimov-page-about #content,
body.kasimov-page-about #middlecol,
body.kasimov-page-about #middlecol .inside,
body.kasimov-page-about .item-page,
body.kasimov-page-about article,
body.kasimov-page-about .row {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  box-sizing: border-box !important;
}
body.kasimov-page-about #sidebar { display: none !important; width: 0 !important; }

body.kasimov-page-about .kasimov-about-gallery {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 20px 0 28px !important;
  clear: both !important;
  float: none !important;
  box-sizing: border-box !important;
}
body.kasimov-page-about .kasimov-about-gallery > a,
body.kasimov-page-about .kasimov-about-gallery > a[data-lightbox] {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
body.kasimov-page-about .kasimov-about-gallery img {
  width: 100% !important;
  max-width: none !important;
  height: 220px !important;
  object-fit: cover !important;
  margin: 0 !important;
  float: none !important;
  display: block !important;
}
@media (max-width: 700px) {
  body.kasimov-page-about .kasimov-about-gallery {
    grid-template-columns: 1fr !important;
  }
  body.kasimov-page-about .kasimov-about-gallery img {
    height: 220px !important;
  }
}


/* === NO HORIZONTAL OVERFLOW ABOUT === */
body.kasimov-page-about #content.container,
body.kasimov-page-about #middlecol,
body.kasimov-page-about #middlecol .inside,
body.kasimov-page-about .kasimov-about-gallery {
  max-width: 1170px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  overflow-x: hidden !important;
}
body.kasimov-page-about #content.row,
body.kasimov-page-about .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
@media only screen and (min-width: 980px) {
  body.kasimov-page-about #middlecol.span8,
  body.kasimov-page-rooms #middlecol.span8 {
    width: 100% !important;
    float: none !important;
    margin: 0 auto !important;
  }
}


/* === DESKTOP HOVER + LAYOUT POLISH === */

/* 1) Never blank the page: kill reveal opacity / white hover flashes */
.kasimov-reveal,
.kasimov-reveal.is-in,
#promo .kasimov-reveal,
#icecarousel .kasimov-reveal,
#testimonials .kasimov-reveal,
#kasimov-home-extras .kasimov-reveal {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
  visibility: visible !important;
}

/* Only buttons/links may scale or brighten on hover — never full blocks/cards */
@media only screen and (min-width: 980px) {
  #promo .moduletable:hover,
  #promo .span4:hover,
  #promo [class*="span"]:hover,
  #testimonials:hover,
  #testimonials .custom:hover,
  #icecarousel .icecarousel-inner:hover,
  #icecarousel .icecarousel-inner:hover img,
  #kasimov-home-extras .kasimov-side-card:hover,
  #kasimov-home-extras .sidebar_module:hover,
  #sidebar .kasimov-side-card:hover,
  .kasimov-side-card:hover,
  .kasimov-side-card:hover .kasimov-side-card__media img,
  body.kasimov-page-home #content:hover,
  body.kasimov-page-home #content .inside:hover {
    transform: none !important;
    background: inherit !important;
    filter: none !important;
    opacity: 1 !important;
  }

  /* Allowed hover: CTAs only */
  a.kasimov-book-cta:hover,
  a.kasimov-prices-tab:hover,
  a.iceslide_link:hover,
  a.book-button:hover,
  .price .book-button:hover,
  body.kasimov-page-rooms p.readmore a:hover,
  body.kasimov-page-rooms p.readmore a.btn:hover,
  #kasimov-home-extras .kasimov-side-card__cta:hover {
    transform: scale(1.04) !important;
    filter: brightness(1.06) !important;
  }
}

/* 2) Tour + reviews: white readable text (not red) */
#kasimov-home-extras .kasimov-side-card,
#kasimov-home-extras .kasimov-side-card *,
#kasimov-home-extras .kasimov-side-card__title,
#kasimov-home-extras .kasimov-side-card__text,
#kasimov-home-extras .kasimov-side-card__cta,
#kasimov-home-extras .kasimov-side-card__badge,
#sidebar .kasimov-side-card,
#sidebar .kasimov-side-card *,
#sidebar .kasimov-side-card__title,
#sidebar .kasimov-side-card__text,
#sidebar .kasimov-side-card__cta {
  color: #fff !important;
}
#kasimov-home-extras .kasimov-side-card__cta,
#sidebar .kasimov-side-card__cta {
  border-color: rgba(255,255,255,.55) !important;
}
#kasimov-home-extras .kasimov-side-card,
#sidebar .kasimov-side-card {
  background: #1a1a1a !important;
}
#kasimov-home-extras .kasimov-side-card:hover,
#sidebar .kasimov-side-card:hover {
  background: #1a1a1a !important;
  transform: none !important;
}

/* 3) Desktop contacts like original: translucent header bar, gray text, ~13px */
@media only screen and (min-width: 980px) {
  body.kasimov-page-home #header,
  body.kasimov-page-rooms #header,
  body.kasimov-page-about #header,
  body.kasimov-page-restaurant #header,
  body.kasimov-page-services #header,
  #header {
    background: rgba(255, 255, 255, 0.7) !important;
    box-shadow: none !important;
  }
  #header #notice,
  #header .kasimov-contacts--cluster,
  #header .kasimov-contacts {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    padding: 9px 0 0 !important;
    margin: 0 !important;
    max-width: none !important;
    width: auto !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  #header .kasimov-contacts--cluster {
    display: block !important;
    white-space: normal !important;
  }
  #header .kasimov-contacts__group,
  #header .kasimov-contacts__group--phones,
  #header .kasimov-contacts__group--address {
    display: inline !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
  }
  #header .kasimov-contacts__icon {
    display: none !important; /* original notice was plain text */
  }
  #header .kasimov-contacts__text,
  #header a.kasimov-phone,
  #header a.kasimov-address__link,
  #header #notice,
  #header #notice span {
    color: #737373 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    border: 0 !important;
    background: transparent !important;
    white-space: nowrap !important;
  }
  #header a.kasimov-phone:hover,
  #header a.kasimov-address__link:hover {
    color: #970000 !important;
    transform: none !important;
    filter: none !important;
  }
  /* keep address fully visible */
  #header a.kasimov-address__link {
    overflow: visible !important;
    text-overflow: clip !important;
  }
}

/* 4) Rooms: Подробнее always under price/book, even gap, never stuck to photo */
body.kasimov-page-rooms .item-image,
body.kasimov-page-rooms .pull-left.item-image,
body.kasimov-page-rooms .pull-right.item-image {
  float: none !important;
  display: block !important;
  width: 100% !important;
  margin: 0 0 14px !important;
}
body.kasimov-page-rooms .items-leading > div,
body.kasimov-page-rooms .leading-0,
body.kasimov-page-rooms .leading-1,
body.kasimov-page-rooms .leading-2,
body.kasimov-page-rooms .leading-3,
body.kasimov-page-rooms .leading-4,
body.kasimov-page-rooms .blog .item {
  overflow: hidden !important; /* contain floats */
  margin: 0 0 36px !important;
  padding: 0 0 8px !important;
  clear: both !important;
}
body.kasimov-page-rooms .page-header {
  margin: 0 0 8px !important;
  padding: 0 !important;
  clear: both !important;
}
body.kasimov-page-rooms .page-header h2 {
  margin: 0 0 6px !important;
}
body.kasimov-page-rooms .price {
  margin: 0 0 10px !important;
  padding: 0 !important;
  clear: both !important;
}
body.kasimov-page-rooms .price .book-button,
body.kasimov-page-rooms a.book-button {
  display: inline-flex !important;
  margin: 8px 0 0 !important;
}
body.kasimov-page-rooms p.readmore {
  margin: 12px 0 0 !important;
  padding: 0 !important;
  clear: both !important;
  float: none !important;
  min-height: 0 !important;
  position: static !important;
}
body.kasimov-page-rooms p.readmore a.btn,
body.kasimov-page-rooms p.readmore a {
  display: inline-flex !important;
  margin: 0 !important;
  float: none !important;
  position: static !important;
}

/* Home promo "Подробнее" consistency */
#promo .readmore,
#content .kasimov-home-about .readmore,
body.kasimov-page-home #middlecol p.readmore {
  margin: 12px 0 0 !important;
  clear: both !important;
}

/* 5) About mosaic: stable 2-col, equal tiles, no runaway widths */
body.kasimov-page-about .kasimov-about-gallery {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 18px 0 24px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
body.kasimov-page-about .kasimov-about-gallery > a,
body.kasimov-page-about .kasimov-about-gallery > a[data-lightbox] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 220px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
body.kasimov-page-about .kasimov-about-gallery img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  margin: 0 !important;
  display: block !important;
  float: none !important;
}
/* disable competing lightbox floats on about */
body.kasimov-page-about a[data-lightbox]:not(.kasimov-about-gallery a) {
  float: none !important;
  max-width: 100% !important;
}
@media (max-width: 700px) {
  body.kasimov-page-about .kasimov-about-gallery {
    grid-template-columns: 1fr !important;
  }
  body.kasimov-page-about .kasimov-about-gallery > a {
    height: 200px !important;
  }
}

/* 6) Desktop content rhythm — even columns, no chaos */
@media only screen and (min-width: 980px) {
  #content.container,
  #promo.row,
  #kasimov-home-extras.container,
  #icecarousel .container {
    max-width: 1170px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.kasimov-page-home #promo.row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 18px !important;
  }
  body.kasimov-page-home #promo .moduletable,
  body.kasimov-page-home #promo [class*="span"] {
    float: none !important;
    width: auto !important;
    flex: 1 1 0 !important;
    margin: 0 !important;
    min-width: 0 !important;
  }
  #kasimov-home-extras .kasimov-home-extras__grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 18px !important;
    align-items: stretch !important;
  }
}


/* === CONTACTS PILL KILL + CARD WHITE === */
@media only screen and (min-width: 980px) {
  html body #header .kasimov-contacts,
  html body #header .kasimov-contacts--cluster,
  html body #header #notice .kasimov-contacts,
  html body #header #notice .kasimov-contacts--cluster,
  html body #header #notice {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    border: 0 !important;
    padding: 9px 0 0 !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
}

html body #kasimov-home-extras .kasimov-side-card,
html body #kasimov-home-extras .kasimov-side-card a,
html body #kasimov-home-extras .kasimov-side-card__title,
html body #kasimov-home-extras .kasimov-side-card__text,
html body #kasimov-home-extras .kasimov-side-card__cta,
html body #kasimov-home-extras .kasimov-side-card__badge,
html body #kasimov-home-extras .kasimov-side-card__overlay,
html body #kasimov-home-extras .kasimov-side-card__body {
  color: #ffffff !important;
}
html body #kasimov-home-extras .kasimov-side-card__cta {
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.6) !important;
  background: transparent !important;
}

body.kasimov-page-about .kasimov-about-gallery > a {
  height: 220px !important;
  max-height: 220px !important;
}
body.kasimov-page-about .kasimov-about-gallery img {
  height: 220px !important;
  max-height: 220px !important;
  object-fit: cover !important;
}

body.kasimov-page-rooms p.readmore {
  margin: 10px 0 28px !important;
  clear: both !important;
}
body.kasimov-page-rooms .leading-0 p.readmore,
body.kasimov-page-rooms .leading-1 p.readmore,
body.kasimov-page-rooms .leading-2 p.readmore,
body.kasimov-page-rooms .leading-3 p.readmore,
body.kasimov-page-rooms .leading-4 p.readmore,
body.kasimov-page-rooms .item p.readmore {
  margin: 10px 0 0 !important;
}


/* === FORCE WHITE CARD TEXT === */
html body #kasimov-home-extras,
html body #kasimov-home-extras *,
html body #kasimov-home-extras a,
html body #kasimov-home-extras h3,
html body #kasimov-home-extras h4,
html body #kasimov-home-extras .module-title,
html body #kasimov-home-extras .kasimov-side-card,
html body #kasimov-home-extras .kasimov-side-card * {
  color: #fff !important;
}
html body #kasimov-home-extras .kasimov-side-card__cta,
html body #kasimov-home-extras a.kasimov-side-card__cta {
  color: #fff !important;
  border-color: rgba(255,255,255,.65) !important;
}
/* kill any leftover red accents inside extras */
html body #kasimov-home-extras .red,
html body #kasimov-home-extras span.red,
html body #kasimov-home-extras font {
  color: #fff !important;
}


/* === ROOMS BOOK + READMORE ALIGN === */
body.kasimov-page-rooms .price {
  display: block !important;
  float: none !important;
  clear: both !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  overflow: visible !important;
  min-height: 0 !important;
}
body.kasimov-page-rooms .price .text {
  display: block !important;
  margin: 0 0 10px !important;
  float: none !important;
}
body.kasimov-page-rooms .price .book-button,
body.kasimov-page-rooms a.book-button {
  float: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 36px !important;
  padding: 0 18px !important;
  margin: 0 10px 0 0 !important;
  background: #1f8a4c !important;
  background-image: none !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  text-shadow: none !important;
  border: 0 !important;
  border-radius: 3px !important;
  box-shadow: 0 4px 12px rgba(20,100,55,.28) !important;
  position: static !important;
}
body.kasimov-page-rooms .price .book-button:hover,
body.kasimov-page-rooms a.book-button:hover {
  background: #24a058 !important;
  color: #fff !important;
  transform: scale(1.04) !important;
}
body.kasimov-page-rooms p.readmore {
  display: block !important;
  float: none !important;
  clear: both !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  position: static !important;
}
body.kasimov-page-rooms p.readmore a.btn,
body.kasimov-page-rooms p.readmore a {
  float: none !important;
  position: static !important;
}
/* keep book + подробнее as a tight action row under price text */
body.kasimov-page-rooms .kasimov-room-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  margin: 0 0 8px !important;
  clear: both !important;
}


/* === ROOM ACTIONS BTN GREEN === */
html body.kasimov-page-rooms .kasimov-room-actions a,
html body.kasimov-page-rooms .kasimov-room-actions a.btn,
html body.kasimov-page-rooms .kasimov-room-actions a.book-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 36px !important;
  line-height: 36px !important;
  padding: 0 18px !important;
  margin: 0 !important;
  background: #1f8a4c !important;
  background-image: none !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-shadow: none !important;
  border: 0 !important;
  border-radius: 3px !important;
  box-shadow: 0 4px 12px rgba(20,100,55,.28) !important;
  float: none !important;
}
html body.kasimov-page-rooms .kasimov-room-actions a:hover,
html body.kasimov-page-rooms .kasimov-room-actions a.btn:hover {
  background: #24a058 !important;
  color: #fff !important;
  transform: scale(1.04) !important;
}
html body.kasimov-page-rooms .kasimov-room-actions .icon-chevron-right {
  display: none !important;
}


/* === HERO LUXE + TOP BAR + NO HOVER CHAOS === */

/* A) Kill white half-screen overlay on hero */
html body #header,
html body.kasimov-page-home #header,
html body.kasimov-page-rooms #header,
html body.kasimov-page-about #header,
html body.kasimov-page-restaurant #header {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  height: auto !important;
  min-height: 0 !important;
}

/* B) Original-style top contacts strip — full desktop width */
@media only screen and (min-width: 980px) {
  html body #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 60 !important;
    padding: 0 !important;
    overflow: visible !important;
  }
  html body #header .container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  html body #header .container > .row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin: 0 !important;
    width: 100% !important;
  }

  /* full-bleed translucent bar for phones+address only */
  html body #header #notice {
    order: 0 !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(255,255,255,0.78) !important;
    box-shadow: 0 1px 0 rgba(0,0,0,.06) !important;
  }
  html body #header #notice .kasimov-contacts,
  html body #header #notice .kasimov-contacts--cluster {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 1170px !important;
    margin: 0 auto !important;
    padding: 10px 24px !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    white-space: nowrap !important;
    box-sizing: border-box !important;
  }
  html body #header .kasimov-contacts__group,
  html body #header .kasimov-contacts__group--phones,
  html body #header .kasimov-contacts__group--address {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    max-width: none !important;
    overflow: visible !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  html body #header .kasimov-contacts__icon { display: none !important; }
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link,
  html body #header .kasimov-contacts__text,
  html body #header #notice,
  html body #header #notice span {
    color: #737373 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: none !important;
    text-decoration: none !important;
    border: 0 !important;
  }
  html body #header a.kasimov-phone:hover,
  html body #header a.kasimov-address__link:hover {
    color: #970000 !important;
    transform: none !important;
    filter: none !important;
    background: transparent !important;
  }

  /* logo under bar, no plate */
  html body #header #logo {
    order: 1 !important;
    float: none !important;
    width: auto !important;
    margin: 18px auto 8px !important;
    padding: 0 !important;
    background: transparent !important;
  }
  html body #header #logo img {
    max-height: 110px !important;
    width: auto !important;
  }
  html body #header .header-right { display: none !important; }

  /* menu stays inside hero under logo on ALL pages */
  html body #header #mainmenu,
  html body #mainmenu {
    order: 2 !important;
    position: relative !important;
    float: none !important;
    width: 100% !important;
    max-width: 1170px !important;
    margin: 0 auto 12px !important;
    background: transparent !important;
    z-index: 55 !important;
  }
  html body #header #mainmenu .container,
  html body #mainmenu .container {
    background: transparent !important;
  }
  html body #header #mainmenu ul#icemegamenu > li > a,
  html body #mainmenu ul#icemegamenu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 3px rgba(0,0,0,.55) !important;
    background: transparent !important;
  }
  html body #header #mainmenu ul#icemegamenu > li.active > a,
  html body #header #mainmenu ul#icemegamenu > li > a:hover {
    color: #f0d78c !important;
    background: transparent !important;
  }
}

/* C) Luxury hero crossfade (not hard slide) */
#iceslideshow .carousel,
#iceslideshow .iceslideshow {
  overflow: hidden !important;
}
#iceslideshow .carousel-inner {
  overflow: hidden !important;
}
#iceslideshow .carousel-inner > .item {
  -webkit-transition: opacity 2.4s cubic-bezier(.22,.61,.36,1) !important;
  -moz-transition: opacity 2.4s cubic-bezier(.22,.61,.36,1) !important;
  -o-transition: opacity 2.4s cubic-bezier(.22,.61,.36,1) !important;
  transition: opacity 2.4s cubic-bezier(.22,.61,.36,1) !important;
  left: 0 !important;
  opacity: 0 !important;
  display: block !important;
  position: absolute !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 1 !important;
}
#iceslideshow .carousel-inner > .item:first-child {
  position: absolute !important;
}
#iceslideshow .carousel-inner > .active {
  opacity: 1 !important;
  z-index: 2 !important;
}
#iceslideshow .carousel-inner > .active.left,
#iceslideshow .carousel-inner > .active.right {
  left: 0 !important;
  opacity: 0 !important;
  z-index: 1 !important;
}
#iceslideshow .carousel-inner > .next,
#iceslideshow .carousel-inner > .prev {
  left: 0 !important;
  opacity: 1 !important;
  z-index: 2 !important;
}
#iceslideshow .carousel-inner > .next.left,
#iceslideshow .carousel-inner > .prev.right {
  opacity: 1 !important;
}
/* subtle ken-burns on active slide */
#iceslideshow .carousel-inner > .item > img,
#iceslideshow .carousel-inner > .item > a > img {
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
  -webkit-transition: transform 7s ease-out;
  transition: transform 7s ease-out;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
#iceslideshow .carousel-inner > .item.active > img,
#iceslideshow .carousel-inner > .item.active > a > img {
  -webkit-transform: scale(1.12);
  transform: scale(1.12);
}

/* D) No hover bleach — only highlight interactive controls */
@media only screen and (min-width: 980px) {
  #header:hover,
  #header *:hover,
  #mainmenu:hover,
  #iceslideshow:hover,
  #promo .moduletable:hover,
  #promo [class*="span"]:hover,
  #content .item:hover,
  #content .blog:hover,
  #testimonials:hover {
    background: transparent !important;
    background-color: transparent !important;
  }
  /* do NOT force inherit backgrounds on hover (causes white flash) */
  #header a:hover,
  #mainmenu ul#icemegamenu > li > a:hover {
    background: transparent !important;
    color: #f0d78c !important;
  }
  a.kasimov-book-cta:hover,
  a.kasimov-prices-tab:hover,
  .kasimov-room-actions a:hover,
  body.kasimov-page-rooms p.readmore a:hover,
  a.btn:hover,
  a.icebtn:hover {
    filter: brightness(1.08) !important;
    transform: none !important;
  }
  #kasimov-home-extras .kasimov-side-card:hover {
    filter: brightness(1.05) !important;
  }
  #kasimov-home-extras .kasimov-side-card:hover img {
    transform: scale(1.03) !important;
  }
}


/* E) Mobile address never clipped */
@media only screen and (max-width: 979px) {
  #header #notice,
  #header .kasimov-contacts--cluster,
  #header .kasimov-contacts {
    max-width: 100% !important;
    width: 100% !important;
    overflow: visible !important;
    white-space: normal !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    background: rgba(255,255,255,0.92) !important;
    padding: 8px 10px !important;
    box-sizing: border-box !important;
  }
  #header a.kasimov-phone,
  #header a.kasimov-address__link,
  #header .kasimov-contacts__group--address {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: 100% !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
  }
  #header .kasimov-contacts__group--address {
    flex-basis: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }
}

/* F) Hide home about if still rendered */
body.kasimov-page-home .kasimov-home-about { display: none !important; }

/* G) Mail.ru social size match */
#social_icons .kasimov-social .social_mailru img,
.kasimov-social .social_mailru img {
  width: 32px !important;
  height: 32px !important;
  display: block !important;
  border-radius: 6px !important;
}


/* === FULL BLEED TOP CONTACTS === */
@media only screen and (min-width: 980px) {
  /* paint full-viewport translucent strip behind contacts */
  html body #header::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 100vw !important;
    height: 40px !important;
    background: rgba(255,255,255,0.82) !important;
    z-index: 0 !important;
    pointer-events: none !important;
  }
  html body #header #notice,
  html body #header #notice.span4 {
    position: relative !important;
    z-index: 2 !important;
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    left: 0 !important;
    right: 0 !important;
  }
  html body #header #notice .custom,
  html body #header #notice .moduletable {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    background: transparent !important;
  }
  html body #header #notice .kasimov-contacts,
  html body #header #notice .kasimov-contacts--cluster {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 22px !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 40px !important;
    padding: 0 180px 0 24px !important; /* leave room for book CTA on right */
    margin: 0 !important;
    background: transparent !important;
    box-sizing: border-box !important;
  }
  /* book CTA sits on the top strip, right edge */
  html body a.kasimov-book-cta {
    top: 3px !important;
    right: 16px !important;
    z-index: 70 !important;
    height: 34px !important;
  }
  html body #header #logo {
    margin-top: 52px !important;
  }
}

/* Mobile: address always fully visible on its own line */
@media only screen and (max-width: 979px) {
  html body #header #notice,
  html body #header #notice.span4 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
  }
  html body #header .kasimov-contacts--cluster {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 4px !important;
    width: 100% !important;
    padding: 8px 12px !important;
    white-space: normal !important;
  }
  html body #header .kasimov-contacts__group--phones,
  html body #header .kasimov-contacts__group--address {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
    white-space: normal !important;
  }
  html body #header a.kasimov-address__link {
    display: inline-block !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: 100% !important;
    font-size: 12px !important;
  }
}


/* === URGENT HERO LOGO NO BLACK === */

html, body, body.site {
  background: #f7f4ef !important;
  background-image: none !important;
}
body::before { display: none !important; content: none !important; }

@media only screen and (max-width: 979px) {
  #iceslideshow,
  #iceslideshow.container,
  #iceslideshow.iceslideshow-fill,
  body.kasimov-page-home #iceslideshow,
  body.kasimov-page-home #iceslideshow.container {
    position: relative !important;
    width: 100vw !important;
    max-width: 100vw !important;
    left: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 70vh !important;
    min-height: 360px !important;
    max-height: 640px !important;
    overflow: hidden !important;
    background: transparent !important; /* was #333 */
  }
  #iceslideshow .carousel,
  #iceslideshow .carousel-inner,
  #iceslideshow .item {
    width: 100% !important;
    height: 100% !important;
  }
  #iceslideshow .item > img,
  #iceslideshow .item > a,
  #iceslideshow .item > a > img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* Header fills same box as slideshow so logo % is vs hero */
  #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 70vh !important;
    min-height: 360px !important;
    max-height: 640px !important;
    background: transparent !important;
    z-index: 40 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
  }
  #header::before { display: none !important; content: none !important; }
  #header a,
  #header button,
  #header #notice,
  #header #logo,
  #header #mainmenu,
  #header .kasimov-mobile-toggle,
  #header .mobile-nav-toggle {
    pointer-events: auto !important;
  }
  #header .container,
  #header .container > .row {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    background: transparent !important;
  }

  /* contacts top of hero */
  #header #notice,
  #header #notice.span4 {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: rgba(255,255,255,0.92) !important;
    z-index: 46 !important;
  }
  #header .kasimov-contacts--cluster {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 2px !important;
    padding: 8px 40px 8px 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: transparent !important;
  }
  #header a.kasimov-phone,
  #header a.kasimov-address__link {
    color: #555 !important;
    font-size: 12px !important;
    white-space: normal !important;
    text-align: center !important;
    overflow: visible !important;
  }

  /* LOGO dead-center of hero photos */
  #header #logo,
  #header #logo.span4 {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    z-index: 45 !important;
  }
  #header #logo img {
    max-height: 100px !important;
    width: auto !important;
    display: block !important;
    filter: drop-shadow(0 3px 10px rgba(0,0,0,.5));
  }

  /* keep mobile menu toggle visible — do not hide whole mainmenu if toggle lives there */
  #header #mainmenu {
    position: absolute !important;
    top: auto !important;
    bottom: 12px !important;
    left: 0 !important;
    right: 0 !important;
    display: block !important;
    width: 100% !important;
    background: transparent !important;
    z-index: 47 !important;
  }
  #header #mainmenu .container { background: transparent !important; }
  /* hide desktop mega links on mobile; show only toggle if present */
  #header #mainmenu ul#icemegamenu { display: none !important; }

  a.kasimov-book-cta {
    top: 10px !important;
    right: 8px !important;
    z-index: 55 !important;
    pointer-events: auto !important;
  }

  #content, section#content, #page_heading, #content_shadow {
    background: #fff !important;
    position: relative !important;
    z-index: 5 !important;
  }
}

@media only screen and (min-width: 980px) {
  html, body, body.site { background: #f7f4ef !important; background-image: none !important; }

  #iceslideshow,
  #iceslideshow.container,
  body.kasimov-page-home #iceslideshow {
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    min-height: 640px !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
  #iceslideshow .carousel,
  #iceslideshow .carousel-inner,
  #iceslideshow .item { width:100% !important; height:100% !important; }
  #iceslideshow .item > img,
  #iceslideshow .item > a > img {
    width:100% !important; height:100% !important; object-fit:cover !important;
  }

  #header {
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important;
    height: auto !important;
    background: transparent !important;
    z-index: 60 !important;
  }
  #header::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important; left: 50% !important;
    transform: translateX(-50%) !important;
    width: 100vw !important; height: 42px !important;
    background: rgba(255,255,255,0.88) !important;
    z-index: 0 !important; pointer-events: none !important;
  }
  #header .container {
    max-width: 1170px !important;
    margin: 0 auto !important;
    position: relative !important;
    z-index: 2 !important;
  }
  #header .container > .row {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    margin: 0 !important;
  }
  #header #notice, #header #notice.span4 {
    float: none !important; width: 100% !important;
    background: transparent !important; margin: 0 !important;
  }
  #header .kasimov-contacts--cluster {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 20px !important;
    min-height: 42px !important;
    padding: 0 170px 0 16px !important;
    width: 100% !important;
    background: transparent !important;
    white-space: nowrap !important;
  }
  #header a.kasimov-phone,
  #header a.kasimov-address__link {
    color: #737373 !important; font-size: 13px !important; white-space: nowrap !important;
  }
  #header #logo, #header #logo.span4 {
    float: none !important; width: auto !important;
    margin: 36px auto 12px !important;
    position: relative !important;
    left: auto !important; top: auto !important;
    transform: none !important;
    background: transparent !important;
  }
  #header #logo img { max-height: 120px !important; width: auto !important; filter: drop-shadow(0 2px 10px rgba(0,0,0,.35)); }
  #header #mainmenu {
    display: block !important; width: 100% !important; max-width: 1170px !important;
    margin: 0 auto !important; background: transparent !important;
    position: relative !important; bottom: auto !important;
  }
  #header #mainmenu ul#icemegamenu { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; }
  #header #mainmenu ul#icemegamenu > li > a {
    color: #fff !important; text-shadow: 0 1px 4px rgba(0,0,0,.55) !important; background: transparent !important;
  }
  #header #mainmenu ul#icemegamenu > li.active > a,
  #header #mainmenu ul#icemegamenu > li > a:hover { color: #f0d78c !important; background: transparent !important; }
  a.kasimov-book-cta { top: 4px !important; right: 18px !important; z-index: 70 !important; }
  #content.container, section#content { background: #fff !important; box-shadow: none !important; margin-top: 0 !important; }
}

/* === MOBILE LOGO CENTER ON HERO === */
@media only screen and (max-width: 979px) {
  html, body,
  body.kasimov-page-home,
  #wrapper, #content, #main, #mainbody, .body-innerwrapper,
  #wrapper.container, .container {
    background: #f7f4ef !important;
    background-color: #f7f4ef !important;
    max-width: 100% !important;
  }
  #wrapper, #wrapper.container, body > #wrapper {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }

  /* Beat html body #header { height:auto !important } */
  html body #header,
  html body.kasimov-page-home #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-restaurant #header,
  html body #header.container,
  #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 70vh !important;
    min-height: 420px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    z-index: 40 !important;
    overflow: visible !important;
    pointer-events: none !important;
    float: none !important;
  }
  html body #header::before,
  #header::before {
    display: none !important;
    content: none !important;
    background: none !important;
    height: 0 !important;
  }
  html body #header a,
  html body #header button,
  html body #header #notice,
  html body #header #logo,
  html body #header #mainmenu,
  html body #header .mobile-nav-toggle {
    pointer-events: auto !important;
  }
  html body #header .container,
  html body #header .container > .row {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    float: none !important;
  }

  html body #iceslideshow,
  html body #iceslideshow.container,
  html body #iceslideshow.iceslideshow-fill,
  html body.kasimov-page-home #iceslideshow,
  #iceslideshow {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 70vh !important;
    min-height: 420px !important;
    margin: 0 !important;
    padding: 0 !important;
    left: 0 !important;
    background: transparent !important;
    overflow: hidden !important;
    float: none !important;
  }
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item {
    width: 100% !important;
    height: 100% !important;
  }
  html body #iceslideshow .item > img,
  html body #iceslideshow .item > a,
  html body #iceslideshow .item > a > img,
  html body #iceslideshow .iceslideshow-fill {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    background-size: cover !important;
    background-position: center center !important;
    display: block !important;
  }

  /* contacts top strip */
  html body #header #notice,
  html body #header #notice.span4 {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 6px 10px !important;
    float: none !important;
    z-index: 50 !important;
    background: rgba(0,0,0,0.28) !important;
  }
  html body #header .kasimov-contacts--cluster {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 4px 14px !important;
  }
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link {
    color: #fff !important;
    font-size: 12px !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.45) !important;
  }

  /* LOGO centered on hero photos */
  html body #header #logo,
  html body #header #logo.span4,
  html body.kasimov-page-home #header #logo {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    width: auto !important;
    max-width: 78% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    text-align: center !important;
    z-index: 45 !important;
    background: transparent !important;
  }
  html body #header #logo img,
  html body.kasimov-page-home #header #logo img {
    max-height: 100px !important;
    height: auto !important;
    width: auto !important;
    max-width: 100% !important;
    filter: drop-shadow(0 2px 12px rgba(0,0,0,.45));
  }

  /* menu at bottom of hero */
  html body #header #mainmenu {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 14px !important;
    top: auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    z-index: 50 !important;
    background: transparent !important;
  }
  html body #header #mainmenu .mobile-nav-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: calc(100% - 24px) !important;
    margin: 0 12px !important;
    padding: 10px 14px !important;
    background: rgba(255,255,255,0.94) !important;
    border: 0 !important;
    border-radius: 4px !important;
    color: #333 !important;
  }
  html body #header #mainmenu ul#icemegamenu,
  html body #header #mainmenu ul.nav.menu {
    display: none !important;
  }
  html body #header #mainmenu.is-open ul#icemegamenu,
  html body #header #mainmenu.is-open ul.nav.menu {
    display: block !important;
    background: #fff !important;
    margin: 8px 12px 0 !important;
    max-height: 50vh !important;
    overflow: auto !important;
    border-radius: 4px !important;
  }
  html body #header #mainmenu.is-open ul#icemegamenu > li > a {
    color: #333 !important;
    text-shadow: none !important;
    background: transparent !important;
  }

  /* content full width under hero */
  #content, #main, #mainbody, .row-fluid, .span12, #component {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* === KILL SLIDESHOW BLACK BG === */
#iceslideshow,
#iceslideshow.container,
#iceslideshow .carousel,
#iceslideshow .carousel-inner,
#iceslideshow237,
#iceslideshow237.carousel,
.iceslideshow,
.iceslideshow .carousel,
.iceslideshow .carousel-inner {
  background: transparent !important;
  background-color: transparent !important;
}
#iceslideshow .carousel-fade .item,
#iceslideshow237.carousel-fade .item {
  background: transparent !important;
}
#iceslideshow .carousel-fade .item.active,
/* old opacity force removed */

/* === FORCE NO BLACK UNDER LOGO === */
html body.kasimov-page-home #iceslideshow,
html body.kasimov-page-home #iceslideshow.container,
html body.kasimov-page-home #iceslideshow.iceslideshow-fill,
html body #iceslideshow.iceslideshow-fill,
html body #iceslideshow.container.iceslideshow-fill,
body.kasimov-page-home #iceslideshow,
body.kasimov-page-home #iceslideshow.container,
body.kasimov-page-home #iceslideshow.iceslideshow-fill {
  background: transparent !important;
  background-color: transparent !important;
}

/* === DESKTOP HEADER RESTORE === */
@media only screen and (min-width: 980px) {
  html, body, #wrapper, #content {
    background: #f7f4ef !important;
  }

  /* Slideshow: full-bleed hero, sensible height (not full viewport) */
  html body #iceslideshow,
  html body #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  #iceslideshow {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 675px !important;
    min-height: 480px !important;
    max-height: 675px !important;
    margin: 0 !important;
    padding: 0 !important;
    left: 0 !important;
    float: none !important;
    background: transparent !important;
    overflow: hidden !important;
  }
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill {
    width: 100% !important;
    height: 100% !important;
  }
  html body #iceslideshow .iceslideshow-fill {
    background-size: cover !important;
    background-position: center center !important;
  }

  /* Header overlays hero — logo/menu on photos */
  html body #header,
  html body.kasimov-page-home #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-restaurant #header,
  #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    z-index: 50 !important;
    overflow: visible !important;
    pointer-events: none !important;
    float: none !important;
  }
  html body #header::before {
    display: none !important;
    content: none !important;
    height: 0 !important;
    background: none !important;
  }
  html body #header a,
  html body #header button,
  html body #header #notice,
  html body #header #logo,
  html body #header #mainmenu {
    pointer-events: auto !important;
  }
  html body #header .container {
    position: relative !important;
    height: auto !important;
    max-width: 1170px !important;
    margin: 0 auto !important;
    padding: 0 15px !important;
    background: transparent !important;
  }
  html body #header .container > .row {
    display: flex !important;
    flex-flow: column nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    height: auto !important;
    margin: 0 !important;
    background: transparent !important;
  }

  /* Contacts top */
  html body #header #notice,
  html body #header #notice.span4 {
    position: static !important;
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 10px 0 0 !important;
    background: transparent !important;
    order: 1;
  }
  html body #header .kasimov-contacts--cluster {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px 24px !important;
  }
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link {
    color: #fff !important;
    font-size: 13px !important;
    text-shadow: 0 1px 3px rgba(0,0,0,.55) !important;
  }

  /* Logo centered on hero */
  html body #header #logo,
  html body #header #logo.span4,
  html body.kasimov-page-home #header #logo {
    position: static !important;
    transform: none !important;
    float: none !important;
    width: auto !important;
    margin: 18px auto 8px !important;
    padding: 0 !important;
    text-align: center !important;
    order: 2;
  }
  html body #header #logo img,
  html body.kasimov-page-home #header #logo img {
    max-height: 120px !important;
    width: auto !important;
    filter: drop-shadow(0 2px 10px rgba(0,0,0,.35));
  }

  /* Menu under logo */
  html body #header #mainmenu,
  html body.kasimov-page-home #header #mainmenu {
    position: static !important;
    width: 100% !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    float: none !important;
    order: 3;
    background: transparent !important;
  }
  html body #header #mainmenu ul#icemegamenu {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 0 2px !important;
  }
  html body #header #mainmenu ul#icemegamenu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 3px rgba(0,0,0,.55) !important;
    background: transparent !important;
    padding: 8px 14px !important;
  }
  html body #header #mainmenu ul#icemegamenu > li.active > a,
  html body #header #mainmenu ul#icemegamenu > li > a:hover {
    color: #f0d78c !important;
    background: transparent !important;
  }
  html body #header #mainmenu .mobile-nav-toggle { display: none !important; }

  /* Caption readable on photo */
  html body #iceslideshow .carousel-caption {
    top: auto !important;
    bottom: 48px !important;
  }
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow.iceslideshow-fill,
  html body #iceslideshow,
  html body #iceslideshow.container,
  html body #iceslideshow.iceslideshow-fill,
  body.kasimov-page-home #iceslideshow,
  body.kasimov-page-home #iceslideshow.container,
  body.kasimov-page-home #iceslideshow.iceslideshow-fill {
    background: transparent !important;
    background-color: transparent !important;
  }
  html body #iceslideshow .carousel-fade .item.active,
  html body #iceslideshow237.carousel-fade .item.active {
    opacity: 1 !important;
  }
}

/* === CAROUSEL ITEMS STACK FIX === */
/* Prevent Bootstrap fade slides from stacking vertically under hero */
#iceslideshow .carousel,
#iceslideshow237.carousel,
#iceslideshow .carousel-inner {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}
#iceslideshow .carousel-inner > .item,
#iceslideshow237 .carousel-inner > .item {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
#iceslideshow .carousel-inner > .item > .iceslideshow-fill,
#iceslideshow237 .carousel-inner > .item > .iceslideshow-fill,
#iceslideshow .item .iceslideshow-fill {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
#iceslideshow .carousel-fade .item {
  opacity: 0 !important;
  z-index: 1 !important;
  transition: opacity 1.2s ease-in-out !important;
  -webkit-transition: opacity 1.2s ease-in-out !important;
}
#iceslideshow .carousel-fade .item.active,
#iceslideshow .carousel-fade .item.next.left,
#iceslideshow .carousel-fade .item.prev.right {
  opacity: 1 !important;
  z-index: 2 !important;
}
#iceslideshow .carousel-fade .item.active.left,
#iceslideshow .carousel-fade .item.active.right {
  opacity: 0 !important;
  z-index: 1 !important;
}

@media only screen and (min-width: 980px) {
  html body #iceslideshow,
  html body #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow {
    height: 675px !important;
    max-height: 675px !important;
    min-height: 480px !important;
  }
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .carousel-inner > .item,
  html body #iceslideshow .item .iceslideshow-fill {
    height: 100% !important;
    max-height: none !important;
  }
  /* contacts readable on photo */
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link {
    color: #fff !important;
    text-shadow: 0 1px 3px rgba(0,0,0,.65) !important;
  }
  html body #header #mainmenu ul#icemegamenu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 3px rgba(0,0,0,.65) !important;
  }
}

@media only screen and (max-width: 979px) {
  html body #iceslideshow .carousel-inner > .item,
  html body #iceslideshow .item .iceslideshow-fill {
    height: 100% !important;
  }
}

/* === CAROUSEL ABSOLUTE FORCE === */
html body.kasimov-page-home #iceslideshow .carousel-inner > .item,
html body.kasimov-page-home #iceslideshow .carousel-inner > .item.active,
html body.kasimov-page-home #iceslideshow .carousel-inner > .item:first-child,
html body #iceslideshow .carousel-inner > .item,
html body #iceslideshow .carousel-inner > .item.active,
html body #iceslideshow .carousel-inner > .item:first-child,
html body #iceslideshow237 .carousel-inner > .item {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}
html body.kasimov-page-home #iceslideshow .carousel-inner,
html body #iceslideshow .carousel-inner {
  position: relative !important;
  height: 100% !important;
  overflow: hidden !important;
}
html body.kasimov-page-home #iceslideshow .item > .iceslideshow-fill,
html body #iceslideshow .item > .iceslideshow-fill {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center center !important;
}


/* === DESKTOP LOGO SPACING === */
@media only screen and (min-width: 980px) {
  html body #header #notice {
    padding-top: 12px !important;
    min-height: 36px !important;
  }
  html body #header #logo,
  html body.kasimov-page-home #header #logo {
    margin-top: 28px !important;
    margin-bottom: 10px !important;
  }
  html body #header #logo img {
    max-height: 110px !important;
  }
  /* keep promo cards aligned */
  #promo .row,
  #content #promo .row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
  }
  #promo [class*="span"],
  #content #promo [class*="span"] {
    float: none !important;
  }
}


/* === BATCH 20260919v === */

/* --- Hero: kill white flash during crossfade --- */
#iceslideshow,
#iceslideshow.container,
#iceslideshow .carousel,
#iceslideshow .carousel-inner {
  background-color: transparent !important; /* no muddy fallback */
}
#iceslideshow .carousel-fade .item {
  opacity: 0;
  transition: opacity 1.1s ease-in-out !important;
  -webkit-transition: opacity 1.1s ease-in-out !important;
  z-index: 1;
}
#iceslideshow .carousel-fade .item.active {
  opacity: 1 !important;
  z-index: 2;
}
/* incoming on top; outgoing stays visible underneath until gone */
#iceslideshow .carousel-fade .item.next,
#iceslideshow .carousel-fade .item.prev {
  opacity: 0;
  z-index: 3;
}
#iceslideshow .carousel-fade .item.next.left,
#iceslideshow .carousel-fade .item.prev.right {
  opacity: 1 !important;
  z-index: 3;
}
#iceslideshow .carousel-fade .item.active.left,
#iceslideshow .carousel-fade .item.active.right {
  opacity: 1 !important; /* keep previous visible during swap */
  z-index: 2;
}

/* --- Mobile: contacts out of header, into footer; no gray bar --- */
@media only screen and (max-width: 979px) {
  html body #header #notice,
  html body #header #notice.span4 {
    display: none !important;
  }
  html body #header {
    background: transparent !important;
    background-color: transparent !important;
  }
  html body #header::before {
    display: none !important;
    background: none !important;
  }
  /* bigger logo, clear over photos */
  html body #header #logo,
  html body #header #logo.span4,
  html body.kasimov-page-home #header #logo {
    top: 46% !important;
  }
  html body #header #logo img,
  html body.kasimov-page-home #header #logo img {
    max-height: 140px !important;
    width: auto !important;
    max-width: 88vw !important;
    filter: drop-shadow(0 3px 14px rgba(0,0,0,.45)) !important;
    opacity: 1 !important;
  }
  /* no muddy overlay under logo */
  html body #header .container,
  html body #header .container > .row,
  html body #header #logo {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
  }
  #kasimov-footer-contacts {
    display: block !important;
    text-align: center !important;
    padding: 16px 12px 8px !important;
  }
  #kasimov-footer-contacts .kasimov-contacts--footer {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
  }
  #kasimov-footer-contacts a {
    color: #555 !important;
    font-size: 14px !important;
    text-decoration: none !important;
  }
}

@media only screen and (min-width: 980px) {
  #kasimov-footer-contacts { display: none !important; }

  /* Desktop menu larger */
  html body #header #mainmenu ul#icemegamenu > li > a,
  html body #header #mainmenu ul.nav.menu > li > a {
    font-size: 17px !important;
    line-height: 1.3 !important;
    padding: 10px 16px !important;
    letter-spacing: 0.02em !important;
  }

  /* Promo cards: larger photos, aligned with text */
  #promo .kasimov-promo-card,
  #content #promo .kasimov-promo-card,
  .moduletable .kasimov-promo-card {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    height: 100% !important;
  }
  #promo .kasimov-promo-card__media,
  .kasimov-promo-card__media {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
    overflow: hidden !important;
  }
  #promo .kasimov-promo-card__media img,
  .kasimov-promo-card__media img,
  #promo .moduletable img,
  #content #promo img {
    width: 100% !important;
    max-width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 auto !important;
  }
  #promo .kasimov-promo-card__body,
  .kasimov-promo-card__body {
    padding: 0 8px !important;
    width: 100% !important;
  }
  #promo .kasimov-promo-card h3,
  .kasimov-promo-card h3 {
    margin: 0 0 8px !important;
    font-size: 18px !important;
  }
  #promo .kasimov-promo-card p,
  .kasimov-promo-card p {
    margin: 0 !important;
    color: #666 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }
  #promo .row,
  #content #promo .row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 0 !important;
  }
  #promo .row > [class*="span"],
  #content #promo .row > [class*="span"] {
    float: none !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Tour + reviews: equal cards, aligned */
  #kasimov-home-extras .kasimov-home-extras__grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 24px !important;
    align-items: stretch !important;
    justify-content: center !important;
  }
  #kasimov-home-extras .kasimov-side-card,
  #kasimov-home-extras .moduletable {
    flex: 1 1 0 !important;
    max-width: 520px !important;
    margin: 0 !important;
  }
  #kasimov-home-extras .kasimov-side-card__media {
    display: block !important;
    position: relative !important;
    min-height: 220px !important;
    height: 220px !important;
    overflow: hidden !important;
  }
  #kasimov-home-extras .kasimov-side-card__media > img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
  }
  #kasimov-home-extras .kasimov-side-card__overlay {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    gap: 4px !important;
    padding: 16px !important;
  }
  #kasimov-home-extras .kasimov-side-card__title {
    font-size: 22px !important;
    color: #fff !important;
  }
  #kasimov-home-extras .kasimov-side-card__text {
    font-size: 14px !important;
    color: #fff !important;
    opacity: 0.92 !important;
  }
  #kasimov-home-extras .kasimov-side-card__kicker,
  #kasimov-home-extras .kasimov-side-card__stars {
    display: none !important;
  }
}

/* Mail.ru icon size match siblings */
.kasimov-social .social_mailru img,
#social_icons .social_mailru img {
  width: 32px !important;
  height: 32px !important;
  border-radius: 6px !important;
  object-fit: contain !important;
}


/* === BATCH 20260919x === */
@media only screen and (min-width: 980px) {
  html body #header #mainmenu ul#icemegamenu > li > a {
    font-size: 18px !important;
    font-weight: 600 !important;
    padding: 12px 18px !important;
    text-shadow: 0 1px 4px rgba(0,0,0,.75) !important;
  }
  /* promo titles always visible under larger photos */
  #promo .kasimov-promo-card__body h3,
  #promo .kasimov-promo-card h3,
  #promo .kasimov-promo-card h3 a,
  #promo .kasimov-promo-card h3 span {
    display: block !important;
    color: #333 !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 18px !important;
  }
  #promo .kasimov-promo-card__body p {
    display: block !important;
    color: #666 !important;
    visibility: visible !important;
  }
  #promo .row > [class*="span"] {
    width: 33.33% !important;
    max-width: 33.33% !important;
    box-sizing: border-box !important;
    padding: 0 12px !important;
  }
  /* remove gray strip if any on desktop notice */
  html body #header #notice {
    background: transparent !important;
  }
}

@media only screen and (max-width: 979px) {
  html body #header #logo img {
    max-height: 150px !important;
  }
  /* ensure no gray/mud under logo */
  html body #header,
  html body #header #notice,
  html body #iceslideshow {
    background-color: transparent !important;
  }
  /* keep photo as bg via JS; avoid cream flash */
  html body #iceslideshow .carousel-inner {
    background-color: transparent !important;
  }
}


/* === BATCH 20260919y === */
@media only screen and (max-width: 979px) {
  html body #header #logo img,
  html body.kasimov-page-home #header #logo img {
    max-height: 168px !important;
    max-width: 92vw !important;
  }
  /* kill any blur/veil under logo */
  html body #iceslideshow,
  html body #iceslideshow *,
  html body #iceslideshow .iceslideshow-fill,
  html body #iceslideshow .item,
  html body #iceslideshow .carousel-inner {
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
  }
  html body #iceslideshow .carousel-caption,
  html body #iceslideshow .carousel-indicators {
    display: none !important;
  }
  /* menu toggle: not a gray full strip — frosted but clear */
  html body #header #mainmenu .mobile-nav-toggle {
    background: rgba(255,255,255,0.82) !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.18) !important;
  }
}

/* Desktop: ensure carousel items can fade (no frozen opacity) */
@media only screen and (min-width: 980px) {
  html body #iceslideshow .carousel-fade .item.active {
    opacity: 1;
  }
}


/* === BATCH 20260919z === */

/* About / restaurant / services mosaic — stable 2-col grid */
body.kasimov-page-about .kasimov-about-gallery,
body.kasimov-page-about .kasimov-gallery-mosaic,
#content .kasimov-gallery-mosaic,
#content .kasimov-about-gallery {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 20px 0 8px !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  min-height: 0 !important;
  height: auto !important;
  overflow: visible !important;
}
body.kasimov-page-about .kasimov-about-gallery > a,
body.kasimov-page-about .kasimov-gallery-mosaic > a,
#content .kasimov-gallery-mosaic > a,
#content .kasimov-about-gallery > a {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  overflow: hidden !important;
  max-width: none !important;
}
body.kasimov-page-about .kasimov-about-gallery img,
body.kasimov-page-about .kasimov-gallery-mosaic img,
#content .kasimov-gallery-mosaic img,
#content .kasimov-about-gallery img,
body.kasimov-page-about a[data-lightbox] img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  object-fit: cover !important;
  margin: 0 !important;
  display: block !important;
}
@media only screen and (max-width: 767px) {
  body.kasimov-page-about .kasimov-about-gallery,
  #content .kasimov-gallery-mosaic {
    grid-template-columns: 1fr !important;
  }
  body.kasimov-page-about .kasimov-about-gallery > a,
  #content .kasimov-gallery-mosaic > a {
    height: 200px !important;
  }
}

/* Empty mosaic shells never take space */
.kasimov-gallery-mosaic:empty { display: none !important; height: 0 !important; }

/* Side cards titles */
#kasimov-home-extras .kasimov-side-card__title {
  font-size: 20px !important;
  line-height: 1.25 !important;
  color: #fff !important;
}
#kasimov-home-extras .kasimov-side-card__text { display: none !important; }

/* Ensure about article text never clipped */
body.kasimov-page-about #content p,
body.kasimov-page-about .item-page p {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  color: #333 !important;
}


/* === MOSAIC TILE UNIFORM === */
#content .kasimov-gallery-mosaic > a,
#content .kasimov-gallery-mosaic > img,
#content .kasimov-gallery-mosaic > figure {
  height: 220px !important;
  overflow: hidden !important;
}
#content .kasimov-gallery-mosaic img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}


/* === MOSAIC EQUAL TILES === */
/* Kill first-child / 6n+1 hero-span that breaks mosaics */
#content .kasimov-gallery-mosaic > :first-child,
#content .kasimov-gallery-mosaic > :nth-child(6n+1),
body.kasimov-page-about .kasimov-mosaic > :first-child,
body.kasimov-page-about .kasimov-about-gallery > :first-child {
  grid-column: auto !important;
  grid-row: auto !important;
  width: 100% !important;
  height: 220px !important;
}
#content .kasimov-gallery-mosaic > :first-child img,
#content .kasimov-gallery-mosaic > :nth-child(6n+1) img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
}
#content .kasimov-gallery-mosaic {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: 240px !important;
}


/* === NO FROSTED MENU BAR === */
@media only screen and (min-width: 980px) {
  #header #mainmenu,
  #header #mainmenu .container,
  #header #mainmenu .icemegamenu,
  html body #header #mainmenu {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
  }
  html body #header::before {
    display: none !important;
    background: none !important;
  }
}


/* === BATCH 20260920d === */

/* --- Contacts always in footer; hide header notice everywhere --- */
html body #header #notice,
html body #header #notice.span4 {
  display: none !important;
}
#kasimov-footer-contacts {
  display: block !important;
  text-align: center !important;
  padding: 18px 12px 10px !important;
}
#kasimov-footer-contacts .kasimov-contacts--footer {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px 28px !important;
}
#kasimov-footer-contacts a {
  color: #555 !important;
  font-size: 14px !important;
  text-decoration: none !important;
}
#kasimov-footer-contacts a:hover {
  color: #9a1c1f !important;
}

/* --- Kill ice preload / loading ball --- */
.ice_preload,
#ice_slideshow_preload237,
#movingBallG,
.movingBallLineG,
.movingBallG {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  height: 0 !important;
  width: 0 !important;
  overflow: hidden !important;
}

/* --- Welcome overlay --- */
.kasimov-welcome {
  position: fixed;
  inset: 0;
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(12, 10, 8, 0.55);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.65s ease;
}
.kasimov-welcome.is-visible {
  opacity: 1;
  pointer-events: auto;
}
.kasimov-welcome.is-leaving {
  opacity: 0;
}
.kasimov-welcome__card {
  text-align: center;
  padding: 36px 48px;
  background: linear-gradient(160deg, rgba(255,252,247,0.96), rgba(245,236,220,0.92));
  border: 1px solid rgba(176, 140, 70, 0.45);
  box-shadow: 0 20px 60px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.7);
  max-width: min(560px, 90vw);
  transform: translateY(10px);
  animation: kasimovWelcomeIn 0.7s ease forwards;
}
.kasimov-welcome.is-leaving .kasimov-welcome__card {
  animation: kasimovWelcomeOut 0.65s ease forwards;
}
@keyframes kasimovWelcomeIn {
  from { opacity: 0; transform: translateY(18px) scale(0.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes kasimovWelcomeOut {
  to { opacity: 0; transform: translateY(-8px) scale(0.99); }
}
.kasimov-welcome__brand {
  margin: 0 0 10px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 13px;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: #9a1c1f;
}
.kasimov-welcome__text {
  margin: 0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(22px, 3.2vw, 34px);
  line-height: 1.35;
  color: #2a2218;
  font-weight: 500;
}

/* --- Home hero captions 2x larger --- */
#iceslideshow .carousel-caption,
#iceslideshow .carousel-caption .mod-description,
#iceslideshow .carousel-caption .mod-description p,
#iceslideshow .carousel-caption a {
  font-size: 48px !important;
  line-height: 1.25 !important;
}
#iceslideshow .carousel-caption .mod-description {
  padding: 12px 22px !important;
}
@media only screen and (max-width: 979px) {
  #iceslideshow .carousel-caption,
  #iceslideshow .carousel-caption .mod-description,
  #iceslideshow .carousel-caption .mod-description p,
  #iceslideshow .carousel-caption a {
    font-size: 26px !important;
    line-height: 1.3 !important;
  }
  /* clear muddy mobile hero — sharp photos under logo */
  html body #iceslideshow,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill {
    background-color: transparent !important;
    filter: none !important;
    -webkit-filter: none !important;
    opacity: 1 !important;
  }
  html body #iceslideshow .carousel-fade .item {
    filter: none !important;
  }
  html body #iceslideshow .carousel-fade .item.active {
    opacity: 1 !important;
  }
  html body #iceslideshow .iceslideshow-fill {
    background-size: cover !important;
    background-position: center center !important;
  }
  /* hide captions on mobile hero to keep logo clean — or keep smaller? user asked bigger on hero captions that exist; show them */
  #iceslideshow .carousel-caption {
    display: block !important;
    bottom: 70px !important;
    top: auto !important;
    z-index: 30 !important;
  }
}

/* --- Tour / reviews align --- */
@media only screen and (min-width: 980px) {
  #kasimov-home-extras {
    max-width: 1170px !important;
    margin: 28px auto 40px !important;
    padding: 0 15px !important;
  }
  #kasimov-home-extras .kasimov-home-extras__grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
    align-items: stretch !important;
  }
  #kasimov-home-extras .moduletable,
  #kasimov-home-extras .kasimov-side-card {
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
  }
  #kasimov-home-extras .kasimov-side-card__media {
    height: 220px !important;
    min-height: 220px !important;
  }
  #kasimov-home-extras .sidebar_module,
  #kasimov-home-extras .moduletable {
    background: transparent !important;
    padding: 0 !important;
    box-shadow: none !important;
  }
}

/* --- Contacts page --- */
.kasimov-contacts-page__block {
  margin: 0 0 22px !important;
}
.kasimov-contacts-page h3 {
  margin: 0 0 8px !important;
  color: #9a1c1f !important;
  font-size: 20px !important;
}
.kasimov-contacts-page a.kasimov-phone,
.kasimov-contacts-page a.kasimov-address__link {
  color: #333 !important;
  font-size: 17px !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
.kasimov-contacts-page__hint {
  font-size: 13px !important;
  color: #888 !important;
  margin-top: 4px !important;
}
.kasimov-social--contacts {
  display: flex !important;
  gap: 14px !important;
  list-style: none !important;
  margin: 10px 0 0 !important;
  padding: 0 !important;
}
.kasimov-social--contacts li {
  margin: 0 !important;
}
.kasimov-social--contacts img {
  width: 40px !important;
  height: 40px !important;
  border-radius: 8px !important;
}

/* --- Full-bleed page heroes --- */
body.kasimov-has-page-hero #headerimage,
body.kasimov-has-page-hero .kasimov-page-hero-host {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 100vh !important;
  min-height: 560px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
.kasimov-page-hero {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
}
.kasimov-page-hero__slide {
  position: absolute !important;
  inset: 0 !important;
  background-size: cover !important;
  background-position: center center !important;
  opacity: 0;
  transition: opacity 1.1s ease-in-out;
  z-index: 1;
}
.kasimov-page-hero__slide.is-active {
  opacity: 1;
  z-index: 2;
}
.kasimov-page-hero__caption {
  position: absolute;
  left: 50%;
  bottom: 12%;
  transform: translateX(-50%);
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(28px, 4vw, 52px);
  line-height: 1.2;
  text-align: center;
  text-shadow: 0 2px 18px rgba(0,0,0,.65);
  padding: 10px 22px;
  background: rgba(0,0,0,0.28);
  border-top: 1px solid rgba(255,255,255,0.35);
  border-bottom: 1px solid rgba(255,255,255,0.35);
  max-width: 90vw;
  white-space: nowrap;
}
body.kasimov-has-page-hero #header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 40 !important;
  background: transparent !important;
}
/* home still uses iceslideshow height rules */
body.kasimov-page-home.kasimov-has-page-hero #headerimage {
  height: auto !important;
  min-height: 0 !important;
}

/* speed: content images */
img {
  content-visibility: auto;
}


/* === PAGE HERO 100VH FORCE === */
html body.kasimov-has-page-hero #headerimage,
html body.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
html body.kasimov-page-restaurant #headerimage,
html body.kasimov-page-rooms #headerimage,
html body.kasimov-page-services #headerimage {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: none !important;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
html body.kasimov-has-page-hero #kasimov-page-hero {
  height: 100% !important;
  min-height: 100vh !important;
}
html body.kasimov-has-page-hero #headerimage > img,
html body.kasimov-has-page-hero #headerimage > div > img,
html body.kasimov-has-page-hero #headerimage > p {
  display: none !important;
}


/* === BATCH 20G POLISH === */

/* Home hero captions ~2x (desktop) */
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption .mod-description,
html body #iceslideshow .carousel-caption .mod-description p,
html body #iceslideshow .carousel-caption a {
  font-size: 52px !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
}
html body #iceslideshow .carousel-caption .mod-description {
  padding: 14px 28px !important;
}

/* Mobile captions larger + kill muddy gray under hero */
@media only screen and (max-width: 979px) {
  html body #iceslideshow .carousel-caption,
  html body #iceslideshow .carousel-caption .mod-description,
  html body #iceslideshow .carousel-caption .mod-description p,
  html body #iceslideshow .carousel-caption a {
    font-size: 32px !important;
    line-height: 1.2 !important;
  }

  /* Muddy fix: clear frosted overlays — DO NOT wipe slide background-image */
  html body #header {
    background: transparent !important;
    background-color: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
  }
  html body #iceslideshow,
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
  }
  html body #iceslideshow .item img,
  html body #iceslideshow .stretchMe img,
  html body #iceslideshow .item .stretchMe {
    opacity: 1 !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
  }
  /* Keep active slide fully opaque; no dimmed underlay */
  /* keep fades soft — never hide ALL slides */
  html body #iceslideshow .carousel-fade .item.active {
    opacity: 1 !important;
  }
  html body #iceslideshow .carousel-fade .item.active.left,
  html body #iceslideshow .carousel-fade .item.active.right {
    opacity: 1 !important;
  }
  html body #iceslideshow .carousel-fade .item:first-child {
    opacity: 1;
  }
  html body #iceslideshow .carousel-fade .item.active ~ .item:first-child,
  html body #iceslideshow .carousel-fade .item.active ~ .item {
    /* inactive siblings handled by base fade rules */
  }
  /* Page canvas under hero stays warm light, not muddy gray */
  html body.kasimov-page-home #header {
    background: transparent !important;
  }
  html body #headerimage {
    background-color: #1a1410 !important; /* deep warm base while image loads — not gray fog */
  }
}

/* Tour + reviews: equal desktop cards */
@media (min-width: 980px) {
  html body #extras,
  html body #extras .row-fluid,
  html body #content #extras {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 24px !important;
    width: 100% !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body #extras .moduletable,
  html body #extras .span6,
  html body #extras .span4,
  html body #extras [class*="span"] {
    float: none !important;
    width: calc(50% - 12px) !important;
    max-width: 520px !important;
    min-width: 320px !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
  }
  html body #extras .moduletable > div,
  html body #extras .custom,
  html body #extras .kasimov-extra-card,
  html body #extras a {
    height: 100% !important;
  }
  html body #extras img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    display: block !important;
  }
  html body #extras h3,
  html body #extras .module-title,
  html body #extras .kasimov-extra-title {
    text-align: center !important;
    margin: 12px 0 8px !important;
    min-height: 1.4em !important;
  }
}

/* Page heroes already 100vh — ensure mobile too */
@media only screen and (max-width: 979px) {
  html body.kasimov-has-page-hero #headerimage,
  html body.kasimov-has-page-hero #headerimage.kasimov-page-hero-host {
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
  }
  html body .kasimov-page-hero__caption {
    font-size: clamp(22px, 6vw, 34px) !important;
    white-space: normal !important;
    bottom: 18% !important;
  }
}

/* Kill any remaining ice preload bar */
#ice_preload,
.ice_preload,
#iceslideshow .preload,
.iceslideshow-preload,
#notice,
#notice.moduletable {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Speed: hero images GPU */
#iceslideshow .item img,
.kasimov-page-hero__slide {
  will-change: opacity;
  transform: translateZ(0);
}


/* === BATCH 20H ALIGN === */

/* Desktop: phones/address ONLY in footer — never in header */
@media (min-width: 980px) {
  html body #header #notice,
  html body #header .kasimov-contacts,
  html body #header .kasimov-contacts--cluster,
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link,
  html body #header .header-right .kasimov-contacts {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
}

/* Tour + reviews: equal paired cards */
@media (min-width: 980px) {
  html body #extras {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
    align-items: stretch !important;
    max-width: 1160px !important;
    margin: 36px auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
  }
  html body #extras > .row-fluid,
  html body #extras > .row {
    display: contents !important;
  }
  html body #extras .moduletable,
  html body #extras .span6,
  html body #extras [class*="span"] {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    min-height: 320px !important;
    height: 100% !important;
    box-sizing: border-box !important;
  }
  /* hide uneven module titles — card text is enough */
  html body #extras .moduletable > h3,
  html body #extras .module-title,
  html body #extras .moduletable > .module_title {
    display: none !important;
  }
  html body #extras .custom,
  html body #extras .kasimov-side-mod,
  html body #extras .moduletable > div {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    margin: 0 !important;
  }
  html body #extras a.kasimov-side-mod,
  html body #extras .kasimov-side-mod > a,
  html body #extras .custom > a {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    flex: 1 1 auto !important;
    min-height: 300px !important;
    height: 300px !important;
    margin: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    background-size: cover !important;
    background-position: center !important;
  }
  html body #extras img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    margin: 0 !important;
  }
}

/* Hero captions always readable above fold */
html body #iceslideshow .carousel-caption {
  z-index: 40 !important;
  bottom: 8% !important;
  top: auto !important;
  text-shadow: 0 2px 16px rgba(0,0,0,.75), 0 0 2px rgba(0,0,0,.9) !important;
}
html body #iceslideshow .carousel-caption .mod-description {
  background: rgba(0,0,0,0.32) !important;
  padding: 12px 26px !important;
  display: inline-block !important;
}

/* Mobile muddy: dark warm underlay + crisp images */
@media only screen and (max-width: 979px) {
  html body #headerimage,
  html body #iceslideshow,
  html body #iceslideshow .carousel-inner {
    background-color: #2a1f18 !important;
  }
  html body #iceslideshow .item img {
    opacity: 1 !important;
    filter: none !important;
    -webkit-filter: none !important;
  }
}


/* === BATCH 20I SIDECARDS === */
@media (min-width: 980px) {
  html body #kasimov-home-extras,
  html body #kasimov-home-extras.container {
    max-width: 1160px !important;
    margin: 40px auto !important;
    padding: 0 20px !important;
    box-sizing: border-box !important;
  }
  html body #kasimov-home-extras .kasimov-home-extras__grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
    align-items: stretch !important;
    width: 100% !important;
  }
  html body #kasimov-home-extras .sidebar_module,
  html body #kasimov-home-extras .kasimov-side-mod {
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
  }
  html body #kasimov-home-extras .sidebar_module > h3,
  html body #kasimov-home-extras .sidebar_module .module-title,
  html body #kasimov-home-extras h3 {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  html body #kasimov-home-extras .sidebar_module_content,
  html body #kasimov-home-extras .custom {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body #kasimov-home-extras .kasimov-side-card {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    position: relative !important;
  }
  html body #kasimov-home-extras .kasimov-side-card__media {
    flex: 1 1 auto !important;
    height: 220px !important;
    aspect-ratio: auto !important;
    min-height: 300px !important;
  }
  html body #kasimov-home-extras .kasimov-side-card__media img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    display: block !important;
  }
  html body #kasimov-home-extras .kasimov-side-card__body {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 2 !important;
    padding: 18px 20px !important;
    background: linear-gradient(transparent, rgba(0,0,0,.72)) !important;
    color: #fff !important;
  }
  html body #kasimov-home-extras .kasimov-side-card__title,
  html body #kasimov-home-extras .kasimov-side-card__cta {
    color: #fff !important;
    text-align: center !important;
  }
}


/* === BATCH 20K HERO ACTIVE === */
@media only screen and (max-width: 979px) {
  html body #iceslideshow,
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner {
    min-height: 70vh !important;
    background-color: #1a1410 !important;
  }
  html body #iceslideshow .carousel-fade .item.active,
  html body #iceslideshow .carousel-fade .item.active .iceslideshow-fill {
    opacity: 1 !important;
    visibility: visible !important;
  }
  html body #iceslideshow .item.active img,
  html body #iceslideshow .item.active .stretchMe img {
    opacity: 1 !important;
    visibility: visible !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }
}

/* === BATCH 20L SLIDE BG === */
html body #iceslideshow .iceslideshow-fill,
html body #iceslideshow .item .iceslideshow-fill,
html body #iceslideshow .item.active .iceslideshow-fill {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
  visibility: visible !important;
}


/* === BATCH 20M CAPTION WHITE === */
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption a,
html body #iceslideshow .carousel-caption .mod-description,
html body #iceslideshow .carousel-caption .mod-description p,
html body #iceslideshow .carousel-caption .mod-description a {
  color: #fff !important;
  text-shadow: 0 2px 18px rgba(0,0,0,.85), 0 1px 2px rgba(0,0,0,.9) !important;
}


/* === BATCH 20N WELCOME ONCE === */
html body #iceslideshow .carousel-caption {
  z-index: 50 !important;
  bottom: 10% !important;
  top: auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  text-align: center !important;
  pointer-events: none !important;
}
html body #iceslideshow .carousel-caption .mod-description {
  display: inline-block !important;
  background: rgba(0,0,0,0.45) !important;
  padding: 14px 28px !important;
  border-top: 1px solid rgba(255,255,255,0.35) !important;
  border-bottom: 1px solid rgba(255,255,255,0.35) !important;
  max-width: 90vw !important;
}
.kasimov-welcome {
  display: flex !important;
}
.kasimov-welcome:not(.is-visible) {
  opacity: 0;
  pointer-events: none;
}
.kasimov-welcome.is-visible {
  opacity: 1 !important;
  pointer-events: auto !important;
}


/* === BATCH 20O CAPTION IN HERO === */
html body #iceslideshow .carousel-inner,
html body #iceslideshow .item {
  position: relative !important;
  overflow: hidden !important;
}
html body #iceslideshow .carousel-caption {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  bottom: 72px !important;
  top: auto !important;
  transform: translateX(-50%) !important;
  width: auto !important;
  max-width: min(920px, 92vw) !important;
  margin: 0 !important;
  z-index: 60 !important;
  pointer-events: none !important;
}
html body #iceslideshow .carousel-caption .mod-description,
html body #iceslideshow .carousel-caption .mod-description p,
html body #iceslideshow .carousel-caption a {
  color: #fff !important;
  font-size: 52px !important;
  line-height: 1.15 !important;
}
@media only screen and (max-width: 979px) {
  html body #iceslideshow .carousel-caption {
    bottom: 86px !important; /* above Меню bar */
  }
  html body #iceslideshow .carousel-caption .mod-description,
  html body #iceslideshow .carousel-caption .mod-description p,
  html body #iceslideshow .carousel-caption a {
    font-size: 28px !important;
  }
}

/* Home hero a bit taller so captions breathe */
@media (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow .carousel,
  html body.kasimov-page-home #iceslideshow .carousel-inner,
  html body.kasimov-page-home #iceslideshow .item {
    height: 85vh !important;
    min-height: 85vh !important;
  }
}


/* === BATCH 20P HERO CAP FINAL === */
html body.kasimov-page-home #iceslideshow,
html body.kasimov-page-home #iceslideshow.container,
html body.kasimov-page-home #iceslideshow .carousel,
html body.kasimov-page-home #iceslideshow .carousel-inner,
html body.kasimov-page-home #iceslideshow .item,
html body.kasimov-page-home #iceslideshow .item .iceslideshow-fill {
  height: 85vh !important;
  min-height: 85vh !important;
  max-height: none !important;
}
html body #iceslideshow .carousel-caption {
  position: absolute !important;
  bottom: 90px !important;
  top: auto !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 70 !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow .carousel,
  html body.kasimov-page-home #iceslideshow .carousel-inner,
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .item .iceslideshow-fill {
    height: 70vh !important;
    min-height: 70vh !important;
  }
  html body #iceslideshow .carousel-caption {
    bottom: 70px !important;
  }
}


/* === BATCH 21A UX === */

/* Side cards: black captions UNDER photos */
html body #kasimov-home-extras .kasimov-side-card {
  display: flex !important;
  flex-direction: column !important;
  text-decoration: none !important;
  color: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
}
html body #kasimov-home-extras .kasimov-side-card__media {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 220px !important;
  min-height: 220px !important;
  overflow: hidden !important;
  aspect-ratio: auto !important;
}
html body #kasimov-home-extras .kasimov-side-card__media img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  display: block !important;
  position: static !important;
}
html body #kasimov-home-extras .kasimov-side-card__overlay,
html body #kasimov-home-extras .kasimov-side-card__veil,
html body #kasimov-home-extras .kasimov-side-card__cta,
html body #kasimov-home-extras .kasimov-side-card__badge,
html body #kasimov-home-extras .kasimov-side-card__body {
  display: none !important;
}
html body #kasimov-home-extras .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__title {
  display: block !important;
  position: static !important;
  color: #111 !important;
  background: none !important;
  text-shadow: none !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  text-align: center !important;
  padding: 14px 8px 4px !important;
  margin: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Welcome: no panel, stylish type, slide from sides */
.kasimov-welcome {
  position: fixed !important;
  inset: 0 !important;
  z-index: 100000 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  background-color: transparent !important;
  pointer-events: none !important;
  opacity: 0;
  overflow: hidden !important;
}
.kasimov-welcome.is-visible {
  opacity: 1 !important;
}
.kasimov-welcome__card {
  display: none !important;
}
.kasimov-welcome__brand {
  display: none !important;
}
.kasimov-welcome__text {
  margin: 0 !important;
  padding: 0 24px !important;
  max-width: min(920px, 94vw) !important;
  text-align: center !important;
  font-family: "Cormorant Garamond", "Times New Roman", serif !important;
  font-size: clamp(28px, 4.6vw, 56px) !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: 0.04em !important;
  line-height: 1.25 !important;
  color: #fff !important;
  text-shadow:
    0 2px 24px rgba(0,0,0,.55),
    0 1px 2px rgba(0,0,0,.75) !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 0;
  will-change: transform, opacity;
}
.kasimov-welcome.from-left .kasimov-welcome__text {
  animation: kasimovSlideInLeft 0.95s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.from-right .kasimov-welcome__text {
  animation: kasimovSlideInRight 0.95s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.from-top .kasimov-welcome__text {
  animation: kasimovSlideInTop 0.95s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.from-bottom .kasimov-welcome__text {
  animation: kasimovSlideInBottom 0.95s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.leave-left .kasimov-welcome__text {
  animation: kasimovSlideOutLeft 0.85s cubic-bezier(.4,0,.2,1) forwards;
}
.kasimov-welcome.leave-right .kasimov-welcome__text {
  animation: kasimovSlideOutRight 0.85s cubic-bezier(.4,0,.2,1) forwards;
}
.kasimov-welcome.leave-top .kasimov-welcome__text {
  animation: kasimovSlideOutTop 0.85s cubic-bezier(.4,0,.2,1) forwards;
}
.kasimov-welcome.leave-bottom .kasimov-welcome__text {
  animation: kasimovSlideOutBottom 0.85s cubic-bezier(.4,0,.2,1) forwards;
}
@keyframes kasimovSlideInLeft {
  from { opacity: 0; transform: translateX(-120vw); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes kasimovSlideInRight {
  from { opacity: 0; transform: translateX(120vw); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes kasimovSlideInTop {
  from { opacity: 0; transform: translateY(-80vh); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes kasimovSlideInBottom {
  from { opacity: 0; transform: translateY(80vh); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes kasimovSlideOutLeft {
  from { opacity: 1; transform: translateX(0); }
  to { opacity: 0; transform: translateX(-110vw); }
}
@keyframes kasimovSlideOutRight {
  from { opacity: 1; transform: translateX(0); }
  to { opacity: 0; transform: translateX(110vw); }
}
@keyframes kasimovSlideOutTop {
  from { opacity: 1; transform: translateY(0); }
  to { opacity: 0; transform: translateY(-70vh); }
}
@keyframes kasimovSlideOutBottom {
  from { opacity: 1; transform: translateY(0); }
  to { opacity: 0; transform: translateY(70vh); }
}

/* Main menu centered — moved to desktop-only in BATCH 23 */


/* Lightbox: enlarge photos (never shrink) */
html body .lightbox,
html body #lightbox {
  z-index: 100050 !important;
}
html body .lightbox .lb-outerContainer,
html body #lightbox .lb-outerContainer {
  max-width: 92vw !important;
  max-height: 88vh !important;
}
html body .lightbox .lb-image,
html body #lightbox .lb-image,
html body img.lb-image {
  width: auto !important;
  height: auto !important;
  max-width: min(92vw, 1400px) !important;
  max-height: 85vh !important;
  object-fit: contain !important;
}
/* Prevent about-gallery rules from crushing lightbox images */
html body.kasimov-page-about .lightbox img,
html body.kasimov-page-about .lightbox .lb-image,
html body.kasimov-page-about img.lb-image {
  width: auto !important;
  height: auto !important;
  max-width: min(92vw, 1400px) !important;
  max-height: 85vh !important;
  object-fit: contain !important;
}
html body .lb-dataContainer {
  max-width: 92vw !important;
}


/* === BATCH 21B LIGHTBOX === */
html body .lightbox .lb-outerContainer,
html body #lightbox .lb-outerContainer,
html body .lb-outerContainer {
  min-width: min(92vw, 900px) !important;
  min-height: 50vh !important;
}
html body .lightbox .lb-image,
html body img.lb-image {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}


/* === BATCH 21D WELCOME WORDS === */
.kasimov-welcome {
  flex-wrap: wrap !important;
  gap: 0.28em 0.35em !important;
  padding: 0 5vw !important;
  background: transparent !important;
}
.kasimov-welcome__text { display: none !important; }
.kasimov-welcome__word {
  display: inline-block !important;
  font-family: "Cormorant Garamond", "Times New Roman", serif !important;
  font-size: clamp(28px, 4.8vw, 58px) !important;
  font-weight: 500 !important;
  font-style: italic !important;
  letter-spacing: 0.03em !important;
  line-height: 1.2 !important;
  color: #fff !important;
  text-shadow: 0 2px 22px rgba(0,0,0,.6), 0 1px 2px rgba(0,0,0,.8) !important;
  background: none !important;
  opacity: 0;
  will-change: transform, opacity;
}
.kasimov-welcome.is-visible .kasimov-welcome__word.w-left {
  animation: kasimovWordInLeft 0.85s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.is-visible .kasimov-welcome__word.w-right {
  animation: kasimovWordInRight 0.85s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.is-visible .kasimov-welcome__word.w-top {
  animation: kasimovWordInTop 0.85s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.is-visible .kasimov-welcome__word.w-bottom {
  animation: kasimovWordInBottom 0.85s cubic-bezier(.22,.61,.36,1) forwards;
}
.kasimov-welcome.is-leaving .kasimov-welcome__word.w-leave-left {
  animation: kasimovWordOutLeft 0.8s cubic-bezier(.4,0,.2,1) forwards;
}
.kasimov-welcome.is-leaving .kasimov-welcome__word.w-leave-right {
  animation: kasimovWordOutRight 0.8s cubic-bezier(.4,0,.2,1) forwards;
}
.kasimov-welcome.is-leaving .kasimov-welcome__word.w-leave-top {
  animation: kasimovWordOutTop 0.8s cubic-bezier(.4,0,.2,1) forwards;
}
.kasimov-welcome.is-leaving .kasimov-welcome__word.w-leave-bottom {
  animation: kasimovWordOutBottom 0.8s cubic-bezier(.4,0,.2,1) forwards;
}
@keyframes kasimovWordInLeft { from { opacity:0; transform: translateX(-70vw); } to { opacity:1; transform:none; } }
@keyframes kasimovWordInRight { from { opacity:0; transform: translateX(70vw); } to { opacity:1; transform:none; } }
@keyframes kasimovWordInTop { from { opacity:0; transform: translateY(-50vh); } to { opacity:1; transform:none; } }
@keyframes kasimovWordInBottom { from { opacity:0; transform: translateY(50vh); } to { opacity:1; transform:none; } }
@keyframes kasimovWordOutLeft { to { opacity:0; transform: translateX(-60vw); } }
@keyframes kasimovWordOutRight { to { opacity:0; transform: translateX(60vw); } }
@keyframes kasimovWordOutTop { to { opacity:0; transform: translateY(-40vh); } }
@keyframes kasimovWordOutBottom { to { opacity:0; transform: translateY(40vh); } }


/* === BATCH 22A FIXES === */

/* Side cards: NO hover background / lift / darken */
html body #kasimov-home-extras .kasimov-side-card:hover,
html body #kasimov-home-extras .sidebar_module:hover,
html body #kasimov-home-extras .kasimov-side-mod:hover,
html body #sidebar .kasimov-side-card:hover,
html body .kasimov-side-card:hover,
html body a.kasimov-side-card:hover,
html body a.kasimov-side-card:focus,
html body a.kasimov-side-card:active {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  transform: none !important;
  filter: none !important;
  outline: none !important;
}
html body #kasimov-home-extras .kasimov-side-card:hover .kasimov-side-card__media,
html body .kasimov-side-card:hover .kasimov-side-card__media,
html body .kasimov-side-card:hover .kasimov-side-card__caption {
  background: transparent !important;
  background-color: transparent !important;
}
html body .kasimov-side-card:hover img,
html body #kasimov-home-extras .kasimov-side-card:hover .kasimov-side-card__media img {
  transform: none !important;
  filter: none !important;
}

/* Home hero FULL VIEWPORT */
html body.kasimov-page-home #iceslideshow,
html body.kasimov-page-home #iceslideshow.container,
html body.kasimov-page-home #iceslideshow .carousel,
html body.kasimov-page-home #iceslideshow .carousel-inner,
html body.kasimov-page-home #iceslideshow .item,
html body.kasimov-page-home #iceslideshow .item .iceslideshow-fill {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: none !important;
}
html body.kasimov-page-home #header {
  min-height: 100vh !important;
}

/* Restaurant (and other page heroes) FULL VIEWPORT */
html body.kasimov-page-restaurant.kasimov-has-page-hero #headerimage,
html body.kasimov-page-restaurant #headerimage,
html body.kasimov-has-page-hero #headerimage,
html body.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
html body.kasimov-page-restaurant #kasimov-page-hero,
html body.kasimov-has-page-hero #kasimov-page-hero {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: none !important;
}

/* Remove leaf decorations site-wide */
html body .bottomsep,
html body hr.bottomsep,
html body .topsep,
html body hr.topsep {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  background-image: none !important;
}
html body .moduletable > h3,
html body h3.module_title,
html body .module_title,
html body .sidebar_module_heading,
html body h3.sidebar_module_heading,
html body .moduletable_heading {
  background-image: none !important;
  background: none !important;
}
/* kill any leftover leaf tile backgrounds */
html body,
html body.site,
html #wrapper,
html #container,
html #main,
html #content,
html #middlecol,
html #footer {
  background-image: none !important;
}


/* === BATCH 22B CLEAN === */

/* Hide ALL static header images under page heroes (keep only carousel slides) */
html body.kasimov-has-page-hero #headerimage > img,
html body.kasimov-has-page-hero #headerimage > div > img,
html body.kasimov-has-page-hero #headerimage > .custom,
html body.kasimov-has-page-hero #headerimage > .custom img,
html body.kasimov-has-page-hero #headerimage > p,
html body.kasimov-has-page-hero #headerimage .stretchMe,
html body.kasimov-page-restaurant #headerimage > .custom,
html body.kasimov-page-restaurant #headerimage img:not(.kasimov-keep) {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  max-height: 0 !important;
  opacity: 0 !important;
  position: absolute !important;
  pointer-events: none !important;
}

/* Flat clean page canvas — no leaf tiles / textures */
html,
html body,
html body.site,
html body #wrapper,
html body #container,
html body #main,
html body #footer,
html body #bottom {
  background: #f3f1ec !important;
  background-color: #f3f1ec !important;
  background-image: none !important;
}
html body #content,
html body #middlecol,
html body .container#content {
  background: #fff !important;
  background-image: none !important;
}

/* Leaf icons in separators / headings — gone */
html body .bottomsep,
html body .topsep,
html body hr.bottomsep,
html body hr.topsep,
html body [style*="bottom_sep"],
html body [style*="top_sep"],
html body [style*="moduletable_heading"] {
  display: none !important;
  background: none !important;
  background-image: none !important;
}
html body .moduletable > h3,
html body h3.module_title,
html body .module_title,
html body h3.sidebar_module_heading {
  background: none !important;
  background-image: none !important;
  padding-left: 0 !important;
}

/* Ensure page-hero slides never tile */
html body .kasimov-page-hero__slide {
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}


/* === BATCH 23 MENU FIX === */

@media (min-width: 980px) {
  html body #header #mainmenu,
  html body #mainmenu {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
  html body #mainmenu ul#icemegamenu,
  html body #header #mainmenu ul#icemegamenu,
  html body #header #icemegamenu {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    margin: 0 auto !important;
  }
  html body #header #mainmenu .mobile-nav-toggle {
    display: none !important;
  }
}

@media only screen and (max-width: 979px) {
  html body #header #mainmenu,
  html body #mainmenu {
    display: block !important;
    position: absolute !important;
    top: 52px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 10px !important;
    z-index: 60 !important;
    background: transparent !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    box-sizing: border-box !important;
  }
  html body #header #mainmenu .container,
  html body #mainmenu .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body #header #mainmenu .mobile-nav-toggle,
  html body #mainmenu .mobile-nav-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    margin: 0 !important;
    min-height: 44px !important;
    padding: 10px 14px !important;
    background: rgba(255,255,255,0.94) !important;
    color: #222 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.18) !important;
    border-radius: 4px !important;
  }
  html body #header #mainmenu ul#icemegamenu,
  html body #header #mainmenu ul.nav.menu,
  html body #mainmenu ul#icemegamenu,
  html body #mainmenu ul.nav.menu,
  html body #header #icemegamenu {
    display: none !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    width: 100% !important;
    margin: 6px 0 0 !important;
    padding: 6px 0 !important;
    background: rgba(255,255,255,0.97) !important;
    box-shadow: 0 8px 24px rgba(0,0,0,.18) !important;
    border-radius: 4px !important;
  }
  html body #header #mainmenu.is-open ul#icemegamenu,
  html body #header #mainmenu.is-open ul.nav.menu,
  html body #mainmenu.is-open ul#icemegamenu,
  html body #mainmenu.is-open ul.nav.menu {
    display: flex !important;
  }
  html body #header #mainmenu ul#icemegamenu > li,
  html body #mainmenu ul#icemegamenu > li {
    display: block !important;
    width: 100% !important;
    float: none !important;
    text-align: left !important;
  }
  html body #header #mainmenu ul#icemegamenu > li > a,
  html body #mainmenu ul#icemegamenu > li > a {
    display: block !important;
    width: 100% !important;
    padding: 12px 16px !important;
    color: #222 !important;
    text-shadow: none !important;
    text-align: left !important;
    font-size: 16px !important;
  }
}

html body #icecarousel .slider_heading,
html body #icecarousel .slider_heading h3,
html body .slider_heading,
html body .slider_heading h3 {
  color: #fff !important;
  background: #2a2420 !important;
  background-image: none !important;
  text-shadow: none !important;
  padding: 14px 18px !important;
  margin: 0 0 12px !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: center !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  line-height: 1.25 !important;
}

html body #icecarousel h4,
html body #icecarousel h4 a,
html body #icecarousel h4 a.icecarousel-title,
html body #icecarousel .icecarousel-title,
html body #icecarousel .kasimov-menu-label,
html body #icecarousel h4.kasimov-menu-title-hide {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #fff !important;
  text-shadow: 0 1px 8px rgba(0,0,0,.85) !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-align: center !important;
  z-index: 5 !important;
}
html body #icecarousel .icecarousel-inner,
html body #icecarousel .lof-inner,
html body #icecarousel li {
  position: relative !important;
}
html body #icecarousel h4,
html body #icecarousel .kasimov-menu-label {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  margin: 0 !important;
  padding: 22px 10px 12px !important;
  background: linear-gradient(transparent, rgba(0,0,0,.75)) !important;
  box-sizing: border-box !important;
}
html body #icecarousel h4 a {
  background: none !important;
  padding: 0 !important;
  color: #fff !important;
}


/* === BATCH 23b MENU TITLES === */
/* Captions were force-hidden (opacity:0) — restore category names on cards */
html body #icecarousel .icecarousel-caption,
html body #icecarousel .icecarousel-inner .icecarousel-caption,
html body #icecarousel .icecarousel-inner:hover .icecarousel-caption,
html body #icecarousel .icecarousel .icecarousel-inner .icecarousel-caption,
html body #icecarousel .icecarousel .icecarousel-inner:hover .icecarousel-caption {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  pointer-events: auto !important;
}

html body #icecarousel .icecarousel-caption .icecarousel-description,
html body #icecarousel .icecarousel-inner:hover .icecarousel-caption .icecarousel-description {
  display: none !important;
}

html body #icecarousel h4,
html body #icecarousel h4.kasimov-menu-title-hide,
html body #icecarousel .kasimov-menu-title-hide,
html body #icecarousel .kasimov-menu-label {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 12 !important;
  margin: 0 !important;
  padding: 14px 12px !important;
  background: rgba(28, 22, 18, 0.92) !important;
  background-image: none !important;
  color: #fff !important;
  text-align: center !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  text-shadow: none !important;
  box-sizing: border-box !important;
}

html body #icecarousel h4 a,
html body #icecarousel h4 a:link,
html body #icecarousel h4 a:visited,
html body #icecarousel h4 a:hover,
html body #icecarousel h4 a.icecarousel-title,
html body #icecarousel .icecarousel-title {
  display: block !important;
  color: #fff !important;
  background: transparent !important;
  text-decoration: none !important;
  font-size: inherit !important;
  font-weight: inherit !important;
  text-shadow: none !important;
}

html body #icecarousel .slider_heading,
html body #icecarousel .slider_heading h3,
html body .slider_heading,
html body .slider_heading h3 {
  color: #fff !important;
  background: #2a2420 !important;
  background-image: none !important;
  text-shadow: none !important;
  padding: 14px 18px !important;
  margin: 0 0 12px !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  text-align: center !important;
  font-size: clamp(22px, 3vw, 32px) !important;
  line-height: 1.25 !important;
}

html body #icecarousel .icecarousel-inner {
  overflow: hidden !important;
  position: relative !important;
}


/* === BATCH 23c MENU STRIP === */
html body #icecarousel196.kasimov-menu-strip,
html body .icecarousel.kasimov-menu-strip {
  overflow: hidden !important;
  min-height: 200px !important;
  height: auto !important;
}
html body #icecarousel196.kasimov-menu-strip .flex-direction-nav,
html body #icecarousel196.kasimov-menu-strip .flex-control-nav,
html body .icecarousel.kasimov-menu-strip .flex-direction-nav {
  display: none !important;
}
html body #icecarousel196.kasimov-menu-strip .flex-viewport,
html body .icecarousel.kasimov-menu-strip .flex-viewport {
  overflow: hidden !important;
  height: 190px !important;
  min-height: 190px !important;
  max-height: 190px !important;
}
html body #icecarousel196.kasimov-menu-strip .slides.kasimov-strip-track,
html body .icecarousel.kasimov-menu-strip .slides.kasimov-strip-track {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  width: max-content !important;
  height: 190px !important;
  margin: 0 !important;
  padding: 0 !important;
  animation: kasimovMenuStrip 32s linear infinite !important;
  will-change: transform;
  transform: translateZ(0);
}
html body #icecarousel196.kasimov-menu-strip .slides.kasimov-strip-track > div,
html body #icecarousel196.kasimov-menu-strip .slides.kasimov-strip-track > li,
html body .icecarousel.kasimov-menu-strip .slides.kasimov-strip-track > div {
  flex: 0 0 280px !important;
  width: 280px !important;
  max-width: 280px !important;
  height: 190px !important;
  min-height: 190px !important;
  float: none !important;
  display: block !important;
  position: relative !important;
  margin: 0 12px 0 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
html body #icecarousel196.kasimov-menu-strip .icecarousel-inner,
html body .icecarousel.kasimov-menu-strip .icecarousel-inner {
  position: relative !important;
  width: 100% !important;
  height: 190px !important;
  overflow: hidden !important;
}
html body #icecarousel196.kasimov-menu-strip img,
html body .icecarousel.kasimov-menu-strip img {
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  object-fit: cover !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body #icecarousel196.kasimov-menu-strip:hover .slides.kasimov-strip-track,
html body .icecarousel.kasimov-menu-strip:hover .slides.kasimov-strip-track {
  animation-play-state: paused !important;
}
@keyframes kasimovMenuStrip {
  from { transform: translate3d(0,0,0); }
  to { transform: translate3d(-50%,0,0); }
}
@media (prefers-reduced-motion: reduce) {
  html body #icecarousel196.kasimov-menu-strip .slides.kasimov-strip-track {
    animation: none !important;
  }
}


/* === BATCH 23e LOGO FIX === */
/* Big centered hero logo ONLY on home. Other pages: compact top logo, no mid-page float. */

/* Kill absolute centering / % top for non-home pages */
html body:not(.kasimov-page-home) #header #logo,
html body:not(.kasimov-page-home) #header #logo.span4 {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  -webkit-transform: none !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 10px auto 8px !important;
  padding: 0 !important;
  text-align: center !important;
  z-index: 45 !important;
  order: 2 !important;
}

html body:not(.kasimov-page-home) #header #logo img,
html body:not(.kasimov-page-home) #header #logo .logo {
  max-height: 72px !important;
  height: auto !important;
  width: auto !important;
  max-width: 70vw !important;
  filter: drop-shadow(0 2px 8px rgba(0,0,0,.4)) !important;
}

/* Non-home header: not a full-viewport overlay cage */
html body:not(.kasimov-page-home) #header,
html body.kasimov-has-page-hero:not(.kasimov-page-home) #header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  z-index: 50 !important;
  background: transparent !important;
  pointer-events: none !important;
  overflow: visible !important;
}
html body:not(.kasimov-page-home) #header .container,
html body:not(.kasimov-page-home) #header .container > .row {
  height: auto !important;
  min-height: 0 !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
html body:not(.kasimov-page-home) #header a,
html body:not(.kasimov-page-home) #header button,
html body:not(.kasimov-page-home) #header #logo,
html body:not(.kasimov-page-home) #header #mainmenu,
html body:not(.kasimov-page-home) #header .mobile-nav-toggle {
  pointer-events: auto !important;
}

/* Home keeps the large centered logo on hero */
html body.kasimov-page-home #header #logo,
html body.kasimov-page-home #header #logo.span4 {
  position: absolute !important;
  top: 46% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  -webkit-transform: translate(-50%, -50%) !important;
  z-index: 45 !important;
  margin: 0 !important;
  text-align: center !important;
}
html body.kasimov-page-home #header #logo img {
  max-height: 150px !important;
  width: auto !important;
  max-width: 88vw !important;
  filter: drop-shadow(0 3px 14px rgba(0,0,0,.45)) !important;
}

@media only screen and (min-width: 980px) {
  html body:not(.kasimov-page-home) #header #logo img {
    max-height: 90px !important;
  }
  html body.kasimov-page-home #header #logo img {
    max-height: 130px !important;
  }
}


/* === BATCH 24 POLISH === */

/* ---------- 1) Logo ONLY on home ---------- */
html body:not(.kasimov-page-home) #header #logo,
html body:not(.kasimov-page-home) #header #logo.span4,
html body:not(.kasimov-page-home) #header #logo img,
html body:not(.kasimov-page-home) #header #logo .logo {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
}

html body.kasimov-page-home #header #logo,
html body.kasimov-page-home #header #logo.span4 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  top: 46% !important;
  left: 50% !important;
  right: auto !important;
  transform: translate(-50%, -50%) !important;
  -webkit-transform: translate(-50%, -50%) !important;
  z-index: 45 !important;
  height: auto !important;
  width: auto !important;
  max-width: 78% !important;
  margin: 0 !important;
  left: 50% !important;
}

html body.kasimov-page-home #header #logo img,
html body.kasimov-page-home #header #logo .logo {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-height: 110px !important;
  width: auto !important;
  max-width: 88vw !important;
  height: auto !important;
  margin: 0 auto !important;
  filter: drop-shadow(0 3px 14px rgba(0,0,0,.45)) !important;
}

/* ---------- 2) Premium dark canvas (beat cream #f3f1ec) ---------- */
html,
html body,
html body.site,
html body.com_content,
html body #wrapper,
html body #container,
html body #main,
html body #bottom,
html body #footer,
html body #copyright {
  background-color: #100e0c !important;
  background-image:
    radial-gradient(ellipse 110% 70% at 50% -15%, rgba(151, 0, 0, 0.22), transparent 58%),
    radial-gradient(ellipse 80% 55% at 110% 30%, rgba(201, 169, 110, 0.14), transparent 52%),
    radial-gradient(ellipse 70% 50% at -10% 85%, rgba(70, 48, 32, 0.45), transparent 50%),
    linear-gradient(168deg, #1a1613 0%, #100e0c 42%, #2b221c 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

html body::before {
  content: "" !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.05 !important;
  background-image: none !important; /* noise removed */
  background-size: 180px 180px !important;
}

html body > * {
  position: relative;
  z-index: 1;
}

html body #content,
html body #content.container,
html body section#content {
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.45) !important;
  border-radius: 4px !important;
}

html body #footer,
html body #footer a,
html body #copyright,
html body #copyright a,
html body #kasimov-footer-contacts,
html body #kasimov-footer-contacts a {
  background: transparent !important;
  color: rgba(255, 245, 230, 0.82) !important;
}

html body #headerimage-noimage {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  background: none !important;
}

/* ---------- 3) Mosaic galleries — equal tidy tiles ---------- */
html body.kasimov-page-about .kasimov-about-gallery,
html body.kasimov-page-about .kasimov-gallery-mosaic,
html body.kasimov-page-about .kasimov-mosaic,
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
html body.kasimov-page-services #content .kasimov-gallery-mosaic,
html body #content .kasimov-gallery-mosaic {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: 220px !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 24px 0 16px !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  box-sizing: border-box !important;
}

html body.kasimov-page-about .kasimov-about-gallery > a,
html body.kasimov-page-about .kasimov-about-gallery > img,
html body.kasimov-page-about .kasimov-gallery-mosaic > a,
html body.kasimov-page-about .kasimov-gallery-mosaic > img,
html body #content .kasimov-gallery-mosaic > a,
html body #content .kasimov-gallery-mosaic > img,
html body #content .kasimov-gallery-mosaic > figure {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  min-height: 220px !important;
  max-height: 220px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  grid-column: auto !important;
  grid-row: auto !important;
  position: relative !important;
  box-sizing: border-box !important;
}

html body.kasimov-page-about .kasimov-about-gallery img,
html body.kasimov-page-about .kasimov-gallery-mosaic img,
html body #content .kasimov-gallery-mosaic img,
html body #content .kasimov-gallery-img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 220px !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  float: none !important;
  border-radius: 10px !important;
}

/* kill hero-span leftovers */
html body #content .kasimov-gallery-mosaic > :first-child,
html body #content .kasimov-gallery-mosaic > :nth-child(6n+1),
html body.kasimov-page-about .kasimov-about-gallery > :first-child {
  grid-column: auto !important;
  height: 220px !important;
}

html body .kasimov-gallery-mosaic:empty,
html body .kasimov-about-gallery:empty {
  display: none !important;
}

/* About / restaurant content tidy */
html body.kasimov-page-about #content .item-page,
html body.kasimov-page-restaurant #content .item-page,
html body.kasimov-page-about #content .article,
html body.kasimov-page-restaurant #content .article {
  padding: 8px 4px 20px !important;
  max-width: 100% !important;
  overflow: hidden !important;
}

html body.kasimov-page-about #content img:not(.kasimov-gallery-img):not(.lb-image),
html body.kasimov-page-restaurant #content img:not(.kasimov-gallery-img):not(.lb-image) {
  max-width: 100% !important;
  height: auto !important;
}

html body.kasimov-page-about #content p,
html body.kasimov-page-restaurant #content p {
  clear: both !important;
  line-height: 1.65 !important;
  margin: 0 0 14px !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-about .kasimov-about-gallery,
  html body.kasimov-page-about .kasimov-gallery-mosaic,
  html body #content .kasimov-gallery-mosaic {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 240px !important;
    gap: 14px !important;
  }
  html body.kasimov-page-about .kasimov-about-gallery > a,
  html body.kasimov-page-about .kasimov-about-gallery > img,
  html body #content .kasimov-gallery-mosaic > a,
  html body #content .kasimov-gallery-mosaic > img {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
  html body.kasimov-page-about .kasimov-about-gallery img,
  html body #content .kasimov-gallery-mosaic img {
    min-height: 220px !important;
  }
  html body #content.container,
  html body #content {
    margin-top: 28px !important;
    margin-bottom: 36px !important;
    padding-top: 28px !important;
    padding-bottom: 28px !important;
  }
}

@media only screen and (max-width: 767px) {
  html body.kasimov-page-about .kasimov-about-gallery,
  html body #content .kasimov-gallery-mosaic {
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 160px !important;
    gap: 8px !important;
  }
  html body.kasimov-page-about .kasimov-about-gallery > a,
  html body.kasimov-page-about .kasimov-about-gallery > img,
  html body #content .kasimov-gallery-mosaic > a,
  html body #content .kasimov-gallery-mosaic > img {
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
  }
  html body.kasimov-page-about .kasimov-about-gallery img,
  html body #content .kasimov-gallery-mosaic img {
    min-height: 160px !important;
  }
}

/* Prices tab should not sit on mosaic tiles */
html body.kasimov-page-about a.iceslide_link,
html body.kasimov-page-restaurant a.iceslide_link,
html body.kasimov-page-about a.kasimov-prices-tab,
html body.kasimov-page-restaurant a.kasimov-prices-tab {
  z-index: 80 !important;
}


/* === BATCH 24b MOSAIC DESKTOP === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-about .kasimov-about-gallery,
  html body.kasimov-page-about .kasimov-gallery-mosaic,
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
  html body.kasimov-page-services #content .kasimov-gallery-mosaic,
  html body #content .kasimov-gallery-mosaic,
  html body #content .kasimov-gallery-mosaic.kasimov-about-gallery {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 240px !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  html body #content .kasimov-gallery-mosaic > a,
  html body #content .kasimov-gallery-mosaic > img,
  html body.kasimov-page-about .kasimov-about-gallery > a,
  html body.kasimov-page-about .kasimov-about-gallery > img {
    width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }

  /* Show premium dark canvas around white stage */
  html body #wrapper,
  html body #container,
  html body #main {
    background: transparent !important;
  }
  html body #content.container,
  html body #content {
    max-width: 1170px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
    padding-top: 32px !important;
    padding-bottom: 36px !important;
    background: #fff !important;
    box-shadow: 0 28px 90px rgba(0,0,0,.5) !important;
    border-radius: 6px !important;
  }
}


/* === BATCH 25 LIGHT DESKTOP === */

/* Light premium canvas — no dark colors */
html,
html body,
html body.site,
html body.com_content,
html body #wrapper,
html body #container,
html body #main,
html body #bottom,
html body #footer,
html body #copyright {
  background-color: #f6f2ec !important;
  background-image:
    radial-gradient(ellipse 90% 55% at 12% 0%, rgba(201, 169, 110, 0.18), transparent 55%),
    radial-gradient(ellipse 70% 45% at 100% 8%, rgba(151, 40, 40, 0.06), transparent 50%),
    radial-gradient(ellipse 60% 40% at 50% 100%, rgba(180, 150, 110, 0.12), transparent 55%),
    linear-gradient(180deg, #faf7f2 0%, #f3eee6 45%, #efe8df 100%) !important;
  background-attachment: fixed !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
}

html body::before {
  opacity: 0.035 !important;
}

html body #content,
html body #content.container,
html body section#content {
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 12px 40px rgba(60, 40, 20, 0.08) !important;
}

html body #footer,
html body #footer a,
html body #copyright,
html body #copyright a,
html body #kasimov-footer-contacts,
html body #kasimov-footer-contacts a {
  color: #5a5048 !important;
  background: transparent !important;
}

/* Desktop logo — centered in hero, not stuck at top */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    min-height: 100vh !important;
    height: 100vh !important;
    z-index: 40 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  html body.kasimov-page-home #header .container,
  html body.kasimov-page-home #header .container > .row {
    position: relative !important;
    width: 100% !important;
    max-width: 1170px !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 auto !important;
  }

  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    width: auto !important;
    max-width: 420px !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    text-align: center !important;
    z-index: 45 !important;
    height: auto !important;
  }

  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo .logo {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: 160px !important;
    height: auto !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 4px 18px rgba(0,0,0,.35)) !important;
  }

  /* Menu sits in lower part of hero, not colliding with logo */
  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-page-home #mainmenu {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 28px !important;
    top: auto !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 50 !important;
    background: transparent !important;
  }

  html body #content.container,
  html body #content {
    max-width: 1170px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 28px !important;
    margin-bottom: 36px !important;
    padding: 32px 28px !important;
    border-radius: 6px !important;
    box-shadow: 0 12px 40px rgba(60, 40, 20, 0.08) !important;
    background: #fff !important;
  }

  html body #wrapper,
  html body #container,
  html body #main {
    background: transparent !important;
  }
}

/* Mobile keeps light canvas too */
@media only screen and (max-width: 979px) {
  html,
  html body {
    background-color: #f6f2ec !important;
    background-image:
      linear-gradient(180deg, #faf7f2 0%, #f3eee6 100%) !important;
  }
  html body #content,
  html body #content.container {
    background: #fff !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
  }
}


/* === BATCH 26 HEADER FLOW === */

/* ---- Desktop home: logo at TOP (not center) ---- */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    top: 28px !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
    width: auto !important;
    max-width: 380px !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 55 !important;
    text-align: center !important;
  }
  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo .logo {
    display: block !important;
    max-height: 110px !important;
    width: auto !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 3px 12px rgba(0,0,0,.4)) !important;
  }

  /* Menu under logo on home hero */
  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-page-home #mainmenu {
    position: absolute !important;
    top: 150px !important;
    bottom: auto !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 56 !important;
    background: transparent !important;
  }

  /* ---- Non-home desktop: solid header ABOVE content (no overlay under menu) ---- */
  html body:not(.kasimov-page-home) #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    z-index: 200 !important;
    background: #ffffff !important;
    background-color: #ffffff !important;
    box-shadow: 0 2px 18px rgba(40, 30, 20, 0.1) !important;
    pointer-events: auto !important;
    overflow: visible !important;
    padding: 10px 0 8px !important;
    margin: 0 !important;
    float: none !important;
  }

  html body:not(.kasimov-page-home) #header .container,
  html body:not(.kasimov-page-home) #header .container > .row {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 1170px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 0 16px !important;
    background: transparent !important;
  }

  html body:not(.kasimov-page-home) #header #mainmenu,
  html body:not(.kasimov-page-home) #mainmenu {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    z-index: 201 !important;
    background: transparent !important;
    order: 1 !important;
  }

  html body:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu,
  html body:not(.kasimov-page-home) #mainmenu ul#icemegamenu {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin: 0 auto !important;
  }

  html body:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li > a,
  html body:not(.kasimov-page-home) #mainmenu ul#icemegamenu > li > a {
    color: #2a2420 !important;
    text-shadow: none !important;
    background: transparent !important;
  }
  html body:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li.active > a,
  html body:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li.current > a {
    color: #970000 !important;
  }

  /* Logo stays hidden off-home */
  html body:not(.kasimov-page-home) #header #logo {
    display: none !important;
  }

  /* Page hero BELOW header — not under menu */
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-services #headerimage {
    position: relative !important;
    height: 48vh !important;
    min-height: 360px !important;
    max-height: 420px !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 1 !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #kasimov-page-hero {
    height: 100% !important;
    min-height: 360px !important;
  }

  /* Content never under header */
  html body:not(.kasimov-page-home) #content,
  html body:not(.kasimov-page-home) #content.container,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-about #content,
  html body.kasimov-page-services #content {
    position: relative !important;
    z-index: 2 !important;
    clear: both !important;
    margin-top: 24px !important;
    padding-top: 28px !important;
  }

  /* Room cards tidy — no float under chrome */
  html body.kasimov-page-rooms #content .blog .item,
  html body.kasimov-page-rooms #content .items-row,
  html body.kasimov-page-rooms #content .item-image {
    position: relative !important;
    z-index: 1 !important;
    float: none !important;
    clear: both !important;
  }
  html body.kasimov-page-rooms #content .item-image,
  html body.kasimov-page-rooms #content .item-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    float: none !important;
  }
}

/* Kill leftover 70vh absolute header cage on inner pages */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header {
    height: auto !important;
    min-height: 0 !important;
  }
}


/* === BATCH 26b MENU ABOVE HERO === */
@media only screen and (min-width: 980px) {
  /* Put white menu bar above page hero on inner pages */
  html body.kasimov-has-page-hero:not(.kasimov-page-home),
  html body.kasimov-page-rooms,
  html body.kasimov-page-restaurant,
  html body.kasimov-page-about,
  html body.kasimov-page-services {
    display: flex !important;
    flex-direction: column !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-services #header {
    order: -20 !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-about #headerimage {
    order: -10 !important;
  }
}


/* === BATCH 27 NO WELCOME === */
html body #kasimov-welcome,
html body .kasimov-welcome,
#kasimov-welcome {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  z-index: -1 !important;
}


/* === BATCH 28 HOME HEADER === */
@media only screen and (min-width: 980px) {
  /* Home: header overlays slideshow, logo TOP, menu under logo */
  html body.kasimov-page-home #header,
  html body.kasimov-page-home #header.container {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    z-index: 80 !important;
    background: transparent !important;
    box-shadow: none !important;
    pointer-events: none !important;
    padding: 0 !important;
    margin: 0 !important;
    order: 0 !important;
  }
  html body.kasimov-page-home #header .container,
  html body.kasimov-page-home #header .container > .row {
    position: relative !important;
    width: 100% !important;
    max-width: 1170px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 auto !important;
    padding: 16px 20px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    background: transparent !important;
  }
  html body.kasimov-page-home #header a,
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-page-home #header #mainmenu a {
    pointer-events: auto !important;
  }

  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    -webkit-transform: none !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 8px auto 6px !important;
    padding: 0 !important;
    text-align: center !important;
    z-index: 85 !important;
    order: 1 !important;
  }
  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo .logo {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-height: 100px !important;
    width: auto !important;
    max-width: 280px !important;
    height: auto !important;
    margin: 0 auto !important;
    filter: drop-shadow(0 3px 12px rgba(0,0,0,.45)) !important;
  }

  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-page-home #mainmenu {
    display: block !important;
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    margin: 0 auto 8px !important;
    padding: 0 !important;
    float: none !important;
    z-index: 86 !important;
    background: transparent !important;
    order: 2 !important;
  }
  html body.kasimov-page-home #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-home #mainmenu ul#icemegamenu {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    margin: 0 auto !important;
  }
  html body.kasimov-page-home #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-home #mainmenu ul#icemegamenu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 4px rgba(0,0,0,.75) !important;
  }

  /* Keep slideshow full-bleed under header chrome */
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    min-height: 100vh !important;
    margin: 0 !important;
    order: 0 !important;
  }

  /* Do NOT flex-reorder home like inner pages */
  html body.kasimov-page-home {
    display: block !important;
  }
  html body.kasimov-page-home #header {
    order: 0 !important;
  }
}


/* === BATCH 29 SITE AUDIT === */

/* ---------- Inner pages: FULL viewport heroes again ---------- */
@media only screen and (min-width: 980px) {
  /* Undo batch-26 shrink */
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-restaurant #headerimage.kasimov-page-hero-host {
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    z-index: 1 !important;
    overflow: hidden !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #kasimov-page-hero,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-restaurant #kasimov-page-hero,
  html body.kasimov-page-about #kasimov-page-hero,
  html body.kasimov-page-services #kasimov-page-hero {
    height: 100% !important;
    min-height: 100vh !important;
  }

  /* Header overlays full hero — does not steal height / crush cards */
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-services #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    z-index: 60 !important;
    background: linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.12) 70%, transparent 100%) !important;
    box-shadow: none !important;
    pointer-events: none !important;
    padding: 12px 0 8px !important;
    margin: 0 !important;
    order: 0 !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header .container,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header .container > .row {
    height: auto !important;
    min-height: 0 !important;
    background: transparent !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #mainmenu,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header a {
    pointer-events: auto !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #mainmenu {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    margin: 0 !important;
    background: transparent !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #mainmenu ul#icemegamenu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 4px rgba(0,0,0,.75) !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li.active > a,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li.current > a {
    color: #ffd7a0 !important;
  }

  /* Content starts AFTER full hero — never under menu */
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #content,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-about #content,
  html body.kasimov-page-services #content {
    position: relative !important;
    z-index: 2 !important;
    clear: both !important;
    margin-top: 28px !important;
  }

  /* Pages without page-hero (contacts etc.): solid top bar */
  html body:not(.kasimov-page-home):not(.kasimov-has-page-hero) #header {
    position: relative !important;
    background: #fff !important;
    box-shadow: 0 2px 18px rgba(40,30,20,.1) !important;
    z-index: 100 !important;
    height: auto !important;
    padding: 10px 0 !important;
  }
  html body:not(.kasimov-page-home):not(.kasimov-has-page-hero) #header #mainmenu ul#icemegamenu > li > a {
    color: #2a2420 !important;
    text-shadow: none !important;
  }

  /* Room/restaurant cards never float under chrome */
  html body.kasimov-page-rooms #content .item-image,
  html body.kasimov-page-rooms #content .item-image img,
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic {
    position: relative !important;
    z-index: 1 !important;
    float: none !important;
  }
}

/* Mobile: keep full-bleed heroes too */
@media only screen and (max-width: 979px) {
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #kasimov-page-hero {
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
  }
}

/* Light canvas stays (no dark) */
html, html body {
  background-color: #f6f2ec !important;
}


/* === BATCH 29b INNER HEADER === */
/* Absolute menu overlay on ALL inner pages that have a hero banner */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-about #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 80 !important;
    background: linear-gradient(180deg, rgba(0,0,0,.5) 0%, rgba(0,0,0,.15) 75%, transparent 100%) !important;
    box-shadow: none !important;
    pointer-events: none !important;
    padding: 14px 0 10px !important;
    margin: 0 !important;
    order: 0 !important;
  }
  html body.kasimov-page-about #header #mainmenu,
  html body.kasimov-page-rooms #header #mainmenu,
  html body.kasimov-page-restaurant #header #mainmenu,
  html body.kasimov-page-services #header #mainmenu,
  html body.kasimov-page-about #header a,
  html body.kasimov-page-rooms #header a,
  html body.kasimov-page-restaurant #header a,
  html body.kasimov-page-services #header a {
    pointer-events: auto !important;
  }
  html body.kasimov-page-about #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-rooms #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-restaurant #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-services #header #mainmenu ul#icemegamenu > li > a {
    color: #fff !important;
    text-shadow: 0 1px 4px rgba(0,0,0,.8) !important;
  }

  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #headerimage {
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    position: relative !important;
  }

  /* Do not flex-reorder inner pages — absolute header is enough */
  html body.kasimov-page-about,
  html body.kasimov-page-rooms,
  html body.kasimov-page-restaurant,
  html body.kasimov-page-services,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) {
    display: block !important;
  }
}


/* === BATCH 30 MENU CENTER === */
@media only screen and (min-width: 980px) {
  /* Full-width header row so menu can truly center in the viewport */
  html body #header .container,
  html body.kasimov-page-home #header .container,
  html body:not(.kasimov-page-home) #header .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    float: none !important;
  }
  html body #header .container > .row,
  html body.kasimov-page-home #header .container > .row {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
  }

  html body #header #mainmenu,
  html body #mainmenu,
  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-page-home #mainmenu,
  html body:not(.kasimov-page-home) #header #mainmenu,
  html body:not(.kasimov-page-home) #mainmenu {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    float: none !important;
    text-align: center !important;
    left: 0 !important;
    right: 0 !important;
  }

  html body #mainmenu .container,
  html body #header #mainmenu .container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    float: none !important;
  }

  html body #mainmenu ul#icemegamenu,
  html body #header #mainmenu ul#icemegamenu,
  html body #header #icemegamenu,
  html body.kasimov-page-home #mainmenu ul#icemegamenu,
  html body:not(.kasimov-page-home) #mainmenu ul#icemegamenu {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
  }

  html body #mainmenu ul#icemegamenu > li,
  html body #header #mainmenu ul#icemegamenu > li {
    float: none !important;
    display: inline-flex !important;
  }
}


/* === BATCH 31 TYPOGRAPHY === */
:root {
  --kasimov-font-display: "Cormorant Garamond", "Times New Roman", Georgia, serif;
  --kasimov-font-body: "Outfit", "Helvetica Neue", Arial, sans-serif;
  --kasimov-ink-text: #2a2420;
  --kasimov-ink-muted: #6b6158;
  --kasimov-ink-accent: #8a1c1c;
}

html body,
html body.site {
  font-family: var(--kasimov-font-body) !important;
  color: var(--kasimov-ink-text) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Nav / UI */
html body #mainmenu ul#icemegamenu > li > a,
html body #header #mainmenu ul#icemegamenu > li > a,
html body a.kasimov-book-cta,
html body a.iceslide_link,
html body a.kasimov-prices-tab,
html body .btn,
html body .breadcrumb,
html body .breadcrumb a {
  font-family: var(--kasimov-font-body) !important;
  letter-spacing: 0.04em !important;
  font-weight: 500 !important;
}

html body #mainmenu ul#icemegamenu > li > a {
  font-size: 14px !important;
  text-transform: none !important;
  font-weight: 500 !important;
}

html body a.kasimov-book-cta {
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

/* Display / headlines */
html body h1,
html body h2,
html body h3,
html body h4,
html body .page-header h2,
html body .item-page .page-header h2,
html body #content .page-header h2,
html body .blog h2,
html body .blog .page-header h2,
html body .category-module h4,
html body .kasimov-page-hero__caption,
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption .mod-description,
html body #iceslideshow .carousel-caption .mod-description p,
html body #icecarousel .slider_heading h3,
html body .slider_heading h3 {
  font-family: var(--kasimov-font-display) !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  color: var(--kasimov-ink-accent) !important;
}

html body .kasimov-page-hero__caption,
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption .mod-description,
html body #iceslideshow .carousel-caption .mod-description p,
html body #iceslideshow .carousel-caption a {
  color: #fff !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
}

html body #icecarousel .slider_heading h3,
html body .slider_heading h3 {
  color: #fff !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: none !important;
}

/* Content stage — editorial prose like top hotel sites */
html body #content,
html body #content.container {
  font-family: var(--kasimov-font-body) !important;
}

html body #content .item-page,
html body #content .article,
html body.kasimov-page-about #content .item-page,
html body.kasimov-page-restaurant #content .item-page,
html body.kasimov-page-contacts #content .item-page,
html body.kasimov-page-services #content .item-page {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: 8px !important;
}

/* Rooms keep full content width for photos */
html body.kasimov-page-rooms #content .blog {
  max-width: 980px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Prose measure for descriptions */
html body #content .item-page > p,
html body #content .item-page [itemprop="articleBody"] > p,
html body #content .article > p {
  max-width: 740px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body #content .page-header,
html body #content .breadcrumb {
  max-width: 740px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Galleries full width inside content */
html body #content .kasimov-gallery-mosaic,
html body #content .kasimov-about-gallery {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

html body #content .page-header,
html body #content .item-page .page-header {
  border: 0 !important;
  margin: 0 0 28px !important;
  padding: 0 !important;
  text-align: center !important;
}

html body #content .page-header h2,
html body #content .item-page .page-header h2,
html body #content h1,
html body #content h2.article-title {
  font-size: clamp(36px, 4.2vw, 52px) !important;
  line-height: 1.15 !important;
  font-weight: 500 !important;
  margin: 0 0 8px !important;
  color: var(--kasimov-ink-accent) !important;
  text-align: center !important;
}

/* Hide legacy decorative heading icons/circles if any */
html body #content .page-header h2::before,
html body #content .page-header::before {
  display: none !important;
  content: none !important;
}

html body #content .breadcrumb {
  justify-content: center !important;
  text-align: center !important;
  margin: 0 0 18px !important;
  font-size: 12px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--kasimov-ink-muted) !important;
}
html body #content .breadcrumb a {
  color: var(--kasimov-ink-accent) !important;
  font-weight: 500 !important;
}

/* Body copy */
html body #content .item-page p,
html body #content .article p,
html body #content .blog .item p,
html body #content .contact p,
html body #content .contact fieldset p {
  font-family: var(--kasimov-font-body) !important;
  font-size: 17px !important;
  line-height: 1.75 !important;
  font-weight: 300 !important;
  color: var(--kasimov-ink-text) !important;
  margin: 0 0 1.15em !important;
  text-align: left !important;
}

/* Lead paragraph — first description block */
html body #content .item-page > p:first-of-type,
html body #content .item-page .article-content > p:first-of-type,
html body #content .item-page [itemprop="articleBody"] > p:first-of-type {
  font-size: 20px !important;
  line-height: 1.65 !important;
  font-weight: 300 !important;
  color: #3f3832 !important;
  margin-bottom: 1.5em !important;
}

html body #content .item-page h3,
html body #content .article h3 {
  font-family: var(--kasimov-font-display) !important;
  font-size: 28px !important;
  font-weight: 500 !important;
  margin: 1.6em 0 0.6em !important;
  color: var(--kasimov-ink-accent) !important;
}

/* Rooms listing — editorial card titles */
html body.kasimov-page-rooms #content .blog .item,
html body.kasimov-page-rooms #content .items-leading .item {
  margin-bottom: 48px !important;
  padding-bottom: 36px !important;
  border-bottom: 1px solid rgba(42, 36, 32, 0.08) !important;
}
html body.kasimov-page-rooms #content .blog h2,
html body.kasimov-page-rooms #content .blog .page-header h2,
html body.kasimov-page-rooms #content .blog h2 a {
  font-family: var(--kasimov-font-display) !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 500 !important;
  color: var(--kasimov-ink-accent) !important;
  text-align: left !important;
  margin: 18px 0 10px !important;
}
html body.kasimov-page-rooms #content .blog .item p,
html body.kasimov-page-rooms #content .blog .item .article-info {
  font-size: 16px !important;
  line-height: 1.7 !important;
  font-weight: 300 !important;
}
html body.kasimov-page-rooms #content .blog .item .btn,
html body.kasimov-page-rooms #content .kasimov-room-actions .btn,
html body.kasimov-page-rooms #content .kasimov-room-actions a {
  font-family: var(--kasimov-font-body) !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

/* Contacts */
html body.kasimov-page-contacts #content,
html body #content .contact {
  font-family: var(--kasimov-font-body) !important;
}
html body #content .contact h3,
html body #content .contact .contact-name {
  font-family: var(--kasimov-font-display) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  color: var(--kasimov-ink-accent) !important;
}
html body #content .contact dl,
html body #content .contact address,
html body #content .kasimov-contacts,
html body #kasimov-footer-contacts {
  font-size: 15px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
}

/* Menu carousel labels */
html body #icecarousel h4,
html body #icecarousel h4 a,
html body #icecarousel .kasimov-menu-label {
  font-family: var(--kasimov-font-display) !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  font-size: 18px !important;
}

/* Footer */
html body #footer,
html body #copyright,
html body #copyright .copytext {
  font-family: var(--kasimov-font-body) !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  font-weight: 400 !important;
}

@media only screen and (max-width: 979px) {
  html body #content .item-page,
  html body #content .article,
  html body #content .blog {
    max-width: 100% !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
  }
  html body #content .page-header h2,
  html body #content .item-page .page-header h2 {
    font-size: 34px !important;
  }
  html body #content .item-page p {
    font-size: 16px !important;
  }
  html body #content .item-page > p:first-of-type {
    font-size: 18px !important;
  }
  html body #mainmenu ul#icemegamenu > li > a {
    font-size: 15px !important;
    letter-spacing: 0.02em !important;
  }
}


/* === BATCH 32 COPY LAYOUT === */
html body #content .kasimov-room-lead,
html body #content .kasimov-contacts-lead {
  font-family: var(--kasimov-font-body) !important;
  font-size: 19px !important;
  line-height: 1.65 !important;
  font-weight: 300 !important;
  color: #3f3832 !important;
  max-width: 740px !important;
  margin: 0 0 1.25em !important;
}

html body #content .kasimov-room-rates,
html body #content .price.kasimov-room-rates {
  max-width: 520px !important;
  margin: 0 0 1.5em !important;
  padding: 18px 0 8px !important;
  border-top: 1px solid rgba(42, 36, 32, 0.1) !important;
  border-bottom: 1px solid rgba(42, 36, 32, 0.1) !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body #content .kasimov-rate {
  display: flex !important;
  justify-content: space-between !important;
  align-items: baseline !important;
  gap: 16px !important;
  padding: 6px 0 !important;
  font-family: var(--kasimov-font-body) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  color: var(--kasimov-ink-text) !important;
}
html body #content .kasimov-rate__label {
  color: var(--kasimov-ink-muted) !important;
  letter-spacing: 0.02em !important;
}
html body #content .kasimov-rate__value {
  font-weight: 500 !important;
  white-space: nowrap !important;
}
html body #content .kasimov-rate .red,
html body #content .kasimov-room-rates .red {
  color: var(--kasimov-ink-accent) !important;
  font-weight: 600 !important;
}

html body #content .kasimov-amenities {
  max-width: 740px !important;
  margin: 1.5em auto 1.75em !important;
}
html body.kasimov-page-rooms #content .kasimov-amenities {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
html body #content .kasimov-amenities h3 {
  font-family: var(--kasimov-font-display) !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  color: var(--kasimov-ink-accent) !important;
  margin: 1.2em 0 0.55em !important;
  letter-spacing: 0.03em !important;
}
html body #content .kasimov-amenities ul {
  list-style: none !important;
  margin: 0 0 0.5em !important;
  padding: 0 !important;
}
html body #content .kasimov-amenities li {
  position: relative !important;
  padding: 0.35em 0 0.35em 1.1em !important;
  font-family: var(--kasimov-font-body) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 300 !important;
  color: var(--kasimov-ink-text) !important;
  border-bottom: 1px solid rgba(42, 36, 32, 0.06) !important;
}
html body #content .kasimov-amenities li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0.85em !important;
  width: 5px !important;
  height: 5px !important;
  border-radius: 50% !important;
  background: var(--kasimov-ink-accent) !important;
  opacity: 0.55 !important;
}

html body #content .kasimov-room-meta {
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: var(--kasimov-ink-muted) !important;
  max-width: 740px !important;
  margin: 1.25em 0 0 !important;
  letter-spacing: 0.02em !important;
}

html body #content blockquote {
  font-family: var(--kasimov-font-display) !important;
  font-size: clamp(22px, 2.4vw, 28px) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  line-height: 1.45 !important;
  color: var(--kasimov-ink-text) !important;
  border: 0 !important;
  margin: 0 auto 1.5em !important;
  padding: 0 !important;
  max-width: 720px !important;
  quotes: none !important;
}
html body #content .testimonials_author,
html body #content .testimonials_author p {
  font-family: var(--kasimov-font-body) !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--kasimov-ink-muted) !important;
  font-weight: 500 !important;
  font-style: normal !important;
}

html body #content .kasimov-promo-card__body p {
  font-size: 16px !important;
  line-height: 1.6 !important;
  font-weight: 300 !important;
}

html body #content .book-button,
html body #content a.book-button {
  font-family: var(--kasimov-font-body) !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  display: inline-block !important;
  margin-top: 14px !important;
}


/* === BATCH 33 ABOUT FONTS + CAPTIONS === */
/* Modern editorial stack on About / Restaurant / Services */
html body.kasimov-page-about,
html body.kasimov-page-restaurant,
html body.kasimov-page-services {
  --kasimov-font-display: "Instrument Serif", "Cormorant Garamond", Georgia, serif;
  --kasimov-font-body: "Manrope", "Outfit", "Helvetica Neue", Arial, sans-serif;
  font-family: var(--kasimov-font-body) !important;
}

html body.kasimov-page-about #content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-services #content,
html body.kasimov-page-about #content p,
html body.kasimov-page-restaurant #content p,
html body.kasimov-page-services #content p {
  font-family: var(--kasimov-font-body) !important;
}

html body.kasimov-page-about #content h1,
html body.kasimov-page-about #content h2,
html body.kasimov-page-about #content h3,
html body.kasimov-page-about #content .page-header h2,
html body.kasimov-page-restaurant #content h1,
html body.kasimov-page-restaurant #content h2,
html body.kasimov-page-restaurant #content h3,
html body.kasimov-page-restaurant #content .page-header h2,
html body.kasimov-page-services #content h1,
html body.kasimov-page-services #content h2,
html body.kasimov-page-services #content h3,
html body.kasimov-page-services #content .page-header h2,
html body.kasimov-page-about .kasimov-page-hero__caption,
html body.kasimov-page-restaurant .kasimov-page-hero__caption,
html body.kasimov-page-services .kasimov-page-hero__caption {
  font-family: var(--kasimov-font-display) !important;
  font-weight: 400 !important;
  letter-spacing: 0.01em !important;
}

html body.kasimov-page-about #content .page-header h2,
html body.kasimov-page-restaurant #content .page-header h2,
html body.kasimov-page-services #content .page-header h2 {
  font-size: clamp(40px, 4.8vw, 58px) !important;
  line-height: 1.08 !important;
}

html body.kasimov-page-about #content .item-page > p:first-of-type,
html body.kasimov-page-restaurant #content .item-page > p:first-of-type,
html body.kasimov-page-services #content .item-page > p:first-of-type,
html body.kasimov-page-about #content .item-page [itemprop="articleBody"] > p:first-of-type,
html body.kasimov-page-restaurant #content .item-page [itemprop="articleBody"] > p:first-of-type {
  font-size: 21px !important;
  line-height: 1.6 !important;
  font-weight: 300 !important;
}

html body.kasimov-page-about #content .item-page p,
html body.kasimov-page-restaurant #content .item-page p,
html body.kasimov-page-services #content .item-page p {
  font-size: 17px !important;
  line-height: 1.8 !important;
  font-weight: 300 !important;
}

html body.kasimov-page-restaurant #content blockquote {
  font-family: var(--kasimov-font-display) !important;
  font-size: clamp(20px, 2.2vw, 26px) !important;
  font-style: italic !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}


/* === BATCH 34 MOBILE ACTIONS LIGHTBOX === */

/* ---- Lightbox: kill white flash / overexposure ---- */
html body .lightboxOverlay,
html body .lightbox .lightboxOverlay,
html body #lightboxOverlay {
  background: #0c0a09 !important;
  background-color: #0c0a09 !important;
  opacity: 0.94 !important;
  filter: none !important;
}
html body .lightbox,
html body #lightbox {
  background: transparent !important;
}
html body .lb-outerContainer,
html body .lightbox .lb-outerContainer,
html body #lightbox .lb-outerContainer {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  width: auto !important;
  height: auto !important;
}
html body .lb-container,
html body .lightbox .lb-container {
  padding: 0 !important;
  background: transparent !important;
}
html body .lb-dataContainer,
html body .lb-data,
html body .lb-details,
html body .lb-caption,
html body .lb-number {
  background: transparent !important;
  color: rgba(255,255,255,.85) !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.6) !important;
}
html body .lb-image,
html body img.lb-image {
  background: transparent !important;
  border: 0 !important;
  border-radius: 10px !important;
  max-width: min(96vw, 1200px) !important;
  max-height: 88vh !important;
  height: auto !important;
  width: auto !important;
}
html body .lb-loader,
html body .lb-cancel {
  background-color: transparent !important;
}

/* ---- Room buttons: same row / same height ---- */
html body.kasimov-page-rooms #content .price,
html body.kasimov-page-rooms #content .price.kasimov-room-rates,
html body.kasimov-page-rooms #content .kasimov-room-rates {
  padding-right: 0 !important;
  min-height: 0 !important;
  overflow: visible !important;
  position: relative !important;
}
html body.kasimov-page-rooms #content .price .book-button,
html body.kasimov-page-rooms #content a.book-button,
html body #content .price .book-button,
html body #content a.book-button {
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  float: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 148px !important;
  height: 44px !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 18px !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
}

html body.kasimov-page-rooms #content .kasimov-room-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px 12px !important;
  margin: 14px 0 8px !important;
  min-height: 44px !important;
}
html body.kasimov-page-rooms #content .kasimov-room-actions .book-button,
html body.kasimov-page-rooms #content .kasimov-room-actions a.book-button {
  margin: 0 !important;
  height: 44px !important;
}
html body.kasimov-page-rooms #content .kasimov-room-actions p.readmore,
html body.kasimov-page-rooms #content .kasimov-room-actions .readmore {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  height: 44px !important;
}
html body.kasimov-page-rooms #content .kasimov-room-actions .readmore .btn,
html body.kasimov-page-rooms #content .kasimov-room-actions a.btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 18px !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  font-family: var(--kasimov-font-body) !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  vertical-align: middle !important;
}

/* ---- Mobile: pages must not slide under menu ---- */
@media only screen and (max-width: 979px) {
  /* Inner pages: header in flow so content never goes under menu */
  html body.kasimov-page-about #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header,
  html body:not(.kasimov-page-home) #header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 200 !important;
    margin: 0 !important;
    padding: 8px 10px 10px !important;
    box-sizing: border-box !important;
    background: rgba(18, 14, 12, 0.94) !important;
    box-shadow: 0 2px 14px rgba(0,0,0,.22) !important;
    pointer-events: auto !important;
    order: 0 !important;
  }

  /* Home keeps overlay header, but menu stays in-flow under book CTA */
  html body.kasimov-page-home #header {
    z-index: 200 !important;
    pointer-events: auto !important;
  }

  /* Menu in flow — does not overlay hero/content */
  html body #header #mainmenu,
  html body #mainmenu {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    margin: 44px 0 0 !important;
    padding: 0 !important;
    z-index: 210 !important;
    background: transparent !important;
  }

  html body #header #mainmenu .mobile-nav-toggle,
  html body #mainmenu .mobile-nav-toggle {
    position: relative !important;
    z-index: 211 !important;
    background: #fff !important;
    color: #222 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.18) !important;
  }

  html body #header #mainmenu ul#icemegamenu,
  html body #mainmenu ul#icemegamenu,
  html body #header #mainmenu.is-open ul#icemegamenu,
  html body #mainmenu.is-open ul#icemegamenu {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 6px) !important;
    z-index: 220 !important;
    background: #fff !important;
    background-color: #fff !important;
    opacity: 1 !important;
    box-shadow: 0 10px 28px rgba(0,0,0,.22) !important;
  }

  /* Hero starts BELOW the header chrome — never under menu */
  html body.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-has-page-hero #kasimov-page-hero,
  html body #iceslideshow {
    position: relative !important;
    z-index: 1 !important;
    margin-top: 0 !important;
  }

  html body #content,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-about #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-services #content {
    position: relative !important;
    z-index: 2 !important;
    margin-top: 18px !important;
    clear: both !important;
  }

  /* Fixed book button stays top-right above header */
  html body a.kasimov-book-cta {
    top: 10px !important;
    right: 10px !important;
    bottom: auto !important;
    z-index: 300 !important;
  }

  /* Room action buttons full-width friendly on small screens */
  html body.kasimov-page-rooms #content .kasimov-room-actions {
    width: 100% !important;
  }
  html body.kasimov-page-rooms #content .kasimov-room-actions .book-button,
  html body.kasimov-page-rooms #content .kasimov-room-actions .readmore,
  html body.kasimov-page-rooms #content .kasimov-room-actions .readmore .btn {
    flex: 1 1 auto !important;
    min-width: 140px !important;
  }
}


/* === BATCH 34b MOBILE HERO SHOW === */
/* Override theme responsive.css which hides #headerimage below 979px */
@media only screen and (max-width: 979px) {
  html body.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-has-page-hero #headerimage.kasimov-page-hero-host {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    overflow: hidden !important;
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-page-about #kasimov-page-hero,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-restaurant #kasimov-page-hero,
  html body.kasimov-page-services #kasimov-page-hero {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100vh !important;
    position: relative !important;
  }

  html body.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-has-page-hero #kasimov-page-hero img {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* Tighten room action button optical alignment */
  html body.kasimov-page-rooms #content .kasimov-room-actions .readmore .btn .icon-chevron-right {
    display: none !important;
  }
  html body.kasimov-page-rooms #content .kasimov-room-actions .book-button,
  html body.kasimov-page-rooms #content .kasimov-room-actions .readmore .btn {
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 44px !important;
    align-items: center !important;
  }
}


/* === BATCH 34c MOBILE HEADER OVERLAY === */
@media only screen and (max-width: 979px) {
  /* Hero stays visible (overrides responsive.css display:none) — already in 34b */

  /* Header overlays TOP of hero again (DOM order is hero then header) */
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 80 !important;
    margin: 0 !important;
    padding: 8px 10px 10px !important;
    background: linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.18) 70%, transparent 100%) !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header a,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header button,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu,
  html body.kasimov-page-about #header a,
  html body.kasimov-page-rooms #header a,
  html body.kasimov-page-restaurant #header a,
  html body.kasimov-page-services #header a,
  html body.kasimov-page-about #header button,
  html body.kasimov-page-rooms #header button,
  html body.kasimov-page-restaurant #header button,
  html body.kasimov-page-services #header button,
  html body.kasimov-page-about #header #mainmenu,
  html body.kasimov-page-rooms #header #mainmenu,
  html body.kasimov-page-restaurant #header #mainmenu,
  html body.kasimov-page-services #header #mainmenu {
    pointer-events: auto !important;
  }

  /* Menu under book CTA, over hero — not over page content */
  html body.kasimov-has-page-hero #header #mainmenu,
  html body.kasimov-page-about #header #mainmenu,
  html body.kasimov-page-rooms #header #mainmenu,
  html body.kasimov-page-restaurant #header #mainmenu,
  html body.kasimov-page-services #header #mainmenu,
  html body.kasimov-has-page-hero #mainmenu {
    position: relative !important;
    top: auto !important;
    margin: 44px 0 0 !important;
    z-index: 81 !important;
  }

  html body #header #mainmenu .mobile-nav-toggle,
  html body #mainmenu .mobile-nav-toggle {
    background: rgba(255,255,255,0.96) !important;
  }

  html body #header #mainmenu.is-open ul#icemegamenu,
  html body #mainmenu.is-open ul#icemegamenu {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 6px) !important;
    z-index: 90 !important;
    background: #fff !important;
  }

  /* Content always AFTER hero — never under menu chrome */
  html body.kasimov-has-page-hero #content,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-about #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-services #content {
    position: relative !important;
    z-index: 5 !important;
    margin-top: 20px !important;
    clear: both !important;
  }
}


/* === BATCH 35 HERO BOOK FONTS FOOTER === */
:root {
  --kasimov-font-display: "Instrument Serif", Georgia, "Times New Roman", serif;
  --kasimov-font-body: "Manrope", "Helvetica Neue", Arial, sans-serif;
}

html body,
html body.site,
html body #content,
html body #footer,
html body #mainmenu {
  font-family: var(--kasimov-font-body) !important;
}

html body h1,
html body h2,
html body h3,
html body h4,
html body .page-header h2,
html body #content .page-header h2,
html body .kasimov-page-hero__caption,
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption .mod-description,
html body #icecarousel .slider_heading h3,
html body .slider_heading h3,
html body blockquote {
  font-family: var(--kasimov-font-display) !important;
  font-weight: 400 !important;
}

/* Services / About / Restaurant already inherit; reinforce leads */
html body.kasimov-page-services #content .item-page > p:first-of-type,
html body.kasimov-page-about #content .item-page > p:first-of-type {
  font-size: 21px !important;
  line-height: 1.6 !important;
  font-weight: 300 !important;
}

/* ---- Desktop hero booking bar ---- */
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 120 !important;
    padding: 0 0 18px !important;
    background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.45) 55%, rgba(0,0,0,.62) 100%) !important;
    pointer-events: auto !important;
  }
  html body .kasimov-hero-booking__inner {
    max-width: 1100px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    pointer-events: auto !important;
  }
  html body #iceslideshow,
  html body #kasimov-page-hero,
  html body #headerimage.kasimov-page-hero-host {
    position: relative !important;
  }
  html body .kasimov-hero-has-booking #iceslideshow,
  html body.kasimov-hero-has-booking #kasimov-page-hero {
    /* keep full height */
  }
  html body .kasimov-tl-search,
  html body #tl-search-form-hero-0,
  html body #tl-search-form-hero-1 {
    min-height: 64px !important;
  }
  /* lift prices tab so it doesn't collide */
  html body a.kasimov-prices-tab,
  html body a.iceslide_link {
    bottom: 96px !important;
  }
}

@media only screen and (max-width: 979px) {
  html body .kasimov-hero-booking { display: none !important; }
}

/* ---- Chef block alignment ---- */
html body .kasimov-chef {
  display: flex !important;
  align-items: flex-start !important;
  gap: 28px !important;
  max-width: 920px !important;
  margin: 28px auto 10px !important;
  text-align: left !important;
}
html body .kasimov-chef__media {
  flex: 0 0 180px !important;
  width: 180px !important;
}
html body .kasimov-chef__media img {
  display: block !important;
  width: 180px !important;
  height: 225px !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  filter: contrast(1.05) saturate(1.05) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.18) !important;
}
html body .kasimov-chef__body {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
html body .kasimov-chef__body blockquote {
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: clamp(18px, 1.7vw, 24px) !important;
  line-height: 1.45 !important;
  font-style: italic !important;
  color: var(--kasimov-ink-text, #2a2420) !important;
  max-width: none !important;
  text-align: left !important;
}
html body .kasimov-chef__name {
  margin: 0 !important;
  font-family: var(--kasimov-font-body) !important;
  font-size: 12px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--kasimov-ink-muted, #6b6158) !important;
  font-weight: 600 !important;
  font-style: normal !important;
}
@media only screen and (max-width: 767px) {
  html body .kasimov-chef {
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
  }
  html body .kasimov-chef__body blockquote,
  html body .kasimov-chef__name { text-align: center !important; }
}

/* ---- Copyright readable on light canvas ---- */
html body #footer,
html body #copyright {
  background: transparent !important;
}
html body #copyright,
html body #copyright .copytext,
html body #copyright .copytext,
html body #footer #copyright p.copytext {
  color: #2a2420 !important;
  opacity: 1 !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  letter-spacing: 0.04em !important;
  text-shadow: none !important;
}
html body #copyright a,
html body #footer a,
html body .kasimov-footer-pets a {
  color: #8a1c1c !important;
  opacity: 1 !important;
}
html body #kasimov-footer-contacts,
html body #kasimov-footer-contacts a {
  color: #2a2420 !important;
}

/* ---- Mobile menu stays ON hero ---- */
@media only screen and (max-width: 979px) {
  html body.kasimov-header-before-hero #header,
  html body.kasimov-page-home #header,
  html body.kasimov-has-page-hero #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 90 !important;
    margin: 0 !important;
    padding: 8px 10px 12px !important;
    background: linear-gradient(180deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,.2) 75%, transparent 100%) !important;
    box-shadow: none !important;
  }
  html body.kasimov-header-before-hero #header #mainmenu,
  html body.kasimov-has-page-hero #header #mainmenu,
  html body.kasimov-page-home #header #mainmenu {
    position: relative !important;
    top: auto !important;
    margin-top: 44px !important;
    z-index: 91 !important;
  }
  html body.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-home #iceslideshow {
    display: block !important;
    visibility: visible !important;
  }
}


/* === BATCH 35b BOOKING IFRAME FONTS === */
html body,
html body.site,
html body #content,
html body #content p,
html body #footer,
html body #mainmenu ul#icemegamenu > li > a,
html body a.kasimov-book-cta {
  font-family: "Manrope", "Helvetica Neue", Arial, sans-serif !important;
}
html body h1,
html body h2,
html body h3,
html body h4,
html body .page-header h2,
html body #content .page-header h2,
html body .blog h2,
html body .blog h2 a,
html body .kasimov-page-hero__caption,
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption .mod-description,
html body #iceslideshow .carousel-caption .mod-description p,
html body #iceslideshow .carousel-caption a,
html body #icecarousel .slider_heading h3,
html body .slider_heading h3,
html body blockquote,
html body .kasimov-chef__body blockquote {
  font-family: "Instrument Serif", Georgia, serif !important;
  font-weight: 400 !important;
}

@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking {
    min-height: 96px !important;
    padding: 12px 0 20px !important;
  }
  html body .kasimov-hero-booking__inner,
  html body .kasimov-tl-search,
  html body .kasimov-hero-booking iframe,
  html body .kasimov-tl-search > div {
    width: 100% !important;

  }
  html body .kasimov-hero-booking iframe {
    display: block !important;


    border: 0 !important;
    background: rgba(255,255,255,0.96) !important;
    border-radius: 4px !important;
    box-shadow: 0 8px 28px rgba(0,0,0,.25) !important;
  }
}


/* === BATCH 35c SHOW HERO TL SEARCH === */
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking,
  html body .kasimov-hero-booking .kasimov-tl-search,
  html body .kasimov-hero-booking #tl-search-form-hero-0,
  html body .kasimov-hero-booking #tl-search-form-hero-1,
  html body .kasimov-hero-booking [id^="tl-search-form-hero"],
  html body .kasimov-hero-booking .kasimov-tl-search,
  html body #iceslideshow .kasimov-hero-booking .kasimov-tl-search,
  html body #kasimov-page-hero .kasimov-hero-booking .kasimov-tl-search {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body .kasimov-hero-booking iframe,
  html body .kasimov-hero-booking .kasimov-tl-search iframe,
  html body .kasimov-hero-booking .kasimov-tl-search > div {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    min-width: 100% !important;


    max-width: none !important;
    opacity: 1 !important;
  }
}


/* === BATCH 36 LOGO CHEF MOBILE MENU === */

/* Desktop home logo: truly centered in viewport */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #header,
  html body.kasimov-page-home #header.container {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    z-index: 80 !important;
  }
  html body.kasimov-page-home #header .container,
  html body.kasimov-page-home #header .container > .row {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    display: block !important;
    position: relative !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    position: absolute !important;
    top: 22px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    text-align: center !important;
    z-index: 86 !important;
  }
  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo .logo {
    display: block !important;
    margin: 0 auto !important;
    max-height: 100px !important;
    width: auto !important;
  }
  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-page-home #mainmenu {
    position: absolute !important;
    top: 140px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    z-index: 85 !important;
  }
}

/* Chef: clean circular portrait aligned with text */
html body .kasimov-chef {
  display: flex !important;
  align-items: center !important;
  gap: 24px !important;
  max-width: 920px !important;
  margin: 28px auto 12px !important;
}
html body .kasimov-chef__media {
  flex: 0 0 140px !important;
  width: 140px !important;
  height: 140px !important;
}
html body .kasimov-chef__media img {
  width: 140px !important;
  height: 140px !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
  box-shadow: 0 6px 20px rgba(0,0,0,.14) !important;
  filter: none !important;
  background: #f6f2ec !important;
}
html body .kasimov-chef__body {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}
html body .kasimov-chef__body blockquote {
  margin: 0 0 12px !important;
  text-align: left !important;
  font-size: clamp(17px, 1.6vw, 22px) !important;
  line-height: 1.5 !important;
}
@media only screen and (max-width: 767px) {
  html body .kasimov-chef {
    flex-direction: column !important;
    text-align: center !important;
  }
  html body .kasimov-chef__body blockquote,
  html body .kasimov-chef__name { text-align: center !important; }
}

/* Mobile: menu MUST sit on hero (absolute overlay), hero visible */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-services #headerimage {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    width: 100% !important;
    height: 100vh !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    z-index: 1 !important;
  }

  html body.kasimov-page-home #header,
  html body.kasimov-has-page-hero #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-services #header,
  html body.kasimov-header-before-hero #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 8px 10px 12px !important;
    z-index: 100 !important;
    background: linear-gradient(180deg, rgba(0,0,0,.58) 0%, rgba(0,0,0,.2) 70%, transparent 100%) !important;
    box-shadow: none !important;
    pointer-events: none !important;
  }
  html body.kasimov-page-home #header a,
  html body.kasimov-page-home #header button,
  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-has-page-hero #header a,
  html body.kasimov-has-page-hero #header button,
  html body.kasimov-has-page-hero #header #mainmenu,
  html body.kasimov-header-before-hero #header a,
  html body.kasimov-header-before-hero #header button,
  html body.kasimov-header-before-hero #header #mainmenu {
    pointer-events: auto !important;
  }

  html body.kasimov-page-home #header #mainmenu,
  html body.kasimov-has-page-hero #header #mainmenu,
  html body.kasimov-header-before-hero #header #mainmenu,
  html body.kasimov-page-home #mainmenu,
  html body.kasimov-has-page-hero #mainmenu {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    margin: 48px 0 0 !important;
    z-index: 101 !important;
  }

  /* Home logo centered on mobile hero */
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    position: absolute !important;
    top: 10px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 102 !important;
    margin: 0 !important;
    text-align: center !important;
  }
  html body.kasimov-page-home #header #logo img {
    max-height: 56px !important;
    width: auto !important;
    margin: 0 auto !important;
  }

  html body #content,
  html body.kasimov-page-home #content {
    position: relative !important;
    z-index: 5 !important;
  }
}


/* === BATCH 36b LOGO MOBILE HARDEN === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4,
  html body.kasimov-page-home #header .span4#logo {
    float: none !important;
    left: 50% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
  }
}

@media only screen and (max-width: 979px) {
  /* Kill bootstrap float that pulls logo left */
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4,
  html body.kasimov-page-home #header .row #logo,
  html body.kasimov-page-home #header [class*="span"]#logo {
    float: none !important;
    position: absolute !important;
    top: 8px !important;
    left: 50% !important;
    right: auto !important;
    width: auto !important;
    max-width: 70vw !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
    text-align: center !important;
    z-index: 120 !important;
  }
  html body.kasimov-page-home #header #logo img {
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }

  /* Menu chrome clearly ON hero, not a separate strip above it */
  html body.kasimov-page-home #header,
  html body.kasimov-has-page-hero #header,
  html body.kasimov-header-before-hero #header {
    position: absolute !important;
    top: 0 !important;
    bottom: auto !important;
    z-index: 110 !important;
  }
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-has-page-hero #headerimage {
    margin-top: 0 !important;
    top: 0 !important;
  }
  html body #header #mainmenu .mobile-nav-toggle,
  html body #mainmenu .mobile-nav-toggle {
    background: rgba(20,16,14,0.72) !important;
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(0,0,0,.28) !important;
  }
  html body #header #mainmenu .mobile-nav-toggle .mobile-nav-icon span {
    background: #fff !important;
  }
}


/* === BATCH 37 CAPTIONS CONTACTS CHEF === */

/* Raise hero captions above booking bar */
@media only screen and (min-width: 980px) {
  html body #headerimage.kasimov-page-hero-host,
  html body #headerimage.kasimov-hero-has-booking,
  html body #iceslideshow.kasimov-hero-has-booking {
    position: relative !important;
  }
  html body #headerimage > .kasimov-hero-booking,
  html body #iceslideshow > .kasimov-hero-booking,
  html body #kasimov-page-hero > .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 18px !important;
    z-index: 40 !important;
  }
  html body .kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #kasimov-page-hero.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #headerimage.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__caption {
    bottom: 130px !important;
    top: auto !important;
    transform: none !important;
    margin-bottom: 0 !important;
  }
  html body #iceslideshow .carousel-caption {
    bottom: 130px !important;
  }
  html body a.kasimov-prices-tab,
  html body a.iceslide_link {
    bottom: 110px !important;
  }
}

/* Contacts page layout recovery */
html body.kasimov-page-contacts #header {
  position: relative !important;
  background: #fff !important;
  box-shadow: 0 2px 14px rgba(40,30,20,.08) !important;
  z-index: 50 !important;
}
html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
  color: #2a2420 !important;
  text-shadow: none !important;
}
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content .item-page {
  position: relative !important;
  z-index: 2 !important;
  max-width: 900px !important;
  margin: 24px auto !important;
  background: #fff !important;
  padding: 28px 32px !important;
  box-shadow: 0 8px 28px rgba(40,30,20,.06) !important;
}
html body.kasimov-page-contacts .kasimov-contacts-page__block {
  margin: 0 0 22px !important;
}
html body.kasimov-page-contacts .kasimov-contacts-lead {
  font-size: 18px !important;
  line-height: 1.65 !important;
  font-weight: 300 !important;
  margin: 0 0 1.4em !important;
}
html body.kasimov-page-contacts .kasimov-social--contacts {
  display: flex !important;
  gap: 12px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body.kasimov-page-contacts .kasimov-social--contacts li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
/* BATCH55: do not hide scripts — maps need them */
html body.kasimov-page-contacts .kasimov-social li:not([class*="social"]) {
  display: none !important;
}

/* Restaurant hero: no gap / continuous full bleed */
html body.kasimov-page-restaurant #headerimage,
html body.kasimov-page-restaurant #headerimage.kasimov-page-hero-host,
html body.kasimov-page-restaurant #kasimov-page-hero {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: none !important;
  overflow: hidden !important;
  background: #1a1512 !important;
}
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-restaurant .content_shadow {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body.kasimov-page-restaurant #content {
  margin-top: 0 !important;
  padding-top: 28px !important;
}

/* Chef: photo UNDER description */
html body .kasimov-chef,
html body .kasimov-chef--stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 18px !important;
  max-width: 740px !important;
  margin: 24px auto !important;
}
html body .kasimov-chef__body {
  order: 1 !important;
  width: 100% !important;
}
html body .kasimov-chef__media {
  order: 2 !important;
  flex: none !important;
  width: 140px !important;
  height: 140px !important;
  margin: 4px 0 0 !important;
}
html body .kasimov-chef__media img {
  width: 140px !important;
  height: 140px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}
html body .kasimov-chef__body blockquote {
  text-align: left !important;
  margin: 0 0 10px !important;
}

/* Mobile logo truly centered vertically+horizontally in top hero band */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    float: none !important;
    margin: 0 !important;
    z-index: 120 !important;
  }
  /* Give header enough height so logo can sit in center of chrome-over-hero zone */
  html body.kasimov-page-home #header {
    min-height: 120px !important;
  }
  html body.kasimov-page-home #header #mainmenu {
    margin-top: 88px !important;
  }
  html body.kasimov-page-home #header #logo img {
    max-height: 64px !important;
  }
}


/* === BATCH 37b RAISE CAPTIONS CLOSE GAP === */
@media only screen and (min-width: 980px) {
  /* Captions well above booking (~78px) + prices tab */
  html body .kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #kasimov-page-hero.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #headerimage.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__caption,
  html body #iceslideshow .carousel-caption {
    bottom: 175px !important;
    top: auto !important;
  }
  html body a.kasimov-prices-tab,
  html body a.iceslide_link {
    bottom: 155px !important;
  }
}

/* Kill beige gap under page heroes */
html body.kasimov-has-page-hero #headerimage,
html body.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
html body.kasimov-page-restaurant #headerimage,
html body.kasimov-page-about #headerimage,
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-services #headerimage,
html body.kasimov-page-rooms #headerimage {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body.kasimov-has-page-hero #content_shadow,
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-about #content_shadow,
html body.kasimov-page-contacts #content_shadow,
html body #content_shadow {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}
html body.kasimov-has-page-hero #content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-contacts #content,
html body.kasimov-page-about #content {
  margin-top: 0 !important;
  padding-top: 20px !important;
}

/* Contacts: full readable layout, no cut-off */
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content .item-page {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}
html body.kasimov-page-contacts .kasimov-contacts-page {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
html body.kasimov-page-contacts .kasimov-contacts-page__block,
html body.kasimov-page-contacts .kasimov-contacts-page h3,
html body.kasimov-page-contacts .kasimov-contacts-page p {
  display: block !important;
  visibility: visible !important;
  color: #2a2420 !important;
}
html body.kasimov-page-contacts .kasimov-contacts-map iframe,
html body.kasimov-page-contacts .kasimov-contacts-map > div {
  width: 100% !important;
  min-height: 320px !important;
  border: 0 !important;
}

/* Mobile logo — vertical + horizontal center in header band */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 112px !important;
    min-height: 112px !important;
    display: block !important;
  }
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4,
  html body.kasimov-page-home #header .span4#logo {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    z-index: 130 !important;
    text-align: center !important;
  }
  html body.kasimov-page-home #header #logo a,
  html body.kasimov-page-home #header #logo img {
    display: block !important;
    margin: 0 auto !important;
  }
  html body.kasimov-page-home #header #logo img {
    max-height: 60px !important;
    width: auto !important;
  }
  html body.kasimov-page-home #header #mainmenu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    padding-top: 4px !important;
  }
}


/* === BATCH 37d FINAL POLISH === */

/* Captions clearly above booking bar */
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #kasimov-page-hero .kasimov-page-hero__caption,
  html body #headerimage.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body.kasimov-has-page-hero .kasimov-page-hero__caption,
  html body #iceslideshow .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption {
    bottom: 200px !important;
    top: auto !important;
  }
  html body a.kasimov-prices-tab,
  html body a.iceslide_link {
    bottom: 175px !important;
  }
}

/* Close 28px hero→content gap (was margin+padding on #content) */
html body.kasimov-has-page-hero #content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-about #content,
html body.kasimov-page-services #content,
html body.kasimov-page-rooms #content,
html body.kasimov-page-contacts #content,
html body.kasimov-header-after-hero #content {
  margin-top: 0 !important;
  padding-top: 16px !important;
}

/* Contacts: page hero ENABLED (batch 54e) — old hide removed */
@media only screen and (max-width: 979px) {
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host {
  display: block !important;
  visibility: visible !important;
  height: 42vh !important;
  min-height: 220px !important;
  max-height: 420px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
}


/* Mobile logo dead-center */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    position: absolute !important;
    top: 56px !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    z-index: 140 !important;
  }
}


/* === BATCH 37e GAP KILL === */
html body.kasimov-has-page-hero #content.container,
html body.kasimov-has-page-hero section#content,
html body.kasimov-has-page-hero #content,
html body.kasimov-page-restaurant #content.container,
html body.kasimov-page-restaurant section#content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-about #content.container,
html body.kasimov-page-about #content,
html body.kasimov-page-services #content.container,
html body.kasimov-page-services #content,
html body.kasimov-page-rooms #content.container,
html body.kasimov-page-rooms #content {
  margin-top: 0 !important;
  margin-bottom: 36px !important;
  padding-top: 16px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-has-page-hero #content.container,
  html body.kasimov-has-page-hero #content,
  html body.kasimov-page-restaurant #content.container,
  html body.kasimov-page-restaurant #content {
    margin-top: 0 !important;
    padding-top: 12px !important;
  }
}


/* === BATCH 37f MAP WIDTH MOBILE LOGO === */
html body.kasimov-page-contacts .kasimov-contacts-map,
html body.kasimov-page-contacts .kasimov-contacts-map .flymaps,
html body.kasimov-page-contacts .kasimov-contacts-map iframe,
html body.kasimov-page-contacts .kasimov-contacts-map > div {
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
html body.kasimov-page-contacts #content .item-page {
  overflow: hidden !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header {
    height: 100px !important;
    min-height: 100px !important;
  }
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    float: none !important;
    width: auto !important;
    z-index: 150 !important;
  }
  html body.kasimov-page-home #header #logo img {
    max-height: 56px !important;
    display: block !important;
    margin: 0 auto !important;
  }
}


/* === BATCH 37g MOBILE LOGO CENTER FORCE === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header,
  html body.kasimov-page-home.kasimov-header-before-hero #header,
  html body.kasimov-page-home.kasimov-header-after-hero #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    z-index: 200 !important;
    background: transparent !important;
  }
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4,
  html body.kasimov-page-home #header .span4#logo,
  html body.kasimov-page-home #header > #logo {
    position: absolute !important;
    top: 48px !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    width: auto !important;
    max-width: 70% !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    display: block !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    text-align: center !important;
    z-index: 220 !important;
  }
  html body.kasimov-page-home #header #logo a {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }
  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo a img {
    display: block !important;
    width: auto !important;
    max-width: 160px !important;
    height: auto !important;
    max-height: 52px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
  }
  /* burger / book stay in corners, don't push logo */
  html body.kasimov-page-home #header #mainmenu {
    position: absolute !important;
    top: 96px !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    width: 100% !important;
  }
}


/* === BATCH 37h LOGO JS BACKED === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo a img,
  html body.kasimov-page-home #header #logo .logo {
    max-height: 52px !important;
    height: 52px !important;
    width: auto !important;
  }
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #header #logo img,
  html body.kasimov-page-home #header #logo .logo {
    max-height: 110px !important;
    height: auto !important;
  }
}


/* === BATCH 38 SWIPE CHEF ABOUT LOGO === */

/* Kill static header modules inside page heroes */
html body.kasimov-has-page-hero #headerimage > div:not(#kasimov-page-hero):not(.kasimov-hero-booking),
html body.kasimov-has-page-hero #headerimage .custom_header1,
html body.kasimov-has-page-hero #headerimage [class*="custom_header"],
html body.kasimov-page-about #headerimage > div:not(#kasimov-page-hero):not(.kasimov-hero-booking),
html body.kasimov-page-about #headerimage img[src*="headimages"],
html body.kasimov-page-about #headerimage img[src*="foie"] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  width: 0 !important;
  opacity: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

html body.kasimov-has-page-hero #kasimov-page-hero,
html body.kasimov-page-about #kasimov-page-hero {
  display: block !important;
  height: 100% !important;
  min-height: 100vh !important;
}

/* Touch-friendly heroes */
html body #kasimov-page-hero,
html body #iceslideshow {
  touch-action: pan-y !important;
  -webkit-user-select: none;
  user-select: none;
}
html body #kasimov-page-hero .kasimov-page-hero__slide {
  pointer-events: none;
}
html body #kasimov-page-hero .kasimov-page-hero__caption {
  pointer-events: none;
}

/* Chef: photo ABOVE name, centered stack */
html body .kasimov-chef,
html body .kasimov-chef--stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  max-width: 520px !important;
  margin: 28px auto !important;
  text-align: center !important;
}
html body .kasimov-chef__media {
  order: 1 !important;
  flex: none !important;
  width: 140px !important;
  height: 140px !important;
  margin: 0 auto !important;
  float: none !important;
}
html body .kasimov-chef__media img {
  width: 140px !important;
  height: 140px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto !important;
}
html body .kasimov-chef__name {
  order: 2 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  font-family: "Instrument Serif", Georgia, serif !important;
  font-size: 22px !important;
  line-height: 1.35 !important;
  color: #2a2420 !important;
  width: 100% !important;
}
html body .kasimov-chef__body {
  display: none !important; /* no long description */
}
html body .kasimov-chef blockquote {
  display: none !important;
}

/* Mobile logo: 2x, below menu, centered */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #header #logo,
  html body.kasimov-page-home #header #logo.span4 {
    position: absolute !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    float: none !important;
    margin: 0 !important;
    z-index: 220 !important;
  }
  html body.kasimov-page-home #header #logo img {
    max-height: 104px !important;
    height: 104px !important;
    width: auto !important;
  }
  html body.kasimov-page-home #header #mainmenu {
    position: relative !important;
    z-index: 230 !important;
  }
}


/* === BATCH 39 MENU BELOW BOOK / TOUR / FOOTER === */

/* Hide white "3D-тур" module heading (and similar overlay titles on tour card) */
html body #kasimov-home-extras .sidebar_module_heading,
html body #kasimov-home-extras h3.sidebar_module_heading,
html body .kasimov-side-card--tour ~ .sidebar_module_heading,
html body .moduletable:has(.kasimov-side-card--tour) .sidebar_module_heading,
html body #sidebar .moduletable:has(.kasimov-side-card--tour) > h3,
html body #kasimov-home-extras .moduletable > h3,
html body #kasimov-home-extras .sidebar_module > h3 {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  color: transparent !important;
}
/* captions restored in BATCH 40 */

/* Tighten spacing above/around footer everywhere */
html body #icecarousel {
  margin-bottom: 16px !important;
  padding-bottom: 12px !important;
}
html body #kasimov-home-extras {
  margin: 8px auto 16px !important;
}
html body #content,
html body #content.container,
html body section#content {
  margin-bottom: 0 !important;
  padding-bottom: 12px !important;
}
html body #footer,
html body #footer.container,
html body footer#footer {
  margin-top: 8px !important;
  margin-bottom: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 10px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  max-width: 1100px !important;
}
html body #copyright,
html body #copyright.container {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 4px !important;
  padding-bottom: 10px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
}
html body #kasimov-footer-contacts {
  margin: 4px auto 6px !important;
  padding: 0 8px !important;
  gap: 6px 14px !important;
}
html body .kasimov-footer-pets {
  margin: 0 0 4px !important;
}
html body #bottom,
html body #bottom.container {
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
/* Reduce wide side gutters on footer row modules */
html body #footer .row,
html body #footer [class*="span"] {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
}
@media only screen and (min-width: 980px) {
  html body #footer,
  html body #copyright {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  html body #content.container,
  html body section#content {
    margin-bottom: 8px !important;
    padding-bottom: 16px !important;
  }
}

/* Mobile: menu bar sits under fixed Book button */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home a.kasimov-book-cta {
    position: fixed !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 250 !important;
  }
  html body.kasimov-page-home #header #mainmenu {
    position: absolute !important;
    /* JS sets exact top below book; fallback: */
    top: 56px !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 230 !important;
  }
}


/* === BATCH 39d FOOTER GAP TIGHT === */
html body #kasimov-home-extras,
html body #kasimov-home-extras.container {
  margin: 6px auto 10px !important;
  padding: 0 10px 0 !important;
  min-height: 0 !important;
}
html body #kasimov-home-extras .kasimov-home-extras__grid {
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body #kasimov-home-extras .kasimov-side-card,
html body #kasimov-home-extras .kasimov-side-card--tour,
html body #kasimov-home-extras .sidebar_module {
  margin: 0 !important;
  min-height: 0 !important;
}
html body #kasimov-home-extras .kasimov-side-card__media,
html body #kasimov-home-extras .kasimov-side-card__media img {
  margin: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  object-fit: cover !important;
}
html body #icecarousel {
  margin-bottom: 10px !important;
  padding-bottom: 8px !important;
}
html body #content,
html body #content.container {
  margin-bottom: 0 !important;
  padding-bottom: 8px !important;
}
html body #footer,
html body #footer.container,
html body #copyright,
html body #copyright.container {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  padding-top: 6px !important;
  padding-bottom: 8px !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}
html body #wrapper > #footer,
html body #container > #footer,
html body #main + #footer {
  margin-top: 4px !important;
}
/* kill leftover large bottom margins before footer */
html body #promo,
html body #testimonials,
html body #sidebar {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/* === BATCH 40 ONLINE GREEN + CAPTIONS + SIDE CARDS === */

/* "Online" same serif as бронирование, green */
html body .kasimov-online-word,
html body .kasimov-promo-card h3 .kasimov-online-word,
html body .kasimov-promo-card__body h3 a .kasimov-online-word,
html body h3 .kasimov-online-word {
  font-family: "Instrument Serif", Georgia, serif !important;
  font-weight: 400 !important;
  font-style: normal !important;
  color: #2e7d32 !important;
  letter-spacing: 0.01em !important;
}
html body .kasimov-promo-card h3,
html body .kasimov-promo-card h3 a,
html body .kasimov-promo-card__body h3,
html body .kasimov-promo-card__body h3 a {
  font-family: "Instrument Serif", Georgia, serif !important;
  font-weight: 400 !important;
  color: #2a2420 !important;
}

/* Side card captions visible again (under/on photo as before) */
html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  height: auto !important;
  max-height: none !important;
  padding: 14px 16px !important;
  margin: 0 !important;
  font-family: "Instrument Serif", Georgia, serif !important;
  font-size: 22px !important;
  line-height: 1.25 !important;
  font-weight: 400 !important;
  color: #fff !important;
  text-align: center !important;
  text-indent: 0 !important;
  background: linear-gradient(transparent, rgba(0,0,0,.72)) !important;
  pointer-events: none !important;
  z-index: 2 !important;
}
html body .kasimov-side-card,
html body .kasimov-side-card--tour,
html body .kasimov-side-card--review {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
}

/* Raise ALL hero captions well above booking bar (~78–96px) */
@media only screen and (min-width: 980px) {
  html body #iceslideshow .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption .mod-description,
  html body.kasimov-page-home #iceslideshow .carousel-caption .mod-description p,
  html body.kasimov-page-home #iceslideshow .carousel-caption a,
  html body #kasimov-page-hero .kasimov-page-hero__caption,
  html body #kasimov-page-hero.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #headerimage.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body.kasimov-has-page-hero .kasimov-page-hero__caption,
  html body.kasimov-hero-has-booking .kasimov-page-hero__caption {
    bottom: 250px !important;
    top: auto !important;
    z-index: 45 !important;
  }
  html body a.kasimov-prices-tab,
  html body a.iceslide_link {
    bottom: 220px !important;
  }
}
@media only screen and (max-width: 979px) {
  html body #iceslideshow .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body #kasimov-page-hero .kasimov-page-hero__caption {
    bottom: 110px !important;
    top: auto !important;
  }
}


/* === BATCH 40b SPECIFICITY FIX === */
/* Beat legacy bottom:48px on .item .carousel-caption */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-page-home #iceslideshow .item .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption.active,
  html body.kasimov-page-home #iceslideshow .item .carousel-caption.active,
  html body.kasimov-page-home #iceslideshow .iceslideshow-fill .carousel-caption,
  html body.kasimov-page-home #iceslideshow .container .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .item .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption.active,
  html body.kasimov-page-home #iceslideshow.kasimov-hero-has-booking .item .carousel-caption.active {
    bottom: 250px !important;
    top: auto !important;
    z-index: 50 !important;
  }
  html body.kasimov-page-home a.kasimov-prices-tab,
  html body.kasimov-page-home a.iceslide_link,
  html body #iceslideshow ~ a.kasimov-prices-tab,
  html body a.kasimov-prices-tab {
    bottom: 220px !important;
  }
  html body.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-has-page-hero #headerimage .kasimov-page-hero__caption,
  html body #kasimov-page-hero .item .kasimov-page-hero__caption,
  html body #kasimov-page-hero .kasimov-page-hero__slide .kasimov-page-hero__caption {
    bottom: 250px !important;
    top: auto !important;
  }
}

/* Online green — beat promo link color */
html body .kasimov-promo-card h3 a .kasimov-online-word,
html body .kasimov-promo-card__body h3 a .kasimov-online-word,
html body .kasimov-promo-card h3 .kasimov-online-word,
html body h3 a span.kasimov-online-word,
html body h3 span.kasimov-online-word,
html body span.kasimov-online-word {
  color: #2e7d32 !important;
  -webkit-text-fill-color: #2e7d32 !important;
  font-family: "Instrument Serif", Georgia, serif !important;
  font-weight: 400 !important;
}

/* BATCH41 premium photo grade */
img:not([src*="logo"]):not([src*="social"]):not([src*="phone"]):not([src*="wi-fi"]):not([src*="favicon"]),
.item .carousel-inner > .item > img,
.item .carousel-inner > .item > a > img,
#iceslideshow img,
#kasimov-page-hero img,
.kasimov-page-hero__media img,
.lg-outer .lg-image,
.lg-outer .lg-thumb-item img,
.lightgallery img,
.blog img,
.item-page img,
.moduletable img,
.ice_carousel img {
  -webkit-filter: contrast(1.04) saturate(0.93) brightness(1.01) !important;
  filter: contrast(1.04) saturate(0.93) brightness(1.01) !important;
}
#header #logo img,
.kasimov-contacts__icon,
.kasimov-social img,
img[src*="logo"],
img[src*="social"],
img[src*="phone"] {
  -webkit-filter: none !important;
  filter: none !important;
}


/* === BATCH 42 === */
/* Home captions: just above booking module (~78px + 18px + 14px gap) */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-page-home #iceslideshow .item .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption.active,
  html body.kasimov-page-home #iceslideshow .item .carousel-caption.active,
  html body.kasimov-page-home #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body.kasimov-page-home #iceslideshow.kasimov-hero-has-booking .item .carousel-caption,
  html body.kasimov-page-home #iceslideshow.kasimov-hero-has-booking .carousel-caption.active,
  html body.kasimov-page-home #iceslideshow.kasimov-hero-has-booking .item .carousel-caption.active,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .item .carousel-caption {
    bottom: 112px !important;
    top: auto !important;
    z-index: 50 !important;
  }
  html body.kasimov-page-home a.kasimov-prices-tab,
  html body.kasimov-page-home a.iceslide_link,
  html body a.kasimov-prices-tab {
    bottom: 100px !important;
  }
  html body.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-has-page-hero #headerimage .kasimov-page-hero__caption,
  html body #kasimov-page-hero .kasimov-page-hero__caption,
  html body #kasimov-page-hero.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body #headerimage.kasimov-hero-has-booking .kasimov-page-hero__caption {
    bottom: 112px !important;
    top: auto !important;
  }
}

/* Chef: true center, no cream plate, no hover flash */
html body .kasimov-chef,
html body .kasimov-chef--stack,
html body #testimonials .kasimov-chef,
html body #testimonials .kasimov-chef--stack,
html body .item-page .kasimov-chef,
html body .item-page .kasimov-chef--stack {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 220px !important;
  margin: 18px auto 8px !important;
  padding: 0 !important;
  text-align: center !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body .kasimov-chef__media,
html body #testimonials .kasimov-chef__media,
html body .item-page .kasimov-chef__media {
  display: block !important;
  width: 160px !important;
  height: 160px !important;
  margin: 0 auto 10px !important;
  padding: 0 !important;
  float: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}
html body .kasimov-chef__media img,
html body #testimonials .kasimov-chef__media img,
html body #testimonials:hover .kasimov-chef__media img,
html body #testimonials:hover .testimonials_author img,
html body .item-page .kasimov-chef__media img,
html body .kasimov-chef img {
  display: block !important;
  width: 160px !important;
  height: 160px !important;
  margin: 0 auto !important;
  float: none !important;
  object-fit: contain !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  -webkit-filter: none !important;
  filter: none !important;
}
html body .kasimov-chef__name,
html body #testimonials .kasimov-chef__name,
html body .item-page .kasimov-chef__name {
  display: block !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  float: none !important;
}
html body #testimonials:hover .kasimov-chef img,
html body #testimonials:hover .kasimov-chef__media img,
html body .kasimov-chef:hover,
html body .kasimov-chef:hover img,
html body .kasimov-chef__media:hover,
html body .kasimov-chef__media:hover img {
  background: transparent !important;
  background-color: transparent !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  -webkit-filter: none !important;
}

/* Kill white caption flash on menu carousel hover */
html body #icecarousel .icecarousel .icecarousel-inner:hover .icecarousel-caption,
html body #icecarousel .icecarousel-inner:hover .icecarousel-caption,
html body #icecarousel .icecarousel-caption {
  background: transparent !important;
  background-color: transparent !important;
  opacity: 0 !important;
}
html body #icecarousel .icecarousel .icecarousel-inner:hover img,
html body #icecarousel .icecarousel-inner:hover img {
  transform: none !important;
}

/* Mobile Rooms: no heroes */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-rooms .kasimov-page-hero,
  html body.kasimov-page-rooms .kasimov-hero-booking {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}

/* Photo grade CSS: exclude chef soft PNG + logos; slightly richer grade */
img:not([src*="logo"]):not([src*="social"]):not([src*="phone"]):not([src*="wi-fi"]):not([src*="favicon"]):not([src*="chef-filatov"]),
.item .carousel-inner > .item > img,
.item .carousel-inner > .item > a > img,
#iceslideshow img,
#kasimov-page-hero img,
.kasimov-page-hero__media img,
.lg-outer .lg-image,
.lightgallery img,
.blog img,
.item-page img,
.moduletable img,
.ice_carousel img {
  -webkit-filter: contrast(1.06) saturate(0.90) brightness(1.015) !important;
  filter: contrast(1.06) saturate(0.90) brightness(1.015) !important;
}
#header #logo img,
.kasimov-contacts__icon,
.kasimov-social img,
.kasimov-chef img,
.kasimov-chef__media img,
img[src*="logo"],
img[src*="social"],
img[src*="phone"],
img[src*="chef-filatov"] {
  -webkit-filter: none !important;
  filter: none !important;
  background: transparent !important;
}


/* === BATCH 43 === */
/* Mobile: open menu list below "Меню" toggle (no overlap with label) */
@media only screen and (max-width: 979px) {
  html body #header #mainmenu,
  html body #mainmenu {
    position: absolute !important;
    z-index: 230 !important;
  }
  html body #header #mainmenu.is-open,
  html body #mainmenu.is-open {
    z-index: 240 !important;
  }
  html body #mainmenu.is-open ul.nav.menu,
  html body #mainmenu.is-open ul#icemegamenu,
  html body #header #mainmenu.is-open ul.nav.menu,
  html body #header #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-page-home #header #mainmenu.is-open ul.nav.menu,
  html body.kasimov-page-home #header #mainmenu.is-open ul#icemegamenu {
    display: flex !important;
    flex-direction: column !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: calc(100% + 10px) !important;
    margin: 0 !important;
    padding: 6px 0 !important;
    background: #fff !important;
    border-radius: 4px !important;
    max-height: min(70vh, 480px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.18) !important;
    z-index: 250 !important;
  }
  html body #mainmenu.is-open ul.nav.menu > li > a,
  html body #mainmenu.is-open ul#icemegamenu > li > a,
  html body #header #mainmenu.is-open ul.nav.menu > li > a,
  html body #header #mainmenu.is-open ul#icemegamenu > li > a {
    color: #333 !important;
    text-shadow: none !important;
    background: transparent !important;
    padding: 12px 16px !important;
  }
}

/* Mobile: content clear of absolute header/menu on pages without visible hero */
@media only screen and (max-width: 979px) {
  /* only pages with real hero need top offset under absolute header */
  html body:not(.kasimov-page-home).kasimov-has-page-hero #content,
  html body:not(.kasimov-page-home).kasimov-has-page-hero #content.container,
  html body:not(.kasimov-page-home).kasimov-has-page-hero section#content {
    padding-top: 12px !important;
    margin-top: 0 !important;
  }
  html body:not(.kasimov-page-home):not(.kasimov-has-page-hero) #content,
  html body:not(.kasimov-page-home):not(.kasimov-has-page-hero) #content.container,
  html body:not(.kasimov-page-home):not(.kasimov-has-page-hero) section#content,
  html body.kasimov-page-contacts #content {
    padding-top: 6px !important;
    margin-top: 0 !important;
  }
  /* Rooms: hero hidden — need clear offset under menu bar */
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container {
    padding-top: 6px !important;
    margin-top: 0 !important;
  }
  /* Pages that keep a visible page-hero: content already sits below hero */
  html body.kasimov-has-page-hero:not(.kasimov-page-rooms) #content,
  html body.kasimov-has-page-hero:not(.kasimov-page-rooms) #content.container {
    padding-top: 12px !important;
  }
}

/* Desktop: slight content clearance under header strip on inner pages */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container,
  html body.kasimov-page-about #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-services #content,
  html body.kasimov-page-contacts #content {
    padding-top: 28px !important;
  }
}

/* Footer: kill large leftover gap before footer in all sections */
html body #content,
html body #content.container,
html body section#content,
html body #main,
html body #mainbody,
html body #component {
  margin-bottom: 0 !important;
  padding-bottom: 8px !important;
  min-height: 0 !important;
}
html body #content_shadow,
html body #content_shadow.container {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body #icecarousel,
html body #promo,
html body #testimonials,
html body #sidebar,
html body #bottom,
html body #botsl,
html body .blog,
html body .item-page,
html body .items-leading,
html body .items-row {
  margin-bottom: 0 !important;
}
html body #kasimov-home-extras,
html body #kasimov-home-extras.container {
  margin: 4px auto 8px !important;
  padding: 0 10px !important;
  min-height: 0 !important;
}
html body #kasimov-home-extras .kasimov-side-card,
html body #kasimov-home-extras .sidebar_module {
  margin: 0 !important;
  min-height: 0 !important;
}
html body #footer,
html body #footer.container,
html body footer#footer,
html body #copyright,
html body #copyright.container {
  margin-top: 4px !important;
  margin-bottom: 0 !important;
  padding-top: 6px !important;
  padding-bottom: 8px !important;
}


/* === BATCH 43b === */
/* Open mobile menu BELOW the toggle button (pixel top — % fails when parent height collapses) */
@media only screen and (max-width: 979px) {
  html body #mainmenu,
  html body #header #mainmenu,
  html body.kasimov-page-home #header #mainmenu {
    overflow: visible !important;
  }
  html body #mainmenu .container,
  html body #header #mainmenu .container {
    position: relative !important;
    overflow: visible !important;
    min-height: 44px !important;
  }
  html body #mainmenu.is-open ul.nav.menu,
  html body #mainmenu.is-open ul#icemegamenu,
  html body #header #mainmenu.is-open ul.nav.menu,
  html body #header #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-page-home #header #mainmenu.is-open ul.nav.menu,
  html body.kasimov-page-home #header #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-page-home #mainmenu.is-open ul#icemegamenu {
    display: flex !important;
    flex-direction: column !important;
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: 54px !important;
    margin: 0 !important;
    padding: 4px 0 !important;
    background: #fff !important;
    border-radius: 4px !important;
    max-height: min(70vh, 480px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    box-shadow: 0 8px 24px rgba(0,0,0,0.18) !important;
    z-index: 260 !important;
  }
}


/* === BATCH 45 hero HQ === */
/* Heroes: no muddy CSS grade — serve sharp master files */
html body #iceslideshow img,
html body #iceslideshow .carousel-inner > .item > img,
html body #iceslideshow .carousel-inner > .item > a > img,
html body #kasimov-page-hero img,
html body #kasimov-page-hero .kasimov-page-hero__slide img,
html body .kasimov-page-hero__media img,
html body #headerimage img {
  -webkit-filter: none !important;
  filter: none !important;
  image-rendering: auto !important;
  -ms-interpolation-mode: bicubic;
  backface-visibility: hidden;
}
/* Prefer object-fit cover without extra blur from scaling */
html body #iceslideshow .carousel-inner > .item > img,
html body #iceslideshow .item > img,
html body #kasimov-page-hero .kasimov-page-hero__slide img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  max-width: none !important;
}


/* === BATCH 46 prices FAB + menu shop === */
/* Hide old bottom/side prices tab look */
html body a.iceslide_link.kasimov-prices-tab:not(.kasimov-prices-fab) {
  display: none !important;
}

/* Esloboda-style floating "Узнать цены" */
html body a.kasimov-prices-fab,
html body #kasimov-prices-fab {
  position: fixed !important;
  right: 28px !important;
  bottom: 28px !important;
  left: auto !important;
  top: auto !important;
  z-index: 10060 !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  width: auto !important;
  min-width: 68px !important;
  max-width: 68px !important;
  height: 68px !important;
  padding: 0 20px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 9999px !important;
  background: #196071 !important;
  color: #fff !important;
  text-decoration: none !important;
  box-shadow: 0 10px 28px rgba(25, 96, 113, 0.38) !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  transform: none !important;
  transition: max-width .28s ease, background .2s ease, box-shadow .2s ease, padding .28s ease !important;
  font-family: "Manrope", "Open Sans", sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  line-height: 1 !important;
}
html body a.kasimov-prices-fab:hover,
html body a.kasimov-prices-fab:focus,
html body #kasimov-prices-fab:hover,
html body #kasimov-prices-fab:focus {
  max-width: 240px !important;
  padding: 0 22px 0 18px !important;
  background: #147086 !important;
  color: #fff !important;
  box-shadow: 0 12px 32px rgba(25, 96, 113, 0.48) !important;
  transform: none !important;
  opacity: 0.95 !important;
}
html body .kasimov-prices-fab__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  flex: 0 0 28px !important;
  color: #fff !important;
}
html body .kasimov-prices-fab__icon svg {
  display: block !important;
  width: 28px !important;
  height: 28px !important;
}
html body .kasimov-prices-fab__label {
  display: inline-block !important;
  max-width: 0 !important;
  opacity: 0 !important;
  margin-left: 0 !important;
  overflow: hidden !important;
  transition: max-width .28s ease, opacity .2s ease, margin .28s ease !important;
  color: #fff !important;
}
html body a.kasimov-prices-fab:hover .kasimov-prices-fab__label,
html body a.kasimov-prices-fab:focus .kasimov-prices-fab__label {
  max-width: 160px !important;
  opacity: 1 !important;
  margin-left: 12px !important;
}

/* Prices modal overlay (TravelLine booking/prices) */
html.kasimov-prices-open,
html.kasimov-prices-open body {
  overflow: hidden !important;
}
html body .kasimov-prices-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10070 !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: center !important;
}
html body .kasimov-prices-modal[hidden] {
  display: none !important;
}
html body .kasimov-prices-modal__backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(10, 18, 22, 0.55) !important;
  backdrop-filter: blur(2px);
}
html body .kasimov-prices-modal__panel {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  width: min(920px, 100%) !important;
  max-height: 100% !important;
  margin: 0 auto !important;
  background: #f4f7f8 !important;
  box-shadow: 0 0 0 1px rgba(255,255,255,.08), 0 24px 80px rgba(0,0,0,.35) !important;
  overflow: hidden !important;
}
html body .kasimov-prices-modal__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 16px 20px !important;
  background: #fff !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
}
html body .kasimov-prices-modal__title {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}
html body .kasimov-prices-modal__title strong {
  font-family: "Instrument Serif", Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: #14262c !important;
}
html body .kasimov-prices-modal__title span {
  font-size: 13px !important;
  color: #5b6b72 !important;
}
html body .kasimov-prices-modal__close {
  width: 44px !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #196071 !important;
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
html body .kasimov-prices-modal__body {
  flex: 1 1 auto !important;
  overflow: auto !important;
  padding: 18px 16px 28px !important;
  background: #eef3f5 !important;
}
html body .kasimov-prices-modal__tl {
  min-height: 420px !important;
  background: #fff !important;
  border-radius: 14px !important;
  padding: 12px !important;
  box-shadow: 0 10px 30px rgba(20, 40, 50, 0.08) !important;
}

@media only screen and (max-width: 979px) {
  html body a.kasimov-prices-fab,
  html body #kasimov-prices-fab {
    right: 16px !important;
    bottom: 18px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    height: 60px !important;
    padding: 0 16px !important;
  }
  html body a.kasimov-prices-fab:hover,
  html body a.kasimov-prices-fab:focus {
    max-width: 210px !important;
  }
  html body .kasimov-prices-modal__panel {
    width: 100% !important;
    max-height: 100% !important;
    border-radius: 0 !important;
  }
}

/* Menu ribbon: whole card feels clickable */
html body #icecarousel .icecarousel-inner,
html body #icecarousel .slides > li,
html body #icecarousel .slides > div {
  cursor: pointer !important;
}


/* === BATCH 46b FAB polish === */
html body a.kasimov-prices-fab,
html body #kasimov-prices-fab {
  width: 68px !important;
  min-width: 68px !important;
  max-width: 68px !important;
  height: 68px !important;
  padding: 0 !important;
  justify-content: center !important;
  border-radius: 50% !important;
  transition: max-width .28s ease, width .28s ease, border-radius .28s ease, padding .28s ease, background .2s ease, box-shadow .2s ease !important;
}
html body a.kasimov-prices-fab:hover,
html body a.kasimov-prices-fab:focus,
html body #kasimov-prices-fab:hover,
html body #kasimov-prices-fab:focus {
  width: auto !important;
  min-width: 68px !important;
  max-width: 260px !important;
  border-radius: 9999px !important;
  padding: 0 22px 0 18px !important;
  justify-content: flex-start !important;
}
html body .kasimov-prices-fab__icon {
  width: 30px !important;
  height: 30px !important;
  flex: 0 0 30px !important;
}
html body .kasimov-prices-fab__icon svg {
  width: 30px !important;
  height: 30px !important;
}
@media only screen and (max-width: 979px) {
  html body a.kasimov-prices-fab,
  html body #kasimov-prices-fab {
    width: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    height: 60px !important;
    padding: 0 !important;
    border-radius: 50% !important;
  }
  html body a.kasimov-prices-fab:hover,
  html body a.kasimov-prices-fab:focus {
    width: auto !important;
    max-width: 220px !important;
    border-radius: 9999px !important;
    padding: 0 18px 0 14px !important;
  }
}


/* === BATCH 47 hero social chef themes === */

/* --- Hero: one fade duration, steady pace --- */
html body #iceslideshow .carousel-fade .item,
html body #iceslideshow .carousel-inner > .item {
  -webkit-transition: opacity 1.35s cubic-bezier(.22,.61,.36,1) !important;
  transition: opacity 1.35s cubic-bezier(.22,.61,.36,1) !important;
}
html body #iceslideshow .carousel-inner > .item > img,
html body #iceslideshow .carousel-inner > .item > a > img {
  -webkit-transition: transform 6.2s ease-out !important;
  transition: transform 6.2s ease-out !important;
}

/* --- Header social before Book --- */
html body .kasimov-header-social {
  position: fixed !important;
  top: 16px !important;
  right: 188px !important;
  z-index: 2147483000 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .kasimov-header-social__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 3px !important;
  background: rgba(20, 24, 28, 0.55) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.28) !important;
  text-decoration: none !important;
  transition: background .2s ease, transform .2s ease !important;
}
html body .kasimov-header-social__link:hover {
  background: rgba(25, 96, 113, 0.92) !important;
  transform: translateY(-1px) !important;
}
html body .kasimov-header-social__link img {
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  object-fit: contain !important;
  filter: brightness(0) invert(1) !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-header-social {
    top: 8px !important;
    right: 118px !important;
    gap: 6px !important;
  }
  html body .kasimov-header-social__link {
    width: 36px !important;
    height: 36px !important;
  }
  html body .kasimov-header-social__link img {
    width: 18px !important;
    height: 18px !important;
  }
}

/* --- Hide prices FAB --- */
html body a.kasimov-prices-fab,
html body #kasimov-prices-fab,
html body .kasimov-prices-modal,
html body a.iceslide_link.kasimov-prices-tab,
html body a.kasimov-prices-tab {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* --- Chef atelier --- */
html body .kasimov-chef,
html body .kasimov-chef--stack,
html body .kasimov-chef--atelier,
html body #testimonials .kasimov-chef,
html body #testimonials .kasimov-chef--atelier {
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr) !important;
  align-items: center !important;
  gap: 48px 56px !important;
  max-width: 980px !important;
  margin: 36px auto 28px !important;
  padding: 36px 28px !important;
  position: relative !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}
html body .kasimov-chef__stage {
  position: relative !important;
  justify-self: end !important;
  width: min(100%, 360px) !important;
}
html body .kasimov-chef__glow {
  position: absolute !important;
  inset: 12% -8% -10% 8% !important;
  background: radial-gradient(ellipse at center, rgba(180, 140, 90, 0.22), transparent 70%) !important;
  filter: blur(18px) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
html body .kasimov-chef__portrait,
html body .kasimov-chef__media {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  overflow: hidden !important;
  aspect-ratio: 4 / 5 !important;
  box-shadow: 0 28px 60px rgba(20, 24, 28, 0.18) !important;
}
html body .kasimov-chef__portrait::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border: 1px solid rgba(255,255,255,.35) !important;
  pointer-events: none !important;
  mix-blend-mode: soft-light !important;
}
html body .kasimov-chef__portrait img,
html body .kasimov-chef__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  filter: none !important;
  transform: none !important;
  transition: transform 1.1s cubic-bezier(.22,.61,.36,1) !important;
}
html body .kasimov-chef--atelier:hover .kasimov-chef__portrait img {
  transform: scale(1.03) !important;
}
html body .kasimov-chef__copy,
html body .kasimov-chef__body {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
  max-width: 420px !important;
  padding: 0 !important;
  background: transparent !important;
}
html body .kasimov-chef__eyebrow {
  margin: 0 !important;
  font-family: "Manrope", "Open Sans", sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #8a6a45 !important;
}
html body .kasimov-chef__title {
  margin: 0 !important;
  font-family: "Instrument Serif", Georgia, "Times New Roman", serif !important;
  font-size: clamp(34px, 4vw, 48px) !important;
  font-weight: 400 !important;
  line-height: 1.05 !important;
  color: #1a2226 !important;
  letter-spacing: -0.01em !important;
}
html body .kasimov-chef__role,
html body .kasimov-chef__name {
  margin: 0 !important;
  font-family: "Manrope", "Open Sans", sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  color: #5b6b72 !important;
  text-align: left !important;
}
html body .kasimov-chef__rule {
  width: 48px !important;
  height: 1px !important;
  margin: 8px 0 4px !important;
  background: #c4a574 !important;
  border: 0 !important;
}
html body .kasimov-chef__lead,
html body .kasimov-chef blockquote {
  margin: 0 !important;
  font-family: "Manrope", "Open Sans", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
  color: #3d4a50 !important;
  font-style: normal !important;
  border: 0 !important;
  padding: 0 !important;
  quotes: none !important;
  max-width: 34em !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-chef,
  html body .kasimov-chef--atelier,
  html body #testimonials .kasimov-chef {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    padding: 22px 16px !important;
    margin: 18px auto !important;
    text-align: center !important;
  }
  html body .kasimov-chef__stage {
    justify-self: center !important;
    width: min(100%, 280px) !important;
  }
  html body .kasimov-chef__copy,
  html body .kasimov-chef__body {
    align-items: center !important;
    max-width: 100% !important;
    text-align: center !important;
  }
  html body .kasimov-chef__title {
    font-size: 32px !important;
  }
  html body .kasimov-chef__role,
  html body .kasimov-chef__name,
  html body .kasimov-chef__lead {
    text-align: center !important;
  }
}

/* --- Thematic section backgrounds (subtle SVG motifs) --- */
/* Restaurant / chef / menu: cups & spoons */
html body.kasimov-page-restaurant #content,
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-home #testimonials,
html body.kasimov-page-home #icecarousel {
  background-color: #f7f3ec !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23b08a5a' stroke-width='1.2' opacity='0.14'%3E%3Ccircle cx='36' cy='40' r='12'/%3E%3Cpath d='M36 52v22M30 40c-8 0-12 6-12 12M42 40c8 0 12 6 12 12'/%3E%3Cpath d='M110 28c8 10 8 28 0 38M118 28c8 10 8 28 0 38M114 28v40'/%3E%3Cpath d='M100 100h36M118 100v36M106 112h24M106 124h24'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: 160px 160px !important;
  background-repeat: repeat !important;
}

/* Services: cues & billiard balls */
html body.kasimov-page-services #content,
html body.kasimov-page-services #content_shadow,
html body.kasimov-page-services .item-page {
  background-color: #f3f6f4 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cg fill='none' stroke='%232f6b55' stroke-width='1.2' opacity='0.13'%3E%3Ccircle cx='42' cy='48' r='16'/%3E%3Ccircle cx='42' cy='48' r='5'/%3E%3Ccircle cx='128' cy='130' r='14'/%3E%3Ccircle cx='128' cy='130' r='4.5'/%3E%3Cpath d='M20 150 L160 30'/%3E%3Cpath d='M24 154 L28 146'/%3E%3Cpath d='M70 40h40M90 40v50'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: 180px 180px !important;
  background-repeat: repeat !important;
}

/* Rooms: keys */
html body.kasimov-page-rooms #content,
html body.kasimov-page-rooms #content_shadow,
html body.kasimov-page-home #promo {
  background-color: #f6f4f1 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='170' height='170' viewBox='0 0 170 170'%3E%3Cg fill='none' stroke='%237a5a3a' stroke-width='1.2' opacity='0.13'%3E%3Ccircle cx='48' cy='46' r='14'/%3E%3Ccircle cx='48' cy='46' r='6'/%3E%3Cpath d='M60 52 L120 52 L120 60 L108 60 L108 78 L98 78 L98 60 L86 60 L86 72 L76 72 L76 60'/%3E%3Ccircle cx='126' cy='118' r='12'/%3E%3Cpath d='M136 124 L158 124 L158 132 L148 132 L148 146 L140 146 L140 132'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: 170px 170px !important;
  background-repeat: repeat !important;
}

/* About: soft crest / building motif */
html body.kasimov-page-about #content,
html body.kasimov-page-about #content_shadow {
  background-color: #f5f2ee !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='190' height='190' viewBox='0 0 190 190'%3E%3Cg fill='none' stroke='%238a7358' stroke-width='1.15' opacity='0.12'%3E%3Cpath d='M40 130 V70 L70 48 L100 70 V130'/%3E%3Cpath d='M55 130 V95 H85 V130'/%3E%3Cpath d='M70 48 V36'/%3E%3Ccircle cx='140' cy='70' r='18'/%3E%3Cpath d='M140 52 V88 M122 70 H158'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: 190px 190px !important;
  background-repeat: repeat !important;
}

/* Contacts */
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content_shadow {
  background-color: #f4f6f7 !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%234a6570' stroke-width='1.2' opacity='0.12'%3E%3Cpath d='M40 50c0-12 10-22 22-22s22 10 22 22c0 18-22 40-22 40S40 68 40 50z'/%3E%3Ccircle cx='62' cy='50' r='7'/%3E%3Crect x='100' y='96' width='36' height='28' rx='4'/%3E%3Cpath d='M108 96 V88 h20 v8'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: 160px 160px !important;
  background-repeat: repeat !important;
}

/* Soft veil so patterns don't overpower content cards */
html body.kasimov-page-home #promo .moduletable_content,
html body.kasimov-page-home #testimonials .custom,
html body.kasimov-page-home #icecarousel .container {
  position: relative !important;
  z-index: 1 !important;
}


/* === BATCH 47b social icon contrast === */
html body .kasimov-header-social__link {
  background: #196071 !important;
  border: 1px solid rgba(255,255,255,.28) !important;
}
html body .kasimov-header-social__link:hover {
  background: #147086 !important;
}
html body .kasimov-header-social__link img {
  filter: none !important;
  opacity: 1 !important;
}
/* If SVG is dark, force white via CSS mask fallback on links */
html body .kasimov-header-social__link--vk,
html body .kasimov-header-social__link[title="ВКонтакте"] {
  background-image: none !important;
}


/* === BATCH 47c branded social icons === */
html body .kasimov-header-social__link {
  background: transparent !important;
  border: 0 !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.25) !important;
  overflow: hidden !important;
  border-radius: 8px !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
}
html body .kasimov-header-social__link img {
  width: 40px !important;
  height: 40px !important;
  filter: none !important;
  opacity: 1 !important;
  object-fit: cover !important;
}
html body .kasimov-header-social__link:hover {
  transform: translateY(-2px) !important;
  background: transparent !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-header-social__link,
  html body .kasimov-header-social__link img {
    width: 34px !important;
    height: 34px !important;
  }
  html body .kasimov-header-social {
    right: 112px !important;
  }
}


/* === BATCH 47d chef portrait editorial === */
html body .kasimov-chef--atelier .kasimov-chef__portrait,
html body .kasimov-chef--atelier .kasimov-chef__media,
html body #testimonials .kasimov-chef--atelier .kasimov-chef__portrait,
html body #testimonials .kasimov-chef--atelier .kasimov-chef__media {
  width: min(100%, 340px) !important;
  max-width: 340px !important;
  height: auto !important;
  aspect-ratio: 3 / 4 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #1a1a1a !important;
  box-shadow: 0 32px 70px rgba(20, 24, 28, 0.22) !important;
}
html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img,
html body #testimonials .kasimov-chef--atelier img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  object-position: center 18% !important;
  filter: none !important;
  -webkit-filter: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
html body .kasimov-chef--atelier {
  background:
    linear-gradient(180deg, rgba(247,243,236,.92), rgba(247,243,236,.96)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cg fill='none' stroke='%23b08a5a' stroke-width='1.2' opacity='0.16'%3E%3Ccircle cx='36' cy='40' r='12'/%3E%3Cpath d='M36 52v22M30 40c-8 0-12 6-12 12M42 40c8 0 12 6 12 12'/%3E%3Cpath d='M110 28c8 10 8 28 0 38M118 28c8 10 8 28 0 38M114 28v40'/%3E%3Cpath d='M100 100h36M118 100v36M106 112h24M106 124h24'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: auto, 160px 160px !important;
  border: 1px solid rgba(176, 138, 90, 0.16) !important;
}


/* === BATCH 48 promo align + header cluster + chef === */

html body .kasimov-header-actions {
  position: fixed !important;
  top: 14px !important;
  right: 14px !important;
  left: auto !important;
  z-index: 2147483000 !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 42px !important;
  pointer-events: none !important;
}
html body .kasimov-header-actions a { pointer-events: auto !important; }
html body .kasimov-header-social {
  position: static !important;
  top: auto !important;
  right: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
}
html body .kasimov-header-social__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  max-width: 42px !important;
  max-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.22) !important;
  flex: 0 0 42px !important;
}
html body .kasimov-header-social__link img {
  display: block !important;
  width: 42px !important;
  height: 42px !important;
  object-fit: cover !important;
  filter: none !important;
  opacity: 1 !important;
}
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited {
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  min-width: 148px !important;
  padding: 0 18px !important;
  margin: 0 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  flex: 0 0 auto !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-header-actions {
    top: 8px !important;
    right: 8px !important;
    gap: 6px !important;
    height: 36px !important;
  }
  html body .kasimov-header-social { height: 36px !important; gap: 6px !important; }
  html body .kasimov-header-social__link,
  html body .kasimov-header-social__link img {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    max-width: 36px !important;
    max-height: 36px !important;
    flex-basis: 36px !important;
    border-radius: 7px !important;
  }
  html body a.kasimov-book-cta,
  html body a.kasimov-book-cta:link,
  html body a.kasimov-book-cta:visited {
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    min-width: 0 !important;
    padding: 0 12px !important;
    font-size: 11px !important;
  }
}

@media only screen and (min-width: 980px) {
  html body #promo.row,
  html body #content #promo.row {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body #promo > .moduletable.span4,
  html body #promo > .span4,
  html body #content #promo > .moduletable.span4 {
    float: none !important;
    display: flex !important;
    flex: 1 1 0 !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }
  html body #promo .moduletable_content,
  html body #promo .custom {
    display: flex !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    height: 100% !important;
  }
  html body #promo .kasimov-promo-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 360px !important;
  }
  html body #promo .kasimov-promo-card__media {
    display: block !important;
    flex: 0 0 220px !important;
    height: 220px !important;
    max-height: 220px !important;
    overflow: hidden !important;
  }
  html body #promo .kasimov-promo-card__media img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    object-position: center !important;
  }
  html body #promo .kasimov-promo-card__body {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    min-height: 140px !important;
    padding-top: 16px !important;
  }
  html body #promo .kasimov-promo-card h3,
  html body #promo .kasimov-promo-card__body h3 {
    min-height: 2.4em !important;
    margin: 0 0 10px !important;
    display: flex !important;
    align-items: flex-start !important;
  }
  html body #promo .kasimov-promo-card h3 a,
  html body #promo .kasimov-promo-card h3 span {
    font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
    font-size: 30px !important;
    font-weight: 600 !important;
    line-height: 1.15 !important;
    letter-spacing: 0.01em !important;
    color: #1a2226 !important;
  }
  html body #promo .kasimov-promo-card h3 .kasimov-online-word {
    font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
    font-size: inherit !important;
    font-weight: 600 !important;
    font-style: italic !important;
  }
  html body #promo .kasimov-promo-card__body p {
    margin: 0 !important;
    font-family: "Manrope", "Open Sans", sans-serif !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: #5a656c !important;
  }
}

html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img {
  image-rendering: -webkit-optimize-contrast !important;
  filter: contrast(1.04) saturate(1.05) !important;
}
html body .kasimov-chef__lead {
  font-size: 17px !important;
  line-height: 1.55 !important;
  letter-spacing: 0.01em !important;
  color: #2c383e !important;
}


/* === BATCH 49 fonts lightbox chef rect === */

/* Unify Online + 3D Тур to Cormorant Garamond */
html body .kasimov-online-word,
html body .kasimov-promo-card h3 .kasimov-online-word,
html body .kasimov-promo-card__body h3 a .kasimov-online-word,
html body h3 .kasimov-online-word,
html body span.kasimov-online-word {
  font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
  font-size: inherit !important;
  font-weight: 600 !important;
  font-style: italic !important;
  color: #2e7d32 !important;
  line-height: inherit !important;
}
html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption {
  font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
}

/* Promo: force equal title band (one line) so body text aligns */
@media only screen and (min-width: 980px) {
  html body #promo .kasimov-promo-card h3,
  html body #promo .kasimov-promo-card__body h3 {
    min-height: 1.25em !important;
    height: 1.25em !important;
    margin: 0 0 12px !important;
    overflow: hidden !important;
    display: block !important;
  }
  html body #promo .kasimov-promo-card h3 a,
  html body #promo .kasimov-promo-card h3 span,
  html body #promo .kasimov-promo-card h3 .kasimov-online-word {
    white-space: nowrap !important;
    font-size: 26px !important;
    line-height: 1.25 !important;
    display: inline !important;
  }
  html body #promo .kasimov-promo-card__body {
    min-height: 118px !important;
    justify-content: flex-start !important;
  }
  html body #promo .kasimov-promo-card__body p {
    margin: 0 !important;
    min-height: 4.5em !important;
  }
}

/* Chef rectangular portrait */
html body .kasimov-chef--atelier .kasimov-chef__portrait,
html body .kasimov-chef--atelier .kasimov-chef__media,
html body #testimonials .kasimov-chef--atelier .kasimov-chef__portrait {
  width: min(100%, 340px) !important;
  aspect-ratio: 4 / 5 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #1c1814 !important;
}
html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 15% !important;
  border-radius: 0 !important;
  filter: none !important;
}

/* Services lightbox galleries */
html body .kasimov-lb-gallery {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  margin: 12px 0 28px !important;
}
html body .kasimov-lb-item {
  display: block !important;
  overflow: hidden !important;
  cursor: zoom-in !important;
  border: 0 !important;
}
html body .kasimov-lb-item img,
html body .kasimov-gallery-img {
  display: block !important;
  width: 100% !important;
  height: 180px !important;
  object-fit: cover !important;
  margin: 0 !important;
  cursor: zoom-in !important;
  transition: transform .35s ease !important;
}
html body .kasimov-lb-item:hover img {
  transform: scale(1.03) !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-lb-gallery {
    grid-template-columns: 1fr !important;
  }
  html body .kasimov-lb-item img,
  html body .kasimov-gallery-img {
    height: 220px !important;
  }
}

html body .kasimov-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483600 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px !important;
}
html body .kasimov-lightbox[hidden] { display: none !important; }
html body .kasimov-lightbox__backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(8, 10, 12, 0.82) !important;
}
html body .kasimov-lightbox__figure {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  max-width: min(1100px, 96vw) !important;
  max-height: 92vh !important;
}
html body .kasimov-lightbox__img {
  display: block !important;
  max-width: 96vw !important;
  max-height: 88vh !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  box-shadow: 0 24px 80px rgba(0,0,0,.45) !important;
}
html body .kasimov-lightbox__close {
  position: absolute !important;
  top: -12px !important;
  right: -12px !important;
  width: 44px !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #196071 !important;
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
}
html.kasimov-lb-open, html.kasimov-lb-open body {
  overflow: hidden !important;
}


/* === BATCH 49b chef crop + font lock === */
html body #promo .kasimov-promo-card h3,
html body #promo .kasimov-promo-card h3 a,
html body #promo .kasimov-promo-card h3 span,
html body #promo .kasimov-promo-card__body h3,
html body #promo .kasimov-promo-card__body h3 a,
html body #promo .kasimov-promo-card__body h3 span,
html body .kasimov-promo-card h3,
html body .kasimov-promo-card h3 a,
html body .kasimov-promo-card h3 span {
  font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
  font-weight: 600 !important;
}
html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption {
  font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
  font-weight: 600 !important;
}


/* === BATCH 50 chef photo + mobile align === */
html body .kasimov-chef--atelier .kasimov-chef__portrait,
html body .kasimov-chef--atelier .kasimov-chef__media,
html body #testimonials .kasimov-chef--atelier .kasimov-chef__portrait {
  width: min(100%, 360px) !important;
  max-width: 360px !important;
  aspect-ratio: 4 / 5 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #1a1a1a !important;
  margin: 0 auto !important;
}
html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 18% !important;
  border-radius: 0 !important;
  filter: none !important;
  -webkit-filter: none !important;
}

@media only screen and (max-width: 979px) {
  html body .kasimov-chef,
  html body .kasimov-chef--atelier,
  html body .kasimov-chef--stack,
  html body #testimonials .kasimov-chef,
  html body #testimonials .kasimov-chef--atelier {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    grid-template-columns: none !important;
    gap: 18px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 20px auto !important;
    padding: 16px 14px 24px !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  html body .kasimov-chef__stage {
    width: min(78vw, 280px) !important;
    max-width: 280px !important;
    justify-self: center !important;
    margin: 0 auto !important;
  }
  html body .kasimov-chef__portrait,
  html body .kasimov-chef__media,
  html body #testimonials .kasimov-chef__portrait,
  html body #testimonials .kasimov-chef__media {
    width: 100% !important;
    max-width: 280px !important;
    margin: 0 auto !important;
    aspect-ratio: 4 / 5 !important;
  }
  html body .kasimov-chef__copy,
  html body .kasimov-chef__body {
    width: 100% !important;
    max-width: 34em !important;
    margin: 0 auto !important;
    padding: 0 4px !important;
    align-items: center !important;
    text-align: center !important;
  }
  html body .kasimov-chef__eyebrow,
  html body .kasimov-chef__title,
  html body .kasimov-chef__role,
  html body .kasimov-chef__name,
  html body .kasimov-chef__lead {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body .kasimov-chef__title {
    font-size: 30px !important;
    line-height: 1.1 !important;
  }
  html body .kasimov-chef__rule {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body .kasimov-chef__lead {
    max-width: 28em !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  html body #testimonials {
    overflow: hidden !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body #testimonials .custom {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}


/* === BATCH 51 side captions + Online font + chef phrase === */

/* Online: same Cormorant as other promo titles (no italic / Instrument) */
html body .kasimov-online-word,
html body span.kasimov-online-word,
html body .kasimov-promo-card h3 .kasimov-online-word,
html body .kasimov-promo-card__body h3 a .kasimov-online-word,
html body .kasimov-promo-card h3 a .kasimov-online-word,
html body #promo .kasimov-promo-card h3 .kasimov-online-word,
html body #promo .kasimov-promo-card h3 a .kasimov-online-word,
html body #promo .kasimov-promo-card h3 span.kasimov-online-word,
html body h3 .kasimov-online-word,
html body h3 a span.kasimov-online-word,
html body h3 span.kasimov-online-word {
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  font-size: inherit !important;
  line-height: inherit !important;
  letter-spacing: inherit !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

html body #promo .kasimov-promo-card h3,
html body #promo .kasimov-promo-card h3 a,
html body #promo .kasimov-promo-card h3 span,
html body #promo .kasimov-promo-card__body h3,
html body #promo .kasimov-promo-card__body h3 a,
html body .kasimov-promo-card h3,
html body .kasimov-promo-card h3 a,
html body .kasimov-promo-card h3 span {
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
}

/* 3D Тур / Отзыв: compact caption bar, no clipping, closer to photo */
html body .kasimov-side-card,
html body .kasimov-side-card--tour,
html body .kasimov-side-card--review,
html body #kasimov-home-extras .kasimov-side-card {
  position: relative !important;
  display: block !important;
  overflow: hidden !important;
}

html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__title {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  max-height: none !important;
  box-sizing: border-box !important;
  padding: 10px 14px 12px !important;
  margin: 0 !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  font-style: normal !important;
  letter-spacing: 0.01em !important;
  color: #fff !important;
  text-align: center !important;
  text-indent: 0 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.45) !important;
  /* shorter gradient — less “wide” grey band */
  background: linear-gradient(to top, rgba(0,0,0,.78) 0%, rgba(0,0,0,.42) 55%, rgba(0,0,0,0) 100%) !important;
  pointer-events: none !important;
  z-index: 3 !important;
}

@media only screen and (max-width: 979px) {
  html body .kasimov-side-card__caption,
  html body .kasimov-side-card--tour .kasimov-side-card__caption,
  html body .kasimov-side-card--review .kasimov-side-card__caption,
  html body #kasimov-home-extras .kasimov-side-card__caption {
    font-size: 18px !important;
    padding: 8px 12px 10px !important;
    line-height: 1.2 !important;
  }
}


/* === BATCH 51c promo titles + chef crop + captions === */

/* Promo titles: stop clipping ascenders (was height:1.25em + overflow:hidden) */
html body #promo .kasimov-promo-card h3,
html body #promo .kasimov-promo-card__body h3,
html body .kasimov-promo-card h3,
html body .kasimov-promo-card__body h3 {
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  margin: 0 0 10px !important;
  padding: 2px 0 0 !important;
  line-height: 1.2 !important;
  font-size: 26px !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-weight: 600 !important;
  font-style: normal !important;
}

html body #promo .kasimov-promo-card h3 a,
html body #promo .kasimov-promo-card h3 span,
html body #promo .kasimov-promo-card h3 .kasimov-online-word,
html body #promo .kasimov-promo-card__body h3 a,
html body .kasimov-promo-card h3 a,
html body .kasimov-promo-card h3 span,
html body .kasimov-promo-card h3 .kasimov-online-word {
  white-space: normal !important;
  overflow: visible !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  display: inline !important;
}

/* Tighter gap: photo → title */
html body #promo .kasimov-promo-card__body,
html body .kasimov-promo-card__body {
  padding: 14px 4px 8px !important;
  gap: 0 !important;
}

html body #promo .kasimov-promo-card__media,
html body .kasimov-promo-card__media {
  margin-bottom: 0 !important;
}

@media only screen and (min-width: 980px) {
  html body #promo .kasimov-promo-card__body {
    min-height: 110px !important;
    justify-content: flex-start !important;
  }
  html body #promo .kasimov-promo-card__body p {
    margin: 0 !important;
    min-height: 3.6em !important;
  }
}

/* Chef portrait: show face + jacket, not forehead crop */
html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img,
html body #testimonials .kasimov-chef--atelier .kasimov-chef__portrait img {
  object-fit: cover !important;
  object-position: center 42% !important;
}

/* Side captions even tighter */
html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption {
  padding: 8px 12px 10px !important;
  font-size: 18px !important;
  line-height: 1.15 !important;
  background: linear-gradient(to top, rgba(0,0,0,.82) 0%, rgba(0,0,0,.35) 70%, rgba(0,0,0,0) 100%) !important;
}


/* === BATCH 51d chef crop + online harden === */
html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img {
  object-position: center 42% !important;
}
html body .kasimov-online-word,
html body span.kasimov-online-word,
html body #promo .kasimov-online-word {
  font-family: " Cormorant Garamond\, Georgia, serif !important;
 font-style: normal !important;
 font-weight: 600 !important;
 font-size: 26px !important;
 color: inherit !important;
}


/* === BATCH 51e Online Latin font harden === */
html body .kasimov-online-word,
html body span.kasimov-online-word,
html body #promo .kasimov-online-word,
html body #promo .kasimov-promo-card h3 .kasimov-online-word,
html body #promo .kasimov-promo-card h3 a .kasimov-online-word,
html body .kasimov-promo-card h3 .kasimov-online-word,
html body .kasimov-promo-card h3 a .kasimov-online-word,
html body h3 .kasimov-online-word,
html body h3 a .kasimov-online-word,
html body h3 span.kasimov-online-word {
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
  letter-spacing: 0.01em !important;
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
  font-synthesis: weight style !important;
}

/* Chef: final crop — face + jacket */
html body .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .kasimov-chef--atelier .kasimov-chef__media img,
html body #testimonials .kasimov-chef--atelier img {
  object-fit: cover !important;
  object-position: center 45% !important;
}


/* === BATCH 51f compact solid captions === */
/* Solid thin bar under photo — no tall grey wash */
html body .kasimov-side-card,
html body .kasimov-side-card--tour,
html body .kasimov-side-card--review,
html body #kasimov-home-extras .kasimov-side-card {
  display: flex !important;
  flex-direction: column !important;
  position: relative !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body .kasimov-side-card__media,
html body .kasimov-side-card--tour .kasimov-side-card__media,
html body .kasimov-side-card--review .kasimov-side-card__media {
  display: block !important;
  width: 100% !important;
  flex: 0 0 auto !important;
  line-height: 0 !important;
}

html body .kasimov-side-card__media img,
html body .kasimov-side-card--tour .kasimov-side-card__media img,
html body .kasimov-side-card--review .kasimov-side-card__media img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 220px !important;
  object-fit: cover !important;
  aspect-ratio: 16 / 10 !important;
}

html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__title {
  position: static !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 600 !important;
  font-style: normal !important;
  letter-spacing: 0.01em !important;
  color: #fff !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  text-shadow: none !important;
  background: #3a3330 !important; /* compact solid bar, not tall gradient */
  pointer-events: none !important;
  z-index: 2 !important;
  height: auto !important;
  max-height: none !important;
}

@media only screen and (max-width: 979px) {
  html body .kasimov-side-card__caption,
  html body .kasimov-side-card--tour .kasimov-side-card__caption,
  html body .kasimov-side-card--review .kasimov-side-card__caption,
  html body #kasimov-home-extras .kasimov-side-card__caption {
    font-size: 17px !important;
    padding: 9px 12px !important;
  }
  html body .kasimov-side-card__media img {
    max-height: 220px !important;
  }
}


/* === BATCH 51g overlay compact captions === */
html body .kasimov-side-card,
html body .kasimov-side-card--tour,
html body .kasimov-side-card--review,
html body #kasimov-home-extras .kasimov-side-card {
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  background: transparent !important;
}

html body .kasimov-side-card__media,
html body .kasimov-side-card--tour .kasimov-side-card__media,
html body .kasimov-side-card--review .kasimov-side-card__media {
  display: block !important;
  width: 100% !important;
  line-height: 0 !important;
  overflow: hidden !important;
}

html body .kasimov-side-card__media img,
html body .kasimov-side-card--tour .kasimov-side-card__media img,
html body .kasimov-side-card--review .kasimov-side-card__media img {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  object-fit: cover !important;
  aspect-ratio: auto !important;
}

/* Compact bar ON the photo — thin, no tall grey wash */
html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__title {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 17px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  font-style: normal !important;
  letter-spacing: 0.01em !important;
  color: #fff !important;
  text-align: center !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.35) !important;
  background: rgba(32, 28, 26, 0.82) !important;
  pointer-events: none !important;
  z-index: 3 !important;
  height: auto !important;
  max-height: none !important;
}

@media only screen and (max-width: 979px) {
  html body .kasimov-side-card__media img {
    height: 200px !important;
    max-height: 200px !important;
  }
  html body .kasimov-side-card__caption,
  html body .kasimov-side-card--tour .kasimov-side-card__caption,
  html body .kasimov-side-card--review .kasimov-side-card__caption {
    font-size: 16px !important;
    padding: 7px 10px !important;
  }
}


/* === BATCH 51h media=img height fix === */
html body .kasimov-side-card,
html body .kasimov-side-card--tour,
html body .kasimov-side-card--review,
html body #kasimov-home-extras .kasimov-side-card {
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  line-height: 0 !important;
}

html body .kasimov-side-card__media,
html body .kasimov-side-card--tour .kasimov-side-card__media,
html body .kasimov-side-card--review .kasimov-side-card__media,
html body #kasimov-home-extras .kasimov-side-card__media {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  max-height: none !important;
  min-height: 0 !important;
  line-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .kasimov-side-card__media img,
html body .kasimov-side-card--tour .kasimov-side-card__media img,
html body .kasimov-side-card--review .kasimov-side-card__media img,
html body #kasimov-home-extras .kasimov-side-card__media img {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  min-height: 220px !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: auto !important;
}

html body .kasimov-side-card__caption,
html body .kasimov-side-card--tour .kasimov-side-card__caption,
html body .kasimov-side-card--review .kasimov-side-card__caption,
html body #kasimov-home-extras .kasimov-side-card__caption {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 4 !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  line-height: 1.2 !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  font-family: "Cormorant Garamond", Georgia, serif !important;
  color: #fff !important;
  text-align: center !important;
  background: rgba(28, 24, 22, 0.78) !important;
  white-space: normal !important;
  overflow: visible !important;
}

@media only screen and (max-width: 979px) {
  html body .kasimov-side-card__media img,
  html body #kasimov-home-extras .kasimov-side-card__media img {
    height: 220px !important;
    max-height: 190px !important;
    min-height: 190px !important;
  }
}


/* === BATCH 52 rooms hero HQ + chef phrase === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms #headerimage {
    min-height: 72vh !important;
  }
  html body.kasimov-page-rooms #kasimov-page-hero .kasimov-page-hero__slide {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    image-rendering: auto !important;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
  }
}

/* Restaurant page chef: match homepage atelier layout */
html body.kasimov-page-restaurant .kasimov-chef--atelier,
html body .item-page .kasimov-chef--atelier {
  display: flex !important;
  align-items: center !important;
  gap: 36px !important;
  margin: 36px 0 12px !important;
}
html body.kasimov-page-restaurant .kasimov-chef--atelier .kasimov-chef__portrait,
html body .item-page .kasimov-chef--atelier .kasimov-chef__portrait {
  width: min(100%, 340px) !important;
  max-width: 340px !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
  margin: 0 !important;
}
html body.kasimov-page-restaurant .kasimov-chef--atelier .kasimov-chef__portrait img,
html body .item-page .kasimov-chef--atelier .kasimov-chef__portrait img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 42% !important;
}
html body.kasimov-page-restaurant .kasimov-chef--atelier .kasimov-chef__lead,
html body .item-page .kasimov-chef--atelier .kasimov-chef__lead {
  max-width: 36em !important;
  line-height: 1.45 !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-restaurant .kasimov-chef--atelier,
  html body .item-page .kasimov-chef--atelier {
    flex-direction: column !important;
    text-align: center !important;
    gap: 18px !important;
  }
  html body.kasimov-page-restaurant .kasimov-chef--atelier .kasimov-chef__portrait,
  html body .item-page .kasimov-chef--atelier .kasimov-chef__portrait {
    margin: 0 auto !important;
  }
}


/* === BATCH 52b restaurant chef row desktop === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-restaurant .kasimov-chef--atelier,
  html body.kasimov-page-home .kasimov-chef--atelier,
  html body .item-page .kasimov-chef--atelier,
  html body #testimonials .kasimov-chef--atelier {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 40px !important;
    text-align: left !important;
  }
  html body.kasimov-page-restaurant .kasimov-chef--atelier .kasimov-chef__copy,
  html body .item-page .kasimov-chef--atelier .kasimov-chef__copy {
    text-align: left !important;
    flex: 1 1 auto !important;
  }
}


/* === BATCH 52c rooms hero native sharpness === */
html body.kasimov-page-rooms #kasimov-page-hero .kasimov-page-hero__slide,
html body.kasimov-page-rooms #headerimage .kasimov-page-hero__slide {
  filter: none !important;
  -webkit-filter: none !important;
  background-size: cover !important;
  background-position: center center !important;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: high-quality;
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #kasimov-page-hero {
    min-height: 70vh !important;
  }
}


/* === BATCH 53 hide leftover chef name === */
html body .kasimov-chef__name,
html body.kasimov-page-restaurant .kasimov-chef__name,
html body .item-page > .kasimov-chef__name {
  display: none !important;
}


/* === BATCH 54 contacts collage hero + desktop fix === */

/* Override earlier display:none on contacts headerimage */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: 100svh !important; /* was 62vh */
  min-height: 420px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: none !important;
  left: 0 !important;
  right: 0 !important;
  position: relative !important;
  background: #14181e !important;
  box-shadow: none !important;
}
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  filter: none !important;
  -webkit-filter: none !important;
}
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__caption {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #fffef8 !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.5) !important;
  font-family: "Cormorant Garamond", "Times New Roman", serif !important;
  font-size: clamp(28px, 3.4vw, 48px) !important;
  letter-spacing: .02em !important;
}

@media only screen and (min-width: 980px) {
  /* Transparent header over hero */
  html body.kasimov-page-contacts.kasimov-has-page-hero #header,
  html body.kasimov-page-contacts #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    background: linear-gradient(to bottom, rgba(10,12,16,.62), rgba(10,12,16,0)) !important;
    box-shadow: none !important;
    border: 0 !important;
    z-index: 50 !important;
  }
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts #header .logo a,
  html body.kasimov-page-contacts #header .brand {
    color: #fff !important;
    text-shadow: 0 1px 4px rgba(0,0,0,.4) !important;
  }

  /* Fix desktop drift: center content, kill nested max-width squeeze */
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts #t3-content,
  html body.kasimov-page-contacts .t3-content {
    float: none !important;
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 1100px !important;
    margin: 0 auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 36px 24px 56px !important;
    left: auto !important;
    right: auto !important;
    position: relative !important;
    box-sizing: border-box !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }
  html body.kasimov-page-contacts #content .row,
  html body.kasimov-page-contacts #content .row-fluid {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
  }
  html body.kasimov-page-contacts #content .span12,
  html body.kasimov-page-contacts #content [class*="span"] {
    float: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page,
  html body.kasimov-page-contacts #content .item-page.kasimov-contacts-page {
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 880px !important;
    margin: 0 auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: auto !important;
    right: auto !important;
    padding: 40px 48px 52px !important;
    box-sizing: border-box !important;
    background: #fff !important;
    box-shadow: 0 14px 40px rgba(30, 22, 12, .10) !important;
    border-radius: 4px !important;
    transform: none !important;
  }
  html body.kasimov-page-contacts #content_shadow {
    display: none !important;
    height: 0 !important;
  }
  /* Keep social/book actions from colliding with menu */
  html body.kasimov-page-contacts .kasimov-header-actions {
    top: 18px !important;
    right: 28px !important;
    z-index: 70 !important;
  }
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    height: 44vh !important;
    min-height: 220px !important;
    max-height: 420px !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page {
    max-width: 100% !important;
    margin: 0 12px !important;
    padding: 22px 18px 28px !important;
  }
}


/* === BATCH 54c contacts layout polish === */

html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__caption,
html body.kasimov-page-contacts #headerimage .kasimov-page-hero__caption {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

@media only screen and (min-width: 980px) {
  /* Kill theme left-column squeeze on contacts */
  html body.kasimov-page-contacts #wrapper,
  html body.kasimov-page-contacts #main,
  html body.kasimov-page-contacts #mainbody,
  html body.kasimov-page-contacts .mainbody,
  html body.kasimov-page-contacts #t3-mainbody,
  html body.kasimov-page-contacts .container {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: auto !important;
    right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  html body.kasimov-page-contacts #wrapper > .container,
  html body.kasimov-page-contacts #main > .container,
  html body.kasimov-page-contacts #mainbody > .container {
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    float: none !important;
  }

  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts #content.container {
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: 920px !important;
    margin: 28px auto 48px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    left: auto !important;
    right: auto !important;
    position: relative !important;
    transform: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  html body.kasimov-page-contacts #content .row,
  html body.kasimov-page-contacts #content .row-fluid,
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    left: auto !important;
    right: auto !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    transform: none !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page {
    background: #fff !important;
    padding-top: 36px !important;
    padding-bottom: 44px !important;
    box-shadow: 0 14px 40px rgba(30, 22, 12, .10) !important;
  }

  /* Header: give menu room; park social+book without overlap */
  html body.kasimov-page-contacts #header .container,
  html body.kasimov-page-contacts #header .container > .row {
    position: relative !important;
    width: 100% !important;
    max-width: 1280px !important;
    margin: 0 auto !important;
    padding-right: 220px !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-contacts #header #mainmenu {
    max-width: calc(100% - 40px) !important;
    overflow: visible !important;
  }
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    gap: 0 6px !important;
  }
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
    padding-left: 8px !important;
    padding-right: 8px !important;
    font-size: 13px !important;
    white-space: nowrap !important;
  }
  html body.kasimov-page-contacts .kasimov-header-actions {
    position: absolute !important;
    top: 14px !important;
    right: 16px !important;
    left: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    z-index: 80 !important;
    width: auto !important;
    max-width: 210px !important;
  }
  html body.kasimov-page-contacts .kasimov-header-actions .kasimov-social,
  html body.kasimov-page-contacts .kasimov-header-actions ul {
    margin: 0 !important;
    padding: 0 !important;
  }
}


/* === BATCH 54d contacts hero height + footer center === */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  height: 42vh !important;
  min-height: 420px !important;
  max-height: 560px !important;
}
html body.kasimov-page-contacts #headerimage .carousel,
html body.kasimov-page-contacts #headerimage .carousel-inner,
html body.kasimov-page-contacts #headerimage .item,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide {
  height: 100% !important;
  min-height: 100% !important;
}

/* Hide booking strip overlay inside contacts hero (keeps page clean) */
html body.kasimov-page-contacts #headerimage .moduletable.booking,
html body.kasimov-page-contacts #headerimage .tl-container,
html body.kasimov-page-contacts #headerimage [class*="tl-"],
html body.kasimov-page-contacts #headerimage .travelline,
html body.kasimov-page-contacts #kasimov-page-hero + .moduletable,
html body.kasimov-page-contacts #headerimage .bookform,
html body.kasimov-page-contacts #headerimage form[action*="travelline"] {
  display: none !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #footer,
  html body.kasimov-page-contacts #footer.container {
    float: none !important;
    width: 100% !important;
    max-width: 1100px !important;
    margin: 24px auto 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: auto !important;
    right: auto !important;
  }

  /* Safer header packing: menu ends before actions */
  html body.kasimov-page-contacts #header .container {
    padding-right: 240px !important;
  }
  html body.kasimov-page-contacts .kasimov-header-actions {
    right: 20px !important;
    top: 16px !important;
  }
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
    padding-left: 7px !important;
    padding-right: 7px !important;
    font-size: 12.5px !important;
    letter-spacing: 0 !important;
  }
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 320px !important;
  }
}


/* === BATCH 54e force contacts hero 520 === */
@media only screen and (max-width: 979px) {
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
html body.kasimov-page-contacts #headerimage {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: 42vh !important;
  min-height: 220px !important;
  max-height: 420px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  width: 100% !important;
  max-width: none !important;
}
}

@media only screen and (max-width: 979px) {
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero,
html body.kasimov-page-contacts #kasimov-page-hero {
  height: 42vh !important;
  min-height: 220px !important;
  max-height: 420px !important;
}
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
}


/* === BATCH 54f contacts collage aspect + contain fallback === */
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
  background-size: cover !important;
  background-position: center 45% !important;
  background-repeat: no-repeat !important;
}
/* Extra room in header so menu never eats book button */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #header #logo,
  html body.kasimov-page-contacts #header #logo.span4 {
    max-width: 200px !important;
  }
  html body.kasimov-page-contacts #header #logo img {
    max-height: 48px !important;
    width: auto !important;
  }
  html body.kasimov-page-contacts #header .container {
    padding-right: 250px !important;
  }
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
    padding-left: 6px !important;
    padding-right: 6px !important;
    font-size: 12px !important;
  }
}


/* === BATCH 54g contacts no booking overlay === */
html body.kasimov-page-contacts .kasimov-hero-booking,
html body.kasimov-page-contacts #headerimage .kasimov-hero-booking,
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-hero-booking,
html body.kasimov-page-contacts.kasimov-hero-has-booking .kasimov-hero-booking {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
/* Kill any dark gradient overlays that sit on page heroes for contacts */
html body.kasimov-page-contacts #kasimov-page-hero::before,
html body.kasimov-page-contacts #kasimov-page-hero::after,
html body.kasimov-page-contacts #headerimage::before,
html body.kasimov-page-contacts #headerimage::after,
html body.kasimov-page-contacts .kasimov-page-hero__slide::before,
html body.kasimov-page-contacts .kasimov-page-hero__slide::after {
  display: none !important;
  content: none !important;
  background: none !important;
  opacity: 0 !important;
}


/* === BATCH 54h contacts content true-center === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content {
    width: min(1080px, 94vw) !important;
    max-width: 1080px !important;
    margin: 32px auto 56px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    float: none !important;
  }
  /* breadcrumbs also centered with content */
  html body.kasimov-page-contacts #page_heading,
  html body.kasimov-page-contacts .breadcrumbs,
  html body.kasimov-page-contacts .breadcrumb {
    max-width: 1080px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }
}


/* === BATCH 55 contacts: no hero + mailru size + map === */

/* Kill contacts page hero completely */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
}
html body.kasimov-page-contacts #header {
  position: relative !important;
  background: #fff !important;
  box-shadow: 0 2px 14px rgba(40,30,20,.08) !important;
}
html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
  color: #2a2420 !important;
  text-shadow: none !important;
}

/* Mail.ru icon same visual size as VK/MAX/YouTube */
html body .kasimov-social .social_mailru img,
html body #social_icons .kasimov-social .social_mailru img,
html body .kasimov-social--contacts .social_mailru img,
html body.kasimov-page-contacts .kasimov-social--contacts img,
html body.kasimov-page-contacts .kasimov-social--contacts .social_mailru img {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  min-height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  display: block !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
}
/* Header social stay 32px consistently */
html body #header .kasimov-social img,
html body #social_icons .kasimov-social img {
  width: 32px !important;
  height: 32px !important;
  object-fit: contain !important;
}

/* Map: full width, hotel visible */
html body.kasimov-page-contacts .kasimov-contacts-map,
html body.kasimov-page-contacts .kasimov-contacts-map [id^="map-"] {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 420px !important;
  height: 450px !important;
  border-radius: 4px !important;
  overflow: hidden !important;
}


/* === BATCH 55 contacts no-hero + mailru + map === */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body.kasimov-page-contacts #header {
  position: relative !important;
  background: #fff !important;
  box-shadow: 0 2px 14px rgba(40,30,20,.08) !important;
}
html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
  color: #2a2420 !important;
  text-shadow: none !important;
}
html body.kasimov-page-contacts #content {
  margin-top: 12px !important;
}

/* Equal social icons: Mail.ru = siblings */
html body .kasimov-social--contacts img,
html body.kasimov-page-contacts .kasimov-social--contacts img {
  width: 40px !important;
  height: 40px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}
html body .kasimov-social .social_mailru img,
html body #social_icons .social_mailru img,
html body .kasimov-social--contacts .social_mailru img {
  width: 40px !important;
  height: 40px !important;
  max-width: 40px !important;
  max-height: 40px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
}
html body #social_icons .kasimov-social img,
html body .kasimov-header-actions .kasimov-social img {
  width: 32px !important;
  height: 32px !important;
}
html body #social_icons .social_mailru img,
html body .kasimov-header-actions .social_mailru img {
  width: 32px !important;
  height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  border-radius: 6px !important;
}
html body.kasimov-page-contacts .kasimov-contacts-map > div {
  width: 100% !important;
  height: 450px !important;
  min-height: 450px !important;
}


/* === BATCH 55i map height === */
html body.kasimov-page-contacts .kasimov-contacts-map iframe,
html body.kasimov-page-contacts .kasimov-contacts-map__frame,
html body.kasimov-page-contacts .kasimov-contacts-map__frame iframe {
  width: 100% !important;
  height: 450px !important;
  min-height: 450px !important;
  display: block !important;
}


/* === BATCH 56 footer gap + contacts polish === */

html body:not(.kasimov-page-home) #content,
html body:not(.kasimov-page-home) section#content {
  margin-bottom: 0 !important;
  padding-bottom: 20px !important;
  min-height: 0 !important;
}
html body:not(.kasimov-page-home) #footer,
html body:not(.kasimov-page-home) footer#footer {
  margin-top: 0 !important;
  padding-top: 12px !important;
}
html body:not(.kasimov-page-home) hr.bottomsep,
html body:not(.kasimov-page-home) .bottomsep {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Contacts: never reserve hero space */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  left: -9999px !important;
}

html body.kasimov-page-contacts #header,
html body.kasimov-page-contacts.kasimov-header-after-hero #header {
  position: relative !important;
  top: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  background: #fff !important;
  box-shadow: 0 2px 14px rgba(40,30,20,.08) !important;
}
html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
  color: #2a2420 !important;
  text-shadow: none !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #header {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts section#content {
    margin-top: 0 !important;
    padding-top: 6px !important;
  }
  html body.kasimov-page-contacts .breadcrumb {
    margin: 2px 12px 6px !important;
    padding: 0 !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}

/* Desktop contacts = About look */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container {
    max-width: 1170px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 12px 15px 24px !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  html body.kasimov-page-contacts h2,
  html body.kasimov-page-contacts .page-header h2 {
    font-family: "Cormorant Garamond", "Times New Roman", serif !important;
    font-weight: 600 !important;
    color: #6b2b24 !important;
    font-size: 42px !important;
    line-height: 1.15 !important;
  }
  html body.kasimov-page-contacts .kasimov-contacts-page,
  html body.kasimov-page-contacts .kasimov-contacts-page p,
  html body.kasimov-page-contacts .kasimov-contacts-lead {
    font-family: Manrope, "Segoe UI", sans-serif !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #2a2420 !important;
  }
  html body.kasimov-page-contacts .kasimov-contacts-page h3 {
    font-family: "Cormorant Garamond", "Times New Roman", serif !important;
    font-weight: 600 !important;
    color: #6b2b24 !important;
    font-size: 28px !important;
    margin: 22px 0 10px !important;
  }
  html body.kasimov-page-contacts .kasimov-contacts-page__block {
    margin: 0 0 6px !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }
}

html body .kasimov-social--contacts .social_mailru img,
html body .kasimov-social .social_mailru img {
  width: 40px !important;
  height: 40px !important;
  object-fit: contain !important;
  border-radius: 8px !important;
}
html body #header .kasimov-social .social_mailru img,
html body #footer .kasimov-social .social_mailru img,
html body #social_icons .social_mailru img {
  width: 32px !important;
  height: 32px !important;
}
html body.kasimov-page-contacts .kasimov-contacts-map iframe {
  width: 100% !important;
  height: 450px !important;
  min-height: 450px !important;
}


/* === BATCH 56c tighter footer === */
html body:not(.kasimov-page-home) #content .item-page,
html body:not(.kasimov-page-home) #content .blog,
html body:not(.kasimov-page-home) #middlecol,
html body:not(.kasimov-page-home) #middlecol .inside {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body:not(.kasimov-page-home) #content {
  padding-bottom: 8px !important;
  margin-bottom: 0 !important;
}
html body:not(.kasimov-page-home) #footer {
  margin-top: 0 !important;
  padding-top: 8px !important;
  padding-bottom: 12px !important;
}
html body.kasimov-page-contacts .kasimov-contacts-map,
html body.kasimov-page-contacts .kasimov-contacts-map__frame {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body.kasimov-page-contacts .kasimov-contacts-page {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}


/* === BATCH 56e mobile contacts padding kill === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts.kasimov-header-before-hero #content,
  html body.kasimov-page-contacts.kasimov-header-after-hero #content {
    padding-top: 6px !important;
    margin-top: 0 !important;
  }
  html body.kasimov-page-contacts .breadcrumb {
    margin-top: 0 !important;
    margin-bottom: 6px !important;
  }
}

/* Non-home footer: kill leftover content margin */
html body:not(.kasimov-page-home) #content {
  margin-bottom: 0 !important;
  padding-bottom: 8px !important;
}


/* === BATCH 56f mobile pad source fix === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts.kasimov-header-before-hero #content,
  html body.kasimov-page-contacts.kasimov-header-after-hero #content,
  html body.kasimov-page-contacts.kasimov-has-page-hero #content {
    padding-top: 6px !important;
    margin-top: 0 !important;
    min-height: 0 !important;
  }
}


/* === BATCH 56g footer margin kill === */
html body:not(.kasimov-page-home) #content,
html body:not(.kasimov-page-home) #content.container,
html body:not(.kasimov-page-home) section#content {
  margin-bottom: 0 !important;
  padding-bottom: 8px !important;
}
html body:not(.kasimov-page-home) #footer {
  margin-top: 0 !important;
  padding-top: 8px !important;
}

/* === BATCH 57 mobile contacts compact full-bleed === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts.kasimov-header-before-hero #content,
  html body.kasimov-page-contacts.kasimov-header-after-hero #content,
  html body.kasimov-page-contacts.kasimov-has-page-hero #content {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 4px 14px 10px !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    min-height: 0 !important;
  }

  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page,
  html body.kasimov-page-contacts #content .item-page.kasimov-contacts-page,
  html body.kasimov-page-contacts #content .row,
  html body.kasimov-page-contacts #content .row-fluid,
  html body.kasimov-page-contacts #content .span12,
  html body.kasimov-page-contacts #content [class*="span"] {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    left: auto !important;
    right: auto !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  html body.kasimov-page-contacts .breadcrumb,
  html body.kasimov-page-contacts #page_heading,
  html body.kasimov-page-contacts .breadcrumbs {
    margin: 0 0 6px !important;
    padding: 0 !important;
    max-width: 100% !important;
  }

  html body.kasimov-page-contacts h2,
  html body.kasimov-page-contacts .page-header h2,
  html body.kasimov-page-contacts .page-header {
    font-size: 28px !important;
    line-height: 1.15 !important;
    margin: 2px 0 8px !important;
    padding: 0 !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-lead {
    font-size: 14px !important;
    line-height: 1.45 !important;
    margin: 0 0 10px !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-page h3 {
    font-size: 20px !important;
    line-height: 1.2 !important;
    margin: 12px 0 4px !important;
    padding: 0 !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-page__block {
    margin: 0 0 2px !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-page p {
    font-size: 14px !important;
    line-height: 1.4 !important;
    margin: 0 0 4px !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-page__hint {
    font-size: 12px !important;
    line-height: 1.35 !important;
    margin: 0 0 2px !important;
    opacity: 0.85;
  }

  html body.kasimov-page-contacts .kasimov-social--contacts {
    gap: 10px !important;
    margin: 4px 0 2px !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-map,
  html body.kasimov-page-contacts .kasimov-contacts-map__frame,
  html body.kasimov-page-contacts .kasimov-contacts-map > div {
    margin: 6px 0 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
  }

  html body.kasimov-page-contacts .kasimov-contacts-map iframe,
  html body.kasimov-page-contacts .kasimov-contacts-map__frame iframe {
    width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
  }
}

/* === BATCH 57b contacts mobile — beat #content item-page h3 specificity === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 4px 12px 8px !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts #content .item-page.kasimov-contacts-page,
  html body.kasimov-page-contacts #content .kasimov-contacts-page {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }

  html body.kasimov-page-contacts #content h2,
  html body.kasimov-page-contacts #content .page-header h2,
  html body.kasimov-page-contacts #content .item-page h2 {
    font-size: 26px !important;
    line-height: 1.15 !important;
    margin: 0 0 6px !important;
    padding: 0 !important;
  }

  html body.kasimov-page-contacts #content .kasimov-contacts-lead,
  html body.kasimov-page-contacts #content p.kasimov-contacts-lead {
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
    max-width: none !important;
    margin: 0 0 8px !important;
  }

  html body.kasimov-page-contacts #content .item-page h3,
  html body.kasimov-page-contacts #content .kasimov-contacts-page h3,
  html body.kasimov-page-contacts #content .article h3 {
    font-size: 18px !important;
    line-height: 1.2 !important;
    font-weight: 600 !important;
    margin: 10px 0 2px !important;
    padding: 0 !important;
  }

  html body.kasimov-page-contacts #content .kasimov-contacts-page__block {
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.kasimov-page-contacts #content .kasimov-contacts-page p,
  html body.kasimov-page-contacts #content .item-page p {
    font-size: 14px !important;
    line-height: 1.35 !important;
    margin: 0 0 3px !important;
    max-width: none !important;
  }

  html body.kasimov-page-contacts #content .kasimov-contacts-page__hint {
    font-size: 12px !important;
    margin: 0 0 2px !important;
  }

  html body.kasimov-page-contacts #content .kasimov-contacts-page a.kasimov-phone,
  html body.kasimov-page-contacts #content .kasimov-contacts-page a.kasimov-address__link {
    font-size: 14px !important;
  }

  html body.kasimov-page-contacts #content .kasimov-social--contacts {
    gap: 8px !important;
    margin: 2px 0 0 !important;
  }

  html body.kasimov-page-contacts #content .kasimov-social--contacts img {
    width: 32px !important;
    height: 32px !important;
  }

  html body.kasimov-page-contacts #content .kasimov-contacts-map,
  html body.kasimov-page-contacts #content .kasimov-contacts-map__frame,
  html body.kasimov-page-contacts #content .kasimov-contacts-map > div,
  html body.kasimov-page-contacts #content .kasimov-contacts-map iframe {
    width: 100% !important;
    max-width: 100% !important;
    height: 220px !important;
    min-height: 220px !important;
    margin: 4px 0 0 !important;
  }
}

/* === BATCH 58 services gaps + footer mail icon === */
html body.kasimov-page-services #content .kasimov-gallery-mosaic,
html body.kasimov-page-services #content p.kasimov-lb-gallery {
  margin: 8px 0 6px !important;
  align-content: start !important;
}
html body.kasimov-page-services #content h3,
html body.kasimov-page-services #content .item-page h3 {
  margin: 10px 0 2px !important;
  line-height: 1.2 !important;
}
html body.kasimov-page-services #content .item-page p,
html body.kasimov-page-services #content p {
  margin: 0 0 6px !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-services #content .kasimov-gallery-mosaic {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-auto-rows: 160px !important;
    gap: 8px !important;
    margin: 6px 0 4px !important;
  }
  html body.kasimov-page-services #content .kasimov-gallery-mosaic > a,
  html body.kasimov-page-services #content .kasimov-gallery-mosaic > img,
  html body.kasimov-page-services #content .kasimov-gallery-mosaic > :first-child,
  html body.kasimov-page-services #content .kasimov-gallery-mosaic > :nth-child(6n+1) {
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
    grid-column: auto !important;
  }
  html body.kasimov-page-services #content .kasimov-gallery-mosaic img,
  html body.kasimov-page-services #content .kasimov-gallery-img {
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
    object-fit: cover !important;
  }
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-services #content .kasimov-gallery-mosaic {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    grid-auto-rows: 220px !important;
    gap: 10px !important;
    margin: 8px 0 8px !important;
  }
  html body.kasimov-page-services #content .kasimov-gallery-mosaic > a,
  html body.kasimov-page-services #content .kasimov-gallery-mosaic > img,
  html body.kasimov-page-services #content .kasimov-gallery-mosaic img {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
}

/* Footer / header bar: Mail.ru matches sibling icons (32px), not the 40px contacts set */
html body #footer .kasimov-social img,
html body #footer .kasimov-social .social_mailru img,
html body #social_icons .kasimov-social img,
html body #social_icons .kasimov-social .social_mailru img,
html body #social_icons .social_mailru img,
html body #header .kasimov-social img,
html body #header .kasimov-social .social_mailru img,
html body .kasimov-header-actions .kasimov-social img,
html body .kasimov-header-actions .social_mailru img {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  min-height: 32px !important;
  max-width: 32px !important;
  max-height: 32px !important;
  object-fit: contain !important;
  box-sizing: border-box !important;
}

/* === BATCH 59 contacts = about look + rich backgrounds + cookie + privacy === */

/* Unified calm volumetric page canvas */
html body,
html body.site {
  background-color: #f3eee6 !important;
  background-image:
    radial-gradient(ellipse 95% 60% at 8% -5%, rgba(201, 169, 110, 0.28), transparent 58%),
    radial-gradient(ellipse 80% 50% at 100% 0%, rgba(107, 43, 36, 0.08), transparent 52%),
    radial-gradient(ellipse 70% 45% at 50% 110%, rgba(160, 120, 70, 0.16), transparent 55%),
    linear-gradient(165deg, #faf6f0 0%, #f1ebe3 42%, #e9e0d4 100%) !important;
  background-attachment: fixed !important;
  background-size: cover !important;
}

/* Soft woven linen noise veil DISABLED */
html body::before { content: none !important; display: none !important; background: none !important; }

/* Replace literal keys / cups / cues / pins with soft damask ornament */
html body.kasimov-page-rooms #content,
html body.kasimov-page-rooms #content_shadow,
html body.kasimov-page-home #promo,
html body.kasimov-page-about #content,
html body.kasimov-page-about #content_shadow,
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content_shadow,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-services #content,
html body.kasimov-page-services #content_shadow,
html body.kasimov-page-privacy #content,
html body.kasimov-page-privacy #content_shadow,
html body #content.container,
html body section#content {
  background-color: #f7f2ea !important;
  background-image:
    linear-gradient(180deg, rgba(255,252,248,0.88), rgba(247,242,234,0.92)),
    url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27220%27 height=%27220%27 viewBox=%270 0 220 220%27%3E%3Cdefs%3E%3ClinearGradient id=%27g%27 x1=%270%27 y1=%270%27 x2=%271%27 y2=%271%27%3E%3Cstop offset=%270%25%27 stop-color=%27%23c9a96e%27 stop-opacity=%270.22%27/%3E%3Cstop offset=%27100%25%27 stop-color=%27%236b2b24%27 stop-opacity=%270.10%27/%3E%3C/linearGradient%3E%3C/defs%3E%3Cg fill=%27none%27 stroke=%27url(%23g)%27 stroke-width=%271.15%27%3E%3Cpath d=%27M110 18 C140 48 140 78 110 110 C80 78 80 48 110 18 Z%27/%3E%3Cpath d=%27M110 110 C140 142 140 172 110 202 C80 172 80 142 110 110 Z%27/%3E%3Cpath d=%27M18 110 C48 80 78 80 110 110 C78 140 48 140 18 110 Z%27/%3E%3Cpath d=%27M110 110 C142 80 172 80 202 110 C172 140 142 140 110 110 Z%27/%3E%3Ccircle cx=%27110%27 cy=%27110%27 r=%2710%27/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: auto, 220px 220px !important;
  background-repeat: no-repeat, repeat !important;
}

/* Contacts: match About page framing (restore hero, same content stage) */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  min-height: 420px !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: relative !important;
  left: auto !important;
  pointer-events: auto !important;
}

html body.kasimov-page-contacts #header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
  color: #fff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.65) !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container {
    width: min(1170px, 94vw) !important;
    max-width: 1170px !important;
    margin: 28px auto 40px !important;
    padding: 28px 36px 40px !important;
    border-radius: 6px !important;
    box-shadow: 0 18px 50px rgba(40, 28, 18, 0.10) !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page,
  html body.kasimov-page-privacy #content .item-page {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  html body.kasimov-page-contacts h2,
  html body.kasimov-page-contacts .page-header h2,
  html body.kasimov-page-privacy h2,
  html body.kasimov-page-privacy .page-header h2 {
    font-family: "Cormorant Garamond", "Times New Roman", serif !important;
    font-weight: 600 !important;
    color: #6b2b24 !important;
    font-size: clamp(40px, 4.8vw, 58px) !important;
    line-height: 1.08 !important;
    margin: 0 0 14px !important;
  }
  html body.kasimov-page-contacts .kasimov-contacts-page h3,
  html body.kasimov-page-privacy .kasimov-privacy-page h3 {
    font-family: "Cormorant Garamond", "Times New Roman", serif !important;
    font-weight: 600 !important;
    color: #6b2b24 !important;
    font-size: 28px !important;
    margin: 22px 0 10px !important;
  }
  html body.kasimov-page-contacts .kasimov-contacts-lead,
  html body.kasimov-page-privacy .kasimov-privacy-lead {
    font-size: 18px !important;
    line-height: 1.65 !important;
    font-weight: 300 !important;
    max-width: 740px !important;
    margin: 0 0 1.1em !important;
  }
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero {
    min-height: 220px !important;
    height: 220px !important;
  }
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-privacy #content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 12px 14px 18px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
}

/* Hide privacy from main mega-menu (footer + cookie link remain) */
html body #header #mainmenu a[href*="privacy-policy"],
html body #icemegamenu a[href*="privacy-policy"] {
  display: none !important;
}

/* Footer legal links */
html body .kasimov-footer-pets {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px 0 !important;
  align-items: center !important;
  justify-content: center !important;
}
html body .kasimov-footer-sep {
  opacity: 0.55;
  padding: 0 6px !important;
}

/* Cookie consent bar */
html body .kasimov-cookie {
  position: fixed !important;
  left: 16px !important;
  right: 16px !important;
  bottom: 16px !important;
  z-index: 2147483600 !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  background: rgba(42, 32, 26, 0.96) !important;
  color: #f7f1e8 !important;
  border-radius: 10px !important;
  box-shadow: 0 18px 48px rgba(20, 12, 8, 0.35) !important;
  padding: 14px 16px !important;
  transition: opacity .28s ease, transform .28s ease !important;
}
html body .kasimov-cookie.is-hide {
  opacity: 0 !important;
  transform: translateY(12px) !important;
  pointer-events: none !important;
}
html body .kasimov-cookie__inner {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  align-items: center !important;
  justify-content: space-between !important;
}
html body .kasimov-cookie__text {
  flex: 1 1 280px !important;
  margin: 0 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  color: #f7f1e8 !important;
}
html body .kasimov-cookie__link {
  color: #e0b84a !important;
  text-decoration: underline !important;
}
html body .kasimov-cookie__btn {
  flex: 0 0 auto !important;
  border: 0 !important;
  border-radius: 4px !important;
  background: linear-gradient(180deg, #b10a0a, #7a0000) !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  padding: 10px 18px !important;
  cursor: pointer !important;
}
html body .kasimov-cookie__btn:hover {
  background: linear-gradient(180deg, #c41212, #8c0000) !important;
}

/* Privacy page typography */
html body.kasimov-page-privacy .kasimov-privacy-page p {
  font-size: 16px !important;
  line-height: 1.7 !important;
  margin: 0 0 12px !important;
}

/* === BATCH 59b contacts header overlay + force damask + hide privacy nav === */

/* Contacts header overlays hero like About/Services */
html body.kasimov-page-contacts.kasimov-has-page-hero #header,
html body.kasimov-page-contacts.kasimov-header-after-hero #header,
html body.kasimov-page-contacts #header {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 60 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  margin: 0 !important;
}
html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a,
html body.kasimov-page-contacts.kasimov-has-page-hero #header #mainmenu ul#icemegamenu > li > a {
  color: #ffffff !important;
  text-shadow: 0 1px 4px rgba(0,0,0,.7) !important;
}
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #kasimov-page-hero {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  width: 100% !important;
  min-height: 42vh !important;
  height: 42vh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide {
  min-height: 42vh !important;
  height: 42vh !important;
  background-size: cover !important;
  background-position: center !important;
}
html body.kasimov-page-contacts .kasimov-hero-booking {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  height: auto !important;
  min-height: 0 !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide {
    min-height: 220px !important;
    height: 220px !important;
  }
  html body.kasimov-page-contacts #header {
    position: relative !important;
    background: #fff !important;
  }
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a {
    color: #2a2420 !important;
    text-shadow: none !important;
  }
}

/* Force rich damask on content stages (beat earlier background-image:none) */
html body.kasimov-page-about #content,
html body.kasimov-page-about #content.container,
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content.container,
html body.kasimov-page-rooms #content,
html body.kasimov-page-rooms #content.container,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-restaurant #content.container,
html body.kasimov-page-services #content,
html body.kasimov-page-services #content.container,
html body.kasimov-page-privacy #content,
html body.kasimov-page-privacy #content.container,
html body.kasimov-page-home #promo {
  background-color: #f7f2ea !important;
  background-image: none !important;
  background-size: auto, 220px 220px !important;
  background-repeat: no-repeat, repeat !important;
  background-attachment: scroll, scroll !important;
}

/* Privacy never in main/mobile menus */
html body #header li:has(> a[href*="privacy-policy"]),
html body #icemegamenu li:has(> a[href*="privacy-policy"]),
html body #mainmenu li:has(> a[href*="privacy-policy"]),
html body .nav-collapse li:has(> a[href*="privacy-policy"]) {
  display: none !important;
}
html body #header a[href*="privacy-policy"],
html body #icemegamenu a[href*="privacy-policy"],
html body #mainmenu a[href*="privacy-policy"] {
  display: none !important;
}

/* === BATCH 59c contacts booking visible like other pages === */
html body.kasimov-page-contacts .kasimov-hero-booking,
html body.kasimov-page-contacts #headerimage .kasimov-hero-booking,
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-hero-booking,
html body.kasimov-page-contacts.kasimov-hero-has-booking .kasimov-hero-booking {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  height: auto !important;
  min-height: 64px !important;
  max-height: none !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 30 !important;
}


/* === BATCH 60 premium reveal + pin booking + hero contacts + esloboda bg === */

/* --- Scroll reveal (premium) --- */
html body .kasimov-reveal {
  opacity: 0;
  transform: translateY(32px) scale(0.988);
  filter: blur(1.5px);
  transition:
    opacity .9s cubic-bezier(.22, 1, .36, 1),
    transform .9s cubic-bezier(.22, 1, .36, 1),
    filter .9s cubic-bezier(.22, 1, .36, 1);
  will-change: opacity, transform, filter;
}
html body .kasimov-reveal.is-in {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  will-change: auto;
}
@media (prefers-reduced-motion: reduce) {
  html body .kasimov-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
  }
}

/* --- Booking: never float / follow cursor / jitter --- */
html body .kasimov-hero-booking,
html body .kasimov-hero-booking__inner,
html body .kasimov-hero-booking iframe,
html body .kasimov-tl-search,
html body #iceslideshow .kasimov-hero-booking,
html body #headerimage .kasimov-hero-booking {
  transform: none !important;
  translate: none !important;
  rotate: none !important;
  scale: none !important;
  transition: none !important;
  animation: none !important;
  filter: none !important;
  will-change: auto !important;
  perspective: none !important;
}
html body .kasimov-hero-booking {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  top: auto !important;
  margin: 0 !important;
  pointer-events: auto !important;
}
html body .kasimov-hero-booking:hover,
html body .kasimov-hero-booking:focus-within {
  transform: none !important;
}

/* --- Home hero contacts: top-left, clickable, nowrap --- */
html body.kasimov-page-home #iceslideshow #notice,
html body.kasimov-page-home #iceslideshow #notice.span4,
html body.kasimov-page-home #iceslideshow #notice.moduletable,
html body.kasimov-page-home #header #notice,
html body.kasimov-page-home #header #notice.span4,
html body.kasimov-page-home #notice.kasimov-hero-contacts {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  width: auto !important;
  max-width: none !important;
  float: none !important;
  position: absolute !important;
  top: 18px !important;
  left: 18px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 55 !important;
  margin: 0 !important;
  padding: 8px 12px !important;
  background: rgba(20, 14, 10, 0.28) !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 6px !important;
  box-shadow: none !important;
  pointer-events: auto !important;
  overflow: visible !important;
}
html body.kasimov-page-home #iceslideshow #notice .custom,
html body.kasimov-page-home #notice.kasimov-hero-contacts .custom {
  margin: 0 !important;
  padding: 0 !important;
}
html body.kasimov-page-home #notice .kasimov-contacts--cluster,
html body.kasimov-page-home .kasimov-hero-contacts .kasimov-contacts--cluster {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 10px !important;
  white-space: nowrap !important;
  max-width: none !important;
}
html body.kasimov-page-home #notice .kasimov-contacts__group,
html body.kasimov-page-home .kasimov-hero-contacts .kasimov-contacts__group {
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
  margin: 0 !important;
}
html body.kasimov-page-home #notice .kasimov-contacts__divider {
  display: inline-block !important;
  width: 1px !important;
  height: 14px !important;
  background: rgba(255,255,255,.45) !important;
  flex: 0 0 auto !important;
}
html body.kasimov-page-home #notice a.kasimov-phone,
html body.kasimov-page-home #notice a.kasimov-address__link,
html body.kasimov-page-home .kasimov-hero-contacts a.kasimov-phone,
html body.kasimov-page-home .kasimov-hero-contacts a.kasimov-address__link {
  color: #fff !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.55) !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  letter-spacing: 0.01em !important;
}
html body.kasimov-page-home #notice a.kasimov-phone:hover,
html body.kasimov-page-home #notice a.kasimov-address__link:hover {
  color: #f0d9a0 !important;
  text-decoration: underline !important;
}
html body.kasimov-page-home #notice .kasimov-phones__sep {
  color: rgba(255,255,255,.75) !important;
  white-space: nowrap !important;
}
html body.kasimov-page-home #notice .kasimov-ico,
html body.kasimov-page-home #notice .kasimov-contacts__icon {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
html body.kasimov-page-home #notice .kasimov-contacts__text {
  display: inline !important;
  white-space: nowrap !important;
}

/* Keep logo/menu clear of top-left contacts on desktop */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #header #logo {
    pointer-events: auto !important;
  }
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    top: 22px !important;
    left: 24px !important;
    max-width: calc(50vw - 220px) !important;
  }
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #header #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    top: 10px !important;
    left: 10px !important;
    padding: 6px 8px !important;
    z-index: 80 !important;
    max-width: calc(100vw - 120px) !important;
  }
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-address__link {
    font-size: 11px !important;
  }
  html body.kasimov-page-home #notice .kasimov-ico,
  html body.kasimov-page-home #notice .kasimov-contacts__icon {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }
  /* still no wrap — allow slight scale if needed */
  html body.kasimov-page-home #notice .kasimov-contacts--cluster {
    transform: none !important;
    gap: 7px !important;
  }
}

/* --- Contacts header menu font = other pages (18px) --- */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts.kasimov-header-after-hero #header #mainmenu ul#icemegamenu > li > a {
    font-size: 18px !important;
    line-height: 1.3 !important;
    letter-spacing: 0.04em !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
    font-family: Manrope, Outfit, "Helvetica Neue", Arial, sans-serif !important;
  }
}

/* --- Esloboda-like atmospheric backgrounds (photo + soft ornaments) --- */
html body.kasimov-page-about #content,
html body.kasimov-page-about #content.container,
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content.container,
html body.kasimov-page-rooms #content,
html body.kasimov-page-rooms #content.container,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-restaurant #content.container,
html body.kasimov-page-services #content,
html body.kasimov-page-services #content.container,
html body.kasimov-page-privacy #content,
html body.kasimov-page-privacy #content.container,
html body.kasimov-page-home #promo,
html body #content.container,
html body section#content {
  position: relative !important;
  isolation: isolate;
  background-color: #f4efe6 !important;
  background-image: none !important;
  overflow: hidden !important;
}

/* soft linen weave */
html body.kasimov-page-about #content::before,
html body.kasimov-page-contacts #content::before,
html body.kasimov-page-rooms #content::before,
html body.kasimov-page-restaurant #content::before,
html body.kasimov-page-services #content::before,
html body.kasimov-page-privacy #content::before,
html body.kasimov-page-home #promo::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.55 !important;
  background-image:
    linear-gradient(165deg, rgba(255,252,248,0.92) 0%, rgba(244,239,230,0.88) 45%, rgba(236,228,214,0.9) 100%),
    none !important;
  background-size: auto, 180px 180px !important;
  background-repeat: no-repeat, repeat !important;
}

/* large decorative ornament (left) like esloboda bg_1 */
html body.kasimov-page-about #content::after,
html body.kasimov-page-rooms #content::after,
html body.kasimov-page-services #content::after,
html body.kasimov-page-home #promo::after {
  content: "" !important;
  position: absolute !important;
  top: -80px !important;
  left: -40px !important;
  width: min(420px, 46vw) !important;
  height: min(780px, 120%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.22 !important;
  background: none left top / contain no-repeat !important;
}

html body.kasimov-page-restaurant #content::after,
html body.kasimov-page-contacts #content::after,
html body.kasimov-page-privacy #content::after {
  content: "" !important;
  position: absolute !important;
  top: -60px !important;
  right: -30px !important;
  left: auto !important;
  width: min(380px, 44vw) !important;
  height: min(700px, 115%) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.2 !important;
  background: none right top / contain no-repeat !important;
}

/* muted atmospheric photo wash behind content (hotel/restaurant themed) */
html body.kasimov-page-about #content_shadow,
html body.kasimov-page-rooms #content_shadow,
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-services #content_shadow,
html body.kasimov-page-contacts #content_shadow,
html body.kasimov-page-privacy #content_shadow {
  position: relative !important;
}
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-color: #ebe4d8 !important;
}
html body.kasimov-page-about #wrapper,
html body.kasimov-page-rooms #wrapper,
html body.kasimov-page-restaurant #wrapper,
html body.kasimov-page-services #wrapper,
html body.kasimov-page-contacts #wrapper,
html body.kasimov-page-privacy #wrapper,
html body.kasimov-page-home #wrapper {
  background-color: transparent !important;
}

/* page-stage photo atmosphere under content card */
html body.kasimov-page-about #main,
html body.kasimov-page-rooms #main,
html body.kasimov-page-restaurant #main,
html body.kasimov-page-services #main,
html body.kasimov-page-contacts #main,
html body.kasimov-page-privacy #main {
  position: relative !important;
  background-color: #ebe4d8 !important;
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.82), rgba(235,228,216,0.92)),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel1.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center !important;
  background-attachment: scroll, fixed !important;
  background-repeat: no-repeat !important;
}
html body.kasimov-page-restaurant #main {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.84), rgba(235,228,216,0.93)),
    url("/kasimovhotel-preview/images/restaurant/res1.jpg") !important;
}
html body.kasimov-page-rooms #main {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.84), rgba(235,228,216,0.93)),
    url("/kasimovhotel-preview/images/headimages/rooms.jpg") !important;
}
html body.kasimov-page-services #main {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.84), rgba(235,228,216,0.93)),
    url("/kasimovhotel-preview/images/banya/pool.jpg?v=heroSvc1") !important;
}
html body.kasimov-page-contacts #main,
html body.kasimov-page-privacy #main {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.86), rgba(235,228,216,0.94)),
    url("/kasimovhotel-preview/images/headimages/contacts3.jpg") !important;
}
html body.kasimov-page-home #promo {
  background-image: none !important;
}

/* keep content above ornaments */
html body.kasimov-page-about #content > *,
html body.kasimov-page-contacts #content > *,
html body.kasimov-page-rooms #content > *,
html body.kasimov-page-restaurant #content > *,
html body.kasimov-page-services #content > *,
html body.kasimov-page-privacy #content > *,
html body.kasimov-page-home #promo > * {
  position: relative !important;
  z-index: 1 !important;
}

/* floating plate accent on restaurant/home promo corner */
html body.kasimov-page-restaurant #content {
  background-image: none !important;
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-restaurant #content {
    box-shadow: 0 18px 50px rgba(40, 28, 18, 0.10) !important;
  }
  html body.kasimov-page-home #promo {
    min-height: 120px;
  }
  html body.kasimov-page-home #promo::after {
    background-image: url("../images/kasimov-ornament-plate.svg") !important;
    opacity: 0.16 !important;
    top: -40px !important;
    left: auto !important;
    right: -20px !important;
    width: 340px !important;
    height: 340px !important;
  }
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-about #main,
  html body.kasimov-page-rooms #main,
  html body.kasimov-page-restaurant #main,
  html body.kasimov-page-services #main,
  html body.kasimov-page-contacts #main,
  html body.kasimov-page-privacy #main {
    background-attachment: scroll, scroll !important;
  }
  html body.kasimov-page-about #content::after,
  html body.kasimov-page-rooms #content::after,
  html body.kasimov-page-services #content::after,
  html body.kasimov-page-restaurant #content::after,
  html body.kasimov-page-contacts #content::after,
  html body.kasimov-page-home #promo::after {
    opacity: 0.12 !important;
    width: min(260px, 70vw) !important;
  }
}


/* === BATCH 60b body photo stage + softer hero contacts === */

/* Template has no #main/#wrapper — atmosphere lives on body around #content */
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-color: #ebe4d8 !important;
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.78) 0%, rgba(235,228,216,0.88) 40%, rgba(235,228,216,0.94) 100%),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel1.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center 30% !important;
  background-attachment: scroll, fixed !important;
  background-repeat: no-repeat !important;
}
html body.kasimov-page-restaurant {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.8) 0%, rgba(235,228,216,0.9) 100%),
    url("/kasimovhotel-preview/images/restaurant/res1.jpg") !important;
}
html body.kasimov-page-rooms {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.8) 0%, rgba(235,228,216,0.9) 100%),
    url("/kasimovhotel-preview/images/headimages/rooms.jpg") !important;
}
html body.kasimov-page-services {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.8) 0%, rgba(235,228,216,0.9) 100%),
    url("/kasimovhotel-preview/images/banya/pool.jpg?v=heroSvc1") !important;
}
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(235,228,216,0.82) 0%, rgba(235,228,216,0.92) 100%),
    url("/kasimovhotel-preview/images/headimages/contacts3.jpg") !important;
}

/* Large body-level ornaments like esloboda section::before/after */
html body.kasimov-page-about::before,
html body.kasimov-page-rooms::before,
html body.kasimov-page-services::before {
  content: "" !important;
  position: fixed !important;
  top: 12vh !important;
  left: -2vw !important;
  width: min(460px, 36vw) !important;
  height: min(860px, 88vh) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.28 !important;
  background: none left top / contain no-repeat !important;
}
html body.kasimov-page-restaurant::before,
html body.kasimov-page-contacts::before,
html body.kasimov-page-privacy::before {
  content: "" !important;
  position: fixed !important;
  top: 14vh !important;
  right: -2vw !important;
  left: auto !important;
  width: min(420px, 34vw) !important;
  height: min(780px, 86vh) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.26 !important;
  background: none right top / contain no-repeat !important;
}
html body.kasimov-page-home::before {
  content: none !important;
}

/* Content card above atmosphere */
html body.kasimov-page-about #content,
html body.kasimov-page-rooms #content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-services #content,
html body.kasimov-page-contacts #content,
html body.kasimov-page-privacy #content,
html body.kasimov-page-home #promo {
  position: relative !important;
  z-index: 2 !important;
}

/* Kill leftover damask on empty content_shadow */
html body #content_shadow,
html body.kasimov-page-about #content_shadow,
html body.kasimov-page-rooms #content_shadow,
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-services #content_shadow,
html body.kasimov-page-contacts #content_shadow,
html body.kasimov-page-privacy #content_shadow {
  background: none !important;
  background-image: none !important;
}

/* Soften home hero contacts — no heavy bar, still readable */
html body.kasimov-page-home #iceslideshow #notice,
html body.kasimov-page-home #iceslideshow #notice.span4,
html body.kasimov-page-home #notice.kasimov-hero-contacts {
  background: rgba(18, 12, 8, 0.18) !important;
  backdrop-filter: blur(8px) saturate(1.05);
  -webkit-backdrop-filter: blur(8px) saturate(1.05);
  border: 1px solid rgba(255,255,255,0.18) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
  padding: 7px 12px !important;
  border-radius: 999px !important;
}
html body.kasimov-page-home #notice a.kasimov-phone,
html body.kasimov-page-home #notice a.kasimov-address__link {
  font-size: 13.5px !important;
  font-weight: 600 !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-about,
  html body.kasimov-page-rooms,
  html body.kasimov-page-restaurant,
  html body.kasimov-page-services,
  html body.kasimov-page-contacts,
  html body.kasimov-page-privacy {
    background-attachment: scroll, scroll !important;
  }
  html body.kasimov-page-about::before,
  html body.kasimov-page-rooms::before,
  html body.kasimov-page-services::before,
  html body.kasimov-page-restaurant::before,
  html body.kasimov-page-contacts::before,
  html body.kasimov-page-privacy::before {
    opacity: 0.14 !important;
    width: min(280px, 70vw) !important;
    position: absolute !important;
  }
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    border-radius: 8px !important;
    max-width: calc(100vw - 108px) !important;
  }
}

/* Ensure header/content sit above fixed ornaments */
html body #header,
html body #headerimage,
html body #iceslideshow,
html body #footer,
html body #bottom {
  position: relative;
  z-index: 3;
}
html body.kasimov-has-page-hero #header,
html body.kasimov-header-after-hero #header {
  z-index: 60 !important;
}


/* === BATCH 60d stronger photo atmosphere === */
/* Lighter wash so hotel/restaurant photo reads like esloboda section photos */
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.55) 0%, rgba(244,239,230,0.68) 45%, rgba(244,239,230,0.78) 100%),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel1.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center !important;
  background-attachment: scroll, fixed !important;
}
html body.kasimov-page-restaurant {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.52) 0%, rgba(244,239,230,0.72) 100%),
    url("/kasimovhotel-preview/images/restaurant/res1.jpg") !important;
}
html body.kasimov-page-rooms {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.52) 0%, rgba(244,239,230,0.72) 100%),
    url("/kasimovhotel-preview/images/headimages/rooms.jpg") !important;
}
html body.kasimov-page-services {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.52) 0%, rgba(244,239,230,0.72) 100%),
    url("/kasimovhotel-preview/images/banya/pool.jpg?v=heroSvc1") !important;
}
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.55) 0%, rgba(244,239,230,0.75) 100%),
    url("/kasimovhotel-preview/images/headimages/contacts3.jpg") !important;
}

/* Content card: cream glass over photo, linen + keep readable */
html body.kasimov-page-about #content,
html body.kasimov-page-rooms #content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-services #content,
html body.kasimov-page-contacts #content,
html body.kasimov-page-privacy #content {
  background-color: rgba(255, 252, 248, 0.92) !important;
  box-shadow: 0 22px 60px rgba(40, 28, 18, 0.14) !important;
}

html body.kasimov-page-about::before,
html body.kasimov-page-rooms::before,
html body.kasimov-page-services::before,
html body.kasimov-page-restaurant::before,
html body.kasimov-page-contacts::before,
html body.kasimov-page-privacy::before {
  opacity: 0.38 !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-about,
  html body.kasimov-page-rooms,
  html body.kasimov-page-restaurant,
  html body.kasimov-page-services,
  html body.kasimov-page-contacts,
  html body.kasimov-page-privacy {
    background-attachment: scroll, scroll !important;
  }
}


/* === BATCH 60e photo more visible === */
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.32) 0%, rgba(244,239,230,0.48) 50%, rgba(244,239,230,0.62) 100%),
    url("/kasimovhotel-preview/images/headimages/foie3.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center !important;
  background-attachment: scroll, fixed !important;
}
html body.kasimov-page-about {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.34) 0%, rgba(244,239,230,0.52) 100%),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel3.jpg") !important;
}
html body.kasimov-page-restaurant {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.30) 0%, rgba(244,239,230,0.50) 100%),
    url("/kasimovhotel-preview/images/restaurant/res3.jpg") !important;
}
html body.kasimov-page-rooms {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.32) 0%, rgba(244,239,230,0.52) 100%),
    url("/kasimovhotel-preview/images/headimages/rooms3.jpg") !important;
}
html body.kasimov-page-services {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.32) 0%, rgba(244,239,230,0.52) 100%),
    url("/kasimovhotel-preview/images/headimages/info2.jpg") !important;
}
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.36) 0%, rgba(244,239,230,0.55) 100%),
    url("/kasimovhotel-preview/images/headimages/contacts3.jpg") !important;
}
html body.kasimov-page-about::before,
html body.kasimov-page-rooms::before,
html body.kasimov-page-services::before,
html body.kasimov-page-restaurant::before,
html body.kasimov-page-contacts::before,
html body.kasimov-page-privacy::before {
  opacity: 0.42 !important;
  mix-blend-mode: multiply;
}


/* === BATCH 61 mobile chrome + contacts hero + rooms + restaurant gaps + no float === */

/* Kill transition:all jitter on hero chrome (template/bootstrap) */
html body #iceslideshow,
html body #header,
html body #header #mainmenu,
html body #notice,
html body .kasimov-hero-booking,
html body .kasimov-hero-contacts {
  transition: none !important;
}
html body #iceslideshow,
html body #notice,
html body .kasimov-hero-booking,
html body .kasimov-hero-contacts,
html body #headerimage,
html body #kasimov-page-hero {
  transform: none !important;
  translate: none !important;
  filter: none !important;
  will-change: auto !important;
  backface-visibility: hidden;
}

/* Desktop: keep notice + booking rigidly pinned */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    position: absolute !important;
    top: 22px !important;
    left: 24px !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    transition: none !important;
  }
  html body .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    transform: none !important;
    transition: none !important;
  }
  /* IceMegaMenu hover must not shift hero layer */
  html body #mainmenu ul#icemegamenu > li:hover,
  html body #mainmenu ul#icemegamenu > li.sfHover,
  html body #icemegamenu > li:hover,
  html body #icemegamenu > li.sfHover {
    transform: none !important;
  }
  html body #mainmenu .icesubMenu,
  html body #icemegamenu .icesubMenu,
  html body #mainmenu ul.sub-menu,
  html body #icemegamenu ul {
    transform: none !important;
  }
}

/* Mobile home: contacts under book CTA, address under phones */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #header #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    position: absolute !important;
    left: 10px !important;
    right: 10px !important;
    width: auto !important;
    max-width: none !important;
    /* top set by JS below book; CSS fallback */
    top: 56px !important;
    z-index: 240 !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts--cluster {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 4px !important;
    white-space: normal !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 6px !important;
    max-width: 100% !important;
    white-space: nowrap !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__group--phones {
    order: 1 !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__divider {
    display: none !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__group--address {
    order: 2 !important;
    white-space: nowrap !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-address__link {
    font-size: 12px !important;
    white-space: nowrap !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__text {
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    max-width: calc(100vw - 56px) !important;
  }
}

/* Contacts hero: stop cropping */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  height: auto !important;
  min-height: 42vh !important;
  max-height: none !important;
  overflow: visible !important;
}
html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
  min-height: 42vh !important;
  height: 42vh !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    min-height: 42vh !important;
    height: 42vh !important;
    max-height: none !important;
    overflow: hidden !important;
    background-size: cover !important;
    background-position: center 40% !important;
  }
}

/* Rooms (and inner pages): on mobile header in flow — photo must NOT go under menu */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-services #header,
  html body.kasimov-page-contacts #header,
  html body.kasimov-page-privacy #header,
  html body.kasimov-header-before-hero #header {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    z-index: 50 !important;
    background: #ffffff !important;
    margin: 0 !important;
  }
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-restaurant #kasimov-page-hero,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-about #kasimov-page-hero,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-page-services #kasimov-page-hero {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 38vh !important;
    min-height: 220px !important;
    max-height: 360px !important;
    margin: 0 !important;
    overflow: hidden !important;
    z-index: 1 !important;
  }
  html body.kasimov-page-rooms #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-rooms #headerimage .kasimov-page-hero__slide,
  html body.kasimov-page-restaurant #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-about #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-services #kasimov-page-hero .kasimov-page-hero__slide {
    min-height: 38vh !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
  }
  /* first content images never under menu */
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container {
    padding-top: 8px !important;
    margin-top: 0 !important;
  }
  html body.kasimov-page-rooms #content img,
  html body.kasimov-page-rooms #content .item-image img,
  html body.kasimov-page-rooms #content .blog img {
    position: relative !important;
    z-index: 1 !important;
  }
}

/* Restaurant mosaic: kill empty row gap (was 220px rows vs 160px imgs) */
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
html body.kasimov-page-restaurant .kasimov-gallery-mosaic {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  gap: 10px !important;
  margin: 12px 0 16px !important;
  padding: 0 !important;
  align-items: stretch !important;
}
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic > a,
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic > img,
html body.kasimov-page-restaurant .kasimov-gallery-mosaic > a,
html body.kasimov-page-restaurant .kasimov-gallery-mosaic > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: 4 / 3 !important;
  overflow: hidden !important;
}
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic img,
html body.kasimov-page-restaurant .kasimov-gallery-mosaic img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  margin: 0 !important;
  display: block !important;
  max-height: none !important;
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}


/* === BATCH 61b contacts hero taller + rooms desktop clear === */

/* Contacts hero: match other pages — not a cropped strip */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
    overflow: hidden !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    height: 72vh !important;
    min-height: 620px !important;
    background-size: cover !important;
    background-position: center 42% !important;
  }
}

/* Rooms desktop: hero visible under transparent header, not eaten by menu */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host {
    display: block !important;
    visibility: visible !important;
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 1 !important;
  }
  html body.kasimov-page-rooms #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-rooms #headerimage .kasimov-page-hero__slide {
    height: 100% !important;
    min-height: 620px !important;
    background-size: cover !important;
    background-position: center center !important;
  }
  html body.kasimov-page-rooms #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 60 !important;
    background: transparent !important;
    height: auto !important;
  }
  /* content images stay below hero, never under menu chrome */
  html body.kasimov-page-rooms #content {
    position: relative !important;
    z-index: 2 !important;
    margin-top: 0 !important;
  }
}

/* Mobile rooms: ensure first room photo clear of sticky book row */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-rooms #content .items-leading,
  html body.kasimov-page-rooms #content .blog,
  html body.kasimov-page-rooms #content .item-page {
    padding-top: 4px !important;
  }
  html body.kasimov-page-rooms #content .item-image,
  html body.kasimov-page-rooms #content .items-leading img,
  html body.kasimov-page-rooms #content .blog .item-image {
    margin-top: 0 !important;
  }
  /* book CTA is fixed — give header breathing room so menu isn't crushed */
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-services #header,
  html body.kasimov-page-contacts #header {
    padding-top: 48px !important;
  }
}


/* === BATCH 61c headerimage host unlock === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
    overflow: hidden !important;
  }
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage .kasimov-page-hero__slide {
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center 40% !important;
  }

  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms.kasimov-has-page-hero #headerimage.kasimov-page-hero-host {
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
  }
}


/* === BATCH 62 menu yt float booking bg speed === */

html body a[href*="youtube.com"],
html body a[href*="youtu.be"],
html body li.social_youtube,
html body .social_youtube {
  display: none !important;
}

/* Contacts mobile menu: black text, no highlight wash */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #header {
    background: #fff !important;
    background-image: none !important;
  }
  html body.kasimov-page-contacts #header #mainmenu a,
  html body.kasimov-page-contacts #header #icemegamenu a,
  html body.kasimov-page-contacts #header .nav-collapse a,
  html body.kasimov-page-contacts #header .nav-collapse.in a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li.active > a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a:hover,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a:focus,
  html body.kasimov-page-contacts #mainmenu .mobile-nav-toggle {
    color: #111 !important;
    text-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
  }
}

/* Rooms etc: white header, not black */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-services #header,
  html body.kasimov-page-contacts #header,
  html body.kasimov-page-privacy #header {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
  }
}

/* Contacts hero: cream, never black */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero {
  background-color: #ebe4d8 !important;
  background-image: none !important;
}
html body.kasimov-page-contacts #kasimov-page-hero::before,
html body.kasimov-page-contacts #headerimage::before,
html body.kasimov-page-contacts #kasimov-page-hero::after,
html body.kasimov-page-contacts #headerimage::after {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Desktop: stop float WITHOUT breaking TL calendar */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow {
    transform: none !important;
    filter: none !important;
    perspective: none !important;
    transition: none !important;
  }
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    position: absolute !important;
    top: 22px !important;
    left: 24px !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
    will-change: auto !important;
    background: rgba(18,12,8,.42) !important;
  }
  html body .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    transform: none !important;
    transition: none !important;
    filter: none !important;
    will-change: auto !important;
    overflow: visible !important;
    pointer-events: auto !important;
    z-index: 45 !important;
  }
  html body .kasimov-hero-booking__inner,
  html body .kasimov-tl-search,
  html body .kasimov-hero-booking iframe {
    pointer-events: auto !important;
    overflow: visible !important;
    z-index: 46 !important;
  }
  /* Undo batch61 child locks that break datepicker popups */
  html body .kasimov-hero-booking .kasimov-hero-booking__inner,
  html body .kasimov-hero-booking .kasimov-tl-search,
  html body .kasimov-hero-booking iframe {
    transform: none !important; /* iframe box itself */
  }
  /* Allow TL widgets injected as siblings/portals under booking wrap to move/animate */
  html body .kasimov-hero-booking [class*="tl-"],
  html body .kasimov-hero-booking [class*="TL-"],
  html body .kasimov-hero-booking [id*="tl-"],
  html body [class*="datepicker"],
  html body [class*="calendar"],
  html body .pika-single,
  html body .litepicker,
  html body .flatpickr-calendar {
    transform: none;
    pointer-events: auto !important;
    z-index: 2147483000 !important;
  }
  html body #header,
  html body #mainmenu,
  html body #icemegamenu > li {
    transform: none !important;
    filter: none !important;
  }
}

/* Stronger esloboda atmosphere — photo + ornaments clearly visible */
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy,
html body.kasimov-page-home {
  background-attachment: scroll, scroll !important;
}
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-color: #e6ddd0 !important;
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.18) 0%, rgba(244,239,230,0.34) 100%),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel3.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center !important;
  background-repeat: no-repeat !important;
}
html body.kasimov-page-restaurant {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.16) 0%, rgba(244,239,230,0.36) 100%),
    url("/kasimovhotel-preview/images/restaurant/res3.jpg") !important;
}
html body.kasimov-page-rooms {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.16) 0%, rgba(244,239,230,0.36) 100%),
    url("/kasimovhotel-preview/images/headimages/rooms3.jpg") !important;
}
html body.kasimov-page-services {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.16) 0%, rgba(244,239,230,0.36) 100%),
    url("/kasimovhotel-preview/images/headimages/info2.jpg") !important;
}
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.18) 0%, rgba(244,239,230,0.4) 100%),
    url("/kasimovhotel-preview/images/headimages/contacts3.jpg") !important;
}
html body.kasimov-page-home {
  background-color: #efe7db !important;
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.45), rgba(244,239,230,0.7)),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel1.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center !important;
  background-repeat: no-repeat !important;
}

html body.kasimov-page-about::before,
html body.kasimov-page-rooms::before,
html body.kasimov-page-services::before {
  content: "" !important;
  position: fixed !important;
  top: 8vh !important;
  left: 0 !important;
  width: min(560px, 42vw) !important;
  height: min(960px, 92vh) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.62 !important;
  mix-blend-mode: multiply !important;
  background: none left top / contain no-repeat !important;
}
html body.kasimov-page-restaurant::before,
html body.kasimov-page-contacts::before,
html body.kasimov-page-privacy::before {
  content: "" !important;
  position: fixed !important;
  top: 10vh !important;
  right: 0 !important;
  left: auto !important;
  width: min(520px, 40vw) !important;
  height: min(900px, 90vh) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.58 !important;
  mix-blend-mode: multiply !important;
  background: none right top / contain no-repeat !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-about #content,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-services #content,
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-privacy #content {
    background-color: rgba(255,252,248,0.86) !important;
    background-image:
      linear-gradient(165deg, rgba(255,252,248,0.7), rgba(255,252,248,0.55)),
      none !important;
    background-size: auto, 180px 180px !important;
    background-repeat: no-repeat, repeat !important;
    max-width: 1080px !important;
    width: min(1080px, 86vw) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative !important;
    z-index: 2 !important;
  }
}

/* Faster reveals */
html body .kasimov-reveal {
  opacity: 0;
  transform: translateY(14px);
  filter: none !important;
  transition: opacity .45s ease, transform .45s ease !important;
  will-change: auto !important;
}
html body .kasimov-reveal.is-in {
  opacity: 1 !important;
  transform: none !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #logo img {
    max-height: 148px !important;
    height: 148px !important;
  }
  html body.kasimov-page-about::before,
  html body.kasimov-page-rooms::before,
  html body.kasimov-page-services::before,
  html body.kasimov-page-restaurant::before,
  html body.kasimov-page-contacts::before {
    opacity: 0.28 !important;
    position: absolute !important;
  }
}


/* === BATCH 62b cookie vs booking z-index === */
/* Cookie was z-index 2147483600 and covered TravelLine — dates unusable */
html body .kasimov-cookie {
  z-index: 70 !important;
  bottom: 96px !important;
  left: 16px !important;
  right: 16px !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-cookie {
    bottom: 16px !important;
    z-index: 70 !important;
  }
}
html body .kasimov-hero-booking,
html body .kasimov-hero-booking__inner,
html body .kasimov-tl-search,
html body .kasimov-hero-booking iframe {
  z-index: 120 !important;
  pointer-events: auto !important;
  overflow: visible !important;
}
html body #iceslideshow.kasimov-hero-has-booking,
html body #headerimage.kasimov-hero-has-booking,
html body.kasimov-hero-has-booking #iceslideshow {
  overflow: visible !important;
}

/* === BATCH 63 esloboda float booking speed === */

/* Kill global noise ::before that hid ornaments */
html body::before {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Page ornaments win — large, visible, like esloboda */
html body.kasimov-page-about::before,
html body.kasimov-page-rooms::before,
html body.kasimov-page-services::before {
  content: "" !important;
  display: block !important;
  position: fixed !important;
  top: 4vh !important;
  left: -2vw !important;
  width: min(640px, 48vw) !important;
  height: min(1100px, 96vh) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.78 !important;
  mix-blend-mode: multiply !important;
  background: none left top / contain no-repeat !important;
}
html body.kasimov-page-restaurant::before,
html body.kasimov-page-contacts::before,
html body.kasimov-page-privacy::before {
  content: "" !important;
  display: block !important;
  position: fixed !important;
  top: 6vh !important;
  right: -2vw !important;
  left: auto !important;
  width: min(600px, 46vw) !important;
  height: min(1000px, 94vh) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  opacity: 0.74 !important;
  mix-blend-mode: multiply !important;
  background: none right top / contain no-repeat !important;
}

/* Photo under content — thinner wash so hotel image reads clearly */
html body.kasimov-page-about,
html body.kasimov-page-rooms,
html body.kasimov-page-restaurant,
html body.kasimov-page-services,
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-color: #e8dfd2 !important;
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.08) 0%, rgba(244,239,230,0.22) 100%),
    url("/kasimovhotel-preview/images/about-hotel/about-hotel3.jpg") !important;
  background-size: auto, cover !important;
  background-position: center, center !important;
  background-repeat: no-repeat !important;
  background-attachment: scroll, fixed !important;
}
html body.kasimov-page-restaurant {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.08) 0%, rgba(244,239,230,0.22) 100%),
    url("/kasimovhotel-preview/images/restaurant/res3.jpg") !important;
}
html body.kasimov-page-rooms {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.08) 0%, rgba(244,239,230,0.22) 100%),
    url("/kasimovhotel-preview/images/headimages/rooms3.jpg") !important;
}
html body.kasimov-page-services {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.08) 0%, rgba(244,239,230,0.22) 100%),
    url("/kasimovhotel-preview/images/headimages/info2.jpg") !important;
}
html body.kasimov-page-contacts,
html body.kasimov-page-privacy {
  background-image:
    linear-gradient(180deg, rgba(244,239,230,0.1) 0%, rgba(244,239,230,0.26) 100%),
    url("/kasimovhotel-preview/images/headimages/contacts3.jpg") !important;
}

/* Narrow glass content so side photo + ornaments show (was stuck at 1170) */
html body.kasimov-page-about #content,
html body.kasimov-page-about #content.container,
html body.kasimov-page-rooms #content,
html body.kasimov-page-rooms #content.container,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-restaurant #content.container,
html body.kasimov-page-services #content,
html body.kasimov-page-services #content.container,
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content.container,
html body.kasimov-page-privacy #content,
html body.kasimov-page-privacy #content.container {
  max-width: 980px !important;
  width: min(980px, 78vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  position: relative !important;
  z-index: 2 !important;
  background-color: rgba(255,252,248,0.88) !important;
  background-image:
    linear-gradient(165deg, rgba(255,252,248,0.72), rgba(255,252,248,0.55)),
    none !important;
  background-size: auto, 160px 160px !important;
  background-repeat: no-repeat, repeat !important;
  box-shadow: 0 18px 48px rgba(40,28,16,0.08) !important;
  border-radius: 10px !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
}
html body.kasimov-page-about #content_shadow,
html body.kasimov-page-rooms #content_shadow,
html body.kasimov-page-restaurant #content_shadow,
html body.kasimov-page-services #content_shadow,
html body.kasimov-page-contacts #content_shadow,
html body.kasimov-page-privacy #content_shadow,
html body.kasimov-page-about #wrapper,
html body.kasimov-page-rooms #wrapper,
html body.kasimov-page-restaurant #wrapper,
html body.kasimov-page-services #wrapper,
html body.kasimov-page-contacts #wrapper,
html body.kasimov-page-privacy #wrapper {
  background: transparent !important;
  background-image: none !important;
  max-width: none !important;
  box-shadow: none !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-about #content,
  html body.kasimov-page-about #content.container,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-restaurant #content.container,
  html body.kasimov-page-services #content,
  html body.kasimov-page-services #content.container,
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin: 12px auto !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  html body.kasimov-page-about::before,
  html body.kasimov-page-rooms::before,
  html body.kasimov-page-services::before,
  html body.kasimov-page-restaurant::before,
  html body.kasimov-page-contacts::before,
  html body.kasimov-page-privacy::before {
    opacity: 0.55 !important;
    position: fixed !important;
    width: min(280px, 72vw) !important;
  }
  /* Rooms / contacts / all inner pages: white header, never black */
  html body.kasimov-page-rooms #header,
  html body.kasimov-page-restaurant #header,
  html body.kasimov-page-about #header,
  html body.kasimov-page-services #header,
  html body.kasimov-page-contacts #header,
  html body.kasimov-page-privacy #header,
  html body.kasimov-header-before-hero #header {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
  }
  html body.kasimov-page-rooms .page-header,
  html body.kasimov-page-rooms #content .page-header {
    background: transparent !important;
    background-color: transparent !important;
  }
  /* Contacts open menu: plain black text, no wash */
  html body.kasimov-page-contacts #header #mainmenu,
  html body.kasimov-page-contacts #header .nav-collapse,
  html body.kasimov-page-contacts #header .nav-collapse.in,
  html body.kasimov-page-contacts #header ul#icemegamenu,
  html body.kasimov-page-contacts #header ul#icemegamenu > li,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li.active > a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a:hover,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a:focus,
  html body.kasimov-page-contacts #header ul#icemegamenu > li > a:active,
  html body.kasimov-page-contacts #header .nav-collapse a,
  html body.kasimov-page-contacts #header .nav-collapse.in a {
    color: #111111 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
    border-color: transparent !important;
  }
  html body.kasimov-page-home #logo img {
    max-height: 172px !important;
    height: 172px !important;
  }
}

/* Contacts hero: never black fill — show photo/cream */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
  background: #ebe4d8 !important;
  background-color: #ebe4d8 !important;
  background-image: none !important;
}
html body.kasimov-page-contacts #kasimov-page-hero::before,
html body.kasimov-page-contacts #headerimage::before,
html body.kasimov-page-contacts #kasimov-page-hero::after,
html body.kasimov-page-contacts #headerimage::after {
  content: none !important;
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Desktop: hard-pin booking + phones — no float on menu hover / cursor */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow .carousel-inner,
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .carousel-inner > .item {
    transform: none !important;
    transition: none !important;
    perspective: none !important;
    filter: none !important;
  }
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #header #notice {
    position: absolute !important;
    top: 22px !important;
    left: 24px !important;
    right: auto !important;
    bottom: auto !important;
    float: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    margin: 0 !important;
    will-change: auto !important;
    z-index: 80 !important;
  }
  html body #iceslideshow > .kasimov-hero-booking,
  html body #headerimage > .kasimov-hero-booking,
  html body #kasimov-page-hero > .kasimov-hero-booking,
  html body .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    float: none !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    will-change: auto !important;
    pointer-events: auto !important;
    overflow: visible !important;
    z-index: 120 !important;
  }
  html body .kasimov-hero-booking__inner,
  html body .kasimov-tl-search,
  html body .kasimov-hero-booking iframe,
  html body #iceslideshow .kasimov-hero-booking iframe {
    pointer-events: auto !important;
    overflow: visible !important;
    z-index: 121 !important;
    transform: none !important;
  }
  /* IceMegaMenu must not shift layout / create containing transforms */
  html body #header,
  html body #mainmenu,
  html body #icemegamenu,
  html body #icemegamenu > li,
  html body #icemegamenu > li:hover,
  html body #icemegamenu > li.sfHover,
  html body #mainmenu ul#icemegamenu > li,
  html body #mainmenu ul#icemegamenu > li:hover,
  html body #mainmenu ul#icemegamenu > li.sfHover {
    transform: none !important;
    transition: none !important;
    filter: none !important;
  }
  html body #mainmenu .icesubMenu,
  html body #icemegamenu .icesubMenu {
    transform: none !important;
    position: absolute !important;
  }
}

/* Booking / TL calendar portals above cookie */
html body .kasimov-cookie {
  z-index: 50 !important;
  bottom: 110px !important;
  pointer-events: auto !important;
}
html body [class*="datepicker"],
html body [class*="calendar"],
html body .pika-single,
html body .litepicker,
html body .flatpickr-calendar,
html body div[id*="tl-"],
html body .tl-container {
  z-index: 2147483000 !important;
  pointer-events: auto !important;
}

/* Hide YouTube everywhere */
html body a[href*="youtube.com"],
html body a[href*="youtu.be"],
html body li.social_youtube,
html body .social_youtube,
html body iframe[src*="youtube"],
html body iframe[src*="youtu.be"] {
  display: none !important;
}

/* Faster motion — no blur, short fade */
html body .kasimov-reveal {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
  will-change: auto !important;
}
html body .kasimov-reveal.is-in {
  opacity: 1 !important;
  transform: none !important;
}
@media (prefers-reduced-motion: reduce) {
  html body * {
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
  }
}

/* === BATCH 64 logo contacts booking rooms menu === */

/* Unified desktop nav typography on EVERY page */
@media only screen and (min-width: 980px) {
  html body #header #mainmenu ul#icemegamenu,
  html body #mainmenu ul#icemegamenu,
  html body.kasimov-page-home #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-about #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-rooms #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-restaurant #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-services #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu,
  html body.kasimov-page-privacy #header #mainmenu ul#icemegamenu,
  html body.kasimov-has-page-hero #header #mainmenu ul#icemegamenu {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0 !important;
  }
  html body #header #mainmenu ul#icemegamenu > li > a,
  html body #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-home #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-home #mainmenu ul#icemegamenu > li > a,
  html body:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li > a,
  html body:not(.kasimov-page-home) #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-has-page-hero:not(.kasimov-page-home) #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-about #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-rooms #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-restaurant #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-services #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-privacy #header #mainmenu ul#icemegamenu > li > a {
    font-family: "PT Sans", "Helvetica Neue", Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.25 !important;
    text-transform: none !important;
    padding: 12px 16px !important;
    display: inline-block !important;
    width: auto !important;
    text-align: center !important;
  }
}

/* Rooms desktop hero — full viewport */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-rooms.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-rooms.kasimov-has-page-hero #kasimov-page-hero {
    display: block !important;
    visibility: visible !important;
    position: relative !important;
    width: 100% !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    overflow: hidden !important;
    z-index: 1 !important;
  }
  html body.kasimov-page-rooms #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-rooms #headerimage .kasimov-page-hero__slide {
    height: 100% !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    background-size: cover !important;
    background-position: center center !important;
  }
  html body.kasimov-page-rooms #header {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 60 !important;
    background: transparent !important;
  }
}

/* Contacts: readable layout + cream hero (not black) */
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero {
  background: #ebe4d8 !important;
  background-color: #ebe4d8 !important;
}
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content.container {
  max-width: 980px !important;
  width: min(980px, 92vw) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  color: #2a2420 !important;
  background-color: rgba(255,252,248,0.94) !important;
}
html body.kasimov-page-contacts .kasimov-contacts-page,
html body.kasimov-page-contacts .kasimov-contacts-lead,
html body.kasimov-page-contacts .kasimov-contacts-page__block,
html body.kasimov-page-contacts .kasimov-contacts-page h3,
html body.kasimov-page-contacts .kasimov-contacts-page p,
html body.kasimov-page-contacts .kasimov-contacts-page a {
  color: #2a2420 !important;
  opacity: 1 !important;
  visibility: visible !important;
}
html body.kasimov-page-contacts .kasimov-contacts-map iframe {
  width: 100% !important;
  min-height: 420px !important;
  height: 450px !important;
  border: 0 !important;
  display: block !important;
}

/* Booking MUST work: overflow visible + growable iframe, no PE none */
@media only screen and (min-width: 980px) {
  html body #iceslideshow.kasimov-hero-has-booking,
  html body #headerimage.kasimov-hero-has-booking,
  html body #headerimage.kasimov-page-hero-host.kasimov-hero-has-booking,
  html body.kasimov-hero-has-booking #iceslideshow,
  html body #iceslideshow,
  html body #headerimage.kasimov-page-hero-host {
    overflow: visible !important;
  }
  html body #iceslideshow > .kasimov-hero-booking,
  html body #headerimage > .kasimov-hero-booking,
  html body #kasimov-page-hero > .kasimov-hero-booking,
  html body .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    z-index: 200 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    transform: none !important;
    transition: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 0 0 18px !important;
    background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.45) 55%, rgba(0,0,0,.62) 100%) !important;
  }
  html body .kasimov-hero-booking__inner,
  html body .kasimov-tl-search,
  html body .kasimov-tl-search > div,
  html body .kasimov-hero-booking iframe {
    pointer-events: auto !important;
    overflow: visible !important;

    min-height: 54px !important;
    width: 100% !important;
    z-index: 201 !important;
  }
  /* Do NOT lock iframe to 54/78 — TravelLine expands for datepicker */
  html body .kasimov-hero-booking iframe {


  }
}
html body .kasimov-cookie {
  z-index: 40 !important;
  bottom: 120px !important;
  pointer-events: auto !important;
}

/* Mobile home logo: centered, no transform float */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #logo,
  html body.kasimov-page-home #header #logo {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    transform: none !important;
    transition: none !important;
    text-align: center !important;
    z-index: 220 !important;
  }
  html body.kasimov-page-home #logo img,
  html body.kasimov-page-home #header #logo img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    transform: none !important;
    max-height: 168px !important;
    height: 168px !important;
    width: auto !important;
    max-width: 78vw !important;
  }
}


/* === BATCH 64b logo viewport center === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #logo,
  html body.kasimov-page-home #header #logo {
    transform: none !important;
    transition: none !important;
    float: none !important;
    will-change: auto !important;
  }
  html body.kasimov-page-home #logo img {
    display: block !important;
    float: none !important;
    transform: none !important;
  }
}

/* === BATCH 65 contacts gap + logo in hero + booking === */

/* Contacts: shorter hero, no huge gap before content */
@media only screen and (max-width: 979px) {
html body.kasimov-page-contacts #headerimage,
html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
html body.kasimov-page-contacts #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero,
html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage.kasimov-page-hero-host {
  height: 42vh !important;
  min-height: 220px !important;
  max-height: 420px !important;
  margin: 0 !important;
  padding: 0 !important;
}
}

html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
  height: 100% !important;
  min-height: 220px !important;
  max-height: 420px !important;
}
html body.kasimov-page-contacts #content,
html body.kasimov-page-contacts #content.container,
html body.kasimov-page-contacts #content_shadow {
  margin-top: 0 !important;
  padding-top: 12px !important;
}
html body.kasimov-page-contacts #header + #content,
html body.kasimov-page-contacts #headerimage + #content,
html body.kasimov-page-contacts #kasimov-page-hero + #content,
html body.kasimov-page-contacts .kasimov-page-hero-host + #content {
  margin-top: 0 !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts #kasimov-page-hero {
    height: 32vh !important;
    min-height: 180px !important;
    max-height: 220px !important;
  }
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}

/* Mobile logo: ABSOLUTE inside hero — scrolls away with hero, not fixed to viewport */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #logo,
  html body.kasimov-page-home #header #logo {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    float: none !important;
    transform: none !important;
    transition: none !important;
    text-align: center !important;
    z-index: 220 !important;
  }
  html body.kasimov-page-home #logo img {
    display: block !important;
    margin: 0 auto !important;
    float: none !important;
    transform: none !important;
  }
}

/* Booking: do not fight TravelLine height; keep clickable */
@media only screen and (min-width: 980px) {
  html body #iceslideshow.kasimov-hero-has-booking,
  html body #headerimage.kasimov-hero-has-booking,
  html body.kasimov-hero-has-booking #iceslideshow {
    overflow: visible !important;
  }
  html body .kasimov-hero-booking,
  html body #iceslideshow > .kasimov-hero-booking,
  html body #headerimage > .kasimov-hero-booking {
    pointer-events: auto !important;
    overflow: visible !important;
    z-index: 200 !important;
  }
  html body .kasimov-hero-booking iframe,
  html body .kasimov-tl-search iframe {
    pointer-events: auto !important;
    /* NEVER lock height — TravelLine sets it for datepicker */

  }
}
/* Undo blanket z-index on all tl- ids (breaks calendar portals) */
html body .kasimov-tl-search {
  z-index: 201 !important;
}
html body div[id*="tl-"] {
  z-index: auto;
}
html body .kasimov-cookie {
  z-index: 30 !important;
  bottom: 120px !important;
}

/* === BATCH 65b booking iframe height unlock === */
/* TravelLine sets iframe height for datepicker — never force 78px */
html body .kasimov-hero-booking iframe,
html body .kasimov-tl-search iframe,
html body #iceslideshow .kasimov-hero-booking iframe,
html body #headerimage .kasimov-hero-booking iframe,
html body .kasimov-hero-booking .kasimov-tl-search iframe,
html body .kasimov-hero-booking .kasimov-tl-search > div > iframe {


  max-height: none !important;
  pointer-events: auto !important;
}
html body .kasimov-hero-booking,
html body .kasimov-hero-booking__inner,
html body .kasimov-tl-search,
html body .kasimov-tl-search > div {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

/* === BATCH 65c booking height attribute === */
/* Do not set height at all — TravelLine uses height attribute for calendar */
html body .kasimov-hero-booking iframe,
html body .kasimov-tl-search iframe,
html body #iceslideshow .kasimov-hero-booking iframe,
html body #headerimage .kasimov-hero-booking iframe {

  max-height: none !important;
  pointer-events: auto !important;
  overflow: visible !important;
}
html body .kasimov-hero-booking,
html body .kasimov-hero-booking__inner,
html body .kasimov-tl-search {
  overflow: visible !important;
  max-height: none !important;
  pointer-events: auto !important;
}
html body #iceslideshow.kasimov-hero-has-booking,
html body #headerimage.kasimov-hero-has-booking {
  overflow: visible !important;
}

/* === BATCH 66 mobile logo center === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow #logo,
  html body.kasimov-page-home #logo {
    position: absolute !important;
    float: none !important;
    transform: none !important;
    text-align: center !important;
  }
  html body.kasimov-page-home #iceslideshow #logo img,
  html body.kasimov-page-home #logo img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    transform: none !important;
  }
}

/* === BATCH 67 booking original + no menu float === */

/* Theme hover overlay must NEVER restyle booking */
html body .kasimov-hero-booking.icemegamenu-hover,
html body .kasimov-hero-booking .icemegamenu-hover,
html body #block-search.icemegamenu-hover,
html body #tl-search-form.icemegamenu-hover,
html body .kasimov-hero-booking__inner.icemegamenu-hover {
  background: transparent !important;
  position: static !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  height: auto !important;
  z-index: auto !important;
  transition: none !important;
}
html body .kasimov-hero-booking .icemegamenu-hover {
  position: static !important;
  height: auto !important;
  width: auto !important;
}

@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 16px !important;
    transform: none !important;
    transition: none !important;
    z-index: 200 !important;
    pointer-events: auto !important;
    overflow: visible !important;
    background: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.42) 55%, rgba(0,0,0,.58) 100%) !important;
  }
  html body .kasimov-hero-booking #block-search,
  html body .kasimov-hero-booking #tl-search-form {
    max-width: 1130px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 16px !important;
    float: none !important;
    pointer-events: auto !important;
    overflow: visible !important;
    position: relative !important;
    left: auto !important;
    top: auto !important;
    height: auto !important;
    background: transparent !important;
  }
  /* Do not override TL iframe height — original uses attr height=54 and grows */
  html body .kasimov-hero-booking iframe,
  html body #tl-search-form iframe {
    pointer-events: auto !important;

    display: block !important;
  }
  html body #iceslideshow.kasimov-hero-has-booking,
  html body #headerimage.kasimov-hero-has-booking {
    overflow: visible !important;
    position: relative !important;
  }
  /* Menu hover must not shift hero chrome */
  html body #iceslideshow,
  html body .kasimov-hero-booking,
  html body #notice,
  html body #notice.kasimov-hero-contacts {
    transform: none !important;
  }
  html body #mainmenu .container:hover ~ #iceslideshow .kasimov-hero-booking,
  html body.kasimov-page-home #iceslideshow .kasimov-hero-booking {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
  }
}
@media only screen and (max-width: 979px) {
  html body .kasimov-hero-booking { display: none !important; }
}

/* === BATCH 67b TL iframe height free === */
html body .kasimov-hero-booking iframe,
html body #tl-search-form iframe,
html body #block-search iframe,
html body #iceslideshow .kasimov-hero-booking iframe,
html body #iceslideshow #tl-search-form iframe {


  /* height unset removed */
  pointer-events: auto !important;
}

/* === BATCH 68 booking calendar free + logo stable === */

/* TravelLine owns iframe height completely — no height/min-height !important */
html body .kasimov-hero-booking iframe,
html body #tl-search-form iframe,
html body #block-search iframe,
html body #iceslideshow .kasimov-hero-booking iframe,
html body #iceslideshow #tl-search-form iframe,
html body #headerimage .kasimov-hero-booking iframe {
  min-height: 0 !important;
  max-height: none !important;
  /* intentionally no height property */
  pointer-events: auto !important;
  overflow: visible !important;
}
html body .kasimov-hero-booking,
html body .kasimov-hero-booking #block-search,
html body .kasimov-hero-booking #tl-search-form,
html body #iceslideshow.kasimov-hero-has-booking,
html body #headerimage.kasimov-hero-has-booking {
  overflow: visible !important;
  pointer-events: auto !important;
}
/* Keep logo from transitioning / transforming during scroll */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #logo,
  html body.kasimov-page-home #iceslideshow #logo,
  html body.kasimov-page-home #logo img {
    transition: none !important;
    animation: none !important;
    will-change: auto !important;
    transform: none !important;
  }
}


/* === BATCH69b booking content overflow === */
/* Booking page: #content overflow:hidden clips TravelLine booking-form */
html body.kasimov-page-booking #content,
html body #content:has(#tl-booking-form),
html body #content:has(#tl-booking-form) .item-page,
html body #content:has(#tl-booking-form) .inside,
html body #middlecol:has(#tl-booking-form) {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}


/* === BATCH69c booking iframe no-height-override === */
html body #tl-booking-form iframe,
html body #tl-search-form iframe,
html body .kasimov-hero-booking iframe,
html body iframe[id^="tlFrame"] {
  max-height: none;
  visibility: visible;
}
html body #tl-booking-form {
  min-height: 200px;
  overflow: visible;
}


/* === BATCH71 privacy mobile overflow === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-privacy,
  html body.kasimov-page-privacy #wrapper,
  html body.kasimov-page-privacy #main,
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-privacy .item-page,
  html body.kasimov-page-privacy .inside,
  html body.kasimov-page-privacy .row,
  html body.kasimov-page-privacy .span12,
  html body.kasimov-page-privacy .page-header,
  html body.kasimov-page-privacy .kasimov-privacy-page {
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container {
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 14px 20px !important;
  }

  html body.kasimov-page-privacy h2,
  html body.kasimov-page-privacy .page-header h2,
  html body.kasimov-page-privacy .page-header,
  html body.kasimov-page-privacy .breadcrumb,
  html body.kasimov-page-privacy .breadcrumb li,
  html body.kasimov-page-privacy .kasimov-privacy-page,
  html body.kasimov-page-privacy .kasimov-privacy-page p,
  html body.kasimov-page-privacy .kasimov-privacy-lead,
  html body.kasimov-page-privacy .kasimov-privacy-page h3 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    word-wrap: break-word !important;
    white-space: normal !important;
    hyphens: auto;
  }

  html body.kasimov-page-privacy h2,
  html body.kasimov-page-privacy .page-header h2 {
    font-size: clamp(22px, 7vw, 28px) !important;
    line-height: 1.15 !important;
    margin: 0 0 12px !important;
  }

  html body.kasimov-page-privacy .breadcrumb {
    font-size: 11px !important;
    line-height: 1.35 !important;
  }

  /* Footer legal links on all pages */
  html body .kasimov-footer-pets,
  html body .kasimov-footer-pets a,
  html body #footer a[href*="privacy-policy"],
  html body #footer a[href*="pets"],
  html body #footer a[href*="zhivotn"] {
    max-width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    white-space: normal !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}


/* === BATCH71b privacy title specificity === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-privacy #content .page-header h2,
  html body.kasimov-page-privacy #content .item-page .page-header h2,
  html body.kasimov-page-privacy #content h2,
  html body.kasimov-page-privacy .item-page h2 {
    font-size: clamp(22px, 6.5vw, 28px) !important;
    line-height: 1.18 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  html body.kasimov-page-privacy #content .breadcrumb,
  html body.kasimov-page-privacy #content .breadcrumb > li,
  html body.kasimov-page-privacy #content .breadcrumb > li > span,
  html body.kasimov-page-privacy #content .breadcrumb a {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    white-space: normal !important;
  }
}


/* === BATCH72 privacy/desktop layout fix === */
/* No empty hero / booking strip on text pages */
html body.kasimov-page-privacy #headerimage,
html body.kasimov-page-privacy #kasimov-page-hero,
html body.kasimov-page-privacy .kasimov-hero-booking,
html body.kasimov-page-privacy #headerimage.kasimov-page-hero-host {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

html body.kasimov-page-privacy {
  overflow-x: hidden !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-privacy section#content {
    position: relative !important;
    z-index: 5 !important;
    display: block !important;
    float: none !important;
    clear: both !important;
    width: min(980px, 92vw) !important;
    max-width: 980px !important;
    margin: 36px auto 48px !important;
    padding: 32px 40px 44px !important;
    background: #fff !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
  }

  html body.kasimov-page-privacy #content .page-header,
  html body.kasimov-page-privacy #content .page-header h2,
  html body.kasimov-page-privacy #content h2,
  html body.kasimov-page-privacy #content .item-page,
  html body.kasimov-page-privacy #content .kasimov-privacy-page,
  html body.kasimov-page-privacy #content .kasimov-privacy-page p,
  html body.kasimov-page-privacy #content .breadcrumb {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    white-space: normal !important;
    box-sizing: border-box !important;
  }

  html body.kasimov-page-privacy #content .page-header h2,
  html body.kasimov-page-privacy #content h2 {
    font-size: clamp(34px, 3.2vw, 48px) !important;
    line-height: 1.12 !important;
  }

  html body.kasimov-page-privacy #footer,
  html body.kasimov-page-privacy footer#footer {
    clear: both !important;
    position: relative !important;
    z-index: 4 !important;
  }
}


/* === BATCH72b desktop no horizontal bleed === */
/* Kill horizontal page drift: decorative layers must stay inside viewport */
html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}
html body.kasimov-page-privacy::before,
html body.kasimov-page-contacts::before,
html body.kasimov-page-about::before,
html body.kasimov-page-services::before,
html body.kasimov-page-restaurant::before,
html body.kasimov-page-rooms::before,
html body.kasimov-page-home::before,
html body::before {
  right: 0 !important;
  left: auto !important;
  max-width: min(600px, 42vw) !important;
  width: min(600px, 42vw) !important;
  transform: none !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-privacy section#content {
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }

  /* Footer legal links: never force overflow on desktop either */
  html body .kasimov-footer-pets,
  html body .kasimov-footer-pets a {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    white-space: normal !important;
  }
}


/* === BATCH73 privacy no decorative bg === */
/* Privacy: no decorative background — text page only */
html body.kasimov-page-privacy,
html body.kasimov-page-privacy #wrapper,
html body.kasimov-page-privacy #main {
  background: #f7f4ef !important;
  background-image: none !important;
}
html body.kasimov-page-privacy::before,
html body.kasimov-page-privacy::after,
html body.kasimov-page-privacy #content::before,
html body.kasimov-page-privacy #content::after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

/* Footer must stay readable over any leftover wash (esp. mobile) */
html body.kasimov-page-privacy #footer,
html body.kasimov-page-privacy footer#footer,
html body.kasimov-page-privacy #kasimov-footer-contacts {
  position: relative !important;
  z-index: 20 !important;
  background: #f7f4ef !important;
  background-image: none !important;
  box-shadow: none !important;
}
html body.kasimov-page-privacy #footer a,
html body.kasimov-page-privacy #footer p,
html body.kasimov-page-privacy #footer .copytext,
html body.kasimov-page-privacy .kasimov-footer-pets,
html body.kasimov-page-privacy .kasimov-footer-pets a,
html body.kasimov-page-privacy #kasimov-footer-contacts a {
  color: #2c241c !important;
  text-shadow: none !important;
  opacity: 1 !important;
}
html body.kasimov-page-privacy .kasimov-footer-pets a {
  color: #6b2b24 !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-privacy,
  html body.kasimov-page-privacy #wrapper,
  html body.kasimov-page-privacy #main,
  html body.kasimov-page-privacy #footer,
  html body.kasimov-page-privacy footer#footer {
    background: #f7f4ef !important;
    background-image: none !important;
  }
  html body.kasimov-page-privacy #footer {
    padding-top: 18px !important;
    padding-bottom: 28px !important;
  }
}


/* === BATCH73b privacy content plain bg === */
html body.kasimov-page-privacy #content,
html body.kasimov-page-privacy #content.container,
html body.kasimov-page-privacy section#content,
html body.kasimov-page-privacy #content_shadow {
  background: #ffffff !important;
  background-image: none !important;
  box-shadow: 0 10px 28px rgba(40, 28, 18, 0.06) !important;
}
html body.kasimov-page-privacy #content::before,
html body.kasimov-page-privacy #content::after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container {
    background: #ffffff !important;
    background-image: none !important;
    box-shadow: none !important;
  }
}


/* === BATCH74 privacy center + about/contacts heroes === */
/* Privacy desktop: truly centered content, aligned with footer rhythm */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-privacy section#content {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 1100px !important;
    max-width: min(1100px, 92vw) !important;
    margin: 36px auto 48px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    left: 0 !important;
    right: 0 !important;
    position: relative !important;
    transform: none !important;
    inset: auto !important;
  }
  html body.kasimov-page-privacy #footer,
  html body.kasimov-page-privacy footer#footer {
    width: 1100px !important;
    max-width: min(1100px, 92vw) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* About: restore hero (was wrongly display:none) */
html body.kasimov-page-about #headerimage,
html body.kasimov-page-about #headerimage.kasimov-page-hero-host,
html body.kasimov-page-about.kasimov-has-page-hero #headerimage,
html body.kasimov-page-about #kasimov-page-hero {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-about #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-about.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-about #kasimov-page-hero {
    display: block !important;
    width: 100% !important;
    height: 42vh !important;
    min-height: 220px !important;
    max-height: 320px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-about #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-about #headerimage .kasimov-page-hero__slide {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 220px !important;
    max-height: 320px !important;
    background-size: cover !important;
    background-position: center !important;
  }
}

/* Contacts mobile: hero fills host — no cream gap under photo */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero {
    height: 42vh !important;
    min-height: 220px !important;
    max-height: 300px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero {
    position: relative !important;
  }
  html body.kasimov-page-contacts #header + #content,
  html body.kasimov-page-contacts #headerimage + #content,
  html body.kasimov-page-contacts #content {
    margin-top: 0 !important;
    padding-top: 8px !important;
  }
}


/* === BATCH74b contacts hero fill mobile === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    height: 42vh !important;
    min-height: 220px !important;
    max-height: 300px !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  html body.kasimov-page-contacts #headerimage {
    position: relative !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
}


/* === BATCH74c contacts mobile hero fill final === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage {
    position: relative !important;
    height: 42vh !important;
    min-height: 220px !important;
    max-height: 300px !important;
    background: transparent !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center !important;
  }
}


/* === BATCH74d privacy center + about/contacts hero fill === */
/* Privacy: kill Bootstrap row/span overflow that shifts card right */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-privacy section#content {
    width: 1100px !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  html body.kasimov-page-privacy #content .row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-privacy #content #middlecol,
  html body.kasimov-page-privacy #content .span12,
  html body.kasimov-page-privacy #content .span12.inside,
  html body.kasimov-page-privacy #content .inside,
  html body.kasimov-page-privacy #content .item-page,
  html body.kasimov-page-privacy #content .page-header,
  html body.kasimov-page-privacy #content h2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-privacy #footer,
  html body.kasimov-page-privacy footer#footer {
    width: 1100px !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* About + Contacts mobile: hero host and slides fill identically */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-about #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-about.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 42vh !important;
    min-height: 220px !important;
    max-height: 360px !important;
    overflow: hidden !important;
    background: transparent !important;
  }
  html body.kasimov-page-about #kasimov-page-hero,
  html body.kasimov-page-about.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  html body.kasimov-page-about #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-about #headerimage .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
  html body.kasimov-page-about #kasimov-page-hero .kasimov-page-hero__slide.is-active,
  html body.kasimov-page-about #headerimage .kasimov-page-hero__slide.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 2 !important;
  }
}


/* === BATCH75 contacts desktop hero restore === */
/* Desktop contacts: undo accidental mobile 42vh caps from global 520→42vh replace */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #2a1f18 !important;
    z-index: 1 !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide.is-active,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 2 !important;
  }
  /* Keep page content below the hero, not under it */
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts section#content {
    position: relative !important;
    z-index: 2 !important;
    clear: both !important;
  }
}


/* === BATCH75b contacts desktop hero specificity === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-header-after-hero #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-header-before-hero #kasimov-page-hero {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    height: 72vh !important;
    min-height: 620px !important;
    max-height: none !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    background-color: #2a1f18 !important;
    background-image: none !important;
    z-index: 1 !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
  }
  /* Absolute fill inside host — must not shrink host */
  html body.kasimov-page-contacts #headerimage > #kasimov-page-hero,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host > #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage > #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage > #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage > #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host .kasimov-page-hero__slide,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts.kasimov-header-after-hero #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts #content.container {
    position: relative !important;
    z-index: 3 !important;
    clear: both !important;
  }
}


/* === BATCH76 contacts desktop clean background === */
/* Contacts desktop: same clean cream as privacy — no vines, no map grid, no dark sides */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-contacts,
  html body.kasimov-page-contacts #wrapper,
  html body.kasimov-page-contacts #main {
    background: #f7f4ef !important;
    background-image: none !important;
    background-color: #f7f4ef !important;
  }
  html body.kasimov-page-contacts::before,
  html body.kasimov-page-contacts::after,
  html body.kasimov-page-contacts #content::before,
  html body.kasimov-page-contacts #content::after,
  html body.kasimov-page-contacts #content.container::before,
  html body.kasimov-page-contacts #content.container::after,
  html body.kasimov-page-contacts section#content::before,
  html body.kasimov-page-contacts section#content::after {
    content: none !important;
    display: none !important;
    background: none !important;
    background-image: none !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
  }
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-contacts section#content,
  html body.kasimov-page-contacts #content_shadow {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    box-shadow: 0 8px 28px rgba(40, 30, 20, 0.06) !important;
  }
  html body.kasimov-page-contacts #content .item-page,
  html body.kasimov-page-contacts .kasimov-contacts-page,
  html body.kasimov-page-contacts #content .item-page.kasimov-contacts-page,
  html body.kasimov-page-contacts #content .inside,
  html body.kasimov-page-contacts #middlecol {
    background: transparent !important;
    background-image: none !important;
  }
  html body.kasimov-page-contacts #footer,
  html body.kasimov-page-contacts footer#footer {
    background: transparent !important;
    background-image: none !important;
  }
}


/* === BATCH77 footer text unified font/color === */
/* Footer: one font + one color for all text/links on every page */
html body #footer,
html body footer#footer,
html body #footer p,
html body #footer span,
html body #footer a,
html body #footer li,
html body #footer .copytext,
html body #copyright,
html body #copyright p,
html body #copyright span,
html body #copyright a,
html body #copyright .copytext,
html body #footer #copyright,
html body #footer #copyright p.copytext,
html body .kasimov-footer-pets,
html body .kasimov-footer-pets a,
html body .kasimov-footer-sep,
html body #kasimov-footer-contacts,
html body #kasimov-footer-contacts a,
html body #kasimov-footer-contacts span,
html body #kasimov-footer-contacts .kasimov-phone,
html body #kasimov-footer-contacts .kasimov-address__link,
html body #kasimov-footer-contacts .kasimov-phones__sep,
html body #kasimov-footer-contacts .kasimov-contacts__group,
html body .kasimov-contacts--footer,
html body .kasimov-contacts--footer a,
html body .kasimov-contacts--footer span,
html body .kasimov-rating,
html body .kasimov-rating__num,
html body.kasimov-page-home #footer,
html body.kasimov-page-home #footer a,
html body.kasimov-page-home #copyright,
html body.kasimov-page-home #copyright a,
html body.kasimov-page-home .kasimov-footer-pets a,
html body.kasimov-page-home #kasimov-footer-contacts a,
html body.kasimov-page-privacy #footer,
html body.kasimov-page-privacy #footer a,
html body.kasimov-page-privacy #footer p,
html body.kasimov-page-privacy #footer .copytext,
html body.kasimov-page-privacy .kasimov-footer-pets,
html body.kasimov-page-privacy .kasimov-footer-pets a,
html body.kasimov-page-privacy #kasimov-footer-contacts a,
html body.kasimov-page-contacts #footer,
html body.kasimov-page-contacts #footer a,
html body.kasimov-page-contacts #copyright,
html body.kasimov-page-contacts #copyright a,
html body.kasimov-page-contacts .kasimov-footer-pets a,
html body.kasimov-page-about #footer,
html body.kasimov-page-about #footer a,
html body.kasimov-page-rooms #footer,
html body.kasimov-page-rooms #footer a,
html body.kasimov-page-restaurant #footer,
html body.kasimov-page-restaurant #footer a {
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  line-height: 1.55 !important;
  color: #2a2420 !important;
  opacity: 1 !important;
  text-shadow: none !important;
  -webkit-text-fill-color: #2a2420 !important;
}
html body #footer a,
html body #copyright a,
html body .kasimov-footer-pets a,
html body #kasimov-footer-contacts a,
html body.kasimov-page-privacy .kasimov-footer-pets a,
html body.kasimov-page-home .kasimov-footer-pets a {
  text-decoration: none !important;
  border-bottom: none !important;
  color: #2a2420 !important;
  -webkit-text-fill-color: #2a2420 !important;
}
html body #footer a:hover,
html body #copyright a:hover,
html body .kasimov-footer-pets a:hover,
html body #kasimov-footer-contacts a:hover {
  color: #2a2420 !important;
  -webkit-text-fill-color: #2a2420 !important;
  opacity: 0.78 !important;
  text-decoration: underline !important;
}
/* Keep social icon images untouched; only text nodes above */
html body #footer #social img,
html body #footer .kasimov-social img {
  opacity: 1 !important;
}


/* === BATCH78 promo cards v2 modern === */
/* Homepage promo trio — modern editorial cards */
html body.kasimov-page-home #promo .kasimov-promo-card--v2,
html body.kasimov-page-home .kasimov-promo-card--v2 {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fffdf9 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transition: transform .35s ease, box-shadow .35s ease !important;
}
html body.kasimov-page-home #promo .kasimov-promo-card--v2:hover,
html body.kasimov-page-home .kasimov-promo-card--v2:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 18px 40px rgba(40, 30, 20, 0.12) !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__media {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  aspect-ratio: 4 / 3 !important;
  background: #2a1f18 !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__media::after {
  content: "" !important;
  position: absolute !important;
  inset: auto 0 0 0 !important;
  height: 42% !important;
  background: linear-gradient(to top, rgba(20, 14, 10, 0.35), transparent) !important;
  pointer-events: none !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__media img,
html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  transition: transform .55s ease !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2:hover .kasimov-promo-card__media img {
  transform: scale(1.04) !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__body {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  padding: 22px 22px 26px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-top: 3px solid #8a1c1c !important;
  background: #fffdf9 !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__eyebrow {
  margin: 0 !important;
  padding: 0 !important;
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #8a1c1c !important;
  line-height: 1.3 !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 h3,
html body.kasimov-page-home .kasimov-promo-card--v2 h3 a,
html body.kasimov-page-home .kasimov-promo-card--v2 h3 a span {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: none !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  letter-spacing: 0.01em !important;
  color: #2a1f18 !important;
  text-decoration: none !important;
  -webkit-text-fill-color: #2a1f18 !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__text,
html body.kasimov-page-home .kasimov-promo-card--v2 p.kasimov-promo-card__text {
  margin: 4px 0 0 !important;
  padding: 0 !important;
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  letter-spacing: 0.01em !important;
  color: #4a4038 !important;
  text-align: left !important;
}
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-online-word {
  font-style: italic !important;
  font-weight: 500 !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__body {
    padding: 18px 16px 22px !important;
  }
  html body.kasimov-page-home .kasimov-promo-card--v2 h3,
  html body.kasimov-page-home .kasimov-promo-card--v2 h3 a {
    font-size: 24px !important;
  }
  html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__media {
    aspect-ratio: 16 / 10 !important;
  }
}


/* === BATCH79 extras trio + menu strip header === */
/* Home extras: same 3-card promo style as rooms/booking/restaurant */
html body.kasimov-page-home #kasimov-home-extras {
  margin: 28px auto 48px !important;
  max-width: 1170px !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}
html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module_content,
html body.kasimov-page-home #kasimov-home-extras .custom.kasimov-side-mod {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
  height: 100% !important;
}
/* Menu carousel section header → same editorial language */
html body.kasimov-page-home #icecarousel {
  background: transparent !important;
  padding: 8px 0 28px !important;
}
html body.kasimov-page-home #icecarousel .container {
  max-width: 1170px !important;
}
html body.kasimov-page-home #icecarousel .slider_heading {
  text-align: left !important;
  margin: 0 0 18px !important;
  padding: 0 0 14px !important;
  border-bottom: 3px solid #8a1c1c !important;
  background: transparent !important;
}
html body.kasimov-page-home #icecarousel .slider_heading h3,
html body.kasimov-page-home #icecarousel .slider_heading h3 span {
  margin: 0 !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 32px !important;
  font-weight: 600 !important;
  letter-spacing: 0.01em !important;
  color: #2a1f18 !important;
  -webkit-text-fill-color: #2a1f18 !important;
  text-transform: none !important;
  border: 0 !important;
}
html body.kasimov-page-home #icecarousel .slider_heading::before {
  content: "Кухня" !important;
  display: block !important;
  margin: 0 0 6px !important;
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #8a1c1c !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
  html body.kasimov-page-home #icecarousel .slider_heading h3,
  html body.kasimov-page-home #icecarousel .slider_heading h3 span {
    font-size: 26px !important;
  }
}


/* === BATCH79b extras card text visibility === */
/* Force readable dark type on home extras promo cards (override sidebar white text / hidden h3) */
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__body,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module_content,
html body.kasimov-page-home #kasimov-home-extras .custom {
  color: #2a1f18 !important;
  -webkit-text-fill-color: #2a1f18 !important;
  background: #fffdf9 !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 h3,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 h3 a,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 h3 a span,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module h3,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module h3 a {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 28px !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: #2a1f18 !important;
  -webkit-text-fill-color: #2a1f18 !important;
  text-decoration: none !important;
  border: 0 !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__eyebrow {
  display: block !important;
  color: #8a1c1c !important;
  -webkit-text-fill-color: #8a1c1c !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__text,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 p {
  display: block !important;
  color: #4a4038 !important;
  -webkit-text-fill-color: #4a4038 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media {
  background: #2a1f18 !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__body {
  border-top: 3px solid #8a1c1c !important;
  padding: 22px 22px 26px !important;
}


/* === BATCH79c hide extras module chrome titles === */
html body.kasimov-page-home #kasimov-home-extras .sidebar_module_heading,
html body.kasimov-page-home #kasimov-home-extras h3.sidebar_module_heading {
  display: none !important;
}


/* === BATCH80 no duplicate eyebrows / hide module titles === */
/* Never show Joomla module chrome titles on home promo/extras cards */
html body.kasimov-page-home #promo .moduletable > h3,
html body.kasimov-page-home #promo .moduletable_heading,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module_heading,
html body.kasimov-page-home #kasimov-home-extras h3.sidebar_module_heading,
html body.kasimov-page-home #kasimov-home-extras .sidebar_module > h3:first-child {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
}
/* Hide leftover eyebrows if any remain in markup */
html body.kasimov-page-home .kasimov-promo-card--v2 .kasimov-promo-card__eyebrow {
  display: none !important;
}
/* Carousel heading: no fake "Кухня" eyebrow duplication */
html body.kasimov-page-home #icecarousel .slider_heading::before {
  content: none !important;
  display: none !important;
}


/* === BATCH81 chef v2 + tour text trim === */
/* Chef block — same editorial card language as promo v2 */
html body.kasimov-page-home .kasimov-chef--v2 {
  display: grid !important;
  grid-template-columns: minmax(220px, 0.9fr) minmax(280px, 1.2fr) !important;
  gap: 0 !important;
  align-items: stretch !important;
  max-width: 1170px !important;
  margin: 28px auto 40px !important;
  background: #fffdf9 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__media {
  position: relative !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #2a1f18 !important;
  overflow: hidden !important;
  min-height: 320px !important;
}
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__body {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 36px 40px 40px !important;
  background: #fffdf9 !important;
  border-left: 3px solid #8a1c1c !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__title {
  margin: 0 !important;
  padding: 0 !important;
  font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
  font-size: 36px !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  letter-spacing: 0.01em !important;
  color: #2a1f18 !important;
  -webkit-text-fill-color: #2a1f18 !important;
}
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__role {
  margin: 0 !important;
  padding: 0 !important;
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #8a1c1c !important;
  -webkit-text-fill-color: #8a1c1c !important;
}
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__lead {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  max-width: 36em !important;
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
  color: #4a4038 !important;
  -webkit-text-fill-color: #4a4038 !important;
}
/* Hide old atelier chrome if leftover classes remain */
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__glow,
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__eyebrow,
html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__rule {
  display: none !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home .kasimov-chef--v2 {
    grid-template-columns: 1fr !important;
    margin: 18px auto 28px !important;
  }
  html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__media {
    min-height: 220px !important;
    aspect-ratio: 4 / 3 !important;
  }
  html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__body {
    border-left: 0 !important;
    border-top: 3px solid #8a1c1c !important;
    padding: 24px 20px 28px !important;
  }
  html body.kasimov-page-home .kasimov-chef--v2 .kasimov-chef__title {
    font-size: 28px !important;
  }
}


/* === BATCH82 hide chef/strip + premium scroll reveal === */
/* Remove chef + running menu strip from homepage */
html body.kasimov-page-home #testimonials,
html body.kasimov-page-home #icecarousel,
html body.kasimov-page-home .kasimov-chef,
html body.kasimov-page-home .kasimov-menu-strip {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* Premium scroll reveal — soft rise, like global brand sites */
@media (prefers-reduced-motion: no-preference) {
  html body .kasimov-reveal {
    opacity: 0 !important;
    transform: translate3d(0, 36px, 0) !important;
    filter: blur(0) !important;
    transition:
      opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.9s cubic-bezier(0.22, 1, 0.36, 1) !important;
    will-change: opacity, transform !important;
  }
  html body .kasimov-reveal.is-in {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal {
    transform: translate3d(0, 28px, 0) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.is-in {
    transform: translate3d(0, 0, 0) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  html body .kasimov-reveal,
  html body .kasimov-reveal.is-in {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}


/* === BATCH82b reveal specificity === */
@media (prefers-reduced-motion: no-preference) {
  html body.kasimov-page-home .kasimov-promo-card--v2.kasimov-reveal:not(.is-in),
  html body .kasimov-reveal:not(.is-in) {
    opacity: 0 !important;
    transform: translate3d(0, 40px, 0) !important;
    pointer-events: none !important;
  }
  html body.kasimov-page-home .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body .kasimov-reveal.is-in {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
    pointer-events: auto !important;
    transition:
      opacity 1s cubic-bezier(0.22, 1, 0.36, 1),
      transform 1s cubic-bezier(0.22, 1, 0.36, 1) !important;
  }
  html body.kasimov-page-home .kasimov-promo-card--v2.kasimov-reveal.is-in:hover {
    transform: translate3d(0, -4px, 0) !important;
    transition:
      opacity 1s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.35s ease,
      box-shadow 0.35s ease !important;
  }
}

/* === BATCH83 glue cards + mobile reveal fix === */
/* Continuous home card band — no tear between promo and extras */
html body.kasimov-page-home #promo.row,
html body.kasimov-page-home #promo {
  margin: 0 auto !important;
  padding: 0 0 0 !important;
  max-width: 1170px !important;
  background: transparent !important;
}
html body.kasimov-page-home #kasimov-home-extras,
html body.kasimov-page-home #kasimov-home-extras.container {
  margin: 0 auto 36px !important;
  padding: 0 !important;
  max-width: 1170px !important;
  background: transparent !important;
}
html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
  margin: 0 !important;
  padding: 0 !important;
}
/* Desktop: one tight 3-col rhythm across both bands */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #promo.row {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    margin-bottom: 16px !important;
  }
  html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}
/* Mobile: stacked cards with tiny gap, no empty band tear */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #promo.row,
  html body.kasimov-page-home #promo {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo .moduletable.span4,
  html body.kasimov-page-home #promo .span4,
  html body.kasimov-page-home #promo [class*="span"] {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #kasimov-home-extras,
  html body.kasimov-page-home #kasimov-home-extras.container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 12px 0 28px !important;
    padding: 0 12px !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    margin: 0 !important;
  }
  /* Kill leftover empty wrappers that create white/night tears */
  html body.kasimov-page-home #testimonials,
  html body.kasimov-page-home #icecarousel,
  html body.kasimov-page-home .kasimov-chef,
  html body.kasimov-page-home .kasimov-menu-strip {
    display: none !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
  }
  /* Mobile: never hide cards with opacity — only subtle rise */
  html body.kasimov-page-home .kasimov-promo-card--v2.kasimov-reveal,
  html body.kasimov-page-home .kasimov-promo-card--v2.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home .kasimov-reveal:not(.is-in),
  html body .kasimov-reveal:not(.is-in) {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    pointer-events: auto !important;
  }
  html body.kasimov-page-home .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body .kasimov-reveal.is-in {
    opacity: 1 !important;
    transform: none !important;
  }
}

/* === BATCH83b zero mobile card gaps === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #promo.row,
  html body.kasimov-page-home #promo {
    gap: 0 !important;
    row-gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo .moduletable.span4,
  html body.kasimov-page-home #promo .span4,
  html body.kasimov-page-home #promo [class*="span"],
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 {
    margin: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #kasimov-home-extras,
  html body.kasimov-page-home #kasimov-home-extras.container {
    margin: 0 0 24px !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
    gap: 0 !important;
    row-gap: 0 !important;
  }
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    margin: 0 !important;
    padding: 0 !important;
  }
  /* Continuous cream band behind stacked cards — no night/white tear */
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container,
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #kasimov-home-extras {
    background: #fffdf9 !important;
  }
  /* Hairline divider instead of empty gap */
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 + .kasimov-promo-card--v2,
  html body.kasimov-page-home #promo .moduletable + .moduletable,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    border-top: 1px solid rgba(42, 31, 24, 0.08) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__body,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__body {
    padding: 16px 16px 18px !important;
  }
}

/* === BATCH83c collapse card wrappers === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #promo.row,
  html body.kasimov-page-home #promo *,
  html body.kasimov-page-home #kasimov-home-extras,
  html body.kasimov-page-home #kasimov-home-extras * {
    --kasimov-card-gap: 0px;
  }
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo .moduletable_content,
  html body.kasimov-page-home #promo .moduletable_content.clearfix,
  html body.kasimov-page-home #promo .custom,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module_content,
  html body.kasimov-page-home #kasimov-home-extras .custom,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    float: none !important;
    clear: both !important;
    line-height: normal !important;
  }
  html body.kasimov-page-home #promo .moduletable_heading,
  html body.kasimov-page-home #promo .moduletable > h3,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module_heading,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module > h3 {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media {
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__body,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__body {
    margin: 0 !important;
    padding: 14px 16px 16px !important;
    border-top: 3px solid #8a1c1c !important;
  }
  /* Next card image sits flush under previous text */
  html body.kasimov-page-home #promo .moduletable + .moduletable .kasimov-promo-card__media,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 + .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module + .sidebar_module .kasimov-promo-card__media {
    border-top: 1px solid rgba(42, 31, 24, 0.1) !important;
  }
  html body.kasimov-page-home #promo.row:before,
  html body.kasimov-page-home #promo.row:after,
  html body.kasimov-page-home #promo:before,
  html body.kasimov-page-home #promo:after {
    display: none !important;
    content: none !important;
    height: 0 !important;
  }
}

/* === BATCH83d full-bleed mobile cards === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home,
  html body.kasimov-page-home #wrapper,
  html body.kasimov-page-home #main,
  html body.kasimov-page-home #maincontent,
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container,
  html body.kasimov-page-home .container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #promo.row,
  html body.kasimov-page-home #kasimov-home-extras,
  html body.kasimov-page-home #kasimov-home-extras.container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    left: 0 !important;
    right: 0 !important;
    transform: none !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo .moduletable.span4,
  html body.kasimov-page-home #promo .span4,
  html body.kasimov-page-home #promo [class*="span"],
  html body.kasimov-page-home #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media img,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media img {
    width: 100% !important;
    max-width: 100% !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__body,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__body {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding: 14px 16px 16px !important;
  }
  /* Kill bootstrap row gutters that shrink columns */
  html body.kasimov-page-home #promo.row,
  html body.kasimov-page-home .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* === BATCH83e promo media fill fix === */
/* Kill legacy 220px lock that left brown empty space under tiny image strip */
html body.kasimov-page-home #promo .kasimov-promo-card,
html body.kasimov-page-home #promo .kasimov-promo-card--v2,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
  min-height: 0 !important;
  height: auto !important;
}
html body.kasimov-page-home #promo .kasimov-promo-card__media,
html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media,
html body.kasimov-page-home #promo .moduletable .kasimov-promo-card__media {
  display: block !important;
  position: relative !important;
  flex: none !important;
  width: 100% !important;
  height: 220px !important;
  max-height: none !important;
  min-height: 0 !important;
  aspect-ratio: 16 / 10 !important;
  overflow: hidden !important;
  background: #2a1f18 !important;
  margin: 0 !important;
}
html body.kasimov-page-home #promo .kasimov-promo-card__media img,
html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media img,
html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media img,
html body.kasimov-page-home #promo .moduletable img,
html body.kasimov-page-home #content #promo img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 220px !important;
  max-width: none !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 .kasimov-promo-card__media {
    aspect-ratio: 16 / 10 !important;
  }
  /* Flush stack — no gap tear between cards */
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #kasimov-home-extras {
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
  }
}

/* === BATCH84 no extra home content panel === */
/* Top promo trio must sit like extras below — no cream wrapper / breadcrumb plate */
html body.kasimov-page-home #content,
html body.kasimov-page-home #content.container,
html body.kasimov-page-home section#content,
html body.kasimov-page-home #content .inside,
html body.kasimov-page-home #content_shadow,
html body.kasimov-page-home #content_shadow.container {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body.kasimov-page-home #content .breadcrumb,
html body.kasimov-page-home #content .breadcrumbs,
html body.kasimov-page-home #content .pathway,
html body.kasimov-page-home #content .moduletable_breadcrumbs,
html body.kasimov-page-home #system-message-container:empty,
html body.kasimov-page-home .breadcrumb,
html body.kasimov-page-home .breadcrumbs,
html body.kasimov-page-home .pathway {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
}
html body.kasimov-page-home #promo,
html body.kasimov-page-home #promo.row {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
  max-width: 1170px !important;
  margin: 0 auto 16px !important;
}
/* Match extras: cards themselves carry cream, not a parent plate */
html body.kasimov-page-home #promo .moduletable,
html body.kasimov-page-home #promo .moduletable_content,
html body.kasimov-page-home #promo .custom {
  background: transparent !important;
  box-shadow: none !important;
  border: 0 !important;
  padding: 0 !important;
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #promo.row {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 16px !important;
    align-items: stretch !important;
  }
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo [class*="span"] {
    float: none !important;
    width: auto !important;
    flex: 1 1 0 !important;
    margin: 0 !important;
    min-width: 0 !important;
    background: transparent !important;
  }
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container,
  html body.kasimov-page-home section#content {
    background: transparent !important;
    padding: 0 !important;
  }
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #promo.row {
    padding: 0 !important;
    margin: 0 0 12px !important;
  }
}

/* === BATCH85 hero welcome caption position === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow .item:not(.active) .carousel-caption {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow .carousel,
  html body.kasimov-page-home #iceslideshow .carousel-inner {
    position: relative !important;
  }
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .item.active {
    position: absolute !important;
    inset: 0 !important;
    height: 100% !important;
    width: 100% !important;
  }
  html body.kasimov-page-home #iceslideshow .item.active .carousel-caption,
  html body.kasimov-page-home #iceslideshow.kasimov-hero-has-booking .item.active .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .item.active .carousel-caption {
    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    /* booking bar ~72px + 10px gap */
    bottom: 82px !important;
    transform: translateX(-50%) !important;
    width: auto !important;
    max-width: min(900px, 88vw) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 55 !important;
    background: transparent !important;
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  html body.kasimov-page-home #iceslideshow .item.active .carousel-caption .mod-description,
  html body.kasimov-page-home #iceslideshow .item.active .carousel-caption .mod-description p {
    display: inline-block !important;
    margin: 0 !important;
    padding: 10px 26px !important;
    line-height: 1.25 !important;
  }
}

/* === BATCH86 footer readable + contacts mobile menu parity === */

/* Footer: solid light panel + dark text on EVERY page (no transparent-over-bronze) */
html body #footer,
html body footer#footer,
html body #footer.container,
html body #copyright,
html body #copyright.container,
html body #kasimov-footer-contacts,
html body.kasimov-page-home #footer,
html body.kasimov-page-home footer#footer,
html body.kasimov-page-home #copyright,
html body.kasimov-page-contacts #footer,
html body.kasimov-page-contacts footer#footer,
html body.kasimov-page-contacts #copyright,
html body.kasimov-page-contacts #kasimov-footer-contacts,
html body.kasimov-page-about #footer,
html body.kasimov-page-rooms #footer,
html body.kasimov-page-restaurant #footer,
html body.kasimov-page-services #footer,
html body.kasimov-page-privacy #footer,
html body.kasimov-page-privacy footer#footer {
  background: #f7f4ef !important;
  background-color: #f7f4ef !important;
  background-image: none !important;
  opacity: 1 !important;
}

html body #footer,
html body footer#footer,
html body #footer p,
html body #footer span,
html body #footer a,
html body #footer li,
html body #footer .copytext,
html body #copyright,
html body #copyright p,
html body #copyright span,
html body #copyright a,
html body #copyright .copytext,
html body .kasimov-footer-pets,
html body .kasimov-footer-pets a,
html body .kasimov-footer-sep,
html body #kasimov-footer-contacts,
html body #kasimov-footer-contacts a,
html body #kasimov-footer-contacts span,
html body #kasimov-footer-contacts .kasimov-phone,
html body #kasimov-footer-contacts .kasimov-address__link,
html body .kasimov-contacts--footer,
html body .kasimov-contacts--footer a,
html body .kasimov-rating,
html body .kasimov-rating__num,
html body.kasimov-page-contacts #footer,
html body.kasimov-page-contacts #footer a,
html body.kasimov-page-contacts #copyright,
html body.kasimov-page-contacts #copyright a,
html body.kasimov-page-home #footer,
html body.kasimov-page-home #footer a,
html body.kasimov-page-privacy #footer,
html body.kasimov-page-privacy #footer a {
  color: #2a2420 !important;
  -webkit-text-fill-color: #2a2420 !important;
  text-shadow: none !important;
  opacity: 1 !important;
}

/* Contacts mobile open menu = same as other pages (dark PT Sans, not white Outfit) */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #header #mainmenu,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header #mainmenu,
  html body.kasimov-page-contacts #header .nav-collapse,
  html body.kasimov-page-contacts #header .nav-collapse.in,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header .nav-collapse.in {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
  }

  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero:not(.kasimov-page-home) #header #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero:not(.kasimov-page-home) #mainmenu ul#icemegamenu > li > a,
  html body.kasimov-page-contacts #header .nav-collapse.in ul#icemegamenu > li > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header .nav-collapse.in ul#icemegamenu > li > a,
  html body.kasimov-page-contacts #header .nav-collapse.in a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header .nav-collapse.in a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li.active > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header ul#icemegamenu > li.active > a,
  html body.kasimov-page-contacts #header ul#icemegamenu > li.current > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header ul#icemegamenu > li.current > a,
  html body.kasimov-page-contacts #mainmenu .mobile-nav-toggle,
  html body.kasimov-page-contacts.kasimov-has-page-hero #mainmenu .mobile-nav-toggle {
    color: #333333 !important;
    -webkit-text-fill-color: #333333 !important;
    text-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    font-family: Manrope, Outfit, "Helvetica Neue", Arial, sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.25 !important;
    text-transform: none !important;
  }

  /* Active: match about/rooms open menu (same dark tone; no gold wash) */
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li.active > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header #mainmenu ul#icemegamenu > li.active > a,
  html body.kasimov-page-contacts #header #mainmenu ul#icemegamenu > li.current > a,
  html body.kasimov-page-contacts.kasimov-has-page-hero #header #mainmenu ul#icemegamenu > li.current > a {
    color: #333333 !important;
    -webkit-text-fill-color: #333333 !important;
    background: transparent !important;
    text-shadow: none !important;
    font-weight: 500 !important;
  }
}

/* === BATCH87 mobile extras card gap === */
/* Match top promo trio: visible cream-body gap between stacked cards on mobile */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #promo .moduletable.span4,
  html body.kasimov-page-home #promo .span4,
  html body.kasimov-page-home #promo [class*="span"] {
    margin: 0 0 18px !important;
    margin-bottom: 18px !important;
  }
  html body.kasimov-page-home #promo .moduletable:last-child,
  html body.kasimov-page-home #promo .moduletable.span4:last-child {
    margin-bottom: 18px !important;
  }

  html body.kasimov-page-home #kasimov-home-extras,
  html body.kasimov-page-home #kasimov-home-extras.container {
    gap: 0 !important;
  }
  html body.kasimov-page-home #kasimov-home-extras .kasimov-home-extras__grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    row-gap: 18px !important;
  }
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module + .sidebar_module,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    margin: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* === BATCH88 hero amenities + mosaic last-row fill === */

/* Hero amenity icons — readable over photo */
html body .kasimov-hero-amenities {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 45 !important;
  pointer-events: none !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-home .kasimov-hero-amenities,
html body.kasimov-hero-has-booking .kasimov-hero-amenities {
  bottom: 118px !important;
}
html body:not(.kasimov-hero-has-booking) .kasimov-hero-amenities,
html body.kasimov-page-about .kasimov-hero-amenities,
html body.kasimov-page-restaurant .kasimov-hero-amenities,
html body.kasimov-page-services .kasimov-hero-amenities,
html body.kasimov-page-contacts .kasimov-hero-amenities {
  bottom: 36px !important;
}
/* Keep captions above amenity strip */
@media only screen and (min-width: 980px) {
  html body.kasimov-hero-has-amenities.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-hero-has-amenities.kasimov-hero-has-booking .kasimov-page-hero__caption,
  html body.kasimov-hero-has-amenities #kasimov-page-hero .kasimov-page-hero__caption {
    bottom: 220px !important;
  }
}
html body .kasimov-hero-amenities__list {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 8px 10px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  list-style: none !important;
  max-width: 1100px !important;
}
html body .kasimov-hero-amenities__item {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  min-width: 72px !important;
  padding: 10px 12px 8px !important;
  margin: 0 !important;
  background: rgba(20, 16, 12, 0.48) !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 10px !important;
  color: #fff !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.45) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
  box-sizing: border-box !important;
}
html body .kasimov-hero-amenities__ico {
  display: flex !important;
  width: 26px !important;
  height: 26px !important;
  align-items: center !important;
  justify-content: center !important;
  color: #f3e6d2 !important;
}
html body .kasimov-hero-amenities__ico svg {
  width: 24px !important;
  height: 24px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
html body .kasimov-hero-amenities__lbl {
  font-family: Manrope, "Helvetica Neue", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.15 !important;
  text-align: center !important;
  white-space: nowrap !important;
  color: #fff !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-hero-amenities,
  html body.kasimov-page-home .kasimov-hero-amenities,
  html body.kasimov-hero-has-booking .kasimov-hero-amenities,
  html body:not(.kasimov-hero-has-booking) .kasimov-hero-amenities {
    bottom: 18px !important;
    padding: 0 10px !important;
  }
  html body .kasimov-hero-amenities__list {
    gap: 6px !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    padding: 0 2px 4px !important;
  }
  html body .kasimov-hero-amenities__list::-webkit-scrollbar { display: none !important; }
  html body .kasimov-hero-amenities__item {
    min-width: 64px !important;
    padding: 8px 10px 6px !important;
    flex: 0 0 auto !important;
  }
  html body .kasimov-hero-amenities__lbl {
    font-size: 10px !important;
  }
  /* Lift welcome caption above amenity strip on home */
  html body.kasimov-page-home #iceslideshow .carousel-caption {
    bottom: 108px !important;
  }
}

/* Mosaic / lightbox galleries: fill incomplete last row (no white hole) */
html body #content .kasimov-gallery-mosaic,
html body #content .kasimov-about-gallery,
html body #content .kasimov-lb-gallery,
html body.kasimov-page-about .kasimov-about-gallery,
html body.kasimov-page-about .kasimov-gallery-mosaic,
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
html body.kasimov-page-services #content .kasimov-gallery-mosaic,
html body.kasimov-page-services #content p.kasimov-lb-gallery,
html body.kasimov-page-rooms #content .kasimov-gallery-mosaic {
  align-content: start !important;
  margin-bottom: 8px !important;
  padding-bottom: 0 !important;
}
/* Desktop 3-col last-row fill */
@media only screen and (min-width: 980px) {
  html body #content .kasimov-gallery-mosaic > :last-child:nth-child(3n+1),
  html body #content .kasimov-about-gallery > :last-child:nth-child(3n+1),
  html body #content .kasimov-lb-gallery > :last-child:nth-child(3n+1),
  html body.kasimov-page-about .kasimov-about-gallery > :last-child:nth-child(3n+1),
  html body.kasimov-page-services #content p.kasimov-lb-gallery > :last-child:nth-child(3n+1) {
    grid-column: 1 / -1 !important;
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
  html body #content .kasimov-gallery-mosaic > :last-child:nth-child(3n+2),
  html body #content .kasimov-about-gallery > :last-child:nth-child(3n+2),
  html body #content .kasimov-lb-gallery > :last-child:nth-child(3n+2),
  html body.kasimov-page-about .kasimov-about-gallery > :last-child:nth-child(3n+2),
  html body.kasimov-page-services #content p.kasimov-lb-gallery > :last-child:nth-child(3n+2) {
    grid-column: span 2 !important;
  }
  /* Restaurant uses aspect-ratio tiles — don't force fixed height on fill */
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic > :last-child:nth-child(3n+1),
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic > :last-child:nth-child(3n+2) {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}
/* Mobile 2-col: lone last photo full width */
@media only screen and (max-width: 979px) {
  html body #content .kasimov-gallery-mosaic > :last-child:nth-child(odd),
  html body #content .kasimov-about-gallery > :last-child:nth-child(odd),
  html body #content .kasimov-lb-gallery > :last-child:nth-child(odd),
  html body.kasimov-page-about .kasimov-about-gallery > :last-child:nth-child(odd),
  html body.kasimov-page-services #content p.kasimov-lb-gallery > :last-child:nth-child(odd) {
    grid-column: 1 / -1 !important;
  }
  html body.kasimov-page-services #content p.kasimov-lb-gallery {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* Kill leftover bottom whitespace under gallery hosts */
html body.kasimov-page-about #content .leading-0,
html body.kasimov-page-restaurant #content .leading-0,
html body.kasimov-page-services #content .leading-0,
html body.kasimov-page-about #content .items-leading,
html body.kasimov-page-restaurant #content .items-leading,
html body.kasimov-page-services #content .items-leading,
html body.kasimov-page-rooms #content .leading-0:last-child,
html body.kasimov-page-about #content .item-page,
html body.kasimov-page-restaurant #content .item-page,
html body.kasimov-page-services #content .item-page {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
html body.kasimov-page-about #content,
html body.kasimov-page-restaurant #content,
html body.kasimov-page-services #content,
html body.kasimov-page-rooms #content,
html body.kasimov-page-about #content.container,
html body.kasimov-page-restaurant #content.container,
html body.kasimov-page-services #content.container,
html body.kasimov-page-rooms #content.container {
  padding-bottom: 8px !important;
  margin-bottom: 0 !important;
}

/* === BATCH89 layout polish + lightbox zoom + amenities fix === */

/* Home: standard 18px gap between hero and Номера (match card rhythm) */
html body.kasimov-page-home #content,
html body.kasimov-page-home #content.container,
html body.kasimov-page-home section#content {
  margin-top: 18px !important;
  padding-top: 0 !important;
}
html body.kasimov-page-home #promo,
html body.kasimov-page-home #promo.row {
  margin-top: 0 !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container,
  html body.kasimov-page-home section#content {
    margin-top: 18px !important;
    padding-top: 0 !important;
  }
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #promo.row {
    margin: 0 0 12px !important;
  }
}

/* Desktop: keep stage inside viewport; no sideways bleed */
@media only screen and (min-width: 980px) {
  html, body {
    overflow-x: hidden !important;
  }
  html body #wrapper,
  html body #container,
  html body #main,
  html body #content,
  html body #content.container,
  html body #footer,
  html body footer#footer,
  html body #copyright {
    max-width: 1170px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
  html body #content,
  html body #content.container,
  html body #footer,
  html body footer#footer,
  html body #copyright,
  html body #copyright.container {
    width: 100% !important;
  }
  /* Footer plate = same width/look as main content plate */
  html body #footer,
  html body footer#footer,
  html body #copyright,
  html body #copyright.container,
  html body #kasimov-footer-contacts {
    background: #f7f4ef !important;
    background-color: #f7f4ef !important;
    background-image: none !important;
  }
  html body #footer,
  html body footer#footer {
    border-radius: 0 0 10px 10px !important;
    box-shadow: 0 8px 28px rgba(40, 30, 20, 0.06) !important;
    padding-left: 28px !important;
    padding-right: 28px !important;
  }
  html body #content,
  html body #content.container {
    border-radius: 10px 10px 0 0 !important;
  }
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container {
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }
  html body.kasimov-page-home #footer,
  html body.kasimov-page-home footer#footer {
    border-radius: 10px !important;
  }
  /* Photos/text never spill past stage */
  html body #content img,
  html body #content .kasimov-gallery-mosaic,
  html body #content .kasimov-about-gallery,
  html body #content .kasimov-lb-gallery,
  html body #content .item-image,
  html body #content .blog,
  html body #content .item-page {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  html body #content .kasimov-gallery-mosaic,
  html body #content .kasimov-about-gallery,
  html body #content .kasimov-lb-gallery {
    overflow: hidden !important;
  }
}

/* Amenities: Wi‑Fi dot visible; mobile stays inside viewport */
html body .kasimov-hero-amenities {
  max-width: 100vw !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}
html body .kasimov-hero-amenities__list {
  pointer-events: auto !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body .kasimov-hero-amenities__ico svg {
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}
html body .kasimov-hero-amenities__ico svg circle,
html body .kasimov-hero-amenities__ico svg [fill]:not([fill="none"]) {
  fill: currentColor !important;
  stroke: none !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-hero-amenities,
  html body.kasimov-page-home .kasimov-hero-amenities,
  html body.kasimov-hero-has-booking .kasimov-hero-amenities {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    padding: 0 8px !important;
    bottom: 14px !important;
    overflow: hidden !important;
  }
  html body .kasimov-hero-amenities__list {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
    flex-wrap: unset !important;
    justify-content: stretch !important;
  }
  html body .kasimov-hero-amenities__item {
    min-width: 0 !important;
    width: 100% !important;
    padding: 7px 4px 6px !important;
    flex: unset !important;
  }
  html body .kasimov-hero-amenities__lbl {
    font-size: 9px !important;
    white-space: normal !important;
    line-height: 1.1 !important;
  }
  html body .kasimov-hero-amenities__ico {
    width: 22px !important;
    height: 22px !important;
  }
  html body .kasimov-hero-amenities__ico svg {
    width: 20px !important;
    height: 20px !important;
  }
  /* 7 items: last row centered-ish — span last across leftover */
  html body .kasimov-hero-amenities__item:nth-child(5) {
    grid-column: 1 / 2;
  }
  html body.kasimov-page-home #iceslideshow .carousel-caption {
    bottom: 132px !important;
  }
}

/* Lightbox: allow transform zoom; touch friendly */
html body .kasimov-lightbox__figure {
  touch-action: none !important;
  overflow: hidden !important;
  max-width: min(96vw, 1400px) !important;
  max-height: 92vh !important;
}
html body .kasimov-lightbox__img {
  touch-action: none !important;
  transform-origin: center center !important;
  will-change: transform !important;
  max-width: 96vw !important;
  max-height: 88vh !important;
  user-select: none !important;
  -webkit-user-select: none !important;
}

/* === BATCH89b footer width lock to content stage === */
@media only screen and (min-width: 980px) {
  html body #footer,
  html body #footer.container,
  html body footer#footer,
  html body footer#footer.container,
  html body #copyright,
  html body #copyright.container {
    width: 1170px !important;
    max-width: 1170px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* === BATCH89c unify content+footer stage width === */
@media only screen and (min-width: 980px) {
  html body #content,
  html body #content.container,
  html body section#content,
  html body.kasimov-page-about #content,
  html body.kasimov-page-about #content.container,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-restaurant #content.container,
  html body.kasimov-page-services #content,
  html body.kasimov-page-services #content.container,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container,
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-has-page-hero #content,
  html body.kasimov-has-page-hero #content.container,
  html body #footer,
  html body #footer.container,
  html body footer#footer,
  html body footer#footer.container,
  html body.kasimov-page-about #footer,
  html body.kasimov-page-about #footer.container,
  html body.kasimov-page-restaurant #footer,
  html body.kasimov-page-rooms #footer,
  html body.kasimov-page-services #footer,
  html body.kasimov-page-contacts #footer,
  html body.kasimov-page-privacy #footer,
  html body #copyright,
  html body #copyright.container {
    width: 1170px !important;
    max-width: 1170px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }
}

/* === BATCH90 promo swipe + directional reveal + breakfast === */

/* Promo media carousel (top trio) */
html body.kasimov-page-home .kasimov-promo-swipe {
  display: block !important;
  position: relative !important;
  overflow: hidden !important;
  touch-action: pan-y !important;
  cursor: grab !important;
  text-decoration: none !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__track {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1) !important;
  will-change: transform !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__track.is-dragging {
  transition: none !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__slide {
  flex: 0 0 100% !important;
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
  overflow: hidden !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__slide img,
html body.kasimov-page-home .kasimov-promo-swipe img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  margin: 0 !important;
  pointer-events: none !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__dots {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 10px !important;
  display: flex !important;
  justify-content: center !important;
  gap: 6px !important;
  z-index: 3 !important;
  pointer-events: none !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__dot {
  width: 7px !important;
  height: 7px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.45) !important;
  box-shadow: 0 0 0 1px rgba(0,0,0,0.2) !important;
}
html body.kasimov-page-home .kasimov-promo-swipe__dot.is-on {
  background: #fff !important;
}

/* Directional home reveals — beat BATCH63/83 force-visible */
@media (prefers-reduced-motion: no-preference) {
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home #promo .moduletable.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module.kasimov-reveal:not(.is-in) {
    opacity: 0 !important;
    filter: blur(2px) !important;
    pointer-events: none !important;
    transition:
      opacity 0.95s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.95s cubic-bezier(0.22, 1, 0.36, 1),
      filter 0.95s cubic-bezier(0.22, 1, 0.36, 1) !important;
  }
  html body.kasimov-page-home .kasimov-reveal--from-left:not(.is-in) {
    transform: translate3d(-56px, 12px, 0) !important;
  }
  html body.kasimov-page-home .kasimov-reveal--from-right:not(.is-in) {
    transform: translate3d(56px, 12px, 0) !important;
  }
  html body.kasimov-page-home .kasimov-reveal--from-bottom:not(.is-in) {
    transform: translate3d(0, 56px, 0) !important;
  }
  html body.kasimov-page-home .kasimov-reveal--from-top:not(.is-in) {
    transform: translate3d(0, -40px, 0) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body.kasimov-page-home #promo .moduletable.kasimov-reveal.is-in,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module.kasimov-reveal.is-in,
  html body.kasimov-page-home .kasimov-reveal--from-left.is-in,
  html body.kasimov-page-home .kasimov-reveal--from-right.is-in,
  html body.kasimov-page-home .kasimov-reveal--from-bottom.is-in,
  html body.kasimov-page-home .kasimov-reveal--from-top.is-in {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
    filter: none !important;
    pointer-events: auto !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  html body.kasimov-page-home .kasimov-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

/* 8 amenities = neat 4×2 on mobile */
@media only screen and (max-width: 979px) {
  html body .kasimov-hero-amenities__list {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
  html body .kasimov-hero-amenities__item:nth-child(5) {
    grid-column: auto !important;
  }
  html body.kasimov-page-home #iceslideshow .carousel-caption {
    bottom: 148px !important;
  }
}


/* === BATCH90b reveal fix === */
@media (prefers-reduced-motion: no-preference) {
  /* Kill older always-on translate that blocked directional + is-in settle */
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal,
  html body.kasimov-page-home #promo .moduletable.kasimov-reveal,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module.kasimov-reveal {
    transition:
      opacity 0.9s cubic-bezier(0.22, 1, 0.36, 1),
      transform 0.9s cubic-bezier(0.22, 1, 0.36, 1),
      filter 0.9s cubic-bezier(0.22, 1, 0.36, 1) !important;
  }

  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home #promo .moduletable.kasimov-reveal:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module.kasimov-reveal:not(.is-in) {
    opacity: 0 !important;
    filter: blur(2px) !important;
    pointer-events: none !important;
  }

  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-left:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-left:not(.is-in) {
    transform: translate3d(-64px, 10px, 0) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-right:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-right:not(.is-in) {
    transform: translate3d(64px, 10px, 0) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-bottom:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-bottom:not(.is-in) {
    transform: translate3d(0, 64px, 0) !important;
  }
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-top:not(.is-in),
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-top:not(.is-in) {
    transform: translate3d(0, -48px, 0) !important;
  }

  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.is-in,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-left.is-in,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-right.is-in,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-bottom.is-in,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-top.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-left.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-right.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-bottom.is-in,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2.kasimov-reveal.kasimov-reveal--from-top.is-in {
    opacity: 1 !important;
    transform: translate3d(0, 0, 0) !important;
    filter: none !important;
    pointer-events: auto !important;
  }
}

/* Swipe: allow horizontal finger pan */
html body.kasimov-page-home .kasimov-promo-swipe {
  touch-action: pan-y pinch-zoom !important;
  -webkit-user-select: none !important;
  user-select: none !important;
}

/* === BATCH90e near-viewport reveal === */
html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal:not(.is-in) .kasimov-promo-swipe,
html body.kasimov-page-home #promo .kasimov-promo-card--v2.kasimov-reveal:not(.is-in) .kasimov-promo-card__media {
  pointer-events: auto !important;
}

/* === BATCH92 sticky dates bar === */
/* === BATCH93 compact sticky dates === */
html body .kasimov-sticky-dates {
  display: none !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100vw !important;
  overflow: hidden !important;
  z-index: 10060 !important;
  background: rgba(255, 252, 248, 0.98) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
}
html body .kasimov-sticky-dates.is-on {
  display: block !important;
}
html body .kasimov-sticky-dates *,
html body .kasimov-sticky-dates *::before,
html body .kasimov-sticky-dates *::after {
  box-sizing: border-box !important;
}
html body .kasimov-sticky-dates__form {
  display: grid !important;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.2fr) 64px 78px !important;
  grid-template-areas: none !important;
  gap: 6px !important;
  align-items: end !important;
  width: 100% !important;
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
html body .kasimov-sticky-dates__field,
html body .kasimov-sticky-dates__action {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
  align-items: stretch !important;
  gap: 2px !important;
  margin: 0 !important;
  min-width: 0 !important;
  max-width: none !important;
  grid-area: auto !important;
}
html body .kasimov-sticky-dates__field:nth-child(1),
html body .kasimov-sticky-dates__field:nth-child(2),
html body .kasimov-sticky-dates__field--guests,
html body .kasimov-sticky-dates__action,
html body .kasimov-sticky-dates__btn {
  grid-area: auto !important;
}
html body .kasimov-sticky-dates__field > span,
html body .kasimov-sticky-dates__lbl-spacer {
  display: block !important;
  height: 11px !important;
  line-height: 11px !important;
  font-size: 8px !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  color: #6a5e52 !important;
  font-weight: 600 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}
html body .kasimov-sticky-dates__lbl-spacer {
  visibility: hidden !important;
}
html body .kasimov-sticky-dates__field input,
html body .kasimov-sticky-dates__field select,
html body .kasimov-sticky-dates__btn {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 34px !important;
  border-radius: 7px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  margin: 0 !important;
}
html body .kasimov-sticky-dates__field input,
html body .kasimov-sticky-dates__field select {
  border: 1px solid rgba(40, 30, 20, 0.16) !important;
  background: #fff !important;
  color: #2a2420 !important;
  padding: 0 6px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
html body .kasimov-sticky-dates__btn {
  border: 0 !important;
  background: #6b2b24 !important;
  color: #fff !important;
  font-weight: 600 !important;
  padding: 0 8px !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

@media only screen and (min-width: 980px) {
  html body .kasimov-sticky-dates.is-desktop.is-on {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: 0 !important;
    bottom: auto !important;
    padding: 8px 16px !important;
    box-shadow: 0 6px 20px rgba(30, 22, 14, 0.12) !important;
    border-bottom: 1px solid rgba(40, 30, 20, 0.08) !important;
  }
  html body .kasimov-sticky-dates.is-desktop .kasimov-sticky-dates__form {
    grid-template-columns: minmax(0, 1.2fr) minmax(0, 1.2fr) 90px 120px !important;
  }
  html body .kasimov-sticky-dates.is-desktop .kasimov-sticky-dates__field input,
  html body .kasimov-sticky-dates.is-desktop .kasimov-sticky-dates__field select,
  html body .kasimov-sticky-dates.is-desktop .kasimov-sticky-dates__btn {
    height: 36px !important;
    font-size: 13px !important;
  }
}

@media only screen and (max-width: 979px) {
  html body .kasimov-hero-booking {
    display: none !important;
  }
  html body .kasimov-sticky-dates.is-mobile.is-on {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    top: auto !important;
    padding: 7px 8px calc(7px + env(safe-area-inset-bottom, 0px)) !important;
    box-shadow: 0 -6px 18px rgba(30, 22, 14, 0.14) !important;
    border-top: 1px solid rgba(40, 30, 20, 0.08) !important;
  }
  html body .kasimov-sticky-dates.is-mobile .kasimov-sticky-dates__form {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 54px 70px !important;
    gap: 5px !important;
  }
  html body.kasimov-has-sticky-dates #footer,
  html body.kasimov-has-sticky-dates #content {
    padding-bottom: 58px !important;
  }
}

/* === BATCH95 about mobile hero height === */
/* Was capped at 42vh/360px — restore tall photo hero like home/inner pages */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-about #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-about.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-about.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-about.kasimov-header-after-hero #headerimage {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    /* BATCH95 height superseded by BATCH96 full-viewport */
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    overflow: hidden !important;
    background: transparent !important;
  }
  html body.kasimov-page-about #kasimov-page-hero,
  html body.kasimov-page-about.kasimov-has-page-hero #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  html body.kasimov-page-about #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-about #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
  html body.kasimov-page-about #kasimov-page-hero .kasimov-page-hero__slide.is-active,
  html body.kasimov-page-about #headerimage .kasimov-page-hero__slide.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 2 !important;
  }
}

/* === BATCH96 about full hero + caption clear amenities === */
@media only screen and (max-width: 979px) {
  /* About: true full-viewport hero (override earlier 42vh / 70vh caps) */
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-about #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-about.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-about.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-about.kasimov-header-after-hero #headerimage {
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
  }
  html body.kasimov-page-about #kasimov-page-hero,
  html body.kasimov-page-about.kasimov-has-page-hero #kasimov-page-hero {
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
  }

  /* Amenities strip: sit above sticky dates when present; else near bottom */
  html body .kasimov-hero-amenities,
  html body.kasimov-page-home .kasimov-hero-amenities,
  html body.kasimov-hero-has-booking .kasimov-hero-amenities,
  html body:not(.kasimov-hero-has-booking) .kasimov-hero-amenities,
  html body.kasimov-page-about .kasimov-hero-amenities,
  html body.kasimov-page-restaurant .kasimov-hero-amenities,
  html body.kasimov-page-services .kasimov-hero-amenities,
  html body.kasimov-page-contacts .kasimov-hero-amenities {
    bottom: 16px !important;
    z-index: 46 !important;
  }
  html body.kasimov-has-sticky-dates .kasimov-hero-amenities,
  html body.kasimov-page-home.kasimov-has-sticky-dates .kasimov-hero-amenities {
    /* sticky bar ~58–62px + gap */
    bottom: 72px !important;
  }

  /*
   * Captions ABOVE amenity grid (~125px) + amenities bottom offset + gap.
   * No sticky: 16 + 125 + 24 ≈ 165 → use 180
   * With sticky: 72 + 125 + 24 ≈ 221 → use 230
   */
  html body #iceslideshow .carousel-caption,
  html body #iceslideshow .item .carousel-caption,
  html body #iceslideshow .item.active .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-page-home #iceslideshow .item .carousel-caption,
  html body.kasimov-page-home #iceslideshow .item.active .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body.kasimov-hero-has-amenities #iceslideshow .carousel-caption,
  html body #kasimov-page-hero .kasimov-page-hero__caption,
  html body #headerimage .kasimov-page-hero__caption,
  html body.kasimov-has-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-about .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant .kasimov-page-hero__caption,
  html body.kasimov-page-services .kasimov-page-hero__caption,
  html body.kasimov-page-contacts .kasimov-page-hero__caption,
  html body.kasimov-hero-has-amenities #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-hero-has-amenities #headerimage .kasimov-page-hero__caption {
    bottom: 180px !important;
    top: auto !important;
    z-index: 48 !important;
    transform: translateX(-50%) !important;
    left: 50% !important;
    right: auto !important;
    max-width: min(92vw, 520px) !important;
    pointer-events: none !important;
  }
  html body.kasimov-has-sticky-dates #iceslideshow .carousel-caption,
  html body.kasimov-has-sticky-dates #iceslideshow .item.active .carousel-caption,
  html body.kasimov-page-home.kasimov-has-sticky-dates #iceslideshow .carousel-caption,
  html body.kasimov-page-home.kasimov-has-sticky-dates #iceslideshow .item.active .carousel-caption,
  html body.kasimov-has-sticky-dates #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-has-sticky-dates #headerimage .kasimov-page-hero__caption,
  html body.kasimov-has-sticky-dates .kasimov-page-hero__caption {
    bottom: 230px !important;
  }
}

/* === BATCH97 full heroes home/restaurant/services === */
/* Same full-screen mobile hero as About */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow.iceslideshow-fill,
  html body #iceslideshow,
  html body #iceslideshow.container {
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
  }
  html body.kasimov-page-home #iceslideshow .carousel,
  html body.kasimov-page-home #iceslideshow .carousel-inner,
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .carousel-inner > .item,
  html body.kasimov-page-home #iceslideshow .iceslideshow-fill {
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
  }

  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-restaurant #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-restaurant.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-restaurant.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-restaurant.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-page-services #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-services.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-services.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-services.kasimov-header-after-hero #headerimage {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    overflow: hidden !important;
    background: transparent !important;
  }
  html body.kasimov-page-restaurant #kasimov-page-hero,
  html body.kasimov-page-restaurant.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-page-services #kasimov-page-hero,
  html body.kasimov-page-services.kasimov-has-page-hero #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  html body.kasimov-page-restaurant #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-restaurant #headerimage .kasimov-page-hero__slide,
  html body.kasimov-page-services #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-services #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}

/* === BATCH98 themed amenities layout === */
/* 4 thematic icons — single neat row */
html body.kasimov-page-restaurant .kasimov-hero-amenities__list,
html body.kasimov-page-services .kasimov-hero-amenities__list,
html body.kasimov-hero-amenities-themed .kasimov-hero-amenities__list {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  gap: 10px 12px !important;
  max-width: 720px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body.kasimov-page-restaurant .kasimov-hero-amenities__item,
html body.kasimov-page-services .kasimov-hero-amenities__item,
html body.kasimov-hero-amenities-themed .kasimov-hero-amenities__item {
  flex: 0 1 140px !important;
  min-width: 88px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-restaurant .kasimov-hero-amenities__list,
  html body.kasimov-page-services .kasimov-hero-amenities__list,
  html body.kasimov-hero-amenities-themed .kasimov-hero-amenities__list {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 6px !important;
    max-width: 100% !important;
  }
  html body.kasimov-page-restaurant .kasimov-hero-amenities__item,
  html body.kasimov-page-services .kasimov-hero-amenities__item,
  html body.kasimov-hero-amenities-themed .kasimov-hero-amenities__item {
    min-width: 0 !important;
    width: 100% !important;
    flex: unset !important;
  }
  /* One-row strip is shorter — captions can sit a bit lower */
  html body.kasimov-page-restaurant .kasimov-page-hero__caption,
  html body.kasimov-page-services .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-services #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant #headerimage .kasimov-page-hero__caption,
  html body.kasimov-page-services #headerimage .kasimov-page-hero__caption {
    bottom: 200px !important;
  }
}

/* === BATCH99 contacts hero + desktop sticky bottom === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage {
    position: relative !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    overflow: hidden !important;
    background: transparent !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  html body.kasimov-page-contacts #kasimov-page-hero .kasimov-page-hero__slide,
  html body.kasimov-page-contacts #headerimage .kasimov-page-hero__slide {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}

/* Desktop sticky dates: always bottom, never top */
@media only screen and (min-width: 980px) {
  html body .kasimov-sticky-dates.is-desktop.is-on,
  html body .kasimov-sticky-dates.is-desktop,
  html body.kasimov-has-sticky-dates .kasimov-sticky-dates.is-desktop {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: auto !important;
    bottom: 0 !important;
    padding: 10px 20px calc(10px + env(safe-area-inset-bottom, 0px)) !important;
    box-shadow: 0 -8px 24px rgba(30, 22, 14, 0.14) !important;
    border-top: 1px solid rgba(40, 30, 20, 0.08) !important;
    border-bottom: 0 !important;
    display: block !important;
    z-index: 10060 !important;
  }
  html body.kasimov-has-sticky-dates #footer,
  html body.kasimov-has-sticky-dates #content,
  html body.kasimov-booking-sticky #footer,
  html body.kasimov-booking-sticky #content {
    padding-bottom: 72px !important;
  }
}

/* === BATCH99b contacts hero force === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-before-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-header-after-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero.kasimov-header-before-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero.kasimov-header-before-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts.kasimov-has-page-hero.kasimov-header-after-hero #headerimage,
  html body.kasimov-page-contacts.kasimov-has-page-hero.kasimov-header-after-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-contacts #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-header-before-hero #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-header-after-hero #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero.kasimov-header-before-hero #kasimov-page-hero,
  html body.kasimov-page-contacts.kasimov-has-page-hero.kasimov-header-after-hero #kasimov-page-hero {
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-height: none !important;
  }
}

/* === BATCH100 restaurant/services captions above amenities === */
/* Sticky (~62) + amenity row (~57) + gap — captions clear icons */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-restaurant .kasimov-page-hero__caption,
  html body.kasimov-page-services .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-services #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant #headerimage .kasimov-page-hero__caption,
  html body.kasimov-page-services #headerimage .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant.kasimov-has-sticky-dates .kasimov-page-hero__caption,
  html body.kasimov-page-services.kasimov-has-sticky-dates .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant.kasimov-hero-has-amenities .kasimov-page-hero__caption,
  html body.kasimov-page-services.kasimov-hero-has-amenities .kasimov-page-hero__caption {
    bottom: 200px !important;
    top: auto !important;
    z-index: 48 !important;
  }
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-restaurant .kasimov-page-hero__caption,
  html body.kasimov-page-services .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-services #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant #headerimage .kasimov-page-hero__caption,
  html body.kasimov-page-services #headerimage .kasimov-page-hero__caption,
  html body.kasimov-page-restaurant.kasimov-hero-has-amenities .kasimov-page-hero__caption,
  html body.kasimov-page-services.kasimov-hero-has-amenities .kasimov-page-hero__caption {
    bottom: 160px !important;
    top: auto !important;
    z-index: 48 !important;
  }
}

/* BATCH-ROOM-DESKTOP-ALIGN */
@media (min-width: 981px) {
  html body.kasimov-page-rooms #content .items-leading > div[class*="leading-"],
  html body.kasimov-page-rooms #content .blog .item,
  html body.kasimov-page-rooms #content .blog [itemprop="blogPost"] {
    clear: both !important;
  }

  html body.kasimov-page-rooms #content .kasimov-room-lead,
  html body.kasimov-page-rooms #content .kasimov-room-rates,
  html body.kasimov-page-rooms #content .price.kasimov-room-rates,
  html body.kasimov-page-rooms #content .kasimov-room-actions {
    max-width: 740px !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
  }

  html body.kasimov-page-rooms #content .kasimov-room-lead {
    margin: 0 0 1em !important;
  }

  html body.kasimov-page-rooms #content .kasimov-room-rates,
  html body.kasimov-page-rooms #content .price.kasimov-room-rates {
    margin: 0 0 1em !important;
    padding: 14px 0 10px !important;
  }

  html body.kasimov-page-rooms #content .kasimov-rate-note {
    margin: 0 !important;
    font-family: var(--kasimov-font-body) !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    font-weight: 400 !important;
    color: var(--kasimov-ink-muted) !important;
    text-align: left !important;
  }

  html body.kasimov-page-rooms #content .kasimov-room-actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
    margin: 0 0 1.25em !important;
    padding: 0 !important;
    min-height: 44px !important;
    float: none !important;
    clear: both !important;
  }

  html body.kasimov-page-rooms #content .kasimov-room-actions > a,
  html body.kasimov-page-rooms #content .kasimov-room-actions > a.btn,
  html body.kasimov-page-rooms #content .kasimov-room-actions > a.book-button {
    position: static !important;
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: 44px !important;
    min-height: 44px !important;
    min-width: 160px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
  }

  html body.kasimov-page-rooms #content div[class*="leading-"] > p.readmore {
    display: none !important;
  }
}

/* === SERVICES UNIFIED BLOCKS === */
html body.kasimov-page-services .kasimov-svc-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 10px !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  list-style: none !important;
}
html body.kasimov-page-services .kasimov-svc-nav a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 16px !important;
  margin: 0 !important;
  background: #2f4a42 !important;
  color: #fff !important;
  text-decoration: none !important;
  border: 1px solid rgba(47, 74, 66, 0.35) !important;
  border-radius: 4px !important;
  font-size: .95em !important;
  line-height: 1.2 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 6px 16px rgba(20, 30, 28, 0.12) !important;
  transition: background .18s ease, transform .18s ease !important;
}
html body.kasimov-page-services .kasimov-svc-nav a:hover,
html body.kasimov-page-services .kasimov-svc-nav a:focus {
  background: #3d6558 !important;
  color: #fff !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
}
html body.kasimov-page-services .kasimov-svc-intro {
  margin: 0 0 24px !important;
  font-size: 1.05em !important;
  line-height: 1.55 !important;
  color: #3d342c !important;
}
html body.kasimov-page-services .kasimov-svc-block {
  margin: 0 0 28px !important;
  padding: 22px 20px 12px !important;
  background:
    linear-gradient(165deg, rgba(255,252,247,.96), rgba(245,240,232,.93)),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cg fill='none' stroke='%238a6a45' stroke-width='1.15' opacity='0.12'%3E%3Cpath d='M40 120 V70 L70 48 L100 70 V120'/%3E%3Cpath d='M55 120 V92 H85 V120'/%3E%3Ccircle cx='130' cy='70' r='16'/%3E%3Cpath d='M130 54 V86 M114 70 H146'/%3E%3C/g%3E%3C/svg%3E") !important;
  background-size: auto, 180px 180px !important;
  border: 1px solid rgba(138, 106, 69, 0.18) !important;
  border-radius: 6px !important;
  scroll-margin-top: 110px !important;
}
html body.kasimov-page-services .kasimov-svc-block > h3 {
  margin: 0 0 10px !important;
  color: #2f241a !important;
  letter-spacing: .02em !important;
}
html body.kasimov-page-services .kasimov-svc-lead {
  margin: 0 0 16px !important;
  font-size: 1.04em !important;
  line-height: 1.55 !important;
  color: #4a3c2f !important;
}
html body.kasimov-page-services .kasimov-svc-zones {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  margin: 0 0 14px !important;
}
@media only screen and (min-width: 720px) {
  html body.kasimov-page-services .kasimov-svc-zones {
    grid-template-columns: 1fr 1fr !important;
    gap: 12px 14px !important;
  }
}
html body.kasimov-page-services .kasimov-svc-zone {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  padding: 12px 14px !important;
  background: rgba(255,255,255,.74) !important;
  border-left: 3px solid #8a6a45 !important;
  border-radius: 0 4px 4px 0 !important;
}
html body.kasimov-page-services .kasimov-svc-zone strong {
  color: #2f241a !important;
  font-size: .98em !important;
}
html body.kasimov-page-services .kasimov-svc-zone span {
  color: #5a4a3a !important;
  font-size: .92em !important;
  line-height: 1.45 !important;
}
html body.kasimov-page-services .kasimov-svc-block .kasimov-lb-gallery {
  margin: 16px 0 8px !important;
}
html body.kasimov-page-services .kasimov-svc-block .kasimov-lb-gallery > a {
  display: block !important;
  margin: 0 0 12px !important;
  overflow: hidden !important;
  border-radius: 4px !important;
}
body #content img[src*="/ploschadka/"],
body #content img[src*="/banya/"],
body #content img[src*="/billiard/"] {
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 !important;
  display: block !important;
  float: none !important;
  border-radius: 4px !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.12) !important;
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-services .kasimov-svc-block .kasimov-gallery-mosaic {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 12px !important;
  }
  html body.kasimov-page-services .kasimov-svc-block .kasimov-gallery-mosaic > a {
    margin: 0 !important;
  }
  html body.kasimov-page-services .kasimov-svc-block .kasimov-gallery-mosaic > a:first-child {
    grid-column: 1 / -1 !important;
  }
  html body.kasimov-page-services .kasimov-svc-block .kasimov-gallery-mosaic img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    margin: 0 !important;
  }
  html body.kasimov-page-services .kasimov-svc-block .kasimov-gallery-mosaic > a:first-child img {
    height: 400px !important;
  }
}
@media only screen and (max-width: 719px) {
  html body.kasimov-page-services .kasimov-svc-nav a {
    flex: 1 1 calc(50% - 10px) !important;
    text-align: center !important;
    padding: 11px 10px !important;
    font-size: .9em !important;
  }
  html body.kasimov-page-services .kasimov-svc-block {
    scroll-margin-top: 90px !important;
    padding: 18px 14px 10px !important;
  }
}

/* === DESKTOP TEXT CLIP FIX === */
@media only screen and (min-width: 980px) {
  /* Root cause: #content { overflow:hidden } clipped serif glyphs + left ornament */
  html body.kasimov-page-about #content,
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-services #content,
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-sightseeing #content,
  html body.kasimov-page-about #content.container,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-rooms #content.container,
  html body.kasimov-page-restaurant #content.container,
  html body.kasimov-page-services #content.container,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-sightseeing #content.container,
  html body #content.container,
  html body section#content {
    overflow: visible !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-about #content::before,
  html body.kasimov-page-contacts #content::before,
  html body.kasimov-page-rooms #content::before,
  html body.kasimov-page-restaurant #content::before,
  html body.kasimov-page-services #content::before,
  html body.kasimov-page-privacy #content::before,
  html body.kasimov-page-sightseeing #content::before,
  html body.kasimov-page-about #content::after,
  html body.kasimov-page-rooms #content::after,
  html body.kasimov-page-services #content::after,
  html body.kasimov-page-sightseeing #content::after,
  html body.kasimov-page-restaurant #content::after,
  html body.kasimov-page-contacts #content::after {
    z-index: 0 !important;
  }
  html body #content > *,
  html body #content .row,
  html body #content #component,
  html body #content .item-page,
  html body #content .blog,
  html body #content .items-leading {
    position: relative !important;
    z-index: 2 !important;
  }
  html body.kasimov-page-rooms #content .span8,
  html body.kasimov-page-rooms #content .span9,
  html body.kasimov-page-about #content .span8,
  html body.kasimov-page-restaurant #content .span8,
  html body.kasimov-page-services #content .span8,
  html body.kasimov-page-sightseeing #content .span8,
  html body.kasimov-page-contacts #content .span8 {
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  html body.kasimov-page-rooms #sidebar,
  html body.kasimov-page-about #sidebar,
  html body.kasimov-page-restaurant #sidebar,
  html body.kasimov-page-services #sidebar,
  html body.kasimov-page-sightseeing #sidebar,
  html body.kasimov-page-contacts #sidebar {
    display: none !important;
  }
  html body #content h1,
  html body #content h2,
  html body #content h3,
  html body #content h4,
  html body #content .page-header h2,
  html body #content .blog h2,
  html body #content .blog h2 a,
  html body #content .item-page .page-header h2,
  html body .kasimov-page-hero__caption,
  html body #promo .kasimov-promo-card h3,
  html body #promo .kasimov-promo-card h3 a,
  html body .kasimov-chef__title,
  html body .kasimov-svc-block > h3 {
    overflow: visible !important;
    text-overflow: clip !important;
    padding-left: 0.14em !important;
    padding-right: 0.14em !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
    letter-spacing: 0.015em !important;
    line-height: 1.25 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  html body #content .item-page p,
  html body #content .blog .item p,
  html body #content .article p {
    overflow: visible !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
  }
  /* soften left ornament so it never eats first letters */
  html body.kasimov-page-about #content::after,
  html body.kasimov-page-rooms #content::after,
  html body.kasimov-page-services #content::after,
  html body.kasimov-page-sightseeing #content::after {
    left: -120px !important;
    opacity: 0.12 !important;
    width: min(320px, 28vw) !important;
  }
}

/* === SIGHTSEEING PAGE === */
html body.kasimov-page-sightseeing #content .item-page {
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-intro {
  max-width: 760px !important;
  margin: 0 auto 22px !important;
  padding: 0 12px !important;
  text-align: center !important;
  line-height: 1.65 !important;
  position: relative !important;
  z-index: 3 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px 10px !important;
  margin: 0 0 28px !important;
  justify-content: center !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-nav a {
  display: inline-flex !important;
  padding: 9px 14px !important;
  background: #2f4a42 !important;
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 4px !important;
  font-size: .92em !important;
  box-shadow: 0 6px 16px rgba(20,30,28,.12) !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-nav a:hover {
  background: #3d6558 !important;
  color: #fff !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  margin: 0 0 24px !important;
}
@media only screen and (min-width: 900px) {
  html body.kasimov-page-sightseeing .kasimov-sight-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
  }
}
html body.kasimov-page-sightseeing .kasimov-sight-card {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  background: linear-gradient(165deg, rgba(255,252,247,.96), rgba(245,240,232,.93)) !important;
  border: 1px solid rgba(138,106,69,.18) !important;
  border-radius: 6px !important;
  overflow: hidden !important;
  scroll-margin-top: 110px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__media {
  line-height: 0 !important;
  overflow: hidden !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__media img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  margin: 0 !important;
  display: block !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__body {
  padding: 16px 18px 18px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card h3 {
  margin: 0 0 8px !important;
  font-size: 1.45em !important;
  color: #2f241a !important;
  overflow: visible !important;
  padding-left: 0.04em !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__lead {
  margin: 0 0 12px !important;
  font-size: .98em !important;
  line-height: 1.55 !important;
  color: #4a3c2f !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-meta {
  list-style: none !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-meta li {
  margin: 0 0 6px !important;
  padding: 0 !important;
  font-size: .92em !important;
  color: #3d342c !important;
  line-height: 1.4 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-map {
  display: inline-flex !important;
  padding: 8px 14px !important;
  background: #8a6a45 !important;
  color: #fff !important;
  text-decoration: none !important;
  border-radius: 4px !important;
  font-size: .88em !important;
  letter-spacing: .02em !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-map:hover {
  background: #6e5336 !important;
  color: #fff !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-note {
  max-width: 740px !important;
  margin: 8px auto 0 !important;
  font-size: .95em !important;
  color: #5a4a3a !important;
  line-height: 1.55 !important;
}
body #content img[src*="/sightseeing/"] {
  max-width: 100% !important;
}

/* === ORNAMENT + CLIP HARD FIX === */
@media only screen and (min-width: 980px) {
  /* Left decorative ::after was 320px and covered first letters */
  html body #content::after,
  html body #content.container::after,
  html body section#content::after {
    width: 72px !important;
    max-width: 72px !important;
    left: -36px !important;
    opacity: 0.22 !important;
    z-index: 0 !important;
    pointer-events: none !important;
  }
  html body #content::before,
  html body #content.container::before {
    z-index: 0 !important;
    pointer-events: none !important;
  }
  html body #content,
  html body #content.container,
  html body section#content {
    overflow: visible !important;
    overflow-x: visible !important;
    padding-left: 52px !important;
    padding-right: 48px !important;
    position: relative !important;
    z-index: 2 !important;
  }
  html body #content .item-page,
  html body #content .article,
  html body #content #component,
  html body #content .row-fluid,
  html body #content .row {
    position: relative !important;
    z-index: 3 !important;
    overflow: visible !important;
  }
  /* Serif glyph overhang */
  html body #content h1,
  html body #content h2,
  html body #content h3,
  html body #content .article-title,
  html body #content .page-header h1,
  html body #content .page-header h2 {
    overflow: visible !important;
    padding-left: 0.12em !important;
    text-indent: 0 !important;
  }
  /* Compact menu so Контакты does not collide with CTA */
  html body #mainmenu ul#icemegamenu > li > a {
    font-size: 12px !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
  }
  html body #header #mainmenu,
  html body #header #mainmenu .container {
    max-width: calc(100% - 250px) !important;
    margin-right: 240px !important;
  }
  html body #mainmenu ul#icemegamenu {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    gap: 0 !important;
  }
}

/* === SIGHTSEEING PAGE POLISH === */
html body.kasimov-page-sightseeing #content h1:not(.article-title) {
  display: none !important;
}
html body.kasimov-page-sightseeing #content .page-header {
  display: block !important;
  text-align: center !important;
  margin: 0 0 12px !important;
  border: 0 !important;
}
html body.kasimov-page-sightseeing #content h2.article-title,
html body.kasimov-page-sightseeing #content .item-page > h2,
html body.kasimov-page-sightseeing #content .article > h2 {
  display: block !important;
  visibility: visible !important;
  text-align: center !important;
  margin: 8px 0 18px !important;
  padding-left: 0.12em !important;
  overflow: visible !important;
  font-size: 2.2em !important;
  color: #5c2a2a !important;
  line-height: 1.2 !important;
}
.kasimov-sight-intro {
  max-width: 760px !important;
  margin: 0 auto 22px !important;
  padding: 0 12px !important;
  text-align: center !important;
  line-height: 1.65 !important;
  position: relative !important;
  z-index: 3 !important;
}
.kasimov-sight-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 10px 16px !important;
  margin: 0 auto 28px !important;
  padding: 0 16px !important;
  max-width: 960px !important;
  list-style: none !important;
  position: relative !important;
  z-index: 3 !important;
  box-sizing: border-box !important;
}
.kasimov-sight-nav a {
  white-space: nowrap !important;
  margin: 0 !important;
  padding: 6px 12px !important;
  color: #fff !important;
  background: #5a6b4a !important;
  text-decoration: none !important;
  font-size: 0.9em !important;
  border-radius: 10px !important;
}
.kasimov-sight-nav a:hover {
  background: #4a5a3c !important;
}
.kasimov-sight-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 28px !important;
  margin: 0 auto !important;
  max-width: 1000px !important;
  padding: 0 8px 12px !important;
  position: relative !important;
  z-index: 3 !important;
  box-sizing: border-box !important;
}
@media only screen and (min-width: 900px) {
  .kasimov-sight-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 28px 24px !important;
  }
}
.kasimov-sight-card {
  background: #fff !important;
  border: 1px solid rgba(90,60,40,.12) !important;
  overflow: hidden !important;
  display: flex !important;
  flex-direction: column !important;
}
.kasimov-sight-card__media {
  display: block !important;
  overflow: hidden !important;
  aspect-ratio: 16 / 10 !important;
  background: #e8e0d4 !important;
  line-height: 0 !important;
}
.kasimov-sight-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}
.kasimov-sight-card__body {
  padding: 16px 18px 18px !important;
}
.kasimov-sight-card h3 {
  margin: 0 0 8px !important;
  padding-left: 0.1em !important;
  overflow: visible !important;
  font-size: 1.35em !important;
  line-height: 1.25 !important;
  color: #5c2a2a !important;
}
.kasimov-sight-card__lead {
  margin: 0 0 12px !important;
  color: #4a3f35 !important;
  line-height: 1.55 !important;
  font-size: 0.96em !important;
}
.kasimov-sight-meta {
  margin: 0 0 12px !important;
  padding: 0 !important;
  list-style: none !important;
}
.kasimov-sight-meta li {
  margin: 0 0 4px !important;
  padding: 0 !important;
  color: #5a4a3a !important;
  font-size: 0.92em !important;
  line-height: 1.45 !important;
}
.kasimov-sight-map {
  color: #8b2e2e !important;
  font-size: 0.92em !important;
  text-decoration: none !important;
  border-bottom: 1px solid rgba(139,46,46,.35) !important;
}
.kasimov-sight-map:hover {
  border-bottom-color: #8b2e2e !important;
}
.kasimov-sight-note {
  max-width: 820px !important;
  margin: 28px auto 8px !important;
  padding: 14px 18px !important;
  background: rgba(90,60,40,.05) !important;
  color: #5a4a3a !important;
  line-height: 1.55 !important;
  font-size: 0.95em !important;
  position: relative !important;
  z-index: 3 !important;
}


/* === SIGHTSEEING TITLE VISIBLE === */
html body.kasimov-page-sightseeing #content .page-header {
  display: block !important;
  text-align: center !important;
  border: 0 !important;
  margin: 0 0 12px !important;
  padding: 0 !important;
}
html body.kasimov-page-sightseeing #content .page-header h2 {
  display: block !important;
  visibility: visible !important;
  text-align: center !important;
  margin: 8px 0 0 !important;
  padding-left: 0.12em !important;
  overflow: visible !important;
  font-size: 2.2em !important;
  color: #5c2a2a !important;
}

/* === SIGHTSEEING MEDIA HEIGHT === */
.kasimov-sight-card__media {
  height: 220px !important;
  max-height: 220px !important;
  aspect-ratio: auto !important;
  overflow: hidden !important;
}
.kasimov-sight-card__media img {
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  object-fit: cover !important;
  object-position: center center !important;
}
html body.kasimov-page-sightseeing #content .item-page {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 100% !important;
  overflow: visible !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-sightseeing #content,
  html body.kasimov-page-sightseeing #content.container {
    padding-left: 56px !important;
    padding-right: 52px !important;
  }
}

/* === SIGHTSEEING ALIGN === */
html body.kasimov-page-sightseeing #content .item-page {
  margin: 0 auto !important;
  max-width: 1000px !important;
  padding: 0 12px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-intro {
  text-align: center !important;
  margin: 0 auto 20px !important;
  max-width: 720px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 10px 12px !important;
  margin: 0 auto 28px !important;
  max-width: 960px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 24px !important;
  margin: 0 auto !important;
  max-width: 1000px !important;
  align-items: stretch !important;
}
@media only screen and (min-width: 900px) {
  html body.kasimov-page-sightseeing .kasimov-sight-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
  }
}
html body.kasimov-page-sightseeing .kasimov-sight-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  margin: 0 !important;
  background: #fff !important;
  border: 1px solid rgba(90,60,40,.12) !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__media {
  height: 220px !important;
  max-height: 220px !important;
  overflow: hidden !important;
  flex: 0 0 220px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__media img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 16px 18px 18px !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card h3 {
  min-height: 2.6em !important;
  margin: 0 0 8px !important;
  padding-left: 0.08em !important;
  overflow: visible !important;
  line-height: 1.3 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__lead {
  flex: 1 1 auto !important;
  margin: 0 0 12px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-meta {
  margin: 0 0 12px !important;
  min-height: 3.2em !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__actions {
  margin-top: auto !important;
  margin-bottom: 0 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-credit {
  margin: 22px auto 0 !important;
  max-width: 1000px !important;
  text-align: center !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
  color: #8a7a6a !important;
  letter-spacing: 0.01em !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-credit a {
  color: #8a7a6a !important;
  text-decoration: underline !important;
  font-size: inherit !important;
}

/* sight-photo-focus */
html body.kasimov-page-sightseeing #sight-square .kasimov-sight-card__media img {
  object-position: center 55% !important;
}
html body.kasimov-page-sightseeing #sight-embankment .kasimov-sight-card__media img {
  object-position: center 40% !important;
}

/* footer-registry */
html body .kasimov-footer-registry {
  margin: 6px 0 0 !important;
  text-align: center !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  color: rgba(255,255,255,.72) !important;
  letter-spacing: 0.02em !important;
}
html body .kasimov-footer-registry strong {
  color: rgba(255,255,255,.92) !important;
  font-weight: 600 !important;
}
html body .kasimov-footer-pets {
  text-align: center !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 4px 0 !important;
}

/* === SIGHTSEEING ALIGN v5 === */
/* Bootstrap .span12 is 1170px; padding on #content made content shift right */
html body.kasimov-page-sightseeing #content,
html body.kasimov-page-sightseeing #content.container {
  max-width: 1170px !important;
  width: 1170px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  overflow-x: clip !important;
}
html body.kasimov-page-sightseeing #content > .row {
  width: 1170px !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-sightseeing #content #middlecol,
html body.kasimov-page-sightseeing #content .span12,
html body.kasimov-page-sightseeing #content .inside {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-sightseeing #content .item-page,
html body.kasimov-page-sightseeing .item-page {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 12px 28px 24px !important;
  float: none !important;
  box-sizing: border-box !important;
  transform: none !important;
  position: relative !important;
  left: 0 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-intro {
  text-align: center !important;
  margin: 0 auto 18px !important;
  max-width: 760px !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-nav {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px 10px !important;
  margin: 0 auto 26px !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-grid {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  box-sizing: border-box !important;
  align-items: stretch !important;
  justify-items: stretch !important;
}
@media only screen and (min-width: 900px) {
  html body.kasimov-page-sightseeing .kasimov-sight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }
}
html body.kasimov-page-sightseeing .kasimov-sight-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  background: #fff !important;
  border: 1px solid rgba(90,60,40,.12) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__media {
  height: 220px !important;
  min-height: 220px !important;
  max-height: 220px !important;
  flex: 0 0 220px !important;
  overflow: hidden !important;
  background: #e8e0d4 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__media img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  cursor: zoom-in !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  padding: 16px 18px 18px !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card h3 {
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  line-height: 1.35 !important;
  overflow: visible !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  text-overflow: clip !important;
  white-space: normal !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__lead {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 0 12px !important;
  line-height: 1.45 !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-meta {
  margin: 0 0 14px !important;
  padding: 0 !important;
  list-style: none !important;
  min-height: 4.8em !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__actions {
  margin-top: auto !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-note,
html body.kasimov-page-sightseeing .kasimov-sight-credit {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100% !important;
}
html body.kasimov-page-sightseeing #content .page-header,
html body.kasimov-page-sightseeing #content .page-header h2,
html body.kasimov-page-sightseeing #content h2.article-title {
  text-align: center !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
@media only screen and (max-width: 1199px) {
  html body.kasimov-page-sightseeing #content,
  html body.kasimov-page-sightseeing #content.container,
  html body.kasimov-page-sightseeing #content > .row {
    width: 100% !important;
    max-width: 100% !important;
  }
  html body.kasimov-page-sightseeing #content .item-page {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* === SIGHT NAV MOBILE ALIGN === */
@media only screen and (max-width: 899px) {
  html body.kasimov-page-sightseeing .kasimov-sight-nav {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    justify-content: stretch !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto 22px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
  html body.kasimov-page-sightseeing .kasimov-sight-nav a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 42px !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    white-space: normal !important;
    line-height: 1.25 !important;
    font-size: 0.86em !important;
  }
}

/* === SIGHTSEEING LIGHTBOX CURSOR === */
html body.kasimov-page-sightseeing #content .kasimov-sight-card__media img,
html body.kasimov-page-sightseeing #content img.kasimov-gallery-img,
html body.kasimov-page-sightseeing #content img[src*="sightseeing/"] {
  cursor: zoom-in !important;
}

/* === KASIMOV LIGHTBOX v2 UI === */
html body .kasimov-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 2147483646 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}
html body .kasimov-lightbox[hidden] {
  display: none !important;
  pointer-events: none !important;
}
html body .kasimov-lightbox__backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0, 0, 0, 0.88) !important;
  cursor: zoom-out !important;
}
html body .kasimov-lightbox__stage {
  position: relative !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100vw !important;
  max-height: 100vh !important;
  padding: 56px 56px 28px !important;
  box-sizing: border-box !important;
  pointer-events: none !important;
}
html body .kasimov-lightbox__figure {
  position: relative !important;
  margin: 0 !important;
  max-width: min(1200px, 94vw) !important;
  max-height: 90vh !important;
  pointer-events: auto !important;
}
html body .kasimov-lightbox__img {
  display: block !important;
  max-width: min(1200px, 94vw) !important;
  max-height: 82vh !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
  box-shadow: 0 20px 60px rgba(0,0,0,.5) !important;
  background: #111 !important;
  cursor: default !important;
}
html body .kasimov-lightbox__cap {
  display: block !important;
  margin: 10px 8px 0 !important;
  color: rgba(255,255,255,.85) !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  text-align: center !important;
  max-width: min(900px, 90vw) !important;
}
html body .kasimov-lightbox__close {
  position: fixed !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 2 !important;
  width: 44px !important;
  height: 44px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.14) !important;
  color: #fff !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  backdrop-filter: blur(6px);
}
html body .kasimov-lightbox__close:hover {
  background: rgba(255,255,255,.28) !important;
}
html body .kasimov-lightbox__nav {
  position: fixed !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 2 !important;
  width: 46px !important;
  height: 46px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,.12) !important;
  color: #fff !important;
  font-size: 32px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}
html body .kasimov-lightbox__nav--prev { left: 12px !important; }
html body .kasimov-lightbox__nav--next { right: 12px !important; }
html body .kasimov-lightbox__nav[hidden] { display: none !important; }
html body .kasimov-lightbox__nav:hover {
  background: rgba(255,255,255,.26) !important;
}
html.kasimov-lb-open,
html.kasimov-lb-open body,
body.kasimov-lb-open {
  overflow: hidden !important;
  touch-action: none !important;
}
/* hide legacy lightbox2 if it appears */
html body .lightboxOverlay,
html body .lightbox,
html body .lb-outerContainer,
html body .lb-dataContainer {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}
@media only screen and (max-width: 767px) {
  html body .kasimov-lightbox__stage {
    padding: 52px 12px 20px !important;
  }
  html body .kasimov-lightbox__nav {
    width: 40px !important;
    height: 40px !important;
    font-size: 28px !important;
  }
  html body .kasimov-lightbox__nav--prev { left: 6px !important; }
  html body .kasimov-lightbox__nav--next { right: 6px !important; }
  html body .kasimov-lightbox__close {
    top: 10px !important;
    right: 10px !important;
  }
}

/* === SITEWIDE GALLERY ZOOM CURSOR === */
html body.kasimov-page-rooms #content a[data-lightbox] img,
html body.kasimov-page-rooms #content img,
html body.kasimov-page-about #content a[data-lightbox] img,
html body.kasimov-page-about #content .kasimov-about-gallery img,
html body.kasimov-page-services #content img.kasimov-gallery-img,
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic img,
html body.kasimov-page-sightseeing #content .kasimov-sight-card__media img {
  cursor: zoom-in !important;
}

/* === NAV + HERO CENTER v1 === */
@media only screen and (min-width: 980px) {
  /* Was: max-width calc(100%-250px) + margin-right 240px → menu shifted left */
  html body #header #mainmenu,
  html body #header #mainmenu .container,
  html body #mainmenu .container {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 220px !important;
    padding-right: 220px !important;
    box-sizing: border-box !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
  }
  html body #mainmenu ul#icemegamenu,
  html body #header #mainmenu ul#icemegamenu,
  html body #mainmenu ul.nav.menu {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
  }
}

/* Hero captions: true horizontal center on every page */
html body .kasimov-page-hero__caption,
html body .kasimov-page-hero .kasimov-page-hero__caption,
html body .kasimov-page-hero__slide .kasimov-page-hero__caption,
html body #kasimov-page-hero .kasimov-page-hero__caption,
html body #headerimage .kasimov-page-hero__caption,
html body #iceslideshow .carousel-caption,
html body #iceslideshow .item .carousel-caption,
html body #iceslideshow .item.active .carousel-caption {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  -webkit-transform: translateX(-50%) !important;
  text-align: center !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: max-content !important;
  max-width: min(860px, 92vw) !important;
}

/* Amenities strip under hero captions — center too */
html body .kasimov-hero-amenities,
html body .kasimov-page-hero__amenities,
html body .kasimov-page-hero .kasimov-hero-amenities,
html body #kasimov-page-hero .kasimov-hero-amenities,
html body #iceslideshow .kasimov-hero-amenities {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  -webkit-transform: translateX(-50%) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  justify-content: center !important;
}

/* === ROOMS HERO CAPTION ABOVE AMENITIES === */
/* Caption was sitting on / under amenity icons on rooms pages */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms .kasimov-hero-amenities,
  html body.kasimov-page-rooms #kasimov-page-hero .kasimov-hero-amenities,
  html body.kasimov-page-rooms #headerimage .kasimov-hero-amenities {
    bottom: 118px !important;
    z-index: 40 !important;
  }
  html body.kasimov-page-rooms.kasimov-has-sticky-dates .kasimov-hero-amenities,
  html body.kasimov-page-rooms.kasimov-booking-sticky .kasimov-hero-amenities {
    bottom: 118px !important;
  }
  /* amenities ~70px tall + gap 28px → caption bottom ≈ 118+70+28 = 216; use more for long titles */
  html body.kasimov-page-rooms .kasimov-page-hero__caption,
  html body.kasimov-page-rooms #kasimov-page-hero .kasimov-page-hero__caption,
  html body.kasimov-page-rooms #headerimage .kasimov-page-hero__caption,
  html body.kasimov-page-rooms.kasimov-hero-has-amenities .kasimov-page-hero__caption,
  html body.kasimov-page-rooms.kasimov-has-sticky-dates .kasimov-page-hero__caption,
  html body.kasimov-page-rooms.kasimov-has-sticky-dates.kasimov-hero-has-amenities .kasimov-page-hero__caption {
    bottom: 280px !important;
    z-index: 46 !important;
  }
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-rooms .kasimov-page-hero__caption,
  html body.kasimov-page-rooms.kasimov-hero-has-amenities .kasimov-page-hero__caption {
    bottom: 168px !important;
    z-index: 46 !important;
  }
  html body.kasimov-page-rooms .kasimov-hero-amenities {
    bottom: 78px !important;
    z-index: 40 !important;
  }
}

/* === SIGHTSEEING FULL TEXT (no ellipsis) === */
html body.kasimov-page-sightseeing .kasimov-sight-card h3,
html body.kasimov-page-sightseeing .kasimov-sight-card__lead,
html body.kasimov-page-sightseeing .kasimov-sight-meta,
html body.kasimov-page-sightseeing .kasimov-sight-meta li {
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: normal !important;
  max-height: none !important;
  -webkit-line-clamp: unset !important;
  line-clamp: unset !important;
  display: block !important;
  -webkit-box-orient: initial !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card h3 {
  min-height: 0 !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  line-height: 1.35 !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-card__lead {
  min-height: 0 !important;
  margin: 0 0 12px !important;
  line-height: 1.45 !important;
  flex: 1 1 auto !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-meta {
  min-height: 0 !important;
  margin: 0 0 14px !important;
  list-style: none !important;
  padding: 0 !important;
}

/* === MOBILE FOOTER WIDTH = CONTENT STAGE === */
@media only screen and (max-width: 979px) {
  /* Match #content calc(100%-24px) + margin 12px used by glass pages */
  html body.kasimov-page-about #footer,
  html body.kasimov-page-about #footer.container,
  html body.kasimov-page-rooms #footer,
  html body.kasimov-page-rooms #footer.container,
  html body.kasimov-page-restaurant #footer,
  html body.kasimov-page-restaurant #footer.container,
  html body.kasimov-page-services #footer,
  html body.kasimov-page-services #footer.container,
  html body.kasimov-page-contacts #footer,
  html body.kasimov-page-contacts #footer.container,
  html body.kasimov-page-privacy #footer,
  html body.kasimov-page-privacy #footer.container,
  html body.kasimov-page-sightseeing #footer,
  html body.kasimov-page-sightseeing #footer.container,
  html body.kasimov-has-page-hero #footer,
  html body.kasimov-has-page-hero #footer.container,
  html body.kasimov-page-about footer#footer,
  html body.kasimov-page-rooms footer#footer,
  html body.kasimov-page-restaurant footer#footer,
  html body.kasimov-page-services footer#footer,
  html body.kasimov-page-contacts footer#footer,
  html body.kasimov-page-privacy footer#footer,
  html body.kasimov-page-sightseeing footer#footer {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
    float: none !important;
    left: auto !important;
    right: auto !important;
  }

  /* Home: if content is full-bleed keep footer aligned to same inset as other pages for consistency */
  html body.kasimov-page-home #footer,
  html body.kasimov-page-home #footer.container,
  html body.kasimov-page-home footer#footer {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 12px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* Sightseeing content also often full; force same stage as footer */
  html body.kasimov-page-sightseeing #content,
  html body.kasimov-page-sightseeing #content.container {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }
}

/* === SIGHT PHOTO-TEXT GAP TIGHTEN === */
/* Beat html body #content .item-page h3 { margin: 1.6em 0 0.6em } */
html body.kasimov-page-sightseeing #content .item-page .kasimov-sight-card__body,
html body.kasimov-page-sightseeing #content .kasimov-sight-card__body {
  padding-top: 8px !important;
  padding-bottom: 14px !important;
}
html body.kasimov-page-sightseeing #content .item-page .kasimov-sight-card h3,
html body.kasimov-page-sightseeing #content .article .kasimov-sight-card h3,
html body.kasimov-page-sightseeing #content .kasimov-sight-card h3 {
  margin: 0 0 6px !important;
  padding: 0 !important;
}
html body.kasimov-page-sightseeing #content .item-page .kasimov-sight-card__lead,
html body.kasimov-page-sightseeing #content .kasimov-sight-card__lead {
  margin-top: 0 !important;
}
html body.kasimov-page-sightseeing #content .kasimov-sight-card__media,
html body.kasimov-page-sightseeing #content .kasimov-sight-card__media img {
  margin-bottom: 0 !important;
}

/* === SOFT RADIUS PASS (buttons, panels, cards) === */
:root {
  --kasimov-r-xs: 8px;
  --kasimov-r-sm: 10px;
  --kasimov-r-md: 14px;
  --kasimov-r-lg: 18px;
  --kasimov-r-xl: 22px;
}

/* Content / footer glass stages */
html body #content,
html body #content.container,
html body #footer,
html body #footer.container,
html body footer#footer {
  border-radius: var(--kasimov-r-lg) !important;
  overflow: hidden;
}

html body #header {
  border-radius: 0 0 var(--kasimov-r-md) var(--kasimov-r-md) !important;
}

/* Buttons & CTAs — beat page-specific sharper radii */
html body .btn,
html body a.btn,
html body .icebtn,
html body a.icebtn,
html body .readmore a,
html body .readmore a.btn,
html body .price .book-button,
html body a.book-button,
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited,
html body a.kasimov-book-cta:hover,
html body .kasimov-book-cta,
html body button.btn,
html body input.btn,
html body input[type="submit"],
html body input[type="button"],
html body button[type="submit"],
html body .tl-bar button,
html body .tl-bar .tl-btn,
html body .tl-bar input[type="submit"],
html body #mainmenu .mobile-nav-toggle,
html body .kasimov-sight-map,
html body a.kasimov-sight-map {
  border-radius: var(--kasimov-r-sm) !important;
}

/* Form controls incl. sticky booking */
html body input[type="text"],
html body input[type="email"],
html body input[type="tel"],
html body input[type="search"],
html body input[type="number"],
html body input[type="date"],
html body input[type="password"],
html body select,
html body textarea,
html body .tl-bar input,
html body .tl-bar select,
html body .kasimov-sticky-dates input,
html body .kasimov-sticky-dates select,
html body .kasimov-sticky-bar input,
html body .kasimov-sticky-bar select {
  border-radius: var(--kasimov-r-xs) !important;
}

html body .tl-bar,
html body .tl-bar-inner,
html body .kasimov-sticky-dates,
html body .kasimov-sticky-bar {
  border-radius: var(--kasimov-r-md) !important;
}

/* Cards — page-class specificity to beat older 0/2/6px rules */
html body .kasimov-sight-card,
html body.kasimov-page-sightseeing .kasimov-sight-card,
html body.kasimov-page-sightseeing #content .kasimov-sight-card,
html body .kasimov-sight-card__media,
html body.kasimov-page-sightseeing .kasimov-sight-card__media,
html body #sidebar .kasimov-side-mod,
html body #sidebar .moduletable,
html body #content #promo .moduletable,
html body #promo .moduletable,
html body .blog .item,
html body .items-leading .item,
html body .items-row .item,
html body.kasimov-page-rooms #content .blog .item,
html body.kasimov-page-rooms #content .items-leading .item {
  border-radius: var(--kasimov-r-md) !important;
  overflow: hidden;
}

html body .kasimov-sight-card__media,
html body.kasimov-page-sightseeing .kasimov-sight-card__media,
html body .kasimov-sight-card__media img,
html body.kasimov-page-sightseeing .kasimov-sight-card__media img {
  border-radius: var(--kasimov-r-md) var(--kasimov-r-md) 0 0 !important;
}

html body #content img.kasimov-gallery-img,
html body #content .kasimov-gallery-mosaic img,
html body #content .item-image img,
html body #content .blog img,
html body #content .item-page img {
  border-radius: var(--kasimov-r-sm) !important;
}

html body .kasimov-sight-nav a,
html body.kasimov-page-sightseeing .kasimov-sight-nav a,
html body.kasimov-page-sightseeing #content .kasimov-sight-nav a {
  border-radius: var(--kasimov-r-xs) !important;
}

html body .kasimov-hero-amenities,
html body .kasimov-hero-amenities__item,
html body.kasimov-has-page-hero .kasimov-hero-amenities,
html body.kasimov-has-page-hero .kasimov-hero-amenities__item {
  border-radius: var(--kasimov-r-sm) !important;
}

html body #content iframe,
html body #content .kasimov-map,
html body #content .map {
  border-radius: var(--kasimov-r-md) !important;
}

@media only screen and (max-width: 979px) {
  html body #mainmenu.is-open ul.nav.menu,
  html body #mainmenu ul.nav.menu {
    border-radius: var(--kasimov-r-md) !important;
  }
  html body #content,
  html body #content.container,
  html body #footer,
  html body #footer.container,
  html body footer#footer {
    border-radius: var(--kasimov-r-md) !important;
  }
}

html body.kasimov-page-sightseeing .kasimov-sight-map,
html body.kasimov-page-sightseeing a.kasimov-sight-map,
html body.kasimov-page-sightseeing #content .kasimov-sight-map {
  border-radius: var(--kasimov-r-sm) !important;
}

html body .kasimov-rating {
  border-radius: 0 !important;
}

/* === DESKTOP PAGE TITLES CENTER (about / restaurant / services) === */
/* Bug: .page-header had max-width:740px but later margin:0 0 28px wiped
   margin-left/right:auto → title block stuck left while text-align:center
   only centered inside the narrow left column. */
html body #content .page-header,
html body #content .item-page .page-header,
html body #content .blog .page-header,
html body.kasimov-page-about #content .page-header,
html body.kasimov-page-restaurant #content .page-header,
html body.kasimov-page-services #content .page-header,
html body.kasimov-page-rooms #content .page-header,
html body.kasimov-page-contacts #content .page-header,
html body.kasimov-page-privacy #content .page-header,
html body.kasimov-has-page-hero #content .page-header {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
  margin-bottom: 28px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: center !important;
  float: none !important;
}

html body #content .page-header h2,
html body #content .item-page .page-header h2,
html body #content .blog .page-header h2,
html body #content h2.article-title,
html body.kasimov-page-about #content .page-header h2,
html body.kasimov-page-restaurant #content .page-header h2,
html body.kasimov-page-services #content .page-header h2,
html body.kasimov-page-rooms #content .page-header h2,
html body.kasimov-page-contacts #content .page-header h2,
html body.kasimov-page-privacy #content .page-header h2 {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  float: none !important;
}

html body #content .breadcrumb,
html body.kasimov-page-about #content .breadcrumb,
html body.kasimov-page-restaurant #content .breadcrumb,
html body.kasimov-page-services #content .breadcrumb {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  justify-content: center !important;
}

/* === DESKTOP: hide hero booking (sticky bar is enough) === */
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking,
  html body .kasimov-hero-booking__inner,
  html body .kasimov-hero-booking .kasimov-tl-search,
  html body .kasimov-hero-booking #tl-search-form-hero-0,
  html body .kasimov-hero-booking #tl-search-form-hero-1,
  html body .kasimov-hero-booking [id^="tl-search-form-hero"],
  html body #iceslideshow .kasimov-hero-booking,
  html body #kasimov-page-hero .kasimov-hero-booking,
  html body #headerimage .kasimov-hero-booking,
  html body.kasimov-hero-has-booking .kasimov-hero-booking,
  html body.kasimov-page-home .kasimov-hero-booking {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Amenities near bottom — no booking strip clearance */
  html body.kasimov-page-home .kasimov-hero-amenities,
  html body.kasimov-hero-has-booking .kasimov-hero-amenities {
    bottom: 36px !important;
  }

  /* Captions above amenities; JS pin also adjusts active slide */
  html body #iceslideshow .carousel-caption,
  html body #iceslideshow .item .carousel-caption,
  html body #iceslideshow .item.active .carousel-caption,
  html body.kasimov-page-home #iceslideshow .carousel-caption,
  html body.kasimov-hero-has-booking #iceslideshow .carousel-caption,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption,
  html body .kasimov-page-hero__caption,
  html body #kasimov-page-hero .kasimov-page-hero__caption,
  html body #headerimage .kasimov-page-hero__caption {
    top: auto !important;
    bottom: 160px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    -webkit-transform: translateX(-50%) !important;
    z-index: 55 !important;
    text-align: center !important;
  }

  html body:not(.kasimov-hero-has-amenities) #iceslideshow .carousel-caption,
  html body:not(.kasimov-hero-has-amenities) .kasimov-page-hero__caption {
    bottom: 48px !important;
  }

  html body a.kasimov-prices-tab,
  html body a.iceslide_link {
    bottom: 36px !important;
  }
}

/* === DESKTOP: home caption text inside pin box (no -250 offset) === */
@media only screen and (min-width: 980px) {
  /* Old batch-40 set bottom:250 on .mod-description; with position:relative that becomes top:-250 */
  html body.kasimov-page-home #iceslideshow .carousel-caption .mod-description,
  html body.kasimov-page-home #iceslideshow .carousel-caption .mod-description p,
  html body.kasimov-page-home #iceslideshow .carousel-caption .mod-description a,
  html body.kasimov-page-home #iceslideshow .carousel-caption a,
  html body #iceslideshow .carousel-caption .mod-description,
  html body #iceslideshow .carousel-caption .mod-description p,
  html body #iceslideshow .carousel-caption .mod-description a,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption .mod-description,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption .mod-description p,
  html body #iceslideshow.kasimov-hero-has-booking .carousel-caption .mod-description a {
    position: relative !important;
    top: 0 !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    -webkit-transform: none !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* === LOGIVO CREDIT (footer) === */
html body #footer .logivo-credit,
html body footer#footer .logivo-credit {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.4em;
  width: 100%;
  margin: 10px 0 0 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.5) !important;
  text-decoration: none !important;
  opacity: 1 !important;
  transition: color 0.2s ease;
}
html body #footer .logivo-credit:hover,
html body footer#footer .logivo-credit:hover {
  color: rgba(255, 255, 255, 0.92) !important;
}
html body #footer .logivo-credit__mark,
html body footer#footer .logivo-credit__mark {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
  opacity: 0.85;
}


/* === BATCH100 mobile heroes full viewport no bath === */
@media only screen and (max-width: 979px) {
  html body.kasimov-has-page-hero #headerimage,
  html body.kasimov-has-page-hero #headerimage.kasimov-page-hero-host,
  html body.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-page-rooms #headerimage,
  html body.kasimov-page-rooms #headerimage.kasimov-page-hero-host,
  html body.kasimov-page-rooms #kasimov-page-hero,
  html body.kasimov-page-about #headerimage,
  html body.kasimov-page-restaurant #headerimage,
  html body.kasimov-page-services #headerimage,
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-sightseeing #headerimage,
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow.iceslideshow-fill,
  html body #iceslideshow,
  html body #iceslideshow.container {
    height: 100vh !important;
    height: 100dvh !important;
    height: 100svh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    min-height: 100svh !important;
    max-height: none !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    left: 0 !important;
    right: 0 !important;
    position: relative !important;
    overflow: hidden !important;
  }

  html body.kasimov-has-page-hero #kasimov-page-hero,
  html body.kasimov-has-page-hero .kasimov-page-hero,
  html body.kasimov-has-page-hero .kasimov-page-hero__slide,
  html body.kasimov-has-page-hero .kasimov-page-hero__slides,
  html body.kasimov-page-home #iceslideshow .carousel,
  html body.kasimov-page-home #iceslideshow .carousel-inner,
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .item > img,
  html body.kasimov-page-home #iceslideshow .item > a,
  html body.kasimov-page-home #iceslideshow .item > a > img {
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    width: 100% !important;
    object-fit: cover !important;
    background-size: cover !important;
    background-position: center center !important;
  }

  /* kill leftover short-hero caps */
  html body.kasimov-page-contacts #headerimage,
  html body.kasimov-page-contacts #kasimov-page-hero {
    height: 100svh !important;
    min-height: 100svh !important;
    max-height: none !important;
  }
}


/* === BATCH101 mobile docked sheet UI === */
/*
  Concept: "Docked Parchment Sheet"
  Full-bleed cinematic hero → content rises as one continuous sheet
  (no side gutters). Top-only radius + soft lift shadow. Text keeps
  a generous inner pad; media nearly edge-to-edge inside the sheet.
*/
@media only screen and (max-width: 979px) {
  :root {
    --kasimov-sheet: #fbf8f3;
    --kasimov-sheet-deep: #f3eee6;
    --kasimov-sheet-ink: #1a1612;
    --kasimov-sheet-muted: #6e655c;
    --kasimov-sheet-line: rgba(40, 32, 24, 0.08);
    --kasimov-sheet-pad: 22px;
    --kasimov-sheet-pad-sm: 16px;
    --kasimov-sheet-radius: 28px;
    --kasimov-sheet-lift: 0 -20px 50px rgba(8, 6, 4, 0.32);
  }

  /* Stage behind the sheet — no dark side rails */
  html body.kasimov-has-page-hero,
  html body.kasimov-page-rooms,
  html body.kasimov-page-about,
  html body.kasimov-page-restaurant,
  html body.kasimov-page-services,
  html body.kasimov-page-sightseeing,
  html body.kasimov-page-privacy,
  html body:not(.kasimov-page-home) {
    background: var(--kasimov-sheet) !important;
    background-color: var(--kasimov-sheet) !important;
  }
  html body.kasimov-has-page-hero,
  html body.kasimov-page-home {
    background: #100e0c !important;
    background-color: #100e0c !important;
  }
  /* After hero, paint sheet color on the page chrome */
  html body.kasimov-has-page-hero #wrapper,
  html body.kasimov-has-page-hero #wrapper.container,
  html body.kasimov-page-rooms #wrapper,
  html body.kasimov-page-about #wrapper,
  html body.kasimov-page-restaurant #wrapper,
  html body.kasimov-page-services #wrapper {
    background: transparent !important;
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* THE SHEET — full bleed, docks into hero */
  html body:not(.kasimov-page-home) #content,
  html body:not(.kasimov-page-home) #content.container,
  html body:not(.kasimov-page-home) section#content,
  html body.kasimov-has-page-hero #content,
  html body.kasimov-has-page-hero #content.container,
  html body.kasimov-page-rooms #content,
  html body.kasimov-page-rooms #content.container,
  html body.kasimov-page-about #content,
  html body.kasimov-page-about #content.container,
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-restaurant #content.container,
  html body.kasimov-page-services #content,
  html body.kasimov-page-services #content.container,
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-contacts #content.container,
  html body.kasimov-page-privacy #content,
  html body.kasimov-page-privacy #content.container,
  html body.kasimov-page-sightseeing #content,
  html body.kasimov-page-sightseeing #content.container {
    position: relative !important;
    z-index: 20 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: -32px 0 0 0 !important;
    padding: 28px var(--kasimov-sheet-pad) 40px !important;
    box-sizing: border-box !important;
    background: var(--kasimov-sheet) !important;
    background-color: var(--kasimov-sheet) !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: var(--kasimov-sheet-radius) var(--kasimov-sheet-radius) 0 0 !important;
    box-shadow: var(--kasimov-sheet-lift) !important;
    overflow: visible !important;
    float: none !important;
    clear: both !important;
  }

  /* Hairline seam at the dock */
  html body.kasimov-has-page-hero #content::before,
  html body.kasimov-page-rooms #content::before,
  html body.kasimov-page-about #content::before,
  html body.kasimov-page-restaurant #content::before,
  html body.kasimov-page-services #content::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 12px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 42px !important;
    height: 4px !important;
    border-radius: 99px !important;
    background: rgba(40, 32, 24, 0.18) !important;
    box-shadow: none !important;
    opacity: 1 !important;
    pointer-events: none !important;
    z-index: 2 !important;
  }

  /* Kill linen / pattern ornaments inside sheet */
  html body:not(.kasimov-page-home) #content::after,
  html body.kasimov-page-rooms #content::after,
  html body.kasimov-page-about #content::after {
    display: none !important;
    content: none !important;
    background: none !important;
  }

  /* Inner article — no nested card */
  html body:not(.kasimov-page-home) #content .item-page,
  html body:not(.kasimov-page-home) #content .blog,
  html body:not(.kasimov-page-home) #content .row,
  html body.kasimov-page-rooms #content .item-page,
  html body.kasimov-page-rooms #content .span8,
  html body.kasimov-page-rooms #content .span9,
  html body.kasimov-page-rooms #content .span12 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  /* Breadcrumb — quiet editorial */
  html body:not(.kasimov-page-home) #content .breadcrumb,
  html body.kasimov-has-page-hero #content .breadcrumb {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 4px 0 !important;
    margin: 8px 0 18px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    font-size: 11px !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--kasimov-sheet-muted) !important;
    opacity: 0.9 !important;
  }
  html body:not(.kasimov-page-home) #content .breadcrumb a {
    color: var(--kasimov-sheet-muted) !important;
    text-decoration: none !important;
  }
  html body:not(.kasimov-page-home) #content .breadcrumb > li + li::before,
  html body:not(.kasimov-page-home) #content .breadcrumb .divider {
    color: rgba(110, 101, 92, 0.45) !important;
    padding: 0 0.45em !important;
  }

  /* Titles */
  html body:not(.kasimov-page-home) #content .page-header,
  html body:not(.kasimov-page-home) #content .item-page .page-header {
    margin: 0 0 14px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
  }
  html body:not(.kasimov-page-home) #content .page-header h2,
  html body:not(.kasimov-page-home) #content h2.article-title,
  html body.kasimov-page-rooms #content .page-header h2 {
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Cormorant Garamond", "Instrument Serif", Georgia, serif !important;
    font-weight: 600 !important;
    font-size: clamp(28px, 7.2vw, 36px) !important;
    line-height: 1.15 !important;
    letter-spacing: 0.01em !important;
    color: var(--kasimov-sheet-ink) !important;
    text-align: center !important;
  }
  html body:not(.kasimov-page-home) #content .page-header h2::before,
  html body:not(.kasimov-page-home) #content .page-header::before,
  html body:not(.kasimov-page-home) #content .page-header h2::after {
    display: none !important;
    content: none !important;
  }

  /* Body copy */
  html body:not(.kasimov-page-home) #content .item-page > p,
  html body:not(.kasimov-page-home) #content .item-page p,
  html body.kasimov-page-rooms #content .item-page p {
    font-family: Manrope, "Open Sans", sans-serif !important;
    font-size: 15.5px !important;
    line-height: 1.65 !important;
    color: #3a342e !important;
    text-align: left !important;
    margin: 0 0 14px !important;
    max-width: 38em !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  html body:not(.kasimov-page-home) #content h3,
  html body.kasimov-page-rooms #content h3 {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    color: var(--kasimov-sheet-ink) !important;
    margin: 26px 0 10px !important;
    text-align: center !important;
    letter-spacing: 0.02em !important;
  }
  html body:not(.kasimov-page-home) #content ul,
  html body.kasimov-page-rooms #content ul {
    margin: 0 auto 18px !important;
    padding: 0 0 0 1.1em !important;
    max-width: 38em !important;
    color: #3a342e !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }
  html body:not(.kasimov-page-home) #content li {
    margin: 0 0 8px !important;
  }

  /* Media: nearly edge-to-edge inside the sheet */
  html body.kasimov-page-rooms #content a[data-lightbox],
  html body.kasimov-page-rooms #content .item-page a[data-lightbox],
  html body.kasimov-page-restaurant #content a[data-lightbox],
  html body.kasimov-page-about #content a[data-lightbox],
  html body:not(.kasimov-page-home) #content .kasimov-gallery-mosaic {
    display: block !important;
    width: calc(100% + (var(--kasimov-sheet-pad) * 2) - 16px) !important;
    max-width: none !important;
    margin-left: calc(-1 * var(--kasimov-sheet-pad) + 8px) !important;
    margin-right: calc(-1 * var(--kasimov-sheet-pad) + 8px) !important;
    margin-bottom: 10px !important;
  }
  /* 2-col gallery: keep grid but bleed */
  html body.kasimov-page-rooms #content .item-page {
    display: flow-root !important;
  }
  html body.kasimov-page-rooms #content a[data-lightbox] {
    float: left !important;
    width: calc(50% + var(--kasimov-sheet-pad) - 12px) !important;
    margin-left: calc(-1 * var(--kasimov-sheet-pad) + 8px) !important;
    margin-right: 8px !important;
    margin-bottom: 8px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
  }
  html body.kasimov-page-rooms #content a[data-lightbox]:nth-of-type(even) {
    margin-left: 0 !important;
    margin-right: calc(-1 * var(--kasimov-sheet-pad) + 8px) !important;
    float: right !important;
    width: calc(50% + var(--kasimov-sheet-pad) - 12px) !important;
  }
  html body.kasimov-page-rooms #content a[data-lightbox] img,
  html body.kasimov-page-rooms #content .item-page img,
  html body:not(.kasimov-page-home) #content .kasimov-gallery-mosaic img,
  html body:not(.kasimov-page-home) #content img.kasimov-gallery-img {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 4 / 3 !important;
    object-fit: cover !important;
    border-radius: 14px !important;
    display: block !important;
    box-shadow: 0 8px 28px rgba(20, 14, 8, 0.12) !important;
  }

  /* Room actions / CTAs */
  html body.kasimov-page-rooms #content .kasimov-room-actions,
  html body:not(.kasimov-page-home) #content .kasimov-room-actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin: 22px 0 8px !important;
    padding: 0 !important;
    max-width: 100% !important;
  }
  html body.kasimov-page-rooms #content .kasimov-room-actions a.btn,
  html body.kasimov-page-rooms #content .kasimov-room-actions .btn,
  html body:not(.kasimov-page-home) #content a.book-button,
  html body:not(.kasimov-page-home) #content .book-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 12px 18px !important;
    border-radius: 12px !important;
    border: 0 !important;
    font-family: Manrope, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    background: #2a221c !important;
    color: #fbf8f3 !important;
    box-shadow: 0 10px 24px rgba(20, 14, 8, 0.16) !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease !important;
  }
  html body.kasimov-page-rooms #content .kasimov-room-actions a.btn:active,
  html body:not(.kasimov-page-home) #content a.book-button:active {
    transform: translateY(1px) scale(0.99) !important;
  }

  /* Home: dock extras as continuous full-bleed chapters */
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: var(--kasimov-sheet-radius) var(--kasimov-sheet-radius) 0 0 !important;
    background: var(--kasimov-sheet) !important;
    box-shadow: var(--kasimov-sheet-lift) !important;
    overflow: hidden !important;
    position: relative !important;
    z-index: 20 !important;
  }
  html body.kasimov-page-home #content::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 12px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 42px !important;
    height: 4px !important;
    border-radius: 99px !important;
    background: rgba(40, 32, 24, 0.18) !important;
    z-index: 5 !important;
    pointer-events: none !important;
  }
  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #kasimov-home-extras,
  html body.kasimov-page-home #extras {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 8px 0 0 !important;
  }
  html body.kasimov-page-home .kasimov-promo-card,
  html body.kasimov-page-home .kasimov-promo-card--v2,
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home #kasimov-home-extras .moduletable {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
    border-bottom: 1px solid var(--kasimov-sheet-line) !important;
    background: transparent !important;
    overflow: hidden !important;
  }
  html body.kasimov-page-home .kasimov-promo-card__media,
  html body.kasimov-page-home .kasimov-side-card__media,
  html body.kasimov-page-home .kasimov-promo-card__media img,
  html body.kasimov-page-home #promo .moduletable img,
  html body.kasimov-page-home #kasimov-home-extras img {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
    margin: 0 !important;
  }
  html body.kasimov-page-home .kasimov-promo-card__body,
  html body.kasimov-page-home #promo .moduletable > div:not(.kasimov-promo-card__media),
  html body.kasimov-page-home .moduletable h3,
  html body.kasimov-page-home .kasimov-promo-card h3 {
    padding-left: var(--kasimov-sheet-pad) !important;
    padding-right: var(--kasimov-sheet-pad) !important;
  }
  html body.kasimov-page-home .kasimov-promo-card__body {
    padding-top: 18px !important;
    padding-bottom: 28px !important;
  }
  html body.kasimov-page-home .kasimov-promo-card h3,
  html body.kasimov-page-home #promo .moduletable h3,
  html body.kasimov-page-home #kasimov-home-extras h3 {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em !important;
    color: var(--kasimov-sheet-ink) !important;
    margin: 0 0 8px !important;
  }
  html body.kasimov-page-home .kasimov-promo-card__body p,
  html body.kasimov-page-home #promo .moduletable p {
    font-family: Manrope, sans-serif !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #4a433c !important;
    margin: 0 0 14px !important;
  }

  /* Footer docks flush under sheet */
  html body:not(.kasimov-page-home) #footer,
  html body:not(.kasimov-page-home) footer#footer,
  html body.kasimov-page-home #footer,
  html body.kasimov-page-home footer#footer {
    margin-top: 0 !important;
    border-radius: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Contacts / privacy without hero — still full-bleed sheet, less lift */
  html body.kasimov-page-contacts #content,
  html body.kasimov-page-privacy #content,
  html body:not(.kasimov-has-page-hero):not(.kasimov-page-home) #content {
    margin-top: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding-top: 18px !important;
  }
  html body.kasimov-page-contacts #content::before,
  html body.kasimov-page-privacy #content::before,
  html body:not(.kasimov-has-page-hero):not(.kasimov-page-home) #content::before {
    display: none !important;
  }

  /* Soft entrance for the sheet */
  @supports (animation-timeline: view()) {
    html body.kasimov-has-page-hero #content {
      animation: none !important;
    }
  }
  html body.kasimov-has-page-hero #content,
  html body.kasimov-page-home #content {
    animation: kasimovSheetDock 0.7s cubic-bezier(0.22, 1, 0.36, 1) both !important;
  }
}

@keyframes kasimovSheetDock {
  from {
    opacity: 0.72;
    transform: translate3d(0, 18px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  html body.kasimov-has-page-hero #content,
  html body.kasimov-page-home #content {
    animation: none !important;
  }
}


/* === BATCH101b docked sheet force === */
@media only screen and (max-width: 979px) {
  /* Beat legacy :not(.home) #content { margin:12px auto; width:calc(100%-24px) } */
  html body:not(.kasimov-page-home).kasimov-has-page-hero #content,
  html body:not(.kasimov-page-home).kasimov-has-page-hero #content.container,
  html body:not(.kasimov-page-home).kasimov-has-page-hero section#content,
  html body:not(.kasimov-page-home).kasimov-page-rooms #content,
  html body:not(.kasimov-page-home).kasimov-page-rooms #content.container,
  html body:not(.kasimov-page-home).kasimov-page-about #content,
  html body:not(.kasimov-page-home).kasimov-page-about #content.container,
  html body:not(.kasimov-page-home).kasimov-page-restaurant #content,
  html body:not(.kasimov-page-home).kasimov-page-restaurant #content.container,
  html body:not(.kasimov-page-home).kasimov-page-services #content,
  html body:not(.kasimov-page-home).kasimov-page-services #content.container,
  html body:not(.kasimov-page-home).kasimov-page-sightseeing #content,
  html body:not(.kasimov-page-home).kasimov-page-sightseeing #content.container,
  html body.kasimov-page-rooms.kasimov-has-page-hero #content,
  html body.kasimov-page-rooms.kasimov-has-page-hero #content.container,
  html body.kasimov-page-about.kasimov-has-page-hero #content,
  html body.kasimov-page-restaurant.kasimov-has-page-hero #content,
  html body.kasimov-page-services.kasimov-has-page-hero #content {
    width: 100vw !important;
    max-width: 100vw !important;
    min-width: 100% !important;
    margin: -36px 0 0 0 !important;
    margin-top: -36px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    padding: 30px 20px 44px !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    left: 0 !important;
    right: 0 !important;
    position: relative !important;
    box-sizing: border-box !important;
    background: #fbf8f3 !important;
    background-color: #fbf8f3 !important;
    background-image: none !important;
    border-radius: 28px 28px 0 0 !important;
    box-shadow: 0 -22px 54px rgba(8, 6, 4, 0.34) !important;
    overflow-x: clip !important;
  }

  /* Dock grabber */
  html body:not(.kasimov-page-home).kasimov-has-page-hero #content::before,
  html body.kasimov-page-rooms.kasimov-has-page-hero #content::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 11px !important;
    left: 50% !important;
    width: 40px !important;
    height: 4px !important;
    margin-left: -20px !important;
    border-radius: 99px !important;
    background: rgba(40, 32, 24, 0.2) !important;
    z-index: 3 !important;
    pointer-events: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  /* Gallery: clean 2-col mosaic, slight inset — no broken floats */
  html body.kasimov-page-rooms #content a[data-lightbox],
  html body.kasimov-page-rooms.kasimov-has-page-hero #content a[data-lightbox],
  html body.kasimov-page-rooms #content .item-page a[data-lightbox] {
    float: left !important;
    clear: none !important;
    display: block !important;
    width: calc(50% - 5px) !important;
    max-width: calc(50% - 5px) !important;
    margin: 0 10px 10px 0 !important;
    margin-left: 0 !important;
    margin-right: 10px !important;
    padding: 0 !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    box-shadow: 0 10px 28px rgba(20, 14, 8, 0.12) !important;
  }
  html body.kasimov-page-rooms #content a[data-lightbox]:nth-of-type(even),
  html body.kasimov-page-rooms.kasimov-has-page-hero #content a[data-lightbox]:nth-of-type(even) {
    margin-right: 0 !important;
  }
  html body.kasimov-page-rooms #content a[data-lightbox] img,
  html body.kasimov-page-rooms #content .item-page a[data-lightbox] img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    border-radius: 14px !important;
    display: block !important;
    margin: 0 !important;
  }
  /* Clear floats before headings/lists */
  html body.kasimov-page-rooms #content .item-page h3,
  html body.kasimov-page-rooms #content .item-page ul,
  html body.kasimov-page-rooms #content .item-page > p,
  html body.kasimov-page-rooms #content .kasimov-room-actions {
    clear: both !important;
  }

  /* Home sheet dock — BATCH155: no lift over hero */
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container,
  html body.kasimov-page-home section#content {
    width: 100vw !important;
    max-width: 100vw !important;
    margin: 0 !important;
    margin-top: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: #fbf8f3 !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  /* Stage: dark only while hero shows; sheet color after */
  html body:not(.kasimov-page-home).kasimov-has-page-hero {
    background: #100e0c !important;
  }
}


/* === BATCH101c home fullbleed chapters === */
@media only screen and (max-width: 979px) {
  /* Kill floating-card gutters on home promo modules */
  html body.kasimov-page-home #content #promo,
  html body.kasimov-page-home #content #promo.row,
  html body.kasimov-page-home #content #kasimov-home-extras,
  html body.kasimov-page-home #content #extras,
  html body.kasimov-page-home #promo > .moduletable,
  html body.kasimov-page-home #promo > .moduletable.span4,
  html body.kasimov-page-home #kasimov-home-extras > .moduletable,
  html body.kasimov-page-home #kasimov-home-extras > .moduletable.span4,
  html body.kasimov-page-home .kasimov-promo-card,
  html body.kasimov-page-home .kasimov-promo-card--v2,
  html body.kasimov-page-home .kasimov-promo-card.kasimov-reveal,
  html body.kasimov-page-home #content .kasimov-promo-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    left: 0 !important;
    right: 0 !important;
    float: none !important;
    clear: both !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    overflow: hidden !important;
  }

  html body.kasimov-page-home .kasimov-promo-card__media,
  html body.kasimov-page-home .kasimov-side-card__media,
  html body.kasimov-page-home .kasimov-promo-card__media img,
  html body.kasimov-page-home .kasimov-side-card__media img,
  html body.kasimov-page-home #promo .moduletable img,
  html body.kasimov-page-home #kasimov-home-extras img,
  html body.kasimov-page-home #promo .moduletable > a,
  html body.kasimov-page-home #promo .moduletable > p {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    float: none !important;
  }

  /* Chapter rhythm: media edge-to-edge, text padded, hairline divider */
  html body.kasimov-page-home .kasimov-promo-card__body,
  html body.kasimov-page-home #promo .moduletable .custom,
  html body.kasimov-page-home #kasimov-home-extras .moduletable .custom {
    padding: 20px 22px 28px !important;
    margin: 0 !important;
    background: transparent !important;
  }
  html body.kasimov-page-home #promo > .moduletable + .moduletable,
  html body.kasimov-page-home .kasimov-promo-card + .kasimov-promo-card,
  html body.kasimov-page-home #promo > .moduletable {
    border-bottom: 1px solid rgba(40, 32, 24, 0.08) !important;
  }

  /* First chapter soft top pad under grabber */
  html body.kasimov-page-home #promo > .moduletable:first-child,
  html body.kasimov-page-home #content #promo {
    padding-top: 18px !important;
  }
  html body.kasimov-page-home #promo > .moduletable:first-child .kasimov-promo-card__media,
  html body.kasimov-page-home #promo > .moduletable:first-child img {
    border-radius: 18px 18px 0 0 !important;
  }

  /* Span bootstrap columns → full width */
  html body.kasimov-page-home #promo .span4,
  html body.kasimov-page-home #promo .span6,
  html body.kasimov-page-home #promo .span12,
  html body.kasimov-page-home #kasimov-home-extras .span4 {
    width: 100% !important;
    margin-left: 0 !important;
    float: none !important;
  }
}


/* === BATCH101d home gutter kill === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #promo .moduletable_content,
  html body.kasimov-page-home #promo .moduletable_content.clearfix,
  html body.kasimov-page-home #promo .custom,
  html body.kasimov-page-home #promo .moduletable .custom,
  html body.kasimov-page-home #kasimov-home-extras .moduletable_content,
  html body.kasimov-page-home #kasimov-home-extras .custom,
  html body.kasimov-page-home #extras .moduletable_content,
  html body.kasimov-page-home #extras .custom {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background: transparent !important;
  }

  html body.kasimov-page-home #promo .kasimov-promo-card,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #promo .custom > .kasimov-promo-card,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card--v2 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    left: 0 !important;
    box-sizing: border-box !important;
  }

  html body.kasimov-page-home #promo .kasimov-promo-card__media,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #promo .kasimov-promo-card__media img {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
  }

  /* Text pad only — media stays edge-to-edge */
  html body.kasimov-page-home #promo .kasimov-promo-card__body,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2 .kasimov-promo-card__body,
  html body.kasimov-page-home #kasimov-home-extras .kasimov-promo-card__body {
    padding: 20px 22px 28px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
}


/* === BATCH101e home fullbleed media === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #content #promo .moduletable > div,
  html body.kasimov-page-home #content #promo .moduletable > div:not(.kasimov-promo-card__media),
  html body.kasimov-page-home #content #promo .moduletable_content,
  html body.kasimov-page-home #content #promo .moduletable_content.clearfix,
  html body.kasimov-page-home #content #promo .custom,
  html body.kasimov-page-home #content #promo .moduletable .custom,
  html body.kasimov-page-home #content #kasimov-home-extras .moduletable > div,
  html body.kasimov-page-home #content #kasimov-home-extras .moduletable_content,
  html body.kasimov-page-home #content #kasimov-home-extras .custom {
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }

  html body.kasimov-page-home #content #promo .kasimov-promo-card,
  html body.kasimov-page-home #content #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #content #promo .custom > .kasimov-promo-card--v2 {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }

  html body.kasimov-page-home #content #promo .kasimov-promo-card__media,
  html body.kasimov-page-home #content #promo .kasimov-promo-card--v2 .kasimov-promo-card__media,
  html body.kasimov-page-home #content #promo .kasimov-promo-card__media img,
  html body.kasimov-page-home #content #promo .kasimov-promo-swipe {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
    left: 0 !important;
  }

  html body.kasimov-page-home #content #promo .kasimov-promo-card__body,
  html body.kasimov-page-home #content #promo .kasimov-promo-card--v2 .kasimov-promo-card__body {
    padding: 20px 22px 28px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* First chapter: soft radius under sheet grabber only */
  html body.kasimov-page-home #content #promo > .moduletable:first-child .kasimov-promo-card__media,
  html body.kasimov-page-home #content #promo > .moduletable:first-child .kasimov-promo-card__media img {
    border-radius: 20px 20px 0 0 !important;
  }
}


/* === BATCH102 center restaurant + services === */
html body.kasimov-page-restaurant #content,
html body.kasimov-page-restaurant #content.container,
html body.kasimov-page-services #content,
html body.kasimov-page-services #content.container {
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
}

html body.kasimov-page-restaurant #content .row,
html body.kasimov-page-services #content .row,
html body.kasimov-page-restaurant #content .row-fluid,
html body.kasimov-page-services #content .row-fluid {
  margin-left: 0 !important;
  margin-right: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
}

html body.kasimov-page-restaurant #content .item-page,
html body.kasimov-page-services #content .item-page,
html body.kasimov-page-restaurant #content .span8,
html body.kasimov-page-restaurant #content .span9,
html body.kasimov-page-restaurant #content .span12,
html body.kasimov-page-services #content .span8,
html body.kasimov-page-services #content .span9,
html body.kasimov-page-services #content .span12 {
  float: none !important;
  width: 100% !important;
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  text-align: center !important;
}

html body.kasimov-page-restaurant #content .page-header,
html body.kasimov-page-services #content .page-header,
html body.kasimov-page-restaurant #content .page-header h2,
html body.kasimov-page-services #content .page-header h2,
html body.kasimov-page-restaurant #content .breadcrumb,
html body.kasimov-page-services #content .breadcrumb {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  float: none !important;
  justify-content: center !important;
}

html body.kasimov-page-restaurant #content .item-page p,
html body.kasimov-page-services #content .item-page p,
html body.kasimov-page-restaurant #content p,
html body.kasimov-page-services #content p {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 42em !important;
  float: none !important;
}

html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
html body.kasimov-page-services #content .kasimov-gallery-mosaic,
html body.kasimov-page-restaurant #content .kasimov-svc-grid,
html body.kasimov-page-services #content .kasimov-svc-grid {
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  text-align: center !important;
}

html body.kasimov-page-restaurant #content a[data-lightbox],
html body.kasimov-page-services #content a[data-lightbox] {
  float: none !important;
  display: inline-block !important;
  vertical-align: top !important;
  margin: 8px !important;
}

html body.kasimov-page-restaurant .kasimov-chef,
html body.kasimov-page-restaurant .kasimov-chef-block,
html body.kasimov-page-restaurant [class*="kasimov-chef"] {
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  text-align: center !important;
  max-width: 920px !important;
}

html body.kasimov-page-services .kasimov-svc-block,
html body.kasimov-page-services .kasimov-svc-block > h3 {
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  float: none !important;
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-restaurant #content,
  html body.kasimov-page-restaurant #content.container,
  html body.kasimov-page-services #content,
  html body.kasimov-page-services #content.container {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  html body.kasimov-page-restaurant #content .row,
  html body.kasimov-page-services #content .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* === BATCH103 gallery photo gaps === */
/* Photos were sticking together after sheet/float overrides. */
html body.kasimov-page-rooms #content a[data-lightbox],
html body.kasimov-page-rooms #content .item-page a[data-lightbox],
html body.kasimov-page-rooms.kasimov-has-page-hero #content a[data-lightbox],
html body.kasimov-page-restaurant #content a[data-lightbox],
html body.kasimov-page-about #content a[data-lightbox],
html body.kasimov-page-services #content a[data-lightbox],
html body.kasimov-page-sightseeing #content a[data-lightbox] {
  box-sizing: border-box !important;
}

/* Rooms: CSS grid mosaic instead of broken floats */
html body.kasimov-page-rooms #content .item-page {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: start !important;
}
html body.kasimov-page-rooms #content .item-page > .page-header,
html body.kasimov-page-rooms #content .item-page > .breadcrumb,
html body.kasimov-page-rooms #content .item-page > h2,
html body.kasimov-page-rooms #content .item-page > h3,
html body.kasimov-page-rooms #content .item-page > p,
html body.kasimov-page-rooms #content .item-page > ul,
html body.kasimov-page-rooms #content .item-page > ol,
html body.kasimov-page-rooms #content .item-page > .kasimov-room-actions,
html body.kasimov-page-rooms #content .item-page > .article-info,
html body.kasimov-page-rooms #content .item-page > hr,
html body.kasimov-page-rooms #content .item-page > .icons {
  grid-column: 1 / -1 !important;
}
html body.kasimov-page-rooms #content a[data-lightbox],
html body.kasimov-page-rooms #content .item-page a[data-lightbox],
html body.kasimov-page-rooms.kasimov-has-page-hero #content a[data-lightbox] {
  float: none !important;
  clear: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
html body.kasimov-page-rooms #content a[data-lightbox] img,
html body.kasimov-page-rooms #content .item-page a[data-lightbox] img,
html body.kasimov-page-rooms #content .item-page > img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 14px !important;
}

/* Restaurant / about mosaics */
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
html body.kasimov-page-about #content .kasimov-about-gallery,
html body.kasimov-page-about #content .kasimov-gallery-mosaic,
html body.kasimov-page-services #content .kasimov-gallery-mosaic {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)) !important;
  gap: 14px !important;
  margin: 16px auto !important;
  width: 100% !important;
  max-width: 100% !important;
}
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic a,
html body.kasimov-page-restaurant #content a[data-lightbox],
html body.kasimov-page-about #content a[data-lightbox],
html body.kasimov-page-services #content a[data-lightbox],
html body.kasimov-page-services #content img.kasimov-gallery-img {
  float: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
}
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic img,
html body.kasimov-page-restaurant #content a[data-lightbox] img,
html body.kasimov-page-about #content a[data-lightbox] img,
html body.kasimov-page-about #content .kasimov-about-gallery img,
html body.kasimov-page-services #content img.kasimov-gallery-img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 14px !important;
}

/* Services card media spacing */
html body.kasimov-page-services .kasimov-svc-block,
html body.kasimov-page-services .kasimov-svc-grid {
  gap: 18px !important;
}
html body.kasimov-page-services .kasimov-svc-block + .kasimov-svc-block {
  margin-top: 28px !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-rooms #content .item-page {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
  html body.kasimov-page-about #content .kasimov-about-gallery,
  html body.kasimov-page-about #content .kasimov-gallery-mosaic {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}

@media only screen and (min-width: 980px) {
  html body.kasimov-page-rooms #content .item-page {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}


/* === BATCH103b gallery mosaic gaps === */
/* Undo broken item-page grid; gap the real mosaic containers */
html body.kasimov-page-rooms #content .item-page,
html body.kasimov-page-restaurant #content .item-page,
html body.kasimov-page-about #content .item-page,
html body.kasimov-page-services #content .item-page {
  display: block !important;
  grid-template-columns: none !important;
  gap: normal !important;
}

html body #content .kasimov-gallery-mosaic,
html body.kasimov-page-rooms #content .kasimov-gallery-mosaic,
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
html body.kasimov-page-about #content .kasimov-gallery-mosaic,
html body.kasimov-page-about #content .kasimov-about-gallery,
html body.kasimov-page-services #content .kasimov-gallery-mosaic {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 16px auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

html body #content .kasimov-gallery-mosaic > a,
html body #content .kasimov-gallery-mosaic a[data-lightbox],
html body.kasimov-page-rooms #content .kasimov-gallery-mosaic a[data-lightbox],
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic a,
html body.kasimov-page-about #content .kasimov-gallery-mosaic a,
html body.kasimov-page-about #content .kasimov-about-gallery a,
html body.kasimov-page-services #content a[data-lightbox] {
  float: none !important;
  clear: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body #content .kasimov-gallery-mosaic img,
html body #content .kasimov-gallery-mosaic a[data-lightbox] img,
html body.kasimov-page-rooms #content .kasimov-gallery-mosaic img,
html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic img,
html body.kasimov-page-about #content .kasimov-about-gallery img,
html body.kasimov-page-services #content img.kasimov-gallery-img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 14px !important;
}

/* Loose lightbox links outside mosaic (fallback) */
html body.kasimov-page-rooms #content .item-page > a[data-lightbox],
html body.kasimov-page-restaurant #content .item-page > a[data-lightbox],
html body.kasimov-page-about #content .item-page > a[data-lightbox] {
  display: inline-block !important;
  width: calc(50% - 8px) !important;
  max-width: calc(50% - 8px) !important;
  margin: 0 8px 14px 0 !important;
  float: none !important;
  vertical-align: top !important;
}

@media only screen and (min-width: 980px) {
  html body #content .kasimov-gallery-mosaic,
  html body.kasimov-page-rooms #content .kasimov-gallery-mosaic,
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
  html body.kasimov-page-about #content .kasimov-gallery-mosaic,
  html body.kasimov-page-about #content .kasimov-about-gallery {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

@media only screen and (max-width: 979px) {
  html body #content .kasimov-gallery-mosaic,
  html body.kasimov-page-rooms #content .kasimov-gallery-mosaic,
  html body.kasimov-page-restaurant #content .kasimov-gallery-mosaic,
  html body.kasimov-page-about #content .kasimov-about-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}

/* === BATCH100 header chrome + no amenities === */
/* Hide green book CTA everywhere */
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Hide informational amenity chips on all heroes */
html body .kasimov-hero-amenities,
html body .kasimov-page-hero__amenities,
html body .kasimov-hero-amenities *,
html body.kasimov-hero-has-amenities .kasimov-hero-amenities {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Top chrome: logo left, social right (former book position) */
html body .kasimov-header-actions {
  position: fixed !important;
  top: 12px !important;
  left: 12px !important;
  right: 12px !important;
  width: auto !important;
  max-width: none !important;
  height: 48px !important;
  z-index: 2147483000 !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
  background: transparent !important;
  box-shadow: none !important;
}
html body .kasimov-header-actions a,
html body .kasimov-header-actions button {
  pointer-events: auto !important;
}
html body .kasimov-header-brand,
html body #kasimov-header-brand {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-width: 0 !important;
  max-width: min(46vw, 220px) !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: auto !important;
}
html body .kasimov-header-brand #logo,
html body #kasimov-header-brand #logo,
html body .kasimov-header-brand .kasimov-header-logo,
html body #kasimov-header-brand a {
  display: flex !important;
  align-items: center !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  background: transparent !important;
}
html body .kasimov-header-brand #logo img,
html body #kasimov-header-brand #logo img,
html body .kasimov-header-brand img {
  display: block !important;
  width: auto !important;
  height: 40px !important;
  max-height: 40px !important;
  max-width: min(42vw, 180px) !important;
  object-fit: contain !important;
  filter: none !important;
}
html body .kasimov-header-social {
  position: static !important;
  top: auto !important;
  right: auto !important;
  left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  height: 42px !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  pointer-events: auto !important;
}
html body .kasimov-header-social__link {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  min-height: 42px !important;
  border-radius: 4px !important;
  background: rgba(20, 24, 28, 0.55) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.28) !important;
  overflow: hidden !important;
}
html body .kasimov-header-social__link img {
  width: 28px !important;
  height: 28px !important;
  object-fit: contain !important;
  display: block !important;
}
html body .kasimov-header-social__link--mail img {
  width: 30px !important;
  height: 30px !important;
}

/* Do not keep a second logo in hero / old header slot */
html body.kasimov-chrome100 #iceslideshow > #logo,
html body.kasimov-chrome100 #headerimage > #logo {
  display: none !important;
}
html body.kasimov-chrome100 #header > .container > .row > #logo:not(.kasimov-header-brand #logo) {
  /* if logo moved, original empty shell stays hidden */
}
html body.kasimov-chrome100 #header #logo.kasimov-logo-moved-away {
  display: none !important;
}

/* Drop phones / address / menu a bit below the fixed chrome */
html body.kasimov-chrome100 #header {
  padding-top: 64px !important;
}
html body.kasimov-chrome100 #header #notice,
html body.kasimov-chrome100 #header .kasimov-contacts {
  margin-top: 8px !important;
}
html body.kasimov-chrome100 #mainmenu {
  margin-top: 10px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 #header {
    padding-top: 58px !important;
  }
  html body.kasimov-chrome100 #mainmenu {
    margin-top: 12px !important;
  }
  html body .kasimov-header-brand #logo img,
  html body #kasimov-header-brand #logo img,
  html body .kasimov-header-brand img {
    height: 34px !important;
    max-height: 34px !important;
  }
}

/* === BATCH100b chrome spacing === */
html body.kasimov-chrome100 #header,
html body.kasimov-chrome100 #header.container,
html body.kasimov-chrome100 header#header {
  padding-top: 72px !important;
  margin-top: 0 !important;
}
html body.kasimov-chrome100 #header > .container,
html body.kasimov-chrome100 #header .row {
  padding-top: 0 !important;
}
html body.kasimov-chrome100 #header #notice,
html body.kasimov-chrome100 #header .kasimov-contacts,
html body.kasimov-chrome100 #header .kasimov-contacts--cluster {
  margin-top: 14px !important;
  padding-top: 0 !important;
}
html body.kasimov-chrome100 #mainmenu,
html body.kasimov-chrome100 #header #mainmenu,
html body.kasimov-chrome100 #icemegamenu,
html body.kasimov-chrome100 nav#mainmenu {
  margin-top: 18px !important;
  padding-top: 6px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 #header,
  html body.kasimov-chrome100 #header.container,
  html body.kasimov-chrome100 header#header {
    padding-top: 64px !important;
  }
  html body.kasimov-chrome100 #mainmenu,
  html body.kasimov-chrome100 #header #mainmenu {
    margin-top: 16px !important;
  }
}

/* === BATCH100c notice below chrome === */
html body.kasimov-chrome100 #notice,
html body.kasimov-chrome100 #iceslideshow #notice,
html body.kasimov-chrome100 #headerimage #notice,
html body.kasimov-chrome100 .kasimov-hero-contacts,
html body.kasimov-chrome100 #iceslideshow .kasimov-hero-contacts {
  top: 78px !important;
  margin-top: 0 !important;
}
html body.kasimov-chrome100 #iceslideshow #notice.span4,
html body.kasimov-chrome100 #notice.kasimov-hero-contacts {
  top: 78px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 #notice,
  html body.kasimov-chrome100 #iceslideshow #notice,
  html body.kasimov-chrome100 .kasimov-hero-contacts,
  html body.kasimov-chrome100 #iceslideshow .kasimov-hero-contacts {
    top: 70px !important;
  }
}

/* === BATCH100d mobile logo chrome === */
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 .kasimov-header-actions {
    top: 10px !important;
    left: 10px !important;
    right: 10px !important;
    height: 44px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body.kasimov-chrome100 #kasimov-header-brand {
    max-width: min(48vw, 140px) !important;
    height: 44px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo,
  html body.kasimov-chrome100 #kasimov-header-brand #logo,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    inset: auto !important;
    float: none !important;
    margin: 0 !important;
    width: auto !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    z-index: 1 !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img {
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
    max-width: 120px !important;
    object-fit: contain !important;
    display: block !important;
  }
  /* Never keep a big centered logo in the hero on mobile */
  html body.kasimov-chrome100 #iceslideshow > #logo:not(.kasimov-logo-in-header),
  html body.kasimov-chrome100 #iceslideshow #logo:not(.kasimov-logo-in-header) {
    display: none !important;
  }
}

/* === BATCH100e logo size + lower chrome === */
html body.kasimov-chrome100 .kasimov-header-actions {
  height: 128px !important;
  align-items: center !important;
}
html body.kasimov-chrome100 .kasimov-header-brand,
html body.kasimov-chrome100 #kasimov-header-brand {
  max-width: min(52vw, 280px) !important;
  height: 128px !important;
}
html body.kasimov-chrome100 .kasimov-header-brand #logo img,
html body.kasimov-chrome100 #kasimov-header-brand #logo img,
html body.kasimov-chrome100 #logo.kasimov-logo-in-header img,
html body.kasimov-chrome100 .kasimov-header-brand img {
  height: 120px !important;
  max-height: 120px !important;
  width: auto !important;
  max-width: min(48vw, 260px) !important;
  object-fit: contain !important;
}
html body.kasimov-chrome100 #notice,
html body.kasimov-chrome100 #iceslideshow #notice,
html body.kasimov-chrome100 .kasimov-hero-contacts,
html body.kasimov-chrome100 #iceslideshow .kasimov-hero-contacts,
html body.kasimov-chrome100 #iceslideshow #notice.span4,
html body.kasimov-chrome100 #notice.kasimov-hero-contacts {
  top: 146px !important;
}
html body.kasimov-chrome100 #header {
  padding-top: 140px !important;
}
html body.kasimov-chrome100 #mainmenu,
html body.kasimov-chrome100 #header #mainmenu {
  margin-top: 28px !important;
  padding-top: 10px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 .kasimov-header-actions {
    top: 8px !important;
    left: 8px !important;
    right: 8px !important;
    height: 108px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body.kasimov-chrome100 #kasimov-header-brand {
    max-width: min(58vw, 200px) !important;
    height: 108px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img,
  html body.kasimov-chrome100 .kasimov-header-brand img {
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
    max-width: min(55vw, 190px) !important;
  }
  html body.kasimov-chrome100 #notice,
  html body.kasimov-chrome100 #iceslideshow #notice,
  html body.kasimov-chrome100 .kasimov-hero-contacts,
  html body.kasimov-chrome100 #iceslideshow .kasimov-hero-contacts,
  html body.kasimov-chrome100 #iceslideshow #notice.span4,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts {
    top: 122px !important;
  }
  html body.kasimov-chrome100 #header {
    padding-top: 116px !important;
  }
  html body.kasimov-chrome100 #mainmenu,
  html body.kasimov-chrome100 #header #mainmenu {
    margin-top: 40px !important;
    padding-top: 12px !important;
  }
}

/* === BATCH100g menu under icons === */
html body .kasimov-header-rail {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: stretch !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  gap: 6px !important;
  pointer-events: auto !important;
  height: 120px !important;
  min-height: 120px !important;
}
html body .kasimov-header-rail .kasimov-header-social {
  margin: 0 !important;
  height: 42px !important;
  justify-content: flex-end !important;
}
html body .kasimov-header-menu-slot {
  display: none;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 1 auto !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 .kasimov-header-actions {
    align-items: flex-start !important;
    height: auto !important;
    min-height: 96px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-rail {
    height: 96px !important;
    min-height: 96px !important;
    width: auto !important;
    min-width: 148px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-menu-slot {
    display: flex !important;
    align-items: stretch !important;
    height: 48px !important;
    min-height: 48px !important;
  }

  /* Menu button under icons — no full-width black strip */
  html body.kasimov-menu-in-rail #mainmenu .mobile-nav-toggle,
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle {
    display: inline-flex !important;
    width: 100% !important;
    min-width: 148px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
    padding: 0 12px !important;
    border-radius: 6px !important;
    background: rgba(20, 24, 28, 0.55) !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.28) !important;
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
  }
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle .mobile-nav-label {
    color: #fff !important;
  }
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle .mobile-nav-icon span {
    background: #fff !important;
  }

  /* Kill the old full-width menu strip / black bar */
  html body.kasimov-menu-in-rail #mainmenu,
  html body.kasimov-menu-in-rail #header #mainmenu,
  html body.kasimov-menu-in-rail #mainmenu .container {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: 0 !important;
    overflow: visible !important;
    border: 0 !important;
  }
  html body.kasimov-menu-in-rail #mainmenu:not(.is-open) {
    height: 0 !important;
    min-height: 0 !important;
  }
  html body.kasimov-menu-in-rail #mainmenu .container > .mobile-nav-toggle {
    display: none !important; /* only the one in slot */
  }

  /* Open dropdown floats below rail */
  html body.kasimov-menu-in-rail #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-menu-in-rail #mainmenu.is-open ul.nav.menu {
    display: block !important;
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    z-index: 2147483001 !important;
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.28) !important;
    max-height: 55vh !important;
    overflow: auto !important;
    margin: 0 !important;
    padding: 8px 0 !important;
  }
}

/* === BATCH100h thematic menu button === */
@media only screen and (max-width: 979px) {
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle,
  html body.kasimov-menu-in-rail #mainmenu .mobile-nav-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
    min-width: 148px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    margin: 0 !important;
    padding: 0 14px 0 16px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(212, 184, 122, 0.85) !important;
    background:
      linear-gradient(180deg, rgba(255, 236, 190, 0.18) 0%, transparent 42%),
      linear-gradient(135deg, #6e1414 0%, #8a1c1c 48%, #5c1010 100%) !important;
    box-shadow:
      0 1px 0 rgba(255, 230, 170, 0.28) inset,
      0 -1px 0 rgba(0, 0, 0, 0.22) inset,
      0 10px 22px rgba(40, 12, 12, 0.38) !important;
    color: #f7f1e4 !important;
    font-family: "Cormorant Garamond", "Times New Roman", Georgia, serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    text-shadow: 0 1px 0 rgba(0, 0, 0, 0.35) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transition: filter .18s ease, box-shadow .18s ease, transform .18s ease !important;
  }

  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle:hover,
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle:focus-visible {
    filter: brightness(1.06) !important;
    box-shadow:
      0 1px 0 rgba(255, 230, 170, 0.36) inset,
      0 -1px 0 rgba(0, 0, 0, 0.22) inset,
      0 12px 26px rgba(40, 12, 12, 0.45) !important;
  }

  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle[aria-expanded="true"],
  html body.kasimov-menu-in-rail #mainmenu.is-open .kasimov-header-menu-slot .mobile-nav-toggle {
    background:
      linear-gradient(180deg, rgba(255, 236, 190, 0.12) 0%, transparent 40%),
      linear-gradient(135deg, #4e0e0e 0%, #6e1414 55%, #3d0a0a 100%) !important;
    border-color: rgba(232, 205, 140, 0.95) !important;
  }

  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle .mobile-nav-label {
    color: #f7f1e4 !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: inherit !important;
    text-transform: inherit !important;
    line-height: 1 !important;
  }

  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle .mobile-nav-icon {
    display: inline-flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 4px !important;
    width: 18px !important;
    height: 14px !important;
    flex-shrink: 0 !important;
  }

  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle .mobile-nav-icon span {
    display: block !important;
    width: 100% !important;
    height: 2px !important;
    border-radius: 1px !important;
    background: linear-gradient(90deg, #e8cd8c 0%, #c9a96e 55%, #f0dfa8 100%) !important;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25) !important;
  }
}

/* === BATCH100i menu click + readable contacts === */
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 #notice,
  html body.kasimov-chrome100 #iceslideshow #notice,
  html body.kasimov-chrome100 .kasimov-hero-contacts,
  html body.kasimov-chrome100 #iceslideshow .kasimov-hero-contacts,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts {
    background: rgba(12, 8, 6, 0.55) !important;
    border: 1px solid rgba(232, 205, 140, 0.35) !important;
    border-radius: 10px !important;
    padding: 8px 12px !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.35) !important;
    backdrop-filter: blur(6px) !important;
    -webkit-backdrop-filter: blur(6px) !important;
    max-width: calc(100vw - 24px) !important;
  }
  html body.kasimov-chrome100 #notice .kasimov-contacts,
  html body.kasimov-chrome100 .kasimov-hero-contacts .kasimov-contacts,
  html body.kasimov-chrome100 #notice .kasimov-contacts--cluster {
    gap: 6px !important;
  }
  html body.kasimov-chrome100 #notice a,
  html body.kasimov-chrome100 #notice .kasimov-contacts a,
  html body.kasimov-chrome100 .kasimov-hero-contacts a,
  html body.kasimov-chrome100 #notice span,
  html body.kasimov-chrome100 .kasimov-hero-contacts span {
    color: #fff8ec !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    text-shadow:
      0 1px 2px rgba(0, 0, 0, 0.85),
      0 0 10px rgba(0, 0, 0, 0.45) !important;
    -webkit-text-fill-color: #fff8ec !important;
  }
  html body.kasimov-chrome100 #notice .kasimov-ico,
  html body.kasimov-chrome100 .kasimov-hero-contacts .kasimov-ico {
    color: #e8cd8c !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.7)) !important;
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0 !important;
  }

  html body.kasimov-menu-in-rail #mainmenu.is-open {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
  }
  html body.kasimov-menu-in-rail #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-menu-in-rail #mainmenu.is-open ul.nav.menu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: fixed !important;
    left: 12px !important;
    right: 12px !important;
    z-index: 2147483001 !important;
    background: #fff !important;
    border-radius: 10px !important;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28) !important;
    max-height: 55vh !important;
    overflow: auto !important;
    margin: 0 !important;
    padding: 8px 0 !important;
  }
  html body.kasimov-menu-in-rail #mainmenu.is-open ul#icemegamenu > li > a,
  html body.kasimov-menu-in-rail #mainmenu.is-open ul.nav.menu > li > a {
    display: block !important;
    padding: 12px 16px !important;
    color: #2a2420 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
  }
}

/* === BATCH100j contacts + menu close === */
@media only screen and (max-width: 979px) {
  /* Hide dropdown hard when closed (clears leftover inline display:block) */
  html body.kasimov-menu-in-rail #mainmenu:not(.is-open) ul#icemegamenu,
  html body.kasimov-menu-in-rail #mainmenu:not(.is-open) ul.nav.menu,
  html body.kasimov-menu-in-rail #mainmenu:not(.is-open) .container > ul {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* Stronger, higher-specificity contact panel */
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.span4,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-chrome100 #iceslideshow #notice.kasimov-hero-contacts.span4,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts {
    background: rgba(10, 6, 4, 0.72) !important;
    background-color: rgba(10, 6, 4, 0.72) !important;
    border: 1px solid rgba(232, 205, 140, 0.45) !important;
    border-radius: 10px !important;
    padding: 9px 12px !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
  }
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice a,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice .kasimov-contacts a,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice span,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts a,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts span {
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.01em !important;
    text-shadow:
      0 1px 2px rgba(0, 0, 0, 0.95),
      0 0 12px rgba(0, 0, 0, 0.55) !important;
  }
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice .kasimov-ico,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts .kasimov-ico {
    color: #f0d58a !important;
    width: 17px !important;
    height: 17px !important;
    filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.8)) !important;
  }
}

/* === BATCH100m polish === */
/* Social icons: no chip background */
html body .kasimov-header-social__link,
html body .kasimov-header-rail .kasimov-header-social__link,
html body.kasimov-chrome100 .kasimov-header-social__link {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
html body .kasimov-header-social__link:hover,
html body .kasimov-header-social__link:focus {
  background: transparent !important;
  transform: none !important;
  filter: brightness(1.08) !important;
}
html body .kasimov-header-social__link img {
  filter: none !important;
  opacity: 1 !important;
  width: 42px !important;
  height: 42px !important;
}
@media only screen and (max-width: 979px) {
  html body .kasimov-header-social__link img {
    width: 36px !important;
    height: 36px !important;
  }

  /* Logo: no fade/blink */
  html body.kasimov-chrome100 #logo,
  html body.kasimov-chrome100 #logo img,
  html body.kasimov-chrome100 .kasimov-header-brand img {
    transition: none !important;
    animation: none !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* Contacts full-width above sticky booking bar */
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky,
  html body.kasimov-chrome100 .kasimov-hero-contacts.kasimov-contacts-sticky {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-radius: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
    border-top: 1px solid rgba(232, 205, 140, 0.4) !important;
    padding: 10px 14px !important;
    background: rgba(10, 6, 4, 0.82) !important;
    background-color: rgba(10, 6, 4, 0.82) !important;
    box-shadow: 0 -6px 18px rgba(0, 0, 0, 0.28) !important;
    z-index: 2147482500 !important;
    pointer-events: auto !important;
    float: none !important;
    transform: none !important;
  }
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky .kasimov-contacts,
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky .kasimov-contacts--cluster {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
    width: 100% !important;
  }
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky .kasimov-contacts__group,
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky .kasimov-contacts__group--phones {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 14px !important;
    width: 100% !important;
  }
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky a {
    pointer-events: auto !important;
    color: #fffaf0 !important;
    -webkit-text-fill-color: #fffaf0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
  }
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky a[href^="tel:"] {
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }

  /* Menu closed hard-hide */
  html body.kasimov-menu-in-rail #mainmenu:not(.is-open) ul#icemegamenu,
  html body.kasimov-menu-in-rail #mainmenu:not(.is-open) ul.nav.menu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* === BATCH100n perf + iphone + logo align === */
@media only screen and (max-width: 979px) {
  /* --- Performance: kill expensive compositing on scroll --- */
  html body,
  html body * {
    -webkit-font-smoothing: antialiased;
  }
  html body .kasimov-reveal,
  html body .kasimov-reveal.is-in,
  html body #notice.kasimov-reveal,
  html body .kasimov-promo-card--v2.kasimov-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
    animation: none !important;
  }
  html body,
  html body #wrapper,
  html body #main,
  html body #content {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  html body #header,
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body #notice,
  html body .kasimov-hero-contacts,
  html body .kasimov-header-menu-slot .mobile-nav-toggle,
  html body .mobile-nav-toggle {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on {
    background: #fffcf8 !important;
    background-color: #fffcf8 !important;
    box-shadow: 0 -2px 10px rgba(0,0,0,.12) !important;
    /* iPhone home indicator */
    padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    bottom: 0 !important;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  }
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts.kasimov-contacts-sticky {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background: rgba(10, 6, 4, 0.92) !important;
    /* sit flush above sticky; CSS adds safe-area on sticky itself */
    padding-left: max(12px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(12px, env(safe-area-inset-right, 0px)) !important;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  }

  /* Hero: GPU layer once, no filters */
  html body #iceslideshow,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill {
    filter: none !important;
    -webkit-filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
  }
  html body #iceslideshow {
    contain: paint;
  }

  /* Cards / images: cheaper paint */
  html body img {
    image-rendering: auto;
  }
  html body .kasimov-promo-card--v2,
  html body #promo .moduletable,
  html body #kasimov-home-extras .sidebar_module {
    will-change: auto !important;
    contain: layout paint;
  }

  /* Touch / iPhone UX */
  html body a,
  html body button,
  html body .mobile-nav-toggle,
  html body .kasimov-sticky-dates button {
    touch-action: manipulation;
    -webkit-tap-highlight-color: rgba(138, 28, 28, 0.15);
  }
  html body .kasimov-sticky-dates input,
  html body .kasimov-sticky-dates select,
  html body .kasimov-sticky-dates .kasimov-sticky-dates__field input,
  html body .kasimov-sticky-dates .kasimov-sticky-dates__field select {
    font-size: 16px !important; /* prevent iOS zoom-on-focus */
  }
  html body {
    overscroll-behavior-y: none;
    -webkit-overflow-scrolling: touch;
  }

  /* --- Logo aligned to rail: top=icons, bottom=menu --- */
  html body.kasimov-chrome100 .kasimov-header-actions {
    top: max(8px, env(safe-area-inset-top, 0px)) !important;
    left: max(8px, env(safe-area-inset-left, 0px)) !important;
    right: max(8px, env(safe-area-inset-right, 0px)) !important;
    height: auto !important;
    min-height: 96px !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body.kasimov-chrome100 #kasimov-header-brand {
    height: 96px !important;
    max-height: 96px !important;
    min-height: 96px !important;
    max-width: min(58vw, 200px) !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: stretch !important;
  }
  html body.kasimov-chrome100 .kasimov-header-rail {
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header {
    height: 96px !important;
    max-height: 96px !important;
    display: flex !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img,
  html body.kasimov-chrome100 .kasimov-header-brand img {
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
    max-width: min(58vw, 200px) !important;
    object-fit: contain !important;
    object-position: left center !important;
    margin: 0 !important;
    transition: none !important;
    animation: none !important;
  }

  /* Safe area for notch devices */
  html body.kasimov-chrome100 #header {
    padding-top: max(8px, env(safe-area-inset-top, 0px)) !important;
  }
}

/* Very small iPhones (SE / mini) */
@media only screen and (max-width: 390px) {
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body.kasimov-chrome100 #kasimov-header-brand {
    max-width: min(52vw, 170px) !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img {
    max-width: min(52vw, 170px) !important;
  }
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky a {
    font-size: 14px !important;
  }
}

/* Large iPhones / Pro Max */
@media only screen and (min-width: 430px) and (max-width: 979px) {
  html body.kasimov-chrome100 .kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img {
    max-width: min(48vw, 220px) !important;
  }
}

/* === BATCH100o scroll unlock + chrome all pages === */
@media only screen and (max-width: 979px) {
  /* Restore scrolling — undo 100n overscroll lock & contain quirks */
  html, body {
    overscroll-behavior-y: auto !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    max-height: none !important;
    touch-action: manipulation !important; /* BATCH100p5 was pan-x pan-y */
    -webkit-overflow-scrolling: touch !important;
  }
  html body #iceslideshow {
    contain: none !important;
    touch-action: pan-y !important;
  }

  /* Logo + social chrome on ALL pages (not only home) */
  html body.kasimov-chrome100 .kasimov-header-actions {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: none !important;
    top: max(8px, env(safe-area-inset-top, 0px)) !important;
    left: max(8px, env(safe-area-inset-left, 0px)) !important;
    right: max(8px, env(safe-area-inset-right, 0px)) !important;
    align-items: flex-start !important;
    height: auto !important;
    min-height: 96px !important;
    z-index: 2147483000 !important;
  }
  html body.kasimov-chrome100 .kasimov-header-actions a,
  html body.kasimov-chrome100 .kasimov-header-actions button,
  html body.kasimov-chrome100 .kasimov-header-actions img {
    pointer-events: auto !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body.kasimov-chrome100 #kasimov-header-brand {
    display: flex !important;
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    max-width: min(58vw, 200px) !important;
  }
  html body.kasimov-chrome100 .kasimov-header-rail {
    display: flex !important;
    height: 96px !important;
    min-height: 96px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header {
    display: flex !important;
    height: 96px !important;
    max-height: 96px !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
  html body.kasimov-chrome100 .kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img,
  html body.kasimov-chrome100 .kasimov-header-brand img {
    display: block !important;
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
    max-width: min(58vw, 200px) !important;
    object-fit: contain !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
  /* Kill older conflicting max-height:32px rule */
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img {
    max-height: 96px !important;
  }

  /* Prefer CSS double-tap zoom control over JS preventDefault */
  html body a,
  html body button,
  html body input,
  html body select,
  html body textarea,
  html body .mobile-nav-toggle {
    touch-action: manipulation !important;
  }
}

/* === BATCH100o2 logo all pages === */
/* Override legacy hide-logo-off-home rules */
html body:not(.kasimov-page-home) #kasimov-header-brand #logo,
html body:not(.kasimov-page-home) #kasimov-header-brand #logo.span4,
html body:not(.kasimov-page-home) .kasimov-header-actions #logo,
html body:not(.kasimov-page-home) .kasimov-header-actions #logo.span4,
html body.kasimov-chrome100:not(.kasimov-page-home) #kasimov-header-brand #logo,
html body.kasimov-chrome100:not(.kasimov-page-home) #kasimov-header-brand #logo img,
html body.kasimov-chrome100:not(.kasimov-page-home) #kasimov-header-brand #logo .logo,
html body.kasimov-chrome100 #kasimov-header-brand #logo,
html body.kasimov-chrome100 #kasimov-header-brand #logo.kasimov-logo-in-header {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: 96px !important;
  max-height: 96px !important;
  width: auto !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  float: none !important;
}
html body.kasimov-chrome100:not(.kasimov-page-home) #kasimov-header-brand #logo img,
html body.kasimov-chrome100:not(.kasimov-page-home) #kasimov-header-brand #logo .logo,
html body.kasimov-chrome100 #kasimov-header-brand #logo img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: 96px !important;
  max-height: 96px !important;
  width: auto !important;
  max-width: min(58vw, 200px) !important;
}
html body.kasimov-chrome100 #kasimov-header-brand {
  width: auto !important;
  min-width: 120px !important;
}

/* === BATCH100p scroll logo captions social === */
@media only screen and (max-width: 979px) {
  /* --- Scroll: one root, no nested body scroller, no contain traps --- */
  html {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    max-height: none !important;
    touch-action: manipulation !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior-y: auto !important;
  }
  body {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
    touch-action: manipulation !important;
    overscroll-behavior-y: auto !important;
    position: static !important;
  }
  html body #iceslideshow,
  html body #kasimov-page-hero,
  html body #headerimage,
  html body #wrapper,
  html body #main,
  html body #content {
    contain: none !important;
    touch-action: pan-y !important;
  }

  /* --- Logo: never blink / hide --- */
  html body.kasimov-chrome100 #kasimov-header-brand,
  html body.kasimov-chrome100 #kasimov-header-brand #logo,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header,
  html body:not(.kasimov-page-home) #kasimov-header-brand #logo,
  html body:not(.kasimov-page-home) #logo.kasimov-logo-in-header {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    transition: none !important;
    animation: none !important;
  }
  html body.kasimov-chrome100 #kasimov-header-brand #logo img,
  html body.kasimov-chrome100 #logo.kasimov-logo-in-header img,
  html body:not(.kasimov-page-home) #kasimov-header-brand #logo img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 96px !important;
    max-height: 96px !important;
    width: auto !important;
    max-width: min(58vw, 200px) !important;
    transition: none !important;
    animation: none !important;
  }

  /* --- Hero captions gone everywhere --- */
  html body #iceslideshow .carousel-caption,
  html body #iceslideshow .iceslideshow-caption,
  html body #iceslideshow .item .carousel-caption,
  html body #kasimov-page-hero .kasimov-page-hero__caption,
  html body .kasimov-page-hero__caption,
  html body #headerimage .carousel-caption,
  html body.kasimov-page-restaurant .kasimov-page-hero__caption,
  html body.kasimov-page-services .kasimov-page-hero__caption,
  html body.kasimov-page-rooms .kasimov-page-hero__caption,
  html body.kasimov-page-about .kasimov-page-hero__caption,
  html body.kasimov-page-sightseeing .kasimov-page-hero__caption {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    font-size: 0 !important;
    line-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* --- Social icons: same width as menu button, VK left-aligned with menu --- */
  html body.kasimov-chrome100 .kasimov-header-rail {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    min-width: 148px !important;
    width: auto !important;
    gap: 6px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-social,
  html body.kasimov-chrome100 #kasimov-header-rail .kasimov-header-social {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    bottom: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-width: 148px !important;
    max-width: 100% !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    transform: none !important;
    float: none !important;
    z-index: auto !important;
  }
  html body.kasimov-chrome100 .kasimov-header-social__link {
    flex: 0 0 42px !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
  }
  html body.kasimov-chrome100 .kasimov-header-social__link img {
    width: 36px !important;
    height: 36px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-menu-slot,
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot {
    display: flex !important;
    width: 100% !important;
    min-width: 148px !important;
  }
  html body.kasimov-menu-in-rail #mainmenu .mobile-nav-toggle,
  html body.kasimov-menu-in-rail .kasimov-header-menu-slot .mobile-nav-toggle {
    width: 100% !important;
    min-width: 148px !important;
  }

  /* Header overlay: pass touches through empty chrome to page (fixes 1st scroll try) */
  html body.kasimov-chrome100 .kasimov-header-actions {
    pointer-events: none !important;
  }
  html body.kasimov-chrome100 .kasimov-header-actions a,
  html body.kasimov-chrome100 .kasimov-header-actions button,
  html body.kasimov-chrome100 .kasimov-header-actions img,
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body.kasimov-chrome100 .kasimov-header-rail,
  html body.kasimov-chrome100 .kasimov-header-social,
  html body.kasimov-chrome100 .kasimov-header-menu-slot,
  html body.kasimov-chrome100 #logo {
    pointer-events: auto !important;
  }
}

/* === BATCH100p3 captions all viewports === */
html body #iceslideshow .carousel-caption,
html body #iceslideshow .carousel-caption a,
html body #iceslideshow .iceslideshow-caption,
html body #headerimage .carousel-caption,
html body #kasimov-page-hero .kasimov-page-hero__caption,
html body .kasimov-page-hero__caption,
html body .kasimov-page-hero .carousel-caption {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-indent: -9999px !important;
}

@media only screen and (max-width: 979px) {
  /* Override legacy justify-content:flex-end that pushed VK to the right of menu */
  html body.kasimov-chrome100 .kasimov-header-social,
  html body.kasimov-chrome100 #kasimov-header-rail .kasimov-header-social,
  html body .kasimov-header-rail .kasimov-header-social {
    justify-content: space-between !important;
    width: 100% !important;
    min-width: 148px !important;
    position: relative !important;
    right: auto !important;
    left: auto !important;
    top: auto !important;
    transform: none !important;
  }
}

/* === BATCH100p4 scroll social harden === */
@media only screen and (max-width: 979px) {
  html {
    overflow-y: auto !important;
    touch-action: manipulation !important;
  }
  body {
    overflow-y: visible !important;
    touch-action: manipulation !important;
  }
  /* Social cells fill menu width evenly — VK left edge = menu left edge */
  html body.kasimov-chrome100 .kasimov-header-social {
    justify-content: space-between !important;
    width: 148px !important;
    min-width: 148px !important;
    max-width: 148px !important;
    gap: 6px !important;
  }
  html body.kasimov-chrome100 .kasimov-header-social__link {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }
  html body.kasimov-chrome100 .kasimov-header-social__link img {
    width: 36px !important;
    height: 36px !important;
    margin: 0 auto !important;
  }
}

/* === BATCH100p5 scroll final === */
@media only screen and (max-width: 979px) {
  html.html, html {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    touch-action: manipulation !important;
    -webkit-overflow-scrolling: touch !important;
  }
  html body, body {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    touch-action: manipulation !important;
    overscroll-behavior-y: auto !important;
    position: relative !important;
  }
}

/* === BATCH100q scroll perf + hero === */
@media only screen and (max-width: 979px) {
  /* While scrolling: pause only heavy animated layers (not all *) */
  html.kasimov-is-scrolling body #iceslideshow .item,
  html.kasimov-is-scrolling body .kasimov-reveal,
  html.kasimov-is-scrolling body .kasimov-promo-card--v2 {
    transition: none !important;
    animation-play-state: paused !important;
  }

  /* Kill remaining blurs that re-composite on scroll */
  html body #header,
  html body .kasimov-header-actions,
  html body .kasimov-header-social__link,
  html body .mobile-nav-toggle,
  html body #notice,
  html body .kasimov-hero-contacts,
  html body .kasimov-sticky-dates,
  html body .kasimov-contacts-sticky {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
  }

  /* Below-fold cards: cheaper scrolling */
  html body #promo .moduletable,
  html body #promo .kasimov-promo-card--v2,
  html body #kasimov-home-extras .sidebar_module,
  html body #content .item-page,
  html body #main .blog .item {
    content-visibility: auto;
    contain-intrinsic-size: 1px 320px;
  }

  /* Hero slides: stacked fade, no slide left/right paint storms */
  html body.kasimov-page-home #iceslideshow .carousel-inner {
    position: relative !important;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  }
  html body.kasimov-page-home #iceslideshow .carousel-inner > .item {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    transition: opacity .55s ease !important;
    float: none !important;
    margin: 0 !important;
  }
  html body.kasimov-page-home #iceslideshow .carousel-inner > .item.active {
    position: absolute !important;
    display: block !important;
  }
}

/* Desktop too: same cheap hero fade */
html body.kasimov-page-home #iceslideshow .carousel-inner > .item {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* === BATCH100q13: scroll perf — no blur while finger moves === */
@media (max-width: 991px) {
  /* fixed contacts blur repaints every scroll frame on iOS — use solid bg instead */
  body.kasimov-chrome100 #notice.kasimov-contacts-sticky,
  body.kasimov-chrome100 #notice.kasimov-hero-contacts,
  body.kasimov-chrome100 .kasimov-hero-contacts.kasimov-contacts-sticky {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(18, 12, 8, 0.88) !important;
  }
  html.kasimov-is-scrolling body #header,
  html.kasimov-is-scrolling body #header #mainmenu,
  html.kasimov-is-scrolling body #notice,
  html.kasimov-is-scrolling body .kasimov-hero-contacts,
  html.kasimov-is-scrolling body .kasimov-hero-booking,
  html.kasimov-is-scrolling body .kasimov-sticky-dates,
  html.kasimov-is-scrolling body [class*="sticky"],
  html.kasimov-is-scrolling body .iceslideshow-fill,
  html.kasimov-is-scrolling body #iceslideshow .item,
  html.kasimov-is-scrolling body #iceslideshow .carousel-inner,
  html.kasimov-is-scrolling body .kasimov-promo-card--v2,
  html.kasimov-is-scrolling body .kasimov-reveal {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
    -webkit-filter: none !important;
    transition: none !important;
    animation: none !important;
  }
  html.kasimov-is-scrolling body #iceslideshow .carousel-inner > .item {
    transition: none !important;
  }
  /* promote compositor layers once, avoid thrash */
  body.kasimov-chrome100 #iceslideshow .carousel-inner,
  body.kasimov-chrome100 #iceslideshow .iceslideshow-fill {
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    backface-visibility: hidden;
  }
  body.kasimov-chrome100 .kasimov-promo-card--v2,
  body.kasimov-chrome100 .kasimov-home-tile,
  body.kasimov-chrome100 .room-card,
  body.kasimov-chrome100 .blog .item {
    content-visibility: auto;
    contain: layout style paint;
  }
}

/* === BATCH100q14: sticky contacts — no backdrop-filter (iOS scroll jank) === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #iceslideshow #notice.span4,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #notice.kasimov-hero-contacts,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.span4,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.kasimov-hero-contacts.span4,
  html body.kasimov-chrome100 #iceslideshow #notice.kasimov-hero-contacts.span4,
  html body.kasimov-chrome100 #notice.kasimov-hero-contacts,
  html body.kasimov-chrome100 #notice.kasimov-contacts-sticky,
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts.kasimov-contacts-sticky {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(10, 6, 4, 0.92) !important;
  }
}

/* === BATCH100q16: iPhone / Android — scroll + touch + smooth === */
@media only screen and (max-width: 979px) {
  html, body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    max-height: none !important;
    overscroll-behavior-y: auto !important;
    overscroll-behavior-x: none !important;
    touch-action: manipulation !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-behavior: auto !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }
  body {
    overflow-y: visible !important;
  }

  /* Instant tap — kill 300ms / gray flash */
  html body, html body a, html body button {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
  }
  html body img, html body .iceslideshow-fill {
    -webkit-touch-callout: none;
  }
  html body a, html body button, html body label,
  html body .mobile-nav-toggle, html body .kasimov-sticky-dates__btn,
  html body [role="button"] {
    touch-action: manipulation !important;
  }
  html body input, html body textarea, html body select,
  html body a[href^="tel"], html body a[href^="mailto"],
  html body #notice, html body .kasimov-hero-contacts {
    -webkit-user-select: text;
    user-select: text;
  }

  /* Comfortable hit targets */
  html body .mobile-nav-toggle,
  html body .kasimov-header-social__link,
  html body a.kasimov-book-cta,
  html body #notice a,
  html body .kasimov-hero-contacts a {
    min-height: 44px !important;
    min-width: 44px !important;
  }
  html body .kasimov-header-social__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Press feedback — opacity only (no scale on fixed chrome) */
  html body .mobile-nav-toggle:active,
  html body .kasimov-sticky-dates__btn:active,
  html body .kasimov-promo-card--v2:active,
  html body .kasimov-home-tile a:active,
  html body .blog .item a:active,
  html body .kasimov-sight-card:active,
  html body #mainmenu a:active {
    opacity: 0.82 !important;
    transition: opacity 0.07s linear !important;
  }

  /* Hero / page hero: vertical pan only — never trap scroll */
  html body #iceslideshow,
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill,
  html body #kasimov-page-hero,
  html body #headerimage,
  html body .kasimov-page-hero,
  html body .kasimov-page-hero__slide {
    touch-action: pan-y !important;
    -webkit-user-drag: none;
  }

  /* Fixed chrome: solid, no blur (iOS scroll killer) */
  html body #notice,
  html body #notice.kasimov-hero-contacts,
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts,
  html body .kasimov-contacts-sticky,
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body #header,
  html body #mainmenu {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
    -webkit-filter: none !important;
  }
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts.kasimov-contacts-sticky,
  html body #notice.kasimov-hero-contacts {
    background: rgba(10, 6, 4, 0.92) !important;
  }
  /* BATCH100q17: restore light sticky bar (was dark from q16) */
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on {
    background: #fffcf8 !important;
    background-color: #fffcf8 !important;
    box-shadow: 0 -2px 10px rgba(0,0,0,.12) !important;
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
  }

  /* Soft card motion when idle (disabled while scrolling) */
  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .blog .item,
  html body .kasimov-sight-card,
  html body .kasimov-svc-block,
  html body .kasimov-reveal {
    transition: opacity 0.22s ease, transform 0.22s ease !important;
    will-change: auto !important;
  }
  html.kasimov-is-scrolling body .kasimov-promo-card--v2,
  html.kasimov-is-scrolling body .kasimov-home-tile,
  html.kasimov-is-scrolling body .blog .item,
  html.kasimov-is-scrolling body .kasimov-sight-card,
  html.kasimov-is-scrolling body .kasimov-reveal,
  html.kasimov-is-scrolling body #iceslideshow .item,
  html.kasimov-is-scrolling body #iceslideshow .iceslideshow-fill,
  html.kasimov-is-scrolling body .kasimov-page-hero__slide,
  html.kasimov-is-scrolling body .kasimov-page-hero,
  html.kasimov-is-scrolling body img {
    transition: none !important;
    animation: none !important;
  }

  /* Offscreen work reduction */
  html body .blog .item,
  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .kasimov-sight-card,
  html body .kasimov-svc-block,
  html body #kasimov-home-extras .moduletable {
    content-visibility: auto;
    contain-intrinsic-size: 320px;
  }

  /* Menu open: snappy */
  html body #mainmenu.is-open ul#icemegamenu,
  html body #mainmenu.is-open ul.nav.menu {
    transition: opacity 0.16s ease, transform 0.16s ease !important;
  }

  /* Inputs: native feel, 16px+ to avoid iOS zoom */
  html body .kasimov-sticky-dates input,
  html body .kasimov-sticky-dates select,
  html body input[type="date"],
  html body input[type="text"],
  html body input[type="tel"],
  html body input[type="email"],
  html body select,
  html body textarea {
    font-size: 16px !important;
    touch-action: manipulation !important;
  }

  /* Safe areas for sticky chrome */
  html body .kasimov-sticky-dates.is-on {
    padding-bottom: max(8px, env(safe-area-inset-bottom, 0px)) !important;
  }
  html body #notice.kasimov-contacts-sticky {
    padding-left: max(10px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(10px, env(safe-area-inset-right, 0px)) !important;
  }
}

/* Phone-narrow: reinforce pan-y on whole surface */
@media only screen and (max-width: 480px) {
  html body #wrapper,
  html body #main,
  html body #content,
  html body section {
    touch-action: pan-y !important;
  }
}

/* === BATCH100q17: sticky panel light + Find button original size === */
@media only screen and (max-width: 979px) {
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body .kasimov-sticky-dates.is-on.is-mobile {
    background: #fffcf8 !important;
    background-color: #fffcf8 !important;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.12) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  /* restore compact Find button (BATCH93) — undo q16 44px hit-target */
  html body .kasimov-sticky-dates__btn,
  html body .kasimov-sticky-dates.is-on .kasimov-sticky-dates__btn,
  html body .kasimov-sticky-dates.is-mobile .kasimov-sticky-dates__btn,
  html body button.kasimov-sticky-dates__btn {
    min-height: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 34px !important;
    padding: 0 8px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 34px !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
    background: #6b2b24 !important;
    color: #fff !important;
  }
  html body .kasimov-sticky-dates__field input,
  html body .kasimov-sticky-dates__field select {
    height: 34px !important;
    font-size: 12px !important;
    min-height: 0 !important;
  }
}

/* === BATCH100q18 social icons no bg === */
html body .kasimov-header-social__link,
html body .kasimov-header-rail .kasimov-header-social__link,
html body.kasimov-chrome100 .kasimov-header-social__link,
html body.kasimov-chrome100 #kasimov-header-rail .kasimov-header-social__link {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
html body .kasimov-header-social__link:hover,
html body .kasimov-header-social__link:focus,
html body.kasimov-chrome100 .kasimov-header-social__link:hover,
html body.kasimov-chrome100 .kasimov-header-social__link:focus {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-chrome100 .kasimov-header-social__link,
  html body.kasimov-chrome100 #kasimov-header-rail .kasimov-header-social__link,
  html body .kasimov-header-social__link {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
  }
  html body.kasimov-chrome100 .kasimov-header-social__link img,
  html body .kasimov-header-social__link img {
    width: 36px !important;
    height: 36px !important;
  }
}

/* === BATCH100q19 sticky year + scroll === */

/* Sticky: room for full date year; compact calendar glyph */
@media only screen and (max-width: 979px) {
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body .kasimov-sticky-dates.is-mobile.is-on {
    overflow: visible !important;
  }
  html body .kasimov-sticky-dates.is-mobile .kasimov-sticky-dates__form,
  html body .kasimov-sticky-dates.is-on .kasimov-sticky-dates__form,
  html body .kasimov-sticky-dates__form {
    grid-template-columns: minmax(7.6em, 1.45fr) minmax(7.6em, 1.45fr) 46px 60px !important;
    gap: 4px !important;
  }
  html body .kasimov-sticky-dates__field input[type="date"],
  html body .kasimov-sticky-dates__field input,
  html body .kasimov-sticky-dates input[type="date"] {
    font-size: 15px !important;
    letter-spacing: -0.02em !important;
    padding: 0 2px 0 4px !important;
    min-width: 0 !important;
    width: 100% !important;
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: nowrap !important;
  }
  html body .kasimov-sticky-dates input[type="date"]::-webkit-datetime-edit {
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
  }
  html body .kasimov-sticky-dates input[type="date"]::-webkit-datetime-edit-fields-wrapper {
    padding: 0 !important;
  }
  html body .kasimov-sticky-dates input[type="date"]::-webkit-datetime-edit-year-field,
  html body .kasimov-sticky-dates input[type="date"]::-webkit-datetime-edit-month-field,
  html body .kasimov-sticky-dates input[type="date"]::-webkit-datetime-edit-day-field,
  html body .kasimov-sticky-dates input[type="date"]::-webkit-datetime-edit-text {
    padding: 0 !important;
    margin: 0 !important;
    letter-spacing: -0.02em !important;
  }
  html body .kasimov-sticky-dates input[type="date"]::-webkit-calendar-picker-indicator {
    width: 14px !important;
    height: 14px !important;
    padding: 0 !important;
    margin: 0 0 0 1px !important;
    opacity: 0.55 !important;
  }
  html body .kasimov-sticky-dates__field--guests select,
  html body .kasimov-sticky-dates__field select {
    font-size: 14px !important;
    padding: 0 2px !important;
  }
  html body .kasimov-sticky-dates__btn,
  html body button.kasimov-sticky-dates__btn {
    font-size: 12px !important;
    padding: 0 4px !important;
  }
}

@media only screen and (max-width: 380px) {
  html body .kasimov-sticky-dates.is-mobile .kasimov-sticky-dates__form,
  html body .kasimov-sticky-dates__form {
    grid-template-columns: minmax(7.2em, 1.5fr) minmax(7.2em, 1.5fr) 42px 54px !important;
    gap: 3px !important;
  }
  html body .kasimov-sticky-dates__field input[type="date"],
  html body .kasimov-sticky-dates input[type="date"] {
    font-size: 14px !important;
    padding: 0 1px 0 3px !important;
  }
  html body .kasimov-sticky-dates input[type="date"]::-webkit-calendar-picker-indicator {
    width: 12px !important;
    height: 12px !important;
    margin: 0 !important;
  }
}

/* Scroll: native momentum, no thrash */
@media only screen and (max-width: 979px) {
  html {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    overscroll-behavior-y: auto !important;
    overscroll-behavior-x: none !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-behavior: auto !important;
    touch-action: pan-y !important;
  }
  body {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    height: auto !important;
    overscroll-behavior-y: auto !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
  }
  html body #wrapper,
  html body #main,
  html body #content,
  html body #container,
  html body section {
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
  }
  html body a,
  html body button,
  html body .mobile-nav-toggle,
  html body .kasimov-sticky-dates__btn,
  html body [role="button"],
  html body input,
  html body select,
  html body textarea {
    touch-action: manipulation !important;
  }

  /* content-visibility / contain stutter when rows enter view */
  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .blog .item,
  html body .kasimov-sight-card,
  html body .kasimov-svc-block,
  html body #promo .moduletable,
  html body #promo .kasimov-promo-card--v2,
  html body #kasimov-home-extras .sidebar_module,
  html body #kasimov-home-extras .moduletable,
  html body #content .item-page,
  html body #main .blog .item,
  html body .room-card {
    content-visibility: visible !important;
    contain: none !important;
  }

  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .blog .item,
  html body .kasimov-sight-card,
  html body .kasimov-reveal {
    will-change: auto !important;
  }

  html body #iceslideshow {
    contain: none !important;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  }

  html body #header,
  html body .kasimov-sticky-dates,
  html body #notice,
  html body .kasimov-hero-contacts {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
  }
}

/* === BATCH100q20 sitewide light scroll + iphone === */
/* Applies to EVERY page — home, rooms, restaurant, about, services, contacts, sightseeing, privacy, booking */

@media only screen and (max-width: 979px) {
  /* --- Native momentum scroll, no traps --- */
  html.html,
  html {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    height: auto !important;
    max-height: none !important;
    overscroll-behavior-y: auto !important;
    overscroll-behavior-x: none !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-behavior: auto !important;
    touch-action: pan-y !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
  }
  html body,
  body {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    height: auto !important;
    max-height: none !important;
    min-height: 100% !important;
    min-height: 100dvh !important;
    min-height: -webkit-fill-available !important;
    overscroll-behavior-y: auto !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
  }
  html body #wrapper,
  html body #main,
  html body #mainbody,
  html body #content,
  html body #container,
  html body #content_shadow,
  html body section,
  html body article {
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
    max-width: 100% !important;
  }

  /* Never let chrome/page wrappers become the scrollport */
  html body #wrapper,
  html body #main,
  html body #mainbody {
    overflow: visible !important;
    height: auto !important;
    max-height: none !important;
  }

  /* Interactive only */
  html body a,
  html body button,
  html body .mobile-nav-toggle,
  html body .kasimov-sticky-dates__btn,
  html body [role="button"],
  html body input,
  html body select,
  html body textarea,
  html body label {
    touch-action: manipulation !important;
  }

  /* --- Kill every backdrop blur (iOS scroll killer) on all pages --- */
  html body,
  html body *,
  html body *::before,
  html body *::after {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  /* --- Kill content-visibility / contain stutter sitewide --- */
  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .blog .item,
  html body .items-leading .item,
  html body .kasimov-sight-card,
  html body .kasimov-svc-block,
  html body .room-card,
  html body #promo .moduletable,
  html body #promo .kasimov-promo-card--v2,
  html body #kasimov-home-extras .sidebar_module,
  html body #kasimov-home-extras .moduletable,
  html body #content .item-page,
  html body #main .blog .item,
  html body .kasimov-rooms .item,
  html body .kasimov-reveal {
    content-visibility: visible !important;
    contain: none !important;
    will-change: auto !important;
  }

  /* Instant reveals — no opacity/transform tax while scrolling */
  html body .kasimov-reveal,
  html body .kasimov-reveal.is-in,
  html body.kasimov-touch .kasimov-reveal {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
    transition: none !important;
    animation: none !important;
  }

  /* Soft idle transitions off on touch — nothing "catches" the finger */
  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .blog .item,
  html body .kasimov-sight-card,
  html body .kasimov-svc-block,
  html body .room-card {
    transition: none !important;
  }

  /* Fixed chrome: solid paints, compositor-friendly */
  html body #header,
  html body #mainmenu,
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body #notice,
  html body #notice.kasimov-hero-contacts,
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts,
  html body .kasimov-contacts-sticky,
  html body .mobile-nav-toggle {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    filter: none !important;
    -webkit-filter: none !important;
  }

  /* Sticky booking — keep light solid bar + safe area on ALL pages */
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body .kasimov-sticky-dates.is-mobile.is-on {
    background: #fffcf8 !important;
    background-color: #fffcf8 !important;
    padding-left: max(8px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(8px, env(safe-area-inset-right, 0px)) !important;
    padding-bottom: max(8px, env(safe-area-inset-bottom, 0px)) !important;
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
  }

  /* Header safe area (notch / Dynamic Island) */
  html body #header,
  html body.kasimov-chrome100 #header {
    padding-top: env(safe-area-inset-top, 0px) !important;
  }

  /* Contacts strip when sticky */
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts.kasimov-contacts-sticky {
    background: rgba(10, 6, 4, 0.92) !important;
    padding-left: max(10px, env(safe-area-inset-left, 0px)) !important;
    padding-right: max(10px, env(safe-area-inset-right, 0px)) !important;
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
  }

  /* Heroes: real iPhone viewport units on ALL pages */
  html body #iceslideshow,
  html body #iceslideshow .iceslideshow,
  html body #iceslideshow .iceslideshow-fill,
  html body #headerimage.kasimov-page-hero-host,
  html body #kasimov-page-hero,
  html body .kasimov-page-hero {
    min-height: 100vh !important;
    min-height: 100svh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    width: 100% !important;
    max-width: 100vw !important;
  }
  html body #iceslideshow,
  html body #kasimov-page-hero,
  html body .kasimov-page-hero {
    contain: none !important;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
  }
  html body #iceslideshow .carousel-inner > .item,
  html body .kasimov-page-hero__slide {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
  }

  /* Media: no drag ghost, no callout */
  html body img,
  html body .iceslideshow-fill,
  html body .kasimov-page-hero__slide img {
    -webkit-touch-callout: none;
    -webkit-user-drag: none;
    max-width: 100% !important;
  }

  /* Forms: 16px prevents iOS focus-zoom (sticky dates keep own tuned size) */
  html body input[type="text"],
  html body input[type="tel"],
  html body input[type="email"],
  html body input[type="search"],
  html body input[type="number"],
  html body input[type="date"],
  html body select,
  html body textarea {
    font-size: 16px !important;
  }
  html body .kasimov-sticky-dates__field input[type="date"],
  html body .kasimov-sticky-dates input[type="date"] {
    font-size: 15px !important;
  }

  /* Mobile menu: full height with safe areas, own scroll if long */
  html body #mainmenu.is-open ul#icemegamenu,
  html body #mainmenu.is-open ul.nav.menu,
  html body #mainmenu .mobile-nav-panel,
  html body #mainmenu.is-open {
    padding-top: max(12px, env(safe-area-inset-top, 0px)) !important;
    padding-bottom: max(12px, env(safe-area-inset-bottom, 0px)) !important;
    -webkit-overflow-scrolling: touch !important;
    overscroll-behavior: contain !important;
  }

  /* Footer clearance when sticky dates present */
  html body.kasimov-has-sticky-dates #footer,
  html body.kasimov-has-sticky-dates #content {
    padding-bottom: calc(58px + env(safe-area-inset-bottom, 0px)) !important;
  }

  /* No horizontal bleed */
  html body #wrapper,
  html body #main,
  html body #content,
  html body .container,
  html body .row {
    max-width: 100% !important;
  }
}

/* Very narrow iPhones (SE / mini) */
@media only screen and (max-width: 390px) {
  html body .kasimov-header-social__link img {
    width: 32px !important;
    height: 32px !important;
  }
  html body .kasimov-sticky-dates.is-mobile .kasimov-sticky-dates__form,
  html body .kasimov-sticky-dates__form {
    grid-template-columns: minmax(7.1em, 1.5fr) minmax(7.1em, 1.5fr) 40px 52px !important;
    gap: 3px !important;
  }
}

/* Prefer reduced motion — respect system setting sitewide */
@media (prefers-reduced-motion: reduce) {
  html body *,
  html body *::before,
  html body *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}

/* === BATCH100q21 first-touch scroll === */
/* Fix: first finger pan must scroll immediately (no second-touch activation) */

@media only screen and (max-width: 979px) {
  /* 1) Clear scrollport: only html scrolls */
  html.html,
  html {
    overflow-x: hidden !important;
    overflow-y: scroll !important;
    height: 100% !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
  }
  html body,
  body {
    overflow-x: hidden !important;
    overflow-y: visible !important;
    height: auto !important;
    min-height: 100% !important;
    touch-action: pan-y !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* 2) Hero / page surfaces: pan-y wins over link manipulation (was eating 1st gesture) */
  html body #iceslideshow,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill,
  html body #iceslideshow a,
  html body #iceslideshow img,
  html body #kasimov-page-hero,
  html body #kasimov-page-hero a,
  html body #kasimov-page-hero img,
  html body .kasimov-page-hero,
  html body .kasimov-page-hero__slide,
  html body .kasimov-page-hero a,
  html body #headerimage,
  html body #headerimage a,
  html body #headerimage img,
  html body #wrapper,
  html body #main,
  html body #mainbody,
  html body #content,
  html body #content img,
  html body .blog .item,
  html body .blog .item a,
  html body .kasimov-promo-card--v2,
  html body .kasimov-promo-card--v2 a,
  html body .kasimov-home-tile,
  html body .kasimov-home-tile a,
  html body .kasimov-sight-card,
  html body .kasimov-sight-card a,
  html body .room-card,
  html body .room-card a {
    touch-action: pan-y !important;
  }

  /* Chrome buttons keep manipulation (tap, no 300ms) */
  html body .mobile-nav-toggle,
  html body .kasimov-sticky-dates__btn,
  html body .kasimov-header-social__link,
  html body #notice a,
  html body .kasimov-hero-contacts a,
  html body a[href^="tel"],
  html body a[href^="mailto"] {
    touch-action: manipulation !important;
  }

  /* 3) Pass touches through chrome containers — only real controls capture */
  html body .kasimov-header-actions,
  html body.kasimov-chrome100 .kasimov-header-actions,
  html body #header,
  html body.kasimov-chrome100 #header {
    pointer-events: none !important;
  }
  html body .kasimov-header-brand,
  html body.kasimov-chrome100 .kasimov-header-brand,
  html body #kasimov-header-brand,
  html body .kasimov-header-rail,
  html body.kasimov-chrome100 .kasimov-header-rail,
  html body #kasimov-header-rail,
  html body .kasimov-header-social,
  html body.kasimov-chrome100 .kasimov-header-social,
  html body .kasimov-header-menu-slot,
  html body.kasimov-chrome100 .kasimov-header-menu-slot,
  html body #logo,
  html body.kasimov-chrome100 #logo {
    pointer-events: none !important;
  }
  html body .kasimov-header-actions a,
  html body .kasimov-header-actions button,
  html body.kasimov-chrome100 .kasimov-header-actions a,
  html body.kasimov-chrome100 .kasimov-header-actions button,
  html body .kasimov-header-brand a,
  html body .kasimov-header-brand img,
  html body #kasimov-header-brand a,
  html body #kasimov-header-brand img,
  html body .kasimov-header-social a,
  html body .kasimov-header-social img,
  html body .kasimov-header-menu-slot .mobile-nav-toggle,
  html body .mobile-nav-toggle,
  html body #logo a,
  html body #logo img {
    pointer-events: auto !important;
  }

  /* Contacts strip: empty padding must not steal the first pan */
  html body #notice,
  html body #notice.kasimov-hero-contacts,
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts,
  html body .kasimov-contacts-sticky {
    pointer-events: none !important;
  }
  html body #notice a,
  html body #notice button,
  html body .kasimov-hero-contacts a,
  html body .kasimov-contacts-sticky a {
    pointer-events: auto !important;
  }

  /* Sticky booking: bar can receive input, but don't block page pans outside fields */
  html body .kasimov-sticky-dates {
    pointer-events: auto !important;
  }
}

/* === BATCH100q22 scroll contacts hide === */
/* === BATCH100q23: restore top under chrome (was wrongly 12px) === */
/* Home contacts: stay in hero, hide with scroll — compositor-friendly */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #iceslideshow #notice.span4,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #notice.kasimov-contacts-sticky,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home.kasimov-chrome100 #notice.kasimov-hero-contacts {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    top: 122px !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    z-index: 60 !important;
    float: none !important;
    /* solid paint — no backdrop-filter (iOS jank) */
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(12, 8, 5, 0.78) !important;
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
    will-change: opacity, transform !important;
    transition: opacity 0.28s ease, transform 0.28s ease !important;
    pointer-events: none !important;
    contain: layout style !important;
  }
  html body.kasimov-page-home #notice a,
  html body.kasimov-page-home #notice.kasimov-hero-contacts a {
    pointer-events: auto !important;
  }
  /* Soft exit when leaving viewport (class from IO) */
  html body.kasimov-page-home #notice.kasimov-contacts-leaving,
  html body.kasimov-page-home #notice.kasimov-hero-contacts.kasimov-contacts-leaving {
    opacity: 0 !important;
    transform: translate3d(0, -10px, 0) !important;
    pointer-events: none !important;
  }

  /* While scrolling: freeze expensive card work */
  html.kasimov-is-scrolling body.kasimov-page-home .kasimov-promo-card--v2,
  html.kasimov-is-scrolling body.kasimov-page-home .kasimov-home-tile,
  html.kasimov-is-scrolling body.kasimov-page-home .blog .item,
  html.kasimov-is-scrolling body.kasimov-page-home .kasimov-reveal,
  html.kasimov-is-scrolling body.kasimov-page-home #iceslideshow .item,
  html.kasimov-is-scrolling body.kasimov-page-home #iceslideshow .iceslideshow-fill {
    transition: none !important;
    animation: none !important;
  }
  html.kasimov-is-scrolling body.kasimov-page-home .blog .item,
  html.kasimov-is-scrolling body.kasimov-page-home .kasimov-promo-card--v2,
  html.kasimov-is-scrolling body.kasimov-page-home .kasimov-home-tile {
    content-visibility: visible !important;
  }

  /* Sticky booking bar alone at bottom on home — don't stack contacts under it */
  html body.kasimov-page-home #notice.kasimov-contacts-sticky {
    position: absolute !important;
    bottom: auto !important;
  }
}

/* Desktop home: same GPU-friendly hide */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts {
    transform: translateZ(0) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    transition: opacity 0.3s ease, transform 0.3s ease !important;
    will-change: opacity, transform !important;
  }
  html body.kasimov-page-home #notice.kasimov-contacts-leaving {
    opacity: 0 !important;
    transform: translate3d(0, -8px, 0) !important;
    pointer-events: none !important;
  }
}

/* === BATCH100q23 desktop contacts top === */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #notice.kasimov-hero-contacts,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice,
  html body.kasimov-page-home.kasimov-chrome100 #notice.kasimov-hero-contacts {
    top: 146px !important;
  }
}

/* === BATCH100q24 sticky contacts restore === */
@media only screen and (max-width: 979px) {
  /* Cancel q22/q23 in-hero absolute on home — sticky panel again */
  html body.kasimov-page-home #iceslideshow #notice.kasimov-contacts-sticky,
  html body.kasimov-page-home #notice.kasimov-contacts-sticky,
  html body.kasimov-page-home.kasimov-chrome100 #iceslideshow #notice.kasimov-contacts-sticky,
  html body.kasimov-page-home.kasimov-chrome100 #notice.kasimov-contacts-sticky,
  html body.kasimov-page-home #notice.kasimov-hero-contacts.kasimov-contacts-sticky {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    top: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    z-index: 2147482500 !important;
    float: none !important;
    pointer-events: auto !important;
    contain: none !important;
    will-change: auto !important;
    transition: none !important;
    transform: none !important;
    -webkit-transform: none !important;
    opacity: 1 !important;
    background: rgba(10, 6, 4, 0.82) !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  html body.kasimov-page-home #notice.kasimov-contacts-sticky.kasimov-contacts-leaving,
  html body.kasimov-page-home #notice.kasimov-contacts-leaving {
    opacity: 1 !important;
    transform: none !important;
    pointer-events: auto !important;
  }
}

/* === BATCH100q25 scroll quality === */
/* Compositor-first page scroll (premium hotel pattern) */
html {
  scroll-behavior: auto !important;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
}
html, body {
  touch-action: manipulation;
}
@media only screen and (max-width: 979px) {
  /* Single fixed dock: contacts + booking — one layer, zero scroll JS */
  html body .kasimov-scroll-dock {
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    max-width: 100vw !important;
    z-index: 2147482600 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    transform: translateZ(0) !important;
    -webkit-transform: translateZ(0) !important;
    backface-visibility: hidden !important;
    contain: layout style !important;
    /* solid paint — never backdrop-filter (per-frame blur kills scroll) */
    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  html body .kasimov-scroll-dock > * {
    pointer-events: auto !important;
  }

  /* Contacts live inside dock as static flow */
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock #notice,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock #notice.kasimov-contacts-sticky,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock #notice.kasimov-hero-contacts,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-hero-contacts {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    float: none !important;
    z-index: 1 !important;
    transform: none !important;
    -webkit-transform: none !important;
    transition: none !important;
    will-change: auto !important;
    contain: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(10, 6, 4, 0.92) !important;
    border-radius: 0 !important;
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.22) !important;
  }

  /* Booking bar inside dock — relative, no second fixed layer */
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-sticky-dates,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-sticky-dates.is-on,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-sticky-dates.is-mobile {
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    z-index: 2 !important;
    transform: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(255, 252, 248, 0.98) !important;
    box-shadow: none !important;
  }

  /* Space for dock so content isn't covered */
  html body.kasimov-has-scroll-dock #footer,
  html body.kasimov-has-scroll-dock #content {
    padding-bottom: calc(168px + env(safe-area-inset-bottom, 0px)) !important;
  }

  /* Kill competing absolute/fixed contact rules from q22–q24 on home */
  html body.kasimov-has-scroll-dock.kasimov-page-home #iceslideshow #notice.kasimov-contacts-sticky,
  html body.kasimov-has-scroll-dock.kasimov-page-home #notice.kasimov-contacts-sticky {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
  }

  /* Below-fold cards: skip paint when offscreen */
  html body.kasimov-page-home #content .blog .item,
  html body.kasimov-page-home .kasimov-promo-card--v2,
  html body.kasimov-page-home .kasimov-home-tile,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module {
    content-visibility: auto;
    contain-intrinsic-size: 1px 320px;
  }

  /* Hero: no filter animations; opacity crossfade only */
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .iceslideshow-fill {
    will-change: auto !important;
    filter: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  /* Prefer compositor scroll over paint-heavy reveals mid-gesture */
  @media (prefers-reduced-motion: reduce) {
    html body .kasimov-reveal,
    html body .kasimov-promo-card--v2,
    html body #iceslideshow .item {
      transition: none !important;
      animation: none !important;
    }
  }
}

/* Sticky dates: never blur while scrolling (global kill for mobile) */
@media only screen and (max-width: 979px) {
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body .kasimov-sticky-dates.is-mobile {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
}

/* === BATCH100q26 first-touch scroll === */
@media only screen and (max-width: 979px) {
  /* overflow-x:hidden on html/body eats the first vertical pan on iOS/Chrome.
     clip keeps horizontal bleed killed without scroll containment. */
  html.html,
  html {
    overflow-x: clip !important;
    overflow-y: auto !important;
    overscroll-behavior-x: none !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
    height: auto !important;
    min-height: 100% !important;
  }
  html body,
  body,
  body.site {
    overflow-x: clip !important;
    overflow-y: visible !important;
    overscroll-behavior-y: auto !important;
    touch-action: pan-y !important;
    height: auto !important;
    min-height: 100% !important;
    position: relative !important;
  }

  /* Home IceSlideshow: under-viewport so first flick always moves the page */
  html body #iceslideshow,
  html body #iceslideshow.container,
  html body #iceslideshow.iceslideshow-fill,
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow.iceslideshow-fill,
  html body.homepage #iceslideshow {
    height: 92svh !important;
    height: 92dvh !important;
    min-height: 92svh !important;
    min-height: 92dvh !important;
    max-height: 92svh !important;
    max-height: 92dvh !important;
    overflow: hidden !important;
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
    -webkit-user-select: none !important;
    user-select: none !important;
  }

  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .carousel-inner > .item,
  html body #iceslideshow .iceslideshow-fill,
  html body #iceslideshow .item > img,
  html body #iceslideshow .item > a,
  html body #iceslideshow .item > a > img,
  html body #iceslideshow a,
  html body #iceslideshow img {
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
  }

  /* Header must NOT be a 100vh ghost layer over the hero */
  html body #header,
  html body.kasimov-page-home #header,
  html body.kasimov-chrome100 #header,
  html body.kasimov-page-home.kasimov-chrome100 #header {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    pointer-events: none !important;
  }
  html body #header a,
  html body #header button,
  html body #header .mobile-nav-toggle,
  html body #header #logo,
  html body #header #logo img,
  html body #header .kasimov-header-actions a,
  html body #header .kasimov-header-social a {
    pointer-events: auto !important;
  }

  /* Contacts padding / empty strip must not steal the first pan */
  html body #notice,
  html body #notice.kasimov-hero-contacts,
  html body #notice.kasimov-contacts-sticky,
  html body .kasimov-hero-contacts {
    pointer-events: none !important;
  }
  html body #notice a,
  html body .kasimov-hero-contacts a {
    pointer-events: auto !important;
  }
}

/* === BATCH100q27 first-pan === */
@media only screen and (max-width: 979px) {
  html, html.html {
    overflow-x: clip !important;
    overflow-y: auto !important;
    touch-action: pan-y !important;
  }
  html body, body, body.site {
    overflow-x: clip !important;
    overflow-y: visible !important;
    touch-action: pan-y !important;
  }
  html body #iceslideshow,
  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill,
  html body #iceslideshow a,
  html body #iceslideshow img {
    touch-action: pan-y !important;
  }
}

/* === BATCH100q28 menu-over-address === */
@media only screen and (max-width: 979px) {
  /* Menu paints above sticky address / scroll-dock */
  html body.kasimov-menu-open #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-menu-open #mainmenu.is-open ul.nav.menu,
  html body.kasimov-menu-in-rail.kasimov-menu-open #mainmenu.is-open ul#icemegamenu,
  html body.kasimov-menu-in-rail.kasimov-menu-open #mainmenu.is-open ul.nav.menu {
    z-index: 2147483600 !important;
    max-height: calc(100vh - 72px) !important;
    max-height: calc(100svh - 72px) !important;
    max-height: calc(100dvh - 72px) !important;
    bottom: auto !important;
    overflow: auto !important;
  }

  /* Sticky address / contacts sit under the open menu */
  html body.kasimov-menu-open #notice,
  html body.kasimov-menu-open #notice.kasimov-contacts-sticky,
  html body.kasimov-menu-open #notice.kasimov-hero-contacts,
  html body.kasimov-menu-open .kasimov-hero-contacts,
  html body.kasimov-menu-open #kasimov-scroll-dock,
  html body.kasimov-menu-open .kasimov-scroll-dock,
  html body.kasimov-menu-open .kasimov-sticky-dates {
    z-index: 1 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }
}

/* === BATCH100q29 native scroll === */
@media only screen and (max-width: 979px) {
  /* Native momentum — never overflow-x:hidden (iOS first-pan trap) */
  html, html.html {
    overflow-x: clip !important;
    overflow-y: auto !important;
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-behavior: auto !important;
  }
  html body, body, body.site {
    overflow-x: clip !important;
    overflow-y: visible !important;
    touch-action: pan-y !important;
    overscroll-behavior-y: auto !important;
  }

  /* Hero fills the screen — no 8% peek of the next block */
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.homepage #iceslideshow {
    height: 100vh !important;
    height: 100svh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100svh !important;
    min-height: 100dvh !important;
    max-height: none !important;
    overflow: hidden !important;
    touch-action: pan-y !important;
    position: relative !important;
    z-index: 1 !important;
    transform: none !important;
    -webkit-transform: none !important;
  }

  html body #iceslideshow .carousel,
  html body #iceslideshow .carousel-inner,
  html body #iceslideshow .item,
  html body #iceslideshow .iceslideshow-fill,
  html body #iceslideshow a,
  html body #iceslideshow img {
    touch-action: pan-y !important;
  }

  /* CRITICAL: stop next block jumping onto the hero */
  html body.kasimov-page-home #content,
  html body.kasimov-page-home section#content,
  html body.kasimov-page-home #content.blog,
  html body.homepage #content,
  html body.homepage section#content {
    margin-top: 0 !important;
    margin: 0 auto !important;
    transform: none !important;
    -webkit-transform: none !important;
    position: relative !important;
    z-index: 2 !important;
    top: auto !important;
  }

  /* Cards must not pop/jump when entering the viewport */
  html body.kasimov-page-home #content .blog .item,
  html body.kasimov-page-home .kasimov-promo-card--v2,
  html body.kasimov-page-home .kasimov-home-tile,
  html body.kasimov-page-home #kasimov-home-extras .sidebar_module,
  html body.kasimov-page-home .kasimov-reveal,
  html body .kasimov-promo-card--v2,
  html body .kasimov-home-tile,
  html body .blog .item {
    content-visibility: visible !important;
    contain: none !important;
    will-change: auto !important;
  }

  /* Dock stays compositor-fixed; no transition thrash */
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock,
  html body .kasimov-scroll-dock {
    transition: none !important;
    will-change: auto !important;
  }
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock #notice,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock #notice.kasimov-contacts-sticky,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-hero-contacts {
    transition: none !important;
    transform: none !important;
    -webkit-transform: none !important;
    will-change: auto !important;
    opacity: 1 !important;
  }
}

/* === BATCH afisha sightseeing link === */
html body.kasimov-page-sightseeing .kasimov-sight-afisha {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 760px !important;
  margin: 4px auto 22px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: center !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-afisha a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 11px 22px !important;
  margin: 0 !important;
  background: #2f4a42 !important;
  color: #fff !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  line-height: 1.25 !important;
  text-align: center !important;
  text-decoration: none !important;
  border: none !important;
  border-radius: 4px !important;
  box-shadow: 0 6px 16px rgba(20, 30, 28, 0.12) !important;
  white-space: nowrap !important;
}
html body.kasimov-page-sightseeing .kasimov-sight-afisha a:hover,
html body.kasimov-page-sightseeing .kasimov-sight-afisha a:focus {
  background: #3d6558 !important;
  color: #fff !important;
  text-decoration: none !important;
}
@media only screen and (max-width: 480px) {
  html body.kasimov-page-sightseeing .kasimov-sight-afisha a {
    width: 100% !important;
    max-width: 320px !important;
    white-space: normal !important;
  }
}


/* === BATCH102_HOT_OFFER_NOCLIP === */
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body.kasimov-page-booking section#content,
html body #content:has(#tl-booking-form),
html body #content.container:has(#tl-booking-form),
html body #content:has(#tl-search-form),
html body #content.container:has(#tl-search-form),
html body #content:has(.tl-container),
html body #content:has(iframe[id^="tlFrame"]),
html body #middlecol:has(#tl-booking-form),
html body.kasimov-page-booking #middlecol,
html body.kasimov-page-booking .item-page,
html body.kasimov-page-booking .inside,
html body #wrapper:has(#tl-booking-form),
html body #main:has(#tl-booking-form) {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}
html body #tl-booking-form,
html body #tl-search-form,
html body #block-search,
html body .tl-container,
html body .kasimov-tl-search,
html body .kasimov-hero-booking {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
}
html body #tl-booking-form iframe,
html body #tl-search-form iframe,
html body #block-search iframe,
html body .kasimov-hero-booking iframe,
html body iframe[id^="tlFrame"],
html body iframe[src*="travelline"],
html body iframe[src*="tlintegration"] {
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  pointer-events: auto !important;
}
html body #iceslideshow.kasimov-hero-has-booking,
html body #headerimage.kasimov-hero-has-booking,
html body #iceslideshow.kasimov-hero-has-booking .carousel,
html body #iceslideshow.kasimov-hero-has-booking .carousel-inner {
  overflow: visible !important;
}
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking {
    overflow: visible !important;
    max-height: none !important;
    height: auto !important;
    z-index: 220 !important;
  }
}

/* === BATCH104_TL_HOT_OFFER_POPUP === */
/* TravelLine "Горячее предложение" floats above search form and is wider than
   the booking strip — parents must NOT clip horizontally. */

/* 1) Hero hosts — allow popup to paint outside carousel bounds */
html body #iceslideshow,
html body #iceslideshow.kasimov-hero-has-booking,
html body #headerimage.kasimov-hero-has-booking,
html body #iceslideshow .carousel,
html body #iceslideshow .carousel-inner,
html body #iceslideshow .carousel-inner > .item,
html body #iceslideshow .item.active {
  overflow: visible !important;
}

/* 2) Booking strip + TL containers — no horizontal clip, full width stage */
html body .kasimov-hero-booking,
html body .kasimov-hero-booking__inner,
html body .kasimov-hero-booking #block-search,
html body .kasimov-hero-booking #tl-search-form,
html body .kasimov-hero-booking .kasimov-tl-search,
html body .kasimov-hero-booking .tl-container,
html body #block-search,
html body #tl-search-form,
html body .kasimov-tl-search {
  overflow: visible !important;
  max-width: none !important;
  width: 100% !important;
  clip: auto !important;
  clip-path: none !important;
}

/* 3) iframe must be wide enough; TL expands height via attr — never clip x */
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking {
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    overflow: visible !important;
    z-index: 400 !important;
  }
  html body .kasimov-hero-booking #block-search,
  html body .kasimov-hero-booking #tl-search-form {
    max-width: min(1130px, 96vw) !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
    position: relative !important;
  }
  html body .kasimov-hero-booking iframe,
  html body .kasimov-hero-booking #tl-search-form iframe,
  html body #tl-search-form iframe {
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
    overflow: visible !important;
    /* allow popup taller than base bar */
    max-height: none !important;
  }
}

/* 4) Undo earlier mobile-adapt rule that forced overflow-x:auto on TL widgets
   (that creates a clipping scrollport and cuts the hot-offer card in half). */
html body .tl-container,
html body .tl-bar,
html body .tl-widget,
html body #block-search,
html body .tl-container-fluid,
html body .kasimov-hero-booking .tl-container,
html body .kasimov-hero-booking .tl-widget {
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
  max-width: none !important;
}

/* 5) Booking PAGE form — same popup can appear there */
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body #tl-booking-form,
html body #tl-booking-form iframe {
  overflow: visible !important;
  max-width: none !important;
}

/* === BATCH105_TL_OFFER_WIDTH === */
/* Hot-offer TL iframe is ~456×188 and clips "Горячее предложение" text.
   Widen offer-sized frames; keep search-form iframe fluid. */
html body .kasimov-hero-booking,
html body .kasimov-hero-booking #block-search,
html body .kasimov-hero-booking #tl-search-form,
html body #iceslideshow.kasimov-hero-has-booking,
html body #iceslideshow .carousel,
html body #iceslideshow .carousel-inner {
  overflow: visible !important;
  overflow-x: visible !important;
}

/* Do not force 100% width on every TL iframe — that breaks the offer card frame */
html body .kasimov-hero-booking iframe[width="456px"],
html body .kasimov-hero-booking iframe[width="456"],
html body #tl-search-form iframe[width="456px"],
html body #tl-search-form iframe[width="456"],
html body iframe[id^="tlFrame"][height="188px"],
html body iframe[id^="tlFrame"][height="188"] {
  width: 580px !important;
  min-width: 580px !important;
  max-width: none !important;
  height: 200px !important;
  min-height: 188px !important;
  overflow: visible !important;
}

/* === BATCH106_TL_OVERFLOW_X_KILL === */
html body .tl-container,
html body .tl-bar,
html body .tl-widget,
html body .tl-container-fluid,
html body #block-search,
html body #tl-search-form,
html body .kasimov-tl-search,
html body .kasimov-hero-booking,
html body .kasimov-hero-booking *,
html body #iceslideshow.kasimov-hero-has-booking,
html body #iceslideshow.kasimov-hero-has-booking .carousel,
html body #iceslideshow.kasimov-hero-has-booking .carousel-inner,
html body #iceslideshow.kasimov-hero-has-booking .item {
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: visible !important;
}
/* Offer card iframe — room for full Russian title + CTA */
html body iframe[id^="tlFrame"] {
  max-width: none !important;
}
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking iframe[height="188px"],
  html body .kasimov-hero-booking iframe[height="188"],
  html body #tl-search-form iframe[height="188px"],
  html body #tl-search-form iframe[height="188"],
  html body iframe[id^="tlFrame"][width="456px"],
  html body iframe[id^="tlFrame"][width="456"] {
    width: 640px !important;
    min-width: 640px !important;
    max-width: none !important;
  }
}

/* === BATCH107_BOOKING_SAFE === */
/* UNBREAK booking module: never lock #tl-booking-form iframe size */
html body #tl-booking-form,
html body #tl-booking-form > div,
html body.kasimov-page-booking #tl-booking-form {
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
  height: auto !important;
  min-height: 400px !important;
}
html body #tl-booking-form iframe,
html body.kasimov-page-booking #tl-booking-form iframe,
html body #tl-booking-form iframe[id^="tlFrame"] {
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  /* height must stay under TravelLine control — do NOT set height/min-height here */
  max-height: none !important;
  /* display left to TL (prod hides empty placeholder) */
}

/* Offer width rules: HERO SEARCH ONLY (not booking page) */
html body.kasimov-page-booking iframe[id^="tlFrame"],
html body.kasimov-page-booking #tl-booking-form iframe[width="456px"],
html body.kasimov-page-booking #tl-booking-form iframe[height="188px"],
html body.kasimov-page-booking #tl-booking-form iframe[height="188"],
html body.kasimov-page-booking #tl-booking-form iframe[height="200"],
html body.kasimov-page-booking #tl-booking-form iframe[height="201"] {
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
}

/* Keep hero hot-offer widen, but only under .kasimov-hero-booking */
@media only screen and (min-width: 980px) {
  html body .kasimov-hero-booking iframe[width="456px"],
  html body .kasimov-hero-booking iframe[width="456"],
  html body .kasimov-hero-booking iframe[height="188px"],
  html body .kasimov-hero-booking iframe[height="188"] {
    width: 640px !important;
    min-width: 640px !important;
    max-width: none !important;
  }
}


/* === BATCH112_BOOKING_HANDS_OFF === */
html body #tl-booking-form,
html body.kasimov-page-booking #tl-booking-form {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: none !important;
  overflow: visible !important;
  /* no height/min-height — TravelLine sizes the iframe */
}
html body #tl-booking-form iframe,
html body.kasimov-page-booking #tl-booking-form iframe {
  /* display left to TL (prod hides empty placeholder) */
  /* visibility left to TL */
  width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  /* intentionally no height / min-height */
}


/* === BATCH114_BOOKING_LIKE_PROD === */
/* Match kasimovhotel.ru/booking: no page-hero band, search strip + full booking form */

/* 1) Kill empty black hero (preview mounts #headerimage.kasimov-page-hero-host; prod uses #headerimage-noimage) */
html body.kasimov-page-booking #headerimage,
html body.kasimov-page-booking #headerimage.kasimov-page-hero-host,
html body.kasimov-page-booking #kasimov-page-hero,
html body.kasimov-page-booking #headerimage-noimage,
html body.kasimov-page-booking.kasimov-has-page-hero #headerimage,
html body.kasimov-page-booking.kasimov-has-page-hero #kasimov-page-hero,
html body:has(#tl-booking-form) #headerimage.kasimov-page-hero-host,
html body:has(#tl-booking-form) #kasimov-page-hero {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  pointer-events: none !important;
}

/* 2) Content / wrappers never clip TL (prod has plain overflow) */
html body.kasimov-page-booking,
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body.kasimov-page-booking section#content,
html body.kasimov-page-booking #middlecol,
html body.kasimov-page-booking .item-page,
html body.kasimov-page-booking .inside,
html body.kasimov-page-booking #content_shadow,
html body.kasimov-page-booking .article-body,
html body.kasimov-page-booking [itemprop="articleBody"] {
  overflow: visible !important;
  max-height: none !important;
  clip: auto !important;
  clip-path: none !important;
}

/* 3) Search strip like prod (margin -15px) */
html body.kasimov-page-booking #tl-search-form,
html body #content > #tl-search-form {
  display: block !important;
  width: calc(100% + 30px) !important;
  max-width: none !important;
  margin: -15px 0 12px -15px !important;
  overflow: visible !important;
  min-height: 54px !important;
  height: auto !important;
  background: transparent !important;
}
html body.kasimov-page-booking #tl-search-form iframe,
html body #content > #tl-search-form iframe {
  width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  pointer-events: auto !important;
}

/* 4) Booking form full width, TravelLine owns height */
html body.kasimov-page-booking #tl-booking-form,
html body #tl-booking-form {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 600px !important;
  height: auto !important;
  overflow: visible !important;
  background: transparent !important;
}
html body.kasimov-page-booking #tl-booking-form iframe,
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"],
html body #tl-booking-form iframe {
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  /* display left to TL (prod hides empty placeholder) */
  /* visibility left to TL */
  overflow: visible !important;
  pointer-events: auto !important;
}

/* 5) Normal header chrome (not full-bleed black) */
html body.kasimov-page-booking #header,
html body.kasimov-page-booking header#header {
  background: transparent !important;
  min-height: 72px !important;
  max-height: none !important;
  overflow: visible !important;
}

/* 6) Hot-offer widget must not be clipped on booking */
html body.kasimov-page-booking .tl-widgets-container,
html body.kasimov-page-booking .tl-widget {
  overflow: visible !important;
  max-width: none !important;
}


/* === BATCH115_BOOKING_FORCE_NO_BLACK === */
/* Path class may lag; force-hide empty page-hero host whenever booking form present */
html body:has(#tl-booking-form) #headerimage.kasimov-page-hero-host,
html body:has(#tl-booking-form) #kasimov-page-hero,
html body:has(#tl-search-form) #headerimage.kasimov-page-hero-host,
html body:has(#tl-search-form) #kasimov-page-hero,
html body.kasimov-page-booking #headerimage.kasimov-page-hero-host,
html body.kasimov-page-booking #kasimov-page-hero {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  visibility: hidden !important;
  background: transparent !important;
  pointer-events: none !important;
}
/* Prod-like: keep header + red search strip visible, booking form unclipped */
html body:has(#tl-booking-form) #tl-search-form {
  display: block !important;
  margin: -15px 0 12px -15px !important;
  overflow: visible !important;
}
html body:has(#tl-booking-form) #tl-booking-form {
  min-height: 600px !important;
  overflow: visible !important;
}
html body:has(#tl-booking-form) #content,
html body:has(#tl-booking-form) #middlecol,
html body:has(#tl-booking-form) .item-page {
  overflow: visible !important;
  max-height: none !important;
}


/* === BATCH113c_BOOKING_HEADER_CHROME === */
html body.kasimov-page-booking #header,
html body.kasimov-page-booking header#header,
html body.kasimov-page-booking #header .container,
html body.kasimov-page-booking #header .row {
  background: #fff !important;
  background-color: #fff !important;
  overflow: visible !important;
  height: auto !important;
  max-height: none !important;
}
html body.kasimov-page-booking #header #logo,
html body.kasimov-page-booking #header #logo img,
html body.kasimov-page-booking #kasimov-header-brand,
html body.kasimov-page-booking #kasimov-header-brand img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-height: 72px !important;
  width: auto !important;
  background: transparent !important;
}
html body.kasimov-page-booking #header .kasimov-social,
html body.kasimov-page-booking #header #social,
html body.kasimov-page-booking #header .header-right {
  background: transparent !important;
  overflow: visible !important;
}
html body.kasimov-page-booking .breadcrumb,
html body.kasimov-page-booking [aria-label="Навигатор сайта"] {
  display: block !important;
  visibility: visible !important;
  overflow: visible !important;
  max-width: 100% !important;
  white-space: normal !important;
  background: transparent !important;
  margin: 8px 0 12px !important;
}
html body.kasimov-page-booking #content_shadow {
  display: none !important;
  height: 0 !important;
  background: none !important;
}


/* === BATCH115b_BOOKING_IFRAME_HEIGHT_FREE === */
html body.kasimov-page-booking #tl-booking-form iframe,
html body:has(#tl-booking-form) #tl-booking-form iframe,
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"],
html body:has(#tl-booking-form) #tl-booking-form iframe[id^="tlFrame"] {
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-height: 0 !important;
  /* display left to TL (prod hides empty placeholder) */
  /* visibility left to TL */
  overflow: visible !important;
  pointer-events: auto !important;
  transform: none !important;
}


/* === BATCH117_BOOKING_LIKE_PROD_PLACEHOLDER === */
/* Prod hides the empty TL placeholder iframe (height=201, no src).
   Our earlier batches forced display:block on every #tl-booking-form iframe,
   which left a grey/black band + spinner above the real form. */
html body.kasimov-page-booking #tl-booking-form iframe:not([src]),
html body.kasimov-page-booking #tl-booking-form iframe[src=""],
html body:has(#tl-booking-form) #tl-booking-form iframe:not([src]),
html body:has(#tl-booking-form) #tl-booking-form iframe[src=""] {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  width: 0 !important;
  min-width: 0 !important;
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: auto !important;
  position: absolute !important;
  left: -9999px !important;
}

/* Real booking iframe — full width, TL owns height (inline style ~744px) */
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html body.kasimov-page-booking #tl-booking-form iframe[src*="travelline"],
html body:has(#tl-booking-form) #tl-booking-form iframe[src*="tlintegration"],
html body:has(#tl-booking-form) #tl-booking-form iframe[src*="travelline"] {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: visible !important;
  pointer-events: auto !important;
  position: relative !important;
  left: auto !important;
}

/* Neutralize hot-offer size locks that target any tlFrame by id/height */
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"][height="188px"],
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"][height="188"],
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"][height="200"],
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"][height="201"],
html body:has(#tl-booking-form) #tl-booking-form iframe[id^="tlFrame"][height="201"] {
  /* only apply size unlock when it has a real src; empty ones handled above */
}

html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"][height="201"],
html body:has(#tl-booking-form) #tl-booking-form iframe[src*="tlintegration"][height="201"] {
  /* if TL briefly uses 201 with src, still allow growth via inline style */
  max-height: none !important;
}

/* Search strip + no black hero — keep */
html body.kasimov-page-booking #headerimage.kasimov-page-hero-host,
html body.kasimov-page-booking #kasimov-page-hero,
html body:has(#tl-booking-form) #headerimage.kasimov-page-hero-host,
html body:has(#tl-booking-form) #kasimov-page-hero {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  visibility: hidden !important;
  background: transparent !important;
}
html body.kasimov-page-booking #tl-search-form,
html body:has(#tl-booking-form) #tl-search-form {
  display: block !important;
  margin: -15px 0 12px -15px !important;
  overflow: visible !important;
}
html body.kasimov-page-booking #tl-booking-form,
html body:has(#tl-booking-form) #tl-booking-form {
  min-height: 0 !important; /* was 600 — let box hug real iframe like prod (~755) */
  height: auto !important;
  overflow: visible !important;
}


/* === BATCH113d_NO_STICKY_ON_BOOKING === */
html body.kasimov-page-booking .kasimov-sticky-dates,
html body.kasimov-page-booking .kasimov-scroll-dock,
html body:has(#tl-booking-form) .kasimov-sticky-dates,
html body:has(#tl-booking-form) .kasimov-scroll-dock {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body.kasimov-page-booking.kasimov-has-sticky-dates #footer,
html body.kasimov-page-booking.kasimov-has-scroll-dock #footer {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
/* Booking page: content full width of stage, no weird black header voids */
html body.kasimov-page-booking #header {
  width: 100% !important;
  max-width: none !important;
  left: 0 !important;
  right: 0 !important;
}


/* === BATCH118_BOOKING_CLASSIC_STACK === */
/* Match kasimovhotel.ru/booking stack: menu → red search → breadcrumbs → title → form */
html body.kasimov-page-booking #tl-search-form,
html body:has(#tl-booking-form) #tl-search-form {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  z-index: auto !important;
  transform: none !important;
  float: none !important;
}
html body.kasimov-page-booking .kasimov-sticky-dates,
html body.kasimov-page-booking .kasimov-header-actions,
html body:has(#tl-booking-form) .kasimov-sticky-dates {
  /* keep chrome, but search strip itself must not stick over menu */
}
html body.kasimov-page-booking #header,
html body.kasimov-page-booking header#header {
  position: relative !important;
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  min-height: 72px !important;
  overflow: visible !important;
  background: #fff !important;
}
html body.kasimov-page-booking #mainmenu,
html body.kasimov-page-booking #mainmenu .container {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  overflow: visible !important;
}


/* === BATCH113e_BOOKING_ONLY_BOOKING_FORM === */
html body.kasimov-page-booking #tl-search-form,
html body.kasimov-page-booking #block-search,
html body.kasimov-page-booking .kasimov-hero-booking,
html body.kasimov-page-booking .kasimov-sticky-dates,
html body.kasimov-page-booking .kasimov-scroll-dock,
html body:has(#tl-booking-form) #tl-search-form,
html body:has(#tl-booking-form) #block-search {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}
/* Give content room under fixed header-actions chrome */
html body.kasimov-page-booking #content,
html body.kasimov-page-booking section#content {
  padding-top: 24px !important;
  margin-top: 0 !important;
}
html body.kasimov-page-booking.kasimov-chrome100 #content,
html body.kasimov-page-booking.kasimov-chrome100 section#content {
  padding-top: 140px !important; /* clear fixed kasimov-header-actions (128px) */
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking.kasimov-chrome100 #content,
  html body.kasimov-page-booking.kasimov-chrome100 section#content {
    padding-top: 120px !important;
  }
}


/* === BATCH119_BOOKING_MENU_ABOVE_SEARCH === */
/* Prod stack: white header+menu, then red TL search, then content */
@media only screen and (min-width: 980px) {
  html body.kasimov-page-booking .kasimov-header-actions,
  html body:has(#tl-booking-form) .kasimov-header-actions {
    /* keep floating social, but do not steal the search strip into the top chrome */
    position: absolute !important;
    top: 12px !important;
    right: 16px !important;
    z-index: 40 !important;
  }
  html body.kasimov-page-booking #header,
  html body.kasimov-page-booking header#header,
  html body:has(#tl-booking-form) #header {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    height: auto !important;
    min-height: 72px !important;
    max-height: none !important;
    overflow: visible !important;
    background: #fff !important;
    transform: none !important;
  }
  html body.kasimov-page-booking #mainmenu,
  html body.kasimov-page-booking #mainmenu .container,
  html body.kasimov-page-booking #icemegamenu,
  html body:has(#tl-booking-form) #mainmenu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    position: relative !important;
    transform: none !important;
  }
  html body.kasimov-page-booking #tl-search-form,
  html body:has(#tl-booking-form) #tl-search-form {
    position: relative !important;
    top: auto !important;
    inset: auto !important;
    z-index: 1 !important;
    margin: -15px 0 12px -15px !important;
  }
  /* Prevent body chrome classes from tucking header under hero on booking */
  html body.kasimov-page-booking.kasimov-header-after-hero #header,
  html body.kasimov-page-booking.kasimov-header-after-hero #mainmenu {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}


/* === BATCH113f_BOOKING_LIGHT_CHROME === */
html body.kasimov-page-booking,
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main {
  background: #f3eee6 !important;
  background-image: none !important;
  background-color: #f3eee6 !important;
}
html body.kasimov-page-booking #header,
html body.kasimov-page-booking header#header,
html body.kasimov-page-booking .kasimov-header-actions {
  background: #ffffff !important;
  background-color: #ffffff !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.06) !important;
}
html body.kasimov-page-booking .kasimov-header-actions {
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  max-width: none !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body.kasimov-page-booking section#content {
  background: #ffffff !important;
  box-shadow: 0 8px 40px rgba(0,0,0,.08) !important;
}
html body.kasimov-page-booking #content_shadow {
  display: none !important;
}


/* === BATCH123_SEARCH_STRIP_VISIBLE === */
html body.kasimov-page-booking #tl-search-form,
html body:has(#tl-booking-form) #tl-search-form,
html body:has(#tl-search-form) #tl-search-form {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  height: auto !important;
  min-height: 54px !important;
  max-height: none !important;
  overflow: visible !important;
  position: relative !important;
  margin: -15px 0 12px -15px !important;
  width: calc(100% + 30px) !important;
  max-width: none !important;
  pointer-events: auto !important;
  z-index: 5 !important;
}
html body.kasimov-page-booking #tl-search-form iframe,
html body:has(#tl-booking-form) #tl-search-form iframe {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-height: 54px !important;
  overflow: visible !important;
  pointer-events: auto !important;
  opacity: 1 !important;
}

/* BATCH125_SEARCH_STRIP — match kasimovhotel.ru booking search bar */
#tl-search-form{
  display:block !important;
  visibility:visible !important;
  min-height:54px;
  width:100%;
  overflow:visible !important;
}
#tl-search-form iframe{
  display:block !important;
  width:100% !important;
  min-height:54px !important;
  border:0 !important;
}
/* empty booking placeholder iframe stays hidden */
#tl-booking-form iframe:not([src]),
#tl-booking-form iframe[src=""],
#tl-booking-form iframe[height="201"]:not([src*="travelline"]):not([src*="hotel"]){
  display:none !important;
  height:0 !important;
  min-height:0 !important;
  border:0 !important;
}

/* BATCH126_HIDE_TL_BADGE — hide clipped TravelLine "Отличная цена" seal in search module */
html body #tl-search-form {
  overflow: hidden !important;
  position: relative !important;
}
html body #tl-search-form > div {
  overflow: hidden !important;
  max-width: 100% !important;
}
/* Clip right ~78px where the yellow badge sits */
html body #tl-search-form iframe {
  display: block !important;
  max-width: none !important;
  clip-path: inset(0 78px 0 0) !important;
  -webkit-clip-path: inset(0 78px 0 0) !important;
}

/* BATCH126_HIDE_TL_BADGE — hide clipped TravelLine seal + Platform logo under the button */
html body #tl-search-form {
  overflow: hidden !important;
  position: relative !important;
  min-height: 54px !important;
  max-height: 54px !important;
}
html body #tl-search-form > div {
  overflow: hidden !important;
  max-width: 100% !important;
  max-height: 54px !important;
}
/* Right: yellow seal; Bottom: "TravelLine: Platform" wordmark */
html body #tl-search-form iframe {
  display: block !important;
  max-width: none !important;
  clip-path: inset(0 78px 13px 0) !important;
  -webkit-clip-path: inset(0 78px 13px 0) !important;
}

/* BATCH128_SEARCH_AND_LOGO */
/* TL search: clickable, no clip-path */
html body #tl-search-form {
  display: block !important;
  visibility: visible !important;
  overflow: visible !important;
  position: relative !important;
  min-height: 54px !important;
  max-height: none !important;
  width: 100% !important;
  pointer-events: auto !important;
  z-index: 5 !important;
}
html body #tl-search-form > div,
html body #tl-search-form iframe {
  pointer-events: auto !important;
  clip-path: none !important;
  -webkit-clip-path: none !important;
  overflow: visible !important;
  max-height: none !important;
}
html body #tl-search-form iframe {
  display: block !important;
  min-height: 54px !important;
  border: 0 !important;
}
html body #tl-booking-form iframe:not([src]),
html body #tl-booking-form iframe[src=""] {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
}

/* BATCH129_LOGO_ABOVE_MENU — logo must sit above menu, not under it */
html body.kasimov-page-booking .kasimov-header-actions,
html body:has(#tl-booking-form) .kasimov-header-actions,
html body.kasimov-chrome100:not(.kasimov-page-home) .kasimov-header-actions {
  position: absolute !important;
  top: 16px !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  height: 76px !important;
  max-height: 76px !important;
  min-height: 76px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  overflow: visible !important;
  z-index: 260 !important; /* above #mainmenu z-index 201 */
  background: transparent !important;
  box-shadow: none !important;
  pointer-events: none !important; /* let menu receive clicks except on brand/social */
  padding: 0 16px !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-booking #kasimov-header-brand,
html body:has(#tl-booking-form) #kasimov-header-brand,
html body.kasimov-chrome100:not(.kasimov-page-home) #kasimov-header-brand,
html body.kasimov-page-booking .kasimov-header-brand {
  display: flex !important;
  visibility: visible !important;
  align-items: center !important;
  height: 76px !important;
  max-height: 76px !important;
  width: auto !important;
  max-width: 200px !important;
  overflow: visible !important;
  z-index: 261 !important;
  pointer-events: auto !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
}
html body.kasimov-page-booking #logo,
html body.kasimov-page-booking #logo.kasimov-logo-in-header,
html body:has(#tl-booking-form) #logo,
html body.kasimov-chrome100:not(.kasimov-page-home) #logo.kasimov-logo-in-header {
  display: flex !important;
  visibility: visible !important;
  align-items: center !important;
  height: 72px !important;
  max-height: 72px !important;
  width: auto !important;
  overflow: visible !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 261 !important;
  pointer-events: auto !important;
}
html body.kasimov-page-booking #logo img,
html body.kasimov-page-booking #logo .logo,
html body:has(#tl-booking-form) #logo img,
html body.kasimov-chrome100:not(.kasimov-page-home) #logo img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-height: 58px !important;
  max-width: 170px !important;
  object-fit: contain !important;
  overflow: visible !important;
  clip-path: none !important;
}
html body.kasimov-page-booking #kasimov-header-rail,
html body:has(#tl-booking-form) #kasimov-header-rail {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  height: 72px !important;
  max-height: 72px !important;
  pointer-events: auto !important;
  z-index: 261 !important;
}
/* Menu below logo row — no overlap / no clip */
html body.kasimov-page-booking #header,
html body:has(#tl-booking-form) #header {
  padding-top: 96px !important; /* reserve logo row + top gap */
  overflow: visible !important;
}
html body.kasimov-page-booking,
html body:has(#tl-booking-form) {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
html body.kasimov-page-booking #header .container,
html body.kasimov-page-booking #header .row {
  overflow: visible !important;
}
html body.kasimov-page-booking #mainmenu,
html body:has(#tl-booking-form) #mainmenu {
  position: relative !important;
  z-index: 200 !important;
  margin-top: 0 !important;
  padding-top: 8px !important;
  overflow: visible !important;
}

/* BATCH129b_LOGO_TOP — keep emblem fully inside viewport */
html body.kasimov-page-booking .kasimov-header-actions,
html body:has(#tl-booking-form) .kasimov-header-actions {
  top: 16px !important;
  height: 76px !important;
  max-height: 76px !important;
  min-height: 76px !important;
  overflow: visible !important;
}
html body.kasimov-page-booking #kasimov-header-brand,
html body.kasimov-page-booking #logo,
html body.kasimov-page-booking #logo.kasimov-logo-in-header {
  height: 76px !important;
  max-height: 76px !important;
  overflow: visible !important;
  align-items: center !important;
}
html body.kasimov-page-booking #logo img,
html body.kasimov-page-booking #logo .logo {
  max-height: 58px !important;
  max-width: 170px !important;
  margin-top: 0 !important;
}

/* === BATCH146_IPHONE === */
@media only screen and (max-width:979px){
  /* --- iPhone scrollport: one scroller, first pan works --- */
  html{
    width:100% !important;
    max-width:100% !important;
    overflow-x:clip !important;
    overflow-y:auto !important;
    height:auto !important;
    min-height:100% !important;
    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-y:auto !important;
    touch-action:pan-y !important;
    scroll-behavior:auto !important;
  }
  html body,
  html body.site{
    width:100% !important;
    max-width:100% !important;
    overflow-x:clip !important;
    overflow-y:visible !important;
    height:auto !important;
    min-height:100% !important;
    touch-action:pan-y !important;
    position:relative !important;
  }
  html body #wrapper,
  html body #main,
  html body #mainbody,
  html body #content,
  html body #iceslideshow,
  html body #header{
    max-width:100% !important;
    width:100% !important;
    overflow:visible !important;
    touch-action:pan-y !important;
  }
  /* Empty chrome must not eat the first finger pan */
  html body #kasimov-scroll-dock,
  html body .kasimov-scroll-dock{
    pointer-events:none !important;
    background:transparent !important;
    background-color:transparent !important;
    box-shadow:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
  }
  html body #kasimov-scroll-dock .kasimov-sticky-dates,
  html body #kasimov-scroll-dock .kasimov-sticky-dates input,
  html body #kasimov-scroll-dock .kasimov-sticky-dates select,
  html body #kasimov-scroll-dock .kasimov-sticky-dates button,
  html body #kasimov-scroll-dock #notice a{
    pointer-events:auto !important;
  }

  /* --- Booking bar: cream only, never black plate --- */
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on,
  html body .kasimov-sticky-dates.is-mobile,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-sticky-dates,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-sticky-dates.is-on,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock .kasimov-sticky-dates.is-mobile{
    background:#fffcf8 !important;
    background-color:#fffcf8 !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    box-shadow:0 -4px 18px rgba(0,0,0,.12) !important;
    max-height:none !important;
    min-height:0 !important;
  }
  html body .kasimov-sticky-dates::before,
  html body .kasimov-sticky-dates::after,
  html body #kasimov-scroll-dock::before,
  html body #kasimov-scroll-dock::after,
  html body #notice::before,
  html body #notice::after{
    content:none !important;
    display:none !important;
    background:none !important;
  }

  /* --- Contacts: NO black plate, right side of hero/dock --- */
  html body #notice,
  html body #notice.kasimov-contacts-sticky,
  html body #notice.kasimov-hero-contacts,
  html body .kasimov-hero-contacts,
  html body .kasimov-hero-contacts.kasimov-contacts-sticky,
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #notice.kasimov-contacts-sticky,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice.kasimov-contacts-sticky,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice.kasimov-hero-contacts{
    background:transparent !important;
    background-color:transparent !important;
    background-image:none !important;
    -webkit-backdrop-filter:none !important;
    backdrop-filter:none !important;
    box-shadow:none !important;
    border:0 !important;
    text-align:right !important;
    float:none !important;
  }
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice.kasimov-contacts-sticky{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    justify-content:flex-end !important;
    width:100% !important;
    padding:4px 12px 2px !important;
    margin:0 !important;
    min-height:0 !important;
    pointer-events:none !important;
  }
  /* In-hero (desktop-like / pages without dock move): pin right */
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-contacts:not(.kasimov-contacts-sticky),
  html body:not(.kasimov-has-scroll-dock) #iceslideshow #notice,
  html body:not(.kasimov-has-scroll-dock) #notice.kasimov-hero-contacts{
    position:absolute !important;
    left:auto !important;
    right:max(12px, env(safe-area-inset-right, 0px)) !important;
    bottom:max(72px, calc(env(safe-area-inset-bottom, 0px) + 64px)) !important;
    top:auto !important;
    width:auto !important;
    max-width:min(92vw, 360px) !important;
    z-index:30 !important;
  }
  html body #notice .custom,
  html body #notice .kasimov-contacts,
  html body #notice .kasimov-contacts--cluster,
  html body #kasimov-scroll-dock #notice .kasimov-contacts,
  html body #kasimov-scroll-dock #notice .kasimov-contacts--cluster{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    justify-content:flex-end !important;
    gap:2px !important;
    row-gap:2px !important;
    margin:0 0 0 auto !important;
    padding:0 !important;
    background:transparent !important;
    width:auto !important;
    max-width:100% !important;
  }
  html body #notice .kasimov-contacts__divider{display:none !important;height:0 !important;margin:0 !important}
  html body #notice .kasimov-contacts__icon{display:none !important}
  html body #notice .kasimov-phones__sep{display:none !important;width:0 !important;font-size:0 !important}

  /* Phones farther apart */
  html body #notice .kasimov-contacts__group--phones,
  html body #notice .kasimov-contacts__group--phones .kasimov-contacts__text,
  html body #kasimov-scroll-dock #notice .kasimov-contacts__group--phones,
  html body #kasimov-scroll-dock #notice .kasimov-contacts__group--phones .kasimov-contacts__text{
    display:inline-flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:28px !important;
    column-gap:28px !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
  }
  html body #notice .kasimov-contacts__group--address{
    margin:0 !important;
    padding:0 !important;
    text-align:right !important;
  }
  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-address__link{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    text-shadow:0 1px 2px rgba(0,0,0,.75) !important;
    font-size:12px !important;
    line-height:1.2 !important;
    pointer-events:auto !important;
    background:transparent !important;
    margin:0 !important;
    padding:0 !important;
  }

  /* Interactive only — keep 300ms off without blocking pan */
  html body a,
  html body button,
  html body input,
  html body select,
  html body textarea,
  html body .mobile-nav-toggle,
  html body .kasimov-sticky-dates__btn{
    touch-action:manipulation !important;
  }
}

/* === BATCH146b_RIGHT === */
@media only screen and (max-width:979px){
  html body #notice .kasimov-contacts__icon,
  html body #notice img.kasimov-contacts__icon,
  html body #kasimov-scroll-dock #notice .kasimov-contacts__icon,
  html body #kasimov-scroll-dock #notice img.kasimov-contacts__icon,
  html body #notice .kasimov-contacts__group img{
    display:none !important;
    width:0 !important; height:0 !important;
    margin:0 !important; padding:0 !important;
    opacity:0 !important; visibility:hidden !important;
  }
  html body #kasimov-scroll-dock > #notice,
  html body #kasimov-scroll-dock > #notice.kasimov-contacts-sticky,
  html body #notice.kasimov-contacts-sticky{
    align-items:flex-end !important;
    text-align:right !important;
    padding:4px max(14px, env(safe-area-inset-right, 0px)) 2px max(14px, env(safe-area-inset-left, 0px)) !important;
  }
  html body #notice .kasimov-contacts,
  html body #notice .kasimov-contacts--cluster,
  html body #kasimov-scroll-dock #notice .kasimov-contacts{
    width:max-content !important;
    max-width:calc(100% - 8px) !important;
    margin-left:auto !important;
    margin-right:0 !important;
    align-items:flex-end !important;
  }
  html body #notice .kasimov-contacts__group--phones .kasimov-contacts__text{
    gap:32px !important;
    column-gap:32px !important;
  }
  html body #notice a.kasimov-phone + a.kasimov-phone{
    margin-left:32px !important;
  }
  /* Booking module: never paint a tall black sheet */
  html body #kasimov-scroll-dock,
  html body .kasimov-scroll-dock,
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on{
    background-image:none !important;
  }
  html body #kasimov-scroll-dock{ background:transparent !important; }
  html body .kasimov-sticky-dates,
  html body .kasimov-sticky-dates.is-on{
    background:#fffcf8 !important;
    background-color:#fffcf8 !important;
  }
}

/* === BATCH146c_ADDR_RIGHT === */
@media only screen and (max-width:979px){
  html body #notice .kasimov-contacts__group,
  html body #notice .kasimov-contacts__group--phones,
  html body #notice .kasimov-contacts__group--address{
    align-self:flex-end !important;
    width:auto !important;
    max-width:100% !important;
    text-align:right !important;
    justify-content:flex-end !important;
  }
  html body #notice .kasimov-contacts__group--address .kasimov-contacts__text{
    display:block !important;
    text-align:right !important;
    width:auto !important;
  }
}

/* === BATCH147_HERO_CONTACTS === */
@media only screen and (max-width:979px){
  /* Contacts live ON the hero — never in the bottom sticky dock */
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice.kasimov-contacts-sticky,
  html body.kasimov-has-scroll-dock #kasimov-scroll-dock > #notice.kasimov-hero-contacts{
    display: none !important;
  }

  html body #iceslideshow,
  html body #headerimage.kasimov-page-hero-host,
  html body #kasimov-page-hero,
  html body .kasimov-page-hero-host{
    position: relative !important;
  }

  html body #iceslideshow #notice,
  html body #iceslideshow #notice.span4,
  html body #iceslideshow #notice.kasimov-hero-contacts,
  html body #iceslideshow #notice.kasimov-contacts-sticky,
  html body #headerimage #notice,
  html body #kasimov-page-hero #notice,
  html body #notice.kasimov-hero-contacts,
  html body #notice.kasimov-hero-pinned{
    position: absolute !important;
    left: auto !important;
    right: max(12px, env(safe-area-inset-right, 0px)) !important;
    top: auto !important;
    bottom: max(78px, calc(env(safe-area-inset-bottom, 0px) + 70px)) !important;
    width: auto !important;
    max-width: min(92vw, 340px) !important;
    margin: 0 !important;
    float: none !important;
    z-index: 40 !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    text-align: right !important;
    pointer-events: none !important;
    transform: none !important;
    transition: none !important;
  }

  html body #notice.kasimov-hero-contacts .custom,
  html body #notice.kasimov-hero-pinned .custom,
  html body #iceslideshow #notice .kasimov-contacts,
  html body #iceslideshow #notice .kasimov-contacts--cluster,
  html body #notice.kasimov-hero-contacts .kasimov-contacts,
  html body #notice.kasimov-hero-contacts .kasimov-contacts--cluster{
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    row-gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    width: max-content !important;
    max-width: 100% !important;
    line-height: 1.05 !important;
  }

  html body #notice .kasimov-contacts__divider,
  html body #notice .kasimov-contacts__icon,
  html body #notice img.kasimov-contacts__icon,
  html body #notice .kasimov-phones__sep{
    display: none !important;
    height: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body #notice .kasimov-contacts__group,
  html body #notice .kasimov-contacts__group--phones,
  html body #notice .kasimov-contacts__group--address{
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.05 !important;
    align-self: flex-end !important;
    width: auto !important;
    text-align: right !important;
  }

  /* Phones denser to address */
  html body #notice .kasimov-contacts__group--address{
    margin-top: -2px !important;
  }

  html body #notice .kasimov-contacts__group--phones .kasimov-contacts__text{
    display: inline-flex !important;
    flex-direction: row !important;
    gap: 28px !important;
    column-gap: 28px !important;
    justify-content: flex-end !important;
    line-height: 1.05 !important;
  }

  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-address__link{
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    text-shadow: 0 1px 2px rgba(0,0,0,.75) !important;
    font-size: 12px !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: auto !important;
    background: transparent !important;
  }

  /* Dock = booking bar only */
  html body #kasimov-scroll-dock{
    background: transparent !important;
    pointer-events: none !important;
  }
  html body #kasimov-scroll-dock .kasimov-sticky-dates{
    pointer-events: auto !important;
  }
}

/* === BATCH148_CONTACTS_TIGHT === */
@media only screen and (max-width:979px){
  /* No plate / frame / glass under hero contacts */
  html body #iceslideshow #notice,
  html body #iceslideshow #notice.kasimov-hero-contacts,
  html body #iceslideshow #notice.kasimov-hero-pinned,
  html body #iceslideshow #notice.kasimov-contacts-sticky,
  html body #notice.kasimov-hero-contacts,
  html body #notice.kasimov-hero-pinned,
  html body #headerimage #notice,
  html body #kasimov-page-hero #notice{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    padding: 0 !important;
    /* Higher on hero — clear parked cars at bottom */
    bottom: max(118px, calc(env(safe-area-inset-bottom, 0px) + 108px)) !important;
    right: max(10px, env(safe-area-inset-right, 0px)) !important;
  }

  html body #iceslideshow #notice::before,
  html body #iceslideshow #notice::after,
  html body #notice.kasimov-hero-contacts::before,
  html body #notice.kasimov-hero-contacts::after,
  html body #notice.kasimov-hero-pinned::before,
  html body #notice.kasimov-hero-pinned::after,
  html body #notice .kasimov-contacts::before,
  html body #notice .kasimov-contacts::after,
  html body #notice .kasimov-contacts--cluster::before,
  html body #notice .kasimov-contacts--cluster::after,
  html body #notice .custom::before,
  html body #notice .custom::after{
    content: none !important;
    display: none !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html body #notice .custom,
  html body #notice .kasimov-contacts,
  html body #notice .kasimov-contacts--cluster,
  html body #notice .kasimov-contacts__group,
  html body #notice .kasimov-contacts__group--phones,
  html body #notice .kasimov-contacts__group--address,
  html body #notice .kasimov-contacts__text{
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    padding: 0 !important;
    margin: 0 !important;
    gap: 0 !important;
    row-gap: 0 !important;
    line-height: 1 !important;
  }

  /* Ultra-tight phone ↔ address */
  html body #notice .kasimov-contacts,
  html body #notice .kasimov-contacts--cluster{
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 0 !important;
    row-gap: 0 !important;
    line-height: 1 !important;
  }
  html body #notice .kasimov-contacts__group--phones{
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }
  html body #notice .kasimov-contacts__group--address{
    margin: -4px 0 0 0 !important;
    padding: 0 !important;
    line-height: 1 !important;
  }
  html body #notice .kasimov-contacts__group--phones .kasimov-contacts__text{
    display: inline-flex !important;
    gap: 22px !important;
    column-gap: 22px !important;
    line-height: 1 !important;
  }
  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-address__link,
  html body #notice span{
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.05 !important;
    font-size: 11.5px !important;
  }
  html body #notice .kasimov-contacts__icon,
  html body #notice .kasimov-contacts__divider,
  html body #notice .kasimov-phones__sep{
    display: none !important;
  }
}

/* === BATCH148b_BOTTOM === */
@media only screen and (max-width:979px){
  html body #iceslideshow #notice.kasimov-hero-contacts,
  html body #iceslideshow #notice.kasimov-hero-pinned,
  html body #iceslideshow #notice.kasimov-contacts-sticky,
  html body #notice.kasimov-hero-contacts.kasimov-hero-pinned{
    bottom: 118px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
  }
}

/* === BATCH149_NO_ICONS === */
@media only screen and (max-width:979px){
  html body #notice .kasimov-contacts__icon,
  html body #notice img.kasimov-contacts__icon,
  html body #notice .kasimov-contacts__group img,
  html body #iceslideshow #notice .kasimov-contacts__icon,
  html body #notice .kasimov-contacts__group--phones img,
  html body #notice .kasimov-contacts__group--address img{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    width:0 !important; height:0 !important;
    margin:0 !important; padding:0 !important;
    content:none !important;
  }
}

/* === BATCH149b_NO_ICONS_ALL === */
html body #notice .kasimov-contacts__icon,
html body #notice img.kasimov-contacts__icon,
html body #notice .kasimov-contacts__group img,
html body #iceslideshow #notice .kasimov-contacts__icon,
html body #header #notice .kasimov-contacts__icon,
html body .kasimov-contacts__icon{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important; height:0 !important;
  margin:0 !important; padding:0 !important;
}

/* === BATCH150_HIDE_ICONS === */
/* Beat every earlier display:inline-block on home icons + bare phone/map imgs (Timeweb DB markup) */
html body.kasimov-page-home #notice .kasimov-contacts__icon,
html body.kasimov-page-home #iceslideshow #notice .kasimov-contacts__icon,
html body.kasimov-page-home #header #notice .kasimov-contacts__icon,
html body.kasimov-page-home #notice img.kasimov-contacts__icon,
html body #notice .kasimov-contacts__icon,
html body #notice img.kasimov-contacts__icon,
html body #notice .kasimov-ico,
html body #iceslideshow #notice img,
html body #header #notice img,
html body #notice img[src*="phone.png"],
html body #notice img[src*="map-marker"],
html body #language img[src*="phone.png"],
html body #language img[src*="map-marker"],
html body #header #language img,
html body .kasimov-contacts__icon,
html body img.kasimov-contacts__icon{
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  content: none !important;
  position: absolute !important;
  left: -9999px !important;
  pointer-events: none !important;
}
@media only screen and (max-width:979px){
  html body.kasimov-page-home #notice img,
  html body.kasimov-page-home #iceslideshow #notice img,
  html body.kasimov-page-home #header #notice img,
  html body.kasimov-page-home #language img{
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
  }
}

/* === BATCH151_SCROLL_STABLE === */
@media only screen and (max-width:979px){
  /* Contacts stay on hero, no sticky/fixed, no motion */
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #iceslideshow #notice.span4,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-pinned,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-contacts-sticky,
  html body.kasimov-page-home #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #notice.kasimov-hero-pinned,
  html body.kasimov-page-home #notice.kasimov-reveal{
    position: absolute !important;
    position: absolute !important;
    left: auto !important;
    right: max(12px, env(safe-area-inset-right, 0px)) !important;
    top: auto !important;
    bottom: 118px !important;
    transform: none !important;
    -webkit-transform: none !important;
    transition: none !important;
    animation: none !important;
    opacity: 1 !important;
    filter: none !important;
    will-change: auto !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    float: none !important;
    z-index: 40 !important;
    pointer-events: none !important;
    contain: layout style !important;
  }
  html body.kasimov-page-home #notice a{
    pointer-events: auto !important;
  }
  /* Never show contacts inside sticky dock */
  html body #kasimov-scroll-dock > #notice,
  html body #kasimov-scroll-dock > #notice.kasimov-contacts-sticky,
  html body #kasimov-scroll-dock > #notice.kasimov-hero-contacts{
    display: none !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__icon,
  html body.kasimov-page-home #notice .kasimov-ico,
  html body.kasimov-page-home #notice img[src*="phone"],
  html body.kasimov-page-home #notice img[src*="map-marker"]{
    display: none !important;
    width: 0 !important;
    height: 0 !important;
  }
}

/* === BATCH153_PHONE_STACK_REPAIR === */
html body #notice .kasimov-contacts,
html body #notice .kasimov-contacts--cluster{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 0 !important;
  background: transparent !important;
}
html body #notice .kasimov-contacts__group--phones .kasimov-contacts__text{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 0 !important;
  row-gap: 0 !important;
  column-gap: 0 !important;
}
html body #notice .kasimov-phones__sep,
html body #notice .kasimov-contacts__divider,
html body #notice .kasimov-contacts__icon,
html body #notice img.kasimov-contacts__icon{
  display: none !important;
}
html body #notice a.kasimov-phone{
  display: block !important;
  text-align: right !important;
  margin: 0 !important;
  line-height: 1.15 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body #notice .kasimov-contacts__group--address{
  margin-top: 2px !important;
}
html body #notice a.kasimov-address__link{
  display: block !important;
  text-align: right !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* === BATCH153c_STACK_MOBILE === */
@media only screen and (max-width:979px){
  html body.kasimov-page-home #iceslideshow #notice .kasimov-contacts,
  html body.kasimov-page-home #iceslideshow #notice .kasimov-contacts--cluster,
  html body.kasimov-page-home #notice .kasimov-contacts,
  html body.kasimov-page-home #notice .kasimov-contacts--cluster{
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    row-gap: 0 !important;
  }
  html body.kasimov-page-home #iceslideshow #notice .kasimov-contacts__group--phones,
  html body.kasimov-page-home #notice .kasimov-contacts__group--phones,
  html body.kasimov-page-home #iceslideshow #notice .kasimov-contacts__group--phones .kasimov-contacts__text,
  html body.kasimov-page-home #notice .kasimov-contacts__group--phones .kasimov-contacts__text,
  html body.kasimov-page-home #notice .kasimov-contacts__text{
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: flex-end !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    row-gap: 0 !important;
    column-gap: 0 !important;
    width: auto !important;
    max-width: 100% !important;
  }
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-phone--mobile,
  html body.kasimov-page-home #notice a.kasimov-phone--landline,
  html body.kasimov-page-home #notice a.kasimov-address__link{
    display: block !important;
    width: auto !important;
    text-align: right !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    line-height: 1.2 !important;
  }
  html body.kasimov-page-home #notice .kasimov-contacts__group--address{
    display: block !important;
    width: auto !important;
    text-align: right !important;
    align-self: flex-end !important;
    margin-top: 2px !important;
  }
  html body.kasimov-page-home #notice .kasimov-phones__sep,
  html body.kasimov-page-home #notice .kasimov-contacts__divider{
    display: none !important;
  }
}

/* === BATCH154_CONTACTS_READABLE === */
@media only screen and (max-width:979px){
  html body.kasimov-page-home #iceslideshow #notice,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #iceslideshow #notice.kasimov-hero-pinned,
  html body.kasimov-page-home #notice.kasimov-hero-contacts,
  html body.kasimov-page-home #notice.kasimov-hero-pinned{
    bottom: 68px !important;
    right: max(12px, env(safe-area-inset-right, 0px)) !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    padding: 0 !important;
  }

  html body.kasimov-page-home #notice .kasimov-contacts,
  html body.kasimov-page-home #notice .kasimov-contacts--cluster,
  html body.kasimov-page-home #notice .custom{
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* Readable via weight + layered text-shadow — no plate */
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-phone--mobile,
  html body.kasimov-page-home #notice a.kasimov-phone--landline,
  html body.kasimov-page-home #notice a.kasimov-address__link,
  html body.kasimov-page-home #notice .kasimov-contacts__text{
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
    font-weight: 600 !important;
    font-size: 13.5px !important;
    letter-spacing: 0.01em !important;
    line-height: 1.25 !important;
    text-shadow:
      0 0 2px rgba(0,0,0,.95),
      0 1px 2px rgba(0,0,0,.9),
      0 2px 8px rgba(0,0,0,.75),
      0 0 12px rgba(0,0,0,.45) !important;
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }

  html body.kasimov-page-home #notice a.kasimov-address__link{
    font-size: 12.5px !important;
    font-weight: 600 !important;
  }
}

/* Desktop also a bit clearer, keep position from existing rules */
@media only screen and (min-width:980px){
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-address__link{
    font-weight: 600 !important;
    text-shadow:
      0 0 2px rgba(0,0,0,.9),
      0 1px 3px rgba(0,0,0,.85),
      0 2px 10px rgba(0,0,0,.55) !important;
    background: transparent !important;
  }
}

/* === BATCH154b_READABILITY === */
@media only screen and (max-width:979px){
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-phone--mobile,
  html body.kasimov-page-home #notice a.kasimov-phone--landline{
    font-size: 15px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.28 !important;
    text-shadow:
      0 0 3px rgba(0,0,0,1),
      0 1px 2px rgba(0,0,0,.95),
      0 2px 6px rgba(0,0,0,.9),
      0 3px 14px rgba(0,0,0,.7) !important;
  }
  html body.kasimov-page-home #notice a.kasimov-address__link{
    font-size: 13.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.28 !important;
    text-shadow:
      0 0 3px rgba(0,0,0,1),
      0 1px 2px rgba(0,0,0,.95),
      0 2px 6px rgba(0,0,0,.9),
      0 3px 14px rgba(0,0,0,.7) !important;
  }
}

/* === BATCH155_NO_SHEET_JUMP === */
@media only screen and (max-width:979px){
  /* Stable hero height: NEVER 100dvh (jumps when iOS chrome shows/hides) */
  html body.kasimov-page-home #iceslideshow,
  html body.kasimov-page-home #iceslideshow.container,
  html body.kasimov-page-home #iceslideshow.iceslideshow-fill,
  html body.homepage #iceslideshow,
  html body.kasimov-page-home #iceslideshow .carousel,
  html body.kasimov-page-home #iceslideshow .carousel-inner,
  html body.kasimov-page-home #iceslideshow .item,
  html body.kasimov-page-home #iceslideshow .item > img,
  html body.kasimov-page-home #iceslideshow .item > a,
  html body.kasimov-page-home #iceslideshow .item > a > img{
    height: 100vh !important;
    min-height: 100vh !important;
    max-height: none !important;
    height: 100svh !important;
    min-height: 100svh !important;
    max-height: 100svh !important;
  }

  /* Content must sit under hero — no negative pull, no sheet shadow over hero */
  html body.kasimov-page-home #content,
  html body.kasimov-page-home #content.container,
  html body.kasimov-page-home section#content,
  html body.kasimov-page-home #content.blog,
  html body.homepage #content{
    margin: 0 !important;
    margin-top: 0 !important;
    top: auto !important;
    transform: none !important;
    -webkit-transform: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    position: relative !important;
    z-index: 2 !important;
    background: #fbf8f3 !important;
  }

  html body.kasimov-page-home #promo,
  html body.kasimov-page-home #promo.row{
    margin-top: 0 !important;
    transform: none !important;
  }
  html body.kasimov-page-home #promo::before,
  html body.kasimov-page-home #promo::after,
  html body.kasimov-page-home #content::before,
  html body.kasimov-page-home #content::after{
    display: none !important;
    content: none !important;
  }

  /* Kill reveal translate that makes cards jump onto hero while scrolling */
  html body.kasimov-page-home #promo .kasimov-reveal,
  html body.kasimov-page-home #promo .kasimov-promo-card--v2,
  html body.kasimov-page-home #promo .moduletable,
  html body.kasimov-page-home .kasimov-reveal,
  html body.kasimov-page-home .kasimov-reveal.is-in,
  html body.kasimov-page-home .kasimov-reveal:not(.is-in){
    transform: none !important;
    -webkit-transform: none !important;
    transition: none !important;
    animation: none !important;
    opacity: 1 !important;
    filter: none !important;
    will-change: auto !important;
  }

  /* Room of space under sticky dock so last cards don't jump */
  html body.kasimov-page-home.kasimov-has-scroll-dock #content,
  html body.kasimov-has-scroll-dock #footer{
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
  }
}

/* === BATCH156_BOOKING_CLICKS === */
/* TravelLine booking must receive all taps/clicks */
html body.kasimov-page-booking #tl-booking-form,
html body:has(#tl-booking-form) #tl-booking-form,
html body #tl-booking-form,
html body.kasimov-page-booking #tl-booking-form iframe,
html body:has(#tl-booking-form) #tl-booking-form iframe,
html body #tl-booking-form iframe,
html body #tl-booking-form iframe[id^="tlFrame"],
html body iframe[id^="tlFrame"],
html body #tl-search-form,
html body #tl-search-form iframe{
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-user-select: auto !important;
  user-select: auto !important;
}

/* Kill full-viewport transparent blockers above booking */
html body.kasimov-page-booking > div[style*="2147483647"],
html body:has(#tl-booking-form) > div[style*="z-index: 2147483647"],
html body:has(#tl-booking-form) > div[style*="z-index:2147483647"]{
  pointer-events: none !important;
}

/* Sticky home booking bar — reliable hit targets on iOS */
html body #kasimov-scroll-dock,
html body .kasimov-scroll-dock{
  pointer-events: auto !important;
  contain: none !important;
}
html body #kasimov-scroll-dock .kasimov-sticky-dates,
html body .kasimov-sticky-dates,
html body .kasimov-sticky-dates.is-on,
html body .kasimov-sticky-dates.is-mobile,
html body .kasimov-sticky-dates form,
html body .kasimov-sticky-dates input,
html body .kasimov-sticky-dates select,
html body .kasimov-sticky-dates button,
html body .kasimov-sticky-dates__btn,
html body .kasimov-sticky-dates label{
  pointer-events: auto !important;
  touch-action: manipulation !important;
  -webkit-user-select: auto !important;
  user-select: auto !important;
}
html body .kasimov-sticky-dates{
  z-index: 2147483001 !important;
  position: relative !important;
}
html body #kasimov-scroll-dock{
  z-index: 2147483000 !important;
}

/* Header must not trap booking page taps */
html body.kasimov-page-booking .kasimov-header-actions,
html body:has(#tl-booking-form) .kasimov-header-actions{
  pointer-events: none !important;
  z-index: 260 !important;
}
html body.kasimov-page-booking .kasimov-header-actions a,
html body.kasimov-page-booking .kasimov-header-actions button,
html body.kasimov-page-booking .mobile-nav-toggle,
html body:has(#tl-booking-form) .kasimov-header-actions a,
html body:has(#tl-booking-form) .kasimov-header-actions button,
html body:has(#tl-booking-form) .mobile-nav-toggle{
  pointer-events: auto !important;
}

/* === BATCH157_BOOKING_FLOW === */
/*
  Root cause: TravelLine sets #tl-booking-form position:absolute on <body>,
  body collapses (~276px) while overflow-x:hidden clips hit-testing below that.
  Lower half (guests/children/calendar) becomes dead; html #100e0c shows as black.
*/
html:has(#tl-booking-form),
html:has(body.kasimov-page-booking),
html body.kasimov-page-booking,
html body:has(#tl-booking-form){
  overflow: visible !important;
  overflow-x: visible !important;
  overflow-y: auto !important;
  background: #f3eee6 !important;
  background-color: #f3eee6 !important;
  height: auto !important;
  max-height: none !important;
  min-height: 100% !important;
  overscroll-behavior-y: auto !important;
}

html body.kasimov-page-booking #tl-booking-form,
html body:has(#tl-booking-form) #tl-booking-form,
html body #tl-booking-form{
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  z-index: 2 !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
  pointer-events: auto !important;
  overflow: visible !important;
  transform: none !important;
}

html body.kasimov-page-booking #tl-booking-form iframe,
html body:has(#tl-booking-form) #tl-booking-form iframe,
html body #tl-booking-form iframe[id^="tlFrame"],
html body iframe[id^="tlFrame"]{
  pointer-events: auto !important;
  touch-action: manipulation !important;
  max-width: 100% !important;
  position: relative !important;
}

/* Keep page chrome usable; never cover the TL form with a dark stage */
html body.kasimov-page-booking.kasimov-has-page-hero,
html body.kasimov-page-booking{
  background: #f3eee6 !important;
  background-color: #f3eee6 !important;
}
html body.kasimov-page-booking #kasimov-page-hero,
html body.kasimov-page-booking #headerimage.kasimov-page-hero-host,
html body:has(#tl-booking-form) #kasimov-page-hero,
html body:has(#tl-booking-form) #headerimage.kasimov-page-hero-host{
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  background: transparent !important;
}

/* Content must grow with the booking iframe */
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body.kasimov-page-booking #middlecol,
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body:has(#tl-booking-form) #wrapper,
html body:has(#tl-booking-form) #main,
html body:has(#tl-booking-form) #content{
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  min-height: 0 !important;
  clip: auto !important;
  clip-path: none !important;
  contain: none !important;
}

/* === BATCH159_BOOKING_ORIGINAL === */
/*
  Restore original TravelLine booking behavior.
  Do NOT force absolute/relative/z-index/height on #tl-booking-form or its iframes.
  Only ensure page chrome does not cover the form and clicks reach it.
*/
html body.kasimov-page-booking,
html body:has(#tl-booking-form){
  background: #f3eee6 !important;
  background-color: #f3eee6 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
}
html:has(body.kasimov-page-booking),
html:has(#tl-booking-form){
  background: #f3eee6 !important;
  height: auto !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

/* Kill page hero on booking — original site has no hero over TL */
html body.kasimov-page-booking #kasimov-page-hero,
html body.kasimov-page-booking #headerimage.kasimov-page-hero-host,
html body:has(#tl-booking-form) #kasimov-page-hero,
html body:has(#tl-booking-form) #headerimage.kasimov-page-hero-host{
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
}

/* Hide sticky search dock on booking page */
html body.kasimov-page-booking .kasimov-sticky-dates,
html body.kasimov-page-booking #kasimov-scroll-dock,
html body:has(#tl-booking-form) .kasimov-sticky-dates,
html body:has(#tl-booking-form) #kasimov-scroll-dock{
  display: none !important;
  pointer-events: none !important;
  height: 0 !important;
  overflow: hidden !important;
}

/* Let TravelLine own #tl-booking-form completely */
html body.kasimov-page-booking #tl-booking-form,
html body:has(#tl-booking-form) #tl-booking-form,
html body #tl-booking-form{
  position: static !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 480px !important;
  height: auto !important;
  z-index: auto !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  pointer-events: auto !important;
  background: transparent !important;
  contain: none !important;
  clip: auto !important;
  clip-path: none !important;
}

html body.kasimov-page-booking #tl-booking-form iframe,
html body:has(#tl-booking-form) #tl-booking-form iframe,
html body #tl-booking-form iframe,
html body #tl-booking-form iframe[id^="tlFrame"],
html body iframe[id^="tlFrame"]{
  pointer-events: auto !important;
  touch-action: manipulation !important;
  max-width: 100% !important;
  /* do not force height/width/display — TL sets these */
  position: relative !important;
  z-index: auto !important;
  transform: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Content wrappers must not clip TL */
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body.kasimov-page-booking #middlecol,
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body.kasimov-page-booking .item-page,
html body.kasimov-page-booking .item-page .articleBody,
html body:has(#tl-booking-form) #wrapper,
html body:has(#tl-booking-form) #main,
html body:has(#tl-booking-form) #content{
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  contain: none !important;
  clip: auto !important;
  clip-path: none !important;
  transform: none !important;
}

/* Undo earlier "placeholder iframe pe:none / display tricks" for real TL frames with src */
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html body.kasimov-page-booking #tl-booking-form iframe[src*="travelline"],
html body:has(#tl-booking-form) #tl-booking-form iframe[src*="tlintegration"]{
  display: block !important;
  pointer-events: auto !important;
  visibility: visible !important;
  width: 100% !important;
  min-width: 100% !important;
}

/* === BATCH160_TL_ORIGINAL === */
/* TravelLine owns the booking form — match original kasimovhotel.ru behavior */
html body.kasimov-page-booking #tl-booking-form,
html body:has(#tl-booking-form) #tl-booking-form,
html body #tl-booking-form{
  display: block !important;
  width: 100% !important;
  min-height: 200px !important;
  pointer-events: auto !important;
  position: static !important;
  z-index: auto !important;
  transform: none !important;
  overflow: visible !important;
  background: transparent !important;
}
html body.kasimov-page-booking #tl-booking-form iframe,
html body:has(#tl-booking-form) #tl-booking-form iframe,
html body #tl-booking-form iframe,
html body iframe[id^="tlFrame"]{
  pointer-events: auto !important;
  max-width: 100% !important;
}
/* Do not hide/zero real TL iframes */
html body.kasimov-page-booking #tl-booking-form iframe[src],
html body #tl-booking-form iframe[src*="tlintegration"],
html body #tl-booking-form iframe[src*="travelline"]{
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  position: relative !important;
  left: auto !important;
  height: auto !important;
  min-height: 200px !important;
  width: 100% !important;
}
/* Page chrome only */
html body.kasimov-page-booking,
html body:has(#tl-booking-form){
  background: #fff !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
}
html body.kasimov-page-booking #kasimov-page-hero,
html body.kasimov-page-booking #headerimage.kasimov-page-hero-host,
html body.kasimov-page-booking .kasimov-sticky-dates,
html body.kasimov-page-booking #kasimov-scroll-dock,
html body:has(#tl-booking-form) #kasimov-page-hero,
html body:has(#tl-booking-form) .kasimov-sticky-dates,
html body:has(#tl-booking-form) #kasimov-scroll-dock{
  display: none !important;
  height: 0 !important;
  pointer-events: none !important;
}
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body:has(#tl-booking-form) #content,
html body:has(#tl-booking-form) #wrapper,
html body:has(#tl-booking-form) #main{
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  contain: none !important;
  transform: none !important;
}

/* === BATCH163_TL_FULL_CTA_FOOTER === */
/* TravelLine: no white half — form hugs iframe; iframe fills viewport */
html.kasimov-booking-lite,
html body.kasimov-page-booking,
html body:has(#tl-booking-form) {
  background: #fff !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  min-height: 100% !important;
}
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body.kasimov-page-booking #middlecol,
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #content.container,
html body:has(#tl-booking-form) #content,
html.kasimov-booking-lite #content {
  background: #fff !important;
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  min-height: 0 !important;
  contain: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0 !important;
}
html body.kasimov-page-booking .page-header,
html body:has(#tl-booking-form) .page-header,
html.kasimov-booking-lite .page-header {
  margin: 0 !important;
  padding: 10px 12px 6px !important;
}
html body.kasimov-page-booking .item-page,
html body:has(#tl-booking-form) .item-page,
html.kasimov-booking-lite .item-page {
  margin: 0 !important;
  padding: 0 !important;
  background: #fff !important;
}
html body #tl-booking-form,
html body.kasimov-page-booking #tl-booking-form,
html.kasimov-booking-lite #tl-booking-form {
  display: block !important;
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  pointer-events: auto !important;
  z-index: auto !important;
  transform: none !important;
  contain: none !important;
}
html body #tl-booking-form iframe[src],
html body #tl-booking-form iframe[src*="tlintegration"],
html body #tl-booking-form iframe[src*="travelline"],
html body #tl-booking-form iframe[id^="tlFrame"][src],
html.kasimov-booking-lite #tl-booking-form iframe[src] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  min-height: calc(100dvh - 110px) !important;
  min-height: calc(100vh - 110px) !important;
  height: calc(100dvh - 110px) !important;
  height: calc(100vh - 110px) !important;
  max-height: none !important;
  border: 0 !important;
  background: #fff !important;
}
html body #tl-booking-form iframe:not([src]),
html body #tl-booking-form iframe[src=""] {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  width: 0 !important;
}
html body.kasimov-page-booking .kasimov-sticky-dates,
html body.kasimov-page-booking #kasimov-scroll-dock,
html body:has(#tl-booking-form) .kasimov-sticky-dates,
html body:has(#tl-booking-form) #kasimov-scroll-dock,
html.kasimov-booking-lite .kasimov-sticky-dates,
html.kasimov-booking-lite #kasimov-scroll-dock,
html body.kasimov-page-booking #kasimov-page-hero,
html body:has(#tl-booking-form) #kasimov-page-hero {
  display: none !important;
  height: 0 !important;
  pointer-events: none !important;
}
/* On booking hide bulky footer under the module so white/footer strip doesn't dominate */
@media (max-width: 979px) {
  html body.kasimov-page-booking #footer .kasimov-footer-contacts,
  html body:has(#tl-booking-form) #footer .kasimov-footer-contacts,
  html.kasimov-booking-lite #footer .kasimov-footer-contacts {
    padding-top: 8px !important;
  }
}

/* Burgundy CTAs — same family as menu button #970000 */
html body a.kasimov-book-cta,
html body a.kasimov-book-cta:link,
html body a.kasimov-book-cta:visited,
html body .kasimov-room-card__book,
html body .kasimov-room-card a[href*="booking"],
html body .blog .items-row .item .readmore a,
html body .blog .readmore a,
html body .item-page .readmore a,
html body a.readmore,
html body .readmore > a,
html body p.readmore a,
html body .kasimov-promo-card a.kasimov-promo-card__btn,
html body a.btn-book,
html body .btn-book {
  background: linear-gradient(180deg, #b10a0a 0%, #7a0000 100%) !important;
  background-color: #970000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
html body a.kasimov-book-cta:hover,
html body a.kasimov-book-cta:focus,
html body .kasimov-room-card__book:hover,
html body .blog .readmore a:hover,
html body .readmore > a:hover,
html body a.readmore:hover {
  background: linear-gradient(180deg, #c41212 0%, #8c0000 100%) !important;
  background-color: #ad0000 !important;
  color: #fff !important;
}

/* Hide literal "3*" leftovers in chrome if any remain in HTML text nodes via CSS not possible — handled in PHP/JS */


/* === FIX167_CHROME === */
html body.kasimov-chrome100 .ice-megamenu-toggle,
html body .ice-megamenu-toggle,
html.kasimov-booking-lite .ice-megamenu-toggle {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
}
html body.kasimov-chrome100 #header > .container > .row > #logo:not(#kasimov-header-brand #logo),
html body.kasimov-chrome100 #iceslideshow > #logo:not(.kasimov-logo-in-header),
html body.kasimov-chrome100 #iceslideshow #logo:not(.kasimov-logo-in-header) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
}
html body.kasimov-chrome100 #kasimov-header-brand #logo,
html body.kasimov-chrome100 #kasimov-header-brand #logo img {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}
html body.kasimov-chrome100 .mobile-nav-toggle,
html body .kasimov-header-menu-slot .mobile-nav-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: linear-gradient(180deg, #b10a0a 0%, #7a0000 100%) !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
  padding: 8px 14px !important;
  font-weight: 600 !important;
  visibility: visible !important;
  opacity: 1 !important;
}
/* Booking: white, no black hero, TL visible */
html.kasimov-booking-lite body,
html body.kasimov-page-booking,
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #tl-booking-form {
  background: #fff !important;
  background-color: #fff !important;
}
html.kasimov-booking-lite #headerimage,
html.kasimov-booking-lite #kasimov-page-hero,
html body.kasimov-page-booking #headerimage,
html body.kasimov-page-booking #kasimov-page-hero,
html body.kasimov-page-booking #headerimage-noimage {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  visibility: hidden !important;
  background: transparent !important;
  pointer-events: none !important;
}
html body.kasimov-page-booking #tl-booking-form {
  min-height: 640px !important;
  overflow: visible !important;
}
html body.kasimov-page-booking #tl-booking-form iframe[src],
html.kasimov-booking-lite #tl-booking-form iframe[src] {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  max-width: none !important;
  pointer-events: auto !important;
  position: relative !important;
  left: auto !important;
  background: #fff !important;
  min-height: 640px !important;
}
html body.kasimov-page-booking #tl-booking-form iframe:not([src]),
html body.kasimov-page-booking #tl-booking-form iframe[src=""] {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
}
/* Home hero: sharp cover, no blur filters */
html body.kasimov-page-home #iceslideshow .iceslideshow-fill {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  image-rendering: auto !important;
  filter: none !important;
}
html body #header a.kasimov-phone,
html body #header a.kasimov-address__link,
html body #notice a.kasimov-phone,
html body #notice a.kasimov-address__link {
  font-family: Manrope, "PT Sans", Arial, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.25 !important;
}
@media only screen and (max-width: 979px) {
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link,
  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-address__link { font-size: 12px !important; }
}
html body a.kasimov-cta-book,
html body a.kasimov-cta-detail,
html body .kasimov-cta-burgundy {
  background: linear-gradient(180deg, #b10a0a 0%, #7a0000 100%) !important;
  background-color: #970000 !important;
  color: #fff !important;
}

/* === FIX171_BOOKING_MOBILE === */

/* Address font MUST match phones everywhere (override older notice rules) */
html body #header a.kasimov-phone,
html body #header a.kasimov-phone--mobile,
html body #header a.kasimov-phone--landline,
html body #header a.kasimov-address__link,
html body #notice a.kasimov-phone,
html body #notice a.kasimov-phone--mobile,
html body #notice a.kasimov-phone--landline,
html body #notice a.kasimov-address__link,
html body.kasimov-page-home #notice a.kasimov-phone,
html body.kasimov-page-home #notice a.kasimov-phone--mobile,
html body.kasimov-page-home #notice a.kasimov-phone--landline,
html body.kasimov-page-home #notice a.kasimov-address__link,
html body .kasimov-hero-contacts a.kasimov-phone,
html body .kasimov-hero-contacts a.kasimov-address__link,
html body #kasimov-footer-contacts a.kasimov-phone,
html body #kasimov-footer-contacts a.kasimov-address__link,
html body .kasimov-contacts--footer a.kasimov-phone,
html body .kasimov-contacts--footer a.kasimov-address__link,
html body #footer a.kasimov-phone,
html body #footer a.kasimov-address__link {
  font-family: Manrope, "PT Sans", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.01em !important;
}
@media only screen and (max-width: 979px) {
  html body #header a.kasimov-phone,
  html body #header a.kasimov-phone--mobile,
  html body #header a.kasimov-phone--landline,
  html body #header a.kasimov-address__link,
  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-phone--mobile,
  html body #notice a.kasimov-phone--landline,
  html body #notice a.kasimov-address__link,
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-phone--mobile,
  html body.kasimov-page-home #notice a.kasimov-phone--landline,
  html body.kasimov-page-home #notice a.kasimov-address__link,
  html body .kasimov-hero-contacts a.kasimov-phone,
  html body .kasimov-hero-contacts a.kasimov-address__link {
    font-size: 14px !important;
    font-weight: 600 !important;
  }
}

/* Booking page scroll + full-width module on phones/androids/iphones */
html.kasimov-booking-lite,
html body.kasimov-page-booking {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
  position: static !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch !important;
}
html body.kasimov-page-booking #tl-booking-form,
html.kasimov-booking-lite #tl-booking-form {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html.kasimov-booking-lite #tl-booking-form iframe[src*="tlintegration"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  pointer-events: auto !important;
  position: relative !important;
  left: auto !important;
}
html body.kasimov-page-booking #tl-booking-cart,
html.kasimov-booking-lite #tl-booking-cart {
  display: none !important;
  pointer-events: none !important;
}

@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #content,
  html body.kasimov-page-booking #content.container,
  html body.kasimov-page-booking #middlecol,
  html body.kasimov-page-booking .item-page,
  html.kasimov-booking-lite #content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
  }
  html body.kasimov-page-booking #tl-booking-form,
  html.kasimov-booking-lite #tl-booking-form {
    width: 100vw !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  html body.kasimov-page-booking .page-header {
    padding: 8px 12px !important;
  }
  /* Fixed chrome like home inner pages */
  html body.kasimov-page-booking .kasimov-header-actions {
    position: fixed !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    height: 58px !important;
    background: #fff !important;
    z-index: 500 !important;
  }
  html body.kasimov-page-booking #kasimov-header-menu-slot .mobile-nav-toggle {
    display: inline-flex !important;
    background: linear-gradient(180deg, #b10a0a 0%, #7a0000 100%) !important;
    color: #fff !important;
  }
  html body.kasimov-page-booking #logo img {
    height: 38px !important;
    max-height: 38px !important;
  }
}

/* iOS safe areas */
@supports (padding: max(0px)) {
  html body.kasimov-page-booking .kasimov-header-actions {
    padding-left: max(12px, env(safe-area-inset-left)) !important;
    padding-right: max(12px, env(safe-area-inset-right)) !important;
  }
}

/* === FIX171b_HARD === */
/* Document scroll MUST work so user can reach room cards / CTA */
html.kasimov-booking-lite,
html.kasimov-booking-lite body,
html body.kasimov-page-booking {
  overflow-x: hidden !important;
  overflow-y: scroll !important;
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  position: static !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior-y: auto !important;
}
html body.kasimov-page-booking #wrapper,
html body.kasimov-page-booking #main,
html body.kasimov-page-booking #content,
html body.kasimov-page-booking #middlecol,
html body.kasimov-page-booking .item-page,
html.kasimov-booking-lite #wrapper,
html.kasimov-booking-lite #main,
html.kasimov-booking-lite #content {
  overflow: visible !important;
  max-height: none !important;
  height: auto !important;
  position: relative !important;
  transform: none !important;
}
/* Kill absolute form that collapses page height */
html body.kasimov-page-booking #tl-booking-form,
html.kasimov-booking-lite #tl-booking-form,
html body #tl-booking-form {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 80vh !important;
  max-height: none !important;
  overflow: visible !important;
  float: none !important;
  margin: 0 !important;
}
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html.kasimov-booking-lite #tl-booking-form iframe[src*="tlintegration"] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 80vh !important;
  pointer-events: auto !important;
  position: relative !important;
  left: auto !important;
  touch-action: auto !important;
}
html body.kasimov-page-booking #tl-booking-cart { display: none !important; pointer-events: none !important; }

/* Chrome row — logo left, icons+burgundy menu right */
html body.kasimov-page-booking .kasimov-header-actions {
  position: fixed !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  width: 100% !important;
  height: 60px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  padding: 0 12px !important;
  background: #fff !important;
  z-index: 10050 !important;
  box-shadow: 0 1px 0 rgba(0,0,0,.08) !important;
  pointer-events: none !important;
}
html body.kasimov-page-booking .kasimov-header-actions * { pointer-events: auto !important; }
html body.kasimov-page-booking #kasimov-header-brand,
html body.kasimov-page-booking #logo,
html body.kasimov-page-booking #logo.kasimov-logo-in-header {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative !important;
  float: none !important;
  left: auto !important; right: auto !important; top: auto !important;
  transform: none !important;
  height: 60px !important;
  max-height: 60px !important;
  width: auto !important;
  margin: 0 !important;
  align-items: center !important;
}
html body.kasimov-page-booking #logo img,
html body.kasimov-page-booking #logo .logo {
  display: block !important;
  height: 42px !important;
  max-height: 42px !important;
  width: auto !important;
  max-width: 130px !important;
}
html body.kasimov-page-booking #kasimov-header-rail {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 10px !important;
  margin-left: auto !important;
  height: 60px !important;
}
html body.kasimov-page-booking .kasimov-header-social {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
html body.kasimov-page-booking .kasimov-header-social__link {
  display: inline-flex !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
}
html body.kasimov-page-booking #kasimov-header-menu-slot .mobile-nav-toggle {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: linear-gradient(180deg, #b10a0a 0%, #7a0000 100%) !important;
  background-color: #970000 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 4px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}
html body.kasimov-page-booking #kasimov-header-menu-slot .mobile-nav-toggle .mobile-nav-icon span {
  background: #fff !important;
}
html body.kasimov-page-booking #content {
  padding-top: 68px !important;
}
/* Hide old ice menu hamburger */
html body.kasimov-page-booking .ice-megamenu-toggle { display: none !important; }

/* Address = phones (force again at file end) */
html body a.kasimov-phone,
html body a.kasimov-phone--mobile,
html body a.kasimov-phone--landline,
html body a.kasimov-address__link,
html body #notice a.kasimov-phone,
html body #notice a.kasimov-address__link,
html body #header a.kasimov-phone,
html body #header a.kasimov-address__link,
html body.kasimov-page-home #notice a.kasimov-phone,
html body.kasimov-page-home #notice a.kasimov-address__link {
  font-family: Manrope, "PT Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
@media only screen and (max-width: 979px) {
  html body a.kasimov-phone,
  html body a.kasimov-phone--mobile,
  html body a.kasimov-phone--landline,
  html body a.kasimov-address__link,
  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-address__link,
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link,
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-address__link {
    font-size: 14px !important;
    font-weight: 600 !important;
  }
  html body.kasimov-page-booking #content,
  html body.kasimov-page-booking #middlecol,
  html body.kasimov-page-booking .item-page {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }
  html body.kasimov-page-booking #tl-booking-form {
    width: 100% !important;
    min-height: 85vh !important;
  }
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    min-height: 85vh !important;
    width: 100% !important;
  }
}

/* === FIX172_TL_WIDTH === */
/* Root cause: form/iframe got left:-30px / wrong container width → content shifted left + clipped */
html body.kasimov-page-booking #tl-booking-form,
html.kasimov-booking-lite #tl-booking-form,
html body #tl-booking-form {
  left: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  transform: none !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
html body.kasimov-page-booking #tl-booking-form > div,
html body.kasimov-page-booking #tl-booking-form iframe {
  left: 0 !important;
  margin-left: 0 !important;
  transform: none !important;
}
html body.kasimov-page-booking #content.container,
html body.kasimov-page-booking .container {
  width: 100% !important;
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #content.container,
  html body.kasimov-page-booking .container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  /* undo any 100vw that caused horizontal shift */
  html body.kasimov-page-booking #tl-booking-form {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
  }
}

/* === FIX173_SHIP === */
html body a.kasimov-phone,
html body a.kasimov-phone--mobile,
html body a.kasimov-phone--landline,
html body a.kasimov-address__link,
html body #header a.kasimov-phone,
html body #header a.kasimov-address__link,
html body #notice a.kasimov-phone,
html body #notice a.kasimov-address__link,
html body.kasimov-page-home #notice a.kasimov-phone,
html body.kasimov-page-home #notice a.kasimov-address__link,
html body .kasimov-hero-contacts a.kasimov-phone,
html body .kasimov-hero-contacts a.kasimov-address__link,
html body #footer a.kasimov-phone,
html body #footer a.kasimov-address__link {
  font-family: Manrope, "PT Sans", Arial, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}
@media only screen and (max-width: 979px) {
  html body a.kasimov-phone,
  html body a.kasimov-phone--mobile,
  html body a.kasimov-phone--landline,
  html body a.kasimov-address__link,
  html body #header a.kasimov-phone,
  html body #header a.kasimov-address__link,
  html body #notice a.kasimov-phone,
  html body #notice a.kasimov-address__link,
  html body.kasimov-page-home #notice a.kasimov-phone,
  html body.kasimov-page-home #notice a.kasimov-address__link {
    font-size: 14px !important;
    font-weight: 600 !important;
  }
}
html body.kasimov-page-booking #tl-booking-form,
html.kasimov-booking-lite #tl-booking-form {
  left: 0 !important;
  margin-left: 0 !important;
  transform: none !important;
  width: 100% !important;
  max-width: 100% !important;
}
html body.kasimov-page-booking #tl-booking-form iframe,
html body.kasimov-page-booking #tl-booking-form > div {
  left: 0 !important;
  margin-left: 0 !important;
  transform: none !important;
}
html body.kasimov-page-booking #tl-booking-cart { display: none !important; pointer-events: none !important; }
html.kasimov-booking-lite,
html body.kasimov-page-booking {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
  touch-action: pan-y !important;
}

/* === FIX174_MOBILE === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #tl-booking-form,
  html.kasimov-booking-lite #tl-booking-form {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: none !important;
  }
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    transform: none !important;
    pointer-events: auto !important;
  }
  html body.kasimov-page-booking #content.container {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* === FIX175_MOBILE_HARD === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking,
  html.kasimov-booking-lite body {
    width: 100% !important;
    max-width: 100% !important;
    background: #fff !important;
    overflow-x: hidden !important;
  }
  html body.kasimov-page-booking #wrapper,
  html body.kasimov-page-booking #main,
  html body.kasimov-page-booking #content,
  html body.kasimov-page-booking #middlecol {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    margin: 0 !important;
    float: none !important;
  }
  html body.kasimov-page-booking #mainmenu > .mobile-nav-toggle,
  html body.kasimov-page-booking #mainmenu .container > .mobile-nav-toggle {
    display: none !important;
  }
}

/* === FIX176_ORIGINAL_TL === */
/* Undo forced left/min-height wars that clipped TravelLine (no Find button / cut layout) */
html body.kasimov-page-booking #tl-booking-form,
html.kasimov-booking-lite #tl-booking-form {
  position: relative !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  background: #fff !important;
}
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html.kasimov-booking-lite #tl-booking-form iframe[src*="tlintegration"] {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  pointer-events: auto !important;
  /* DO NOT set min-height/left/transform — TL calculator + Find bar need natural size */
}
html body.kasimov-page-booking #tl-booking-cart,
html.kasimov-booking-lite #tl-booking-cart {
  display: none !important;
  pointer-events: none !important;
}
html.kasimov-booking-lite,
html body.kasimov-page-booking {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #content.container,
  html body.kasimov-page-booking #middlecol {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 !important;
  }
}

/* === FIX177_SCROLL_HEADER === */
html.kasimov-booking-lite,
html body.kasimov-page-booking {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
}
html body.kasimov-page-booking #tl-booking-form {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
html body.kasimov-page-booking #tl-booking-cart { display: none !important; pointer-events: none !important; }
html body.kasimov-page-booking #mainmenu .mobile-nav-toggle { display: none !important; }

/* === FIX178_ROOM_SCROLL === */
html body.kasimov-page-booking #tl-booking-form {
  min-height: 0 !important; /* softened by FIX179 */
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
  min-height: 0 !important; /* softened by FIX179 */
  max-height: none !important;
  overflow: auto !important;
  pointer-events: auto !important;
}
html.kasimov-booking-lite, html body.kasimov-page-booking {
  overflow-y: auto !important;
  height: auto !important;
  max-height: none !important;
}

/* === FIX184_POLISH === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #footer,
  html body.kasimov-page-booking footer,
  html body.kasimov-page-booking .footer,
  html body.kasimov-page-booking #bottom {
    display: none !important;
    height: 0 !important;
    visibility: hidden !important;
  }
  html body.kasimov-page-booking .page-header,
  html body.kasimov-page-booking .breadcrumb,
  html body.kasimov-page-booking ul.breadcrumb,
  html body.kasimov-page-booking h1 {
    display: none !important;
  }
  html body.kasimov-page-booking .kasimov-header-actions {
    max-height: none !important;
    overflow: visible !important;
  }
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    min-height: 900px !important;
    max-height: none !important;
  }
  html body.kasimov-page-booking .kasimov-header-social { display: none !important; }
}

/* === FIX184b === */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #tl-booking-form {
    min-height: 900px !important;
    max-height: none !important;
  }
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
  html body.kasimov-page-booking #tl-booking-form iframe[src],
  html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"][src] {
    min-height: 900px !important;
    max-height: none !important;
    height: auto !important;
  }
  html body.kasimov-page-booking #footer,
  html body.kasimov-page-booking footer { display: none !important; }
}
/* === FIX184c === */

/* FIX184c gap + menu collapse */
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #mainmenu {
    position: absolute !important;
    top: 56px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    z-index: 10060 !important;
  }
  html body.kasimov-page-booking #mainmenu:not(.is-open) {
    max-height: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
  }
  html body.kasimov-page-booking #mainmenu:not(.is-open) .container,
  html body.kasimov-page-booking #mainmenu:not(.is-open) ul {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-booking #header,
  html body.kasimov-page-booking #headerimage-noimage,
  html body.kasimov-page-booking #system-message-container {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body.kasimov-page-booking #wrapper,
  html body.kasimov-page-booking #main {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
  html body.kasimov-page-booking .kasimov-header-actions {
    min-height: 56px !important;
    max-height: none !important;
    padding: 8px 12px !important;
    overflow: visible !important;
  }
  html body.kasimov-page-booking #logo img {
    height: 38px !important;
    max-height: 38px !important;
    max-width: 120px !important;
    object-fit: contain !important;
  }
  html body.kasimov-page-booking #tl-booking-form {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* === FIX185_ROOMS === */
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html.kasimov-booking-lite #tl-booking-form iframe[src*="tlintegration"] {
  max-height: none !important;
  min-height: 900px !important;
  overflow: visible !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    min-height: 1600px !important;
  }
}
@media only screen and (min-width: 980px) {
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    min-height: 1000px !important;
  }
}

/* === FIX185b === */
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"],
html body.kasimov-page-booking #tl-booking-form iframe[id^="tlFrame"][src] {
  max-height: none !important;
  min-height: 1400px !important;
  height: 1400px !important;
}
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    min-height: 2000px !important;
    height: 2000px !important;
  }
}
html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"][style] {
  max-height: none !important;
}

/* === FIX188 === */
html body.kasimov-page-booking .kasimov-header-actions { pointer-events: auto !important; }
html body.kasimov-page-booking #footer,
html body.kasimov-page-booking footer,
html body.kasimov-page-booking #bottom { display: none !important; height: 0 !important; }
@media only screen and (max-width: 979px) {
  html body.kasimov-page-booking #tl-booking-form iframe[src*="tlintegration"] {
    min-height: 1400px !important;
  }
  html body.kasimov-page-booking #logo img { height: 42px !important; max-height: 42px !important; }
}
