/* Extracted from theme templates — keep selector names stable */
/* #backToTop: canonical rules in library/css/footer.css */


    #site-header {
      position: relative;
    }

    /* #slickslide_product {
      margin-top: 45px;
    } */

    

    .slick-next {
      right: 0
    }

    .info-footer {
      width: 100%;
      height: 80px;
      position: fixed;
      z-index: 99999999999;
      bottom: 0
    }

    .info-footer ul {
      list-style-type: none;
      margin: 0 auto;
      width: 620px;
      background-color: #fff;
      height: 60px;
      border-radius: 10px;
      padding: 0 10px 5px 10px
    }

    .info-footer ul li {
      float: left
    }

    .info-footer img {
      width: 200px;
      height: 61px
    }

    .entry-header h1 {
      text-transform: none !important;
      font-size: 17px
    }

    .entry-content h2 {
      font-size: 15px
    }

    .entry-content img {
      max-width: 100% !important
    }

    blockquote {
      font-size: inherit !important;
      opacity: .6;
      font-style: italic
    }

    .f11a1 .at1 {
      font-size: 12px !important;
    }

    @media only screen and (min-width:320px) and (max-width:736px) {
      .info-footer {
        height: 50px
      }

      .info-footer ul {
        height: 40px;
        width: 410px
      }

      .info-footer img {
        width: 130px;
        height: auto
      }

      .carousel-subhead_1, .carousel-subhead_2{
        height: 240px !important;
      }

      .testimonials-carousel__avatar img{
        height: 30% !important;
      }
    }

    .footer__logo img {
      height: auto !important
    }

    .cs-action-button-container {
      position: fixed;
      right: 0;
      z-index: 9999;
      top: 20%;
      background: #fff;
    }

    .cs-action-button {
      overflow: hidden;
      box-shadow: 0 .46875rem 2.1875rem rgb(90 97 105 / .1), 0 .9375rem 1.40625rem rgb(90 97 105 / .1), 0 .25rem .53125rem rgb(90 97 105 / .12), 0 .125rem .1875rem rgb(90 97 105 / .1);
      -webkit-transition: 0.3s ease;
      -moz-transition: 0.3s ease;
      -ms-transition: 0.3s ease;
      -o-transition: 0.3s ease;
      transition: 0.3s ease
    }

    .rounded-left,
    .cs-action-button-container {
      border-radius: 1rem 0 0 1rem !important
    }

    .cs-action-button .action-item {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 55px;
      height: 55px;
      border-bottom: 1px solid #dee2e6
    }

    .cs-action-button .action-item .animate {
      display: flex;
      align-items: center;
      justify-content: center
    }

    .cs-action-button .action-item .icon-inner {
      display: inline-block;
      font-size: 26px;
    }

    .text-muted {
      color: #6c757d !important
    }

    .cs-bg-fill {
      background-repeat: no-repeat;
      background-size: cover;
      background-position: center center;
      background-attachment: scroll;
      height: auto
    }

    .cs-action-button .action-item .icon-inner {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 26px;
      height: 26px;
    }

    .sb-popup-message {
      display: none
    }

    .social-icons {
      padding: 20px 0;
    }

    .social-icons a {
      margin: 0 10px;
      color: #fff;
      /* Màu trắng, bạn có thể đổi thành màu khác */
      font-size: 24px;
      transition: color 0.3s ease;
    }

    .three-phone a {
      font-size: 12px;
    }

    .three-phone-container {
      display: flex;
      flex-direction: row;
      column-gap: 10px;
    }

    .social-icons a:hover {
      color: #1da1f2;
      /* Đổi màu khi hover (vd: màu xanh Facebook) */
    }

    .title-louis-mobile {
      display: none;
    }

    @media only screen and (min-width:320px) and (max-width:736px) {
      .global-desktop {
        display: none;
      }

      .title-louis-mobile {
        font-size: 24px;
        font-weight: bold;
        display: block !important;
        line-height: 5rem;
        padding: 0px;
      }

      .cs-action-button-container {
        top: 25%;
      }

      .cs-action-button .action-item {
        width: 50px;
        height: 50px;
      }

      .cs-action-button .action-item .icon-inner {
        width: 22px;
        height: 22px;
      }

      /* Show contact buttons on mobile */
      .d-none.d-lg-flex {
        display: flex !important;
      }
    }

/* Contact action icons (ex-inline style attributes) */
.cs-action-button .action-item.hotline .icon-inner {
  background-image: url(https://cdn.hoabinhevents.com/hbt/telephone.png);
}

.cs-action-button .action-item.messenger .icon-inner {
  background-image: url(../../library/images/messenger.png);
}

.cs-action-button .action-item.whatsapp .icon-inner {
  background-image: url(https://cdn.hoabinhevents.com/hbt/whatsapp.webp);
  background-size: 42px;
}

.cs-action-button .action-item.zalo .icon-inner {
  background-image: url(https://cdn.hoabinhevents.com/hbt/zalo.png);
  background-size: 26px;
}

.cs-action-button .action-item.email .icon-inner {
  background-image: url(https://cdn.hoabinhevents.com/hbt/gmail.png);
  background-size: 32px;
}

/* Header bar: logo + menu + language in one flow (no absolute) */
#site-header {
  display: flex;
  align-items: center;
  min-height: 90px;
}

#site-header > .container {
  width: 100%;
}

#navbar-hbt {
  top: 0;
  margin-bottom: 0;
}

#navbar-hbt .site-header__bar {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-height: 90px;
}

#navbar-hbt .navbar-header {
  flex: 0 0 auto;
  float: none;
  display: flex;
  align-items: center;
  width: auto;
  max-width: none;
}

#navbar-hbt .js-navbar-collapse {
  flex: 1 1 auto;
  float: none;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  box-shadow: none;
}

#navbar-hbt .js-navbar-collapse .nav {
  float: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0;
}

#navbar-hbt .logo.navbar-brand,
#navbar-hbt .navbar-brand.logo {
  top: 0;
  float: none;
  display: flex;
  align-items: center;
  height: auto;
  max-height: 100%;
  padding: 8px 0;
  margin: 0;
  line-height: 0;
}

#navbar-hbt .logo img,
#navbar-hbt .navbar-brand img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-height: 64px;
  max-width: 180px;
  object-fit: contain;
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
  margin-left: 4px;
}

.header-lang {
  display: flex;
  align-items: center;
  gap: 8px;
  position: static;
  z-index: 1;
}

.header-lang a {
  display: inline-flex;
  line-height: 0;
}

.header-lang img.lang-flag {
  height: 15px;
  width: 25px;
  display: block;
}

#navbar-hbt .header-actions .navbar-toggle {
  display: none;
  float: none;
  position: static;
  right: auto;
  margin: 0;
  padding: 8px 10px;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 2px;
  background: transparent;
}

/*
 * Header breakpoint: 991px
 * ≤991 → hamburger + mobile panel
 * ≥992 → desktop menu
 */
@media (min-width: 992px) {
  #navbar-hbt .header-actions .navbar-toggle {
    display: none !important;
  }

  #navbar-hbt .header-nav-desktop {
    display: flex !important;
  }
}

@media (max-width: 991px) {
  #site-header {
    padding-bottom: 0;
    min-height: 72px;
  }

  #navbar-hbt .site-header__bar {
    min-height: 72px;
    gap: 8px;
  }

  #navbar-hbt .logo img,
  #navbar-hbt .navbar-brand img {
    max-height: 48px;
    max-width: 140px;
  }

  #navbar-hbt .header-nav-desktop,
  #navbar-hbt .js-navbar-collapse {
    display: none !important;
  }

  #navbar-hbt .navbar-header {
    flex: 1 1 auto;
    min-width: 0;
  }

  .header-actions {
    margin-left: auto;
  }

  #navbar-hbt .header-actions .navbar-toggle {
    display: block !important;
  }
}

.footer-office-icon {
  margin-top: 2px;
}

.footer-office-icon--mail,
.footer-office-icon--web {
  margin-top: 3px;
}

/* --------------------------------------------------------------------------
   Content width + spacing sync
   -------------------------------------------------------------------------- */
:root {
  --louis-content-max: 1400px;

  /* Spacing scale */
  --louis-space-1: 8px;
  --louis-space-2: 16px;
  --louis-space-3: 24px;
  --louis-space-4: 32px;
  --louis-space-5: 48px;
  --louis-space-6: 64px;

  /* Layout tokens */
  --louis-container-pad-x: 16px;
  --louis-section-gap: 48px;   /* khoảng cách giữa các section */
  --louis-section-y: 48px;     /* padding dọc section có nền */
  --louis-element-gap: 24px;   /* khoảng cách phần tử trong section */
  --louis-card-gap: 24px;
}

/* Prevent horizontal scrollbar from wide carousels / negative row margins */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  position: relative;
}

/* Do NOT set overflow-x on #site-content / main — browsers then force
   overflow-y:auto and the main content gets a nested vertical scrollbar. */
#site-content,
main {
  max-width: 100%;
  overflow: visible;
}

#site-footer,
.site,
.tour-cover-section,
.owl-carousel,
.owl-stage-outer,
.slick-slider,
.slick-list {
  max-width: 100%;
  overflow-x: hidden;
}

/* Do NOT set overflow-x on #site-header — browsers then force overflow-y:auto
   and the fixed header shows a vertical scrollbar. */
#site-header {
  max-width: 100%;
  overflow: visible;
}

.container,
.wrapper,
.footer-license-wrap,
#navbar-hbt {
  max-width: var(--louis-content-max);
}

.container,
.wrapper {
  padding-left: var(--louis-container-pad-x);
  padding-right: var(--louis-container-pad-x);
  box-sizing: border-box;
}

@media (min-width: 1200px) {
  .container {
    width: 100%;
    max-width: var(--louis-content-max);
    padding-left: var(--louis-container-pad-x);
    padding-right: var(--louis-container-pad-x);
    margin-left: auto;
    margin-right: auto;
  }
}

@media (min-width: 1430px) {
  .container {
    width: var(--louis-content-max);
  }
}

.wrapper {
  width: 100%;
  max-width: var(--louis-content-max);
  margin-left: auto;
  margin-right: auto;
}

/* --------------------------------------------------------------------------
   Section / utility spacing sync
   -------------------------------------------------------------------------- */
#site-content > section,
main#site-content > section,
#site-content > .mt30,
main > section.mt30 {
  margin-top: var(--louis-section-gap);
  margin-bottom: 0;
}

#site-content > section:first-child,
#home-banner,
main > section:first-child {
  margin-top: 0;
}

/* Legacy utility classes → spacing tokens */
.mt30,
.mgt-30 {
  margin-top: var(--louis-section-gap) !important;
}

.mb30 {
  margin-bottom: var(--louis-element-gap) !important;
}

.mt50 {
  margin-top: var(--louis-space-5) !important;
}

.mb50 {
  margin-bottom: var(--louis-space-5) !important;
}

/* Sections with background / padded blocks */
.tour-cover-section,
.slideshow-section-homepage,
section.section--padded {
  padding-top: var(--louis-section-y);
  padding-bottom: var(--louis-section-y);
  margin-top: var(--louis-section-gap);
}

#testimonials,
#testimonials.mt50,
#partners,
#featured-destinations,
#travel-guide,
#tour-du-xuan,
#tour-du-lich-he,
#tour-du-xuan-slideshow {
  margin-top: var(--louis-section-gap) !important;
}

#testimonials {
  padding-bottom: var(--louis-element-gap);
}

#partners {
  margin-bottom: var(--louis-space-5) !important;
}

/* Inner element rhythm */
#site-content .row > [class*="col-"].mb30,
.tour-cover-section__row > [class*="col-"] {
  margin-bottom: var(--louis-card-gap);
}

#site-content h2.section-title,
#site-content .section-title,
#site-content .tour-hot__title,
#site-content .title-section {
  margin-top: 0;
  margin-bottom: var(--louis-element-gap);
}

#site-footer.footer,
.footer__top {
  padding-top: var(--louis-section-y);
}

.footer-license-wrap {
  margin-top: var(--louis-space-2);
  padding-left: var(--louis-container-pad-x);
  padding-right: var(--louis-container-pad-x);
}

@media (max-width: 768px) {
  :root {
    --louis-section-gap: 32px;
    --louis-section-y: 32px;
    --louis-element-gap: 16px;
    --louis-card-gap: 16px;
    --louis-container-pad-x: 16px;
  }
}

.footer-license-wrap {
  width: 100%;
  max-width: var(--louis-content-max);
  margin-left: auto;
  margin-right: auto;
}

#navbar-hbt {
  width: 100%;
}

/* --------------------------------------------------------------------------
   Content images — object-fit: cover (fixed-size / card / gallery frames)
   Skip logos, icons, flags, partner logos, gov badges.
   -------------------------------------------------------------------------- */
.featured-album-product-detail-item__img,
#featured-album-product-detail-carousel img,
.tour-hot-carousel__item img,
.tour-hot-big-item img,
.tour-hot-featured__image,
.tour-hot-featured__media img,
.tour-hot-side-card__image,
.tour-hot-side-card__media img,
.tour-cover-item img,
.tour-cover-item__image,
.tour-exp-card__image,
.tour-category-thumbnail img,
.tour-category-thumbnail a img,
.tour-category-item img,
.featured-destinations-inbound__item img,
.featured-destinations-outbound__item img,
#featured-destinations-inbound .featured-destinations-inbound__item img,
#tour-foreign-carousel img,
#tour-chaumy-carousel img,
#tour-vietnam-carousel img,
#slickslide1 img,
#slickslide2 img,
#slickslide_product img,
.slick-slide img,
.home-hero-poster,
.carousel-subhead_2 img,
.tour-promo-popup__media img,
.testimonials-carousel__avatar img,
.post-thumbnail img,
.tour-detail__gallery img,
.tour-detail__content img.size-full,
.tour-detail__content img.size-medium,
.related .img-responsive,
.tour-related img,
.hbt-tour-grid-image img,
.hbt-tour-dual-image img,
.hbt-tour-single-image img,
.first-item img,
.first-item__thumb img,
.medium.wp-post-image,
img.wp-post-image,
.attachment-medium,
.attachment-full.size-full,
.woocommerce ul.products li.product img,
.woocommerce div.product div.images img {
  object-fit: cover;
  object-position: center;
}

/* Frames that already have explicit height keep fill; otherwise ensure block fill */
.tour-category-thumbnail a,
.tour-category-thumbnail a img,
.tour-hot-carousel__item a,
.tour-hot-side-card__link,
.tour-hot-featured__link,
#slickslide_product .slick-slide,
#slickslide1 .slick-slide,
#slickslide2 .slick-slide {
  overflow: hidden;
}

#tour-foreign-carousel img,
#tour-chaumy-carousel img,
#tour-vietnam-carousel img {
  object-fit: cover;
  object-position: center;
}

.tour-category-thumbnail a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

#slickslide_product img,
#slickslide1 img,
#slickslide2 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Keep logo / icon / partner assets from being cropped */
.navbar-brand img,
.footer__logo img,
.logoSaleNoti,
.partners-carousel__item img,
.lang-flag,
.cs-action-button .icon-inner,
.footer__gov-badge img {
  object-fit: contain;
}
