@font-face {
  font-family: "Bold";
  font-display: swap;
  src: url("../webfonts/SVN-Poppins-Bold.ttf") format("truetype");
}
@font-face {
  font-family: "Medium";
  font-display: swap;
  src: url("../webfonts/SVN-Poppins-Medium.ttf") format("truetype");
}
@font-face {
  font-family: "Regular";
  font-display: swap;
  src: url("../webfonts/SVN-Poppins-Regular.ttf") format("truetype");
}
@font-face {
  font-family: "SemiBold";
  font-display: swap;
  src: url("../webfonts/SVN-Poppins-SemiBold.ttf") format("truetype");
}
@font-face {
  font-family: "Inter-Regular";
  src: url("../webfonts/Inter-Regular.otf") format("opentype");
}
@font-face {
  font-family: "Inter-Medium";
  src: url("../webfonts/Inter-Medium.otf") format("opentype");
}
@font-face {
  font-family: "Inter-Bold";
  src: url("../webfonts/Inter-Bold.otf") format("opentype");
}
@font-face {
  font-family: "Inter-SemiBold";
  src: url("../webfonts/Inter-SemiBold.otf") format("opentype");
}
a,
a:hover,
a:focus,
a:active {
  outline: none;
  box-shadow: none;
  -webkit-tap-highlight-color: transparent;
}

button:focus {
  outline: none;
}

.d-flex {
  display: flex;
}

.align-center {
  align-items: center;
}

.justify-between {
  justify-content: space-between;
}

.flex-column {
  flex-direction: column;
}

.flex-wrap {
  flex-wrap: wrap;
}

/* Margin Top */
.mt-0 {
  margin-top: 0 !important;
}

.mt-5 {
  margin-top: 5px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mt-15 {
  margin-top: 15px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mt-25 {
  margin-top: 25px !important;
}

.mt-30 {
  margin-top: 30px !important;
}

/* Margin Bottom */
.mb-0 {
  margin-bottom: 0 !important;
}

.mb-5 {
  margin-bottom: 5px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-15 {
  margin-bottom: 15px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-25 {
  margin-bottom: 25px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

/* Margin Left */
.ml-0 {
  margin-left: 0 !important;
}

.ml-5 {
  margin-left: 5px !important;
}

.ml-10 {
  margin-left: 10px !important;
}

.ml-15 {
  margin-left: 15px !important;
}

.ml-20 {
  margin-left: 20px !important;
}

/* Margin Right */
.mr-0 {
  margin-right: 0 !important;
}

.mr-5 {
  margin-right: 5px !important;
}

.mr-10 {
  margin-right: 10px !important;
}

.mr-15 {
  margin-right: 15px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

/* Padding Top */
.pt-0 {
  padding-top: 0 !important;
}

.pt-5 {
  padding-top: 5px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pt-15 {
  padding-top: 15px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pt-25 {
  padding-top: 25px !important;
}

.pt-30 {
  padding-top: 30px !important;
}

/* Padding Bottom */
.pb-0 {
  padding-bottom: 0 !important;
}

.pb-5 {
  padding-bottom: 5px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pb-15 {
  padding-bottom: 15px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

/* Padding Left */
.pl-0 {
  padding-left: 0 !important;
}

.pl-5 {
  padding-left: 5px !important;
}

.pl-10 {
  padding-left: 10px !important;
}

.pl-15 {
  padding-left: 15px !important;
}

.pl-20 {
  padding-left: 20px !important;
}

/* Padding Right */
.pr-0 {
  padding-right: 0 !important;
}

.pr-5 {
  padding-right: 5px !important;
}

.pr-10 {
  padding-right: 10px !important;
}

.pr-15 {
  padding-right: 15px !important;
}

.pr-20 {
  padding-right: 20px !important;
}

/* Padding X */
.px-5 {
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.px-10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.px-15 {
  padding-left: 15px !important;
  padding-right: 15px !important;
}

/* Padding Y */
.py-5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important;
}

.py-10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.py-15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}

.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  border: 1px solid transparent;
  border-radius: 56px;
  background: transparent;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.btn:hover, .btn:focus {
  text-decoration: none;
  outline: none !important;
}

.btn--fill {
  border-color: #f8ba16;
  background: #f8ba16;
  color: #1d2a5c;
}
.btn--fill:hover, .btn--fill:focus {
  background: #f6c24d;
  border-color: #f6c24d;
  color: #1d2a5c;
}

.btn--outline {
  border-color: #f8ba16;
  background: transparent;
  color: #1d2a5c;
}
.btn--outline:hover, .btn--outline:focus {
  background: #f8ba16;
  color: #1d2a5c;
}

.btn--sm {
  height: 36px;
  padding: 3px 16px;
  border-radius: 49px;
}

.btn--md {
  height: 40px;
  padding: 8px 16px;
}

.btn--lg {
  height: 48px;
  padding: 8px 24px;
}

.btn--block {
  display: flex;
  width: 100%;
}

.btn--center {
  margin-left: auto;
  margin-right: auto;
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
}

.pagination--spaced {
  margin-top: 8px;
}

.pagination__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.pagination__item {
  width: 36px;
  height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f0f0f0;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-decoration: none;
}
.pagination__item.is-active {
  background: #1d2a5c;
  color: #fff;
}
.pagination__item--prev, .pagination__item--next {
  background: #fff;
  border: 1px solid #d8d8d8;
}
.pagination__item--prev img, .pagination__item--next img {
  width: 16px;
  height: 16px;
  display: block;
}
.pagination__item--prev img {
  transform: rotate(180deg);
}
.pagination__item:hover, .pagination__item:focus {
  text-decoration: none;
  opacity: 0.9;
}

.header {
  background: #fff;
  box-shadow: 0 1px 1px rgba(30, 43, 93, 0.15);
  border-bottom: 1px solid #F5F5F5;
}

.header-bar {
  padding: 8px 0;
  background: #1d2a5c;
  color: #fff;
}

.header-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.header-bar-list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
}
.header-bar-list > li {
  display: flex;
  align-items: center;
  gap: 8px;
}
.header-bar-list a,
.header-bar-list span {
  color: #fff;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 22px;
  text-decoration: none;
  white-space: nowrap;
}
.header-bar-list a:hover, .header-bar-list a:focus {
  color: #f8ba16;
}
.header-bar-list img {
  flex-shrink: 0;
  display: block;
}
.header-bar-list--actions {
  flex-shrink: 0;
  gap: 16px;
}
.header-bar-list--actions a {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
}

.header-bar-divider {
  width: 1px;
  height: 20px;
  background: rgba(255, 255, 255, 0.3);
}

.header-bar-chevron {
  transform: rotate(90deg);
}

@media (max-width: 991px) {
  .header-bar-inner {
    flex-direction: column;
    align-items: flex-start;
  }
  .header-bar-list--actions {
    width: 100%;
    justify-content: flex-start;
  }
}
@media (max-width: 767px) {
  .header-bar-list {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .header-bar-list--actions {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .header-bar-divider {
    display: none;
  }
}
.header-body-inner {
  display: flex;
  align-items: center;
  gap: 48px;
  padding: 18px 0;
  position: relative;
}

.header-logo {
  display: block;
  flex-shrink: 0;
}
.header-logo img {
  display: block;
  width: 207px;
  height: 44px;
}

.header-toggle {
  display: none;
  margin-left: auto;
  padding: 9px 10px;
  border: 1px solid #1d2a5c;
  border-radius: 4px;
  background: transparent;
  cursor: pointer;
}
.header-toggle span {
  display: block;
  width: 22px;
  height: 2px;
  margin: 4px 0;
  background: #1d2a5c;
}

.header-panel {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 1;
  gap: 24px;
}

.header-nav {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 24px;
}
.header-nav a {
  color: #0c1227;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
}
.header-nav a:hover, .header-nav a:focus {
  color: #1d2a5c;
  text-decoration: none;
}

.header-tools {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
  padding-left: 20px;
}

.header-user {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #1d2a5c;
}
.header-user:hover, .header-user:focus {
  background: #17224a;
}
.header-user img {
  width: 24px;
  height: 24px;
}

.header-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 3px 16px;
  border-radius: 49px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  outline: none;
}
.header-cta:hover, .header-cta:focus {
  background: #f6c24d;
  color: #1d2a5c;
  text-decoration: none;
}

@media (max-width: 1199px) {
  .header-body-inner {
    gap: 24px;
  }
  .header-panel,
  .header-nav {
    gap: 16px;
  }
  .header-tools {
    padding-left: 16px;
  }
}
@media (max-width: 991px) {
  .header-toggle {
    display: block;
  }
  .header-panel {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 100;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 16px 0;
    background: #fff;
    box-shadow: 0 8px 16px rgba(30, 43, 93, 0.1);
  }
  .header-panel.is-open {
    display: flex;
  }
  .header-nav {
    flex-direction: column;
    align-items: center;
    gap: 0;
  }
  .header-nav li {
    width: 100%;
    text-align: center;
  }
  .header-nav a {
    display: block;
    padding: 12px 16px;
  }
  .header-tools {
    justify-content: center;
    margin-top: 16px;
    padding: 16px 0 0;
    border-left: 0;
    border-top: 1px solid rgba(29, 42, 92, 0.1);
  }
}
.hero {
  position: relative;
  min-height: 512px;
  padding-bottom: 78px;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  pointer-events: none;
}
.hero > .container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 512px;
  padding-top: 48px;
}

.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.hero-title {
  margin: 0;
  padding: 0 15px;
  max-width: 1000px;
  color: #fff;
  font-family: "Mona Sans", sans-serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 56px;
  text-align: center;
  text-transform: uppercase;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.hero-search {
  position: absolute;
  bottom: -125px;
  width: 100%;
  padding: 20px 24px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 20px 12.5px rgba(0, 0, 0, 0.1);
}

.hero-search-label {
  position: absolute;
  top: -42px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  color: #000;
  background: #fff;
  border-top-left-radius: 20px;
  border-top-right-radius: 20px;
  width: 400px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
  letter-spacing: 0.72px;
  text-transform: uppercase;
}

.hero-search-form {
  display: flex;
  align-items: flex-end;
  gap: 8px;
}

.hero-field {
  flex: 1;
  min-width: 0;
  margin: 0;
}
.hero-field > span {
  color: #1d2a5c;
  font-family: "Mona Sans", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
  text-transform: uppercase;
  margin-bottom: 6px;
  display: block;
}
.hero-field {
  position: relative;
}
.hero-field:has(select)::after, .hero-field:has(.hero-datepicker)::after {
  content: "";
  position: absolute;
  right: 8px;
  bottom: 8px;
  pointer-events: none;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  background: url("../assets/svg/chevron-select.svg") no-repeat center/24px 24px;
  transform: rotate(90deg);
}
.hero-field select,
.hero-field input.hero-datepicker {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 40px;
  padding: 8px 8px 8px 16px;
  border: 1px solid #85b0de;
  border-radius: 56px;
  background-color: #fff;
  color: #8c8c8c;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  width: 100%;
  padding-right: 40px;
  appearance: none;
  outline: none;
  box-shadow: none;
  cursor: pointer;
}
.hero-field select option {
  color: #1d2a5c;
}

.hero-search .datepicker {
  border-radius: 8px;
  padding: 8px;
}
.hero-search .datepicker table tr td.active,
.hero-search .datepicker table tr td.active:hover,
.hero-search .datepicker table tr td.active.disabled,
.hero-search .datepicker table tr td.active.disabled:hover {
  background: #1d2a5c !important;
  background-image: none;
}
.hero-search .datepicker table tr td.today,
.hero-search .datepicker table tr td.today:hover,
.hero-search .datepicker table tr td.today.disabled,
.hero-search .datepicker table tr td.today.disabled:hover {
  background: #f8ba16 !important;
  background-image: none;
  color: #1d2a5c;
}

.hero-search-btn {
  flex-shrink: 0;
  width: 165px;
  height: 40px;
  padding: 8px 12px;
  border: 0;
  border-radius: 56px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}
.hero-search-btn:hover, .hero-search-btn:focus {
  background: #f6c24d;
  color: #1d2a5c;
  outline: none;
}

@media (max-width: 1199px) {
  .hero-title {
    font-size: 40px;
    line-height: 48px;
  }
  .hero-search-form {
    flex-wrap: wrap;
  }
  .hero-field {
    flex: 1 1 calc(50% - 4px);
  }
  .hero-search-btn {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .hero {
    min-height: 420px;
    padding-bottom: 40px;
  }
  .hero > .container {
    min-height: 420px;
    padding-top: 32px;
  }
  .hero-title {
    font-size: 28px;
    line-height: 36px;
  }
  .hero-search {
    margin-bottom: -40px;
    padding: 40px 16px 16px;
  }
  .hero-search-label {
    font-size: 14px;
    line-height: 22px;
    white-space: normal;
    text-align: center;
    width: 90%;
  }
  .hero-search-form {
    flex-direction: column;
    align-items: stretch;
  }
  .hero-field {
    flex: 1 1 100%;
  }
}
.tours {
  overflow: hidden;
  padding: 130px 0 80px;
  background: linear-gradient(180deg, #fff 6.44%, rgba(255, 255, 255, 0.4) 16.45%), #f5f0e8;
}

.tours-head {
  max-width: 1170px;
  margin: 0 auto 48px;
  text-align: center;
}
.tours-head h2 {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.tours-head p {
  margin: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tours-slider-wrap {
  position: relative;
  margin-bottom: 40px;
}

.tours-slider.owl-carousel .owl-stage-outer {
  overflow: visible;
}
.tours-slider.owl-carousel .owl-item {
  opacity: 0.4;
  transition: opacity 0.3s;
}
@media (min-width: 992px) {
  .tours-slider.owl-carousel .owl-item.center,
  .tours-slider.owl-carousel .owl-item.center + .owl-item,
  .tours-slider.owl-carousel .owl-item:has(+ .owl-item.center) {
    opacity: 1;
  }
}
@media (max-width: 991px) {
  .tours-slider.owl-carousel .owl-item.center {
    opacity: 1;
  }
}

.tours-nav {
  position: absolute;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 2px 8px rgba(6, 21, 86, 0.12);
  cursor: pointer;
}
.tours-nav img {
  width: 24px;
  height: 24px;
}
.tours-nav--prev {
  left: -100px;
}
.tours-nav--prev img {
  transform: rotate(180deg);
}
.tours-nav--next {
  right: -100px;
}

.tours-dots-wrap {
  margin-bottom: 40px;
  display: flex;
  justify-content: center;
  gap: 10px;
}
.tours-dots-wrap .owl-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  line-height: 0;
}
.tours-dots-wrap .owl-dot {
  width: 59px;
  height: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 16px;
  background: #d8d8d8;
  transition: width 0.3s, background 0.3s;
}
.tours-dots-wrap .owl-dot span {
  display: none;
}
.tours-dots-wrap .owl-dot.active {
  width: 95px;
  background: #868075;
}

.tour-card {
  display: flex;
  flex-direction: column;
  width: 100%;
  max-width: 420px;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 4px rgba(6, 21, 86, 0.15);
  overflow: hidden;
  transition: transform 0.35s ease, box-shadow 0.35s ease;
}
.tour-card:hover {
  transform: translateY(-8px);
}

.tour-card__media-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.tour-card__media-link:hover, .tour-card__media-link:focus {
  text-decoration: none;
  color: inherit;
}

.tour-card__media {
  position: relative;
  height: 272px;
  overflow: hidden;
}
.tour-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
}
.tour-card:hover .tour-card__media img {
  transform: scale(1.03);
}

.tour-card__location {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 4px 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 40px;
  background: rgba(0, 0, 0, 0.5);
  backdrop-filter: blur(16px);
  font-family: "Medium", sans-serif;
  text-align: center;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 24px;
  color: #fff;
}
.tour-card__location img {
  width: 20px !important;
  height: 20px;
}

.tour-card__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px;
}

.tour-card__main {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tour-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.tour-card__duration {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}
.tour-card__duration img {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}

.tour-card__rating {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #f8ba16;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
}
.tour-card__rating img {
  width: 16px;
  height: 16px;
}

.tour-card__title {
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
}
.tour-card__title a {
  color: inherit;
  text-decoration: none;
}
.tour-card__title a:hover, .tour-card__title a:focus {
  color: inherit;
  text-decoration: none;
}

.tour-card__divider {
  height: 1px;
  margin: 0;
  background: #f0f0f0;
}

.tour-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.tour-card__price .tour-card__from {
  display: block;
  color: #121212;
  font-size: 18px;
  line-height: 26px;
}
.tour-card__price .tour-card__from span {
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
}
.tour-card__price .tour-card__from strong {
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
}

.tour-card__price-row {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-top: 2px;
}

.tour-card__old {
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-decoration: line-through;
  opacity: 0.4;
}

.tour-card__badge {
  padding: 0 4px;
  border-radius: 4px;
  background: rgba(213, 22, 4, 0.15);
  color: #d51604;
  font-family: "SemiBold", sans-serif;
  font-size: 12px;
  line-height: 20px;
}

.tour-card__footer .btn {
  flex-shrink: 0;
}

.tour-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: inherit;
  text-decoration: none;
}
.tour-card__link:hover, .tour-card__link:focus {
  text-decoration: none;
  color: inherit;
}
.tour-card__link .tour-card__body {
  flex: 1;
}
.tour-card__link .tour-card__title {
  margin: 0;
}
.tour-card__link .btn {
  pointer-events: none;
}

@media (max-width: 1199px) {
  .tours-nav--prev {
    left: 0;
  }
  .tours-nav--next {
    right: 0;
  }
}
@media (max-width: 767px) {
  .tours {
    padding: 160px 0 48px;
  }
  .tours-head h2 {
    font-size: 24px;
    line-height: 32px;
  }
  .tour-card {
    width: 100%;
  }
  .tours-nav {
    width: 40px;
    height: 40px;
  }
  .tours-nav img {
    width: 20px;
    height: 20px;
  }
}
.page-hero,
.tour-banner {
  position: relative;
  height: 512px;
  overflow: hidden;
  background: #000;
}
.page-hero::before,
.tour-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 39.5%, rgba(0, 0, 0, 0.7) 69.1%);
  z-index: 1;
  pointer-events: none;
}
.page-hero__bg,
.tour-banner__bg {
  position: absolute;
  inset: 0;
}
.page-hero__bg img,
.tour-banner__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.page-hero__content,
.tour-banner__content {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 32px;
  width: 100%;
  max-width: 1320px;
  padding-left: 15px;
  padding-right: 15px;
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 16px;
  z-index: 2;
}
.page-hero__title,
.tour-banner__title {
  margin: 0;
  font-family: "Medium", sans-serif;
  font-size: 48px;
  line-height: 56px;
  text-transform: uppercase;
}
.page-hero__desc,
.tour-banner__desc {
  margin: 0;
  font-family: "Lato", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  max-width: 1320px;
}

.tour-banner__bg,
.page-hero__bg {
  position: absolute;
  inset: 0;
}

@media (max-width: 991px) {
  .page-hero,
  .tour-banner {
    height: 420px;
  }
  .page-hero__title,
  .tour-banner__title {
    font-size: 36px;
    line-height: 44px;
  }
}
@media (max-width: 767px) {
  .page-hero,
  .tour-banner {
    height: 360px;
  }
  .page-hero__content,
  .tour-banner__content {
    bottom: 24px;
  }
  .page-hero__title,
  .tour-banner__title {
    font-size: 28px;
    line-height: 34px;
  }
}
.tour-top-destinations {
  padding: 40px 0;
  background: #fff;
}

.tour-top-destinations__head {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 40px;
}

.tour-top-destinations__icon {
  width: 40px;
  height: 40px;
  display: block;
  flex-shrink: 0;
}

.tour-top-destinations__title {
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.tour-top-destinations__grid {
  display: grid;
  grid-template-columns: repeat(5, 251.2px);
  gap: 16px;
  align-items: start;
}

.tour-dest-card {
  position: relative;
  display: block;
  width: 251.2px;
  height: 332px;
  border-radius: 8px;
  overflow: hidden;
  text-decoration: none;
  color: #fff;
}
.tour-dest-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(186.965deg, rgba(0, 0, 0, 0) 46.368%, rgba(0, 0, 0, 0.8) 96.036%);
  z-index: 1;
  pointer-events: none;
}
.tour-dest-card:hover .tour-dest-card__img {
  transform: scale(1.1);
}

.tour-dest-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: all 0.3s ease-in-out;
}

.tour-dest-card__content {
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 12px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  z-index: 2;
}

.tour-dest-card__name {
  font-family: "Regular", sans-serif !important;
  font-family: "Poppins", sans-serif;
  font-size: 20px;
  line-height: 28px;
  color: #fff;
}

.tour-dest-card__meta {
  font-family: "Medium", sans-serif;
  font-family: "Poppins", sans-serif;
  font-size: 14px;
  line-height: 22px;
  color: #f8ba16;
  text-decoration: underline;
}

.tour-dest-card:hover,
.tour-dest-card:focus {
  text-decoration: none;
}

@media (max-width: 1366px) {
  .tour-top-destinations__grid {
    grid-template-columns: repeat(5, 1fr);
  }
  .tour-dest-card {
    width: auto;
  }
}
@media (max-width: 991px) {
  .tour-top-destinations__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767px) {
  .tour-top-destinations__head {
    margin-bottom: 24px;
  }
  .tour-top-destinations__title {
    font-size: 24px;
    line-height: 32px;
  }
  .tour-top-destinations__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .tour-dest-card {
    height: 260px;
  }
}
.tour-featured {
  padding: 40px 0 60px;
  background: #fff;
}

.tour-featured__title {
  margin: 0 0 40px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 36px;
  line-height: 44px;
  text-transform: uppercase;
}

.tour-featured__group {
  margin-bottom: 40px;
}
.tour-featured__group:last-child {
  margin-bottom: 0;
}

.tour-featured__group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.tour-featured__group-title {
  margin: 0;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 28px;
  line-height: 36px;
}

.tour-featured__more {
  height: 40px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 24px;
  border: 1px solid #f8ba16;
  border-radius: 56px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  text-decoration: none;
}
.tour-featured__more:hover, .tour-featured__more:focus {
  text-decoration: none;
  opacity: 0.9;
}

.tour-featured__grid > [class*=col-] {
  margin-bottom: 16px;
}

@media (max-width: 767px) {
  .tour-featured__title {
    font-size: 28px;
    line-height: 34px;
    margin-bottom: 24px;
  }
  .tour-featured__group-title {
    font-size: 22px;
    line-height: 28px;
  }
  .tour-featured__more {
    height: 36px;
    padding: 6px 16px;
    font-size: 14px;
    line-height: 22px;
  }
}
.tour-explore {
  padding: 40px 0 60px;
  background: #fff;
}

.tour-explore__head {
  margin-bottom: 40px;
}

.tour-explore__title {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.tour-explore__selection {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.tour-explore__selection.has-selection .tour-explore__selection-label {
  display: inline;
}
.tour-explore__selection:not(.has-selection) .tour-explore__selection-label {
  display: none;
}

.tour-explore__chips {
  display: contents;
}

.tour-explore__selection-label {
  color: #002620;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-filter-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 32px;
  padding: 4px 16px;
  border: none;
  border-radius: 32px;
  background: #e6f4fe;
  color: #0652b0;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
  text-decoration: none;
  cursor: pointer;
}
.tour-filter-chip img {
  width: 16px;
  height: 16px;
  display: block;
  flex-shrink: 0;
}

.tour-explore__clear {
  padding: 4px 8px;
  border: none;
  background: transparent;
  color: #f8ba16;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-decoration: underline;
  cursor: pointer;
}
.tour-explore__clear[hidden] {
  display: none;
}

.tour-explore__layout {
  margin-left: -15px;
  margin-right: -15px;
}

.tour-explore__sidebar {
  margin-bottom: 24px;
}

.tour-explore__filters {
  border: 1px solid #e7e7e7;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.tour-explore__filters-title {
  margin: 0;
  padding: 8px 16px;
  border-bottom: 1px solid #e7e7e7;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 20px;
  line-height: 28px;
  text-transform: uppercase;
}

.tour-filter-block {
  padding: 16px;
  border-bottom: 1px solid #e7e7e7;
}
.tour-filter-block:last-child {
  border-bottom: 0;
}

.tour-filter-block__title {
  margin: 0 0 16px;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-filter__range {
  position: relative;
  height: 24px;
  margin-bottom: 8px;
}

.tour-filter__range-track {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 8px;
  border-radius: 8px;
  background: #fff1cc;
  pointer-events: none;
}

.tour-filter__range-fill {
  position: absolute;
  left: 0;
  width: 0;
  top: 50%;
  transform: translateY(-50%);
  height: 8px;
  border-radius: 8px;
  background: #f8ba16;
  pointer-events: none;
}

.tour-filter__range-input {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  width: 100%;
  height: 24px;
  margin: 0;
  padding: 0;
  background: transparent;
  pointer-events: none;
  -webkit-appearance: none;
  appearance: none;
}
.tour-filter__range-input::-webkit-slider-runnable-track {
  height: 8px;
  background: transparent;
  border: none;
}
.tour-filter__range-input::-webkit-slider-thumb {
  -webkit-appearance: none;
  pointer-events: all;
  width: 24px;
  height: 24px;
  margin-top: -8px;
  border-radius: 50%;
  background: #f8ba16;
  border: 1px solid #e2a914;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  cursor: grab;
}
.tour-filter__range-input:active::-webkit-slider-thumb {
  cursor: grabbing;
}
.tour-filter__range-input::-moz-range-track {
  height: 8px;
  background: transparent;
  border: none;
}
.tour-filter__range-input::-moz-range-thumb {
  pointer-events: all;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f8ba16;
  border: 1px solid #e2a914;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  cursor: grab;
}
.tour-filter__range-input:active::-moz-range-thumb {
  cursor: grabbing;
}
.tour-filter__range-input--min {
  z-index: 3;
}
.tour-filter__range-input--max {
  z-index: 4;
}

.tour-filter__range-labels {
  display: flex;
  justify-content: space-between;
  padding-bottom: 8px;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-filter__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tour-filter__check {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  cursor: pointer;
  font-weight: 400;
}
.tour-filter__check input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.tour-filter__box {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border: 1px solid #d8d8d8;
  border-radius: 2px;
  background: #fff;
  position: relative;
}
.tour-filter__box::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../assets/svg/filter-check.svg") center/10px no-repeat;
  opacity: 0;
}

.tour-filter__check input:checked + .tour-filter__box {
  background: #f8ba16;
  border-color: #f8ba16;
}
.tour-filter__check input:checked + .tour-filter__box::after {
  opacity: 1;
}

.tour-filter__label {
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-filter__more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 4px;
  color: #f8ba16;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-decoration: none;
}
.tour-filter__more img {
  width: 20px;
  height: 20px;
}

.tour-explore__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}

.tour-explore__count {
  margin: 0;
  color: #002620;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-explore__sort {
  display: flex;
  align-items: center;
  gap: 16px;
}

.tour-explore__sort-label {
  color: #002620;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-explore__sort-select {
  position: relative;
  min-width: 179px;
  height: 36px;
  border: 2px solid #fff1cc;
  border-radius: 32px;
}
.tour-explore__sort-select select {
  width: 100%;
  height: 100%;
  padding: 4px 36px 4px 16px;
  border: 1px solid #f8ba16;
  border-radius: 32px;
  background: #fff;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  appearance: none;
  outline: none;
}
.tour-explore__sort-select::after {
  content: "";
  position: absolute;
  right: 12px;
  top: 50%;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background: url("../assets/svg/sort-chevron.svg") center/contain no-repeat;
  pointer-events: none;
}

.tour-explore__grid > [class*=col-] {
  margin-bottom: 30px;
}

@media (max-width: 991px) {
  .tour-explore__sidebar {
    margin-bottom: 32px;
  }
}
.tour-info {
  padding: 0 0 64px;
  background: #fff;
}

.tour-info__inner {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.tour-about {
  padding: 32px;
  border: 0.5px solid #f8ba16;
  border-radius: 8px;
  background: linear-gradient(180deg, #fff5d6 0%, #fff 100%), #fff;
}

.tour-about__title {
  margin: 0 0 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 28px;
  line-height: 36px;
  text-transform: uppercase;
}

.tour-about__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.tour-about__body img {
  max-width: 100%;
  height: auto;
}

.tour-about__content {
  max-height: 72px;
  overflow: hidden;
  transition: max-height 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.tour-about__content > * + * {
  margin-top: 16px;
}

.tour-about.is-expanded .tour-about__content {
  max-height: none;
  overflow: visible;
}

.tour-about__intro {
  margin: 0;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-about__gallery {
  margin-left: -8px;
  margin-right: -8px;
}
.tour-about__gallery > [class*=col-] {
  padding-left: 8px;
  padding-right: 8px;
  margin-bottom: 16px;
}

.tour-about__figure {
  margin: 0;
  height: 256px;
  border-radius: 8px;
  overflow: hidden;
}
.tour-about__figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tour-about__destinations {
  color: #121212;
}
.tour-about__destinations h3 {
  margin: 0 0 16px;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}
.tour-about__destinations ul {
  margin: 0;
  padding-left: 24px;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-about__destinations ul li + li {
  margin-top: 0;
}

.tour-about__read-more {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 40px;
  padding: 8px 16px;
  border: 1px solid #e6f4fe;
  border-radius: 4px;
  background: #fff;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  cursor: pointer;
  transition: opacity 0.2s ease;
}
.tour-about__read-more:hover, .tour-about__read-more:focus {
  color: #1d2a5c;
  opacity: 0.85;
}
.tour-about__read-more[hidden] {
  display: none;
}

.tour-about.is-expanded .tour-about__read-more {
  display: none;
}

.tour-travel-faqs__title {
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 28px;
  line-height: 36px;
  text-transform: uppercase;
}

.tour-faqs {
  padding: 16px;
  border: 1px solid #dbdfe7;
  border-radius: 8px;
  background: #fff;
}

.tour-faqs-list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 0;
}
.tour-faqs-list.panel-group .panel {
  margin: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.tour-faqs-list .panel-collapse {
  border: 0;
}

.tour-faq-item:not(:first-child) {
  padding-top: 16px;
  border-top: 1px solid #dbdfe7;
}

.tour-faq-item__trigger {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
  cursor: pointer;
  outline: none;
}
.tour-faq-item__trigger:hover, .tour-faq-item__trigger:focus {
  outline: none;
}
.tour-faq-item__trigger.collapsed .tour-faq-item__toggle .tour-faq-item__icon--plus {
  display: block;
}
.tour-faq-item__trigger.collapsed .tour-faq-item__toggle .tour-faq-item__icon--minus {
  display: none;
}
.tour-faq-item__trigger:not(.collapsed) .tour-faq-item__toggle .tour-faq-item__icon--plus {
  display: none;
}
.tour-faq-item__trigger:not(.collapsed) .tour-faq-item__toggle .tour-faq-item__icon--minus {
  display: block;
}

.tour-faq-item__question {
  flex: 1;
  min-width: 0;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-faq-item__toggle {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f8f6f1;
}
.tour-faq-item__toggle .tour-faq-item__icon {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
}

.tour-faq-item__answer {
  margin: 16px 0 0;
  padding-right: 40px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

@media (max-width: 767px) {
  .tour-about {
    padding: 24px 16px;
  }
  .tour-about__title,
  .tour-travel-faqs__title {
    font-size: 24px;
    line-height: 32px;
  }
  .tour-about__figure {
    height: 200px;
  }
  .tour-faq-item__answer {
    padding-right: 0;
  }
}
.tour-guide {
  padding: 64px 0;
  background: #1d2a5c;
  overflow: hidden;
}

.tour-guide__head {
  max-width: 1000px;
  margin: 0 auto 40px;
  text-align: center;
}
.tour-guide__head h2 {
  margin: 0;
  color: #f8ba16;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.tour-guide__slider-wrap {
  margin-bottom: 40px;
  overflow: hidden;
}

.tour-guide__slider .owl-stage-outer {
  overflow: visible;
}

.guide-card {
  width: 420px;
  max-width: calc(100vw - 30px);
}

.guide-card__link {
  position: relative;
  display: block;
  height: 280px;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  text-decoration: none;
  color: #fff;
}
.guide-card__link::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(12, 18, 39, 0) 64.43%, rgba(12, 18, 39, 0.75) 85.36%);
  pointer-events: none;
}
.guide-card__link:hover, .guide-card__link:focus {
  text-decoration: none;
  color: #fff;
}
.guide-card__link:hover .guide-card__img, .guide-card__link:focus .guide-card__img {
  transform: scale(1.05);
}

.guide-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
}

.guide-card__badge {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  padding: 4px 12px;
  border-radius: 332px;
  background: rgba(255, 241, 204, 0.95);
  backdrop-filter: blur(16px);
  color: #f8ba16;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
}

.guide-card__content {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 16px;
}

.guide-card__meta {
  display: flex;
  align-items: center;
  gap: 8px;
}
.guide-card__meta img {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  display: block;
}
.guide-card__meta time {
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  color: #fff;
}

.guide-card__title {
  margin: 0;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
  color: #fff;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  -webkit-line-clamp: 2;
}

.tour-guide-dots-wrap {
  display: flex;
  justify-content: center;
  gap: 8px;
}
.tour-guide-dots-wrap .owl-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  line-height: 0;
}
.tour-guide-dots-wrap .owl-dot {
  width: 59px;
  height: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 16px;
  background: #d8d8d8;
  transition: width 0.3s ease, background 0.3s ease;
}
.tour-guide-dots-wrap .owl-dot span {
  display: none;
}
.tour-guide-dots-wrap .owl-dot.active {
  width: 95px;
  background: #868075;
}

@media (max-width: 767px) {
  .tour-guide {
    padding: 48px 0;
  }
  .tour-guide__head h2 {
    font-size: 24px;
    line-height: 32px;
  }
  .guide-card {
    width: 100%;
  }
  .guide-card__link {
    height: 240px;
  }
}
.page-hero--offers::before {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 57.2%, rgba(0, 0, 0, 0.7) 100%);
}

.offers-list {
  padding: 64px 0;
  background: #fff;
}

.offers-list__head {
  margin: 0 auto 40px;
  text-align: center;
}
.offers-list__head h2 {
  margin: 0 0 16px;
  color: #e8a700;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.offers-list__head p {
  margin: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.offers-list__grid {
  margin-left: -15px;
  margin-right: -15px;
}
.offers-list__grid > [class*=col-] {
  margin-bottom: 32px;
}

.news-card,
.offer-card {
  height: 100%;
  border: 1px solid #e8eaef;
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}

.color-gray {
  color: rgba(29, 42, 92, 0.7) !important;
}

.news-card__media,
.offer-card__media {
  overflow: hidden;
}
.news-card__media img,
.offer-card__media img {
  transition: all 0.6s ease-in-out;
}
.news-card__media:hover img,
.offer-card__media:hover img {
  transform: scale(1.1);
}

.news-card__media,
.offer-card__media {
  display: block;
  height: 286px;
}
.news-card__media img,
.offer-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.news-card__body,
.offer-card__body {
  padding: 16px;
}

.news-card__title,
.offer-card__title {
  margin: 0 0 8px;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}
.news-card__title a,
.offer-card__title a {
  color: #121212;
  text-decoration: none;
}

.news-card__desc,
.offer-card__desc {
  margin: 0 0 16px;
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  height: 48px;
  overflow: hidden;
}

.news-card__meta,
.offer-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.news-card__meta span,
.offer-card__meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: rgba(29, 42, 92, 0.7);
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}
.news-card__meta i,
.offer-card__meta i {
  color: #f8ba16;
}

@media (max-width: 991px) {
  .offers-hero {
    height: 420px;
  }
  .offers-hero__content h1 {
    font-size: 40px;
    line-height: 48px;
  }
}
@media (max-width: 767px) {
  .offers-hero {
    height: 360px;
  }
  .offers-hero__content {
    padding: 0 16px;
  }
  .offers-hero__content h1 {
    font-size: 32px;
    line-height: 40px;
  }
}
.offer-detail-page .page-hero__content {
  display: none;
}

.offer-detail {
  padding: 24px 0 64px;
  background: #fff;
}

.offer-detail__featured {
  padding: 24px 0;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 24px;
}

.offer-detail__content {
  max-width: 520px;
}
.offer-detail__content h2 {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.offer-detail__content > p {
  margin: 0 0 12px;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.offer-detail__benefits {
  margin-bottom: 16px;
}
.offer-detail__benefits li {
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.offer-detail__book-date {
  margin: 0 0 16px !important;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}

.offer-detail__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  padding: 4px 16px;
  border-radius: 24px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
  text-decoration: none;
}
.offer-detail__cta:hover {
  text-decoration: none;
}

.offer-detail__featured-image {
  display: block;
  border-radius: 8px;
  overflow: hidden;
}
.offer-detail__featured-image img {
  width: 100%;
  height: 320px;
  object-fit: cover;
  display: block;
}

.offer-detail__other {
  margin-bottom: 40px;
}

.offer-detail__slider {
  margin-bottom: 24px;
}

.offer-detail__slide .news-card {
  margin: 0;
}

.offer-detail__head {
  margin: 0 auto 24px;
  text-align: center;
}
.offer-detail__head h3 {
  margin: 0 0 8px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.offer-detail__head p {
  margin: 0;
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.offer-detail__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
}
.offer-detail__dots .owl-dot {
  width: 36px;
  height: 4px;
  border: 0;
  padding: 0;
  border-radius: 4px;
  background: #d8d8d8;
}
.offer-detail__dots .owl-dot span {
  display: none;
}
.offer-detail__dots .owl-dot.active {
  background: #8c8c8c;
}

.offer-detail__subscribe {
  padding: 90.227px 64px 89.773px 64px;
  border-radius: 8px;
  background: linear-gradient(0deg, rgba(12, 18, 39, 0.7), rgba(12, 18, 39, 0.7)), url("../assets/images/offers/offer-subscribe-bg.jpg") center/cover no-repeat;
}
.offer-detail__subscribe h3 {
  margin: 0 0 8px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.offer-detail__subscribe p {
  margin: 0 0 16px;
  color: rgba(255, 255, 255, 0.9);
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.offer-detail__subscribe-form {
  display: flex;
  align-items: center;
  max-width: 420px;
  height: 34px;
  border-radius: 44px;
  background: #fff;
  overflow: hidden;
}
.offer-detail__subscribe-form input {
  flex: 1;
  min-width: 0;
  border: 0;
  padding: 0 16px;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
  outline: none;
}
.offer-detail__subscribe-form button {
  width: 96px;
  height: 28px;
  border: 0;
  border-radius: 22px;
  margin-right: 3px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
}

.blog-page {
  background: #fff;
}

.blog-hero {
  padding: 70px 0 90px;
  background: radial-gradient(circle at 20% 20%, rgba(245, 166, 35, 0.12) 0%, rgba(245, 166, 35, 0) 40%), radial-gradient(circle at 80% 75%, rgba(1, 148, 243, 0.12) 0%, rgba(1, 148, 243, 0) 40%), linear-gradient(180deg, #fff 0%, #f5f6f8 100%);
}

.blog-hero__content {
  max-width: 940px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}

.blog-hero__badge {
  height: 40px;
  padding: 9px 16px;
  border-radius: 999px;
  background: #fff1cc;
  color: #684e09;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
}

.blog-hero__title {
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 48px;
  line-height: 56px;
  text-transform: uppercase;
}

.blog-hero__desc {
  margin: 0;
  max-width: 770px;
  color: #5a6b85;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.blog-hero__search {
  width: 100%;
  max-width: 540px;
  margin-top: 8px;
  padding: 7px;
  border: 1px solid #f0f0f0;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 12px 16px rgba(13, 28, 57, 0.1), 0 2px 4px rgba(13, 28, 57, 0.04);
  display: flex;
  align-items: center;
  gap: 8px;
}
.blog-hero__search i {
  color: #8c8c8c;
  font-size: 16px;
  margin-left: 10px;
}
.blog-hero__search input {
  flex: 1;
  min-width: 0;
  border: 0;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  outline: none;
}
.blog-hero__search button {
  width: 136px;
  height: 48px;
  border: 0;
  border-radius: 999px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  box-shadow: 0 4px 6px rgba(245, 166, 35, 0.4);
}

.blog-categories {
  padding: 16px 0;
  border-bottom: 1px solid #e7ebf2;
}

.blog-categories__list {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.blog-chip {
  height: 40px;
  padding: 10px 18px;
  border: 0;
  border-radius: 999px;
  background: #f0f0f0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
}
.blog-chip i {
  margin-right: 7px;
  font-size: 14px;
}
.blog-chip.is-active {
  background: #1d2a5c;
  color: #fff;
}

.blog-content {
  padding: 40px 0 64px;
}

.blog-content__title {
  margin: 0 0 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.blog-featured {
  display: flex;
  gap: 30px;
  margin-bottom: 40px;
}

.blog-featured__main,
.blog-featured__side-item {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  display: block;
}
.blog-featured__main > img,
.blog-featured__side-item > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.blog-featured__main::before,
.blog-featured__side-item::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(12, 18, 39, 0) 64.4%, rgba(12, 18, 39, 0.75) 85.4%);
}

.blog-featured__main {
  flex: 1;
  min-height: 510px;
}

.blog-featured__side {
  width: 420px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.blog-featured__side-item {
  height: 50%;
}

.blog-tag {
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
  height: 30px;
  padding: 4px 12px;
  border-radius: 332px;
  background: #fff1cc;
  color: #684e09;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
}

.blog-featured__overlay {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  padding: 16px;
}
.blog-featured__overlay p {
  margin: 0 0 4px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}
.blog-featured__overlay p i {
  margin-right: 8px;
  color: #f8ba16;
}
.blog-featured__overlay h3 {
  margin: 0;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}

.blog-featured__main .blog-featured__overlay {
  padding: 24px;
}
.blog-featured__main .blog-featured__overlay h3 {
  font-size: 36px;
  line-height: 44px;
}

.blog-grid {
  margin-left: -15px;
  margin-right: -15px;
}
.blog-grid > [class*=col-] {
  margin-bottom: 32px;
}

.news-card--blog {
  position: relative;
}

.news-card--blog .blog-tag {
  top: 12px;
  left: 12px;
}

.news-card--blog .news-card__desc {
  height: 48px;
  overflow: hidden;
}

.news-card--blog .news-card__meta .fa-eye {
  color: rgba(29, 42, 92, 0.7);
}

@media (max-width: 1199px) {
  .blog-featured {
    flex-direction: column;
  }
  .blog-featured__side {
    width: 100%;
    flex-direction: row;
  }
  .blog-featured__side-item {
    width: calc(50% - 15px);
  }
}
@media (max-width: 991px) {
  .blog-hero__title {
    font-size: 38px;
    line-height: 46px;
  }
  .blog-featured__main .blog-featured__overlay h3 {
    font-size: 28px;
    line-height: 36px;
  }
}
@media (max-width: 767px) {
  .blog-hero {
    padding: 48px 0 56px;
  }
  .blog-hero__title {
    font-size: 28px;
    line-height: 34px;
  }
  .blog-hero__search {
    flex-wrap: wrap;
  }
  .blog-hero__search button {
    width: 100%;
  }
  .blog-featured__main {
    min-height: 360px;
  }
  .blog-featured__side {
    flex-direction: column;
  }
  .blog-featured__side-item {
    width: 100%;
  }
  .blog-content__title {
    font-size: 28px;
    line-height: 34px;
  }
}
.blog-detail-hero {
  position: relative;
  min-height: 460px;
  overflow: hidden;
  background: #1d2a5c;
}

.blog-detail-hero__bg {
  position: absolute;
  inset: 0;
}
.blog-detail-hero__bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0.2;
  display: block;
}

.blog-detail-hero__content {
  position: relative;
  z-index: 2;
  min-height: 460px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 24px;
  text-align: center;
}
.blog-detail-hero__content h1 {
  margin: 0;
  max-width: 1320px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 48px;
  line-height: 56px;
  text-transform: uppercase;
}

.blog-detail-hero__breadcrumb {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  flex-wrap: wrap;
}
.blog-detail-hero__breadcrumb a,
.blog-detail-hero__breadcrumb span {
  color: #fff;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}
.blog-detail-hero__breadcrumb p {
  margin: 0;
  color: #f8ba16;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}

.blog-detail-hero__social {
  display: flex;
  align-items: center;
  gap: 16px;
}
.blog-detail-hero__social a {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.blog-detail-content {
  padding: 40px 0 56px;
  background: #f9fafb;
}

.blog-detail-article {
  max-width: 1000px;
  margin: 0 auto;
  color: #2a3b5b;
}
.blog-detail-article img {
  max-width: 100%;
  height: auto;
}

.blog-detail-share {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid rgba(216, 216, 216, 0.5);
  display: flex;
  align-items: center;
  gap: 16px;
}
.blog-detail-share span {
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.blog-detail-share a {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1);
  color: #1d2a5c;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.blog-detail-related {
  padding: 64px 0;
  background: #f1f3f8;
}

.blog-detail-related__title {
  margin: 0 0 40px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
  text-align: center;
}

.blog-detail-related__slider {
  margin-bottom: 24px;
}

.blog-detail-related__item .news-card {
  margin: 0;
}

.blog-detail-related__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
}
.blog-detail-related__dots .owl-dot {
  width: 59px;
  height: 8px;
  border: 0;
  padding: 0;
  border-radius: 16px;
  background: #d8d8d8;
}
.blog-detail-related__dots .owl-dot span {
  display: none;
}
.blog-detail-related__dots .owl-dot.active {
  width: 95px;
  background: #868075;
}

.policy-content {
  padding: 24px 0 64px;
  background: #fff;
}

.policy-content__breadcrumb {
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.policy-content__breadcrumb a,
.policy-content__breadcrumb span,
.policy-content__breadcrumb p {
  margin: 0;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.policy-content__layout {
  display: flex;
  align-items: flex-start;
  gap: 32px;
}

.policy-article {
  flex: 1;
  min-width: 0;
  padding-right: 32px;
  border-right: 1px solid #d8d8d8;
}

.policy-sidebar {
  width: 312px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.policy-sidebar a {
  display: block;
  padding: 10px 12px;
  background: #f5f5f5;
  border: 1px solid transparent;
  border-radius: 4px;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
}
.policy-sidebar .is-active {
  border-color: #f8ba16;
  color: #f8ba16;
}

@media (max-width: 991px) {
  .policy-content__layout {
    flex-direction: column;
  }
  .policy-article {
    padding-right: 0;
    border-right: 0;
  }
  .policy-sidebar {
    width: 100%;
  }
}
.page-hero--contact::before {
  background: linear-gradient(180deg, rgba(12, 18, 39, 0) 35%, rgba(12, 18, 39, 0.75) 100%);
}

.contact-section {
  padding: 28px 0 64px;
  background: #f5f5f5;
}

.contact-methods {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 20px;
}

.contact-method {
  padding: 16px 24px;
  border: 1px solid #e8eaeF;
  border-radius: 12px;
  background: #fff;
  text-align: center;
}
.contact-method h3 {
  margin: 0 0 8px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 18px;
  line-height: 26px;
}
.contact-method p {
  margin: 0;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.contact-method__icon {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  margin: 0 auto 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.contact-method__icon i {
  font-size: 24px;
}
.contact-method__icon--phone {
  background: #e6f4fe;
  color: #0652b0;
}
.contact-method__icon--mail {
  background: #ffe4e0;
  color: #ca341f;
}
.contact-method__icon--wa {
  background: #dff6ec;
  color: #14a55a;
}
.contact-method__icon--msg {
  background: #fff1cc;
  color: #684e09;
}

.contact-layout {
  margin-left: -7px;
  margin-right: -7px;
  display: flex;
  align-items: stretch;
}
.contact-layout > [class*=col-] {
  padding-left: 7px;
  padding-right: 7px;
}

.contact-form {
  width: 100%;
  padding: 40px;
  border: 1px solid #e8eaef;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 2px 4px rgba(6, 21, 86, 0.15);
}
.contact-form h2 {
  margin: 0 0 8px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 24px;
  line-height: 32px;
}
.contact-form > p {
  margin: 0 0 16px;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.contact-form label {
  margin: 0 0 6px;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  display: block;
}
.contact-form label span {
  color: #d51604;
}
.contact-form textarea {
  width: 100%;
  height: 96px;
  margin-bottom: 16px;
  padding: 10px 16px;
  border: 1px solid #d8d8d8;
  border-radius: 16px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  outline: none;
  resize: none;
}
.contact-form button {
  width: 100%;
  height: 48px;
  border: 0;
  border-radius: 12px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  box-shadow: 0 8px 10px rgba(245, 166, 35, 0.4);
}

.embed-map-contact {
  overflow: hidden;
  height: 212px;
}

.contact-form__agree {
  margin-bottom: 16px !important;
  padding: 8px 16px;
  border-radius: 8px;
  background: #e6f4fe;
  color: #1d2a5c !important;
  font-family: "Regular", sans-serif !important;
  font-weight: 400;
}
.contact-form__agree input {
  width: 16px;
  height: 16px;
  margin: 2px 0 0;
}
.contact-form__agree a {
  color: #0652b0;
  font-family: "Medium", sans-serif;
  text-decoration: none;
}

.contact-input {
  height: 44px;
  margin-bottom: 12px;
  padding: 10px 16px;
  border: 1px solid #d8d8d8;
  border-radius: 44px;
  background: #fff;
  display: flex;
  align-items: center;
  gap: 8px;
}
.contact-input input {
  flex: 1;
  min-width: 0;
  border: 0;
  padding: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  outline: none;
  background: transparent;
}

.contact-input__icon {
  color: rgba(29, 42, 92, 0.5);
  font-size: 18px;
}

.contact-input__dropdown {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f8f6df;
  color: #d7c99a;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.contact-input__flag {
  font-size: 18px;
  line-height: 1;
}

.contact-input__divider {
  width: 1px;
  height: 20px;
  background: #d8d8d8;
}

.contact-offices {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 12px;
  height: 100%;
}

.contact-office {
  flex: 1 1 calc(50% - 6px);
  border: 1px solid #e8eaef;
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 2px 4px 0 rgba(6, 21, 86, 0.15);
}
.contact-office img {
  width: 100%;
  height: 150px;
  object-fit: cover;
  display: block;
}
.contact-office h3 {
  margin: 0 0 4px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
}
.contact-office p {
  margin: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.contact-office__body {
  padding: 10px 24px;
  display: flex;
  align-items: center;
  gap: 16px;
}

.contact-office__content {
  flex: 1;
  min-width: 0;
}

.contact-office__icon {
  width: 24px !important;
  height: 24px !important;
  display: block;
  flex-shrink: 0;
}

@media (max-width: 991px) {
  .contact-methods {
    grid-template-columns: repeat(2, 1fr);
  }
  .contact-layout {
    margin-left: -15px;
    margin-right: -15px;
    display: block;
  }
  .contact-form {
    padding: 24px;
  }
}
.affiliate-page {
  background: #f5f6f8;
  font-family: "Inter", sans-serif;
  color: #1d2433;
}

.affiliate-layout {
  min-height: 100vh;
  padding-left: 0;
  padding-right: 0;
}
.affiliate-layout__row {
  margin-left: 0;
  margin-right: 0;
  display: flex;
  min-height: 100vh;
}

.affiliate-sidebar {
  flex: 0 0 72px;
  width: 72px;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  z-index: 1030;
  background: #1f2c3e;
  padding: 16px 12px 20px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  align-items: center;
  border-right: 1px solid #dbdfe7;
}
.affiliate-sidebar__menu-toggle {
  width: 48px;
  height: 48px;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.affiliate-sidebar__menu-toggle img {
  display: block;
  max-width: 24px;
  max-height: 24px;
  width: auto;
  height: auto;
}
.affiliate-sidebar__nav {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 48px;
}
.affiliate-sidebar__item {
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  text-decoration: none;
}
.affiliate-sidebar__item .sidebar-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 8px;
}
.affiliate-sidebar__item img {
  width: 24px;
  height: 24px;
  aspect-ratio: 1/1;
  object-fit: contain;
  opacity: 0.65;
}
.affiliate-sidebar__item.is-active {
  background: rgba(255, 255, 255, 0.1);
}
.affiliate-sidebar__item.is-active img {
  opacity: 0.95;
}
.affiliate-sidebar__badge {
  position: absolute;
  top: 4px;
  right: 0;
  min-width: 20px;
  height: 20px;
  border-radius: 50px;
  background: #3ca74d;
  color: #fff;
  font-size: 12px;
  line-height: 20px;
  text-align: center;
  padding: 0 4px;
  font-weight: 500;
  font-family: "Roboto", sans-serif;
}

.affiliate-main {
  flex: 1 1 auto;
  min-width: 0;
  margin-left: 72px;
  padding: 84px 24px 24px;
}

.affiliate-topbar {
  min-height: 68px;
  position: fixed;
  top: 0;
  left: 72px;
  right: 0;
  z-index: 1020;
  background: #fff;
  margin: 0;
  padding: 8px 12px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  border: 0;
  border-radius: 0;
  margin-bottom: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.affiliate-topbar__welcome {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 18px;
  line-height: 26px;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-topbar__wave {
  font-size: 22px;
  line-height: 1;
}
.affiliate-topbar__right {
  display: flex;
  align-items: center;
  gap: 16px;
}
.affiliate-topbar__meta {
  display: flex;
  align-items: center;
  gap: 16px;
}

.affiliate-user {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #1a1a1a;
}
.affiliate-user img {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  object-fit: cover;
}
.affiliate-user strong {
  display: block;
  font-size: 14px;
  line-height: 17px;
  font-weight: 600;
}
.affiliate-user .fa-angle-down {
  font-size: 12px;
  color: #1d2433;
}
.affiliate-user__content {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.affiliate-user span {
  display: block;
  font-size: 11px;
  font-weight: 400;
  color: #5d5b73;
}

.affiliate-notify-wrap {
  position: relative;
  flex-shrink: 0;
}
.affiliate-notify-wrap.is-open {
  z-index: 1035;
}
.affiliate-notify-wrap.is-open .affiliate-notify {
  border-color: #f8ba16;
  background: #fffbeb;
}

.affiliate-notify {
  width: 40px;
  height: 40px;
  border: 1px solid #909090;
  border-radius: 50%;
  background: #fff;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
}
.affiliate-notify i {
  width: 24px;
  height: 24px;
  font-size: 18px;
  line-height: 1;
  color: #1d2a5c;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.affiliate-notify__count {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 16px;
  height: 16px;
  padding: 0 4px;
  border-radius: 999px;
  background: #dc1f26;
  color: #fff;
  font-size: 10px;
  line-height: 16px;
  font-weight: 600;
  text-align: center;
}
.affiliate-notify__count:empty, .affiliate-notify__count[hidden] {
  display: none;
}

.affiliate-notify-panel {
  display: none;
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: 360px;
  max-width: calc(100vw - 32px);
  background: #fff;
  border: 1px solid #e7ebf2;
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(29, 36, 51, 0.12);
  overflow: hidden;
}
.affiliate-notify-panel.is-open {
  display: flex;
  flex-direction: column;
}
.affiliate-notify-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid #e7ebf2;
  background: #f9fafb;
}
.affiliate-notify-panel__head h2 {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-notify-panel__mark-read {
  border: 0;
  background: transparent;
  padding: 0;
  font-size: 13px;
  line-height: 20px;
  color: #0652b0;
  font-family: "Inter-Medium", sans-serif;
}
.affiliate-notify-panel__mark-read:hover {
  text-decoration: underline;
}
.affiliate-notify-panel__list {
  list-style: none;
  margin: 0;
  padding: 0;
  max-height: 320px;
  overflow-y: auto;
}
.affiliate-notify-panel__empty {
  padding: 32px 16px;
  text-align: center;
  font-size: 14px;
  line-height: 20px;
  color: #8b95a8;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-notify-panel__footer {
  display: block;
  padding: 12px 16px;
  border-top: 1px solid #e7ebf2;
  text-align: center;
  font-size: 14px;
  line-height: 20px;
  color: #0652b0;
  text-decoration: none;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-notify-panel__footer:hover {
  background: #f5f6f8;
  text-decoration: none;
  color: #0652b0;
}

.affiliate-notify-item {
  display: flex;
  gap: 12px;
  padding: 14px 16px;
  border-bottom: 1px solid #f0f2f5;
  text-decoration: none;
  color: inherit;
  transition: background 0.15s ease;
}
.affiliate-notify-item:last-child {
  border-bottom: 0;
}
.affiliate-notify-item:hover {
  background: #f9fafb;
  text-decoration: none;
  color: inherit;
}
.affiliate-notify-item.is-unread {
  background: #fffbeb;
}
.affiliate-notify-item.is-unread .affiliate-notify-item__dot {
  background: #f8ba16;
}
.affiliate-notify-item__icon {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: #f2f4f7;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1d2a5c;
  font-size: 16px;
}
.affiliate-notify-item__body {
  flex: 1 1 auto;
  min-width: 0;
}
.affiliate-notify-item__title {
  display: block;
  font-size: 14px;
  line-height: 20px;
  color: #1d2433;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-notify-item__text {
  display: block;
  margin-top: 2px;
  font-size: 13px;
  line-height: 18px;
  color: #555d6e;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-notify-item__time {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 16px;
  color: #8b95a8;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-notify-item__dot {
  flex-shrink: 0;
  width: 8px;
  height: 8px;
  margin-top: 6px;
  border-radius: 50%;
  background: transparent;
}

.affiliate-btn--primary {
  background: #e63a46;
  color: #fff;
  border-radius: 4px;
  border: 0;
  font-size: 14px;
  font-weight: 600;
  padding: 10px 16px;
}
.affiliate-btn--primary:hover, .affiliate-btn--primary:focus {
  color: #fff;
  background: #dc1f26;
}

.affiliate-btn--wallet {
  background: #f8ba16;
  color: #1d2a5c;
  border-radius: 4px;
  border: 0;
  font-size: 16px;
  font-family: "Inter-SemiBold", sans-serif;
  padding: 8px 16px;
  line-height: 24px;
}
.affiliate-btn--wallet:hover, .affiliate-btn--wallet:focus {
  color: #1d2a5c;
  background: #f2b006;
}

.affiliate-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}
.affiliate-toolbar h1 {
  margin: 0;
  color: #1d2a5c;
  font-size: 24px;
  font-weight: 700;
  line-height: 32px;
}

.affiliate-date-filter {
  display: flex;
  align-items: center;
  gap: 8px;
}
.affiliate-date-filter label {
  margin: 0;
  font-size: 14px;
  font-weight: 500;
}
.affiliate-date-filter__group {
  display: flex;
  align-items: center;
  border-radius: 8px;
  overflow: hidden;
  gap: 10px;
}
.affiliate-date-filter__item {
  width: 219px;
  height: 40px;
  background: #f5f6f8;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  display: flex;
  align-items: center;
  padding: 0 12px;
  margin: 0;
}
.affiliate-date-filter__item img {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}
.affiliate-date-filter .form-control {
  border: 0;
  background: transparent;
  border-radius: 0;
  height: 100%;
  width: 100%;
  padding: 0;
  font-size: 14px;
  color: #8c8c8c;
  box-shadow: none;
}
.affiliate-date-filter .form-control::placeholder {
  color: #8c8c8c;
}

.affiliate-hero {
  background: linear-gradient(90deg, #101d30 0%, #1d2a5c 100%);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  color: #fff;
  margin-bottom: 16px;
  margin-top: 0;
}
.affiliate-hero__left {
  max-width: 70%;
}
.affiliate-hero__left h2 {
  margin: 16px 0;
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
  white-space: nowrap;
}
.affiliate-hero__left p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.75);
  width: 546px;
}
.affiliate-hero__left strong {
  color: #f8ba16;
}
.affiliate-hero__card {
  border-radius: 16px;
  border: 0.5px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.1);
  padding: 8px 24px;
}
.affiliate-hero__card p {
  margin: 0 0 8px;
  font-size: 14px;
  line-height: 20px;
}
.affiliate-hero__card h3 {
  margin: 0 0 8px;
  color: #f8ba16;
  font-size: 32px;
  line-height: 40px;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-hero__card .is-up {
  color: #03b26b;
  display: flex;
  align-items: center;
  gap: 4px;
}
.affiliate-hero__card .is-up img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
.affiliate-hero__card .is-up span {
  color: #038b5c;
  font-size: 16px;
  line-height: 24px;
}
.affiliate-hero__card small {
  color: rgba(255, 255, 255, 0.75);
  font-size: 14px;
  line-height: 20px;
}

.affiliate-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 0.5px solid #f8ba16;
  background: rgba(248, 186, 22, 0.1);
  border-radius: 40px;
  color: #f8ba16;
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
  text-transform: uppercase;
  padding: 8px 16px;
}
.affiliate-tag img {
  width: 20px;
  height: 20px;
  object-fit: contain;
}

.affiliate-stat {
  background: #fff;
  border: 1px solid #e7ebf2;
  border-radius: 16px;
  margin-bottom: 16px;
  box-shadow: none;
}
.affiliate-stat .panel-body {
  padding: 16px 20px;
}
.affiliate-stat p {
  margin: 0 0 10px;
  font-size: 16px;
  line-height: 24px;
  color: #5d5b73;
}
.affiliate-stat h4 {
  margin: 0 0 10px;
  font-size: 34px;
  line-height: 42px;
  color: #1a1a1a;
  font-family: "Inter-Bold", sans-serif;
}
.affiliate-stat span {
  font-size: 16px;
  line-height: 24px;
  color: #8c8c8c;
}

.affiliate-kpis {
  display: flex;
  gap: 20px;
  margin-bottom: 16px;
}

.affiliate-kpi {
  flex: 1 1 0;
  min-width: 0;
  background: #fff;
  border-radius: 16px;
  padding: 16px 24px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
  overflow: hidden;
}
.affiliate-kpi__content {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.affiliate-kpi__title {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #2a3b5b;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-kpi__value {
  font-size: 26px;
  line-height: 34px;
  color: #121212;
  font-family: "Inter-Bold", sans-serif;
  white-space: nowrap;
}
.affiliate-kpi__value u {
  text-decoration: underline;
}
.affiliate-kpi__value-sub {
  font-size: 16px;
  line-height: 36px;
  color: #8c8c8c;
  font-weight: 400;
  margin-left: 2px;
}
.affiliate-kpi__meta {
  font-size: 16px;
  line-height: 24px;
  color: #595959;
  font-family: "Inter-Regular", sans-serif;
  white-space: nowrap;
}
.affiliate-kpi__icon {
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.affiliate-kpi__icon--click {
  background: rgba(6, 82, 176, 0.15);
  color: #0652b0;
}
.affiliate-kpi__icon--booking {
  background: #fff1cc;
  color: #f8ba16;
}
.affiliate-kpi__icon--revenue {
  background: #dff6ec;
  color: #038b5c;
}
.affiliate-kpi__icon--commission {
  background: #fff1cc;
  color: #f8ba16;
}
.affiliate-kpi--commission {
  background: linear-gradient(73deg, #b8202d 0%, #e53945 97%);
}
.affiliate-kpi--commission .affiliate-kpi__title {
  color: #fff;
  opacity: 0.7;
}
.affiliate-kpi--commission .affiliate-kpi__value {
  color: #f9d177;
}
.affiliate-kpi--commission .affiliate-kpi__meta {
  color: #fff;
  opacity: 0.7;
}

@media screen and (max-width: 1199px) {
  .affiliate-kpis {
    flex-wrap: wrap;
  }
  .affiliate-kpi {
    flex: 1 1 calc(50% - 10px);
  }
}
@media screen and (max-width: 767px) {
  .affiliate-kpi {
    flex: 1 1 100%;
  }
}
.affiliate-panel,
.affiliate-wallet {
  background: #fff;
  border: 1px solid #e7ebf2;
  border-radius: 16px;
  margin-bottom: 16px;
  box-shadow: none;
  overflow: hidden;
}
.affiliate-panel .panel-body,
.affiliate-wallet .panel-body {
  padding: 24px;
}

.affiliate-panel__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}
.affiliate-panel__head h3 {
  margin: 0;
  font-size: 28px;
  line-height: 36px;
  color: #1d2433;
  font-weight: 600;
}

.affiliate-btn {
  border: 1px solid #d7dce5;
  background: #fff;
  border-radius: 8px;
  padding: 8px 12px;
}

.affiliate-grid {
  display: flex;
  flex-wrap: wrap;
}
.affiliate-grid > [class*=col-] {
  float: none;
  display: flex;
}

.affiliate-grid .affiliate-referral,
.affiliate-grid .affiliate-wallet-card {
  flex: 1 1 auto;
  width: 100%;
}

.affiliate-wallet-card {
  height: 100%;
}

.affiliate-referral {
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  overflow: hidden;
}

.affiliate-referral__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.affiliate-referral__title {
  display: flex;
  align-items: center;
  gap: 8px;
  color: #1d2a5c;
}
.affiliate-referral__title i {
  font-size: 18px;
  color: #1d2a5c;
}
.affiliate-referral__title h3 {
  margin: 0;
  font-size: 20px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-referral__qr {
  height: 36px;
  border-radius: 8px;
  border: 0.5px solid #f8ba16;
  background: #fff1cc;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #1d2a5c;
  cursor: pointer;
}
.affiliate-referral__qr img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
.affiliate-referral__qr span {
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-referral__group {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.affiliate-referral__label {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #000;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-referral__row {
  display: flex;
  gap: 8px;
  align-items: center;
}

.affiliate-referral__input {
  flex: 1 1 auto;
  min-width: 0;
  height: 40px;
  border-radius: 8px;
  background: #f5f6f8;
  border: 1px solid #e7ebf2;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.affiliate-referral__input span {
  display: block;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.affiliate-referral__input--code span {
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-referral__chev {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  opacity: 0.75;
}

.affiliate-referral__copy {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  border: 0;
  background: #e63a46;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
}
.affiliate-referral__copy img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}

.affiliate-referral__steps {
  display: flex;
  gap: 16px;
}

.affiliate-referral-step {
  flex: 1 1 0;
  min-width: 0;
  background: #f5f6f8;
  border-radius: 8px;
  padding: 8px;
  display: flex;
  gap: 8px;
  align-items: flex-start;
}

.affiliate-referral-step__num {
  width: 28px;
  height: 28px;
  border-radius: 32px;
  background: #e63a46;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 28px;
}

.affiliate-referral-step__text {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.affiliate-referral-step__title {
  font-size: 14px;
  line-height: 20px;
  color: #000;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}

.affiliate-referral-step__desc {
  font-size: 14px;
  line-height: 20px;
  color: #595959;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-referral-step--strong .affiliate-referral-step__desc {
  color: #2a3b5b;
}

.affiliate-wallet-card {
  border-radius: 16px;
  border: 0.5px solid #f8ba16;
  background: linear-gradient(99deg, #fffffd 0%, #fff5ce 101.26%);
  padding: 24px;
  overflow: hidden;
  position: relative;
}

.affiliate-wallet-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.affiliate-wallet-card__label {
  font-size: 14px;
  line-height: 20px;
  text-transform: uppercase;
  color: #684e09;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-wallet-card__bank-name {
  margin-top: 8px;
  font-size: 18px;
  line-height: 26px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-wallet-card__edit {
  height: 36px;
  border-radius: 8px;
  border: 0;
  background: #1d2a5c;
  padding: 8px 12px;
  color: #f8ba16;
  font-size: 16px;
  font-family: "Inter-SemiBold", sans-serif;
  cursor: pointer;
  flex: 0 0 auto;
}

.affiliate-wallet-card__divider {
  height: 1px;
  background: rgba(248, 186, 22, 0.35);
  margin: 20px 0;
}

.affiliate-wallet-card__mid {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}

.affiliate-wallet-card__col {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.affiliate-wallet-card__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.affiliate-wallet-card__value {
  font-size: 18px;
  line-height: 26px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-wallet-card__copy {
  height: 32px;
  border-radius: 8px;
  border: 0.5px solid #f8ba16;
  background: #fff1cc;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  flex: 0 0 auto;
}
.affiliate-wallet-card__copy img {
  width: 16px;
  height: 16px;
  object-fit: contain;
  filter: brightness(0) saturate(100%) invert(27%) sepia(48%) saturate(727%) hue-rotate(9deg) brightness(93%) contrast(92%);
}
.affiliate-wallet-card__copy span {
  font-size: 14px;
  line-height: 20px;
  color: #684e09;
  font-family: "Inter-SemiBold", sans-serif;
  text-transform: none;
}

.affiliate-wallet-card__foot {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

@media screen and (max-width: 1199px) {
  .affiliate-referral__steps {
    flex-direction: column;
  }
}
@media screen and (max-width: 991px) {
  .affiliate-grid {
    display: block;
  }
  .affiliate-grid > [class*=col-] {
    display: block;
  }
  .affiliate-wallet-card__mid {
    flex-direction: column;
  }
}
.affiliate-page--bookings .affiliate-main {
  padding-bottom: 24px;
}

.affiliate-bookings-toolbar {
  margin-top: 8px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}
.affiliate-bookings-toolbar h1 {
  margin: 0;
  font-size: 36px;
  line-height: 44px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-bookings-toolbar__actions {
  display: flex;
  gap: 8px;
}

.affiliate-bookings-btn {
  height: 40px;
  border-radius: 8px;
  border: 0;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-bookings-btn--excel {
  background: #fff1cc;
  border: 1px solid #f8ba16;
  color: #1d2a5c;
}
.affiliate-bookings-btn--new {
  background: #f8ba16;
  color: #1d2a5c;
}

.affiliate-bookings-stats {
  margin-top: 12px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.affiliate-bookings-stat {
  background: #fff;
  border-radius: 10px;
  padding: 12px;
}
.affiliate-bookings-stat p {
  margin: 0;
  font-size: 14px;
  font-family: "Inter-SemiBold", sans-serif;
  color: #1d2a5c;
}
.affiliate-bookings-stat h3 {
  margin: 6px 0 4px;
  font-size: 36px;
  line-height: 44px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-bookings-stat h3.is-red {
  color: #e63a46;
}
.affiliate-bookings-stat span {
  font-size: 14px;
  color: #595959;
}
.affiliate-bookings-stat span b {
  color: #11a760;
}
.affiliate-bookings-stat span .is-red {
  color: #e63a46;
}
.affiliate-bookings-stat--highlight {
  border-left: 2px solid #f8ba16;
}

.affiliate-bookings-filters {
  margin-top: 10px;
  background: #fff;
  border-radius: 10px;
  padding: 8px;
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr 1fr 1fr auto;
  gap: 8px;
  align-items: center;
}

.affiliate-bookings-filter {
  height: 40px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #f5f6f8;
  padding: 10px 12px;
  font-size: 14px;
  color: #1d2a5c;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.affiliate-bookings-filter--search {
  color: #8c8c8c;
}

.affiliate-bookings-reset {
  border: 0;
  background: transparent;
  color: #e63a46;
  font-size: 14px;
}

.affiliate-bookings-table-card {
  margin-top: 8px;
  background: #fff;
  border-radius: 10px;
  overflow: hidden;
}

.affiliate-bookings-table-card__head {
  padding: 12px 16px;
  font-size: 24px;
  line-height: 32px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-bookings-table {
  margin: 0;
}
.affiliate-bookings-table thead th {
  background: #f5f6f8;
  font-size: 12px;
  color: #5d5b73;
  border-bottom: 0;
}
.affiliate-bookings-table tbody td {
  border-top: 1px solid #eef0f4;
  font-size: 12px;
  color: #1d2a5c;
  vertical-align: middle;
}
.affiliate-bookings-table .is-green {
  color: #11a760;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-bookings-table .is-red {
  color: #e63a46;
}

.dot-avatar {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 11px;
  margin-right: 8px;
}
.dot-avatar--orange {
  background: #f59e0b;
}
.dot-avatar--green {
  background: #059669;
}
.dot-avatar--red {
  background: #ef4444;
}

.affiliate-bookings-icon {
  width: 24px;
  height: 24px;
  border-radius: 6px;
  border: 0;
  background: #fff1cc;
  color: #684e09;
}
.affiliate-bookings-icon--edit {
  background: #dff6ec;
  color: #11a760;
}

.affiliate-bookings-pagination {
  padding: 10px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
  color: #595959;
}

.pagination-mini {
  display: inline-flex;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.pagination-mini li {
  list-style: none;
}
.pagination-mini button {
  border: 1px solid #e5e7eb;
  background: #fff;
  border-radius: 4px;
  min-width: 24px;
  height: 24px;
  font-size: 12px;
  line-height: 1;
  color: #595959;
  font-family: "Inter-Regular", sans-serif;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.pagination-mini button.is-active {
  background: #1d2a5c;
  color: #fff;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-field {
  margin-bottom: 12px;
}
.affiliate-field label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  color: #5d5b73;
}

.affiliate-copy {
  width: 100%;
}
.affiliate-copy .form-control {
  height: 40px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  padding: 0 12px;
  box-shadow: none;
}
.affiliate-copy .btn {
  height: 40px;
}
.affiliate-copy .input-group-btn:last-child > .btn {
  margin-left: 8px;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.affiliate-steps {
  margin-top: 8px;
}
.affiliate-steps .col-sm-4 {
  padding-left: 8px;
  padding-right: 8px;
}
.affiliate-steps div {
  flex: 1;
  background: #f8fafc;
  border-radius: 10px;
  padding: 10px;
}
.affiliate-steps b {
  display: inline-flex;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  background: #1d2a5c;
  color: #fff;
  margin-bottom: 6px;
}
.affiliate-steps p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
}

.affiliate-wallet h3 {
  margin: 8px 0 0;
  font-size: 26px;
  line-height: 34px;
  color: #1d2433;
  font-weight: 600;
}
.affiliate-wallet hr {
  border-top: 1px solid #e7ebf2;
  margin: 16px 0;
}
.affiliate-wallet__row {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}
.affiliate-wallet__row span {
  color: #5d5b73;
  font-size: 14px;
}
.affiliate-wallet__row strong {
  color: #1a1a1a;
  font-size: 16px;
}

.affiliate-booking .table {
  margin-bottom: 0;
}
.affiliate-booking .table thead th {
  border-bottom: 1px solid #e7ebf2;
  color: #5d5b73;
  font-size: 13px;
  font-weight: 600;
}
.affiliate-booking .table tbody td {
  border-top: 1px solid #f1f3f7;
  font-size: 14px;
  vertical-align: middle;
}
.affiliate-booking .badge {
  background: #e8f7ee;
  color: #038b5c;
  font-size: 12px;
  font-weight: 600;
  border-radius: 999px;
  padding: 6px 10px;
}

@media screen and (max-width: 1199px) {
  .affiliate-hero {
    flex-direction: column;
    gap: 16px;
  }
  .affiliate-hero__left {
    max-width: 100%;
  }
  .affiliate-hero__card {
    width: 100%;
  }
  .affiliate-date-filter {
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  .affiliate-date-filter__group {
    width: 100%;
  }
  .affiliate-date-filter__item {
    width: 50%;
  }
}
@media screen and (max-width: 991px) {
  .affiliate-sidebar {
    display: none;
  }
  .affiliate-main {
    width: 100%;
    flex: 1 1 100%;
    margin-left: 0;
  }
  .affiliate-topbar {
    left: 0;
  }
  .affiliate-toolbar {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  .affiliate-panel__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .affiliate-steps .col-sm-4 {
    width: 100%;
    margin-bottom: 8px;
  }
}
.affiliate-page--profile {
  background: #f1f2f6;
}
.affiliate-page--profile .affiliate-main,
.affiliate-page--profile .provider-main {
  padding-bottom: 24px;
}

.affiliate-toolbar--profile h1 {
  font-size: 24px;
  font-family: "Inter-SemiBold", sans-serif;
  line-height: 32px;
}

.affiliate-toolbar--profile-actions .affiliate-profile-action__actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.affiliate-profile {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  padding-bottom: 20px;
}
.affiliate-profile__side {
  flex: 0 0 400px;
  max-width: 400px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.affiliate-profile__main {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.affiliate-booking-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  margin-top: 16px;
}

.affiliate-booking-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 24px;
}
.affiliate-booking-card__head h3 {
  margin: 0;
  font-size: 20px;
  line-height: 32px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 auto;
}

.affiliate-booking-filters {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 1;
  min-width: 0;
}

.affiliate-booking-filter {
  height: 40px;
  border-radius: 8px;
  background: #f5f6f8;
  border: 1px solid #e7ebf2;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  color: #121212;
  min-width: 0;
}
.affiliate-booking-filter span {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.affiliate-booking-filter img {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  opacity: 0.8;
}
.affiliate-booking-filter--search {
  width: 400px;
}
.affiliate-booking-filter--search span {
  color: #595959;
}

.affiliate-booking-excel {
  height: 40px;
  border-radius: 8px;
  border: 0;
  background: #f8ba16;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  flex: 0 0 auto;
}
.affiliate-booking-excel i {
  font-size: 16px;
  color: #1d2a5c;
}
.affiliate-booking-excel span {
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-filter-field {
  height: 40px;
  border-radius: 8px;
  background: #f5f6f8;
  border: 1px solid #e7ebf2;
  padding: 0 12px;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 0;
  min-width: 0;
  cursor: text;
}
.affiliate-filter-field input,
.affiliate-filter-field select {
  flex: 1;
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent;
  box-shadow: none;
  height: 38px;
  padding: 0;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-filter-field input:focus,
.affiliate-filter-field select:focus {
  outline: none;
}
.affiliate-filter-field input::placeholder,
.affiliate-filter-field select::placeholder {
  color: #595959;
}
.affiliate-filter-field select {
  appearance: none;
  cursor: pointer;
  padding-right: 4px;
}
.affiliate-filter-field--search i {
  font-size: 16px;
  color: #595959;
  flex: 0 0 16px;
}
.affiliate-filter-field--select {
  position: relative;
  cursor: pointer;
}
.affiliate-filter-field__chevron {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  opacity: 0.8;
  pointer-events: none;
}

.affiliate-payment-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}

.affiliate-payment-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 24px;
}
.affiliate-payment-card__head h3 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 auto;
}

.affiliate-payment-filters {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 1;
  min-width: 0;
  max-width: 824px;
}

.affiliate-deposit-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}

.affiliate-deposit-card__head {
  display: flex;
  align-items: center;
  gap: 32px;
  padding: 16px 24px;
}
.affiliate-deposit-card__head h3 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 auto;
}

.affiliate-deposit-filters {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 1;
  min-width: 0;
}

.affiliate-deposit-balance {
  font-family: "Inter-SemiBold", sans-serif;
  color: #0652b0;
}

.affiliate-deposit-table .affiliate-badge {
  font-size: 14px;
  line-height: 20px;
  padding: 4px 8px;
  border-radius: 24px;
}
.affiliate-deposit-table .affiliate-badge i {
  font-size: 14px;
}

.affiliate-staff-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}

.affiliate-staff-card__head {
  display: flex;
  align-items: center;
  gap: 32px;
  padding: 16px 24px;
}
.affiliate-staff-card__head h3 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 auto;
}

.affiliate-staff-filters {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex: 1;
  min-width: 0;
}

.affiliate-staff-add {
  height: 40px;
  border-radius: 8px;
  border: 0;
  background: #f8ba16;
  padding: 8px 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  flex: 0 0 auto;
}
.affiliate-staff-add i {
  font-size: 16px;
  color: #1d2a5c;
}
.affiliate-staff-add span {
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}

.affiliate-staff-member {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.affiliate-staff-member strong {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}

.affiliate-staff-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  line-height: 1;
  color: #fff;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 40px;
}
.affiliate-staff-avatar--orange {
  background: #f5a623;
}
.affiliate-staff-avatar--green {
  background: #1ba672;
}
.affiliate-staff-avatar--red {
  background: #e63a46;
}
.affiliate-staff-avatar--blue {
  background: #0194f3;
}
.affiliate-staff-avatar--purple {
  background: #8b5df3;
}
.affiliate-staff-avatar--navy {
  background: #2a3b5b;
}
.affiliate-staff-avatar--teal {
  background: #038b5c;
}

.affiliate-staff-actions {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.affiliate-staff-action {
  width: 28px;
  height: 28px;
  border-radius: 4px;
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.affiliate-staff-action i {
  font-size: 14px;
}
.affiliate-staff-action--view {
  background: #fff1cc;
  color: #684e09;
}
.affiliate-staff-action--edit {
  background: #dff6ec;
  color: #038b5c;
}

.affiliate-staff-table .affiliate-badge {
  font-size: 14px;
  line-height: 20px;
  padding: 4px 8px;
  border-radius: 24px;
  white-space: nowrap;
}
.affiliate-staff-table .affiliate-badge--locked {
  background: #ffe4e0;
  color: #e63a46;
}
.affiliate-staff-table .affiliate-badge--active {
  background: #dff6ec;
  color: #038b5c;
}

.affiliate-payment-table-wrap {
  overflow-x: auto;
}

.affiliate-payment-table {
  margin: 0;
  border-collapse: collapse;
  width: 100%;
}
.affiliate-payment-table thead th {
  background: #f2f4f7;
  border-bottom: 0.5px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  padding: 12px 16px;
  font-size: 14px;
  line-height: 20px;
  color: #2a3b5b;
  text-transform: uppercase;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
  font-weight: 600;
  vertical-align: middle;
}
.affiliate-payment-table thead th:last-child {
  border-right: 0;
}
.affiliate-payment-table thead th.is-center {
  text-align: center;
}
.affiliate-payment-table thead th.is-right {
  text-align: right;
}
.affiliate-payment-table tbody td {
  border-bottom: 1px solid #dbdfe7;
  padding: 10px 16px;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  vertical-align: middle;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-payment-table tbody td.is-center {
  text-align: center;
}
.affiliate-payment-table tbody td.is-right {
  text-align: right;
}
.affiliate-payment-table tbody td.is-debit {
  color: #e63a46;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}
.affiliate-payment-table tbody td.is-credit {
  color: #038b5c;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}
.affiliate-payment-table tbody td.is-note {
  color: #8c8c8c;
  max-width: 320px;
}
.affiliate-payment-table tbody tr.is-alt td {
  background: #fafbfc;
}

.affiliate-payment-code,
.affiliate-payment-balance {
  font-family: "Inter-SemiBold", sans-serif;
  color: #121212;
}

.affiliate-payment-date {
  display: block;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-payment-time {
  display: block;
  margin-top: 4px;
  color: #8c8c8c;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-payment-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 24px;
  min-height: 56px;
}
.affiliate-payment-pagination > span {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}

@media screen and (max-width: 1199px) {
  .affiliate-payment-card__head,
  .affiliate-deposit-card__head,
  .affiliate-staff-card__head {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .affiliate-payment-filters,
  .affiliate-deposit-filters,
  .affiliate-staff-filters {
    width: 100%;
    max-width: none;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .affiliate-payment-filters .affiliate-filter-field,
  .affiliate-deposit-filters .affiliate-filter-field,
  .affiliate-staff-filters .affiliate-filter-field {
    flex: 1 1 calc(50% - 4px);
    min-width: 140px;
  }
  .affiliate-staff-add {
    width: 100%;
  }
  .affiliate-payment-pagination {
    flex-direction: column;
    align-items: flex-start;
  }
}
.affiliate-booking-code {
  font-family: "Inter-SemiBold", sans-serif;
  color: #121212;
}

.affiliate-booking-tour strong {
  display: block;
  font-size: 12px;
  line-height: 16px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-booking-tour span {
  display: block;
  font-size: 12px;
  line-height: 16px;
  color: #595959;
  font-family: "Inter-Regular", sans-serif;
  margin-top: 2px;
}

.affiliate-booking-customer {
  display: flex;
  align-items: center;
  gap: 10px;
}

.affiliate-booking-avatar {
  width: 28px;
  height: 28px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  color: #fff;
  font-family: "Inter-SemiBold", sans-serif;
  flex: 0 0 28px;
}
.affiliate-booking-avatar--orange {
  background: #f59e0b;
}
.affiliate-booking-avatar--green {
  background: #059669;
}
.affiliate-booking-avatar--red {
  background: #ef4444;
}
.affiliate-booking-avatar--blue {
  background: #2563eb;
}

.affiliate-booking-customer__info {
  min-width: 0;
}
.affiliate-booking-customer__info strong {
  display: block;
  font-size: 12px;
  line-height: 16px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 240px;
}

.affiliate-booking-customer__phone {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 3px;
  color: #2a3b5b;
}
.affiliate-booking-customer__phone i {
  font-size: 11px;
  color: #2a3b5b;
  opacity: 0.8;
}
.affiliate-booking-customer__phone span {
  font-size: 12px;
  line-height: 16px;
  color: #2a3b5b;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-booking-commission {
  color: #16a34a;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}

.affiliate-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 10px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}
.affiliate-badge i {
  font-size: 11px;
}
.affiliate-badge--wait {
  background: #fff1cc;
  color: #684e09;
}
.affiliate-badge--reject {
  background: #ffe5e5;
  color: #e63a46;
}
.affiliate-badge--success {
  background: #dff6ec;
  color: #038b5c;
}

.affiliate-booking-action {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  border: 0;
  background: #fff1cc;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.affiliate-booking-action i {
  font-size: 14px;
  color: #684e09;
}

@media screen and (max-width: 1199px) {
  .affiliate-booking-card__head {
    flex-direction: column;
    align-items: flex-start;
  }
  .affiliate-booking-filters {
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .affiliate-booking-filter--search {
    width: 100%;
  }
}
.affiliate-profile-card {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
}
.affiliate-profile-card__header {
  height: 80px;
  background: linear-gradient(141deg, #0a1f3d 0%, #1a3358 100%);
  position: relative;
  border-radius: 14px 14px 0 0;
}
.affiliate-profile-card__header::after {
  content: "";
  position: absolute;
  top: -20px;
  right: -20px;
  width: 80px;
  height: 80px;
  border-radius: 40px;
  background: rgba(245, 184, 47, 0.1);
}
.affiliate-profile-card__avatar-wrap {
  position: relative;
  width: 110px;
  margin: -56px auto 0;
}
.affiliate-profile-card__avatar {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  border: 4px solid #fff;
  box-shadow: 0 4px 6px rgba(10, 31, 61, 0.15);
  background: linear-gradient(135deg, #f5b82f 0%, #d97706 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  line-height: 1;
  font-weight: 600;
  color: #0a1f3d;
}
.affiliate-profile-card__status {
  position: absolute;
  right: 4px;
  bottom: 4px;
  width: 32px;
  height: 32px;
  border-radius: 16px;
  border: 3px solid #fff;
  background: #f5b82f;
}
.affiliate-profile-card__body {
  padding: 12px 20px 20px;
  text-align: center;
}
.affiliate-profile-card__name {
  margin: 0 0 8px;
  font-size: 17px;
  line-height: 25.5px;
  font-weight: 600;
  color: #0a1f3d;
}
.affiliate-profile-card__meta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-bottom: 12px;
  font-size: 14px;
  line-height: 20px;
  color: #888;
}
.affiliate-profile-card__commission {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 18px 6px 14px;
  border-radius: 999px;
  background: linear-gradient(to right, #f5b82f, #d97706);
  box-shadow: 0 2px 3px rgba(245, 184, 47, 0.3);
  color: #fff;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  margin-bottom: 16px;
}
.affiliate-profile-card__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid #f1f2f4;
  padding-top: 17px;
  gap: 0;
}
.affiliate-profile-card__stats > div:not(:last-child) {
  border-right: 1px solid #f1f2f4;
}
.affiliate-profile-card__stats > div strong {
  display: block;
  font-size: 18px;
  line-height: 26px;
  font-weight: 600;
  color: #0c1227;
}
.affiliate-profile-card__stats > div span {
  display: block;
  font-size: 14px;
  line-height: 20px;
  color: #888;
}

.affiliate-profile-contact {
  background: #fff;
  border-radius: 14px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.affiliate-profile-contact__row {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 20px;
  color: #434343;
  font-family: "Roboto", sans-serif;
}
.affiliate-profile-contact__row i {
  width: 16px;
  text-align: center;
  color: #434343;
  font-size: 14px;
}

.affiliate-profile-tabs.nav-tabs {
  background: #fff;
  border: 0;
  border-bottom: 1px solid #dbdfe7;
  border-radius: 16px 16px 0 0;
  margin-bottom: 0;
}
.affiliate-profile-tabs.nav-tabs > li {
  margin-bottom: -1px;
}
.affiliate-profile-tabs.nav-tabs > li > a {
  margin-right: 0;
  border: 0;
  border-radius: 0;
  padding: 16px 24px;
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
  color: #121212;
  background: transparent;
}
.affiliate-profile-tabs.nav-tabs > li > a:hover, .affiliate-profile-tabs.nav-tabs > li > a:focus {
  border: 0;
  background: transparent;
  color: #0652b0;
  outline: none;
}
.affiliate-profile-tabs.nav-tabs > li.active > a, .affiliate-profile-tabs.nav-tabs > li.active > a:hover, .affiliate-profile-tabs.nav-tabs > li.active > a:focus {
  border: 0;
  border-bottom: 2px solid #0652b0;
  color: #0652b0;
  background: transparent;
}

.affiliate-profile-tab-content {
  padding-bottom: 20px;
}
.affiliate-profile-tab-content > .tab-pane {
  display: none;
}
.affiliate-profile-tab-content > .tab-pane.active {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.affiliate-profile-tab-content .affiliate-profile-panel,
.affiliate-profile-tab-content .affiliate-payment-card {
  margin-bottom: 0;
}

.affiliate-profile-empty {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #888;
}

.affiliate-profile-panel {
  background: #fff;
  border-radius: 14px;
  padding: 16px 24px 22px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 16px;
}
.affiliate-profile-panel__head {
  padding-bottom: 18px;
  border-bottom: 1px solid #f1f2f4;
}
.affiliate-profile-panel__head h2 {
  margin: 0 0 3px;
  font-size: 15px;
  line-height: 22.5px;
  font-weight: 600;
  color: #0a1f3d;
}
.affiliate-profile-panel__head p {
  margin: 0;
  font-size: 12px;
  line-height: 18px;
  color: #888;
}
.affiliate-profile-panel__head-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding-bottom: 17px;
  border-bottom: 1px solid #f1f2f4;
}
.affiliate-profile-panel__head-row h2 {
  margin: 0 0 3px;
  font-size: 15px;
  line-height: 22.5px;
  font-family: "Inter-SemiBold", sans-serif;
  color: #0a1f3d;
}
.affiliate-profile-panel__head-row p {
  margin: 0;
  font-size: 12px;
  line-height: 18px;
  color: #888;
}
.affiliate-profile-panel--kol {
  gap: 18px;
  padding: 22px 24px;
  margin-bottom: 0;
}

.affiliate-field {
  margin-bottom: 0;
}
.affiliate-field__label {
  display: block;
  margin-bottom: 6px;
  font-size: 12px;
  line-height: 18px;
  font-weight: 500;
  color: #6b7280;
}
.affiliate-field__req {
  color: #dc2626;
}
.affiliate-field__input,
.affiliate-field select.affiliate-field__input {
  width: 100%;
  height: auto;
  min-height: 40px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f5f6f8;
  padding: 11px 15px;
  font-size: 14px;
  line-height: 17px;
  color: #1a1a1a;
  box-shadow: none;
}
.affiliate-field__input:focus,
.affiliate-field select.affiliate-field__input:focus {
  outline: none;
  border-color: #0652b0;
}
.affiliate-field__hint {
  display: block;
  margin-top: 5px;
  font-size: 11px;
  line-height: 16.5px;
  color: #888;
}
.affiliate-field__hint--success {
  color: #3ca74d;
}
.affiliate-field--hint {
  margin-bottom: 4px;
}

.affiliate-profile-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.affiliate-profile-grid--3 {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.affiliate-profile-channels {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.affiliate-channel {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: #f9fafb;
}
.affiliate-channel__icon {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}
.affiliate-channel__icon--facebook {
  background: rgba(24, 119, 242, 0.1);
  color: #1877f2;
}
.affiliate-channel__icon--tiktok {
  background: rgba(0, 0, 0, 0.08);
  color: #121212;
}
.affiliate-channel__icon--instagram {
  background: rgba(225, 48, 108, 0.1);
  color: #e1306c;
}
.affiliate-channel__icon--youtube {
  background: rgba(255, 0, 0, 0.08);
  color: #ff0000;
}
.affiliate-channel__info {
  flex: 1;
  min-width: 0;
}
.affiliate-channel__info strong {
  display: block;
  font-size: 13px;
  line-height: 19.5px;
  font-weight: 600;
  color: #0a1f3d;
}
.affiliate-channel__info span {
  display: block;
  font-size: 11px;
  line-height: 16.5px;
  color: #888;
}
.affiliate-channel__info p {
  margin: 0;
  font-size: 13px;
  line-height: 19.5px;
  color: #888;
}
.affiliate-channel__link {
  flex: 0 0 auto;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fff;
  padding: 6px 13px;
  font-size: 11px;
  line-height: 1;
  font-weight: 500;
  color: #0a1f3d;
  cursor: pointer;
}
.affiliate-channel__link:hover, .affiliate-channel__link:focus {
  background: #f5f6f8;
  outline: none;
}
.affiliate-channel--unlinked .affiliate-channel__info p {
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-btn--outline {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  color: #555;
  font-size: 13px;
  font-weight: 500;
  padding: 11px 19px 11px 25px;
  line-height: 1;
}
.affiliate-btn--outline:hover, .affiliate-btn--outline:focus {
  background: #f5f6f8;
  color: #555;
  outline: none;
}

.affiliate-btn--save {
  border: 1px solid #f8ba16;
  border-radius: 4px;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 16px;
  font-weight: 600;
  padding: 8px 12px;
  line-height: 24px;
}
.affiliate-btn--save:hover, .affiliate-btn--save:focus {
  background: #e5ab14;
  border-color: #e5ab14;
  color: #1d2a5c;
  outline: none;
}

.affiliate-btn--cancel {
  border: 1px solid #f8ba16;
  border-radius: 4px;
  background: #fff1cc;
  color: #1d2a5c;
  font-size: 16px;
  font-weight: 600;
  padding: 8px 12px;
  line-height: 24px;
}
.affiliate-btn--cancel:hover, .affiliate-btn--cancel:focus {
  background: #ffeab0;
  color: #1d2a5c;
  outline: none;
}

.affiliate-profile-action {
  position: sticky;
  bottom: 0;
  z-index: 1010;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 22px;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 -2px 6px rgba(10, 31, 61, 0.06);
  width: 100%;
}
.affiliate-profile-action p {
  margin: 0;
  font-size: 13px;
  line-height: 19.5px;
  color: #6b7280;
}
.affiliate-profile-action__actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

@media screen and (max-width: 1199px) {
  .affiliate-profile {
    flex-direction: column;
  }
  .affiliate-profile__side {
    flex: 1 1 auto;
    max-width: 100%;
    width: 100%;
  }
  .affiliate-profile-grid--3 {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 767px) {
  .affiliate-profile-grid {
    grid-template-columns: 1fr;
  }
  .affiliate-profile-tabs.nav-tabs {
    overflow-x: auto;
    white-space: nowrap;
    display: block;
  }
  .affiliate-profile-tabs.nav-tabs > li {
    display: inline-block;
    float: none;
  }
  .affiliate-profile-tabs.nav-tabs > li > a {
    white-space: nowrap;
    padding-left: 16px;
    padding-right: 16px;
  }
  .affiliate-profile-action {
    flex-direction: column;
    align-items: stretch;
  }
  .affiliate-profile-action__actions {
    width: 100%;
  }
  .affiliate-profile-action__actions .affiliate-btn--cancel,
  .affiliate-profile-action__actions .affiliate-btn--save {
    flex: 1;
  }
  .affiliate-toolbar--profile-actions .affiliate-profile-action__actions {
    width: 100%;
  }
  .affiliate-toolbar--profile-actions .affiliate-profile-action__actions .affiliate-btn--cancel,
  .affiliate-toolbar--profile-actions .affiliate-profile-action__actions .affiliate-btn--save {
    flex: 1;
  }
}
.provider-cover-upload__input,
.provider-create-tour-album__input {
  display: none !important;
}

.provider-itinerary__days {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.affiliate-deposit-modal.in {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
}
.affiliate-deposit-modal .modal-dialog {
  width: 100%;
  max-width: 764px;
  margin: 0 auto;
}
.affiliate-deposit-modal .modal-content {
  border: 0;
  border-radius: 16px;
  box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
  overflow: hidden;
}
.affiliate-deposit-modal .modal-header,
.affiliate-deposit-modal .modal-body,
.affiliate-deposit-modal .modal-footer {
  border: 0;
  background: #fff;
}
.affiliate-deposit-modal .modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 32px 32px 0;
  border-bottom: 1px solid #f1f2f4;
  margin-bottom: 24px;
  padding-bottom: 18px;
}
.affiliate-deposit-modal .modal-body {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding: 0 32px;
  max-height: calc(100vh - 220px);
  overflow-y: auto;
}
.affiliate-deposit-modal .modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 24px 32px 32px;
  margin-top: 0;
  text-align: left;
}

.affiliate-deposit-modal__head {
  flex: 1;
  min-width: 0;
}
.affiliate-deposit-modal__head h4 {
  margin: 0 0 8px;
  color: #0a1f3d;
  font-size: 24px;
  line-height: 32px;
  font-family: "Inter-Bold", sans-serif;
}
.affiliate-deposit-modal__head p {
  margin: 0;
  color: #2a3b5b;
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-deposit-modal__close {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 4px;
  background: rgba(0, 127, 218, 0.05);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0;
  cursor: pointer;
}
.affiliate-deposit-modal__close i {
  font-size: 16px;
  color: #2a3b5b;
}

.affiliate-deposit-modal__methods {
  display: flex;
  gap: 20px;
}

.affiliate-deposit-method {
  flex: 1;
  min-width: 0;
  border: 1px solid #dbdfe7;
  border-radius: 8px;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: pointer;
  background: #fff;
}
.affiliate-deposit-method.is-active {
  border: 2px solid #f8ba16;
  background: #fff1cc;
}
.affiliate-deposit-method input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.affiliate-deposit-method__main {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}
.affiliate-deposit-method__icon {
  width: 56px;
  height: 56px;
  border-radius: 8px;
  background: #f2f9fd;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.affiliate-deposit-method__icon img {
  width: 30px;
  height: 30px;
  object-fit: contain;
}
.affiliate-deposit-method__text {
  min-width: 0;
}
.affiliate-deposit-method__text strong {
  display: block;
  font-size: 18px;
  line-height: 26px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-deposit-method__text span {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  line-height: 20px;
  color: #8c8c8c;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-deposit-method__radio {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 2px solid #dbdfe7;
  background: #fff;
  flex-shrink: 0;
  position: relative;
}
.affiliate-deposit-method__radio::after {
  content: "";
  position: absolute;
  inset: 4px;
  border-radius: 50%;
  background: #f8ba16;
  opacity: 0;
  transform: scale(0.6);
  transition: opacity 0.15s ease, transform 0.15s ease;
}
.affiliate-deposit-method.is-active .affiliate-deposit-method__radio {
  border-color: #f8ba16;
}
.affiliate-deposit-method.is-active .affiliate-deposit-method__radio::after {
  opacity: 1;
  transform: scale(1);
}

.affiliate-deposit-bank {
  border: 0.5px solid #f8ba16;
  border-radius: 16px;
  padding: 24px;
  background: linear-gradient(90deg, #101d30 0%, #1d2a5c 100%);
}
.affiliate-deposit-bank__row {
  display: flex;
  gap: 24px;
}
.affiliate-deposit-bank__col {
  flex: 1;
  min-width: 0;
}
.affiliate-deposit-bank__label {
  display: block;
  font-size: 14px;
  line-height: 20px;
  color: #fff1cc;
  text-transform: uppercase;
  font-family: "Inter-SemiBold", sans-serif;
  margin-bottom: 8px;
}
.affiliate-deposit-bank__value {
  font-size: 18px;
  line-height: 26px;
  color: #fff;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-deposit-bank__account {
  display: flex;
  align-items: center;
  gap: 16px;
}
.affiliate-deposit-bank__copy {
  height: 32px;
  border: 0.5px solid #f6c24d;
  border-radius: 8px;
  background: transparent;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  cursor: pointer;
  flex-shrink: 0;
}
.affiliate-deposit-bank__copy img {
  width: 16px;
  height: 16px;
}
.affiliate-deposit-bank__copy span {
  font-size: 14px;
  line-height: 20px;
  color: #f6c24d;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-deposit-bank__divider {
  height: 1px;
  background: rgba(255, 255, 255, 0.15);
  margin: 16px 0;
}

.affiliate-deposit-amount {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.affiliate-deposit-amount label {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-deposit-amount__field {
  height: 56px;
  border-radius: 8px;
  border: 1px solid #e7ebf2;
  background: #f5f6f8;
  padding: 0 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.affiliate-deposit-amount__field input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  height: 100%;
  padding: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-deposit-amount__field input:focus {
  outline: none;
}
.affiliate-deposit-amount__field input::placeholder {
  color: #8c8c8c;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-deposit-amount__field span {
  font-size: 16px;
  line-height: 24px;
  color: #8c8c8c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-deposit-hint {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.affiliate-deposit-hint i {
  font-size: 24px;
  color: #f4a108;
  flex-shrink: 0;
}
.affiliate-deposit-hint span {
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Inter-Medium", sans-serif;
}

.affiliate-deposit-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.affiliate-deposit-chip {
  height: 40px;
  border-radius: 8px;
  border: 1px solid #e7ebf2;
  background: #f5f6f8;
  padding: 8px 12px;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  cursor: pointer;
}
.affiliate-deposit-chip.is-active {
  border-color: #0652b0;
  background: #f2f9fd;
}

.affiliate-deposit-panel--qr {
  display: none;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.affiliate-deposit-modal.is-qr-mode .affiliate-deposit-panel--manual,
.affiliate-deposit-modal.is-qr-mode .affiliate-deposit-note--manual {
  display: none;
}
.affiliate-deposit-modal.is-qr-mode .affiliate-deposit-panel--qr,
.affiliate-deposit-modal.is-qr-mode .affiliate-deposit-note--qr {
  display: flex;
}

.affiliate-deposit-qr {
  width: 100%;
  max-width: 329px;
  border: 2px solid #85b0de;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
  padding: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.affiliate-deposit-qr__image {
  width: 100%;
  max-width: 281px;
  height: auto;
  display: block;
}
.affiliate-deposit-qr__brand {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.affiliate-deposit-qr__brand img {
  width: 165px;
  height: 22px;
  object-fit: contain;
}
.affiliate-deposit-qr__divider {
  width: 1px;
  height: 24px;
  background: #dbdfe7;
  flex-shrink: 0;
}
.affiliate-deposit-qr__bank {
  font-size: 16px;
  line-height: 24px;
  color: #0c0c0c;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-deposit-note {
  border: 0.5px solid rgba(244, 161, 8, 0.5);
  border-radius: 8px;
  background: rgba(244, 161, 8, 0.1);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
  padding: 16px;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}
.affiliate-deposit-note > i {
  font-size: 24px;
  color: #f4a108;
  flex-shrink: 0;
  margin-top: 2px;
}
.affiliate-deposit-note__content {
  min-width: 0;
}
.affiliate-deposit-note__line {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  margin: 0 0 4px;
  font-size: 16px;
  line-height: 24px;
  color: #434343;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-deposit-note__line strong {
  color: #684e09;
  font-family: "Inter-Bold", sans-serif;
}
.affiliate-deposit-note__copy {
  width: 16px;
  height: 16px;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
}
.affiliate-deposit-note__copy img {
  width: 16px;
  height: 16px;
}
.affiliate-deposit-note p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #434343;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-deposit-note--qr {
  display: none;
}
.affiliate-deposit-note__expire {
  color: #e63a46;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-deposit-modal__cancel {
  height: 40px;
  border: 1px solid #f8ba16;
  border-radius: 4px;
  background: #fff1cc;
  padding: 8px 32px;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  cursor: pointer;
}

.affiliate-deposit-modal__confirm {
  flex: 1;
  height: 40px;
  border: 1px solid #f8ba16;
  border-radius: 4px;
  background: #f8ba16;
  padding: 8px 12px;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .affiliate-deposit-modal.in {
    padding: 16px 12px;
  }
  .affiliate-deposit-modal .modal-header,
  .affiliate-deposit-modal .modal-body,
  .affiliate-deposit-modal .modal-footer {
    padding-left: 20px;
    padding-right: 20px;
  }
  .affiliate-deposit-modal .modal-footer {
    padding-bottom: 20px;
  }
  .affiliate-deposit-modal__methods {
    flex-direction: column;
  }
  .affiliate-deposit-bank__row {
    flex-direction: column;
    gap: 16px;
  }
  .affiliate-deposit-modal__confirm {
    flex: 1 1 100%;
  }
}
.affiliate-toolbar--revenue .affiliate-date-filter label {
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-revenue-hero {
  background: linear-gradient(90deg, #101d30 0%, #1d2a5c 100%);
  border-radius: 16px;
  padding: 24px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 16px;
  color: #fff;
}
.affiliate-revenue-hero__main {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 0;
}
.affiliate-revenue-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  padding: 8px 16px;
  border-radius: 40px;
  background: rgba(248, 186, 22, 0.1);
  color: #f8ba16;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-hero__badge img {
  width: 20px;
  height: 20px;
}
.affiliate-revenue-hero__label {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.7);
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-revenue-hero__value {
  margin: 0;
  font-size: 32px;
  line-height: 40px;
  color: #f8ba16;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-hero__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.affiliate-revenue-hero__tag {
  height: 32px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.08);
  padding: 6px 13px 7px 19px;
  font-size: 12px;
  line-height: 18px;
  color: #fff;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-revenue-hero__growth {
  flex-shrink: 0;
  align-self: stretch;
  border: 0.5px solid rgba(255, 255, 255, 0.2);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.1);
  padding: 8px 24px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 211px;
}
.affiliate-revenue-hero__growth-value {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  font-size: 30px;
  line-height: 38px;
  color: #16a34a;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-hero__growth-value img {
  width: 24px;
  height: 24px;
}
.affiliate-revenue-hero__growth-note {
  margin: 4px 0 0;
  text-align: right;
  font-size: 16px;
  line-height: 24px;
  color: rgba(255, 255, 255, 0.7);
  font-family: "Inter-Regular", sans-serif;
}

.affiliate-kpi__trend {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 16px;
  line-height: 24px;
  color: #038b5c;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-kpi__trend img {
  width: 16px;
  height: 16px;
}
.affiliate-kpi__trend span {
  color: #595959;
  font-size: 14px;
  line-height: 20px;
}

.affiliate-kpi__icon--discount {
  background: #fff1cc;
  color: #f8ba16;
}

.affiliate-kpi__icon--booking-count {
  background: #ffe4e0;
  color: #e63a46;
}

.affiliate-revenue-panel {
  background: #fff;
  border-radius: 16px;
  padding: 16px 24px;
  height: 100%;
}
.affiliate-revenue-panel__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.affiliate-revenue-panel__head h3 {
  margin: 0;
  font-size: 20px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-panel__filters {
  display: flex;
  gap: 8px;
}

.affiliate-revenue-select {
  height: 34px;
  border: 1px solid #dbdfe7;
  border-radius: 4px;
  background: #fff;
  padding: 6px 9px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 22px;
  color: #0c0c0c;
  font-family: "Inter-Regular", sans-serif;
  cursor: pointer;
}
.affiliate-revenue-select i {
  font-size: 12px;
  color: #8c8c8c;
}

.affiliate-revenue-chart__label {
  margin: 0 0 12px;
  font-size: 12px;
  line-height: 14px;
  color: rgba(29, 36, 51, 0.8);
}
.affiliate-revenue-chart__wrap {
  position: relative;
  height: 356px;
}
.affiliate-revenue-chart__grid {
  position: absolute;
  inset: 0 0 31px 36px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  pointer-events: none;
}
.affiliate-revenue-chart__grid-line {
  display: flex;
  align-items: center;
  gap: 8px;
}
.affiliate-revenue-chart__grid-line span {
  width: 28px;
  text-align: right;
  font-size: 12px;
  line-height: 20px;
  color: #8c8c8c;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-revenue-chart__grid-line::after {
  content: "";
  flex: 1;
  height: 1px;
  background: #f0f0f0;
}
.affiliate-revenue-chart__bars {
  position: absolute;
  inset: 7px 0 31px 36px;
  display: flex;
  align-items: flex-end;
  gap: 0;
}
.affiliate-revenue-chart__bar {
  flex: 1;
  min-width: 0;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  gap: 2px;
}
.affiliate-revenue-chart__bar-stack {
  width: 24px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  justify-content: flex-end;
  min-height: 0;
}
.affiliate-revenue-chart__bar-discount {
  height: 40px;
  border-radius: 4px;
  background: #f8ba16;
  flex-shrink: 0;
}
.affiliate-revenue-chart__bar-net {
  border-radius: 4px;
  background: #1d2a5c;
  min-height: 8px;
}
.affiliate-revenue-chart__months {
  position: absolute;
  left: 36px;
  right: 0;
  bottom: 0;
  display: flex;
}
.affiliate-revenue-chart__month {
  flex: 1;
  text-align: center;
  font-size: 12px;
  line-height: 12px;
  color: #8c8c8c;
  font-family: "Inter-Medium", sans-serif;
}
.affiliate-revenue-chart__legend {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  margin-top: 16px;
}
.affiliate-revenue-chart__legend-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-revenue-chart__legend-item i {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  flex-shrink: 0;
}
.affiliate-revenue-chart__legend-item i.is-net {
  background: #1d2a5c;
}
.affiliate-revenue-chart__legend-item i.is-discount {
  background: #f8ba16;
}
.affiliate-revenue-chart__legend-divider {
  width: 1px;
  height: 20px;
  background: #dbdfe7;
}

.affiliate-revenue-layout {
  display: flex;
  gap: 20px;
  margin-bottom: 16px;
}
.affiliate-revenue-layout__chart {
  flex: 1 1 59%;
  min-width: 0;
}
.affiliate-revenue-layout__side {
  flex: 1 1 41%;
  min-width: 0;
}

.affiliate-top-tours__list {
  max-height: 418px;
  overflow-y: auto;
  padding-right: 4px;
}
.affiliate-top-tours__list::-webkit-scrollbar {
  width: 6px;
}
.affiliate-top-tours__list::-webkit-scrollbar-track {
  background: #e7ebf2;
  border-radius: 3px;
}
.affiliate-top-tours__list::-webkit-scrollbar-thumb {
  background: #f8ba16;
  border-radius: 3px;
}
.affiliate-top-tours__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0 9px;
  border-bottom: 1px solid #e7ebf2;
}
.affiliate-top-tours__rank {
  width: 32px;
  height: 32px;
  border-radius: 6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  flex-shrink: 0;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-top-tours__rank.is-1 {
  background: #f8ba16;
}
.affiliate-top-tours__rank.is-2 {
  background: #fcdf94;
}
.affiliate-top-tours__rank.is-3 {
  background: #fff1cc;
}
.affiliate-top-tours__rank.is-default {
  background: #e7ebf2;
}
.affiliate-top-tours__info {
  flex: 1;
  min-width: 0;
}
.affiliate-top-tours__info strong {
  display: block;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Medium", sans-serif;
}
.affiliate-top-tours__info span {
  display: block;
  margin-top: 2px;
  font-size: 14px;
  line-height: 20px;
  color: #8c8c8c;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-top-tours__amount {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-top-tours__amount u {
  text-decoration: underline;
}

.affiliate-revenue-category {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 16px;
}
.affiliate-revenue-category__head {
  padding: 16px 24px;
}
.affiliate-revenue-category__head h3 {
  margin: 0;
  font-size: 20px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.affiliate-revenue-table {
  margin: 0;
}
.affiliate-revenue-table thead th {
  background: #f2f4f7;
  border-bottom: 0.5px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  padding: 12px 16px;
  font-size: 14px;
  line-height: 20px;
  color: #2a3b5b;
  text-transform: uppercase;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-table thead th:last-child {
  border-right: 0;
}
.affiliate-revenue-table tbody td {
  border-bottom: 1px solid #dbdfe7;
  padding: 10px 16px;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  vertical-align: middle;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-revenue-table tbody td.is-bold {
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-table tbody td.is-gross {
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-table tbody td.is-discount {
  color: #e63a46;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-table tbody td.is-net {
  color: #038b5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-revenue-table tbody tr.is-alt td {
  background: #fafbfc;
}

.affiliate-revenue-share {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 190px;
}
.affiliate-revenue-share__bar {
  flex: 1;
  height: 8px;
  border-radius: 999px;
  background: #e7ebf2;
  overflow: hidden;
}
.affiliate-revenue-share__fill {
  height: 100%;
  border-radius: 999px;
  background: #f8ba16;
}
.affiliate-revenue-share__value {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}

@media screen and (max-width: 1199px) {
  .affiliate-revenue-layout {
    flex-direction: column;
  }
  .affiliate-revenue-hero {
    flex-direction: column;
  }
  .affiliate-revenue-hero__growth {
    align-self: auto;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .affiliate-toolbar--revenue {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
  .affiliate-revenue-panel__head {
    flex-direction: column;
    align-items: flex-start;
  }
  .affiliate-revenue-chart__month {
    font-size: 10px;
  }
}
.provider-page {
  background: #f2f4f7;
  font-family: "Inter", sans-serif;
  color: #1d2433;
}

.provider-layout {
  min-height: 100vh;
  padding-left: 0;
  padding-right: 0;
}
.provider-layout__row {
  margin-left: 0;
  margin-right: 0;
  display: flex;
  min-height: 100vh;
}

.provider-sidebar {
  flex: 0 0 248px;
  width: 248px;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  z-index: 1030;
  background: linear-gradient(180deg, #0a1f3d 0%, #0f2a4f 100%);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  padding: 0 0 20px;
}
.provider-sidebar__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 68px;
  padding: 0 16px;
  width: 100%;
}
.provider-sidebar__logo {
  display: flex;
  align-items: center;
  padding-left: 4px;
  text-decoration: none;
}
.provider-sidebar__logo img {
  display: block;
  width: 150px;
  height: 32px;
  object-fit: contain;
}
.provider-sidebar__menu-toggle {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border: 0;
  background: transparent;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.provider-sidebar__menu-toggle img {
  display: block;
  width: 24px;
  height: 24px;
}
.provider-sidebar__divider {
  height: 1px;
  margin: 0;
  background: rgba(255, 255, 255, 0.12);
}
.provider-sidebar__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
  padding: 24px 16px 0;
}
.provider-sidebar__nav {
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  max-width: 228px;
  margin: 0 auto;
}
.provider-sidebar__item {
  border: 0;
  border-radius: 4px;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 12px 8px;
  position: relative;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.4);
  font-family: "Roboto", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 22px;
}
.provider-sidebar__item:hover {
  text-decoration: none;
  color: rgba(255, 255, 255, 0.65);
}
.provider-sidebar__item.is-active {
  border-left: 2px solid #f8ba16;
  background: linear-gradient(90deg, rgba(245, 184, 47, 0.18) 0%, rgba(245, 184, 47, 0.04) 100%);
  color: #f8ba16;
}
.provider-sidebar__item.is-active .provider-sidebar__icon i {
  color: #f8ba16;
  opacity: 1;
}
.provider-sidebar__item.is-active .provider-sidebar__icon img,
.provider-sidebar__item.is-active .provider-sidebar__icon svg {
  opacity: 1;
  filter: brightness(0) saturate(100%) invert(72%) sepia(67%) saturate(498%) hue-rotate(358deg) brightness(102%) contrast(96%);
}
.provider-sidebar__item.is-active .provider-sidebar__icon svg [stroke] {
  stroke: #f8ba16;
  stroke-opacity: 1;
}
.provider-sidebar__item.is-active .provider-sidebar__icon svg [fill]:not([fill=none]) {
  fill: #f8ba16;
  fill-opacity: 1;
}
.provider-sidebar__item.is-active .provider-sidebar__chevron {
  color: #f8ba16;
}
.provider-sidebar__item--has-chevron {
  padding-right: 4px;
}
.provider-sidebar__item--parent {
  flex: 1 1 auto;
  min-width: 0;
}
.provider-sidebar__group {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.provider-sidebar__row {
  display: flex;
  align-items: stretch;
  width: 100%;
  border-radius: 4px;
}
.provider-sidebar__row .provider-sidebar__item--parent.is-active {
  border-left: 2px solid #f8ba16;
  background: linear-gradient(90deg, rgba(245, 184, 47, 0.18) 0%, rgba(245, 184, 47, 0.04) 100%);
  color: #f8ba16;
}
.provider-sidebar__row .provider-sidebar__item--parent.is-active .provider-sidebar__icon svg [fill]:not([fill=none]) {
  fill: #f8ba16;
  fill-opacity: 1;
}
.provider-sidebar__row .provider-sidebar__item--parent.is-active + .provider-sidebar__chevron-btn {
  color: #f8ba16;
}
.provider-sidebar__chevron-btn {
  flex-shrink: 0;
  border: 0;
  background: transparent;
  padding: 12px 8px;
  margin: 0;
  cursor: pointer;
  color: rgba(255, 255, 255, 0.4);
  line-height: 1;
  border-radius: 0 4px 4px 0;
}
.provider-sidebar__chevron-btn:hover {
  color: rgba(255, 255, 255, 0.65);
}
.provider-sidebar__group.is-expanded .provider-sidebar__chevron {
  transform: rotate(180deg);
}
.provider-sidebar__subnav {
  display: none;
  flex-direction: column;
  gap: 16px;
  padding: 16px 0;
  width: 100%;
}
.provider-sidebar__group.is-expanded .provider-sidebar__subnav {
  display: flex;
}
.provider-sidebar__subitem {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 30px;
  padding: 8px 20px;
  border-radius: 4px;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.4);
  font-family: "Inter", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 14px;
  letter-spacing: -0.07px;
}
.provider-sidebar__subitem:hover {
  text-decoration: none;
  color: rgba(255, 255, 255, 0.65);
}
.provider-sidebar__subitem.is-active {
  color: #f8ba16;
}
.provider-sidebar__subitem.is-active .provider-sidebar__subdot {
  background: #f8ba16;
}
.provider-sidebar__subdot {
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
}
.provider-sidebar__sublabel {
  flex: 1 1 auto;
  min-width: 0;
}
.provider-sidebar__item[data-provider-nav=dashboard], .provider-sidebar__item[data-provider-nav=orders], .provider-sidebar__item[data-affiliate-nav=dashboard], .provider-sidebar__item--parent[data-affiliate-nav=orders] {
  font-family: "Inter", sans-serif;
  font-weight: 600;
  line-height: 14px;
  letter-spacing: -0.07px;
}
.provider-sidebar__icon {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.provider-sidebar__icon i {
  font-size: 20px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.4);
}
.provider-sidebar__icon img,
.provider-sidebar__icon svg {
  width: 24px;
  height: 24px;
  object-fit: contain;
  opacity: 0.4;
}
.provider-sidebar__label {
  flex: 1 1 auto;
  min-width: 0;
}
.provider-sidebar__chevron {
  flex-shrink: 0;
  font-size: 12px;
  line-height: 1;
  color: rgba(255, 255, 255, 0.4);
}
.provider-sidebar.is-collapsed {
  flex: 0 0 72px;
  width: 72px;
  padding-bottom: 16px;
}
.provider-sidebar.is-collapsed .provider-sidebar__top {
  justify-content: center;
  min-height: 68px;
  padding: 0 12px;
}
.provider-sidebar.is-collapsed .provider-sidebar__logo {
  display: none;
}
.provider-sidebar.is-collapsed .provider-sidebar__divider {
  display: none;
}
.provider-sidebar.is-collapsed .provider-sidebar__body {
  padding: 16px 8px 0;
  gap: 8px;
}
.provider-sidebar.is-collapsed .provider-sidebar__nav {
  width: 48px;
}
.provider-sidebar.is-collapsed .provider-sidebar__label,
.provider-sidebar.is-collapsed .provider-sidebar__chevron,
.provider-sidebar.is-collapsed .provider-sidebar__subnav,
.provider-sidebar.is-collapsed .provider-sidebar__chevron-btn {
  display: none;
}
.provider-sidebar.is-collapsed .provider-sidebar__item {
  justify-content: center;
  padding: 12px 8px;
}
.provider-sidebar.is-collapsed .provider-sidebar__item.is-active {
  border-left: 0;
}
.provider-sidebar.is-collapsed .provider-sidebar__row .provider-sidebar__item--parent {
  flex: 1 1 auto;
}

.provider-layout.is-sidebar-collapsed .provider-main {
  margin-left: 72px;
}
.provider-layout.is-sidebar-collapsed .provider-topbar {
  left: 72px;
}
.provider-layout.is-sidebar-collapsed .provider-create-tour-footer {
  left: 72px;
}

@media (max-width: 992px) {
  .provider-sidebar {
    flex: 0 0 72px;
    width: 72px;
    padding-bottom: 16px;
  }
  .provider-sidebar .provider-sidebar__top {
    justify-content: center;
    min-height: 68px;
    padding: 0 12px;
  }
  .provider-sidebar .provider-sidebar__logo {
    display: none;
  }
  .provider-sidebar .provider-sidebar__divider {
    display: none;
  }
  .provider-sidebar .provider-sidebar__body {
    padding: 16px 8px 0;
    gap: 8px;
  }
  .provider-sidebar .provider-sidebar__nav {
    width: 48px;
  }
  .provider-sidebar .provider-sidebar__label,
  .provider-sidebar .provider-sidebar__chevron,
  .provider-sidebar .provider-sidebar__subnav,
  .provider-sidebar .provider-sidebar__chevron-btn {
    display: none;
  }
  .provider-sidebar .provider-sidebar__item {
    justify-content: center;
    padding: 12px 8px;
  }
  .provider-sidebar .provider-sidebar__item.is-active {
    border-left: 0;
  }
  .provider-sidebar .provider-sidebar__row .provider-sidebar__item--parent {
    flex: 1 1 auto;
  }
  .provider-main {
    margin-left: 72px;
  }
  .provider-topbar {
    left: 72px;
  }
  .provider-create-tour-footer {
    left: 72px;
  }
}
.provider-main {
  flex: 1 1 auto;
  min-width: 0;
  margin-left: 248px;
  padding: 84px 24px 24px;
  transition: margin-left 0.2s ease;
}

.provider-topbar {
  left: 248px;
  transition: left 0.2s ease;
}

.provider-sidebar {
  transition: width 0.2s ease, flex-basis 0.2s ease;
}

.provider-create-tour-footer {
  transition: left 0.2s ease;
}

.provider-page-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.provider-page-head h1 {
  margin: 0;
  font-size: 24px;
  line-height: 32px;
  color: #1d2a5c;
  font-family: "Inter-Bold", sans-serif;
}

.provider-btn-add {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 40px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #f8ba16;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-btn-add i {
  font-size: 16px;
}
.provider-btn-add:hover, .provider-btn-add:focus {
  background: #e5ab14;
  border-color: #e5ab14;
  color: #1d2a5c;
}

.provider-filters {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  border-radius: 16px;
  padding: 16px 24px;
  margin-bottom: 16px;
}
.provider-filters .affiliate-filter-field {
  margin: 0;
}
.provider-filters .affiliate-filter-field img {
  width: 21.083px;
  height: 19.156px;
}
.provider-filters__divider {
  width: 1px;
  align-self: stretch;
  background: #e7ebf2;
  flex: 0 0 1px;
}
.provider-filters__reset {
  border: 0;
  background: transparent;
  padding: 0;
  color: #e63a46;
  font-size: 14px;
  line-height: 20px;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-list-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: #fff;
  border-radius: 12px;
  padding: 10px 15px;
  margin-bottom: 16px;
}
.provider-list-head h2 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-list-head__right {
  display: flex;
  align-items: center;
  gap: 16px;
}
.provider-list-head__count {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #8c8c8c;
  font-family: "Roboto", sans-serif;
}
.provider-list-head__count strong {
  color: #0652b0;
  font-weight: 500;
}

.provider-view-toggle {
  display: flex;
  align-items: center;
  gap: 8px;
}
.provider-view-toggle__btn {
  height: 32px;
  padding: 0 8px;
  border-radius: 8px;
  border: 1px solid #e7ebf2;
  background: #fff;
  color: #2a3b5b;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-view-toggle__btn.is-active {
  background: #1d2a5c;
  border-color: #1d2a5c;
  color: #fff;
}

.provider-view {
  display: none;
}
.provider-view.is-active {
  display: block;
}
.provider-view--grid.is-active .provider-product-grid {
  display: grid;
}

.provider-products-panel {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  margin-bottom: 16px;
}
.provider-products-panel__footer {
  border-top: 1px solid #dbdfe7;
}
.provider-products-panel__pagination {
  display: flex;
  align-items: center;
  gap: 8px;
}

.provider-product-table tbody td {
  padding-top: 10px;
  padding-bottom: 10px;
  min-height: 84px;
}
.provider-product-table .col-stt {
  width: 57px;
}
.provider-product-table .col-code {
  width: 110px;
  white-space: nowrap;
}
.provider-product-table .col-tour {
  min-width: 320px;
}
.provider-product-table .col-actions {
  width: 106px;
}
.provider-product-table__code {
  font-family: "Inter-SemiBold", sans-serif;
  color: #121212;
}
.provider-product-table__tour {
  display: flex;
  align-items: center;
  gap: 16px;
  min-width: 0;
}
.provider-product-table__tour img {
  width: 83px;
  height: 54px;
  border-radius: 8px;
  object-fit: cover;
  flex: 0 0 83px;
}
.provider-product-table__tour strong {
  display: block;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
  font-weight: 400;
  margin-bottom: 4px;
}
.provider-product-table__tour-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: #8c8c8c;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-product-table .is-net {
  color: #d97706;
  font-family: "Inter-SemiBold", sans-serif;
  white-space: nowrap;
}
.provider-product-table__status {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: 24px;
  font-size: 14px;
  line-height: 20px;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-table__status--active {
  background: #dff6ec;
  color: #038b5c;
}
.provider-product-table__status--paused {
  background: #fff1cc;
  color: #684e09;
}
.provider-product-table__actions {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.provider-product-table__action {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  text-decoration: none;
}
.provider-product-table__action:hover, .provider-product-table__action:focus {
  text-decoration: none;
  opacity: 0.9;
}
.provider-product-table__action i {
  font-size: 14px;
}
.provider-product-table__action--view {
  background: #fff1cc;
  color: #684e09;
}
.provider-product-table__action--edit {
  background: #dff6ec;
  color: #038b5c;
}

.provider-btn-next {
  height: 32px;
  padding: 0 12px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #fff;
  color: #1d2a5c;
  font-size: 14px;
  line-height: 20px;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-product-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 16px;
}

.provider-product-card h3 a {
  color: inherit;
  text-decoration: none;
}
.provider-product-card h3 a:hover, .provider-product-card h3 a:focus {
  color: #1d5bd6;
  text-decoration: none;
}
.provider-product-card {
  background: #fff;
  border-radius: 14px;
  overflow: hidden;
}
.provider-product-card__media {
  position: relative;
  height: 340px;
  background: #f5f6f8;
  overflow: hidden;
}
.provider-product-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.provider-product-card__status {
  position: absolute;
  top: 20px;
  left: 20px;
  padding: 4px 12px;
  border-radius: 999px;
  font-size: 14px;
  line-height: 20px;
  backdrop-filter: blur(4px);
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-card__status--active {
  background: #dff6ec;
  color: #038b5c;
}
.provider-product-card__status--paused {
  background: #fff1cc;
  color: #684e09;
}
.provider-product-card__body {
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.provider-product-card__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: #f8ba16;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-card h3 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #0a1f3d;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-card__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  color: #2a3b5b;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-product-card__rating {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}
.provider-product-card__rating i {
  font-size: 12px;
  color: #f8ba16;
}
.provider-product-card__divider {
  height: 1px;
  background: #e7ebf2;
}
.provider-product-card__price {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.provider-product-card__price-label {
  font-size: 14px;
  line-height: 20px;
  color: #8c8c8c;
  text-transform: uppercase;
  font-family: "Inter-Regular", sans-serif;
}
.provider-product-card__price strong {
  font-size: 16px;
  line-height: 24px;
  color: #0a1f3d;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-card__price p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #d97706;
  font-family: "Inter-Regular", sans-serif;
}
.provider-product-card__price p span {
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-card__stats {
  display: flex;
  align-items: stretch;
}
.provider-product-card__stat {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  text-align: center;
}
.provider-product-card__stat:first-child {
  border-right: 1px solid #e7ebf2;
}
.provider-product-card__stat strong {
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-product-card__stat > span {
  font-size: 14px;
  line-height: 20px;
  color: #8c8c8c;
  font-family: "Inter-Regular", sans-serif;
}
.provider-product-card__stat-value {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
.provider-product-card__trend {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-product-card__trend i {
  font-size: 14px;
}
.provider-product-card__trend--up {
  color: #038b5c;
}
.provider-product-card__trend--down {
  color: #e63a46;
}
.provider-product-card__trend--down i {
  transform: scaleY(-1);
}

.provider-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.provider-pagination li {
  list-style: none;
}
.provider-pagination button {
  width: 32px;
  height: 32px;
  border-radius: 4px;
  border: 1px solid #e7ebf2;
  background: #fff;
  color: #0c0c0c;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-pagination button.is-active {
  background: #1d2a5c;
  border-color: #1d2a5c;
  color: #f8ba16;
}

@media (max-width: 1400px) {
  .provider-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 992px) {
  .provider-filters {
    flex-wrap: wrap;
  }
  .provider-product-grid {
    grid-template-columns: 1fr;
  }
}
.provider-create-tour-page .provider-main {
  padding-bottom: 100px;
}

.provider-create-tour-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
}
.provider-create-tour-head h1 {
  margin: 0;
  font-size: 24px;
  line-height: 32px;
  color: #1d2a5c;
  font-family: "Inter-Bold", sans-serif;
}
.provider-create-tour-head__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.provider-btn-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 8px 16px;
  border-radius: 8px;
  border: 1px solid #dbdfe7;
  background: #fff;
  color: #1d2a5c;
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-SemiBold", sans-serif;
  text-decoration: none;
}
.provider-btn-outline:hover, .provider-btn-outline:focus {
  background: #f5f6f8;
  color: #1d2a5c;
  text-decoration: none;
}

.provider-btn-primary-dark {
  height: 40px;
  padding: 8px 16px;
  border-radius: 8px;
  border: 0;
  background: #1f2c3e;
  color: #fff;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-btn-primary-dark:hover, .provider-btn-primary-dark:focus {
  background: #2a3d54;
  color: #fff;
}

.provider-create-tour-layout {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  margin-bottom: 24px;
}

.provider-create-tour-content {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.provider-create-tour-aside {
  flex: 0 0 360px;
  width: 360px;
  position: sticky;
  top: 96px;
}

.provider-create-tour-form {
  margin: 0;
}

.provider-create-tour-form__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 20px;
}

.provider-form-card {
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.provider-form-card__head h2 {
  margin: 0 0 4px;
  font-size: 18px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-form-card__head p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #555d6e;
  font-family: "Inter-Regular", sans-serif;
}

.provider-form-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.provider-form-field label, .provider-form-field__title {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #555d6e;
  font-family: "Inter-Medium", sans-serif;
}
.provider-form-field .is-required {
  color: #e63a46;
}
.provider-form-field .form-control {
  height: 40px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #f5f6f8;
  box-shadow: none;
  font-size: 14px;
  line-height: 20px;
  color: #1d2433;
  padding: 8px 12px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-form-field .form-control:focus {
  border-color: #c5cdd8;
  background: #fff;
  box-shadow: none;
}
.provider-form-field textarea.form-control {
  height: auto;
  min-height: 80px;
  resize: vertical;
}
.provider-form-field--upload-action {
  margin-top: 8px;
}

.provider-form-row {
  display: flex;
  gap: 16px;
}
.provider-form-row .provider-form-field {
  flex: 1 1 0;
  min-width: 0;
}

.provider-form-hint {
  margin: 0;
  font-size: 12px;
  line-height: 16px;
  color: #8b95a8;
  font-family: "Inter-Regular", sans-serif;
}

.provider-upload-row {
  display: flex;
  align-items: center;
  gap: 12px;
}

.provider-form-field__title--lg {
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-cover-upload {
  display: flex;
  flex-direction: column;
  gap: 8px;
  width: 100%;
}
.provider-cover-upload__label {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-cover-upload__required {
  color: #dc1f26;
}
.provider-cover-upload__row {
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: 100px;
}
.provider-cover-upload__thumb {
  position: relative;
  flex: 0 0 100px;
  width: 100px;
  height: 100px;
  border-radius: 5px;
  background: #e2e6ec;
  overflow: hidden;
}
.provider-cover-upload__preview {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
  z-index: 1;
}
.provider-cover-upload__preview[hidden] {
  display: none !important;
}
.provider-cover-upload__placeholder {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 43px;
  height: 35px;
  transform: translate(-50%, -50%);
  object-fit: contain;
  pointer-events: none;
}
.provider-cover-upload__thumb.has-preview .provider-cover-upload__placeholder {
  display: none;
}
.provider-cover-upload__field {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 8px 32px 8px 8px;
  border-radius: 5px;
  background: #f8f8f8;
  flex: 0 1 auto;
  max-width: 100%;
}
.provider-cover-upload__choose {
  flex-shrink: 0;
  height: 28px;
  padding: 4px 20px;
  border: 0;
  border-radius: 4px;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-cover-upload__choose:hover, .provider-cover-upload__choose:focus {
  background: #e5ab14;
  color: #1d2a5c;
}
.provider-cover-upload__filename {
  font-size: 14px;
  line-height: 20px;
  color: #262626;
  white-space: nowrap;
  font-family: "Inter-Regular", sans-serif;
}
.provider-cover-upload__input {
  display: none;
}

.provider-upload-bar {
  flex: 1 1 auto;
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 8px 32px 8px 8px;
  border-radius: 5px;
  background: #f8f8f8;
  border: 0;
}
.provider-upload-bar span {
  font-size: 14px;
  line-height: 20px;
  color: #262626;
  font-family: "Inter-Regular", sans-serif;
}
.provider-upload-bar--light {
  background: #f8f8f8;
}
.provider-upload-bar--field {
  flex: 1 1 auto;
  background: #f5f6f8;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  padding: 8px 12px;
  gap: 8px;
}

.provider-upload-btn {
  flex-shrink: 0;
  height: 28px;
  padding: 4px 20px;
  border: 0;
  border-radius: 4px;
  background: #fff;
  font-size: 14px;
  line-height: 20px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-upload-btn:hover {
  background: #f5f6f8;
}
.provider-upload-btn--gold {
  background: #f8ba16;
  color: #1d2a5c;
}
.provider-upload-btn--gold:hover {
  background: #e5ab14;
}

.provider-upload-inline {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  width: 100%;
}
.provider-upload-inline--album .provider-upload-bar--field {
  flex: 1 1 auto;
  min-width: 0;
  min-height: 44px;
}

.provider-btn-upload {
  height: 44px;
  min-width: 100px;
  padding: 8px 12px;
  flex-shrink: 0;
}

.provider-create-tour-album {
  overflow: hidden;
  border-radius: 16px;
  border: 1px solid #e7ebf2;
  background: #f5f6f8;
}
.provider-create-tour-album.has-images {
  background: #fff;
  border-color: #e7ebf2;
}
.provider-create-tour-album.has-images .provider-create-tour-album__empty {
  display: none;
}
.provider-create-tour-album.has-images .provider-create-tour-album__table-wrap {
  display: block;
}
.provider-create-tour-album__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 200px;
  padding: 24px;
  text-align: center;
}
.provider-create-tour-album__empty i {
  font-size: 32px;
  color: #c5cdd8;
}
.provider-create-tour-album__empty p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #8b95a8;
  font-family: "Inter-Regular", sans-serif;
}
.provider-create-tour-album__table-wrap {
  display: none;
}
.provider-create-tour-album__footer {
  padding: 12px 24px;
  background: #f2f4f7;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}
.provider-create-tour-album__input {
  display: none;
}
.provider-create-tour-album.has-images .provider-album-table thead th {
  height: 40px;
  padding: 12px 16px;
  background: #f2f4f7;
  border-bottom: 0.5px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  font-size: 14px;
  line-height: 20px;
  text-transform: uppercase;
  color: #2a3b5b;
  vertical-align: middle;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-create-tour-album.has-images .provider-album-table thead th:last-child {
  border-right: 0;
}
.provider-create-tour-album.has-images .provider-album-table tbody td {
  height: 64px;
  padding: 10px 16px;
  border: 0;
  vertical-align: middle;
  background: #fff;
}
.provider-create-tour-album.has-images .provider-album-table tbody td:last-child {
  border-right: 0;
}
.provider-create-tour-album.has-images .provider-album-table tbody tr:last-child td {
  border-bottom: 0;
}
.provider-create-tour-album.has-images .provider-album-table .col-check {
  width: 61px;
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table .col-sort {
  width: 79px;
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table .col-thumb {
  width: 133px;
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table .col-file {
  min-width: 200px;
  text-align: left;
}
.provider-create-tour-album.has-images .provider-album-table .col-actions {
  width: 106px;
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table__check input[type=checkbox] {
  width: 15px;
  height: 15px;
  margin: 0;
  cursor: pointer;
}
.provider-create-tour-album.has-images .provider-album-table__sort-cell {
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table__sort-handle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  cursor: grab;
}
.provider-create-tour-album.has-images .provider-album-table__sort-handle img {
  display: block;
  width: 24px;
  height: 24px;
}
.provider-create-tour-album.has-images .provider-album-table__thumb-cell {
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table__thumb {
  width: 70px;
  height: 54px;
  margin: 0 auto;
  border-radius: 8px;
  overflow: hidden;
  background: #e7ebf2;
}
.provider-create-tour-album.has-images .provider-album-table__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.provider-create-tour-album.has-images .provider-album-table__file {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.provider-create-tour-album.has-images .provider-album-table__file-name {
  font-size: 14px;
  line-height: 20px;
  color: #0652b0;
  word-break: break-all;
  font-family: "Inter-Regular", sans-serif;
}
.provider-create-tour-album.has-images .provider-album-table__file-size {
  font-size: 14px;
  line-height: 20px;
  color: #8c8c8c;
  font-family: "Inter-Regular", sans-serif;
}
.provider-create-tour-album.has-images .provider-album-table__actions-cell {
  text-align: center;
}
.provider-create-tour-album.has-images .provider-album-table__delete {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 4px;
  background: #ffe4e0;
  color: #e63a46;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.provider-create-tour-album.has-images .provider-album-table__delete:hover {
  opacity: 0.9;
}

.provider-album-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.provider-album-table {
  width: 100%;
  min-width: 580px;
  margin: 0;
  border-collapse: collapse;
  background: #fff;
}
.provider-album-table thead th {
  text-align: left;
  white-space: nowrap;
}
.provider-album-table__check {
  text-align: center;
}
.provider-album-table__check input[type=checkbox] {
  margin: 0;
}

.provider-itinerary {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.provider-itinerary__days {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.provider-itinerary-day {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.provider-itinerary-day__head {
  display: flex;
  align-items: center;
  gap: 12px;
}
.provider-itinerary-day__badge {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 28px;
  padding: 0 8px;
  border-radius: 6px;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 14px;
  line-height: 20px;
  font-family: "Inter-Bold", sans-serif;
}
.provider-itinerary-day__title-input {
  flex: 1 1 auto;
  min-width: 0;
  height: 40px;
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-itinerary-day__title-input:focus {
  border: 0;
  box-shadow: none;
  background: transparent;
}

.provider-itinerary-editor {
  display: none;
}

.provider-policy {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.provider-policy__list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.provider-policy-item {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e7ebf2;
}
.provider-policy-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.provider-policy-editor {
  display: none;
}

.provider-form-card--itinerary .cke_chrome,
.provider-form-card--policy .cke_chrome {
  border: 1px solid #e7ebf2 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  overflow: hidden;
}
.provider-form-card--itinerary .cke_top,
.provider-form-card--policy .cke_top {
  background: #f5f6f8 !important;
  border-bottom: 1px solid #e7ebf2 !important;
  padding: 6px 8px !important;
}
.provider-form-card--itinerary .cke_bottom,
.provider-form-card--policy .cke_bottom {
  display: none !important;
}
.provider-form-card--itinerary .cke_contents,
.provider-form-card--policy .cke_contents {
  min-height: 180px !important;
}
.provider-form-card--itinerary .cke_editable,
.provider-form-card--policy .cke_editable {
  font-size: 14px !important;
  line-height: 22px !important;
  color: #1d2433 !important;
  font-family: "Inter", sans-serif !important;
  padding: 12px 16px !important;
}

.provider-rich-editor {
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}
.provider-rich-editor__toolbar {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 8px 12px;
  background: #f5f6f8;
  border-bottom: 1px solid #e7ebf2;
}
.provider-rich-editor__toolbar button {
  width: 28px;
  height: 28px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #555d6e;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.provider-rich-editor__toolbar button:hover {
  background: #e7ebf2;
}
.provider-rich-editor__divider {
  width: 1px;
  height: 20px;
  background: #dbdfe7;
  margin: 0 4px;
}
.provider-rich-editor__body {
  padding: 16px;
  min-height: 120px;
  font-size: 14px;
  line-height: 22px;
  color: #1d2433;
  font-family: "Inter-Regular", sans-serif;
}
.provider-rich-editor__body p {
  margin: 0 0 12px;
}
.provider-rich-editor__body p:last-child {
  margin-bottom: 0;
}
.provider-rich-editor__body strong {
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-btn-add-day {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  width: max-content;
  border: 0;
  border-radius: 10px;
  background: #1d2a5c;
  color: #fff;
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-btn-add-day__icon {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.provider-btn-add-day__icon img {
  display: block;
  width: 20px;
  height: 20px;
}
.provider-btn-add-day__text {
  white-space: nowrap;
}
.provider-btn-add-day:hover, .provider-btn-add-day:focus {
  background: #162247;
  color: #fff;
}

.provider-pricing-card {
  background: #fff;
  border-radius: 16px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.provider-pricing-card__head h2 {
  margin: 0 0 4px;
  font-size: 18px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-pricing-card__head p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #555d6e;
  font-family: "Inter-Regular", sans-serif;
}

.provider-input-suffix {
  position: relative;
}
.provider-input-suffix .form-control {
  height: 40px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #f5f6f8;
  box-shadow: none;
  font-size: 14px;
  padding: 8px 72px 8px 12px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-input-suffix > span {
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 14px;
  line-height: 20px;
  color: #8b95a8;
  font-family: "Inter-Regular", sans-serif;
  pointer-events: none;
}

.provider-price-calc {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  padding: 16.5px;
  border: 0.5px solid #f8ba16;
  background: linear-gradient(100.11deg, #fffffd 0%, #fff5ce 101.26%);
}
.provider-price-calc__decor {
  position: absolute;
  top: -14.5px;
  right: -14.5px;
  width: 60px;
  height: 60px;
  border-radius: 30px;
  background: #ffeea9;
  pointer-events: none;
}
.provider-price-calc__title {
  position: relative;
  z-index: 1;
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-price-calc__row {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}
.provider-price-calc__row:nth-child(3) {
  padding: 17px 0 5px;
}
.provider-price-calc__row:nth-child(4) {
  padding: 5px 0 11px;
}
.provider-price-calc__row--total {
  padding: 9px 0 5px;
  border-top: 1px dashed #5eead4;
}
.provider-price-calc__label {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}
.provider-price-calc__value {
  flex-shrink: 0;
  font-size: 14px;
  line-height: 20px;
  color: #684e09;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-price-calc__value--total {
  font-size: 16px;
  line-height: 24px;
}

.provider-price-hero {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  border-radius: 12px;
  padding: 16px 18px;
  background: linear-gradient(135.82deg, #0a1f3d 0%, #1a3358 100%);
}
.provider-price-hero__decor {
  position: absolute;
  top: -20px;
  right: -20px;
  width: 80px;
  height: 80px;
  border-radius: 40px;
  background: rgba(13, 148, 136, 0.12);
  pointer-events: none;
}
.provider-price-hero__label, .provider-price-hero__value, .provider-price-hero__note {
  position: relative;
  z-index: 1;
}
.provider-price-hero__label {
  margin: 0;
  font-size: 11px;
  line-height: 16.5px;
  color: rgba(255, 255, 255, 0.7);
  font-family: "Inter-Regular", sans-serif;
}
.provider-price-hero__value {
  display: block;
  margin: 0;
  font-size: 26px;
  line-height: 39px;
  color: #f8ba16;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-price-hero__note {
  margin: 0;
  padding-top: 2px;
  font-size: 11px;
  line-height: 16.5px;
  color: rgba(255, 255, 255, 0.7);
  font-family: "Inter-Regular", sans-serif;
}
.provider-price-hero__note span {
  color: #f8ba16;
  font-family: "Inter-Bold", sans-serif;
}

.provider-price-note {
  border-radius: 10px;
  padding: 12.5px 16.5px;
  background: #fffbeb;
  border: 0.5px solid #f8ba16;
}
.provider-price-note p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #684e09;
  font-family: "Inter-Regular", sans-serif;
}
.provider-price-note p strong {
  color: #684e09;
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-create-tour-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
  padding: 16px 24px;
}
.provider-create-tour-footer h2 {
  margin: 0;
  font-size: 18px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

@media (max-width: 1199px) {
  .provider-create-tour-layout {
    flex-direction: column;
  }
  .provider-create-tour-aside {
    flex: 1 1 auto;
    width: 100%;
    position: static;
  }
  .provider-create-tour-footer {
    left: 0;
  }
}
@media (max-width: 767px) {
  .provider-create-tour-head {
    flex-direction: column;
    align-items: flex-start;
  }
  .provider-form-row {
    flex-direction: column;
  }
  .provider-cover-upload__row {
    flex-direction: column;
    align-items: flex-start;
  }
  .provider-upload-inline {
    flex-direction: column;
    align-items: stretch;
  }
  .provider-create-tour-footer {
    flex-direction: column;
    align-items: stretch;
  }
  .provider-create-tour-footer h2 {
    display: none;
  }
  .provider-create-tour-footer .provider-create-tour-head__actions {
    width: 100%;
    justify-content: flex-end;
  }
}
.provider-debt-page .affiliate-toolbar--debt {
  margin-bottom: 16px;
}
.provider-debt-page .affiliate-toolbar--debt .affiliate-date-filter label {
  color: #1d2433;
  font-family: "Inter-Medium", sans-serif;
}

.provider-debt-notice {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-bottom: 16px;
  padding: 12px 16px;
  border: 1px solid #90caf9;
  border-radius: 9px;
  background: #e3f2fd;
  color: #0a1f4d;
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-Regular", sans-serif;
}
.provider-debt-notice > i {
  flex-shrink: 0;
  margin-top: 4px;
  font-size: 16px;
  color: #1976d2;
}
.provider-debt-notice strong {
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-debt-balance {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 16px;
  padding: 24px;
  border: 1px solid #fcd34d;
  border-radius: 16px;
  overflow: hidden;
  min-height: 160px;
}
.provider-debt-balance__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.provider-debt-balance__content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.provider-debt-balance__label {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #1d2a5c;
  text-transform: uppercase;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-balance__amount {
  margin: 0;
  font-size: 32px;
  line-height: 40px;
  letter-spacing: -0.5px;
  color: #f8ba16;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-balance__meta {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  color: #2a3b5b;
  font-family: "Inter-Regular", sans-serif;
}
.provider-debt-balance__action {
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  align-self: center;
}

.provider-debt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  height: 40px;
  padding: 8px 12px;
  border-radius: 8px;
  border: 1px solid #f8ba16;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 16px;
  line-height: 24px;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-btn:hover, .provider-debt-btn:focus {
  background: #e5ab14;
  border-color: #e5ab14;
  color: #1d2a5c;
}
.provider-debt-btn--export i {
  font-size: 16px;
}

.provider-debt-table-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}
.provider-debt-table-card__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 24px;
}
.provider-debt-table-card__head h2 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-table-card__foot {
  padding: 12px 24px;
  background: #fafbfc;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}
.provider-debt-table-card__foot strong {
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-debt-table-wrap {
  overflow-x: auto;
}

.provider-debt-table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
  table-layout: fixed;
}
.provider-debt-table thead th {
  padding: 12px 16px;
  background: #f2f4f7;
  border-bottom: 0.5px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  font-size: 14px;
  line-height: 20px;
  color: #2a3b5b;
  text-transform: uppercase;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-table thead th:last-child {
  border-right: 0;
}
.provider-debt-table thead th.is-center {
  text-align: center;
}
.provider-debt-table thead th.is-right {
  text-align: right;
}
.provider-debt-table tbody td {
  padding: 10px 16px;
  border-bottom: 1px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  vertical-align: middle;
  font-family: "Inter-Regular", sans-serif;
}
.provider-debt-table tbody td:last-child {
  border-right: 0;
}
.provider-debt-table tbody td.is-center {
  text-align: center;
}
.provider-debt-table tbody td.is-right {
  text-align: right;
}
.provider-debt-table tbody tr.is-alt td {
  background: #fafbfc;
}
.provider-debt-table .col-stt {
  width: 57px;
  text-align: center;
}
.provider-debt-table .col-period {
  width: 242px;
}
.provider-debt-table .col-code {
  width: 178px;
}

.provider-debt-period {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.provider-debt-period strong {
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-period span {
  color: #8c8c8c;
  font-family: "Inter-Regular", sans-serif;
}

.provider-debt-code {
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-code--muted {
  color: #8c8c8c;
}

.provider-debt-amount {
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-amount--discount {
  color: #e63a46;
}
.provider-debt-amount--partner {
  color: #038b5c;
}

.provider-debt-status {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 24px;
  font-size: 14px;
  line-height: 20px;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.provider-debt-status i {
  font-size: 14px;
}
.provider-debt-status--pending {
  background: #fff1cc;
  color: #684e09;
}
.provider-debt-status--paid {
  background: #dff6ec;
  color: #038b5c;
}

.ncc-list-booking-page .affiliate-toolbar {
  margin-bottom: 16px;
}

.ncc-booking-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin-bottom: 16px;
}

.ncc-booking-stat {
  background: #fff;
  border-radius: 16px;
  padding: 16px 24px;
  min-height: 104px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.ncc-booking-stat p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #2a3b5b;
  font-family: "Inter-SemiBold", sans-serif;
}
.ncc-booking-stat h3 {
  margin: 0;
  font-size: 28px;
  line-height: 36px;
  font-family: "Inter-Bold", sans-serif;
}
.ncc-booking-stat--all {
  border-left: 2px solid #f8ba16;
}
.ncc-booking-stat--all h3 {
  color: #0652b0;
}
.ncc-booking-stat--pending h3 {
  color: #f8ba16;
}
.ncc-booking-stat--done h3 {
  color: #038b5c;
}
.ncc-booking-stat--cancel h3 {
  color: #e63a46;
}

.ncc-booking-filters {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  padding: 16px 24px;
  background: #fff;
  border-radius: 16px;
}

.ncc-booking-filter {
  flex: 1 1 0;
  min-width: 0;
  height: 40px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #f5f6f8;
  padding: 0 12px;
  font-size: 14px;
  line-height: 22px;
  color: #8c8c8c;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-family: "Inter-Regular", sans-serif;
}
.ncc-booking-filter i {
  color: #0652b0;
  font-size: 12px;
}

.ncc-booking-reset {
  flex-shrink: 0;
  border: 0;
  background: transparent;
  padding: 0 8px;
  font-size: 14px;
  line-height: 20px;
  color: #e63a46;
  font-family: "Inter-Regular", sans-serif;
}

.ncc-booking-table-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}
.ncc-booking-table-card__head {
  padding: 16px 24px;
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "Inter-SemiBold", sans-serif;
}

.ncc-booking-table-wrap {
  overflow-x: auto;
}

.ncc-booking-table {
  width: 100%;
  margin: 0;
  border-collapse: collapse;
  min-width: 1400px;
}
.ncc-booking-table thead th {
  padding: 12px 16px;
  background: #f2f4f7;
  border-bottom: 0.5px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  font-size: 14px;
  line-height: 20px;
  color: #2a3b5b;
  text-transform: uppercase;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.ncc-booking-table thead th:last-child {
  border-right: 0;
}
.ncc-booking-table thead th.is-right {
  text-align: right;
}
.ncc-booking-table thead th.is-center {
  text-align: center;
}
.ncc-booking-table tbody td {
  padding: 10px 16px;
  border-bottom: 1px solid #dbdfe7;
  border-right: 0.5px solid #dbdfe7;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  vertical-align: middle;
  font-family: "Inter-Regular", sans-serif;
}
.ncc-booking-table tbody td:last-child {
  border-right: 0;
}
.ncc-booking-table tbody td.is-right {
  text-align: right;
}
.ncc-booking-table tbody td.is-center {
  text-align: center;
}
.ncc-booking-table tbody tr {
  min-height: 64px;
}
.ncc-booking-table tbody tr.is-alt td {
  background: #fafbfc;
}

.ncc-booking-code {
  font-family: "Inter-SemiBold", sans-serif;
}

.ncc-booking-tour {
  max-width: 320px;
}

.ncc-booking-pax {
  display: flex;
  flex-direction: column;
  gap: 4px;
  white-space: nowrap;
}

.ncc-booking-customer {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 280px;
}

.ncc-booking-avatar {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
  font-family: "Inter-SemiBold", sans-serif;
}
.ncc-booking-avatar--orange {
  background: #f5a623;
}
.ncc-booking-avatar--green {
  background: #1ba672;
}
.ncc-booking-avatar--red {
  background: #e63a46;
}
.ncc-booking-avatar--blue {
  background: #0194f3;
}
.ncc-booking-avatar--purple {
  background: #8b5df3;
}
.ncc-booking-avatar--navy {
  background: #2a3b5b;
}

.ncc-booking-customer__info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ncc-booking-customer__info strong {
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-SemiBold", sans-serif;
}

.ncc-booking-source {
  display: inline-flex;
  align-items: center;
  padding: 4px 8px;
  border-radius: 24px;
  font-size: 12px;
  line-height: 12px;
  font-family: "Inter-Medium", sans-serif;
}
.ncc-booking-source--beka {
  background: #e6f4fe;
  color: #0652b0;
}
.ncc-booking-source--ctv {
  background: #fff1cc;
  color: #684e09;
}

.ncc-booking-amount {
  font-family: "Inter-SemiBold", sans-serif;
}
.ncc-booking-amount--partner {
  color: #038b5c;
}
.ncc-booking-amount--struck {
  color: #8c8c8c;
  text-decoration: line-through;
}

.ncc-booking-status {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: 24px;
  font-size: 14px;
  line-height: 20px;
  white-space: nowrap;
  font-family: "Inter-SemiBold", sans-serif;
}
.ncc-booking-status i {
  font-size: 14px;
}
.ncc-booking-status--new {
  background: #fff1cc;
  color: #684e09;
}
.ncc-booking-status--cancel {
  background: #ffe4e0;
  color: #e63a46;
}
.ncc-booking-status--done {
  background: #dff6ec;
  color: #038b5c;
}

.ncc-booking-view {
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 8px;
  background: #fff1cc;
  color: #684e09;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
.ncc-booking-view i {
  font-size: 16px;
}

.ncc-booking-pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 24px;
  background: #fafbfc;
  font-size: 14px;
  line-height: 20px;
  color: #121212;
  font-family: "Inter-Regular", sans-serif;
}
.ncc-booking-pagination strong {
  font-family: "Inter-SemiBold", sans-serif;
}

.provider-profile-page .affiliate-profile__side {
  flex: 0 0 400px;
  max-width: 400px;
}

.affiliate-profile-card__metrics {
  list-style: none;
  margin: 0;
  padding: 17px 0 0;
  border-top: 1px solid #f1f2f4;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.affiliate-profile-card__metrics li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.affiliate-profile-card__metrics span {
  flex: 1;
  font-size: 14px;
  line-height: 20px;
  color: #8c8c8c;
  text-transform: uppercase;
  font-family: "Inter-Regular", sans-serif;
}
.affiliate-profile-card__metrics strong {
  flex: 1;
  text-align: right;
  font-size: 16px;
  line-height: 24px;
  color: #0c0c0c;
  font-family: "Inter-SemiBold", sans-serif;
}
.affiliate-profile-card__metrics strong.is-green {
  color: #038b5c;
}

@media (max-width: 1199px) {
  .provider-profile-page .affiliate-profile {
    flex-direction: column;
  }
  .provider-profile-page .affiliate-profile__side {
    flex: 1 1 auto;
    max-width: none;
    width: 100%;
  }
}
.auth-page {
  min-height: 100vh;
  background: #fff;
}
.auth-page__layout {
  display: flex;
  min-height: 100vh;
  box-shadow: 0 0 15px rgba(19, 77, 138, 0.15);
}
.auth-page__hero {
  position: relative;
  flex: 1 1 0;
  min-height: 812px;
  overflow: hidden;
}
.auth-page__hero-bg {
  position: absolute;
  inset: 0;
}
.auth-page__hero-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.auth-page__hero-content {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 122px 68px 40px;
}
.auth-page__hero-title {
  margin: 0;
  color: #fff;
  font-family: "SemiBold", sans-serif;
  font-size: 56px;
  line-height: 64px;
}
.auth-page__hero-logo {
  display: block;
  width: 318px;
  max-width: 100%;
  height: auto;
}
.auth-page__panel {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 0 0 625px;
  width: 625px;
  min-height: 812px;
  padding: 40px;
  background: #fff;
}
.auth-page__panel--scrollable {
  justify-content: flex-start;
  overflow-y: auto;
}
.auth-page__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 24px;
}
.auth-page__title {
  margin: 0;
  color: #000;
  font-family: "Bold", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.auth-page__lang {
  display: inline-flex;
  align-items: center;
  gap: 0;
  padding: 4px;
  border: 0;
  border-radius: 42px;
  background: #f1f4f5;
  cursor: pointer;
}
.auth-page__lang img {
  display: block;
  flex-shrink: 0;
}
.auth-page__lang span {
  padding: 0 6px;
  color: #222;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 24px;
}
.auth-page__lang-flag {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #da251d;
  color: #fffd00;
  font-size: 12px;
  box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
}
.auth-page__lang-chevron {
  font-size: 12px;
  color: #222;
}
.auth-page__form {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.auth-page__row {
  display: flex;
  gap: 16px;
  width: 100%;
}
.auth-page__row > .auth-field {
  flex: 1 1 0;
  min-width: 0;
}
.auth-page__row--tight {
  gap: 8px;
}
.auth-page__actions {
  margin-top: 8px;
}
.auth-page__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 48px;
  margin: 0;
  padding: 16px 108px;
  border: 0;
  border-radius: 12px;
  background: #f8ba16;
  box-shadow: 0 8px 10px rgba(245, 166, 35, 0.4);
  color: #1d2a5c;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  cursor: pointer;
  transition: background 0.2s;
}
.auth-page__submit:hover, .auth-page__submit:focus {
  background: #f6c24d;
  color: #1d2a5c;
  outline: none;
}
.auth-page__footer {
  margin-top: 24px;
  color: #0c0c0c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
}
.auth-page__footer a {
  color: #f8ba16;
  text-decoration: none;
}
.auth-page__footer a:hover, .auth-page__footer a:focus {
  color: #f6c24d;
  text-decoration: none;
}
@media (max-width: 1199px) {
  .auth-page__layout {
    flex-direction: column;
  }
  .auth-page__hero {
    min-height: 420px;
  }
  .auth-page__hero-content {
    padding: 48px 24px;
  }
  .auth-page__hero-title {
    font-size: 40px;
    line-height: 48px;
  }
  .auth-page__panel {
    flex: 1 1 auto;
    width: 100%;
    min-height: auto;
  }
}
@media (max-width: 767px) {
  .auth-page__hero {
    min-height: 320px;
  }
  .auth-page__hero-title {
    font-size: 32px;
    line-height: 40px;
  }
  .auth-page__hero-logo {
    width: 240px;
  }
  .auth-page__panel {
    padding: 24px 16px;
  }
  .auth-page__row {
    flex-direction: column;
    gap: 16px;
  }
  .auth-page__submit {
    padding-left: 24px;
    padding-right: 24px;
  }
  .auth-page .auth-radio-group {
    gap: 16px 24px;
  }
  .auth-page .auth-captcha {
    flex-direction: column;
    align-items: stretch;
  }
  .auth-page .auth-captcha__box {
    flex: 0 0 auto;
    width: 100%;
  }
  .auth-page .auth-form-extras {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}

.auth-form-section {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.auth-form-section.is-hidden {
  display: none;
}

.auth-field {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.auth-field__label {
  margin: 0;
  padding-bottom: 4px;
  color: #555d6e;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 20px;
}
.auth-field__label .is-required {
  color: #da100b;
  font-family: "SemiBold", sans-serif;
}
.auth-field__label--lg {
  color: #0c0c0c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
}
.auth-field__label--lg .is-required {
  color: #e63a46;
}
.auth-field__control {
  display: flex;
  align-items: center;
  width: 100%;
  height: 40px;
  padding: 8px 12px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #f5f6f8;
}
.auth-field__control input {
  flex: 1 1 0;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #0c0c0c;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 20px;
  outline: none;
  box-shadow: none;
}
.auth-field__control input::placeholder {
  color: #8c8c8c;
}
.auth-field__toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  margin-left: 8px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: #555d6e;
  font-size: 14px;
  line-height: 1;
}

.auth-radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.auth-radio {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  cursor: pointer;
}
.auth-radio input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.auth-radio__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  font-size: 20px;
  line-height: 1;
}
.auth-radio__icon-off {
  display: block;
  color: #d8d8d8;
}
.auth-radio__icon-on {
  display: none;
  color: #f8ba16;
}
input:checked + .auth-radio__icon .auth-radio__icon-off {
  display: none;
}
input:checked + .auth-radio__icon .auth-radio__icon-on {
  display: block;
}
.auth-radio__text {
  color: #0c0c0c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  white-space: nowrap;
}

.auth-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin: 0;
  cursor: pointer;
}
.auth-checkbox input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.auth-checkbox__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  font-size: 20px;
  line-height: 1;
}
.auth-checkbox__icon-off {
  display: block;
  color: #d8d8d8;
}
.auth-checkbox__icon-on {
  display: none;
  color: #f8ba16;
}
input:checked + .auth-checkbox__icon .auth-checkbox__icon-off {
  display: none;
}
input:checked + .auth-checkbox__icon .auth-checkbox__icon-on {
  display: block;
}
.auth-checkbox__text {
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.auth-checkbox__text a {
  color: #121212;
  font-family: "SemiBold", sans-serif;
  text-decoration: underline;
}
.auth-checkbox__text a:hover, .auth-checkbox__text a:focus {
  color: #1d2a5c;
}

.auth-captcha {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  width: 100%;
}
.auth-captcha__field {
  flex: 1 1 0;
  min-width: 0;
}
.auth-captcha__box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 0 0 232px;
  width: 232px;
  height: 40px;
  padding: 0 3px 0 13px;
  border-radius: 4px;
  background: #b6ceff;
  overflow: hidden;
}
.auth-captcha__image {
  display: block;
  width: 159px;
  height: auto;
  max-height: 37px;
  object-fit: contain;
}
.auth-captcha__reload {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  color: #1d2a5c;
  font-size: 18px;
  line-height: 1;
}

.auth-form-extras {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.auth-forgot-link {
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-align: right;
  text-decoration: none;
  white-space: nowrap;
}
.auth-forgot-link:hover, .auth-forgot-link:focus {
  color: #1d2a5c;
  text-decoration: none;
  opacity: 0.85;
}

.booking-page {
  background: #f5f6f8;
}

.booking-stepper {
  background: #fff;
  padding: 16px 0;
  border-bottom: 1px solid #e8eaef;
}
.booking-stepper__wrap {
  position: relative;
  max-width: 1320px;
  margin: 0 auto;
  min-height: 54px;
}
.booking-stepper__lines {
  position: absolute;
  top: 11px;
  left: 0;
  right: 0;
  height: 2px;
  pointer-events: none;
}
.booking-stepper__segment {
  position: absolute;
  top: 0;
  height: 2px;
  border-radius: 16px;
}
.booking-stepper__segment--primary {
  left: 6.59%;
  width: 31.21%;
  background: #1d2a5c;
}
.booking-stepper__segment--muted {
  background: #d8d8d8;
}
.booking-stepper__segment--muted:nth-of-type(2) {
  left: 40.23%;
  width: 28.33%;
}
.booking-stepper__segment--muted.is-last {
  left: 71.06%;
  width: 25.38%;
}
.booking-stepper__list {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 54px;
  padding: 0 44px 0 59px;
}
.booking-stepper__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 0 auto;
  max-width: 200px;
  text-align: center;
}
.booking-stepper__icon {
  width: 24px;
  height: 24px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  padding: 0 20px;
  background: #fff;
  border-radius: 50%;
}
.booking-stepper__icon i {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  flex: 0 0 auto;
  border-radius: 50%;
  font-size: 10px;
  line-height: 1;
  color: #fff;
}
.booking-stepper__item.is-done .booking-stepper__icon i {
  background: #1d2a5c;
  font-size: 11px;
}
.booking-stepper__item.is-active .booking-stepper__icon i {
  background: #f8ba16;
  font-size: 12px;
}
.booking-stepper__item.is-upcoming .booking-stepper__icon i {
  background: #d8d8d8;
}
.booking-stepper__label {
  display: block;
  margin-top: 8px;
  font-size: 14px;
  line-height: 22px;
  color: #8c8c8c;
  white-space: nowrap;
}
.booking-stepper__item.is-done .booking-stepper__label, .booking-stepper__item.is-active .booking-stepper__label {
  color: #262626;
  font-family: "Medium", sans-serif;
}
.booking-stepper__item.is-upcoming .booking-stepper__label {
  color: #8c8c8c;
  font-weight: 400;
}
.booking-stepper--payment .booking-stepper__segment--second {
  left: 40.23%;
  width: 28.33%;
  background: #1d2a5c;
}
.booking-stepper--complete .booking-stepper__segment--second {
  left: 40.23%;
  width: 28.33%;
  background: #1d2a5c;
}
.booking-stepper--complete .booking-stepper__segment.is-last {
  left: 71.06%;
  width: 25.38%;
  background: #1d2a5c;
}
.booking-stepper--complete .booking-stepper__item.is-active .booking-stepper__label {
  color: #121212;
}

.booking-content {
  padding: 40px 0 64px;
}
.booking-content__row {
  display: flex;
  align-items: flex-start;
}

.booking-panel {
  background: #fff;
  border: 1px solid #e7ebf2;
  border-radius: 16px;
  padding: 24px;
  margin-bottom: 24px;
}
.booking-panel--information, .booking-panel--contact {
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}
.booking-panel__fields {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.booking-panel__head {
  margin-bottom: 0;
}
.booking-panel__desc {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-panel__title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 8px;
}
.booking-panel__title h2 {
  margin: 0;
  font-size: 24px;
  line-height: 32px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
}
.booking-panel__step {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 6px;
  background: #e6f4fe;
  color: #0652b0;
  font-size: 18px;
  line-height: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Bold", sans-serif;
}
.booking-panel:not(.booking-panel--information):not(.booking-panel--contact):not(.booking-panel--payment) .booking-panel__head p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-panel--payment {
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}
.booking-panel__head--split {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 32px;
  width: 100%;
}

.booking-label--plain {
  margin-bottom: 6px;
}

.booking-label {
  display: block;
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Medium", sans-serif;
}
.booking-label__req {
  color: #d51604;
}
.booking-label__hint {
  color: #8c8c8c;
  font-weight: 400;
}

.booking-field-row {
  margin-bottom: 0;
}
.booking-field-row--tight {
  margin-left: -4px;
  margin-right: -4px;
}
.booking-field-row--tight > [class*=col-] {
  padding-left: 4px;
  padding-right: 4px;
}
.booking-field-row--single {
  margin-bottom: 0;
}
.booking-field-row label:not(.booking-label) {
  display: block;
  margin-bottom: 6px;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
}
.booking-field-row label:not(.booking-label) span {
  color: #d51604;
}

.booking-panel--information .booking-field-row {
  margin-bottom: 0;
}

.booking-field {
  height: 44px;
  border: 1px solid #e7ebf2;
  border-radius: 44px;
  background: #fff;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
}
.booking-field input,
.booking-field textarea,
.booking-field select {
  flex: 1;
  min-width: 0;
  width: 100%;
  border: 0;
  background: transparent;
  box-shadow: none;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  padding: 0;
}
.booking-field input::placeholder,
.booking-field textarea::placeholder,
.booking-field select::placeholder {
  color: #8c8c8c;
}
.booking-field input:focus,
.booking-field textarea:focus,
.booking-field select:focus {
  outline: none;
}
.booking-field select.booking-count-select,
.booking-field input.booking-count-input {
  appearance: none;
  -webkit-appearance: none;
  cursor: text;
}
.booking-field input.booking-count-input::-webkit-outer-spin-button, .booking-field input.booking-count-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.booking-field input.booking-count-input {
  -moz-appearance: textfield;
}
.booking-field--focus {
  border-color: #f8ba16;
}
.booking-field--icon .booking-field__icon {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
}
.booking-field--select .booking-field__chevron {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  margin-left: auto;
  transform: rotate(90deg);
}
.booking-field--phone {
  gap: 8px;
  border-color: #d8d8d8;
  padding-top: 10px;
  padding-bottom: 10px;
}
.booking-field--phone .booking-field__country {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex: 0 0 auto;
  border: 0;
  background: transparent;
  padding: 0;
  cursor: pointer;
}
.booking-field--phone .booking-field__flag {
  flex: 0 0 27px;
  width: 27px;
  height: 20px;
  object-fit: contain;
}
.booking-field--phone .booking-field__chevron--sm {
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  transform: rotate(90deg);
  margin-left: 0;
}
.booking-field--phone .booking-field__divider {
  flex: 0 0 1px;
  align-self: stretch;
  width: 1px;
  min-height: 24px;
  background: #d8d8d8;
}
.booking-field--textarea {
  height: 100px;
  min-height: 100px;
  align-items: flex-start;
  border-radius: 16px;
  border-color: #d8d8d8;
  padding: 10px 16px;
}
.booking-field--textarea textarea {
  resize: none;
  min-height: 80px;
  line-height: 24px;
}

.booking-regulations {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 8px;
  font-size: 14px;
  line-height: 22px;
  color: #262626;
  text-decoration: none;
}
.booking-regulations:hover, .booking-regulations:focus {
  color: #262626;
  text-decoration: underline;
}
.booking-regulations img {
  flex: 0 0 20px;
  width: 20px;
  height: 20px;
}

.booking-divider {
  border: 0;
  border-top: 1px solid #e7ebf2;
  margin: 0;
}
.booking-divider--dashed {
  border: 0;
  height: 0;
  border-top: 1px dashed #d8d8d8;
  margin: 0;
}

#booking-customers-list {
  display: flex;
  flex-direction: column;
  width: 100%;
}
#booking-customers-list > .booking-divider--dashed {
  margin: 24px 0;
}

.booking-customer {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
.booking-customer h3 {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #5c8eca;
  text-transform: uppercase;
  font-family: "Medium", sans-serif;
}
.booking-customer__fields {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}

.booking-radios--split {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 24px;
  width: 100%;
}
.booking-radios__group {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.booking-radios__question {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Medium", sans-serif;
}
.booking-radios__options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 159px;
  max-width: 100%;
}
.booking-radios p {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
}

.booking-radio {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-weight: 400;
  cursor: pointer;
}
.booking-radio input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
}
.booking-radio__mark {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  background: url("../assets/svg/booking/radio-unchecked.svg") center/contain no-repeat;
}
input:checked + .booking-radio__mark {
  background-image: url("../assets/svg/booking/radio-checked.svg");
}
.booking-radio__text {
  line-height: 24px;
}

.booking-actions {
  display: flex;
  justify-content: center;
  margin-top: 8px;
}
.booking-actions__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 342px;
  height: 48px;
  border: 0;
  border-radius: 8px;
  background: #1d2a5c;
  color: #f8ba16;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
  font-family: "SemiBold", sans-serif;
}
.booking-actions__btn:hover, .booking-actions__btn:focus {
  color: #f8ba16;
  background: #152247;
  text-decoration: none;
}
.booking-actions__btn--booking {
  min-width: 342px;
  border-radius: 12px;
  background: #f8ba16;
  color: #1d2a5c;
  text-transform: uppercase;
  box-shadow: 0 8px 10px rgba(245, 166, 35, 0.4);
}
.booking-actions__btn--booking:hover, .booking-actions__btn--booking:focus {
  background: #e5ab14;
  color: #1d2a5c;
}

.booking-summary {
  position: sticky;
  top: 24px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 2px 4px rgba(6, 21, 86, 0.15);
  overflow: hidden;
}
.booking-summary__tour {
  display: flex;
  gap: 8px;
  padding: 16px;
  border-bottom: 1px solid #e8eaef;
}
.booking-summary__tour > img {
  width: 100px;
  height: 88px;
  border-radius: 12px;
  object-fit: cover;
  flex: 0 0 100px;
}
.booking-summary__tour h3 {
  margin: 0 0 12px;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
}
.booking-summary__tour p {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
}
.booking-summary__tour p img {
  width: 24px;
  height: 24px;
}
.booking-summary__meta {
  padding: 16px;
  border-radius: 12px;
}
.booking-summary__meta-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
}
.booking-summary__meta-row span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 22px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-summary__meta-row span img {
  width: 24px;
  height: 24px;
}
.booking-summary__meta-row strong {
  font-size: 14px;
  line-height: 22px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}
.booking-summary__divider {
  border: 0;
  border-top: 1px dashed #d8d8d8;
  margin: 0 16px;
}
.booking-summary__price {
  padding: 0 16px 16px;
}
.booking-summary__price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
}
.booking-summary__price-row p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-summary__price-row span {
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-summary__price-row > strong {
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
}
.booking-summary__promo {
  display: flex;
  gap: 8px;
  padding: 0 16px 16px;
}
.booking-summary__promo input {
  flex: 1;
  height: 40px;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  padding: 0 16px;
  font-size: 14px;
  color: #8c8c8c;
  box-shadow: none;
}
.booking-summary__promo input::placeholder {
  color: #8c8c8c;
}
.booking-summary__promo button {
  height: 40px;
  border: 0;
  border-radius: 8px;
  background: #1d2a5c;
  color: #f8ba16;
  padding: 0 16px;
  font-size: 14px;
  line-height: 22px;
  font-family: "SemiBold", sans-serif;
}
.booking-summary__discount {
  padding: 0 16px 16px;
}
.booking-summary__discount > p {
  margin: 0 0 8px;
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-summary__discount-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.booking-summary__discount-row span {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 22px;
  color: #37a13b;
}
.booking-summary__discount-row span img {
  width: 16px;
  height: 16px;
}
.booking-summary__discount-row strong {
  font-size: 14px;
  line-height: 22px;
  color: #37a13b;
  font-family: "Medium", sans-serif;
}
.booking-summary__total {
  padding: 16px;
  border-top: 0.5px solid #f8ba16;
  background: linear-gradient(180deg, #fff5d6 0%, #fff 100%);
}
.booking-summary__total-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.booking-summary__total-head > div:first-child p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}
.booking-summary__total-head > div:first-child span {
  font-size: 12px;
  line-height: 20px;
  color: #684e09;
}
.booking-summary__total-price {
  text-align: right;
}
.booking-summary__total-price h4 {
  margin: 0;
  font-size: 40px;
  line-height: 40px;
  color: #b08410;
  text-transform: uppercase;
  font-family: "SemiBold", sans-serif;
}
.booking-summary__total-price p {
  margin: 8px 0 0;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  font-size: 14px;
  line-height: 22px;
  color: #684e09;
  font-family: "SemiBold", sans-serif;
}
.booking-summary__total-price p img {
  width: 16px;
  height: 16px;
}
.booking-summary__notes {
  padding: 0;
  margin: 16px 0 0;
  list-style: none;
}
.booking-summary__notes li {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  font-size: 14px;
  line-height: 22px;
  color: #2a3b5b;
}
.booking-summary__notes li img {
  width: 16px;
  height: 16px;
}
.booking-summary__notes li:last-child {
  margin-bottom: 0;
}

.booking-payment__timer {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
}
.booking-payment__timer strong {
  font-size: 24px;
  line-height: 32px;
  color: #f5a623;
  font-family: "SemiBold", sans-serif;
}
.booking-payment__methods {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 100%;
}
.booking-payment__method {
  border: 1px solid #dbdfe7;
  border-radius: 8px;
  padding: 24px;
  width: 100%;
}
.booking-payment__method.is-selected {
  border-color: #dbdfe7;
}
.booking-payment__method-head {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin: 0;
  cursor: pointer;
  width: 100%;
}
.booking-payment__method-info {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  min-width: 0;
}
.booking-payment__method-title {
  display: block;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Medium", sans-serif;
}
.booking-payment__method-title--icon {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.booking-payment__method-body {
  display: none;
  margin-top: 16px;
}
.booking-payment__method.is-expanded .booking-payment__method-body {
  display: block;
}
.booking-payment__cards {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.booking-payment__cards img {
  width: 40px;
  height: 24px;
  object-fit: contain;
}
.booking-payment__card-form {
  background: #fafbfd;
  border: 1.5px dashed #e7ebf2;
  border-radius: 8px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.booking-payment__credit {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
}
.booking-payment__credit-balance {
  font-size: 16px;
  line-height: 24px;
  color: #8c8c8c;
}
.booking-payment__credit-balance strong {
  color: #121212;
  font-weight: 600;
}
.booking-payment__topup {
  height: 30px;
  border: 0;
  border-radius: 4px;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 14px;
  line-height: 22px;
  padding: 0 16px;
  text-transform: uppercase;
  box-shadow: 0 8px 10px rgba(245, 166, 35, 0.4);
  font-family: "SemiBold", sans-serif;
}
.booking-payment__credit-note {
  display: block;
  font-size: 12px;
  line-height: 20px;
  font-style: italic;
  color: #dc2626;
}
.booking-payment__terms {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  padding: 10px 16px;
  border-radius: 8px;
  background: #e6f4fe;
  cursor: pointer;
  font-family: "Regular", sans-serif !important;
  font-weight: 400;
}
.booking-payment__terms input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.booking-payment__checkbox {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  margin-top: 2px;
  background: url("../assets/svg/booking/icon-checkbox-checked.svg") center/contain no-repeat;
}
.booking-payment__terms-text {
  flex: 1;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
}
.booking-payment__terms-text a {
  color: #1d2a5c;
  text-decoration: underline;
  font-family: "Medium", sans-serif;
}
.booking-payment__terms-text a:hover, .booking-payment__terms-text a:focus {
  color: #0652b0;
}

.booking-payment-field__label {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
  line-height: 22px;
  color: #555d6e;
  font-family: "Medium", sans-serif;
}
.booking-payment-field__label span {
  color: #da100b;
  font-weight: 600;
}
.booking-payment-field__input {
  border-radius: 8px;
}
.booking-payment-field__input input {
  width: 100%;
  border: 1px solid #e7ebf2;
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  box-shadow: none;
}
.booking-payment-field__input input::placeholder {
  color: #8c8c8c;
}
.booking-payment-field__input input:focus {
  outline: none;
}
.booking-payment-field__input--focus {
  padding: 3px;
  border: 3px solid rgba(248, 186, 22, 0.15);
  border-radius: 8px;
}
.booking-payment-field__input--focus input {
  border-color: #f8ba16;
}

.booking-payment-field-row {
  margin-left: -8px;
  margin-right: -8px;
}
.booking-payment-field-row > [class*=col-] {
  padding-left: 8px;
  padding-right: 8px;
}

.booking-complete__hero {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
  padding: 40px 0 32px;
  text-align: center;
}
.booking-complete__success-icon {
  width: 72px;
  height: 72px;
}
.booking-complete__hero-text {
  max-width: 832px;
}
.booking-complete__hero-text h1 {
  margin: 0 0 16px;
  font-size: 32px;
  line-height: 40px;
  color: #1d2a5c;
  text-transform: uppercase;
  font-family: "Medium", sans-serif;
}
.booking-complete__hero-text p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #5a6b85;
}
.booking-complete__code {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  max-width: 540px;
  width: 100%;
  padding: 8px 56px;
  border: 2px dashed #f8ba16;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 12px 16px rgba(13, 28, 57, 0.1), 0 2px 4px rgba(13, 28, 57, 0.04);
}
.booking-complete__code-label {
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}
.booking-complete__code-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
.booking-complete__code-row strong {
  font-size: 20px;
  line-height: 28px;
  color: #88660c;
  font-family: "SemiBold", sans-serif;
}
.booking-complete__copy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.booking-complete__copy img {
  width: 20px;
  height: 20px;
}
.booking-complete__copy.is-copied {
  opacity: 0.6;
}
.booking-complete__divider {
  border: 0;
  border-top: 1px solid #d8d8d8;
  margin: 0;
}
.booking-complete__divider--dashed {
  border-top-style: dashed;
}
.booking-complete__section-title {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #5c8eca;
  text-transform: uppercase;
  font-family: "Medium", sans-serif;
}
.booking-complete__actions {
  margin-top: 24px;
}

.booking-panel--complete-details,
.booking-panel--help {
  border: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-bottom: 24px;
}

.booking-complete-details__title {
  margin-bottom: 0;
}
.booking-complete-details__icon {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: 6px;
  background: #e6f4fe;
  display: flex;
  align-items: center;
  justify-content: center;
}
.booking-complete-details__tour {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}
.booking-complete-details__tour > img {
  width: 100px;
  height: 88px;
  border-radius: 12px;
  object-fit: cover;
  flex: 0 0 100px;
}
.booking-complete-details__tour h3 {
  margin: 0 0 16px;
  font-size: 20px;
  line-height: 28px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}
.booking-complete-details__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
}
.booking-complete-details__meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 22px;
  color: #1d2a5c;
  white-space: nowrap;
  font-family: "Medium", sans-serif;
}
.booking-complete-details__meta span img {
  width: 24px;
  height: 24px;
}

.booking-complete-guest {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.booking-complete-guest__heading {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Medium", sans-serif;
}
.booking-complete-guest__row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.booking-complete-field {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.booking-complete-field--name {
  flex: 0 0 200px;
  max-width: 200px;
}
.booking-complete-field--narrow {
  flex: 0 0 60px;
  max-width: 60px;
}
.booking-complete-field__label {
  font-size: 14px;
  line-height: 22px;
  color: #8c8c8c;
}
.booking-complete-field__value {
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "SemiBold", sans-serif;
}

.booking-complete-guest .booking-complete-field__value {
  font-family: "Medium", sans-serif;
  color: #0b1f3a;
}

.booking-complete-booker {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.booking-complete-booker__profile {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 0 0 200px;
  max-width: 200px;
}
.booking-complete-booker__avatar {
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, #65e8b7 0%, #1ba672 100%);
  color: #fff;
  font-size: 20px;
  line-height: 48px;
  text-align: center;
  font-family: "SemiBold", sans-serif;
}

.booking-help {
  display: flex;
  gap: 16px;
}
.booking-help__card {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 16px;
  border-radius: 12px;
  background: #f5f5f5;
  min-width: 0;
}
.booking-help__icon {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 2px 2px rgba(6, 21, 86, 0.15);
}
.booking-help__text {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.booking-help__text strong {
  font-size: 14px;
  line-height: 22px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}
.booking-help__text span {
  font-size: 14px;
  line-height: 22px;
  color: rgba(29, 42, 92, 0.7);
}

.booking-complete-total {
  position: sticky;
  top: 24px;
  background: #fff;
  border-radius: 16px;
  box-shadow: 0 2px 4px rgba(6, 21, 86, 0.15);
  overflow: hidden;
}
.booking-complete-total__inner {
  padding: 16px;
  border-top: 0.5px solid #f8ba16;
  background: linear-gradient(180deg, #fff5d6 0%, #fff 100%);
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.booking-complete-total h3 {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #684e09;
  text-transform: uppercase;
  font-family: "SemiBold", sans-serif;
}
.booking-complete-total__rows {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.booking-complete-total__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.booking-complete-total__row p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-complete-total__row span {
  font-size: 16px;
  line-height: 24px;
  color: rgba(29, 42, 92, 0.7);
}
.booking-complete-total__row > strong {
  font-size: 18px;
  line-height: 26px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
}
.booking-complete-total__row > strong.is-discount {
  color: #37a13b;
}
.booking-complete-total__divider {
  border: 0;
  border-top: 1px dashed #d8d8d8;
  margin: 0;
}
.booking-complete-total__paid {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}
.booking-complete-total__paid-label p {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}
.booking-complete-total__paid-label span {
  display: block;
  margin-top: 4px;
  font-size: 12px;
  line-height: 20px;
  color: #684e09;
}
.booking-complete-total__paid-info {
  text-align: right;
}
.booking-complete-total__paid-info h4 {
  margin: 0;
  font-size: 40px;
  line-height: 40px;
  color: #b08410;
  text-transform: uppercase;
  font-family: "SemiBold", sans-serif;
}
.booking-complete-total__paid-info p {
  margin: 8px 0 0;
  font-size: 12px;
  line-height: 18px;
  color: rgba(29, 42, 92, 0.7);
}

@media screen and (max-width: 991px) {
  .booking-stepper__wrap {
    overflow-x: auto;
    padding-bottom: 8px;
  }
  .booking-stepper__list {
    min-width: 900px;
    padding: 0 24px;
  }
  .booking-stepper__label {
    white-space: normal;
    max-width: 120px;
  }
  .booking-content__row {
    display: block;
  }
  .booking-summary {
    position: static;
    margin-top: 24px;
  }
  .booking-actions__btn {
    width: 100%;
    min-width: 0;
  }
  .booking-radios--split {
    flex-direction: column;
    gap: 24px;
  }
  .booking-panel__head--split {
    flex-direction: column;
    gap: 16px;
  }
  .booking-payment__timer {
    width: 100%;
    flex-wrap: wrap;
  }
  .booking-complete__code {
    padding-left: 24px;
    padding-right: 24px;
  }
  .booking-complete-details__meta {
    flex-direction: column;
    gap: 12px;
  }
  .booking-complete-guest__row,
  .booking-complete-booker {
    flex-wrap: wrap;
  }
  .booking-complete-field--name,
  .booking-complete-booker__profile {
    flex: 1 1 100%;
    max-width: 100%;
  }
  .booking-help {
    flex-direction: column;
  }
  .booking-complete-total {
    position: static;
    margin-top: 24px;
  }
}
.tailor-page {
  background: #f5f6f8;
}

.page-hero--tailor-made::before {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 57.168%, rgba(0, 0, 0, 0.7) 100%);
}

.tailor-made {
  padding: 40px 0 64px;
}
.tailor-made .booking-panel {
  border: 0;
  border-radius: 8px;
  margin-bottom: 24px;
}
.tailor-made .booking-panel:last-of-type {
  margin-bottom: 0;
}
.tailor-made__submit-wrap {
  display: flex;
  justify-content: center;
  margin-top: 24px;
}
.tailor-made__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 300px;
  height: 56px;
  padding: 0 16px;
  border: 0;
  border-radius: 49px;
  background: #f8ba16;
  color: #1d2a5c;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  box-shadow: 0 8px 10px rgba(245, 166, 35, 0.4);
  cursor: pointer;
  font-family: "SemiBold", sans-serif;
}
.tailor-made__submit:hover, .tailor-made__submit:focus {
  background: #e5ab14;
  color: #1d2a5c;
  outline: none;
}

.tailor-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
  width: 100%;
}
.tailor-section__title {
  margin: 0;
  font-size: 18px;
  line-height: 26px;
  color: #5c8eca;
  text-transform: uppercase;
  font-family: "Medium", sans-serif;
}

.tailor-check-grid {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.tailor-check-grid__col {
  flex: 1 1 0;
  min-width: 200px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.tailor-check-grid--transport .tailor-check-grid__col {
  flex: 0 0 300px;
  min-width: 0;
}
.tailor-check-grid--accommodation {
  width: 100%;
}
.tailor-check-grid--accommodation > .tailor-check-grid__col {
  flex: 1 1 0;
  min-width: 0;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 24px;
}
.tailor-check-grid--meals {
  align-items: flex-start;
}
.tailor-check-grid--meals .tailor-check-grid__col--radios {
  flex: 1 1 320px;
  gap: 24px;
}

.tailor-check {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0;
  cursor: pointer;
  font-weight: 400;
}
.tailor-check input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.tailor-check__box {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  border: 2px solid #d8d8d8;
  border-radius: 2px;
  background: #fff;
  position: relative;
}
.tailor-check__box::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("../assets/svg/filter-check.svg") center/14px no-repeat;
  opacity: 0;
}
input:checked + .tailor-check__box {
  background: #f8ba16;
  border-color: #f8ba16;
}
input:checked + .tailor-check__box::after {
  opacity: 1;
}
.tailor-check__label {
  font-size: 16px;
  line-height: 24px;
  color: #121212;
}

.tailor-see-more {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border: 0;
  padding: 0;
  background: transparent;
  color: #f8ba16;
  font-size: 16px;
  line-height: 24px;
  cursor: pointer;
  font-family: "Medium", sans-serif;
}
.tailor-see-more img {
  width: 20px;
  height: 20px;
  transition: transform 0.2s;
}
.tailor-see-more.is-open img {
  transform: rotate(180deg);
}

.tailor-check-grid__extra {
  display: none;
  width: 100%;
}
.tailor-check-grid__extra.is-open {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
}
.tailor-check-grid__extra .tailor-check-grid__col {
  flex: 1 1 0;
  min-width: 200px;
}

.tailor-other-reqs {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 300px;
}
.tailor-other-reqs__title {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Medium", sans-serif;
}

.tailor-radios {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.tailor-radios__question {
  margin: 0;
  font-size: 16px;
  line-height: 24px;
  color: #121212;
  font-family: "Medium", sans-serif;
}
.tailor-radios__options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 159px;
  max-width: 100%;
}

@media screen and (max-width: 991px) {
  .tailor-check-grid {
    flex-direction: column;
  }
  .tailor-check-grid__col {
    min-width: 0;
    width: 100%;
  }
  .tailor-check-grid--transport .tailor-check-grid__col {
    flex: 1 1 auto;
  }
  .tailor-check-grid--accommodation > .tailor-check-grid__col {
    flex-direction: column;
    gap: 16px;
  }
  .tailor-made__submit {
    width: 100%;
    min-width: 0;
  }
}
.tour-list-filters {
  padding: 30px 0;
  background: #fff;
}

.tour-list-filters__inner {
  display: flex;
  align-items: center;
  gap: 16px;
}

.tour-list-filters__track-wrap {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}

.tour-list-filters__track {
  display: flex;
  align-items: center;
  gap: 8px;
  overflow-x: auto;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.tour-list-filters__track::-webkit-scrollbar {
  display: none;
}

.tour-list-filters__divider {
  flex-shrink: 0;
  width: 1px;
  height: 36px;
  background: #d8d8d8;
}

.tour-list-filter {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 36px;
  padding: 4px 12px 4px 16px;
  border: 1px solid #d8d8d8;
  border-radius: 32px;
  background: #fff;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
}
.tour-list-filter img {
  width: 16px;
  height: 16px;
  display: block;
  flex-shrink: 0;
  transform: rotate(90deg);
}
.tour-list-filter--chip {
  padding: 4px 16px;
  border-color: transparent;
  background: #f0f0f0;
  font-family: "Regular", sans-serif !important;
  cursor: default;
}
.tour-list-filter:hover, .tour-list-filter:focus {
  text-decoration: none;
  color: #121212;
}

.tour-list-filters__nav {
  display: flex;
  flex-shrink: 0;
  gap: 8px;
}

.tour-list-filters__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  padding: 0;
  border: 1px solid #d8d8d8;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
}
.tour-list-filters__arrow img {
  width: 16px;
  height: 16px;
  display: block;
}
.tour-list-filters__arrow--prev img {
  transform: rotate(180deg);
}

.tour-list {
  padding: 0 0 64px;
  background: #fff;
}

.tour-list__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 30px;
}

.tour-list__count {
  margin: 0;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-list__sort {
  display: flex;
  align-items: center;
  gap: 16px;
}

.tour-list__sort-label {
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-list__sort-select {
  position: relative;
}
.tour-list__sort-select select {
  height: 36px;
  min-width: 179px;
  padding: 6px 36px 6px 16px;
  border: 1px solid #d8d8d8;
  border-radius: 32px;
  background: #fff;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  appearance: none;
  outline: none;
  cursor: pointer;
}
.tour-list__sort-select::after {
  content: "";
  position: absolute;
  right: 12px;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%) rotate(90deg);
  background: url("../assets/svg/sort-chevron.svg") center/contain no-repeat;
  pointer-events: none;
}

.tour-list__grid {
  margin-left: -15px;
  margin-right: -15px;
}
.tour-list__grid > [class*=col-] {
  margin-bottom: 30px;
}

.tour-banner--destination::before {
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 57.17%, rgba(0, 0, 0, 0.7) 100%);
}

.tour-list-filters__track-wrap {
  gap: 10px;
}

@media (max-width: 767px) {
  .tour-list-filters__inner {
    flex-wrap: wrap;
  }
  .tour-list-filters__nav {
    width: 100%;
    justify-content: flex-end;
  }
  .tour-list__toolbar {
    flex-direction: column;
    align-items: flex-start;
  }
  .tour-list__sort {
    width: 100%;
    justify-content: space-between;
  }
}
.tour-filter-modal.in {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
}
.tour-filter-modal .modal-dialog {
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
}
.tour-filter-modal .modal-content {
  border: 1px solid #e7e7e7;
  border-radius: 16px;
  box-shadow: none;
  overflow: hidden;
}
.tour-filter-modal .modal-header,
.tour-filter-modal .modal-body,
.tour-filter-modal .modal-footer {
  border: 0;
  background: #fff;
}
.tour-filter-modal .modal-header {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 24px 0;
}
.tour-filter-modal .modal-body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 16px 24px;
  max-height: calc(100vh - 220px);
  overflow-y: auto;
}
.tour-filter-modal .modal-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px 24px 24px;
  margin-top: 0;
  border-top: 1px solid #e7e7e7;
  text-align: left;
}

.tour-filter-modal__title {
  flex: 1;
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 20px;
  line-height: 28px;
  text-transform: uppercase;
}

.tour-filter-modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
  border-radius: 24px;
  background: #f8ba16;
  opacity: 1;
  cursor: pointer;
  float: none;
}
.tour-filter-modal__close img {
  width: 24px;
  height: 24px;
  display: block;
}

.tour-filter-modal__section {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.tour-filter-modal__section-title {
  margin: 0;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}

.tour-filter-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tour-filter-pill {
  display: inline-flex;
  align-items: center;
  height: 36px;
  margin: 0;
  padding: 4px 12px 4px 16px;
  border: 1px solid #d8d8d8;
  border-radius: 32px;
  background: #fff;
  color: #121212;
  font-size: 16px;
  line-height: 24px;
  cursor: pointer;
  white-space: nowrap;
}
.tour-filter-pill input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.tour-filter-pill.is-active {
  border-color: #f8ba16;
  color: #1d2a5c;
}

.tour-filter-modal__clear {
  padding: 4px 8px;
  border: none;
  background: transparent;
  color: #f8ba16;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-decoration: underline;
  cursor: pointer;
}

.tour-filter-modal .tour-filter__range-labels {
  padding-bottom: 0;
}

@media (max-width: 767px) {
  .tour-filter-modal.in {
    padding: 16px;
  }
  .tour-filter-modal .modal-body {
    max-height: 55vh;
  }
}
.tour-review-modal.in {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 24px 16px;
}
.tour-review-modal .modal-dialog {
  width: 100%;
  max-width: 604px;
  margin: 0 auto;
}
.tour-review-modal .modal-content {
  border: 1px solid #e7e7e7;
  border-radius: 16px;
  box-shadow: none;
  overflow: hidden;
}
.tour-review-modal .modal-header,
.tour-review-modal .modal-body,
.tour-review-modal .modal-footer {
  border: 0;
  background: #fff;
}
.tour-review-modal .modal-header {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 24px 24px 0;
}
.tour-review-modal .modal-body {
  padding: 16px 24px;
  max-height: calc(100vh - 220px);
  overflow-y: auto;
}
.tour-review-modal .modal-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px 24px 24px;
  margin-top: 0;
  border-top: 1px solid #e7e7e7;
  text-align: center;
}

.tour-review-modal__title {
  flex: 1;
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 20px;
  line-height: 28px;
  text-transform: uppercase;
}

.tour-review-modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  padding: 0;
  border: none;
  border-radius: 24px;
  background: #f8ba16;
  opacity: 1;
  cursor: pointer;
  float: none;
}
.tour-review-modal__close img {
  width: 24px;
  height: 24px;
  display: block;
}

.tour-review-modal__intro {
  margin: 0 0 16px;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
}

.tour-review-modal__rating {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}

.tour-review-modal__rating-labels {
  display: flex;
  gap: 8px;
  width: 100%;
  max-width: 556px;
  padding: 0 42px;
}
.tour-review-modal__rating-labels span {
  flex: 1;
  max-width: 88px;
  color: #9da8c3;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 18px;
  text-align: center;
}

.tour-review-modal__rating-stars {
  display: flex;
  gap: 8px;
  width: 100%;
  max-width: 556px;
  justify-content: center;
}

.tour-review-modal__star {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 88px;
  height: 36px;
  padding: 0;
  border: 0;
  border-radius: 12px;
  background: transparent;
  cursor: pointer;
  transition: transform 0.2s ease;
}
.tour-review-modal__star img {
  width: 36px;
  height: 36px;
  display: block;
}
.tour-review-modal__star.is-active {
  transform: scale(1.08);
}

.tour-review-modal__row {
  margin-left: -8px;
  margin-right: -8px;
  margin-bottom: 16px;
}
.tour-review-modal__row > [class*=col-] {
  padding-left: 8px;
  padding-right: 8px;
}

.tour-review-modal__label {
  display: block;
  margin: 0 0 6px;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-review-modal__required {
  color: #d51604;
}

.tour-review-modal__control {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  padding: 10px 16px;
  border: 1px solid #e7ebf2;
  border-radius: 44px;
  background: #fff;
  margin-bottom: 0;
}

.tour-review-modal__control--phone {
  border-color: #d8d8d8;
  padding-left: 12px;
}

.tour-review-modal__control-icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  opacity: 0.5;
}

.tour-review-modal__dial {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
  padding-right: 8px;
  border-right: 1px solid #d8d8d8;
  margin-right: 4px;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-review-modal__dial img {
  width: 27px;
  height: 20px;
  display: block;
}
.tour-review-modal__dial i {
  color: #8c8c8c;
  font-size: 10px;
  line-height: 1;
}

.tour-review-modal__input {
  flex: 1;
  min-width: 0;
  height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  outline: none;
  box-shadow: none;
}
.tour-review-modal__input::placeholder {
  color: #8c8c8c;
}

.tour-review-modal__textarea {
  width: 100%;
  min-height: 100px;
  padding: 10px 16px;
  border: 1px solid #d8d8d8;
  border-radius: 16px;
  background: #fff;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  resize: vertical;
  outline: none;
}
.tour-review-modal__textarea::placeholder {
  color: #8c8c8c;
}

.tour-review-modal__submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 228px;
  height: 48px;
  padding: 8px 24px;
  border: 0;
  border-radius: 56px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  cursor: pointer;
}

@media (max-width: 767px) {
  .tour-review-modal.in {
    padding: 16px;
  }
  .tour-review-modal .modal-body {
    max-height: 65vh;
  }
  .tour-review-modal__rating-labels {
    padding: 0 4px;
    font-size: 12px;
  }
  .tour-review-modal__rating-labels span {
    font-size: 11px;
    line-height: 14px;
  }
  .tour-review-modal__rating-stars {
    gap: 4px;
  }
  .tour-review-modal__star {
    width: auto;
    flex: 1;
  }
  .tour-review-modal__star img {
    width: 32px;
    height: 32px;
  }
  .tour-review-modal__row > [class*=col-] + [class*=col-] {
    margin-top: 16px;
  }
}
.tour-detail-hero {
  padding: 24px 0 32px;
  background: #fff;
}

.tour-detail-hero__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.tour-detail-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
.tour-detail-breadcrumb a,
.tour-detail-breadcrumb span {
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
  text-decoration: none;
  white-space: nowrap;
}
.tour-detail-breadcrumb a:hover,
.tour-detail-breadcrumb a:focus {
  color: #1d2a5c;
  text-decoration: none;
}
.tour-detail-breadcrumb__current {
  color: #1d2a5c !important;
  font-family: "Medium", sans-serif;
}
.tour-detail-breadcrumb__sep {
  flex-shrink: 0;
  width: 10px;
  height: 10px;
  background: url("../assets/svg/breadcrumb-chevron.svg") center/contain no-repeat;
}

.tour-detail-share {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  padding: 0;
  border: none;
  border-radius: 36px;
  background: #1d2a5c;
  cursor: pointer;
}
.tour-detail-share img {
  width: 20px;
  height: 20px;
  display: block;
}

.tour-detail-gallery {
  display: flex;
  gap: 10px;
  height: 500px;
}

.tour-detail-gallery__main,
.tour-detail-gallery__item {
  position: relative;
  display: block;
  border-radius: 12px;
  overflow: hidden;
  text-decoration: none;
  color: inherit;
}
.tour-detail-gallery__main:hover, .tour-detail-gallery__main:focus,
.tour-detail-gallery__item:hover,
.tour-detail-gallery__item:focus {
  text-decoration: none;
  color: inherit;
  outline: none;
}
.tour-detail-gallery__main img,
.tour-detail-gallery__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.tour-detail-gallery__hidden {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

.tour-detail-gallery__main {
  flex: 650 1 0;
  min-width: 0;
}

.tour-detail-gallery__col {
  flex: 325 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.tour-detail-gallery__item {
  flex: 1;
  min-height: 0;
  border: none;
  padding: 0;
  background: transparent;
  cursor: pointer;
  text-align: center;
}

.tour-detail-gallery__more::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(29, 42, 92, 0.5);
  backdrop-filter: blur(1px);
  z-index: 1;
}

.tour-detail-gallery__more-inner {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px;
  color: #fff;
  font-family: "Bold", sans-serif;
  font-size: 15px;
  line-height: 23px;
  pointer-events: none;
}
.tour-detail-gallery__more-inner img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  flex-shrink: 0;
}

@media (max-width: 991px) {
  .tour-detail-gallery {
    flex-wrap: wrap;
    height: auto;
  }
  .tour-detail-gallery__main {
    flex: 1 1 100%;
    height: 320px;
  }
  .tour-detail-gallery__col {
    flex: 1 1 calc(50% - 5px);
  }
  .tour-detail-gallery__item {
    height: 160px;
  }
}
@media (max-width: 767px) {
  .tour-detail-hero__top {
    flex-direction: column;
    align-items: flex-start;
  }
  .tour-detail-breadcrumb a,
  .tour-detail-breadcrumb span {
    white-space: normal;
  }
  .tour-detail-breadcrumb__current {
    white-space: normal;
  }
  .tour-detail-gallery__col {
    flex: 1 1 100%;
    flex-direction: row;
  }
  .tour-detail-gallery__item {
    flex: 1;
    height: 120px;
  }
}
.tour-detail-layout {
  padding: 0 0 64px;
  background: #fff;
}

.tour-detail-main {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.tour-detail-title {
  padding: 24px;
  border-radius: 16px;
  border: 1px solid #fafafa;
  box-shadow: 0 0 2px 0 rgba(6, 21, 86, 0.15);
}

.tour-detail-title__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 16px;
}

.tour-detail-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 36px;
  padding: 6px 12px;
  border-radius: 999px;
  background: #fff1cc;
  color: #684e09;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}
.tour-detail-badge img {
  width: 16px;
  height: 16px;
  display: block;
  flex-shrink: 0;
}

.tour-detail-badge--star {
  background: #fff1cc;
  color: #684e09;
}

.tour-detail-badge--seller {
  background: #ffe4e0;
  color: #c43617;
}

.tour-detail-badge--cancel {
  background: #dff6ec;
  color: #1ba672;
}

.tour-detail-title__heading {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 32px;
  line-height: 38px;
}

.tour-detail-title__rating {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 16px;
}

.tour-detail-title__score {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 45px;
  height: 40px;
  border-radius: 6px;
  background: #0e63cb;
  color: #fff;
  font-family: "Bold", sans-serif;
  font-size: 18px;
  line-height: 26px;
}

.tour-detail-title__excellent,
.tour-detail-title__reviews {
  margin: 0;
}

.tour-detail-title__excellent {
  color: #121212;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-detail-title__reviews {
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.tour-detail-title__meta {
  display: flex;
  align-items: flex-start;
  gap: 32px;
}
.tour-detail-title__meta span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-detail-title__meta img {
  width: 24px;
  height: 24px;
}

.tour-detail-tabs {
  display: flex;
  align-items: flex-start;
  flex-wrap: nowrap;
  gap: 0;
  padding: 8px;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 0 2px 0 rgba(6, 21, 86, 0.15);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.tour-detail-tabs::-webkit-scrollbar {
  display: none;
}
.tour-detail-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 40px;
  padding: 8px 32px;
  border-radius: 10px;
  color: rgba(29, 42, 92, 0.7);
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  white-space: nowrap;
  text-decoration: none;
}
.tour-detail-tabs a.is-active,
.tour-detail-tabs a:hover {
  background: #e6f4fe;
  color: #0652b0;
}

.tour-detail-section {
  padding: 24px;
  border-radius: 16px;
  border: 1px solid #fafafa;
  box-shadow: 0 0 2px 0 rgba(6, 21, 86, 0.15);
}
.tour-detail-section p {
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-detail-section__title {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 30px;
  line-height: 32px;
}

.tour-detail-highlight {
  margin-top: 16px;
  padding: 20px 24px;
  border: 1px solid #f8ba16;
  border-radius: 12px;
  background: linear-gradient(99.25deg, #fffaf0 2.13%, #fff1cc 99.63%);
}

.tour-detail-highlight__title {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 16px;
  color: #684e09;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}
.tour-detail-highlight__title img {
  width: 24px;
  height: 24px;
  display: block;
  flex-shrink: 0;
}

.tour-detail-highlight__list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 112px;
}
.tour-detail-highlight__list span {
  position: relative;
  padding-left: 24px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-detail-highlight__list span::before {
  content: "\f058";
  position: absolute;
  left: 0;
  top: 3px;
  color: #1ba672;
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  font-size: 16px;
  line-height: 16px;
}

.tour-detail-itinerary {
  padding: 24px 26px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 0 2px 0 rgba(6, 21, 86, 0.15);
}

.tour-detail-itinerary__title {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 24px;
  line-height: 32px;
  text-transform: uppercase;
}

.tour-itinerary {
  margin: 0;
}

.tour-itinerary-day {
  margin-bottom: 16px;
  border: 1px solid #e6f4fe;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: none;
}

.tour-itinerary-day--collapsed {
  border-color: #e8eaef;
}

.tour-itinerary-day__head {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 24px;
  border: 0;
  background: linear-gradient(90deg, #eaf6fe 0%, #fff 100%);
  text-align: left;
}

.tour-itinerary-day__head.collapsed {
  background: #fff;
}

.tour-itinerary-day__index {
  flex-shrink: 0;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 56px;
  height: 56px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, #0194f3 0%, #005fb8 100%);
}
.tour-itinerary-day__index small {
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
  opacity: 0.85;
}
.tour-itinerary-day__index strong {
  font-family: "SemiBold", sans-serif;
  font-size: 30px;
  line-height: 26px;
}

.tour-itinerary-day__main {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.tour-itinerary-day__title {
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}

.tour-itinerary-day__meals {
  display: inline-flex;
  align-items: center;
  gap: 20px;
  color: #5a6b85;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-itinerary-day__meals i {
  margin-right: 4px;
  color: #f8ba16;
  font-size: 16px;
}

.tour-itinerary-day__arrow {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff1cc;
  color: #f8ba16;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.tour-itinerary-day__head:not(.collapsed) .tour-itinerary-day__arrow {
  transform: rotate(180deg);
}

.tour-itinerary-day__body {
  padding: 24px;
  border-top: 1px solid #e6f4fe;
}
.tour-itinerary-day__body p {
  margin: 0 0 16px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-itinerary-day__body p:last-child {
  margin-bottom: 0;
}
.tour-itinerary-day__body strong {
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-package-filter {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  gap: 8px;
  margin-bottom: 16px;
}

.tour-package-filter__field {
  width: 100%;
  height: 40px;
  padding: 8px 42px 8px 16px;
  border: 1px solid #85b0de;
  border-radius: 56px;
  background: #fff;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.tour-package-filter__field:focus {
  outline: none;
  border-color: #85b0de;
}

.tour-package-filter__field-wrap {
  position: relative;
}
.tour-package-filter__field-wrap::after {
  content: "\f078";
  position: absolute;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #ede2c4;
  color: #fff;
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  font-size: 12px;
  line-height: 24px;
  text-align: center;
  pointer-events: none;
}

.tour-package-filter__check {
  height: 40px;
  padding: 8px 24px;
  border: 0;
  border-radius: 56px;
  background: #1d2a5c;
  color: #f8ba16;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}

.tour-package-table {
  border: 1px solid #ededed;
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
}

.tour-package-table__table {
  width: 100%;
  border-collapse: collapse;
}

.tour-package-table__table th {
  padding: 12px 16px;
  border-right: 1px solid rgba(255, 255, 255, 0.25);
  background: #1d2a5c;
  color: #f9f6f1;
  text-align: center;
  font-family: "Medium", sans-serif;
  font-size: 16px;
}

.tour-package-table__table th:last-child {
  border-right: 0;
}

.tour-package-table__table td {
  padding: 16px 24px;
  border-top: 1px solid #d9d9d9;
  color: #262626;
  text-align: center;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-package-table__price {
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}
.tour-package-table__price small {
  margin-right: 8px;
  color: #bfbfbf;
  text-decoration: line-through;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}
.tour-package-table__price .tour-package-table__sale-price {
  color: #da0707;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}

.tour-package-table__availability {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}
.tour-package-table__availability .tour-package-table__status {
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}
.tour-package-table__availability .is-available {
  color: #038b5c;
}
.tour-package-table__availability .is-fast {
  color: #da0707;
}
.tour-package-table__availability .is-limited {
  color: #ff6f6f;
}

.tour-package-table__book {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 12px 16px;
  border-radius: 40px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
  text-decoration: none;
}

.tour-package-table__deal {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  height: 20px;
  padding: 0 8px;
  margin-right: 8px;
  border-radius: 30px;
  background: #da0707;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 12px;
  line-height: 20px;
  text-transform: uppercase;
}
.tour-package-table__deal i {
  font-size: 12px;
}

.tour-detail-important {
  padding: 24px 26px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 0 1px rgba(6, 21, 86, 0.15);
}

.tour-detail-important__title {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 24px;
  line-height: 32px;
  text-transform: uppercase;
}

.tour-detail-important__group {
  border: 1px solid #e8eaef;
  border-radius: 12px;
  padding: 16px 24px;
  margin-bottom: 16px;
}

.tour-detail-important__label {
  margin: 0 0 8px;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}

.tour-detail-important__label--include {
  color: #1ba672;
}

.tour-detail-important__label--exclude {
  color: #e54545;
}

.tour-detail-important__list li {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin-bottom: 8px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-detail-important__list li:last-child {
  margin-bottom: 0;
}

.tour-detail-important__list .fa-check-circle {
  color: #1ba672;
  margin-top: 4px;
}

.tour-detail-important__list .fa-times-circle {
  color: #e54545;
  margin-top: 4px;
}

.tour-detail-important__note {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  border: 1px solid #e8eaef;
  border-radius: 14px;
  padding: 16px 24px;
}

.tour-detail-important__note-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: #e6f4fe;
  color: #0194f3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.tour-detail-important__note-content h4 {
  margin: 0 0 8px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}

.tour-detail-important__note-content p {
  margin: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-detail-reviews {
  padding: 24px 26px;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 0 2px 0 rgba(6, 21, 86, 0.15);
}

.tour-detail-reviews__title {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 24px;
  line-height: 32px;
  text-transform: uppercase;
}

.tour-detail-reviews__summary {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 24px;
  border: 1px solid #f8ba16;
  border-radius: 12px;
  background: #fff9f0;
  margin-bottom: 24px;
}

.tour-review-score {
  width: 254px;
  flex-shrink: 0;
  text-align: center;
}

.tour-review-score__value {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  gap: 16px;
}

.tour-review-score__number {
  color: #f8ba16;
  font-family: "Bold", sans-serif;
  font-size: 56px;
  line-height: 88px;
}

.tour-review-score__laurel {
  width: 47px;
  height: 72px;
}
.tour-review-score__laurel img {
  width: 100%;
  height: 100%;
  display: block;
}

.tour-review-score__count {
  margin: 0;
  color: #262626;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.tour-review-breakdown {
  flex: 1;
  padding: 0 24px;
  border-left: 1px solid #d8d8d8;
  border-right: 1px solid #d8d8d8;
}

.tour-review-breakdown__row {
  display: grid;
  grid-template-columns: 32px 1fr 40px;
  gap: 8px;
  align-items: center;
  margin-bottom: 2px;
}
.tour-review-breakdown__row > span:first-child {
  color: #2a3b5b;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  display: flex;
  align-items: baseline;
}
.tour-review-breakdown__row > span:first-child i {
  color: #f8ba16;
  margin-left: 2px;
  font-size: 16px;
}
.tour-review-breakdown__row > span:last-child {
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-align: right;
}

.tour-review-breakdown__bar {
  height: 7.8px;
  border-radius: 13px;
  background: #ececec;
  overflow: hidden;
}
.tour-review-breakdown__bar span {
  display: block;
  height: 100%;
  background: #f8ba16;
  border-radius: 13px;
}

.tour-detail-reviews__summary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 40px;
  padding: 8px 24px;
  border: 0;
  border-radius: 49px;
  background: #f8ba16;
  color: #1d2a5c;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 24px;
  text-transform: uppercase;
}

.tour-review-item {
  display: flex;
  gap: 16px;
  padding: 0 0 16px;
  margin-bottom: 16px;
  border-bottom: 1px dashed #d8d8d8;
}

.tour-review-item__avatar {
  width: 48px;
  height: 48px;
  border-radius: 23px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-family: "SemiBold", sans-serif;
  font-size: 20px;
  line-height: 28px;
  flex-shrink: 0;
}

.tour-review-item__avatar--gold {
  background: linear-gradient(135deg, #ffd86b 0%, #f5a623 100%);
}

.tour-review-item__avatar--green {
  background: linear-gradient(135deg, #65e8b7 0%, #1ba672 100%);
}

.tour-review-item__avatar--blue {
  background: linear-gradient(135deg, #0194f3 0%, #005fb8 100%);
}

.tour-review-item__avatar--red {
  background: linear-gradient(135deg, #bd4040 0%, #7e1313 100%);
}

.tour-review-item__content {
  flex: 1;
  min-width: 0;
}

.tour-review-item__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.tour-review-item__name {
  margin: 0;
  color: #0b1f3a;
  font-family: "SemiBold", sans-serif;
  font-size: 18px;
  line-height: 26px;
}

.tour-review-item__stars {
  margin-left: 8px;
  color: #f8ba16;
  font-size: 16px;
  white-space: nowrap;
}

.tour-review-item__date {
  margin: 0;
  color: #1ba672;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.tour-review-item__rate {
  margin: 0;
  color: #1d2a5c;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
  white-space: nowrap;
}
.tour-review-item__rate span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 28px;
  padding: 4px 8px;
  margin-right: 8px;
  border-radius: 6px;
  background: #0e63cb;
  color: #fff;
  font-family: "SemiBold", sans-serif;
}

.tour-review-item__text {
  margin: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.tour-detail-reviews__footer {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.tour-detail-reviews__more {
  height: 40px;
  padding: 8px 24px;
  border: 1px solid #f8ba16;
  border-radius: 56px;
  background: #fff;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}
.tour-detail-reviews__more:hover {
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 100%), #F8BA16;
}

.faq-detail {
  padding: 24px 26px;
  border-radius: 18px;
  background: #FFF;
  box-shadow: 0 0 2px 0 rgba(6, 21, 86, 0.15);
}
.faq-detail .tour-faqs {
  border: 0;
  padding: 16px 0 0 0;
}
.faq-detail .tour-faq-item:last-child {
  border-bottom: 0 !important;
}

.tour-detail-reviews__footer p {
  margin: 0;
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.tour-booking,
.tour-map-mini {
  border-radius: 16px;
  border: 1px solid #fafafa;
  box-shadow: 0 12px 32px rgba(13, 28, 57, 0.1), 0 2px 8px rgba(13, 28, 57, 0.04);
  background: #fff;
  overflow: hidden;
}

.tour-booking {
  margin-bottom: 24px;
}

.tour-booking__top {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  padding: 12px 16px;
  background: linear-gradient(90deg, #f8ba16, #f8a116);
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 14px;
  line-height: 22px;
}
.tour-booking__top img {
  width: 16px;
  height: 16px;
  display: block;
  margin-top: 1px;
  flex-shrink: 0;
}
.tour-booking__top span {
  flex: 1;
  min-width: 0;
}

.tour-booking__body {
  padding: 24px 16px;
}

.tour-booking__price {
  margin: 0 0 12px;
  color: #b08410;
  font-family: "SemiBold", sans-serif;
  font-size: 40px;
  line-height: 40px;
}
.tour-booking__price small {
  color: rgba(29, 42, 92, 0.7);
  font-size: 30%;
  text-decoration: line-through;
}
.tour-booking__price span {
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.tour-booking__save {
  display: inline-flex;
  margin: 0 0 16px;
  padding: 6px 8px;
  border-radius: 8px;
  background: #fff1cc;
  color: #684e09;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
}

.booking-btn {
  border-radius: 12px;
  font-size: 16px;
  font-family: "Mona Sans", sans-serif;
  font-weight: 600;
  text-transform: uppercase;
}

.tour-booking__facts {
  border-radius: 12px;
  margin: 0 0 16px;
}
.tour-booking__facts li {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #f5f5f5;
  color: rgba(29, 42, 92, 0.7);
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.tour-booking__facts span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.tour-booking__facts img {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}
.tour-booking__facts i {
  width: 24px;
  text-align: center;
  color: #0652b0;
  font-size: 20px;
  line-height: 24px;
  flex-shrink: 0;
}
.tour-booking__facts strong {
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
}

.fact-name {
  color: #1D2A5C;
  font-size: 16px;
  font-family: "Medium", sans-serif;
  line-height: 24px;
}

.tour-booking__chat {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 48px;
  border: 1px solid #f8ba16;
  border-radius: 12px;
  margin-top: 8px;
  color: #f8ba16;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
}
.tour-booking__chat i {
  font-size: 18px;
  line-height: 1;
}

.tour-booking__notes {
  margin-top: 16px !important;
  padding-top: 16px !important;
  border-top: 1px dashed #d8d8d8;
}
.tour-booking__notes li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}
.tour-booking__notes li::before {
  content: "\f058";
  position: absolute;
  left: 0;
  top: 4px;
  color: #1ba672;
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  font-size: 14px;
  line-height: 14px;
}

.tour-map-mini img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  display: block;
}

.tour-map-mini__body {
  padding: 16px 24px;
}

.tour-map-mini__title,
.tour-map-mini__text {
  margin: 0;
}

.tour-map-mini__title {
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 32px;
  line-height: 32px;
}

.tour-map-mini__text {
  margin-top: 8px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

@media (max-width: 1199px) {
  .tour-detail-title__heading {
    font-size: 28px;
    line-height: 34px;
  }
  .tour-detail-section__title,
  .tour-map-mini__title {
    font-size: 28px;
  }
  .tour-detail-title__meta {
    flex-wrap: wrap;
    gap: 12px 24px;
  }
}
@media (max-width: 991px) {
  .tour-booking {
    margin-top: 16px;
  }
  .tour-detail-highlight__list {
    grid-template-columns: 1fr;
  }
  .tour-detail-reviews__summary {
    flex-direction: column;
    align-items: stretch;
  }
  .tour-review-score {
    width: 100%;
  }
  .tour-review-breakdown {
    border-left: 0;
    border-right: 0;
    border-top: 1px solid #d8d8d8;
    border-bottom: 1px solid #d8d8d8;
    padding: 16px 0;
  }
  .tour-detail-reviews__summary-btn {
    align-self: center;
  }
}
@media (max-width: 767px) {
  .tour-detail-title,
  .tour-detail-section,
  .tour-detail-itinerary,
  .tour-detail-important,
  .tour-detail-reviews {
    padding: 16px;
  }
  .tour-package-filter {
    grid-template-columns: 1fr;
  }
  .tour-package-table {
    overflow-x: auto;
  }
  .tour-package-table__table {
    min-width: 760px;
  }
  .tour-review-item__head {
    flex-direction: column;
    align-items: flex-start;
  }
}
.agents-stats {
  position: relative;
  padding: 60px 0 0;
  background: #1d2a5c;
  overflow: hidden;
}
.agents-stats__bg {
  position: absolute;
  inset: 0;
  background: url("../assets/images/agents-stats-bg.png") center/cover no-repeat;
  opacity: 0.07;
  pointer-events: none;
}
.agents-stats__container {
  position: relative;
  z-index: 1;
  padding-bottom: 60px;
}
.agents-stats__head {
  max-width: 1000px;
  margin: 0 auto 40px;
  text-align: center;
}
.agents-stats__title {
  margin: 0 0 16px;
  color: #f6c24d;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.agents-stats__desc {
  margin: 0;
  color: #fff;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  opacity: 0.7;
}
.agents-stats__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto;
}
.agents-stats__item {
  flex: 1 1 0;
  min-width: 200px;
  padding: 32px 0;
  text-align: center;
}
.agents-stats__value {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin: 0 0 16px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 48px;
  line-height: 56px;
  text-transform: uppercase;
}
.agents-stats__score {
  line-height: 56px;
}
.agents-stats__slash {
  font-size: 40px;
  line-height: 56px;
}
.agents-stats__star {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}
.agents-stats__label {
  margin: 0;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
}
.agents-stats__tabs {
  position: absolute;
  z-index: 2;
  width: 50%;
  left: 50%;
  transform: translateX(-50%);
  top: -34px;
}
.agents-stats__tabs-inner {
  display: flex;
  height: 56px;
  margin: 0 auto;
  padding: 4px;
  border-radius: 40px;
  background: #fff;
  box-shadow: 0 20px 13px rgba(0, 0, 0, 0.1);
}
.agents-stats__tab {
  flex: 1 1 0;
  min-width: 0;
  height: 48px;
  margin: 0;
  padding: 12px 24px;
  border: 0;
  border-radius: 40px;
  background: transparent;
  color: #8c8c8c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 24px;
  text-transform: uppercase;
  cursor: pointer;
  transition: color 0.2s, box-shadow 0.2s, background 0.2s;
}
.agents-stats__tab.is-active {
  background: #fff;
  color: #1d2a5c;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
}

@media (max-width: 991px) {
  .agents-stats {
    padding-top: 48px;
  }
  .agents-stats__container {
    padding-bottom: 48px;
  }
  .agents-stats__title {
    font-size: 24px;
    line-height: 32px;
  }
  .agents-stats__grid {
    flex-direction: column;
    gap: 0;
  }
  .agents-stats__item {
    min-width: 0;
    padding: 24px 0;
  }
  .agents-stats__value {
    font-size: 40px;
    line-height: 48px;
  }
  .agents-stats__tabs-inner {
    flex-direction: column;
    height: auto;
    padding: 8px;
  }
  .agents-stats__tab {
    width: 100%;
    height: auto;
    min-height: 48px;
    white-space: normal;
    font-size: 14px;
    line-height: 20px;
  }
}
@media (max-width: 767px) {
  .agents-stats__tab {
    font-size: 13px;
    padding: 12px 16px;
  }
}
.journey {
  padding: 88px 0 80px;
  background: #fff;
  position: relative;
}

.journey-panel {
  display: none;
  max-width: 1000px;
  margin: 0 auto;
}
.journey-panel.is-active {
  display: block;
}

.journey-intro {
  margin: 0 0 40px;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-align: center;
}
.journey-intro strong {
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-weight: 500;
}

.journey-steps {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.journey-step {
  flex: 1 1 0;
  min-width: 220px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-align: center;
}

.journey-step__icon {
  width: 88px;
  height: 88px;
  flex-shrink: 0;
}
.journey-step__icon img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.journey-step__title {
  margin: 0;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
}

.journey-step__desc {
  margin: 0;
  color: #3f3f3f;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

@media (max-width: 991px) {
  .journey {
    padding: 56px 0 60px;
  }
  .journey-steps {
    flex-direction: column;
    align-items: center;
    gap: 32px;
  }
  .journey-step {
    min-width: 0;
    max-width: 360px;
  }
}
@media (max-width: 767px) {
  .journey {
    padding: 48px 0 48px;
  }
  .journey-intro {
    margin-bottom: 32px;
    font-size: 15px;
  }
}
.about {
  padding: 0 0 88px;
  background: #fff;
}

.about-banner {
  position: relative;
  max-width: 1170px;
  margin: 0 auto;
  height: 576px;
  border-radius: 8px;
  overflow: hidden;
}

.about-banner__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.about-banner__content {
  position: absolute;
  left: 40px;
  bottom: 48px;
  max-width: 546px;
  z-index: 1;
}

.about-banner__title {
  margin: 0 0 24px;
  color: #f6c24d;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.about-banner__text {
  margin: 0;
  color: #fff;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-align: justify;
}

.about-banner__play {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  width: 160px;
  height: 160px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.about-banner__play img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.about-banner__cta {
  position: absolute;
  right: 48px;
  bottom: 40px;
  z-index: 2;
  border-color: #f8ba16;
  color: #f8ba16;
  background: transparent;
}
.about-banner__cta:hover, .about-banner__cta:focus {
  background: rgba(248, 186, 22, 0.12);
  color: #f8ba16;
  border-color: #f8ba16;
}

@media (max-width: 991px) {
  .about-banner {
    height: auto;
    min-height: 420px;
  }
  .about-banner__content {
    left: 24px;
    right: 24px;
    bottom: 100px;
    max-width: none;
  }
  .about-banner__play {
    width: 120px;
    height: 120px;
  }
  .about-banner__cta {
    left: 24px;
    right: auto;
    bottom: 24px;
  }
}
.page-hero--about::before {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(12, 18, 39, 0.72) 100%);
}

.about--story {
  padding: 64px 0;
  background: #f5f5f5;
}

.about-banner--story {
  display: flex;
  align-items: stretch;
  gap: 30px;
  height: auto;
  min-height: 520px;
  max-width: 1320px;
  border-radius: 0;
  overflow: visible;
}
.about-banner--story .about-banner__img {
  width: calc(50% - 15px);
  min-height: 520px;
  border-radius: 12px;
}
.about-banner--story .about-banner__content {
  position: static;
  width: calc(50% - 15px);
  max-width: none;
  padding: 0 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
}
.about-banner--story .about-banner__label {
  margin: 0;
  color: #f8ba16;
  font-family: "SemiBold", sans-serif;
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
}
.about-banner--story .about-banner__title {
  margin: 0;
  color: #1d2a5c;
}
.about-banner--story .about-banner__text {
  color: #2a3b5b;
}

.about-page-journey {
  padding-top: 88px;
}

.about-page-values {
  padding: 24px 0 64px;
  background: #f5f5f5;
}

.about-page-values__item {
  display: flex;
  align-items: center;
  gap: 36px;
  margin-bottom: 40px;
}
.about-page-values__item:last-child {
  margin-bottom: 0;
}

.about-page-values__item--reverse {
  flex-direction: row-reverse;
}

.about-page-values__media,
.about-page-values__content {
  width: calc(50% - 18px);
}

.about-page-values__media img {
  width: 100%;
  border-radius: 12px;
  display: block;
}

.about-page-values__content h3 {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.about-page-values__content p {
  margin: 0;
  color: #2a3b5b;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-align: justify;
}

.about-page-values__icon {
  padding: 20px;
  margin-bottom: 16px;
  border-radius: 8px;
  background: #fff1cc;
  color: #684e09;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
}
.about-page-values__icon img {
  width: 40px;
  height: 40px;
  aspect-ratio: 1/1;
}

@media (max-width: 991px) {
  .about-page-values__item,
  .about-page-values__item--reverse {
    flex-direction: column;
  }
  .about-page-values__media,
  .about-page-values__content {
    width: 100%;
  }
  .about-banner--story {
    flex-direction: column;
    min-height: 0;
    gap: 24px;
  }
  .about-banner--story .about-banner__img,
  .about-banner--story .about-banner__content {
    width: 100%;
  }
  .about-banner--story .about-banner__img {
    min-height: 320px;
  }
  .about-banner--story .about-banner__content {
    padding: 0;
    gap: 12px;
  }
}
.reviews {
  padding: 60px 0;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.4), rgba(255, 255, 255, 0.4)), #f5f0e8;
}

.reviews__inner {
  max-width: 1320px;
  margin: 0 auto;
}

.reviews-head {
  max-width: 1000px;
  margin: 0 auto 40px;
  text-align: center;
}
.reviews-head h2 {
  margin: 0 0 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.reviews-filters {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
}

.reviews-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 48px;
  margin: 0;
  padding: 12px 24px;
  border: 1px solid #f0f0f0;
  border-radius: 40px;
  background: #fff;
  color: #8c8c8c;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  cursor: pointer;
  transition: border-color 0.2s, background 0.2s;
}
.reviews-filter--trip {
  padding: 12px 24px;
}
.reviews-filter--trip img {
  display: block;
  width: 113px;
  height: 24px;
  object-fit: contain;
}
.reviews-filter--google img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.reviews-filter.is-active {
  border-color: #f8ba16;
  background: #fff1cc;
}
.reviews-filter:not(.is-active) {
  border-color: #f0f0f0;
  background: #fff;
}

.reviews-slider-wrap {
  margin-bottom: 40px;
}

.reviews-slider.owl-carousel .owl-stage-outer {
  overflow: visible;
}
.reviews-slider.owl-carousel .owl-item {
  opacity: 0.4;
  transition: opacity 0.3s;
}
@media (min-width: 992px) {
  .reviews-slider.owl-carousel .owl-item.center,
  .reviews-slider.owl-carousel .owl-item.center + .owl-item,
  .reviews-slider.owl-carousel .owl-item:has(+ .owl-item.center) {
    opacity: 1;
  }
}
@media (max-width: 991px) {
  .reviews-slider.owl-carousel .owl-item.center {
    opacity: 1;
  }
}

.review-card {
  width: 420px;
  max-width: 100%;
  height: 288px;
  padding: 24px;
  border: 0.5px solid #3686f7;
  border-radius: 8px;
  background: linear-gradient(126deg, #FFD8F7 -11.56%, #FFF 16.68%, #FFF 73.72%, #D6E7FF 134.39%);
  box-shadow: 0 2px 2px rgba(6, 21, 86, 0.15);
}

.review-card__inner {
  display: flex;
  flex-direction: column;
  gap: 16px;
  height: 100%;
}

.review-card__top {
  display: flex;
  align-items: center;
  gap: 16px;
  min-height: 48px;
}

.review-card__avatar {
  width: 40px !important;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.review-card__meta {
  flex: 1;
  min-width: 0;
}

.review-card__name {
  margin: 0;
  color: #262626;
  font-family: "SemiBold", sans-serif;
  font-size: 16px;
  line-height: 24px;
}

.review-card__date {
  margin: 0;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
}

.review-card__source {
  width: 32px !important;
  height: 32px;
  flex-shrink: 0;
  object-fit: contain;
}

.review-card__stars {
  display: flex;
  align-items: center;
  gap: 6px;
  width: 104px;
  height: 16px;
}
.review-card__stars img {
  width: 16px !important;
  height: 16px;
  flex-shrink: 0;
}

.review-card__content {
  display: flex;
  align-items: stretch;
  gap: 12px;
  flex: 1;
  min-height: 0;
}

.review-card__text {
  flex: 1;
  min-width: 0;
  height: 143px;
  overflow-y: auto;
  color: #262626;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.review-card__text p {
  margin: 0 0 0;
}
.review-card__text strong {
  font-family: "SemiBold", sans-serif;
  font-weight: 600;
}
.review-card__text::-webkit-scrollbar {
  width: 4px;
}
.review-card__text::-webkit-scrollbar-track {
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.3);
}
.review-card__text::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #868075;
  min-height: 67px;
}

.review-card__scrollbar {
  position: relative;
  flex-shrink: 0;
  width: 4px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.3);
  pointer-events: none;
}
.review-card__scrollbar::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 67px;
  border-radius: 10px;
  background: #868075;
}

.reviews-dots-wrap {
  display: flex;
  justify-content: center;
  gap: 8px;
}
.reviews-dots-wrap .owl-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  line-height: 0;
}
.reviews-dots-wrap .owl-dot {
  width: 59px;
  height: 8px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 16px;
  background: #d8d8d8;
  transition: width 0.3s, background 0.3s;
}
.reviews-dots-wrap .owl-dot span {
  display: none;
}
.reviews-dots-wrap .owl-dot.active {
  width: 95px;
  background: #868075;
}

@media (max-width: 767px) {
  .reviews-head h2 {
    font-size: 24px;
    line-height: 32px;
  }
  .review-card {
    height: auto;
    min-height: 288px;
  }
  .review-card__text {
    height: auto;
    max-height: 143px;
  }
  .review-card__scrollbar {
    display: none;
  }
}
.destinations {
  padding: 60px 0;
  background: #1d2a5c;
}

.destinations-head {
  max-width: 1000px;
  margin: 0 auto 40px;
  text-align: center;
}
.destinations-head h2 {
  margin: 0 0 16px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.destinations-head p {
  margin: 0;
  color: #fff;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  opacity: 0.7;
}

.destinations-grid {
  display: grid;
  grid-template-columns: 1fr 429px 1fr;
  gap: 16px;
  height: 380px;
  margin-bottom: 40px;
}

.destinations-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-height: 0;
}

.destinations-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  flex: 1;
  min-height: 0;
}

.dest-card {
  position: relative;
  display: block;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
  text-decoration: none;
}
.dest-card:hover, .dest-card:focus {
  text-decoration: none;
}
.dest-card:hover img, .dest-card:focus img {
  transform: scale(1.03);
}
.dest-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.35s ease;
}

.dest-card--tall {
  height: 100%;
}

.dest-card--short {
  height: 170px;
  flex-shrink: 0;
}

.destinations-row .dest-card {
  height: 100%;
}

.dest-card__label {
  position: absolute;
  left: 4px;
  right: 4px;
  bottom: 4px;
  padding: 10px 16px;
  border-radius: 8px;
  background: rgba(11, 16, 38, 0.3);
  backdrop-filter: blur(5px);
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
  text-align: center;
  text-transform: uppercase;
}

.destinations-subtitle {
  max-width: 1000px;
  margin: 0 auto 32px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 24px;
  line-height: 32px;
  text-align: center;
  text-transform: uppercase;
}

.destinations-tags {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.destinations-tags__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
}

.dest-tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 32px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-transform: capitalize;
  text-decoration: none;
  transition: border-color 0.2s, background 0.2s;
}
.dest-tag:hover, .dest-tag:focus {
  background: rgba(255, 255, 255, 0.08);
  color: #f8ba16;
  text-decoration: none;
}

@media (max-width: 1199px) {
  .destinations-grid {
    grid-template-columns: 1fr;
    height: auto;
  }
  .dest-card--tall {
    height: 280px;
  }
  .destinations-row {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 767px) {
  .destinations-row {
    grid-template-columns: 1fr;
  }
  .destinations-subtitle {
    font-size: 18px;
    line-height: 26px;
  }
}
.partners {
  padding: 40px 0 72px;
  background: #f9f6f1;
}

.partners-head {
  max-width: 1000px;
  margin: 0 auto 40px;
  text-align: center;
}
.partners-head h2 {
  margin: 0;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}

.partners-logos.owl-carousel .owl-stage-outer {
  overflow: hidden;
}
.partners-logos.owl-carousel .owl-item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.partners-logos__item {
  width: 177px;
  max-width: 100%;
  height: 74px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
.partners-logos__item img {
  max-width: 100%;
  max-height: 74px;
  width: auto;
  height: auto;
  object-fit: contain;
}

@media (max-width: 991px) {
  .partners-head h2 {
    font-size: 24px;
    line-height: 32px;
  }
}
.faqs {
  padding: 60px 0 80px;
  background: #1d2a5c;
}

.faqs-head {
  max-width: 1000px;
  margin: 0 auto 48px;
  text-align: center;
}
.faqs-head h2 {
  margin: 0 0 16px;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 32px;
  line-height: 40px;
  text-transform: uppercase;
}
.faqs-head p {
  margin: 0;
  color: #fafafa;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.faqs-list {
  max-width: 1320px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.faq-item {
  border-radius: 12px;
}

.faq-item__trigger {
  display: grid;
  align-items: center;
  column-gap: 24px;
  grid-template-columns: 44px minmax(0, 1fr) 36px;
  grid-template-areas: "badge content toggle";
  width: 100%;
  padding: 12px 12px 12px 0;
  border: 0;
  border-bottom: 1px solid rgba(253, 234, 183, 0.2);
  border-radius: 12px;
  background: transparent;
  text-align: left;
  cursor: pointer;
  transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item__badge {
  grid-area: badge;
  width: 32px;
  padding-left: 12px;
  color: #8c8c8c;
  font-family: "Medium", sans-serif;
  font-size: 13px;
  line-height: 20px;
}
.faq-item__badge span {
  display: block;
}

.faq-item__content {
  grid-area: content;
  min-width: 0;
  display: grid;
  align-items: center;
  column-gap: 24px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0fr);
  transition: grid-template-columns 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item__question {
  min-width: 0;
  margin: 0;
  color: #fff;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  transition: color 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.faq-item__answer {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 14px;
  line-height: 22px;
  opacity: 0;
  visibility: hidden;
  transform: translateX(8px);
  max-height: 0;
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1), transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.4s;
}
.faq-item__answer p {
  margin: 0;
}

.faq-item__toggle {
  grid-area: toggle;
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #f8f6f1;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq-item__toggle img {
  width: 14px;
  height: 14px;
}

.faq-item:hover .faq-item__trigger,
.faq-item.is-open .faq-item__trigger,
.faq-item:focus-within .faq-item__trigger {
  background: #fff1cc;
  border-bottom-color: transparent;
}

.faq-item:hover .faq-item__question,
.faq-item.is-open .faq-item__question,
.faq-item:focus-within .faq-item__question {
  color: #121212;
}

.faq-item:hover .faq-item__content,
.faq-item.is-open .faq-item__content,
.faq-item:focus-within .faq-item__content {
  grid-template-columns: minmax(0, 38%) minmax(0, 1fr);
}

.faq-item:hover .faq-item__answer,
.faq-item.is-open .faq-item__answer,
.faq-item:focus-within .faq-item__answer {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
  max-height: 120px;
  transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1), transform 0.4s cubic-bezier(0.4, 0, 0.2, 1), max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s;
}

.faq-item.is-open .faq-item__toggle {
  transform: rotate(90deg);
}

.tour-faq-item {
  border-bottom: 1px solid #dbdfe7 !important;
  padding-bottom: 16px;
}

@media (max-width: 991px) {
  .faq-item:hover .faq-item__content,
  .faq-item.is-open .faq-item__content,
  .faq-item:focus-within .faq-item__content {
    grid-template-columns: minmax(0, 45%) minmax(0, 1fr);
  }
}
@media (max-width: 767px) {
  .faq-item__trigger {
    column-gap: 16px;
    row-gap: 12px;
    padding: 16px;
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto 0fr;
    grid-template-areas: "badge toggle" "content content";
    transition: background 0.4s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.4s cubic-bezier(0.4, 0, 0.2, 1), grid-template-rows 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  }
  .faq-item__badge {
    width: auto;
    padding-left: 0;
  }
  .faq-item__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
  .faq-item__answer {
    transform: translateY(6px);
  }
  .faq-item:hover .faq-item__trigger,
  .faq-item.is-open .faq-item__trigger,
  .faq-item:focus-within .faq-item__trigger {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto auto auto;
  }
  .faq-item:hover .faq-item__answer,
  .faq-item.is-open .faq-item__answer,
  .faq-item:focus-within .faq-item__answer {
    transform: translateY(0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .faq-item__trigger,
  .faq-item__question,
  .faq-item__answer,
  .faq-item__toggle {
    transition-duration: 0.01ms;
  }
}
.footer-topbar {
  padding: 16px 0;
  background: #f9f6f1;
  border-bottom: 1px solid #e8e4dc;
}

.footer-topbar__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.footer-contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 32px;
}

.footer-contact__divider {
  width: 1px;
  height: 54px;
  background: #d8d8d8;
  opacity: 0.7;
}

.footer-contact__item {
  display: flex;
  align-items: center;
  gap: 16px;
}
.footer-contact__item img {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}

.footer-contact__label {
  display: block;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
  opacity: 0.6;
}

.footer-contact__value {
  display: block;
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
}
.footer-contact__value:hover, .footer-contact__value:focus {
  color: #1d2a5c;
  text-decoration: none;
}

.footer-social {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.footer-social > span {
  color: #121212;
  font-family: "Medium", sans-serif;
  font-size: 14px;
  line-height: 22px;
  text-transform: uppercase;
  opacity: 0.6;
}

.footer-social__link {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 12px;
  text-decoration: none;
}
.footer-social__link:hover, .footer-social__link:focus {
  text-decoration: none;
  opacity: 0.85;
}
.footer-social__link img {
  width: 44px;
  height: 44px;
  object-fit: contain;
  display: block;
}

.footer-main {
  padding: 40px 0;
  background: #fff;
}

.footer-main__grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr 1fr;
  gap: 40px;
  padding-bottom: 28px;
  border-bottom: 1px solid #e8e8e8;
  margin-bottom: 28px;
}

.footer-brand__logo {
  display: block;
  max-width: 263px;
  margin-bottom: 40px;
}
.footer-brand__logo img {
  width: 263px;
  height: 56px;
}

.footer-brand__title {
  margin: 0 0 16px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 24px;
  line-height: 32px;
}

.footer-brand__text {
  margin: 0 0 16px;
  color: #121212;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.footer-brand__address {
  margin: 0 0 12px;
  color: #131313;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}
.footer-brand__address strong {
  font-family: "Medium", sans-serif;
  font-weight: 500;
}

.footer-nav__title {
  margin: 0 0 24px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
}

.footer-nav__cols {
  display: flex;
  gap: 40px;
}

.footer-nav__cols ul {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footer-nav__cols a {
  color: #131313;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  text-decoration: none;
}
.footer-nav__cols a:hover, .footer-nav__cols a:focus {
  color: #1d2a5c;
  text-decoration: none;
}

.footer-newsletter__title {
  margin: 0 0 8px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
}

.footer-newsletter__desc {
  margin: 0 0 16px;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

.footer-newsletter__form {
  display: flex;
  align-items: center;
  height: 48px;
  margin-bottom: 40px;
  padding: 4px 4px 4px 24px;
  border: 1px solid #85b0de;
  border-radius: 64px;
  background: #fff;
}

.footer-newsletter__input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
  color: #8c8c8c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
  outline: none;
}
.footer-newsletter__input::placeholder {
  color: #8c8c8c;
}

.footer-newsletter__submit {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #1d2a5c;
  cursor: pointer;
}
.footer-newsletter__submit img {
  width: 20px;
  height: 20px;
}

.footer-payments__title {
  margin: 0 0 14px;
  color: #1d2a5c;
  font-family: "Medium", sans-serif;
  font-size: 18px;
  line-height: 26px;
  text-transform: uppercase;
}

.footer-payments__list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.footer-payments__badge {
  min-width: 72px;
  height: 40px;
  padding: 0 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 2px;
  background: #f3f3f3;
  color: #1d2a5c;
  font-family: "SemiBold", sans-serif;
  font-size: 12px;
  line-height: 1;
  text-transform: uppercase;
}
.footer-payments__badge img {
  max-width: 100%;
  max-height: 100%;
  display: block;
  object-fit: contain;
}

.footer-dmca img {
  height: 32px;
  width: auto;
  margin-top: 20px;
}

.footer-copy {
  text-align: center;
  color: #1d2a5c;
  font-family: "Regular", sans-serif !important;
  font-size: 16px;
  line-height: 24px;
}

@media (max-width: 991px) {
  .footer-main__grid {
    grid-template-columns: 1fr;
  }
  .footer-nav__cols {
    flex-direction: column;
    gap: 24px;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 6rem;
}

body {
  font-family: "Regular", sans-serif !important;
  top: 0 !important;
}

.container {
  width: 100%;
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
@media (min-width: 768px) {
  .container {
    width: 100%;
  }
}
@media (min-width: 992px) {
  .container {
    width: 100%;
  }
}
@media (min-width: 1200px) {
  .container {
    width: 100%;
    max-width: 1320px;
  }
}
@media (max-width: 1366px) {
  .container {
    max-width: 1230px;
  }
}
@media (max-width: 1100px) {
  .container {
    max-width: 1090px;
  }
}
@media (max-width: 768px) {
  .container {
    max-width: 764px;
  }
}

.ul-reset {
  padding: 0;
  margin: 0;
}
.ul-reset li {
  list-style: none;
  outline: none;
}

.provider-sidebar__label {
  white-space: nowrap;
}

/*# sourceMappingURL=style.css.map */
