.itinerary-banner__section {
  background: linear-gradient(180deg, #e4f6ff 0%, #ffffff 100%);
}
.itinerary-banner__section .section-wrap {
  max-width: 100%;
  margin: 0 0 clamp(16px, 3vw, 26px);
}
.itinerary-banner__section .section-wrap h1 {
  color: #0787c9;
}
.itinerary-banner__section .section-wrap p {
  margin: 0;
}
.itinerary-single__banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  aspect-ratio: 12/5;
}
.itinerary-banner__wrapper {
  display: flex;
  align-items: start;
  gap: 14px;
  position: relative;
}
.view__img {
  position: absolute;
  right: 15px;
  bottom: 25px;
  font-weight: 500;
  border-radius: 2px;
  padding: 8px 8px;
  font-size: 12px;
  color: #fff;
  z-index: 99;
  background: rgba(255, 255, 255, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(6.6px);
  border-radius: 8px;
  cursor: pointer;
}
.view__img:hover {
  background-color: var(--primary);
  color: var(--light);
}
.itinerary-banner__wrapper figure {
  margin: 0;
  cursor: pointer;
  flex: 1;
}
.itinerary-banner__wrapper figure img {
  width: 100%;
  height: 494px;
  object-fit: cover;
}
.itinerary-banner__wrapper figure:nth-child(1) {
  clip-path: polygon(96% 0, 100% 4%, 100% 100%, 0 100%, 0 0);
  flex: 2;
}
.itinerary-banner__wrapper figure:nth-child(2) {
  clip-path: polygon(4% 0, 96% 0, 100% 4%, 100% 100%, 0 100%, 0 4%);
}
.itinerary-banner__wrapper figure:nth-child(3) {
  clip-path: polygon(4% 0, 100% 0, 100% 100%, 0 100%, 0 4%);
}
.itinerary-banner__wrapper figure:not(:nth-child(-n + 3)) {
  display: none;
}
.itinerary-tabs {
  position: sticky;
  top: 0;
  background-color: #fefeff;
  box-shadow: 0 4px 20px -6px #00000014;
  padding: clamp(14px, 2vw, 24px) 0;
  z-index: 99;
}
.itinerary-tabs ul {
  display: flex;
  overflow-x: auto;
  white-space: nowrap;
  gap: clamp(20px, 3vw, 45px);
  scrollbar-width: none;
  list-style: none;
  margin: 0;
  padding: 0;
}
.itinerary-tabs ul::-webkit-scrollbar {
  display: none;
}
.itinerary-tabs li {
  flex: 0 0 auto;
}
.itinerary-tabs li a {
  font-size: 16px;
  font-weight: 500;
  color: #1f1f1f;
}
.itinerary-tabs li a.active {
  color: var(--primary);
}

.trip-overview__section > div:not(:last-child),
.itinerary-content > section:not(:last-child) {
  margin-bottom: clamp(30px, 3vw, 45px);
}
.itinerary-main__wrapper {
  display: flex;
  align-items: start;
  gap: clamp(30px, 3vw, 40px);
}
.itinerary-content h2.entry-title {
  margin-bottom: clamp(12px, 2vw, 20px);
}
.itinerary-content {
  width: 100%;
}

.trip-overview__wrapper {
  display: flex;
  align-items: start;
  gap: 45px;
  row-gap: 30px;
  flex-wrap: wrap;
}
.trip-overview__container {
  display: flex;
  align-items: start;
  gap: 10px;
  width: calc(33.33% - 30px);
}
.trip-overview__container img {
  max-width: 27px;
  margin-top: 4px;
}
.trip-overview__container p {
  font-weight: 500;
  margin: 0 0 3px;
  line-height: 1;
}
.trip-overview__content {
  overflow: hidden;
}

.trip-highlight__section {
  padding: clamp(20px, 3vw, 35px);
  border-radius: 12px;
  background-color: #e0f2fe;
}
.trip-highlight__section ul {
  list-style: disc;
  margin: 0;
  padding: 0 0 0 25px;
}
.trip-highlight__section ul li {
  font-size: 18px;
  margin-bottom: 8px;
  line-height: 1.4;
}
.trip-highlight__section ul li:last-child {
  margin-bottom: 0;
}
.trip-itinerary__section .uk-accordion > li {
  box-shadow: 0px 1px 4px 0px #00000033;
  background-color: var(--light);
  border-radius: 12px;
  padding: clamp(20px, 3vw, 25px);
}
.trip-itinerary__section .uk-accordion-title::before {
  content: unset !important;
}
.trip-itinerary__section .uk-open > .uk-accordion-title::after {
  content: "\f077";
  color: #585858;
}
.trip-itinerary__section .uk-accordion-title::after {
  content: "\f078";
  color: #585858;
  font-size: 14px;
  width: 27px;
  min-width: 27px;
  height: 27px;
  border: 1px solid #e5e5e5;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
}
.trip-itinerary__section .uk-accordion-title {
  font-size: clamp(18px, 2vw, 20px);
  color: #585858;
  font-weight: 500;
  overflow: visible;
  display: flex;
  align-items: start;
  gap: 12px;
  justify-content: space-between;
}
.trip-itinerary__section .uk-accordion-title .day-count {
  width: auto;
}
.trip-itinerary__section .uk-accordion-title span {
  color: var(--light);
  border-radius: 8px;
  padding: 7px 16px;
  background-color: #0787c9;
  display: inline-block;
  width: fit-content;
  text-align: center;
  margin-right: 10px;
  position: relative;
  white-space: nowrap;
}
.trip-itinerary__section .uk-accordion-title div {
  width: 100%;
}
.trip-itinerary__section .uk-accordion-title span::after {
  content: "";
  width: 15px;
  height: 11px;
  background-color: #0787c9;
  left: 50%;
  transform: translateX(-50%);
  position: absolute;
  bottom: -9px;
  clip-path: polygon(100% 0, 0 0, 60% 100%);
}
.trip-itinerary__section .uk-accordion-content {
  margin-top: clamp(10px, 2vw, 16px);
}
.trip-itinerary__section .uk-accordion-content p {
  font-size: 18px;
  color: #616161;
}
.trip-iti__wrapper {
  display: flex;
  align-items: start;
  gap: 40px;
  row-gap: 20px;
  flex-wrap: wrap;
  width: 100%;
}
.uk-open .trip-iti__wrapper {
  border-top: 1px solid #e5e5e5;
  padding-top: 15px;
  margin-top: 15px;
}
.trip-iti__container {
  display: flex;
  align-items: start;
  gap: 10px;
  position: relative;
}
.trip-iti__container:not(:last-child)::after {
  content: "";
  width: 1px;
  height: 29px;
  background-color: #e5e5e5;
  position: absolute;
  right: -22px;
  top: 50%;
  transform: translateY(-50%);
}
.trip-iti__container img {
  margin-top: 4px;
  max-width: 27px;
}
.trip-iti__container p {
  font-weight: 500;
  margin: 0 0 3px;
  line-height: 1;
}

.include-exclude__section > div:not(:last-child) {
  margin-bottom: clamp(20px, 3vw, 25px);
  padding-bottom: clamp(25px, 3vw, 30px);
  border-bottom: 1px solid #cccccc;
}
.include-exclude__section ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.include-exclude__section ul li {
  position: relative;
  color: #616161;
  font-size: 18px;
  display: flex;
  align-items: start;
  gap: 10px;
  margin-bottom: 12px;
}
.include-exclude__section ul li:last-child {
  margin-bottom: 0;
}
.include-exclude__section ul li::before {
  content: url(../img/include.png);
  line-height: 1;
  margin-top: 2px;
}
.include-exclude__section .trip-exclude__section ul li::before {
  content: url(../img/exclude.png);
}

.addition-info__section,
.trip_note {
  padding: clamp(20px, 3vw, 35px);
  border-radius: 12px;
  background-color: #fff1e9;
}
.trip_note > span {
  font-size: 20px;
  font-weight: 500;
  display: block;
  margin-bottom: 6px;
}
.addition-info__section .content__area ul {
  margin: 10px 0 20px;
}

.trip-accomodation__wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
}
.trip-accomodation__wrapper .travel__container .entry-content {
  padding: 18px;
  padding-bottom: 24px;
}
.trip-accomodation__wrapper .travel__container img {
  height: 240px;
}

.transportation__container {
  display: flex;
  align-items: center;
  gap: 20px;
}
.transportation__container:not(:last-child) {
  margin-bottom: clamp(14px, 3vw, 20px);
}
.transportation__container > div {
  width: 60%;
}
.transportation__container > div:first-child {
  width: 40%;
}
.transportation__container img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.pricing-pax {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
.outer-section .ask-expert {
  display: none;
}

.itinerary-sidebar {
  max-width: 348px;
  width: 100%;
  min-width: 310px;
  position: sticky;
  top: 90px;
}
.itinerary-sidebar > div:not(:last-child) {
  margin-bottom: clamp(20px, 3vw, 30px);
}
.ask-expert {
  text-align: center;
}
.ask-expert h2 {
  margin-bottom: 25px;
}
.ask-expert h3 {
  font-size: 18px;
  font-weight: 500;
  margin: 6px 0 4px;
  color: var(--text-2);
}
.ask-expert p {
  font-size: 16px;
  margin: 6px 0 0 0;
}
.ask-expert a {
  color: var(--primary);
  text-decoration: underline;
}
.ask-expert img {
  width: 65px;
  height: 65px;
  border-radius: 50%;
  object-fit: cover;
}
.itinerary-sidebar__wrapper,
.ask-expert {
  border: 1px solid #2691c836;
  box-shadow: 0px 6px 12px 0px #7baec61a;
  border-radius: 12px;
  padding: clamp(20px, 3vw, 25px);
}
.itinerary-sidebar__wrapper > div {
  margin-bottom: clamp(15px, 2vw, 20px);
}
.itinerary-sidebar__wrapper > div:last-of-type {
  margin-bottom: 0;
}
.itinerary-sidebar__wrapper p {
  font-size: 20px;
}
.itinerary-sidebar__wrapper h2 {
  font-size: clamp(26px, 3vw, 36px);
  margin: 0;
  line-height: 1;
}
.itinerary-sidebar__wrapper h2 span {
  font-size: clamp(20px, 2vw, 24px);
}
.itinerary-sidebar__wrapper .btn {
  width: 100%;
  margin-bottom: clamp(15px, 2vw, 20px);
  cursor: pointer;
}
.itinerary-sidebar__wrapper form input,
.itinerary-sidebar__wrapper form textarea {
  border: 1px solid #00000033;
}
.itinerary-sidebar__wrapper form input.wpcf7-submit {
  margin-top: 12px;
}
.itinerary-sidebar__wrapper .group-price {
  background-color: #eef8ff;
  padding: 10px;
  border-radius: 8px;
}
.itinerary-sidebar__wrapper table {
  width: 100%;
  font-size: 16px;
}
.itinerary-sidebar__wrapper thead,
.itinerary-sidebar__wrapper tbody {
  display: block;
  width: 100%;
}
.itinerary-sidebar__wrapper thead tr {
  position: relative;
  display: block;
  margin-bottom: 8px;
  padding-bottom: 8px;
  overflow: hidden;
}
.itinerary-sidebar__wrapper thead tr::after {
  content: "";
  width: 100%;
  height: 1px;
  background-color: var(--secondary);
  position: absolute;
  left: 0;
  bottom: 0;
}
.itinerary-sidebar__wrapper thead th {
  font-weight: 500;
  color: var(--secondary);
  font-size: 18px;
}
.itinerary-sidebar__wrapper thead th:first-child,
.itinerary-sidebar__wrapper tbody tr td:first-child {
  float: left;
}
.itinerary-sidebar__wrapper thead th:last-child,
.itinerary-sidebar__wrapper tbody tr td:last-child {
  text-align: right;
  float: right;
}
.itinerary-sidebar__wrapper table tbody tr {
  display: block;
  padding: 6px 0;
  overflow: hidden;
  position: relative;
}
.itinerary-sidebar__wrapper table tbody tr::before {
  content: "";
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  border: 1px dashed var(--secondary);
}
.itinerary-sidebar__wrapper table tbody tr td {
  background-color: #eef8ff;
  position: relative;
}
.itinerary-sidebar__wrapper table tbody tr td:first-child {
  padding: 0 6px 0 0;
}
.itinerary-sidebar__wrapper table tbody tr td:last-child {
  padding: 0 0 0 6px;
}
.itinerary-sidebar__wrapper .wpcf7-spinner {
  position: absolute;
  right: 12px;
  top: auto;
  margin: 0;
  bottom: 14px;
}

.pax-selector .qty-btn {
  background-color: #eeeeee;
  border: unset;
  border-radius: 4px;
  cursor: pointer;
  width: 36px;
  height: 36px;
  font-size: 18px;
}
.pax-selector .quantity {
  display: flex;
  gap: 6px;
}
.pax-selector label {
  margin-bottom: 14px;
  display: block;
}
.pax-selector input {
  outline: unset;
  padding: 4px 10px;
  height: 35px;
  width: 65px;
  border: 1px solid #eeeeee;
  text-align: center;
  border-radius: 4px;
}
.pax-selector input::-webkit-outer-spin-button,
.pax-selector input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.pax-selector input[type="number"] {
  -moz-appearance: textfield;
}

.outer-section > section {
  margin-bottom: clamp(30px, 3vw, 45px);
}
.outer-section > section:last-child {
  margin-bottom: 0;
}
.outer-section h2.entry-title {
  margin-bottom: clamp(12px, 2vw, 20px);
}

@media (max-width: 1600px) {
  .itinerary-banner__wrapper figure img {
    height: 400px;
  }
}
@media (max-width: 1200px) {
  .itinerary-banner__wrapper figure img {
    height: 300px;
  }
}
@media (max-width: 1024px) {
  .trip-overview__container {
    width: calc(50% - 22.5px);
  }
}
@media (max-width: 989px) {
  .itinerary-main__wrapper {
    flex-direction: column-reverse;
  }
  .itinerary-sidebar {
    max-width: 100%;
    position: unset;
  }
  .ask-expert {
    display: none;
  }
  .outer-section .ask-expert {
    display: block;
  }
  .trip-itinerary__section .uk-accordion-title {
    flex-wrap: wrap;
    gap: 0;
    row-gap: 10px;
    position: relative;
  }
  .trip-itinerary__section .uk-accordion-title > div {
    width: 100%;
  }
  .trip-itinerary__section .uk-accordion-title::after {
    position: absolute;
    top: 0;
    right: 0;
  }
  .trip-itinerary__section .uk-accordion-title span {
    padding: 3px 9px;
    font-size: 14px;
    margin-right: 0;
  }
  .trip-itinerary__section .uk-accordion-title span::after {
    width: 11px;
    height: 7px;
    bottom: -6px;
  }
}
@media (max-width: 767px) {
  .itinerary-banner__wrapper figure img {
    height: 200px;
  }
  .trip-overview__wrapper {
    gap: 20px;
  }
  .trip-overview__container img {
    max-width: 20px;
  }
  .trip-overview__container {
    gap: 6px;
  }
  .transportation__container > div:first-child {
    width: 30%;
  }
  .transportation__container > div {
    width: 70%;
  }
}
@media (max-width: 567px) {
  .itinerary-banner__wrapper figure:not(:first-child) {
    display: none;
  }
  .itinerary-banner__wrapper figure img {
    height: 100%;
  }
}
