/*
Theme Name:     Traveler Childtheme
Description:    Traveler Child Theme
Theme URI:      https://travelerwp.com/
Author:         the ShineTheme
Author URI:     http://shinetheme.com
Version:        1.0
Template:       traveler
*/

/*////// paste here */

/* .elementor-element .swiper~.elementor-swiper-button svg {
  width: 36px !important;
  height: 36px !important;
}

@media screen and (max-width: 767px) {
  .elementor-element .swiper~.elementor-swiper-button svg {
    width: 28px !important;
    height: 28px !important;
  }
} */

/*////// header */

@media screen and (max-width: 991px) {
  .header__left .logo img {
    width: 140px;
    object-fit: cover;
  }
}

.tata-topbar-deals,
.tata-topbar-wishlist {
  position: relative;
}

.tata-topbar-deals .deal-count,
.tata-topbar-wishlist .wishlist-count {
  position: absolute;
  top: -6px;
  right: -12px;
  min-width: 18px;
  height: 18px;
  background: #ff4d4f;
  color: #fff;
  font-weight: 600;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-bottom: 2px;
  font-family: var(--e-global-typography-primary-font-family), Sans-serif;
  font-style: normal;
  padding-top: 1px;
}


/* i.stt-icon-heart1.tata-topbar-wishlist {
  font-size: 18px !important;
} */

.header__left .logo img {
  max-width: 200px;
}

.header__right .items li.st-header-link a,
#topbar.style-elementor {
  background-color: var(--e-global-color-primary);
}

.header__right .items li.st-header-link a:hover {
  background: var(--main-color);
}

.header__center #st-main-menu .main-menu>li>a {
  padding: 28px 16px !important;
}

.header__center #st-main-menu .main-menu>li>a {
  padding: 32px 20px;
}

.header__center #st-main-menu .main-menu li.menu-item-has-children .fa {
  right: 0px;
}

.ic-cruise-1 {
  display: inline-block;
  background-image: url(/wp-content/uploads/2026/01/ic-cruise-1.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
}

.ic-cruise-2 {
  display: inline-block;
  background-image: url(/wp-content/uploads/2026/01/ic-cruise-2.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
}

.ic-cruise-3 {
  display: inline-block;
  background-image: url(/wp-content/uploads/2026/01/ic-cruise-3.svg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
}

/* booking form */
.single .st-fixed-form-booking .st-form-booking-action form .submit-group button,
.media.form-st-send-mail .btn-primary {
  height: 60px;
}

.st-wrapper-form-booking.form-date-search nav {
  padding: 0 24px;
}

.st-wrapper-form-booking nav {
  padding: 30px 24px 0;
}

.single .st-form-book-wrapper .st-wrapper-form-booking .nav-tabs {
  padding: 8px;
  background: #ECF7F3;
  border-radius: 12px;
}

.single .st-form-book-wrapper .st-wrapper-form-booking .nav-tabs li a {
  border-radius: 6px;
  background: none;
  padding: 8px 8px;
}

.single .st-form-book-wrapper .st-wrapper-form-booking .nav-tabs li a.active {
  background: #012B11;
}

.single .st-wrapper-form-booking .nav-tabs li {
  position: relative;
}

.single .st-wrapper-form-booking .nav-tabs li:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 24px;
  background-color: #BABABA;
}

.single .st-fixed-form-booking .st-form-head-book .st-price-origin .price {
  font-size: 24px;
}

/* end */

/* contact form 7 */

/* Radio CF7 nằm trên 1 dòng */


.wpcf7 .tata-radio-contact p {
  align-items: center;
  display: flex;
  gap: 8px;
}

.wpcf7 .contact-method .wpcf7-list-item {
  margin-right: 12px;
}

.wpcf7 .contact-method input[type="radio"] {
  margin-right: 6px;
}

.wpcf7 p {
  margin: 0;
}

.owner-info.st-sent-mail-customer .form-group:first-child {
  margin-bottom: 0 !important;
}

.owner-info.st-sent-mail-customer .st-wrapper-form-booking p:has(> input.wpcf7-submit) {
  margin-bottom: 0 !important;
  height: 60px;
}

.owner-info.st-sent-mail-customer .st-wrapper-form-booking p {
  margin-bottom: 8px !important;
}

.wpcf7.js .form-group {
  margin-bottom: 8px !important;
  position: relative;
}

.wpcf7-spinner {
  top: -40px;
}

.wpcf7-response-output {
  margin: 12px 0 0 !important;
  border-radius: 8px;
  padding: 4px 8px !important;
}

/* check avai room - list room */

.search-result-page.layout6 .st-results .toolbar .toolbar-action li .dropdown-menu,
.search-result-page.tour-layout7 .st-results .toolbar .toolbar-action li .dropdown-menu {
  padding: 12px;
  border-radius: 8px;
}

.search-result-page.layout6 .st-results .toolbar {
  margin-bottom: 24px !important;
}

.single #st-content-wrapper.st-style-4 #st-list-room .fetch .item .image {
  height: 180px;
  border-radius: 8px;
  overflow: hidden;
}

.tata-table-price .price-wrapper .price {
  font-size: 24px !important;
}

.tata-f-12 {
  font-size: 14px !important;
  line-height: 24px;
}

.tata-list-price {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding: 20px 12px;
  text-align: right;
}

.single #st-content-wrapper.st-style-4 #st-list-room .price-wrapper {
  text-align: right;
  margin-bottom: 0;
}

.tata-list-price .btn-reserve-room {
  margin-top: 12px;
  width: 100%;
  justify-content: center;
}

.price-old {
  text-decoration: line-through;
  color: #6D727C;
  margin-right: 8px;
  font-size: 14px;
}

.single #st-content-wrapper.st-style-4 #st-list-room .btn-show-price {
  background: #012B11;
}

.tata-max-people {
  background: #F7F7F7;
  height: 100%;
}

.tata-condition {
  background: #ECF7F3;
}

.tata-max-height {
  height: 100%;
}

.single #st-content-wrapper.st-style-4 #st-list-room .fetch .item {
  margin-bottom: -1px !important;
}

.single #st-content-wrapper.st-style-4 #st-list-room .st-list-rooms {
  padding-bottom: 40px;
}

.tata-room-image-wrapper {
  padding: 20px 12px;
}

.tata-list-facilities {
  display: flex;
  flex-wrap: wrap;
  column-gap: 16px;
  row-gap: 8px;
  color: #6D727C;
}

.tata-list-facilities .tata-item {
  gap: 6px;
}

.tata-list-facilities .tata-item .infor {
  font-size: 14px;
}

.tata-list-facilities .tata-item .item-box {
  font-size: 20px;
}

@media screen and (max-width: 991px) {
  .single-st_hotel .st-list-rooms .heading {
    padding-left: 0;
  }

  .tata-max-people {
    height: auto;
  }

  .single #st-content-wrapper.st-style-4 #st-list-room .fetch .item .item-infor {
    padding-top: 12px;
  }

  .tata-table-price {
    display: flex;
    flex-direction: column;
  }

  .tata-table-price .price-wrapper {
    padding: 0 !important;
  }

  .tata-left-lock svg {
    display: none;
  }

  #st-content-wrapper .accordion-item .accordion-header .accordion-button {
    padding-right: 0 !important;
  }

  body .st-style-elementor.search-result-page.layout6 .toolbar {
    margin-top: 0px !important;
  }
}

.tata-condition {
  padding: 20px 12px;
}

.tata-condition .tata-item {
  gap: 4px;
}

.tata-mg-b-0 {
  margin-bottom: 0 !important;
}

.tata-extra-price {
  border-radius: 4px;
  border: 1px solid #F9BC14;
  background: white;
  border-style: dashed;
}

/* Itinerary detail hotel */

.accordion-item {
  background-color: none !important;
}

.st-program-list .accordion-button {
  font-size: 16px !important;
  font-weight: 700 !important;
}

.st-program-list .accordion {
  margin-bottom: 20px;
}

.st-program-list .policy-item {
  margin-bottom: 0;
}

.st-program-list .accordion-body,
.st-program-list .tata-accordion-body {
  border: 1px solid #ECF7F3;
  border-top: none;
  padding: 16px !important;
  margin-bottom: 20px;
}

.st-faq-list .accordion-body,
.st-faq-list .tata-accordion-body {
  border: 1px solid #ECF7F3;
  border-top: 1px solid #E5E0E0;
  border-top-style: dashed;
  padding-left: 36px !important;
  padding-bottom: 12px !important;
}

.st-faq-list .tata-accordion-body {
  padding-top: 16px;
}

.tata-qa .btn-show-price {
  background: #012B11;
  color: white !important;
  border-radius: 100px;
  white-space: nowrap;
}

.tata-qa .btn-show-price:hover {
  background: var(--main-color);
}

.st-faq-list .accordion-button {
  font-size: 16px !important;
  line-height: 26px;
  font-weight: 400 !important;
}

.st-faq-list {
  border: 1px solid #ECF7F3;
}

.st-faq-list .faq.st-program.style1,
.st-faq-list .faq.tata-program.style1 {
  border-bottom: 1px solid #E5E0E0;
  padding: 20px 0;
}

.tata-cruise-duration-tabs.nav-tabs {
  border-bottom: 1px solid #ECF7F3;
}

.tata-cruise-duration-tabs .nav-link.active {
  color: var(--heading-color);
  background: #ECF7F3;
  border-color: #ECF7F3 #ECF7F3 #ECF7F3;
  font-weight: 600;
}

.tata-cruise-duration-tabs .nav-link {
  color: var(--main-color);
}

.tata-grid-detail-hotel .ht-element-detail {
  color: var(--grey-color);
}

.tata-grid-detail-hotel .ht-element-detail img {
  filter: opacity(0.5);
}

#st-content-wrapper.st-style-elementor .st-stars i {
  color: #F9BC14;
}

/* hotel detail */

.single #st-content-wrapper.st-style-4 .pagination {
  border-bottom: 0;
  padding-bottom: 0;
}

.stt-attr-durations {
  display: none;
}

.st-style-elementor .sidebar-filter .sidebar-item {
  margin-bottom: 16px;
}

@media screen and (min-width: 991px) {
  .search-result-page .banner {
    height: 300px !important;
  }
}

.st-style-elementor .sidebar-filter .sidebar-item {
  background: #F7F7F7;
  border-radius: 8px;
  padding: 20px;
}

.services-item.item-elementor .tata-item-box {
  box-shadow: none;
  border-radius: 8px;
  border: 1px solid #BABABA;
}

.services-item.grid.item-elementor .item .content-item .st-stars {
  margin-bottom: 0;
}

.price-wrapper .tata-price {
  font-size: 24px !important;
}

.tata-grid-detail-hotel .view-detail,
.tata-tour-footer-price .view-detail {
  color: white !important;
  padding: 8px 20px;
}

.tata-grid-detail-hotel .view-detail:hover,
.tata-tour-footer-price .view-detail:hover {
  filter: brightness(115%);
}

/* grid layout */

.services-item.item-elementor .item .content-item .section-footer {
  margin-top: 8px;
  padding-top: 8px;
}

.services-item.item-elementor .item .st-address span {
  line-height: 20px;
}

.tata-list-elements {
  display: ruby;
  line-height: 20px;
}

.services-item.item-elementor .item .featured-image a img {
  height: 220px;
  object-fit: cover;
}

/* @media screen and (max-width: 767px) {
  .service-list-wrapper .item .featured-image a img {
    height: 220px;
    object-fit: cover;
  }
} */

/* coupon detail hotel */

.st-coupon-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 20px;
}

.services-item .featured-image {
  position: relative;
}

.st-coupon-item-grid {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #c2dcc6;
  border-radius: 4px;
  position: absolute;
  bottom: 6px;
  left: 4px;
  z-index: 2;
  width: 97%;
  font-size: 14px;
  color: #089b1f;
  line-height: 20px;
}

.services-item.item-elementor .item .content-item {
  padding: 12px 8px;
}

.services-item.item-elementor .item .content-item .title {
  line-height: 20px;
}

.st-coupon-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #FEEEEB;
  padding: 14px 16px;
  border-radius: 8px;
}

.st-coupon-left {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.coupon-save {
  color: #d43c2f;
  font-weight: 500;
}

.st-coupon-right {
  font-size: 14px;
  white-space: nowrap;
}

.btn-copy-coupon {
  padding: 4px 10px;
  font-size: 13px;
  border-radius: 6px;
  border: 1px solid #1c3f2b;
  background: #fff;
  cursor: pointer;
}

.btn-copy-coupon:hover {
  background: #1c3f2b;
  color: #fff;
}

.st-hot-coupon-list .card-title {
  color: var(--main-color);
}

.st-hot-coupon-list .btn-copy-coupon {
  padding: 16px 12px;
  font-size: 14px;
}

.coupon-copied-msg {
  font-size: 13px;
  color: #1c9a5f;
}

.st-view-more-coupon {
  font-size: 14px;
  font-weight: 500;
}

.st-coupon-popup-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, .4);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
}

.st-coupon-popup {
  background: #fff;
  width: 100%;
  max-width: 720px;
  border-radius: 10px;
  margin: 0 12px;
}

.st-coupon-popup-header {
  padding: 16px;
  border-bottom: 1px solid #eee;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.st-coupon-popup-header h5 {
  margin: 0;
}

.st-coupon-popup-body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.st-close-coupon-popup {
  background: #FFFFFF;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.08), 0px 4px 12px rgba(0, 0, 0, 0.05);
  border-radius: 30px;
  width: 40px;
  height: 40px;
  cursor: pointer;
  font-size: 24px;
  border: 1px solid black;
}

@media (max-width: 767px) {
  .st-coupon-item {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}

/* end */


/* top infor detail hotel */
.hotel-add-field {
  margin-top: 20px;
  display: flex;
  width: 100%;
  justify-content: space-between;
  gap: 8px;
}

.hotel-add-field .ht-element-add {
  width: 100%;
}

.hotel-add-field .ht-element-detail {
  background: #f7f7f7;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 8px 4px 2px;
  gap: 4px;
  border-radius: 8px;
}

.hotel-add-field p {
  margin-bottom: 0;
  font-size: 14px;
}

.hotel-add-field .info {
  display: flex;
  gap: 4px;
}

@media (max-width: 767px) {
  .hotel-add-field {
    flex-wrap: wrap;
  }

  .hotel-add-field .ht-element-add {
    width: 48%;
  }

  .tata-flex-col {
    flex-direction: column;
  }

  .single #st-content-wrapper .st-single-service-content {
    margin-top: 20px;
  }

  .st-mod-style #st-content-wrapper.st-style-elementor .st-service-header2 .st-heading {
    font-size: 24px;
    line-height: 32px;
  }
}

.st-address .show-map-btn {
  color: #4778FE !important;
  text-decoration: underline !important;
}

.tata-icon {
  width: 22px;
  display: flex;
  padding-bottom: 2px;
  /* justify-content: center;
  align-items: center; */
}


.st-embed-map-popup {
  position: fixed;
  inset: 0;
  z-index: 99999;
}

.st-embed-map-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
}

.st-embed-map-content {
  position: relative;
  width: 90%;
  max-width: 900px;
  height: 600px;
  margin: 5% auto;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
}

.st-embed-map-close {
  position: absolute;
  top: 8px;
  right: 12px;
  font-size: 26px;
  color: #000;
  text-decoration: none;
  z-index: 10;
}

.st-embed-map-iframe iframe {
  width: 100%;
  height: 600px;
}

/* end */

/* custom popup modal hotel detail */

/* ===== ROOM MODAL ===== */
.tata-room-modal .modal-content {
  border-radius: 8px;
}

.tata-room-gallery img {
  border-radius: 6px;
}

.tata-room-thumbs img.tata-thumb {
  width: 70px;
  height: 50px;
  object-fit: cover;
  border-radius: 4px;
  cursor: pointer;
  opacity: 0.7;
  transition: 0.2s;
}

.tata-room-thumbs img.tata-thumb:hover {
  opacity: 1;
  border: 1px solid #0d6efd;
}

.tata-room-info {
  font-size: 14px;
}

.tata-section-title {
  font-size: 13px;
  font-weight: 600;
  margin-bottom: 10px;
}

.tata-room-meta {
  list-style: none;
  padding: 0;
  margin: 0;
}

.tata-room-meta li {
  margin-bottom: 6px;
}

.tata-amenities {
  list-style: none;
  padding: 0;
  columns: 2;
}

.tata-amenities li {
  margin-bottom: 6px;
}

.tata-room-main-image {
  position: relative;
  width: 100%;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #f5f5f5;
}

.tata-room-main-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tata-nav {
  background: rgba(0, 0, 0, 0.5) !important;
  color: #fff;
  font-size: 20px !important;
  line-height: 20px !important;
  text-align: center;
  z-index: 2;
  opacity: 1 !important;
}

.tata-prev {
  left: 10px;
}

.tata-next {
  right: 10px;
}

.tata-nav:hover {
  background: rgba(0, 0, 0, 0.95) !important;
}

.tata-room-thumbs {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  overflow-x: auto;
  padding-bottom: 8px;
}

.tata-room-modal,
.tata-room-modal .modal-dialog,
.tata-room-modal .modal-content,
.tata-room-modal .modal-body {
  overflow-x: hidden;
}

@media (max-width: 767px) {
  .tata-room-main-image {
    aspect-ratio: 16 / 9;
  }

  .tata-room-modal .modal-content {
    padding: 16px;
  }
}


/* ===== Content tab Menu ===== */
.st-content-menu {
  position: sticky;
  top: 40px;
  z-index: 4;
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 12px;
  padding: 12px 10px;
  margin: 24px 0;
  overflow: hidden;
}

.st-content-menu ul {
  display: flex;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  align-items: center;
}

.st-content-menu a {
  text-decoration: none;
  color: #1c3f2b;
  font-weight: 500;
  padding: 8px 16px;
  border-radius: 6px;
  transition: all .2s ease;
  white-space: nowrap;
}

.st-content-menu a:hover {
  background: #f3f6f4;
}

.st-content-menu a.active {
  background: #123c28;
  color: #fff !important;
}

/* Smooth scroll + offset */

/* .st-section-single,
.st-description,
.st-reviews {
  scroll-margin-top: 160px;
} */

@media (max-width: 767px) {
  .st-content-menu {
    overflow-x: auto;
  }

  .st-content-menu ul {
    gap: 12px;
  }
}

/* ===== End Content tab Menu ===== */


/* tour detail */

.st-place-thumb {
  height: 180px;
  overflow: hidden;
  border-radius: 12px;
}

.st-place-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* rules hotel */

.policy-item {
  padding: 10px 16px;
  background: #ECF7F3;
  margin-bottom: 16px;
  border-radius: 4px;
}

.policy-item h4 {
  margin: 0;
}

.hotel-policy-accordion .policy-content {
  display: none;
  margin-top: 10px;
  color: #555;
}

.hotel-policy-accordion .policy-title {
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.hotel-policy-accordion .policy-icon {
  font-size: 20px;
  transition: transform 0.3s ease;
}

.hotel-policy-accordion .policy-item.active .policy-icon {
  transform: rotate(180deg);
}


/* cruise package list */

.tata-slider {
  position: relative;
  overflow: hidden;
  height: 220px;

}

.tata-slider-wrapper {
  display: flex;
  transition: transform 0.4s ease;
}

.tata-slide {
  min-width: 100%;
}

.tata-slide img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  display: block;
}

.service-list-wrapper .item .featured-image:hover .tata-slider img {
  transform: none;
}

/* Arrow */
.tata-prev,
.tata-next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: white;
  border: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  cursor: pointer;
  font-size: 16px;
  opacity: 0;
  transition: 0.3s;
}

.tata-prev {
  left: 15px;
}

.tata-next {
  right: 15px;
}

/* Hover mới hiện */
.tata-slider:hover .tata-prev,
.tata-slider:hover .tata-next {
  opacity: 1;
}

/* Dots */
.tata-dots {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
}

.tata-dots span {
  width: 8px;
  height: 8px;
  background: white;
  opacity: 0.5;
  border-radius: 50%;
  cursor: pointer;
}

.tata-dots .active {
  opacity: 1;
}

#st-content-wrapper.search-result-page .tata-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
}

.tata-banner .banner-title h1 {
  font-size: 60px !important;
}

.tata-banner .banner-title h4 {
  color: white !important;
  font-weight: 400 !important;
  font-size: 20px !important;
}

.container.banner-title {
  position: relative;
}

.service-list-wrapper.service-tour .services-item.item-elementor .price-wrapper .tata-price {
  line-height: initial;
}

.service-list-wrapper.service-tour .services-item.item-elementor .price-wrapper .tata-price .item {
  line-height: initial;
}

.services-item.tata-service-tour .item.onsale {
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: #B1BAC1;
  text-decoration: line-through;
  width: auto !important;
}

.services-item.tata-service-tour .item {
  box-shadow: none;
}

.services-item.item-elementor .item .content-item .reviews .rate {
  margin-right: 2px;
}

.tata-tour-footer-price .price-wrapper .price .item {
  margin-left: 0px !important;
}

@media screen and (max-width: 767px) {

  .search-result-page.tour-layout7 .top-filter {
    padding: 0 !important;
  }

  .tata-banner .banner-title h1 {
    font-size: 32px !important;
    margin-bottom: 0 !important;
  }

  .tata-banner .banner-title h4 {
    font-size: 16px !important;
    line-height: 20px !important;
  }

  #st-content-wrapper.search-result-page .tata-banner {
    min-height: 100px !important;
  }

  .header {
    padding: 8px 12px !important;
  }
}

.single-st_tours #st-content-wrapper.st-style-elementor .st-form-book-wrapper .submit-group {
  padding: 0 !important;
}

/* booking tour form */

.form-booking-price .text-small {
  font-size: 16px;
}

#st-content-wrapper.st-style-elementor .st-form-book-wrapper .inquiry-v2 .tata-sent-mail-customer {
  padding: 25px 25px 0 25px !important;
  border: none;
}

@media (max-width: 767px) {
  .st-wrapper-form-booking nav {
    padding: 0 12px;
  }

  .st-hotel-content .btn-v2.btn-primary {
    width: 140px;
    justify-content: center;
  }

  .close-icon.hide {
    margin: 12px 0 !important;
  }

  .single .st-fixed-form-booking .st-form-head-book {
    margin-bottom: 20px;
    padding-top: 20px !important;
  }

  .single-st_tours #st-content-wrapper.st-style-elementor .form-guest-search .guest-wrapper,
  .single-st_tours #form-booking-inpage .form-group,
  .single #nav-book .form-extra-field {
    padding: 8px;
  }

  .single .st-fixed-form-booking .st-form-booking-action form .st-group-form {
    border-radius: 8px;
  }

  .single .st-fixed-form-booking .st-form-booking-action {
    padding: 0 12px;
  }

  .single .st-form-book-wrapper {
    border-radius: 0;
  }

  #st-content-wrapper.st-style-elementor .st-fixed-form-booking .st-form-book-wrapper {
    padding-top: 0;
  }

  #st-content-wrapper.st-style-elementor .st-fixed-form-booking .close-icon {
    font-size: 24px;
  }

  .st-wrapper-form-booking.form-date-search nav {
    padding: 0 12px;
  }

  .single .st-fixed-form-booking .tab-pane .st-form-head-book {
    margin-top: 0;
  }
}

/* booking form woocommerce */
.has-deposit tr.cart-subtotal {
  display: none;
}

.woocommerce-form-coupon-toggle .woocommerce-info {
  border-top-color: var(--e-global-color-primary);
}

.woocommerce table.shop_table.booking-item-payment {
  border-collapse: collapse;
}

.tata-transfer-checkout .st-icheck-item label {
  font-size: 16px;
}

/* checkout woo review */

.woocommerce-checkout .woocommerce-checkout-review-order-table header .booking-item-payment-img img {
  border-radius: 12px;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table header .col-left .booking-item-payment-title {
  line-height: 20px;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table header .col-left .address {
  font-size: 14px;
  line-height: 16px;
}

ul.booking-item-description {
  list-style: none;
  padding: 0;
}

.woocommerce-cart .cart-collaterals .cart_totals table .order-total th {
  font-weight: bold;
}

.woocommerce-cart-form .woocommerce-cart-form__cart-item.cart_item .product-thumbnail {
  width: 30%;
}

@media screen and (max-width: 767px) {
  .woocommerce-cart-form .woocommerce-cart-form__cart-item.cart_item .product-thumbnail {
    width: 100%;
  }
  .woocommerce table.cart .product-thumbnail img, .woocommerce-page table.cart .product-thumbnail img {
    height: 200px;
    object-fit: cover;
  }
  .woocommerce-cart-form .woocommerce-cart-form__cart-item.cart_item .product-name::before {
    padding-top: 4px;
  }
  .woocommerce table.shop_table_responsive tr:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
    background: none;
  }
}

/* thank kou page woo */

.st-woo-thankyou-page .order-payment-list {
  background: #F7F7F7;
  border-radius: 20px;
  padding: 40px;
}

.st-woo-thankyou-page .order-payment-list .order_item .row {
  background: white;
  padding: 20px;
  border-radius: 12px;
  margin-bottom: 20px;
}

.st-woo-thankyou-page .order-payment-list .order_item .row .text-right {
  margin-bottom: 0;
}

/* .st-woo-thankyou-page .row .tata-text-right-tk {
  padding: 40px;
  background: #ECF7F3;
  border-radius: 20px;
  text-align: center;
} */

.st-woo-thankyou-page .row .tata-text-right-tk .text-lg {
  font-size: 20px;
  color: var(--main-color);
  font-weight: bold;
}

.st-woo-thankyou-page .order-item-meta-box li {
  font-size: 16px !important;
}

.st-woo-thankyou-page table.shop_table {
  background: #F7F7F7;
  border-radius: 20px;
  padding: 40px;
  border: 0;
}

.st-woo-thankyou-page .woocommerce-customer-details address {
  background: #F7F7F7;
  border-radius: 20px;
  padding: 40px;
  border: 0;
}

.st-woo-thankyou-page #frame-thanhtoan {
  margin-bottom: 40px;
  background: #ECF7F3;
  padding: 20px;
  border-radius: 20px;
}

.st-woo-thankyou-page #frame-thanhtoan p {
  margin-bottom: 0;
}

.st-woo-thankyou-page #frame-thanhtoan h3 {
  font-weight: bold;
  /* color: var(--main-color); */
}

@media screen and (max-width: 767px) {

  .st-woo-thankyou-page .order-payment-list,
  .st-woo-thankyou-page table.shop_table,
  .st-woo-thankyou-page .woocommerce-customer-details address {
    padding: 20px;
  }

  .st-woo-thankyou-page .order-payment-list .order_item .row {
    padding: 12px;
  }

  .st-woo-thankyou-page .row .tata-text-right-tk .text-lg {
    font-size: 24px;
  }
}

/* /////// form booking check out */

.woocommerce table.cart .product-thumbnail img,
.woocommerce-page table.cart .product-thumbnail img {
  width: 100%;
  border-radius: 8px;
}

.billing_information .form-group .form-control.has-desc {
  margin-bottom: 0px;
}

.billing_information .form-group .desc.desc-has-content {
  /* color: #607289; */
  font-size: 14px;
}

.billing_information .form-group.group-has-desc {
  margin-bottom: 20px;
}

.billing_information .form-group select {
  height: 50px;
}

.tata-room-info-detail {
  background: #F7F7F7;
  border-radius: 8px;
}

.tata-max-people-booking {
  border-radius: 4px;
  border: 1px solid #F9BC14;
  background: white;
  border-style: dashed;
}

.tata-booking-fee {
  border-radius: 8px;
  border: 1px solid #089B1F;
  background: white;
  border-style: dashed;
  color: #089B1F;
}

.st-checkout-page.style-2 .cart-info .service-section .service-right .title {
  font-size: 16px;
  margin-bottom: 4px;
  line-height: 18px;
}

.st-checkout-page.style-2 .cart-info .service-section .service-right .address {
  line-height: 16px;
}

.st-checkout-page.style-2 .cart-info .service-section .service-left {
  border-radius: 8px;
  margin-right: 12px;
}

.tata-total_price {
  background: #ECF7F3;
  border-radius: 8px;
  border-top: 1px solid #eaeef3;
  margin-top: 20px;
  color: #012B11;
  padding: 16px 12px;
}

.tata-total_price .value {
  font-size: 20px !important;
  font-weight: 900 !important;
}

.tata-deposit .label-deposit {
  line-height: 20px;
  font-size: 16px;
  color: var(--grey-color);
}

.tata-payment-amount {
  border-radius: 8px;
  border: 1px solid #F9BC14;
  background: white;
  border-style: dashed;
  /* color: #F9BC14; */
  padding: 12px;
}

.tata-payment-amount .value {
  font-size: 32px !important;
  font-weight: 900 !important;
  text-align: right;
  color: #4778FE !important;
  margin: 8px 0;
}

.st-checkout-page .cart-info {
  margin-top: 0 !important;
}

.tata-form-booking-tittle {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 20px;
}

.billing_information {
  display: flex;
}

.tata-step-wrapper {
  background: #f3fbf6;
}

.step-line hr {
  opacity: 0.5;
}

.step-badge {
  font-weight: 500;
  font-size: 16px;
  padding: 12px 20px;
}

.step-badge-active {
  background-color: var(--main-color);
  color: #fff;
  border: 1px solid black;
}

.step-badge-inactive {
  background-color: #fff;
  border: 1px solid #adb5bd;
  color: #212529;
}

.tata-step-mobile {
  background: #f3fbf6;
  padding: 12px 10px;
}

.tata-step-mobile-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.tata-step-mobile-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 13px;
  color: #999;
  min-width: 80px;
}

.tata-step-dot {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 2px solid #ccc;
  background: #fff;
  margin-bottom: 6px;
}

.tata-step-mobile-line {
  width: 60px;
  height: 2px;
  border-top: 2px dotted #ccc;
}

.tata-step-active .tata-step-dot {
  border-color: var(--main-color);
}

.tata-step-active .tata-step-label {
  color: #000;
  font-weight: 600;
}

.tata-step-done .tata-step-dot {
  background: var(--main-color);
  border-color: var(--main-color);
}

.tata-step-line-active {
  border-top-color: var(--main-color);
}

@media screen and (max-width: 767px) {
  .page-template-template-checkout .st-checkout-page {
    margin-top: 20px;
  }

  .st-checkout-page.style-2 .cart-info {
    padding: 16px;
  }

  .billing_information .form-group .desc.desc-has-content {
    line-height: 12px !important;
  }

  .billing_information .wb_row .form-group {
    width: 100% !important;
  }

  .billing_information .form-group .form-control {
    margin-bottom: 12px !important;
  }

  .billing_information .form-group label {
    margin-bottom: 4px !important;
  }

  .billing_information .form-group .form-control.has-desc {
    margin-bottom: 0 !important;
  }
}

.tooltip-right .tooltip-inner {
  text-align: right;
}

/* .tata-transfer-checkout .st-icheck-item label .checkmark {
  top: 5px;
}

.tata-transfer-checkout .st-icheck-item label .checkmark:after {
  top: 2px;
  left: 2px;
  width: 10px;
  height: 10px;
} */

/* success checkout modal */

.st-checkout-page.style-2 .booking-success-notice {
  padding: 20px;
}



/* //////// wishlists */

@media screen and (max-width: 767px) {
  .list-wishlist-wrapper {
    padding-left: 12px;
    padding-right: 12px;
  }
}

/* list destination - location */

.st-list-destination.st-sliders .swiper-wrapper .swiper-slide .thumbnail {
  border-radius: 0px;
  padding-bottom: 60%;
}

.st-list-destination.st-sliders .swiper-wrapper .swiper-slide {
  background: white;
  border-radius: 8px;
  overflow: hidden;
}

.st-list-destination.st-sliders .swiper-wrapper .swiper-slide .title {
  margin-bottom: 16px;
  text-align: left;
  padding-left: 16px;
}

.st-list-destination.st-sliders .swiper-wrapper .swiper-slide {
  margin-right: 20px !important;
}

/* homepage */

.cta-banner-home {
  padding: 0 !important;
}

.services-item.item-elementor .price .item {
  border-radius: 0;
  overflow: unset;
}

.st-list-service.slider.style_2 .st-button-prev {
  top: 20%;
  left: -19px;
  margin: 0;
}

.st-list-service.slider.style_2 .st-button-next {
  top: 20%;
  right: -19px;
  margin: 0;
}

/* tata cruise type */

.tata-cruise-type .top-filter {
  background: #F7F8FA;
  display: flex;
  align-items: center;
  justify-content: center;
}

.tata-cruise-type .top-filter ul li .dropdown {
  padding: 12px 20px;
  background: #FFFFFF;
  border: 1px solid #DEDEDE;
  border-radius: 40px;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  color: var(--heading-color);
  display: flex;
  align-items: center;
}

.tata-cruise-type .top-filter ul li:not(:last-child) {
  margin-right: 14px;
}

/* container */

@media (min-width: 1290px) {
  .tata-container {
    max-width: 1270px !important;
    padding: 0 10px !important;
    margin-right: auto !important;
    margin-left: auto !important;
    width: 100% !important;
  }
}

/* search bar */

.dropdown-menu.st-modern-style, .st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .field-guest .dropdown-menu, .st-mod-style .daterangepicker.dropdown-menu {
  padding: 16px;
}

.search-form form .st-form-dropdown-icon,
.search-form form .form-group .render {
  width: 100%;
}

.st-scrollbar li.item.dropdown-item[data-type="location"]:not(:has(~ li.item.dropdown-item[data-type="location"])) {
  margin-bottom: 12px !important;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .form-date-field {
  min-width: auto !important;
}

@media screen and (max-width: 767px) {
  .st-mod-style .daterangepicker.dropdown-menu {
    width: calc(100% - 30px);
    padding: 0;
  }

  .st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .form-date-field .date-item-wrapper.checkin {
    width: 100%;
  }

  .st-banner-search-form.style_2 .st-search-form-el .button-search-wrapper .btn-search {
    border-width: 0px 0px 0px 0px !important;
  }
}

.st-banner-search-form.style_2 .st-search-form-el .button-search-wrapper .btn-search {
  background-color: var(--e-global-color-de38300);
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: var(--e-global-color-primary);
  color: var(--e-global-color-primary);
}

/* review of detail hotel */

.single #st-content-wrapper.st-style-4 .review-box .st-review-box-top .review-score {
  width: 80px;
  height: 80px;
  font-size: 24px;
  border-radius: 50%;
  line-height: 60px;
  background: var(--main-color);
  color: white;
}

/* blog */

.elementor-widget-theme-post-featured-image.elementor-widget-image a {
  width: 100%;
}

.elementor-widget-container .page-numbers {
  padding: 10px 14px;
  border-radius: 10px;
  color: var(--e-global-color-primary);
}

.elementor-widget-container .page-numbers.current {
  color: #fff;
  box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.08), 0px 4px 12px rgba(0, 0, 0, 0.05);
  background: var(--main-color);
}

.elementor-widget-container .page-numbers.prev,
.elementor-widget-container .page-numbers.next {
  background: #F7F8FA;
  ;
  border: 1px solid #DEDEDE;
}

/* // add đếm số cho filter blog */

.e-filter-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.e-filter-item .cat-count {
  font-size: 16px;
  opacity: .7;
}


/* compare cruise */

.tata-sticky-clone {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  background: #fff;
  display: none;
}

.tata-sticky-clone table {
  margin: 0;
}

.tata-sticky-active .tata-sticky-clone {
  display: block;
}

.tata-vote-star.reviews .rate {
  background: #F9FBFF;
  border: 1px solid #B8CCFF;
  box-sizing: border-box;
  border-radius: 5px;
  font-weight: 700;
  font-size: 14px;
  line-height: 20px;
  color: #f9bc14;
  margin-right: 12px;
  padding: 2px 6px 0px;
}

.tata-compare-cruises .st-style-elementor a.btn.btn-outline-primary.btn-sm {
  color: white !important;
}

.tata-compare-cruises .st-style-elementor a.btn.btn-outline-primary.btn-sm:hover {
  background: black;
}

.tata-compare-cruises .st-style-elementor a.close-tata {
  padding: 2px 8px;
  border-radius: 50%;
}

.tata-compare-btn {
  color: var(--main-color);
  cursor: pointer;
  padding: 4px 12px;
}

.tata-compare-btn.active .tata-icon-plus {
  display: none;
}

.tata-compare-btn.active .tata-icon-check {
  display: inline-block;
}

.tata-compare-btn.active .tata-text {
  content: "Compared";
}

@media screen and (max-width: 767px) {
  .tata-compare-cruises .st-style-elementor {
    margin-top: 20px !important;
  }

  .table-light th {
    padding: 4px !important;
  }

  .tata-compare-cruises .st-style-elementor .btn.btn-outline-primary.btn-sm {
    padding: 8px 8%;
  }

}

/* custom billing form woo */



/* hidden field không chiếm layout */

.iti {
  width: 100%;
}

.iti input {
  width: 100%;
  height: 44px;
}

@media screen and (max-width: 767px) {
  .woocommerce-billing-fields__field-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 0;
  }

  .form-row {
    width: 100% !important;
  }
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px;
}

.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row {
  float: none !important;
  clear: none !important;
  width: 50%;
  padding: 0 10px;
  box-sizing: border-box;
}

.woocommerce-checkout #billing_address_1_field {
  width: 100% !important;
}

.woocommerce form .form-row .woocommerce-input-wrapper .description {
  background: white;
  color: gray;
  border-radius: 3px;
  padding: 0;
  margin: .5em 0 0;
  clear: both;
  display: block;
  position: relative;
  line-height: 14px;
  font-size: 14px;
}

.woocommerce form .form-row .description {
  background: white;
  color: gray;
  border-radius: 3px;
  padding: 0;
  margin: .5em 0 0;
  clear: both;
  display: block;
  position: relative;
  line-height: 14px;
  font-size: 14px;
}

.woocommerce form .form-row .woocommerce-input-wrapper .description::before {
  display: none;
}

.woocommerce form .form-row {
  margin-bottom: 12px;
}

.woocommerce form .form-row .input-text,
.woocommerce form .form-row select {
  line-height: 28px;
}