@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600;9..144,650;9..144,700&family=Manrope:wght@400;500;600;700;800&display=swap");

body {
  font-family: "Poppins", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.banner h1,
.banner h2,
.banner h3,
b,
strong {
  font-weight: 600;
}

.dark,
.dark p,
.dark td {
  color: #fff;
  line-height: 1.6;
}

.box-text a:not(.button),
.box-text h1,
.box-text h2,
.box-text h3,
.box-text h4,
.box-text h5,
.box-text h6,
.box-text p {
  margin: 0;
}

.icon-box-img img,
.icon-box-img svg {
  padding: 0;
}

.d-flex {
  display: flex !important;
}

.flex-column {
  flex-direction: column !important;
}

.justify-content-center {
  justify-content: center !important;
}

.align-items-center {
  align-items: center !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.slider.flickity-enabled button.flickity-prev-next-button {
  border-radius: 99px;
  width: 2.5rem;
  height: 2.5rem;
  top: 50%;
  bottom: unset;
  transform: translateY(-50%) !important;
  border: 0;
  border: 1px solid rgb(229, 231, 235);
  box-shadow:
    0 1px 3px 0 rgba(0, 0, 0, 0.1),
    0 1px 2px -1px rgba(0, 0, 0, 0.1);
  opacity: 1 !important;
  margin-top: unset;
  background-color: #fff;
}

.slider.flickity-enabled
  button.flickity-prev-next-button
  svg.flickity-button-icon {
  width: 2rem;
  height: 2rem;
  background-color: transparent !important;
  border-color: transparent !important;
  fill: #242424 !important;
}

.slider.flickity-enabled
  button.flickity-prev-next-button
  svg.flickity-button-icon
  path {
  fill: #242424 !important;
}

#masthead .nav > li {
  margin: 0 15px;
}

#masthead .nav > li > a {
  font-weight: 600;
  font-size: 16px;
  line-height: 22px;
  text-transform: none;
}

.product-small .price del .amount,
.product-small .price del .amount bdi {
  color: #000;
  font-size: 12px;
  font-weight: 400;
  opacity: 0.7;
}

.product-small .price ins .amount,
.product-small .price ins .amount bdi {
  color: #d00000;
  font-size: 15px;
  font-weight: 700;
}

.sec-title {
  position: relative;
  background-color: #000;
  padding: 30px 15px;
  overflow: hidden;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 150px;
  margin-bottom: 25px;
  border-top: 8px solid #ff7235;
  margin-bottom: 60px;
}

.sec-title h2 {
  color: #ff7235;
  font-size: 2.5rem;
  text-transform: uppercase;
  letter-spacing: -1px;
  margin: 0 0 5px 0;
  line-height: 1.1;
}

.sec-title h3 {
  color: #ff7235;
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 3px;
  margin: 0 0 25px 0;
  display: inline-block;
  border-bottom: 3px solid #ff7235;
  padding-bottom: 5px;
  width: fit-content;
}

.sec-title p {
  color: #fff;
  font-size: 1.1rem;
  font-weight: 300;
  line-height: 1.6;
  opacity: 0.9;
  margin-bottom: 0;
}

.sec-title .img1 {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  max-width: 35%;
}

.sec-title .img2 {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  max-width: 35%;
}

.sec-title img {
  height: 100% !important;
}

/* home */
.home2 {
  background: rgb(248, 243, 227);
  padding-top: 60px;
}

.home2 .container {
  max-width: 1000px;
}

.home2 .box-text {
  width: 100%;
  height: 100%;
}

.home2 .box-text h3 {
  padding: 15px 10px !important;
  background: #ff7235a8;
  position: absolute;
  bottom: 0;
  left: 0;
}

.home2 .box-text h3 {
  color: #fff;
}

.home2 .box p {
  display: none;
  font-size: 18px;
  font-weight: 300 !important;
  text-align: left !important;
  letter-spacing: 0;
  text-align: justify !important;
  word-spacing: -2px;
  color: #f1f1f1;
}

.home2 .box:hover p {
  display: block;
}

.home2 .box .overlay {
  background-color: rgba(0, 0, 0, 0.5);
}

.home_products {
  background: rgb(248, 243, 227);
  padding-top: 60px;
  padding-bottom: 60px;
}

.home_products .button.is-outline,
.home_bikes .button.is-outline {
  padding: 11px;
  text-transform: uppercase;
  color: #ff4d00;
  font-size: 16px;
  font-weight: 600;
  line-height: 150%;
  border: 2px solid #ff4d00;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: fit-content;
  margin: 0 auto;
  margin-top: 30px;
}

.home_bikes {
  padding-bottom: 60px;
}

/* about */
.about1 {
  padding-top: 60px;
}

.about1 h1 {
  text-align: center;
  font-size: 40px;
  font-weight: 500;
  line-height: 60px;
  max-width: 850px;
  margin: 0 auto 50px auto;
}

.about1 .banner {
  border-radius: 20px;
  overflow: hidden;
}

.about2 {
  padding-top: 60px;
}

.about4 {
  padding: 134px 0px 125px;
}

.about4 h3 {
  color: #ff4d00;
}

.about4 h2 {
  color: #fff;
  font-size: 50px;
  font-style: normal;
  line-height: 65px;
  text-transform: uppercase;
  max-width: 445px;
  margin-bottom: 0;
}

.about4 .img {
  border-radius: 80% 60% 40% 40%;
  overflow: hidden;
}

.about4 .slider.flickity-enabled button.flickity-prev-next-button {
  display: none !important;
}

.about4 .flickity-page-dots {
  margin: 0;
  bottom: -20px;
}

.home4.about4 {
  background-color: #fff;
}

.home_blog {
  padding-top: 60px;
  padding-bottom: 30px;
}

.home_blog h2 {
  margin-bottom: 40px;
}

.home_blog .flickity-page-dots {
  display: none;
}

.home3 {
  padding-bottom: 30px;
}

.sec_contact {
  padding: 90px 0px 30px;
  background: #4c2100;
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.sec_contact input[type="text"],
.sec_contact input[type="email"],
.sec_contact input[type="date"] {
  width: 100%;
  border-radius: 3px;
  background: #fff;
  height: 60px;
  border: 0;
  padding-left: 48px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.sec_contact .box_inp {
  width: 100%;
  margin-bottom: 15px;
  position: relative;
  border-radius: 3px;
  text-align: left;
}

.sec_contact .box_inp:before {
  content: "";
  width: 21px;
  height: 21px;
  display: inline-block;
  position: absolute;
  left: 20px;
  top: 20px;
  background: url(/wp-content/uploads/icon_tour.png) no-repeat;
  z-index: 2;
}

.sec_contact .inp_name:before {
  background-position: -72px -4px;
}

.sec_contact .inp_email:before {
  background-position: -95px -4px;
}

.sec_contact .inp_phone:before {
  background-position: -122px -4px;
}

.sec_contact .inp_country:before {
  background-position: -148px -4px;
}

.sec_contact .departure_date:before {
  background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAFPSURBVHgB7VTLUYRAEB1YijMZiBlgBGoESwbKCSgOhqBmsB4oCi5gBLtGIEYgZkAIe4Xi42uroVgKDqMePPiqhqa7p1/3TM+MECsIw9CKosic29M0NeI4ttfi1CUjBWia9r7ZbO7nvqqqHiD2SHa1FKsMP1QNSO76vjegmpAUUCqKkk8D2G6ynfzHpmmefN8vR0IiU1X1lSaK76HUdf3CcZyjylltJjt0XedgPJMd8o31cQwVQ2ak47eg2Lqub8musdNggg+UnqEhBSq+xDi4rptNS8H+0lyrbdtHWiavzkKsMRLOEQQBZT1f8iHBDmInVnBCiK5ukyQ5E3KwsGXLhHBYNEH8APMlU1NehASwf1sIe5FwaIqQADdlJFTFL+Of8A8Sfh0btL1geSN7U/hhIZT0Gd9DXPq9mBxQSdLc87zrE0ICv8KmkEOJy5APyidKk5lKqRAuVgAAAABJRU5ErkJggg==);
}

.sec_contact .box_inp.inp_submit::before {
  display: none;
}

button.btn_submit_advice {
  padding: 0;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  border-radius: 3px;
  max-width: 417px;
  background-color: #ff4d00;
  width: 300px;
  margin: 0 auto !important;
  display: block;
}

/* single tour */
#iso_box_information {
  border-radius: 8px;
  border: 1px solid #ddd;
  background: #fff;
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  overflow: hidden;
}

#iso_box_information .row.row-collapse > .medium-6 {
  padding: 30px !important;
}

#iso_box_information .row.row-collapse > .medium-2 {
  padding: 30px 15px !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
  background: #fff0eb;
}

.iso_box_tour {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-height: 100%;
  overflow: auto;
}

h1.post-title {
  font-size: 24px;
  font-weight: 600;
  line-height: 150%;
}

.iso_box_lst_item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.iso_box_item {
  display: flex;
  gap: 8px;
  color: #333;
  font-size: 16px;
  font-weight: 500;
  line-height: 150%;
}

.iso_box_item a {
  color: #0d6efd;
}

.iso_box_item svg {
  top: 2px;
}

.iso_box_right_price span {
  color: #666;
  text-align: justify;
  font-size: 16px;
  font-weight: 500;
  line-height: 150%;
}

.iso_tour_price,
.iso_tour_price .discounted_price span {
  color: #333;
  text-align: center;
  font-size: 26px;
  font-weight: 700;
  line-height: 150%;
}

.iso_btn_book_now {
  background: #ff4d00;
  color: #fff !important;
  text-align: justify;
  font-size: 14px;
  font-weight: 700;
  line-height: 150%;
  padding: 10px;
  width: 100%;
  display: flex;
  justify-content: center;
  transition: 0.3s ease;
}

.iso_btn_enquiry {
  background: #fff;
  color: #ff4d00 !important;
}

.iso_tour_contact span {
  color: #666;
  text-align: center;
  font-size: 14px;
  font-weight: 400;
  line-height: 150%;
}

.iso_btn_contact_us {
  color: #ff4d00 !important;
  font-size: 14px;
  font-weight: 500;
  line-height: 150%;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-skip-ink: auto;
  text-decoration-thickness: auto;
  text-underline-offset: auto;
  text-underline-position: from-font;
  margin-top: 10px;
  box-shadow: unset;
}

.iso_btn_contact_us:hover {
  box-shadow: unset !important;
  color: #ff4d00 !important;
  text-decoration-line: underline;
}

.front_btn_hover:hover {
  box-shadow: inset 400px 50px 0 0 #ff4d00;
  text-transform: uppercase;
  transform: scale(1.05);
  letter-spacing: 2px;
  font-weight: 600;
  color: #fff !important;
  border: unset !important;
}

#iso_box_itinerary {
  margin-top: 60px;
  background: #fff9e6;
  padding: 60px 0 40px;
}

.iso_itinerary_item {
  border-radius: 12px;
  border: 1px solid #f5f5f5;
  background: #fff;
}

.iso_itinerary_flex {
  margin: 24px 0;
  overflow-y: scroll;
  max-height: 545px;
}

.iso_itinerary_left_item,
.iso_itinerary_right_item {
  padding-top: 20px;
  margin: 20px 20px 0 20px;
  border-top: 1px solid #d7d7d7;
  gap: 16px;
  display: flex;
}

.iso_itinerary_left_item {
  gap: 12px;
  cursor: pointer;
}

.iso_itinerary_left_item:first-child,
.iso_itinerary_right_item:first-child {
  margin-top: 0;
  border-top: unset;
  padding-top: 0;
}

.iso_itinerary_img {
  padding: 0;
  margin: 0;
  overflow: hidden;
  border-radius: 8px;
}

.iso_itinerary_title {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  line-height: 160%;
}

.iso_itinerary_flex::-webkit-scrollbar {
  width: 5px;
}

.iso_itinerary_flex::-webkit-scrollbar-thumb {
  background: #ddd;
  border-radius: 3px;
}

.iso_itinerary_flex::-webkit-scrollbar-track {
  background: #f5f5f5;
  border-radius: 3px;
}

.iso_itinerary_right_title {
  color: var(--fs-color-primary);
  font-size: 18px;
  font-weight: 600;
  line-height: 160%;
}

.iso_itinerary_right_content {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
}

.iso_itinerary_right_content > :last-child {
  margin-bottom: 0;
}

.box_img_mobile {
  display: none;
}

.iso_itinerary_left_item.active .iso_itinerary_title {
  color: #ff6c00;
}

#iso_gallery {
  padding-top: 60px;
  padding-bottom: 40px;
  background-color: #fff;
}

.iso_tour_map {
  padding-bottom: 60px;
  background-color: #fff;
}

iframe[src*="youtube.com"] {
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  display: block;
  border-radius: 8px;
  overflow: hidden;
  max-height: 600px;
}

.iso_gallery_video {
  margin-bottom: 20px;
}

.iso_gallery_img {
  border-radius: 8px;
  overflow: hidden;
}

.iso_box_title {
  color: #000;
  font-size: 32px;
  font-weight: 600;
  line-height: 160%;
  width: 100%;
}

.iso_tour_map .iso_box_title,
.iso_content_price .iso_box_title {
  width: 100%;
  text-align: center;
}

.iso_map_img {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin-top: 24px;
}

.iso_map_img img {
  max-width: 100%;
  max-height: 100%;
}

.iso_content_price {
  padding-top: 60px;
  padding-bottom: 60px;
  background: #f5f5f5;
}

.iso_content_price_intro {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 150%;
  text-align: center;
  margin-top: 24px;
}

.iso_price_editor {
  margin-top: 24px;
  border-radius: 8px;
  border: 1px solid #d7d7d7;
  background: #fff;
  overflow: hidden;
  border-spacing: 0px;
  padding: 19px;
  font-size: 16px;
  line-height: 29px;
}

.iso_price_editor table {
  width: 100% !important;
}

table {
  caption-side: bottom;
  border-collapse: collapse;
}

tbody,
td,
tfoot,
th,
thead,
tr {
  border-color: inherit;
  border-style: solid;
  border-width: 0;
}

.iso_price_editor table tr:first-child {
  background: #ff6c00;
}

.iso_price_editor table tr:first-child td {
  color: #fff;
}

.iso_price_editor table td {
  border: 1px solid #d7d7d7;
  padding: 15px 20px;
  font-size: 16px;
  color: #000;
  line-height: 29px;
}

.iso_price_editor p {
  margin: 0;
}

.iso_price_editor table td:nth-child(n + 2) {
  color: #ff6c00;
}

.iso_box_swiper {
  margin-top: 24px;
}

.iso_bike_item {
  display: flex;
  gap: 28px;
}

.iso_bike_img {
  width: calc(55% - 28px);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.iso_bike_img img {
  width: 100%;
  height: auto;
}

.iso_bike_information {
  width: 45%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: start;
  gap: 16px;
}

.iso_bike_title {
  color: #000;
  font-size: 32px;
  font-weight: 600;
  line-height: 160%;
  text-align: center;
}

.iso_bike_intro {
  color: var(--Neutral-2, #444);
  text-align: center;
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
}

.iso_bike_intro table {
  width: 100%;
  margin-top: 32px;
  border: 2px solid #d9d9d9;
}

.iso_bike_intro table tr td {
  text-align: left;
  padding: 7px 20px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 160%;
}

.iso_bike_intro table tr th {
  padding: 7px 20px;
  border: 1px solid #d9d9d9;
  background: #ff6c00;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  line-height: 160%;
}

.iso_bike_intro table tr td:first-child {
  font-weight: 600;
}

.iso_bike_intro div,
.iso_bike_intro p,
.iso_bike_intro span,
.iso_bike_intro h2,
.iso_bike_intro h3 {
  text-align: center !important;
  font-size: 16px;
  line-height: 160%;
}

.iso_bike_intro table tr td {
  text-align: left;
  padding: 7px 20px;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 160%;
}

#iso_box_bike_model {
  padding-top: 0;
  background-color: #fff;
}

#iso_supplementary_information {
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #fff;
}

.iso_supplementary_information_img {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 24px 0px 0px 24px;
  width: 45%;
  min-height: 300px;
}

.iso_supplementary_information_img .box-image {
  width: 100%;
}

.iso_supplementary_information_img img {
  width: 100%;
  height: 100%;
  min-height: 300px;
}

.iso_box_supplementary_information {
  width: calc(55% + 20px);
  padding: 30px;
  align-items: center;
  justify-content: center;
  background: #fbfbfb;
  border-radius: 24px;
  margin-left: -20px;
  gap: 12px;
  z-index: 2;
}

.iso_supplementary_information_btn {
  display: flex;
  width: 100%;
  gap: 19px 22px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.iso_btn_popup {
  width: calc(50% - 11px);
  border-radius: 12px;
  border: 1px solid var(--Neutral-5, #d7d7d7);
  background: #fff;
  box-shadow: 1px 1px 6px 0px rgba(20, 107, 188, 0.1);
  padding: 15px;
  display: flex;
  align-items: center;
  justify-content: start;
  gap: 16px;
  color: #000;
  font-size: 18px;
  font-weight: 600;
  line-height: 150%;
  text-align: start;
  margin: 0;
}

.iso_btn_popup:hover {
  text-transform: uppercase;
  transform: scale(1.05);
  transition: ease-out 0.4s;
  color: #ff6c00;
}

.iso_supplementary_information_intro {
  color: #666;
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
}

/* single-bike */
.box_detail_motorbike {
  padding-top: 30px;
  padding-bottom: 60px;
}

.motorbike_title {
  color: var(--fs-color-primary);
  line-height: 150%;
  width: fit-content;
  padding-bottom: 0px;
  border-bottom: 3px solid var(--fs-color-primary);
}

.tinymce_Content {
  font-size: 16px;
  line-height: 150%;
}

.tinymce_Content h2,
.tinymce_Content h3 {
  font-size: 20px;
}

.tinymce_Content h1,
.tinymce_Content h2,
.tinymce_Content h3,
.tinymce_Content h4,
.tinymce_Content h5,
.tinymce_Content h6 {
  color: var(--fs-color-primary);
  margin-bottom: 12px;
  scroll-margin-top: 120px;
}

.tinymce_Content ul,
.tinymce_Content ol {
  padding-left: 20px;
}

ol ol,
ol ul,
ul ol,
ul ul {
  margin-left: 0;
}

.box_motorbike_content {
  margin-top: 30px;
}

figcaption {
  display: flex !important;
  justify-content: center;
}

.tinymce_Content iframe,
.tinymce_Content img {
  max-width: 100% !important;
  height: auto;
  width: 100%;
  margin: 15px 0 !important;
}

.breadcrumb {
  justify-content: center;
  color: #666;
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  padding-top: 30px;
}

.iso_box_asked_questions {
  background-color: #fff;
  padding-top: 60px;
  padding-bottom: 30px;
}

.iso_form_contact {
  padding: 60px 0 40px;
  background: #fff9e6;
}

/* post-item */
.post-item .box {
  border-radius: 8px;
  border-width: 1px;
  border-style: solid;
  border-color: rgb(221, 221, 221);
  border-image: initial;
  background: rgb(255, 255, 255);
  transition: 0.4s all ease;
  overflow: hidden;
}

.post-item .box:hover {
  transform: translateY(-10px);
}

.post-item .box-text {
  padding: 28px 24px 20px;
  border-radius: 8px;
  border: 1px solid #ddd;
  background: #fff;
  box-shadow: 0px 2px 10px 0px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: space-between;
  margin-top: -20px;
  z-index: 1;
  position: relative;
}

.front_box_price {
  color: #666;
  text-align: justify;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid #999;
}

.front_box_price strong {
  color: #ff4d00;
  font-size: 22px;
  line-height: 150%;
  font-weight: 700;
}

.front_box_price .price-af {
  font-size: 14px;
  color: #ff4d00;
  line-height: 150%;
  font-weight: 700;
}

.post-item .post-title {
  color: #000;
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: 30px;
  margin-bottom: 15px;
}

.post-item .post-title a {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: inherit;
  text-decoration: none;
}

.box-blog-post .is-divider {
  display: none;
}

.from_the_blog_excerpt {
  display: none !important;
}

.front_btn_book_new {
  padding: 11px;
  text-transform: uppercase;
  color: #ff4d00;
  font-size: 16px;
  font-weight: 600;
  line-height: 150%;
  border: 2px solid #ff4d00;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  background: #fff;
  text-align: center;
}

.front_btn_hover {
  overflow: hidden;
  transition: 0.4s ease-out !important;
  box-shadow: 0 2px 8px 0 rgba(0, 48, 86, 0.16);
}

.front_btn_hover:hover {
  box-shadow: inset 400px 50px 0 0 #ff4d00;
  text-transform: uppercase;
  transform: scale(1.05);
  letter-spacing: 2px;
  font-weight: 600;
  color: #fff !important;
  border: unset !important;
}

.post-item .iso_box_lst_item {
  margin-bottom: 24px;
}

.post-item .iso_box_item a {
  color: #000;
  transition: all 0.3s ease;
}

.post-item .iso_box_item a:hover {
  color: #ff4d00;
}

.front_btn_hover:hover::before {
  content: "";
  position: absolute;
  width: 116px;
  height: 190px;
  background: linear-gradient(
    270deg,
    rgba(255, 255, 255, 0) 0,
    rgba(255, 255, 255, 0.5) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: rotateZ(30.604deg);
  left: -296px;
  bottom: -91px;
  animation: 1.6s linear infinite vnx_ctm_btn;
}

@keyframes vnx_ctm_btn {
  0% {
    left: -296px;
  }

  to {
    left: 296px;
  }
}

.bike-item .box-image {
  padding: 10px 20px;
}

.bike-item .box-text {
  padding: 18px 30px;
  background: var(--Neutral-7, #fff);
  box-shadow: 0px 3px 10px 0px rgba(0, 0, 0, 0.25);
  margin-top: 10px;
}

.bike-item .box-text h5 {
  color: #000;
  text-align: center;
  font-size: 22px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  text-transform: uppercase;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 0;
}

.bike-item .box-text h5 a {
  color: #000;
}

.bike-item .box:hover {
  border: 2px solid #ff4d00;
}

@keyframes moveWave {
  0% {
    transform: translate(-150%, -50%);
  }

  100% {
    transform: translate(-50%, -50%);
  }
}

.img_motorbike_hover {
  display: none;
}

.bike-item .box:hover .img_motorbike_hover {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  animation: moveWave 2.5s ease-out forwards;
  transform: translate(-50%, -50%);
  width: calc(100% - 40px);
}

.bike-item .box:hover .box-image > .image-cover {
  opacity: 0;
}

.publish_date,
.publish_date li {
  margin: 0 !important;
  list-style: none;
}

.publish_date {
  color: #666;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  margin: 0;
  padding-left: 2rem;
}

.category {
  color: #ff4d00;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.main_blog_title {
  color: #000;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  margin-bottom: 18px;
  text-decoration: none;
  display: block;
}

.main_blog_title:hover {
  color: #ff4d00;
}

.main_blog_intro {
  color: #666;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 20px;
}

.view_more_blog {
  color: #ff4d00;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 24px;
  margin-bottom: 20px;
  text-decoration: none;
}

.post-small h3 {
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 24px;
  margin-bottom: 0.5rem;
}

.post-small h3 a {
  color: #000;
  text-decoration: none;
}

.post-small .box-text {
  padding-top: 15px;
  padding-bottom: 0;
}

.post-small .blog_intro {
  margin-top: 10px;
}

span.widget-title {
  color: #4c2100;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  border-bottom: solid 1px rgb(0, 0, 0, 0.1);
  padding-bottom: 13px;
  background: linear-gradient(#4c2100, #4c2100) no-repeat bottom left;
  background-size: 40px 2px;
}

.recent-blog-posts-li .badge-inner {
  width: 90px;
  height: 60px;
  min-width: 90px;
}

.recent-blog-posts a {
  color: #000;
  text-decoration: none;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  display: -webkit-box;
}

.recent-blog-posts .post_comments {
  display: none;
}

.category-link {
  list-style: none;
  margin-bottom: 15px;
}

.category-link a {
  color: #666;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-decoration: none;
}

.category-link a:hover,
.category-link a.current {
  color: #ff4d00;
}

ul.links {
  margin: 0 auto;
}

.blog_detail .blog_title {
  color: #000;
  font-size: 40px;
  font-style: normal;
  font-weight: 600;
  line-height: 60px;
}

.blog_detail .submitted {
  padding-bottom: 20px;
  border-bottom: 1px solid rgb(0, 0, 0, 0.1);
  margin: 11px 0 34px 0;
}

.submitted .publish_date {
  background: url(/wp-content/uploads/spite_blog.png) no-repeat -8px -34px;
  padding-left: 28px;
}

.submitted .category {
  background: url(/wp-content/uploads/spite_blog.png) no-repeat -3px -3px;
  padding-left: 32px;
  margin-left: 40px;
}

.submitted .btn_share {
  background:
    url(/wp-content/uploads/spite_blog.png) no-repeat -1px -59px,
    linear-gradient(#ff4d00, #ff4d00);
  padding: 4px 0 5px 32px;
  border-radius: 3px;
  color: #fff;
  text-decoration: none;
  width: 84px;
  height: 29px;
}

.submitted .share_box {
  margin-left: auto;
  position: relative;
  cursor: pointer;
}

.custom-breadcrumb {
  background: #f7f5f4;
}

.custom-breadcrumb {
  padding: 20px 0;
  color: #333;
  font-size: 12px;
  text-align: center;
}

.custom-breadcrumb a,
.custom-breadcrumb span span {
  color: #333;
  font-size: 14px;
}

.bikesPage {
  background: #f8f3e3;
}

.information_box_bikes .image-cover {
  background-color: #fff;
}

.layout-post,
.blog_detail,
.about1,
.about2,
.about3,
.about4,
.box_detail_motorbike {
  background-color: #f5f5f5;
}

.page-wrapper {
  padding: 0;
}

.form-control {
  display: block;
  width: 100%;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0.375rem;
  transition:
    border-color 0.15s ease-in-out,
    box-shadow 0.15s ease-in-out;
}

#iso_form_landing_page .form-control,
#iso_form_landing_page .form-control:focus,
#iso_form_landing_page .form-control:hover {
  border-radius: 8px;
  border: 1px solid #d9d9d9;
  background: #fff;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1) inset;
  padding: 11px 15px;
  font-size: 16px;
  line-height: 150%;
  margin-bottom: 0;
  height: 48px;
}

h2.iso_box_title {
  color: #000;
  font-size: 28px;
  font-weight: 600;
  line-height: 150%;
}

.iso_motorbike_label {
  display: inline-block;
  position: relative;
  padding: 11px 15px;
  cursor: pointer;
  transition: ease-out 0.4s;
  user-select: none;
  width: 100%;
  border-radius: 8px;
  border: 1px solid #666;
  background: #fff;
  display: block !important;
  text-align: center;
}

input[type="radio"]:checked + .iso_motorbike_label {
  color: #ff6c00 !important;
  font-style: normal;
  font-weight: 600 !important;
  border: 1px solid #ff6c00;
  width: 100%;
}

#iso_form_landing_page .form-label {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 150%;
}

#iso_form_landing_page button {
  border-radius: 4px;
  background: #ff4d00;
  padding: 12px 42px;
  border: unset;
  color: #fff;
  font-size: 16px;
  font-weight: 600;
  line-height: 30px;
  margin: 0;
}

#iso_upcoming_group_tour {
  background-color: #fff;
  padding-top: 60px;
  padding-bottom: 30px;
}

#iso_upcoming_group_tour .iso_box_title {
  text-align: center;
  color: #ff4d00;
  margin-bottom: 30px;
}

#iso_upcoming_group_tour .flickity-page-dots {
  display: none !important;
}

.iso_gallery_image_fisrt {
  background-color: #f5f5f5;
  padding-bottom: 60px;
}

.iso_gallery_image_fisrt .flickity-page-dots {
  display: none !important;
}

.box_head_content {
  margin: 0px auto 30px;
  max-width: 625px;
  padding: 62px 0px 45px;
  background: url(/wp-content/uploads/bg_top_list_tour.png) no-repeat;
  background-position: bottom center;
  background-size: contain;
}

h1.title_page {
  margin-top: 5px;
  color: #614124;
  text-align: center;
  font-size: 65px;
  font-style: normal;
  line-height: 75px;
  text-transform: uppercase;
  margin-bottom: 0.5rem;
}

.tour_category_intro {
  margin-top: 20px;
  font-size: 16px;
  line-height: 150%;
}

.sec_footer .col-logo .img {
  background-color: #fff;
  border-radius: 100%;
  overflow: hidden;
  max-width: 140px;
  margin: 0 auto;
}

.sec_footer h3 {
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 150%;
  text-transform: uppercase;
  margin-bottom: 30px;
}

.sec_footer ul {
  list-style: none;
}

.sec_footer ul li {
  margin: 0;
  margin-bottom: 10px;
  display: flex;
  gap: 15px;
  font-size: 16px;
}

.sec_footer ul li p {
  margin: 0;
}

@media only screen and (max-width: 48em) {
  /*************** ADD MOBILE ONLY CSS HERE  ***************/
  .off-canvas-left.mfp-ready .mfp-content,
  .off-canvas-right.mfp-ready .mfp-content {
    background-color: #fff;
    width: 90%;
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
  }

  .nav-icon.has-icon::before,
  .nav-icon.has-icon::after {
    display: none;
  }

  .nav > li.has-icon > a > i {
    color: var(--fs-color-primary);
  }

  .off-canvas .nav-vertical > li > a,
  .mobile-sidebar-levels-2
    .nav-slide
    > li
    > .sub-menu
    > li:not(.nav-slide-header)
    > a,
  .mobile-sidebar-levels-2
    .nav-slide
    > li
    > ul.children
    > li:not(.nav-slide-header)
    > a {
    font-size: 16px;
    text-transform: none;
    color: #222;
    font-weight: 500;
  }

  .off-canvas:not(.off-canvas-center) .nav-vertical li > a:hover,
  .off-canvas:not(.off-canvas-center)
    .nav-vertical
    li.current-menu-ancestor
    > a,
  .off-canvas:not(.off-canvas-center) .nav-vertical li.current-page-parent > a,
  .off-canvas:not(.off-canvas-center) .nav-vertical li.current_page_item > a {
    color: var(--fs-color-primary) !important;
  }

  .off-canvas .nav-vertical > li > .toggle {
    color: var(--fs-color-primary);
  }

  .nav-vertical > li > ul li a {
    font-size: 16px;
    font-weight: 500;
    color: #000;
  }

  .sidebar-menu-tabs {
    display: none !important;
  }

  .home2 .text {
    font-size: 100% !important;
  }

  .sec-title h2 {
    font-size: 2.2rem;
  }

  .about4 h2 {
    font-size: 2.2rem;
    line-height: 1.6;
  }

  .sec_footer .col-logo > .col-inner {
    display: flex;
  }

  .iso_gallery_image_fisrt .image-cover {
    padding-top: 300px !important;
  }

  .box_head_content {
    padding-top: 0;
  }

  h1.title_page {
    font-size: 2.2rem;
    line-height: 1.6;
  }

  #iso_box_information .row.row-collapse > .medium-6 {
    padding: 15px !important;
  }

  .iso_box_itinerary_col {
    display: none;
  }

  .box_img_mobile {
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-bottom: 20px;
  }

  .box_img_mobile img {
    width: 100%;
  }

  h2.iso_box_title {
    font-size: 24px;
  }

  .iso_box_supplementary_information.d-flex.flex-column {
    margin: 0;
    margin-top: 20px;
  }

  .iso_supplementary_information {
    flex-direction: column;
  }

  .iso_supplementary_information_img,
  .iso_box_supplementary_information {
    width: 100%;
    border-radius: unset;
  }

  .iso_box_supplementary_information {
    padding: 15px;
  }

  .iso_btn_popup {
    width: 100%;
  }

  .iso_bike_item {
    flex-direction: column;
  }

  .iso_bike_img,
  .iso_bike_information {
    width: 100%;
  }

  .buttons_bike .button_views_bike {
    padding: 10px 14px !important;
  }

  .title_bike {
    font-size: 24px !important;
  }

  .buttons_bike {
    margin: 0 !important;
  }

  .intro_bike td,
  .intro_bike th,
  .intro_bike_info td,
  .intro_bike_info th {
    font-size: 14px !important;
  }

  .about1 h1 {
    font-size: 32px;
    line-height: 1.6;
  }
}
/* ========================================================================== 
   TAILORED ADVENTURES — VISUAL SYSTEM 2026
   Unified editorial / premium adventure design layer
   ========================================================================== */

:root {
  --ta-primary: #d85f32;
  --ta-primary-hover: #b84620;
  --ta-primary-soft: #f7e8df;
  --ta-deep: #183027;
  --ta-deep-2: #0f211a;
  --ta-ink: #17201c;
  --ta-muted: #667169;
  --ta-bg: #f6f4ee;
  --ta-bg-alt: #eeeae0;
  --ta-surface: #ffffff;
  --ta-line: #dfe3dc;
  --ta-line-dark: rgba(255, 255, 255, 0.14);
  --ta-radius-sm: 10px;
  --ta-radius-md: 16px;
  --ta-radius-lg: 24px;
  --ta-radius-xl: 32px;
  --ta-shadow-sm: 0 8px 24px rgba(21, 39, 31, 0.07);
  --ta-shadow-md: 0 18px 50px rgba(21, 39, 31, 0.11);
  --ta-shadow-hover: 0 24px 65px rgba(21, 39, 31, 0.16);
  --ta-transition: 280ms cubic-bezier(0.22, 1, 0.36, 1);
  --ta-container: 1180px;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Manrope", sans-serif;
  color: var(--ta-ink);
  background: var(--ta-bg);
  font-size: 16px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body,
p,
li,
td,
input,
textarea,
select,
button {
  font-family: "Manrope", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.banner h1,
.banner h2,
.banner h3 {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-weight: 650;
  letter-spacing: -0.025em;
  text-wrap: balance;
}

p,
li,
.iso_tour_contact span,
.iso_content_price_intro,
.iso_supplementary_information_intro,
.main_blog_intro {
  color: var(--ta-muted);
}

a {
  transition:
    color var(--ta-transition),
    background-color var(--ta-transition),
    border-color var(--ta-transition),
    opacity var(--ta-transition),
    transform var(--ta-transition),
    box-shadow var(--ta-transition);
}

::selection {
  color: #fff;
  background: var(--ta-primary);
}

.container,
.row.row-large,
.section-content > .row {
  max-width: var(--ta-container);
}

/* ---------- Header / navigation ---------- */

#masthead {
  background: rgba(255, 255, 255, 0.94);
  border-bottom: 1px solid rgba(23, 32, 28, 0.08);
  box-shadow: 0 8px 30px rgba(20, 39, 31, 0.04);
  backdrop-filter: blur(14px);
}

#masthead .nav > li {
  margin: 0 11px;
}

#masthead .nav > li > a {
  position: relative;
  color: var(--ta-ink);
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

#masthead .nav > li > a::after {
  position: absolute;
  right: 0;
  bottom: 5px;
  left: 0;
  height: 2px;
  border-radius: 99px;
  background: var(--ta-primary);
  content: "";
  transform: scaleX(0);
  transform-origin: right center;
  transition: transform var(--ta-transition);
}

#masthead .nav > li:hover > a::after,
#masthead .nav > li.active > a::after,
#masthead .nav > li.current-menu-item > a::after {
  transform: scaleX(1);
  transform-origin: left center;
}

/* ---------- Unified section headings ---------- */

.sec-title {
  position: relative;
  display: block;
  width: min(calc(100% - 30px), var(--ta-container));
  min-height: 0;
  margin: 0 auto 56px;
  padding: 28px 0 0;
  overflow: visible;
  border: 0;
  background: transparent;
  text-align: center;
}

.sec-title::before {
  display: block;
  width: 42px;
  height: 4px;
  margin: 0 auto 18px;
  border-radius: 99px;
  background: var(--ta-primary);
  content: "";
}

.sec-title h2,
.iso_box_title,
h2.iso_box_title,
.home_blog h2,
.home_products h2,
.home_bikes h2,
#iso_upcoming_group_tour .iso_box_title {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: clamp(34px, 4.2vw, 58px);
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -0.035em;
  text-transform: none;
}

.sec-title h3,
.about4 h3,
body .category,
#iso_upcoming_group_tour .iso_box_title {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  margin: 0 0 14px;
  padding: 7px 12px;
  border: 1px solid rgba(216, 95, 50, 0.2);
  border-radius: 999px;
  background: var(--ta-primary-soft);
  color: var(--ta-primary);
  font-family: "Manrope", sans-serif;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.sec-title p {
  max-width: 720px;
  margin: 16px auto 0;
  color: var(--ta-muted);
  font-size: 17px;
  line-height: 1.75;
  opacity: 1;
}

.sec-title .img1,
.sec-title .img2 {
  display: none;
}

h1.title_page {
  margin: 0;
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: clamp(42px, 6vw, 76px);
  font-weight: 650;
  line-height: 1.02;
  letter-spacing: -0.045em;
  text-transform: none;
}

.box_head_content {
  max-width: 850px;
  margin: 0 auto 45px;
  padding: 78px 20px 28px;
  background: none;
  text-align: center;
}

.box_head_content::before {
  display: block;
  width: 42px;
  height: 4px;
  margin: 0 auto 20px;
  border-radius: 99px;
  background: var(--ta-primary);
  content: "";
}

.tour_category_intro {
  max-width: 720px;
  margin: 22px auto 0;
  color: var(--ta-muted);
  font-size: 17px;
}

/* ---------- Unified buttons ---------- */

.front_btn_book_new,
.iso_btn_book_now,
.iso_btn_enquiry,
#iso_form_landing_page button,
button.btn_submit_advice,
.home_products .button.is-outline,
.home_bikes .button.is-outline,
.front_btn_hover {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 22px;
  overflow: hidden;
  border: 1px solid var(--ta-primary);
  border-radius: 999px;
  background: var(--ta-primary);
  box-shadow: none;
  color: #fff !important;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: 0.035em;
  text-align: center;
  text-transform: uppercase;
  transition:
    transform var(--ta-transition),
    background-color var(--ta-transition),
    border-color var(--ta-transition),
    box-shadow var(--ta-transition);
}

.front_btn_book_new,
.iso_btn_book_now {
  width: 100%;
}

.iso_btn_enquiry,
.home_products .button.is-outline,
.home_bikes .button.is-outline {
  background: transparent;
  color: var(--ta-primary) !important;
	    margin-left: auto;
    margin-right: auto;
    display: block
}

.front_btn_book_new:hover,
.iso_btn_book_now:hover,
.iso_btn_enquiry:hover,
#iso_form_landing_page button:hover,
button.btn_submit_advice:hover,
.home_products .button.is-outline:hover,
.home_bikes .button.is-outline:hover,
.front_btn_hover:hover {
  border-color: var(--ta-primary-hover) !important;
  background: var(--ta-primary-hover);
  box-shadow: 0 12px 26px rgba(184, 70, 32, 0.22) !important;
  color: #fff !important;
  letter-spacing: 0.035em;
  text-transform: uppercase;
  transform: translateY(-2px);
}

.front_btn_hover:hover::before {
  display: none;
}

.iso_btn_contact_us,
.view_more_blog {
  color: var(--ta-primary) !important;
  font-weight: 750;
  text-underline-offset: 4px;
}

/* ---------- Shared cards ---------- */

.post-item .box,
.bike-item .box,
#iso_box_information,
.iso_itinerary_item,
.iso_price_editor,
.iso_box_supplementary_information,
.iso_btn_popup,
.iso_form_contact form,
.sec_contact form {
  border: 1px solid var(--ta-line);
  border-radius: var(--ta-radius-lg);
  background: var(--ta-surface);
  box-shadow: var(--ta-shadow-sm);
}

.post-item .box,
.bike-item .box,
.iso_btn_popup {
  transition:
    transform var(--ta-transition),
    border-color var(--ta-transition),
    box-shadow var(--ta-transition);
}

.post-item .box:hover,
.bike-item .box:hover,
.iso_btn_popup:hover {
  border-color: rgba(216, 95, 50, 0.35);
  box-shadow: var(--ta-shadow-hover);
  transform: translateY(-7px);
}

/* ---------- Unified image language ---------- */

.post-item .box-image,
.bike-item .box-image,
.home2 .box-image,
.iso_gallery_img,
.iso_itinerary_img,
.about1 .banner,
.iso_supplementary_information_img,
.iso_gallery_video,
iframe[src*="youtube.com"] {
  overflow: hidden;
  border-radius: var(--ta-radius-lg);
  background: #e9ece8;
}

.post-item .box-image img,
.bike-item .box-image img,
.home2 .box-image img,
.iso_gallery_img img,
.iso_itinerary_img img,
.about1 .banner img,
.iso_supplementary_information_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition:
    transform 700ms cubic-bezier(0.22, 1, 0.36, 1),
    filter var(--ta-transition);
}

.post-item .box-image .image-cover {
  padding-top: 66% !important;
}

.bike-item .box-image .image-cover {
  padding-top: 72% !important;
}

.home2 .box-image .image-cover {
  padding-top: 78% !important;
}

.post-item .box:hover .box-image img,
.bike-item .box:hover .box-image img,
.home2 .box:hover .box-image img,
.iso_gallery_img:hover img {
  transform: scale(1.055);
}

/* ---------- Home destination cards ---------- */

.home2 {
  padding: 90px 0;
  background: var(--ta-bg);
}

.home2 .container {
  max-width: var(--ta-container);
}

.home2 .box {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--ta-radius-xl);
  box-shadow: var(--ta-shadow-md);
  transform: translateZ(0);
}

.home2 .box::after {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, transparent 28%, rgba(10, 23, 17, 0.9) 100%);
  content: "";
  pointer-events: none;
  transition: opacity var(--ta-transition);
}

.home2 .box .overlay {
  background: rgba(10, 23, 17, 0.12);
}

.home2 .box-text {
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  display: flex;
  height: auto;
  min-height: 45%;
  padding: 28px;
  flex-direction: column;
  justify-content: flex-end;
  text-align: left;
}

.home2 .box-text h3 {
  position: static;
  margin: 0;
  padding: 0 !important;
  background: transparent;
  color: #fff;
  font-family: "Fraunces", serif;
  font-size: clamp(28px, 2.5vw, 40px);
  line-height: 1.1;
}

.home2 .box p {
  display: block;
  max-height: 0;
  margin: 0;
  overflow: hidden;
  color: rgba(255, 255, 255, 0.82);
  font-size: 14px;
  font-weight: 500 !important;
  line-height: 1.65;
  letter-spacing: 0;
  opacity: 0;
  text-align: left !important;
  word-spacing: 0;
  transform: translateY(10px);
  transition:
    max-height 500ms ease,
    margin var(--ta-transition),
    opacity var(--ta-transition),
    transform var(--ta-transition);
}

.home2 .box:hover p {
  max-height: 130px;
  margin-top: 12px;
  opacity: 1;
  transform: translateY(0);
}

/* ---------- Product / tour cards ---------- */

.home_products,
.home_bikes,
.home_blog,
#iso_upcoming_group_tour {
  padding-top: 90px;
  padding-bottom: 90px;
}

.home_products,
.bikesPage,
.iso_gallery_image_fisrt {
  background: var(--ta-bg);
}


.post-item .box-text {
  flex: 1;
}

.post-item .box-text {
  position: relative;
  z-index: 1;
  display: flex;
  min-height: 300px;
  margin-top: 0;
  padding: 26px;
  border: 0;
  border-radius: 0;
  background: var(--ta-surface);
  box-shadow: none;
  flex-direction: column;
  align-items: stretch;
}

.post-item .post-title {
  margin-bottom: 14px;
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: 24px;
  font-weight: 650;
  line-height: 1.3;
  letter-spacing: -0.025em;
}

.post-item .iso_box_item {
  gap: 10px;
  color: var(--ta-muted);
  font-size: 14px;
  font-weight: 550;
}

.post-item .iso_box_item a {
  color: var(--ta-muted);
}

.front_box_price {
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--ta-line);
  color: var(--ta-muted);
  font-size: 14px;
  text-align: left;
}

.front_box_price strong {
  color: var(--ta-primary);
  font-size: 24px;
  font-weight: 800;
}

/* ---------- Bike cards ---------- */

.bike-item .box {
  display: flex;
  height: 100%;
  overflow: hidden;
  background: var(--ta-surface);
  flex-direction: column;
}

.bike-item .box-image {
  margin: 12px;
  padding: 0;
  border-radius: calc(var(--ta-radius-lg) - 5px);
}

.bike-item .box-text {
  margin-top: 0;
  padding: 10px 24px 24px;
  background: transparent;
  box-shadow: none;
}

.bike-item .box-text h5 {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: 24px;
  font-weight: 650;
  letter-spacing: -0.025em;
  text-transform: none;
}

.bike-item .box:hover {
  border-width: 1px;
}

.bike-item .box:hover .box-image > .image-cover {
  opacity: 1;
}

.bike-item .box:hover .img_motorbike_hover {
  display: none;
}

/* ---------- About pages ---------- */

.about1,
.about2,
.about3,
.layout-post,
.blog_detail,
.box_detail_motorbike {
  background: var(--ta-bg);
}

.about1 {
  padding-top: 90px;
}

.about1 h1 {
  max-width: 980px;
  margin: 0 auto 55px;
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: clamp(40px, 5vw, 68px);
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.about1 .banner {
  border: 1px solid var(--ta-line);
  border-radius: var(--ta-radius-xl);
  box-shadow: var(--ta-shadow-md);
}

.about2 {
  padding: 90px 0;
}

/* ---------- Complete .about4 redesign ---------- */

.about4,
.home4.about4 {
  position: relative;
  z-index: 0;
  padding: clamp(88px, 10vw, 140px) 0;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 12%, rgba(216, 95, 50, 0.28), transparent 27%),
    linear-gradient(135deg, var(--ta-deep-2) 0%, var(--ta-deep) 58%, #24483a 100%);
  color: #fff;
  isolation: isolate;
}

.about4::before {
  position: absolute;
  top: -130px;
  left: -100px;
  z-index: -1;
  width: 390px;
  height: 390px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  box-shadow:
    0 0 0 48px rgba(255, 255, 255, 0.025),
    0 0 0 96px rgba(255, 255, 255, 0.018);
  content: "";
}

.about4::after {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  width: 44%;
  height: 54%;
  background-image: radial-gradient(rgba(255, 255, 255, 0.14) 1px, transparent 1px);
  background-size: 18px 18px;
  content: "";
  opacity: 0.42;
  -webkit-mask-image: linear-gradient(to top left, #000, transparent 75%);
  mask-image: linear-gradient(to top left, #000, transparent 75%);
}

.about4 .row {
  position: relative;
  align-items: center;
}

.about4 h3 {
  border-color: rgba(255, 255, 255, 0.13);
  background: rgba(255, 255, 255, 0.08);
  color: #ffb18e;
  backdrop-filter: blur(8px);
}

.about4 h2 {
  max-width: 660px;
  margin: 0 0 24px;
  color: #fff;
  font-family: "Fraunces", serif;
  font-size: clamp(42px, 5.5vw, 72px);
  font-weight: 650;
  line-height: 1.03;
  letter-spacing: -0.045em;
  text-transform: none;
}

.about4 p,
.about4 li,
.about4 .text,
.about4 .box-text {
  color: rgba(255, 255, 255, 0.74);
}

.about4 p {
  max-width: 640px;
  font-size: 16px;
  line-height: 1.8;
}

.about4 .img {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 28px 110px 28px 28px;
  box-shadow: 0 35px 80px rgba(0, 0, 0, 0.32);
  transform: rotate(1.5deg);
  transition:
    transform 600ms cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow var(--ta-transition);
}

.about4 .img:hover {
  box-shadow: 0 40px 95px rgba(0, 0, 0, 0.4);
  transform: rotate(0) translateY(-6px);
}

.about4 .img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(0.92) contrast(1.03);
  transition: transform 800ms cubic-bezier(0.22, 1, 0.36, 1);
}

.about4 .img:hover img {
  transform: scale(1.045);
}

.about4 .slider.flickity-enabled button.flickity-prev-next-button {
  display: none !important;
}

.about4 .flickity-page-dots {
  bottom: -36px;
}

.about4 .flickity-page-dots .dot {
  width: 22px;
  height: 4px;
  margin: 0 5px;
  border-radius: 99px;
  background: rgba(255, 255, 255, 0.34);
  opacity: 1;
  transition: width var(--ta-transition), background-color var(--ta-transition);
}

.about4 .flickity-page-dots .dot.is-selected {
  width: 44px;
  background: var(--ta-primary);
}

/* ---------- Tour detail hero / booking card ---------- */

#iso_box_information {
  overflow: hidden;
  border-radius: var(--ta-radius-xl);
  box-shadow: var(--ta-shadow-md);
}

#iso_box_information .row.row-collapse > .medium-6 {
  padding: 38px !important;
}

#iso_box_information .row.row-collapse > .medium-2 {
  gap: 24px;
  padding: 36px 22px !important;
  background: linear-gradient(160deg, var(--ta-deep) 0%, var(--ta-deep-2) 100%);
}

#iso_box_information .row.row-collapse > .medium-2,
#iso_box_information .row.row-collapse > .medium-2 span,
#iso_box_information .row.row-collapse > .medium-2 p {
  color: rgba(255, 255, 255, 0.72);
}

#iso_box_information .iso_tour_price,
#iso_box_information .iso_tour_price .discounted_price span {
  color: #fff;
  font-family: "Fraunces", serif;
  font-size: 31px;
  font-weight: 650;
}

h1.post-title {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: clamp(32px, 4vw, 52px);
  font-weight: 650;
  line-height: 1.12;
  letter-spacing: -0.035em;
}

.iso_box_tour {
  gap: 22px;
}

.iso_box_item {
  gap: 11px;
  color: var(--ta-ink);
  font-size: 15px;
  font-weight: 650;
}

.iso_box_item a {
  color: var(--ta-primary);
}

/* ---------- Itinerary ---------- */

#iso_box_itinerary {
  margin-top: 0;
  padding: 95px 0 80px;
  background: var(--ta-bg-alt);
}

.iso_itinerary_item {
  overflow: hidden;
  border-radius: var(--ta-radius-xl);
  box-shadow: var(--ta-shadow-sm);
}

.iso_itinerary_flex {
  max-height: 580px;
  margin: 0;
  padding: 26px;
}

.iso_itinerary_left_item,
.iso_itinerary_right_item {
  margin: 0;
  padding: 20px 0;
  border-top: 1px solid var(--ta-line);
}

.iso_itinerary_left_item {
  position: relative;
  padding-right: 14px;
  border-radius: 12px;
  transition:
    color var(--ta-transition),
    background-color var(--ta-transition),
    padding var(--ta-transition);
}

.iso_itinerary_left_item:hover,
.iso_itinerary_left_item.active {
  margin-inline: -12px;
  padding-inline: 12px;
  border-top-color: transparent;
  background: var(--ta-primary-soft);
}

.iso_itinerary_left_item.active .iso_itinerary_title {
  color: var(--ta-primary);
}

.iso_itinerary_title {
  color: var(--ta-ink);
  font-size: 15px;
  font-weight: 750;
}

.iso_itinerary_right_title {
  color: var(--ta-primary);
  font-family: "Fraunces", serif;
  font-size: 28px;
  font-weight: 650;
  line-height: 1.25;
}

.iso_itinerary_right_content {
  color: var(--ta-muted);
  line-height: 1.75;
}

.iso_itinerary_flex::-webkit-scrollbar {
  width: 7px;
}

.iso_itinerary_flex::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 99px;
  background: #bdc7bf;
  background-clip: content-box;
}

.iso_itinerary_flex::-webkit-scrollbar-track {
  background: transparent;
}

/* ---------- Gallery / map ---------- */

#iso_gallery,
.iso_tour_map,
#iso_box_bike_model,
#iso_supplementary_information,
.iso_box_asked_questions {
  padding-top: 90px;
  padding-bottom: 80px;
  background: var(--ta-surface);
}

.iso_gallery_img,
iframe[src*="youtube.com"] {
  border-radius: var(--ta-radius-lg);
  box-shadow: var(--ta-shadow-sm);
}

.iso_map_img {
  margin-top: 32px;
  padding: 18px;
  border: 1px solid var(--ta-line);
  border-radius: var(--ta-radius-xl);
  background: #fff;
  box-shadow: var(--ta-shadow-sm);
}

/* ---------- Pricing tables ---------- */

.iso_content_price,
.iso_form_contact {
  padding-top: 90px;
  padding-bottom: 90px;
  background: var(--ta-bg-alt);
}

.iso_price_editor {
  margin-top: 32px;
  padding: 14px;
  overflow-x: auto;
  border-radius: var(--ta-radius-lg);
}

.iso_price_editor table,
.iso_bike_intro table {
  overflow: hidden;
  border: 0;
  border-radius: var(--ta-radius-md);
  border-collapse: separate;
  border-spacing: 0;
}

.iso_price_editor table tr:first-child,
.iso_bike_intro table tr th {
  background: var(--ta-deep);
}

.iso_price_editor table td,
.iso_bike_intro table tr td,
.iso_bike_intro table tr th {
  padding: 15px 18px;
  border-color: var(--ta-line);
  font-size: 14px;
}

.iso_price_editor table tr:nth-child(even) td,
.iso_bike_intro table tr:nth-child(even) td {
  background: #f8f9f6;
}

.iso_price_editor table td:nth-child(n + 2) {
  color: var(--ta-primary);
  font-weight: 750;
}

/* ---------- Bike detail ---------- */

.iso_bike_item {
  gap: 50px;
  align-items: center;
}

.iso_bike_img {
  width: calc(56% - 25px);
  padding: 20px;
  border: 1px solid var(--ta-line);
  border-radius: var(--ta-radius-xl);
  background: var(--ta-bg);
}

.iso_bike_information {
  width: calc(44% - 25px);
  align-items: flex-start;
}

.iso_bike_title {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 650;
  line-height: 1.1;
  letter-spacing: -0.035em;
  text-align: left;
}

.iso_bike_intro,
.iso_bike_intro div,
.iso_bike_intro p,
.iso_bike_intro span,
.iso_bike_intro h2,
.iso_bike_intro h3 {
  color: var(--ta-muted);
  text-align: left !important;
}

/* ---------- Supplementary information ---------- */

.iso_supplementary_information_img {
  width: 48%;
  min-height: 380px;
  border-radius: var(--ta-radius-xl);
  box-shadow: var(--ta-shadow-md);
}

.iso_box_supplementary_information {
  width: calc(52% + 36px);
  margin-left: -36px;
  padding: 42px;
  border-radius: var(--ta-radius-xl);
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
}

.iso_btn_popup {
  width: calc(50% - 8px);
  min-height: 76px;
  padding: 16px 18px;
  border-radius: var(--ta-radius-md);
  color: var(--ta-ink);
  font-size: 15px;
  font-weight: 750;
}

.iso_btn_popup:hover {
  color: var(--ta-primary);
  text-transform: none;
}

/* ---------- Forms ---------- */

.sec_contact {
  padding: 95px 0 70px;
  background:
    radial-gradient(circle at 15% 20%, rgba(216, 95, 50, 0.22), transparent 30%),
    var(--ta-deep-2);
}

.sec_contact form,
.iso_form_contact form {
  padding: 30px;
}

.sec_contact input[type="text"],
.sec_contact input[type="email"],
.sec_contact input[type="date"],
.form-control,
#iso_form_landing_page .form-control,
#iso_form_landing_page .form-control:focus,
#iso_form_landing_page .form-control:hover,
textarea,
select {
  min-height: 52px;
  margin-bottom: 0;
  padding: 12px 16px;
  border: 1px solid var(--ta-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
  color: var(--ta-ink);
  font-size: 15px;
  transition:
    border-color var(--ta-transition),
    box-shadow var(--ta-transition),
    background-color var(--ta-transition);
}

.sec_contact input[type="text"],
.sec_contact input[type="email"],
.sec_contact input[type="date"] {
  padding-left: 48px;
}

.form-control:focus,
#iso_form_landing_page .form-control:focus,
textarea:focus,
select:focus {
  border-color: var(--ta-primary);
  outline: 0;
  box-shadow: 0 0 0 4px rgba(216, 95, 50, 0.12);
}

.sec_contact .box_inp {
  margin-bottom: 14px;
  border-radius: 12px;
}

.sec_contact .box_inp:before {
  top: 16px;
  left: 17px;
  opacity: 0.62;
}

.iso_motorbike_label {
  padding: 13px 16px;
  border: 1px solid var(--ta-line);
  border-radius: 12px;
  color: var(--ta-ink);
  font-weight: 650;
}

input[type="radio"]:checked + .iso_motorbike_label {
  border-color: var(--ta-primary);
  background: var(--ta-primary-soft);
  color: var(--ta-primary) !important;
}

/* ---------- Blog ---------- */

.home_blog .flickity-page-dots {
  display: block;
}

.publish_date {
  padding-left: 0;
  color: var(--ta-muted);
  font-size: 12px;
  font-weight: 650;
}

.main_blog_title,
.blog_detail .blog_title {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: clamp(36px, 5vw, 62px);
  font-weight: 650;
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.main_blog_title:hover {
  color: var(--ta-primary);
}

span.widget-title {
  display: block;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--ta-line);
  background: linear-gradient(var(--ta-primary), var(--ta-primary)) no-repeat bottom left;
  background-size: 42px 3px;
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
  font-size: 25px;
  font-weight: 650;
  letter-spacing: -0.02em;
  text-transform: none;
}

.category-link a {
  color: var(--ta-muted);
  font-size: 15px;
  font-weight: 650;
}

.category-link a:hover,
.category-link a.current {
  color: var(--ta-primary);
}

.custom-breadcrumb,
.breadcrumb {
  padding: 18px 0;
  background: var(--ta-bg-alt);
  color: var(--ta-muted);
  font-size: 12px;
}

.custom-breadcrumb a,
.custom-breadcrumb span span {
  color: var(--ta-muted);
}

/* ---------- Content typography ---------- */

.tinymce_Content {
  color: var(--ta-muted);
  font-size: 16px;
  line-height: 1.8;
}

.tinymce_Content h1,
.tinymce_Content h2,
.tinymce_Content h3,
.tinymce_Content h4,
.tinymce_Content h5,
.tinymce_Content h6,
.motorbike_title {
  color: var(--ta-ink);
  font-family: "Fraunces", serif;
}

.tinymce_Content h2,
.tinymce_Content h3 {
  margin-top: 1.6em;
  font-size: clamp(25px, 3vw, 34px);
}

.tinymce_Content img {
  border-radius: var(--ta-radius-lg);
  box-shadow: var(--ta-shadow-sm);
}

/* ---------- Sliders ---------- */

.slider.flickity-enabled button.flickity-prev-next-button {
  width: 46px;
  height: 46px;
  border: 1px solid var(--ta-line);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ta-shadow-sm);
  opacity: 1 !important;
  backdrop-filter: blur(8px);
  transition:
    transform var(--ta-transition),
    border-color var(--ta-transition),
    box-shadow var(--ta-transition);
}

.slider.flickity-enabled button.flickity-prev-next-button:hover {
  border-color: rgba(216, 95, 50, 0.35);
  box-shadow: var(--ta-shadow-md);
  transform: translateY(-50%) scale(1.05) !important;
}

.slider.flickity-enabled button.flickity-prev-next-button svg.flickity-button-icon,
.slider.flickity-enabled button.flickity-prev-next-button svg.flickity-button-icon path {
  fill: var(--ta-ink) !important;
}

.flickity-page-dots .dot {
  width: 8px;
  height: 8px;
  border: 0;
  background: #b9c1bb;
  opacity: 1;
}

.flickity-page-dots .dot.is-selected {
  background: var(--ta-primary);
}

/* ---------- Footer ---------- */

.sec_footer {
  background: var(--ta-deep-2);
}

.sec_footer .col-logo .img {
  max-width: 128px;
  padding: 8px;
  border: 1px solid var(--ta-line-dark);
  border-radius: var(--ta-radius-lg);
  background: rgba(255, 255, 255, 0.96);
}

.sec_footer h3 {
  margin-bottom: 22px;
  color: #fff;
  font-family: "Fraunces", serif;
  font-size: 23px;
  font-weight: 650;
  letter-spacing: -0.02em;
  text-transform: none;
}

.sec_footer ul li,
.sec_footer ul li p,
.sec_footer a {
  color: rgba(255, 255, 255, 0.68);
}

.sec_footer a:hover {
  color: #fff;
}

/* ---------- Accessibility / motion ---------- */

:focus-visible {
  outline: 3px solid rgba(216, 95, 50, 0.42);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ---------- Responsive ---------- */

@media only screen and (max-width: 849px) {
  .sec-title {
    margin-bottom: 42px;
  }

  .home2,
  .home_products,
  .home_bikes,
  .home_blog,
  #iso_upcoming_group_tour,
  #iso_gallery,
  .iso_tour_map,
  #iso_box_bike_model,
  #iso_supplementary_information,
  .iso_box_asked_questions,
  .iso_content_price,
  .iso_form_contact {
    padding-top: 70px;
    padding-bottom: 65px;
  }

  .about4,
  .home4.about4 {
    padding: 78px 0 92px;
  }

  .about4 .img {
    margin-top: 35px;
    border-radius: 24px 70px 24px 24px;
    transform: none;
  }

  #iso_box_information .row.row-collapse > .medium-6,
  #iso_box_information .row.row-collapse > .medium-2 {
    padding: 26px !important;
  }

  .iso_bike_item {
    gap: 30px;
    flex-direction: column;
  }

  .iso_bike_img,
  .iso_bike_information {
    width: 100%;
  }

  .iso_supplementary_information {
    flex-direction: column;
  }

  .iso_supplementary_information_img,
  .iso_box_supplementary_information {
    width: 100%;
  }

  .iso_box_supplementary_information {
    margin: -24px 0 0;
    padding: 28px;
  }
}

@media only screen and (max-width: 48em) {
  body {
    font-size: 15px;
  }

  #masthead .nav > li > a::after {
    display: none;
  }

  .sec-title {
    width: calc(100% - 30px);
    margin-bottom: 34px;
    padding-top: 10px;
  }

  .sec-title h2,
  .iso_box_title,
  h2.iso_box_title,
  .home_blog h2,
  .home_products h2,
  .home_bikes h2 {
    font-size: 34px;
  }

  .box_head_content {
    padding: 55px 15px 20px;
  }

  h1.title_page {
    font-size: 42px;
    line-height: 1.05;
  }

  .home2 {
    padding: 65px 0;
  }

  .home2 .box-text {
    padding: 22px;
  }

  .home2 .box-text h3 {
    font-size: 30px;
  }

  .home2 .box p {
    max-height: 130px;
    margin-top: 10px;
    opacity: 1;
    transform: none;
  }

  .post-item .box-text {
    min-height: 0;
    padding: 22px;
  }

  .post-item .post-title {
    font-size: 22px;
  }

  .about1 h1 {
    font-size: 40px;
    line-height: 1.1;
  }

  .about1 .banner,
  .about4 .img,
  .post-item .box,
  .bike-item .box,
  #iso_box_information,
  .iso_itinerary_item,
  .iso_price_editor,
  .iso_box_supplementary_information {
    border-radius: 20px;
  }

  .about4 h2 {
    font-size: 42px;
    line-height: 1.05;
  }

  .about4::after {
    width: 80%;
    opacity: 0.25;
  }

  #iso_box_information .row.row-collapse > .medium-6,
  #iso_box_information .row.row-collapse > .medium-2 {
    padding: 22px !important;
  }

  h1.post-title {
    font-size: 34px;
  }

  .iso_itinerary_flex {
    padding: 20px;
  }

  .iso_box_supplementary_information {
    padding: 22px;
  }

  .iso_btn_popup {
    width: 100%;
  }

  .sec_contact form,
  .iso_form_contact form {
    padding: 20px;
  }

  .slider.flickity-enabled button.flickity-prev-next-button {
    width: 40px;
    height: 40px;
  }
}

/* ========================================================================== 
   TAILORED ADVENTURES — SINGLE TOUR DETAIL STABILITY PATCH
   Add this AFTER tailored-adventures-redesign.css
   Fixes the 4 / 6 / 2 Flatsome hero grid, overflow, media and responsive states.
   ========================================================================== */

/* Keep page-specific components isolated from global card/image rules. */
#iso_box_information,
#iso_box_information *,
#iso_box_itinerary,
#iso_box_itinerary *,
#iso_gallery,
#iso_gallery *,
.iso_tour_map,
.iso_tour_map *,
.iso_content_price,
.iso_content_price *,
#iso_box_bike_model,
#iso_box_bike_model *,
#iso_supplementary_information,
#iso_supplementary_information * {
  box-sizing: border-box;
}

/* --------------------------------------------------------------------------
   Tour summary / booking hero
   -------------------------------------------------------------------------- */

#iso_box_information {
  width: min(calc(100% - 30px), var(--ta-container, 1180px));
  margin: 42px auto 72px;
  overflow: hidden;
  background: #fff;
}

#iso_box_information > .row,
#iso_box_information .row.row-collapse {
  width: 100%;
  max-width: none;
  margin: 0;
  align-items: stretch;
}

#iso_box_information .row.row-collapse > .col,
#iso_box_information .row.row-collapse > [class*="medium-"] {
  min-width: 0;
  min-height: 100%;
}

/* The live template uses medium-4 / medium-6 / medium-2.
   Give the booking column enough usable width instead of leaving it at 16.66%. */
@media only screen and (min-width: 1100px) {
  #iso_box_information .row.row-collapse > .medium-4 {
    flex-basis: 34%;
    max-width: 34%;
  }

  #iso_box_information .row.row-collapse > .medium-6 {
    flex-basis: 43%;
    max-width: 43%;
  }

  #iso_box_information .row.row-collapse > .medium-2 {
    flex-basis: 23%;
    max-width: 23%;
  }
}

@media only screen and (min-width: 850px) and (max-width: 1099px) {
  #iso_box_information .row.row-collapse > .medium-4 {
    flex-basis: 36%;
    max-width: 36%;
  }

  #iso_box_information .row.row-collapse > .medium-6 {
    flex-basis: 40%;
    max-width: 40%;
  }

  #iso_box_information .row.row-collapse > .medium-2 {
    flex-basis: 24%;
    max-width: 24%;
  }
}

/* Media column: fill the card without stretching the image incorrectly. */
#iso_box_information .row.row-collapse > .medium-4 {
  position: relative;
  padding: 0 !important;
  overflow: hidden;
  background: #e8ece8;
}

#iso_box_information .row.row-collapse > .medium-4 > .col-inner,
#iso_box_information .row.row-collapse > .medium-4 .banner,
#iso_box_information .row.row-collapse > .medium-4 .banner-inner,
#iso_box_information .row.row-collapse > .medium-4 .fill,
#iso_box_information .row.row-collapse > .medium-4 .img,
#iso_box_information .row.row-collapse > .medium-4 .box-image,
#iso_box_information .row.row-collapse > .medium-4 .image-cover {
  width: 100%;
  height: 100%;
  min-height: 100%;
  margin: 0;
  border-radius: 0;
}

#iso_box_information .row.row-collapse > .medium-4 img {
  display: block;
  width: 100%;
  height: 100% !important;
  min-height: 520px;
  margin: 0 !important;
  object-fit: cover;
  object-position: center;
}

/* Content column. */
#iso_box_information .row.row-collapse > .medium-6 {
  display: flex;
  padding: clamp(28px, 3.4vw, 44px) !important;
  background: #fff;
}

#iso_box_information .row.row-collapse > .medium-6 > .col-inner {
  width: 100%;
}

#iso_box_information h1.post-title {
  max-width: 100%;
  margin: 0 0 22px;
  font-size: clamp(30px, 3.25vw, 46px);
  line-height: 1.1;
  overflow-wrap: anywhere;
  word-break: normal;
}

#iso_box_information .iso_box_tour {
  width: 100%;
  max-height: none;
  gap: 18px;
  overflow: visible;
}

#iso_box_information .iso_box_lst_item {
  width: 100%;
  gap: 10px;
}

#iso_box_information .iso_box_item {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: start;
  width: 100%;
  gap: 10px;
  font-size: 14px;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

#iso_box_information .iso_box_item svg,
#iso_box_information .iso_box_item img,
#iso_box_information .iso_box_item i {
  grid-column: 1;
  max-width: 20px;
  flex: 0 0 20px;
}

#iso_box_information .iso_box_item > :not(svg):not(img):not(i):first-of-type,
#iso_box_information .iso_box_item > a,
#iso_box_information .iso_box_item > span,
#iso_box_information .iso_box_item > p {
  min-width: 0;
}

/* Booking / price column. */
#iso_box_information .row.row-collapse > .medium-2 {
  display: flex;
  min-width: 220px;
  padding: clamp(28px, 2.7vw, 38px) clamp(20px, 2.1vw, 28px) !important;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  text-align: center;
}

#iso_box_information .row.row-collapse > .medium-2 > .col-inner,
#iso_box_information .iso_box_right_price,
#iso_box_information .iso_tour_contact {
  width: 100%;
  min-width: 0;
  text-align: center;
}

#iso_box_information .iso_box_right_price span,
#iso_box_information .iso_tour_contact span {
  display: block;
  text-align: center;
  overflow-wrap: anywhere;
}

#iso_box_information .iso_tour_price,
#iso_box_information .iso_tour_price .discounted_price,
#iso_box_information .iso_tour_price .discounted_price span {
  max-width: 100%;
  margin: 0;
  font-size: clamp(25px, 2.35vw, 32px);
  line-height: 1.15;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}

#iso_box_information .iso_btn_book_now,
#iso_box_information .iso_btn_enquiry {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  margin: 0;
  padding: 12px 14px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.35;
  letter-spacing: 0.025em;
  white-space: normal;
}

#iso_box_information .iso_btn_enquiry {
  border-color: rgba(255, 255, 255, 0.5);
  color: #fff !important;
}

#iso_box_information .iso_btn_enquiry:hover {
  border-color: var(--ta-primary, #d85f32) !important;
}

#iso_box_information .iso_btn_contact_us {
  display: inline-flex;
  justify-content: center;
  margin: 4px auto 0;
  color: #fff !important;
  text-align: center;
}

/* --------------------------------------------------------------------------
   Itinerary
   -------------------------------------------------------------------------- */

#iso_box_itinerary {
  overflow: hidden;
}

#iso_box_itinerary .row,
#iso_box_itinerary .iso_itinerary_item {
  min-width: 0;
}

#iso_box_itinerary .iso_itinerary_flex {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  overscroll-behavior: contain;
}

#iso_box_itinerary .iso_itinerary_left_item,
#iso_box_itinerary .iso_itinerary_right_item {
  min-width: 0;
}

#iso_box_itinerary .iso_itinerary_left_item:hover,
#iso_box_itinerary .iso_itinerary_left_item.active {
  margin-inline: 0;
  padding-inline: 12px;
}

#iso_box_itinerary .iso_itinerary_title,
#iso_box_itinerary .iso_itinerary_right_title,
#iso_box_itinerary .iso_itinerary_right_content {
  max-width: 100%;
  overflow-wrap: anywhere;
}

/* --------------------------------------------------------------------------
   Gallery, video and map
   -------------------------------------------------------------------------- */

#iso_gallery .row,
.iso_tour_map .row,
#iso_box_bike_model .row,
#iso_supplementary_information .row {
  min-width: 0;
}

#iso_gallery .iso_gallery_img,
#iso_gallery .iso_gallery_video,
.iso_tour_map .iso_map_img {
  width: 100%;
  max-width: 100%;
}

#iso_gallery .iso_gallery_img img,
.iso_tour_map .iso_map_img img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto !important;
  object-fit: cover;
}

#iso_gallery iframe,
#iso_gallery iframe[src*="youtube.com"],
#iso_gallery iframe[src*="youtu.be"] {
  width: 100%;
  max-width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
}

/* --------------------------------------------------------------------------
   Price tables and long content
   -------------------------------------------------------------------------- */

.iso_content_price,
.iso_price_editor,
.iso_bike_intro,
.tinymce_Content {
  min-width: 0;
}

.iso_price_editor {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.iso_price_editor table {
  min-width: 720px;
  margin-bottom: 0;
}

.tinymce_Content iframe,
.tinymce_Content video,
.tinymce_Content img {
  max-width: 100% !important;
}

.tinymce_Content iframe,
.tinymce_Content video {
  height: auto;
  aspect-ratio: 16 / 9;
}

/* --------------------------------------------------------------------------
   Tablet / mobile
   -------------------------------------------------------------------------- */

@media only screen and (max-width: 849px) {
  #iso_box_information {
    width: min(calc(100% - 24px), 720px);
    margin: 24px auto 52px;
    border-radius: 22px;
  }

  #iso_box_information .row.row-collapse {
    display: flex;
    flex-direction: column;
  }

  #iso_box_information .row.row-collapse > .col,
  #iso_box_information .row.row-collapse > [class*="medium-"] {
    width: 100%;
    max-width: 100%;
    flex-basis: 100%;
  }

  #iso_box_information .row.row-collapse > .medium-4 {
    min-height: 0;
  }

  #iso_box_information .row.row-collapse > .medium-4 img {
    height: auto !important;
    min-height: 0;
    max-height: 520px;
    aspect-ratio: 16 / 10;
  }

  #iso_box_information .row.row-collapse > .medium-6 {
    padding: 28px 24px !important;
  }

  #iso_box_information .row.row-collapse > .medium-2 {
    min-width: 0;
    padding: 30px 24px !important;
  }

  #iso_box_information h1.post-title {
    font-size: clamp(29px, 7vw, 40px);
  }

  #iso_box_itinerary .iso_itinerary_flex {
    max-height: none;
    overflow-y: visible;
  }

  .iso_price_editor {
    padding: 10px;
    border-radius: 18px;
  }
}

@media only screen and (max-width: 549px) {
  #iso_box_information {
    width: calc(100% - 20px);
    margin-top: 16px;
    border-radius: 18px;
  }

  #iso_box_information .row.row-collapse > .medium-4 img {
    aspect-ratio: 4 / 3;
  }

  #iso_box_information .row.row-collapse > .medium-6,
  #iso_box_information .row.row-collapse > .medium-2 {
    padding: 24px 18px !important;
  }

  #iso_box_information .iso_box_item {
    grid-template-columns: 18px minmax(0, 1fr);
    font-size: 13px;
  }

  #iso_box_information .iso_tour_price,
  #iso_box_information .iso_tour_price .discounted_price,
  #iso_box_information .iso_tour_price .discounted_price span {
    font-size: 27px;
  }

  .iso_price_editor table {
    min-width: 640px;
  }
}

.archive-page-header {
	display: none !important;
}

.post-item .box-image {
	    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

/* ======================================================================
   TAILORED ADVENTURES — SUBMENU REDESIGN
   Dán toàn bộ file này vào CUỐI file CSS hiện tại.
   Hỗ trợ Flatsome desktop dropdown, submenu nhiều cấp và mobile off-canvas.
   ====================================================================== */

:root {
  --ta-primary: #d85f32;
  --ta-primary-hover: #b84620;
  --ta-primary-soft: #f7e8df;
  --ta-deep: #183027;
  --ta-ink: #17201c;
  --ta-muted: #667169;
  --ta-surface: #ffffff;
  --ta-line: #dfe3dc;
  --ta-radius-sm: 10px;
  --ta-radius-md: 16px;
  --ta-shadow-md: 0 18px 50px rgba(21, 39, 31, 0.14);
  --ta-transition: 280ms cubic-bezier(0.22, 1, 0.36, 1);
}

/* ========================= DESKTOP / TABLET LARGE ====================== */

@media screen and (min-width: 850px) {
  /* Giữ submenu nổi trên slider, banner và sticky section. */
  #header,
  #masthead,
  #masthead .header-inner,
  #masthead .flex-row,
  #masthead .flex-col,
  #masthead .nav,
  #masthead .nav > li {
    overflow: visible;
  }

  #masthead .header-nav-main > li.menu-item-has-children,
  #masthead .header-nav-main > li.has-dropdown {
    position: relative;
  }

  /* Panel submenu cấp 1. */
  #masthead .header-nav-main > li > .nav-dropdown,
  #masthead .header-nav-main > li > ul.sub-menu {
    z-index: 9999;
    min-width: 286px;
    margin-top: 10px;
    padding: 12px;
    border: 1px solid rgba(23, 32, 28, 0.1);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow:
      inset 0 3px 0 var(--ta-primary),
      var(--ta-shadow-md);
    backdrop-filter: blur(18px);
    -webkit-backdrop-filter: blur(18px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(14px) scale(0.985);
    transform-origin: top center;
    transition:
      opacity 180ms ease,
      visibility 180ms ease,
      transform var(--ta-transition);
  }

  /* Mở submenu bằng hover, keyboard hoặc class của Flatsome. */
  #masthead .header-nav-main > li:hover > .nav-dropdown,
  #masthead .header-nav-main > li:hover > ul.sub-menu,
  #masthead .header-nav-main > li:focus-within > .nav-dropdown,
  #masthead .header-nav-main > li:focus-within > ul.sub-menu,
  #masthead .header-nav-main > li.current-dropdown > .nav-dropdown,
  #masthead .header-nav-main > li.current-dropdown > ul.sub-menu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }

  /* Tạo vùng hover nối menu chính và submenu, tránh dropdown bị tắt. */
  #masthead .header-nav-main > li.menu-item-has-children::after,
  #masthead .header-nav-main > li.has-dropdown::after {
    position: absolute;
    top: 100%;
    left: -8px;
    width: calc(100% + 16px);
    height: 18px;
    content: "";
  }

  /* Reset list của Flatsome. */
  #masthead .nav-dropdown,
  #masthead .nav-dropdown ul,
  #masthead ul.sub-menu {
    list-style: none;
  }

  #masthead .nav-dropdown > li,
  #masthead ul.sub-menu > li {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    border: 0;
  }

  /* Item submenu đồng nhất. */
  #masthead .nav-dropdown > li > a,
  #masthead ul.sub-menu > li > a {
    position: relative;
    display: flex;
    width: 100%;
    min-height: 46px;
    margin: 0;
    padding: 11px 40px 11px 15px;
    align-items: center;
    border: 0;
    border-radius: 12px;
    color: var(--ta-ink);
    background: transparent;
    font-family: "Manrope", sans-serif;
    font-size: 14px;
    font-weight: 650;
    line-height: 1.45;
    letter-spacing: 0;
    text-transform: none;
    white-space: normal;
    transition:
      color var(--ta-transition),
      background-color var(--ta-transition),
      transform var(--ta-transition);
  }

  #masthead .nav-dropdown > li + li,
  #masthead ul.sub-menu > li + li {
    margin-top: 3px;
  }

  /* Dấu nhấn cam khi hover. */
  #masthead .nav-dropdown > li > a::before,
  #masthead ul.sub-menu > li > a::before {
    position: absolute;
    top: 50%;
    left: 5px;
    width: 3px;
    height: 0;
    border-radius: 99px;
    background: var(--ta-primary);
    content: "";
    transform: translateY(-50%);
    transition: height var(--ta-transition);
  }

  #masthead .nav-dropdown > li:hover > a,
  #masthead .nav-dropdown > li:focus-within > a,
  #masthead .nav-dropdown > li.current-menu-item > a,
  #masthead .nav-dropdown > li.current-menu-ancestor > a,
  #masthead ul.sub-menu > li:hover > a,
  #masthead ul.sub-menu > li:focus-within > a,
  #masthead ul.sub-menu > li.current-menu-item > a,
  #masthead ul.sub-menu > li.current-menu-ancestor > a {
    color: var(--ta-primary-hover);
    background: linear-gradient(90deg, var(--ta-primary-soft), rgba(247, 232, 223, 0.35));
    transform: translateX(3px);
  }

  #masthead .nav-dropdown > li:hover > a::before,
  #masthead .nav-dropdown > li:focus-within > a::before,
  #masthead .nav-dropdown > li.current-menu-item > a::before,
  #masthead .nav-dropdown > li.current-menu-ancestor > a::before,
  #masthead ul.sub-menu > li:hover > a::before,
  #masthead ul.sub-menu > li:focus-within > a::before,
  #masthead ul.sub-menu > li.current-menu-item > a::before,
  #masthead ul.sub-menu > li.current-menu-ancestor > a::before {
    height: 22px;
  }

  /* Mũi tên của item có submenu cấp tiếp theo. */
  #masthead .nav-dropdown li.menu-item-has-children > a::after,
  #masthead ul.sub-menu li.menu-item-has-children > a::after {
    position: absolute;
    top: 50%;
    right: 16px;
    width: 7px;
    height: 7px;
    margin: 0;
    border-top: 1.8px solid currentColor;
    border-right: 1.8px solid currentColor;
    content: "";
    opacity: 0.65;
    transform: translateY(-50%) rotate(45deg);
    transition:
      opacity var(--ta-transition),
      right var(--ta-transition);
  }

  #masthead .nav-dropdown li.menu-item-has-children:hover > a::after,
  #masthead ul.sub-menu li.menu-item-has-children:hover > a::after {
    right: 13px;
    opacity: 1;
  }

  /* Submenu cấp 2 và cấp 3 mở ngang. */
  #masthead .nav-dropdown li.menu-item-has-children > ul.sub-menu,
  #masthead ul.sub-menu li.menu-item-has-children > ul.sub-menu,
  #masthead .nav-dropdown li.menu-item-has-children > .nav-dropdown {
    position: absolute;
    top: -12px;
    left: calc(100% + 10px);
    z-index: 10000;
    display: block;
    min-width: 250px;
    margin: 0;
    padding: 12px;
    border: 1px solid rgba(23, 32, 28, 0.1);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.99);
    box-shadow:
      inset 0 3px 0 var(--ta-primary),
      var(--ta-shadow-md);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateX(12px) scale(0.985);
    transform-origin: left top;
    transition:
      opacity 180ms ease,
      visibility 180ms ease,
      transform var(--ta-transition);
  }

  #masthead .nav-dropdown li.menu-item-has-children:hover > ul.sub-menu,
  #masthead .nav-dropdown li.menu-item-has-children:focus-within > ul.sub-menu,
  #masthead ul.sub-menu li.menu-item-has-children:hover > ul.sub-menu,
  #masthead ul.sub-menu li.menu-item-has-children:focus-within > ul.sub-menu,
  #masthead .nav-dropdown li.menu-item-has-children:hover > .nav-dropdown,
  #masthead .nav-dropdown li.menu-item-has-children:focus-within > .nav-dropdown {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(0) scale(1);
  }

  /* Cầu nối giữa hai panel để rê chuột không bị mất submenu. */
  #masthead .nav-dropdown li.menu-item-has-children::after,
  #masthead ul.sub-menu li.menu-item-has-children::after {
    position: absolute;
    top: -6px;
    right: -14px;
    width: 18px;
    height: calc(100% + 12px);
    content: "";
  }

  /* Khi menu nằm sát mép phải, thêm class .submenu-open-left vào menu item. */
  #masthead li.submenu-open-left > ul.sub-menu,
  #masthead li.submenu-open-left > .nav-dropdown,
  #masthead .nav-dropdown li.submenu-open-left > ul.sub-menu,
  #masthead .nav-dropdown li.submenu-open-left > .nav-dropdown {
    right: calc(100% + 10px);
    left: auto;
    transform-origin: right top;
  }

  /* Mega menu / block menu vẫn cùng ngôn ngữ thiết kế. */
  #masthead .nav-dropdown.nav-dropdown-full,
  #masthead .nav-dropdown.nav-dropdown-default,
  #masthead .nav-dropdown.nav-dropdown-simple {
    border-color: rgba(23, 32, 28, 0.1);
  }

  #masthead .nav-dropdown .ux-menu-title,
  #masthead .nav-dropdown .widget-title,
  #masthead .nav-dropdown h3,
  #masthead .nav-dropdown h4 {
    margin: 0 0 9px;
    color: var(--ta-deep);
    font-family: "Manrope", sans-serif;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.4;
    letter-spacing: 0.09em;
    text-transform: uppercase;
  }

  /* Focus rõ ràng cho bàn phím. */
  #masthead .nav-dropdown a:focus-visible,
  #masthead ul.sub-menu a:focus-visible {
    outline: 2px solid var(--ta-primary);
    outline-offset: 2px;
  }
}

/* ============================== MOBILE ================================= */

@media screen and (max-width: 849px) {
  /* Khung menu mobile. */
  .off-canvas-left.mfp-ready .mfp-content,
  .off-canvas-right.mfp-ready .mfp-content,
  .off-canvas .mfp-content {
    background: #f8f7f2;
  }

  .off-canvas .nav-vertical,
  .mobile-sidebar .nav-vertical {
    padding: 10px 12px 24px;
  }

  .off-canvas .nav-vertical > li,
  .mobile-sidebar .nav-vertical > li {
    margin: 0;
    border-bottom: 1px solid rgba(23, 32, 28, 0.08);
  }

  .off-canvas .nav-vertical > li > a,
  .mobile-sidebar .nav-vertical > li > a {
    min-height: 52px;
    padding: 13px 52px 13px 12px;
    color: var(--ta-ink);
    font-family: "Manrope", sans-serif;
    font-size: 15px;
    font-weight: 750;
    line-height: 1.4;
    letter-spacing: 0;
    text-transform: none;
  }

  /* Nút đóng/mở submenu. */
  .off-canvas .nav-vertical li > .toggle,
  .mobile-sidebar .nav-vertical li > .toggle {
    top: 5px;
    right: 2px;
    width: 42px;
    height: 42px;
    min-height: 42px;
    margin: 0;
    border: 0;
    border-radius: 12px;
    color: var(--ta-deep);
    background: rgba(24, 48, 39, 0.07);
    opacity: 1;
    transition:
      color var(--ta-transition),
      background-color var(--ta-transition),
      transform var(--ta-transition);
  }

  .off-canvas .nav-vertical li.active > .toggle,
  .mobile-sidebar .nav-vertical li.active > .toggle {
    color: #fff;
    background: var(--ta-primary);
  }

  /* Panel submenu mobile cấp 1. Theme vẫn phụ trách đóng/mở. */
  .off-canvas .nav-vertical ul.sub-menu,
  .off-canvas .nav-slide ul.sub-menu,
  .off-canvas .nav-slide ul.children,
  .mobile-sidebar .nav-vertical ul.sub-menu {
    margin: 0 0 10px;
    padding: 8px;
    border: 1px solid rgba(23, 32, 28, 0.08);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(21, 39, 31, 0.06);
  }

  .off-canvas .nav-vertical ul.sub-menu > li,
  .off-canvas .nav-slide ul.sub-menu > li,
  .off-canvas .nav-slide ul.children > li,
  .mobile-sidebar .nav-vertical ul.sub-menu > li {
    position: relative;
    margin: 0;
    border: 0;
  }

  .off-canvas .nav-vertical ul.sub-menu > li > a,
  .off-canvas .nav-slide ul.sub-menu > li > a,
  .off-canvas .nav-slide ul.children > li > a,
  .mobile-sidebar .nav-vertical ul.sub-menu > li > a {
    position: relative;
    display: flex;
    min-height: 43px;
    padding: 10px 42px 10px 24px;
    align-items: center;
    border-radius: 10px;
    color: #34413a;
    font-family: "Manrope", sans-serif;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.45;
    text-transform: none;
  }

  /* Chấm dẫn hướng cho từng item. */
  .off-canvas .nav-vertical ul.sub-menu > li > a::before,
  .off-canvas .nav-slide ul.sub-menu > li > a::before,
  .off-canvas .nav-slide ul.children > li > a::before,
  .mobile-sidebar .nav-vertical ul.sub-menu > li > a::before {
    position: absolute;
    top: 50%;
    left: 10px;
    width: 6px;
    height: 6px;
    border: 1px solid var(--ta-primary);
    border-radius: 50%;
    background: transparent;
    content: "";
    transform: translateY(-50%);
  }

  .off-canvas .nav-vertical ul.sub-menu > li.current-menu-item > a,
  .off-canvas .nav-vertical ul.sub-menu > li.current-menu-ancestor > a,
  .off-canvas .nav-vertical ul.sub-menu > li > a:hover,
  .off-canvas .nav-slide ul.sub-menu > li.current-menu-item > a,
  .off-canvas .nav-slide ul.children > li.current-menu-item > a,
  .mobile-sidebar .nav-vertical ul.sub-menu > li.current-menu-item > a {
    color: var(--ta-primary-hover) !important;
    background: var(--ta-primary-soft);
  }

  .off-canvas .nav-vertical ul.sub-menu > li.current-menu-item > a::before,
  .off-canvas .nav-vertical ul.sub-menu > li.current-menu-ancestor > a::before,
  .mobile-sidebar .nav-vertical ul.sub-menu > li.current-menu-item > a::before {
    background: var(--ta-primary);
  }

  /* Submenu cấp 2: thụt vào, không tạo panel quá nặng. */
  .off-canvas .nav-vertical ul.sub-menu ul.sub-menu,
  .off-canvas .nav-slide ul.sub-menu ul.sub-menu,
  .off-canvas .nav-slide ul.children ul.children,
  .mobile-sidebar .nav-vertical ul.sub-menu ul.sub-menu {
    margin: 5px 0 8px 14px;
    padding: 4px 0 4px 9px;
    border: 0;
    border-left: 2px solid rgba(216, 95, 50, 0.28);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
  }

  .off-canvas .nav-vertical ul.sub-menu ul.sub-menu > li > a,
  .off-canvas .nav-slide ul.sub-menu ul.sub-menu > li > a,
  .off-canvas .nav-slide ul.children ul.children > li > a,
  .mobile-sidebar .nav-vertical ul.sub-menu ul.sub-menu > li > a {
    min-height: 39px;
    padding-top: 8px;
    padding-bottom: 8px;
    color: var(--ta-muted);
    font-size: 13.5px;
  }

  /* Toggle bên trong panel mobile nhỏ hơn. */
  .off-canvas .nav-vertical ul.sub-menu li > .toggle,
  .off-canvas .nav-slide ul.sub-menu li > .toggle,
  .mobile-sidebar .nav-vertical ul.sub-menu li > .toggle {
    top: 3px;
    right: 2px;
    width: 36px;
    height: 36px;
    min-height: 36px;
    border-radius: 9px;
  }

  .off-canvas a:focus-visible,
  .mobile-sidebar a:focus-visible,
  .off-canvas .toggle:focus-visible,
  .mobile-sidebar .toggle:focus-visible {
    outline: 2px solid var(--ta-primary);
    outline-offset: 2px;
  }
}

/* ========================== ACCESSIBILITY ============================== */

@media (prefers-reduced-motion: reduce) {
  #masthead .nav-dropdown,
  #masthead ul.sub-menu,
  #masthead .nav-dropdown a,
  #masthead ul.sub-menu a,
  .off-canvas .nav-vertical a,
  .off-canvas .nav-vertical .toggle {
    transition: none !important;
  }
}
