/* ============================================================
   TRAVEXA THEME - RESPONSIVE STYLESHEET
   Author      : Akshar Webtech
   Version     : 1.0.0

   TABLE OF CONTENTS (STRICTLY GROUPED BY BREAKPOINT SIZE):
   ------------------------------------------------------------
   01. DESKTOP & LARGE DISPLAY         (min-width: 992px & 576px)
   02. LARGE TABLET / LAPTOP           (max-width: 1199px)
   03. TABLET & MEDIUM SCREENS         (max-width: 991px)
   04. MOBILE / TABLET                 (max-width: 767px)
   05. MOBILE PORTRAIT & SMALL DEVICE  (max-width: 575px)
   06. EXTRA SMALL MOBILE              (max-width: 400px)
   ============================================================ */

/* ============================================================
   01. DESKTOP & LARGE DISPLAY (MIN-WIDTH BREAKPOINTS)
   ============================================================ */
@media (min-width: 992px) {
  .process-card-stagger {
    margin-top: 60px !important;
  }

  .adv-features-wrapper,
  .adv-cards-overlap-container {
    margin-left: 0 !important;
  }
}

@media (min-width: 576px) {
  .stat-card-stagger {
    transform: translateY(30px);
  }

  .stat-card-stagger:hover {
    transform: translateY(20px);
  }
}

/* ============================================================
   02. LARGE TABLET / LAPTOP (max-width: 1199px)
   ============================================================ */
@media (max-width: 1199px) {  .footer-contact-wrap {
    justify-content: flex-start;
  }
}

/* ============================================================
   03. TABLET & MEDIUM SCREENS (max-width: 991px)
   ============================================================ */
@media (max-width: 991px) {

  /* General Layout & Headers */
  body {
    width: 100%;
  }

  .tb-header-v2,
  .tb-header-v2.is-sticky {
    position: fixed !important;
    top: 15px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    padding: 0 !important;
    z-index: 1090 !important;
    background-color: none !important;
  }

  .tb-header-pill {
    padding: 6px 14px !important;
    border-radius: 50px !important;
  }

  .tb-header-actions-v2 .btn-primary {
    display: none !important;
  }

  .main-header,
  .main-header.is-sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 1080 !important;
    background-color: var(--bg-white) !important;
    box-shadow: 0 4px 20px rgba(44, 92, 80, 0.1) !important;
  }

  .top-header {
    display: none !important;
  }

  /* Hero & Search Widget */
  .hero-section {
    padding: 130px 0 65px !important;
    min-height: auto;
  }

  .main-header.header-glass {
    top: 0 !important;
    position: fixed !important;
    background: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
  }

  /* Fullscreen Search Modal Mobile Tweaks */
  .search-modal-close,
  .search-modal .modal-header .btn-close {
    top: 1.25rem !important;
    right: 1.25rem !important;
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
  }

  .search-modal .search-modal-input,
  .form-control.search-modal-input {
    font-size: 15px !important;
    padding: 1rem 4.5rem 1rem 3.2rem !important;
  }

  .search-modal-submit-btn {
    padding: 0.65rem 1rem !important;
    font-size: 13px !important;
  }

  .search-modal-submit-btn span {
    display: none;
  }

  .search-modal-submit-btn i {
    margin-left: 0 !important;
  }

  .hero-section .hero-booking-bar {
    border-radius: 28px !important;
    padding: 1.25rem !important;
  }

  .hero-section .hero-booking-bar .booking-col:not(:last-child) {
    border-right: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.18) !important;
    padding-bottom: 0.85rem !important;
    margin-bottom: 0.5rem !important;
  }

  .hero-video-wrap {
    height: 100%;
  }

  .hero-bg-video {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .tb-hero-v2 {
    min-height: auto !important;
    margin: 0 !important;
    border-radius: 0 0 24px 24px !important;
    padding-top: 90px !important;
    padding-bottom: 50px !important;
  }

  .tb-hero-float-icon,
  .tb-hero-plane,
  .tb-hero-glow {
    display: none !important;
  }

  .tb-hero-title {
    font-size: 34px !important;
  }

  .tb-hero-desc {
    font-size: 15px !important;
  }

  .tb-booking-widget {
    padding: 1.25rem !important;
    border-radius: 20px !important;
  }

  .border-end-md {
    border-right: none !important;
    border-bottom: 1px dashed var(--border-color);
    padding-bottom: 1rem !important;
    margin-bottom: 0.5rem !important;
  }

  .hero-main-heading {
    font-size: 42px;
    line-height: 1.1;
  }

  .hero-brush-highlight {
    font-size: 54px;
    margin: -6px 0;
  }

  .hero-script-tag {
    font-size: 24px;
  }

  .hero-desc {
    font-size: 15px;
    max-width: 100%;
  }

  .hero-floating-badge {
    animation: none !important;
    transform: none !important;
  }

  .hero-rating-badge,
  .hero-destinations-badge {
    padding: 0.6rem 1.15rem;
  }

  .hero-script-text {
    font-size: 20px !important;
  }

  .hero-float-decor,
  .hero-flight-trail-svg,
  .hero-glow-orb {
    display: none !important;
  }

  .hero-quick-tags {
    margin-top: 1.25rem !important;
  }

  .hero-tag-chip {
    font-size: 11.5px !important;
    padding: 5px 12px !important;
  }

  .hero-booking-bar {
    border-radius: 20px;
  }

  .travexa-dest-search-bar {
    transform: translateY(-25px);
    margin-bottom: -25px;
    border-radius: 24px !important;
    padding: 1.25rem !important;
  }

  .dest-bento-card.large {
    min-height: 380px !important;
  }

  .destination-grid-section {
    padding-top: 60px !important;
  }

  .tb-destination-hero {
    padding: 150px 0 60px;
    min-height: 300px;
  }

  .booking-col {
    border-right: none !important;
    border-bottom: 1px dashed var(--border-color);
    padding: 0.65rem 0;
  }

  .booking-col:last-child {
    border-bottom: none !important;
  }

  .btn-search-hero {
    margin-top: 0.5rem;
  }

  /* Components & Cards */
  .travexa-expanding-gallery {
    flex-direction: column;
    height: auto;
    gap: 20px;
  }

  .expand-panel {
    flex: none !important;
    width: 100%;
    height: 350px;
    border-radius: 20px;
  }

  .panel-collapsed-title,
  .expand-panel .panel-collapsed-title {
    display: none !important;
  }

  .panel-category-badge,
  .expand-panel .panel-category-badge {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    top: 15px !important;
    left: 15px !important;
    font-size: 11px !important;
    padding: 4px 10px !important;
  }

  .panel-top-badge,
  .expand-panel .panel-top-badge {
    left: auto !important;
    right: 15px !important;
    transform: none !important;
    top: 15px !important;
    font-size: 11.5px !important;
    padding: 4px 10px !important;
  }

  .panel-overlay {
    opacity: 0.95 !important;
    background: linear-gradient(to top, rgba(44, 92, 80, 0.95) 0%, rgba(44, 92, 80, 0.4) 65%, transparent 100%) !important;
  }

  .panel-content,
  .expand-panel .panel-content,
  .expand-panel:not(.active) .panel-content {
    position: absolute !important;
    bottom: 20px !important;
    left: 20px !important;
    right: 20px !important;
    width: calc(100% - 40px) !important;
    height: auto !important;
    padding: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
    gap: 0.85rem !important;
  }

  .panel-icon {
    margin: 0 !important;
    width: 44px !important;
    height: 44px !important;
    font-size: 17px !important;
    flex-shrink: 0 !important;
  }

  .panel-text,
  .expand-panel .panel-text,
  .expand-panel:not(.active) .panel-text {
    opacity: 1 !important;
    visibility: visible !important;
    max-width: 100% !important;
    max-height: none !important;
    white-space: normal !important;
    overflow: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    flex-grow: 1;
  }

  .panel-tags,
  .expand-panel .panel-tags,
  .expand-panel:not(.active) .panel-tags {
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  .panel-text h3 {
    font-size: 20px !important;
    margin-bottom: 0.15rem !important;
  }

  .panel-text p {
    font-size: 13px !important;
    line-height: 1.35 !important;
    margin-bottom: 0.5rem !important;
  }

  .panel-text .btn {
    height: 38px !important;
    font-size: 12px !important;
    padding: 0 1rem !important;
    margin-top: 0.35rem !important;
  }

  .editorial-featured-card {
    min-height: 500px;
    height: auto;
    border-radius: 20px;
  }

  .editorial-title {
    font-size: 22px !important;
    margin-bottom: 0.75rem !important;
  }

  .editorial-list-card {
    height: auto;
    border-radius: 18px;
  }

  .why-choose-us {
    padding: 3.5rem 0 !important;
  }

  .advantage-card {
    padding: 2rem 1.5rem !important;
    border-radius: 20px !important;
  }

  .advantage-number {
    font-size: 75px !important;
  }

  .travel-style-card {
    height: 380px;
    border-radius: 90px 90px 20px 20px;
  }

  .testimonial-slider {
    padding-left: 0;
    padding-right: 0;
  }

  .blog-featured-card {
    min-height: 420px;
    border-radius: 20px !important;
  }

  .tb-about-experience-badge {
    left: -10px;
    top: 30px;
  }

  .tb-about-sub-img-wrap {
    width: 60%;
    height: 250px;
    border-width: 8px;
  }

  .tb-about-sub-img {
    width: 100%;
    height: 100%;
  }

  .tb-about-route-decor {
    display: none;
  }

  .tb-about-main-img {
    height: 450px;
  }

  .tb-explore-heading {
    font-size: 42px !important;
  }

  .tb-discount-stamp-wrap {
    width: 110px;
    height: 110px;
    min-width: 110px;
  }

  .tb-stamp-val {
    font-size: 20px;
  }

  .tb-why-triangle-wrapper {
    max-width: 340px;
    height: 285px;
    margin: 1.5rem auto;
  }

  .tb-why-orbital-ring {
    width: 320px !important;
    height: 320px !important;
  }

  .tb-fbadge-top {
    right: -5px !important;
    top: 5px !important;
  }

  .tb-fbadge-bottom {
    left: -5px !important;
    bottom: 10px !important;
  }

  .tb-feature-box.tb-feature-left {
    flex-direction: row-reverse;
  }

  .tb-feature-text.text-lg-end {
    text-align: left !important;
  }

  .tb-curve-decor.justify-content-lg-end {
    justify-content: flex-start !important;
  }

  .tb-feature-left .tb-feature-desc {
    margin-left: 0;
  }

  .tb-doodle-signpost {
    display: none !important;
  }

  .tb-promo-v2-img-wrap {
    clip-path: none;
    min-height: 350px;
  }

  .tb-promo-v2-badge {
    top: 20px;
    right: 20px;
    width: 90px;
    height: 90px;
  }

  .tb-promo-v2-badge .num {
    font-size: 26px;
  }

  .tb-promo-v2-badge .text {
    font-size: 11px;
  }  .btn-accent {
    width: 100%;
    justify-content: center;
  }

  .input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  .input-group>.form-control {
    flex: 1 1 auto !important;
    width: 1% !important;
    min-width: 0 !important;
  }

  .input-group .btn,
  .input-group .btn-accent {
    width: auto !important;
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  .tb-footer-watermark {
    bottom: 50px;
  }

  .tb-offset-card-wrapper {
    height: 440px;
  }

  .our-mission-img {
    height: 480px;
  }

  .mission-floating-badge {
    right: 0;
    margin-right: 0 !important;
  }

  /* Index-3 Adventure Homepage Overrides */
  .adv-hero-section {
    min-height: 680px;
    padding-top: 110px;
    padding-bottom: 50px;
  }

  .adv-hero-content {
    padding-top: 2rem !important;
    margin-top: 1rem !important;
  }

  .adv-hero-title {
    font-size: clamp(36px, 6.5vw, 52px) !important;
    letter-spacing: -1.5px;
    margin-bottom: 1rem !important;
  }

  .adv-hero-desc {
    font-size: 15px !important;
    line-height: 1.5;
    margin-bottom: 1.5rem !important;
  }

  .adv-search-bar {
    margin-top: -30px;
    padding: 1.25rem;
  }

  .adv-search-item {
    border-right: none;
    border-bottom: 1px dashed var(--border-color);
    padding: 0.75rem 0;
  }

  .adv-search-item:last-child {
    border-bottom: none;
  }

  .adv-video-banner {
    min-height: 360px;
  }

  /* Inner Pages & Specialized Elements */
  .pricing-card-featured-modern {
    transform: scale(1);
    margin-top: 1.5rem;
  }

  .pricing-card-featured-modern:hover {
    transform: translateY(-8px);
  }

  .review-card-stagger {
    margin-top: 0;
  }

  .review-wall-card {
    padding: 2rem 1.5rem !important;
  }

  .review-quote-watermark {
    font-size: 80px;
    top: 0;
    right: -10px;
  }

  .faq-support-card {
    margin-bottom: 1rem;
  }

  .terms-sidebar {
    position: relative !important;
    top: 0 !important;
    margin-bottom: 1rem;
  }

  .terms-content-box {
    scroll-margin-top: 100px;
  }

  .account-sidebar {
    margin-bottom: 1rem;
  }

  .account-nav-menu {
    display: flex !important;
    flex-direction: row !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    gap: 0.5rem !important;
    padding-bottom: 0.5rem !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .account-nav-menu::-webkit-scrollbar {
    display: none !important;
  }

  .account-nav-link {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    padding: 0.6rem 1.15rem !important;
    border-radius: 50px !important;
    font-size: 13.5px !important;
    gap: 0.5rem !important;
  }

  .account-nav-link:hover,
  .account-nav-link.active {
    padding-left: 1.15rem !important;
  }

  .account-nav-menu .border-top {
    display: none !important;
  }

  .auth-form-container {
    max-width: 500px !important;
  }

  .coming-soon-section h1.display-3 {
    font-size: 3rem !important;
  }

  .error-code {
    font-size: 120px;
  }

  .blog-card-img-wrap {
    height: 320px;
  }

  .sticky-sidebar-top {
    position: relative !important;
    top: 0 !important;
    margin-top: 1rem;
  }

  .blog-detail-img-wrap {
    height: 350px;
  }

  .p-xl-6 {
    padding: 2.5rem !important;
  }

  .contact-map-wrapper {
    min-height: 400px;
  }

  /* Index-2 Hero & Reservation Card Tablet Enhancements */
  .tb-hero-v2 {
    padding-top: 115px !important;
    padding-bottom: 65px !important;
    min-height: auto !important;
  }

  .tb-hero-title-v3 {
    font-size: clamp(34px, 5vw, 48px) !important;
    line-height: 1.15 !important;
  }

  .tb-hero-script-tag {
    font-size: 28px !important;
  }

  .tb-hero-desc {
    font-size: 16px !important;
    max-width: 100% !important;
    margin-bottom: 1.5rem !important;
  }

  .tb-reservation-card {
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 2rem !important;
    margin-left: 0 !important;
    padding: 2.25rem 2rem !important;
    border-radius: 24px !important;
  }

  .adv-main-header {
    background: rgba(44, 92, 80, 0.85);
    border-bottom: none;
  }

  .adv-hero-overlay {
    background: linear-gradient(180deg, rgba(44, 92, 80, 0.9) 0%, rgba(44, 92, 80, 0.6) 60%, rgba(44, 92, 80, 0.2) 100%);
  }

  .adv-hero-section {
    height: auto;
    min-height: 800px;
    padding-top: 100px;
    padding-bottom: 60px;
    text-align: center;
  }

  .adv-hero-line {
    display: none;
  }

  .adv-hero-section .d-flex {
    justify-content: center;
  }

  .adv-hero-desc {
    margin: 0 auto 2.5rem auto !important;
    padding-right: 0 !important;
  }

  .border-end-md {
    border-right: none !important;
  }

  .adv-cat-card {
    height: 320px;
  }

  .adv-bento-tall {
    min-height: 400px;
  }

  .adv-cinematic-wrapper {
    height: 500px;
  }

  /* Footer */
  .footer-area.ft-bg {
    background-size: auto 340px, 100% 100%, auto, auto;
    background-position: bottom center, center top, center center, center center;
  }

  .footer-widget-wrap {
    padding-top: 55px;
    padding-bottom: 25px;
  }

  .footer-social-box {
    margin-top: 25px !important;
    margin-bottom: 20px;
  }

  .footer-contact {
    margin-bottom: 25px;
  }

  .footer-contact-wrap {
    gap: 12px;
  }

  /* Get In Touch Newsletter Widget Spacing */
  .footer-widget-box:not(.list):not(.about-us),
  .footer-contact + .row > .col-lg-4:last-child,
  .footer-contact + .row > [class*="col-"]:last-child {
    margin-top: 35px;
  }
}

/* ============================================================
   04. MOBILE / TABLET (max-width: 767px)
   ============================================================ */
@media (max-width: 767px) {
  .card-title {
    font-size: 14px;
  }

  .hero-main-heading {
    font-size: 38px !important;
    line-height: 1.15;
  }

  .hero-brush-highlight {
    font-size: 48px !important;
    margin: -2px 0;
  }

  .hero-script-tag {
    font-size: 26px !important;
  }

  .hero-desc {
    font-size: 15px !important;
    line-height: 1.6;
    margin-bottom: 1.5rem;
  }

  .blog-stacked-card h4 {
    font-size: 14.5px !important;
    line-height: 1.35 !important;
    margin-bottom: 0.25rem !important;
  }  .tb-offset-card-wrapper {
    height: auto;
    min-height: 420px;
  }

  .tb-offset-hidden {
    max-height: none !important;
    opacity: 1 !important;
    overflow: visible !important;
  }

  .tb-cinematic-glass {
    background: linear-gradient(180deg, rgba(44, 92, 80, 0) 0%, rgba(44, 92, 80, 0.9) 30%, rgba(44, 92, 80, 1) 100%) !important;
    padding-top: 3rem !important;
  }

  .tb-offset-frame {
    display: none;
  }

  .tb-offset-card-wrapper:hover .tb-offset-card {
    transform: none;
  }

  /* Footer */
  .footer-contact-item {
    width: 100%;
    border-radius: 12px;
  }
}

/* ============================================================
   05. MOBILE PORTRAIT & SMALL DEVICE (max-width: 575px)
   ============================================================ */
@media (max-width: 575px) {
  .hero-main-heading {
    font-size: clamp(24px, 7.2vw, 32px) !important;
    line-height: 1.2;
    word-break: normal;
    overflow-wrap: break-word;
  }

  .hero-brush-highlight {
    font-size: clamp(30px, 9.5vw, 42px) !important;
    margin: -2px 0;
  }

  .hero-script-tag {
    font-size: 20px !important;
  }

  .hero-desc {
    font-size: 14px !important;
    line-height: 1.55;
    margin-bottom: 1.25rem;
  }

  .adv-hero-section {
    min-height: 600px !important;
    padding-top: 80px !important;
    padding-bottom: 40px !important;
  }

  .adv-hero-content {
    padding-top: 1.5rem !important;
    margin-top: 0.5rem !important;
  }

  .adv-hero-subtitle {
    font-size: 11px !important;
    letter-spacing: 1.5px !important;
  }

  .adv-hero-title {
    font-size: clamp(28px, 8.5vw, 36px) !important;
    line-height: 1.15 !important;
    letter-spacing: -1px !important;
    margin-bottom: 0.75rem !important;
  }

  .adv-hero-desc {
    font-size: 13.5px !important;
    line-height: 1.45 !important;
    margin-bottom: 1.25rem !important;
    padding-right: 0 !important;
  }

  .adv-slide-btns {
    gap: 0.65rem !important;
  }

  .adv-slide-btns .btn,
  .adv-slide-btns .adv-glass-btn {
    width: 100% !important;
    justify-content: center !important;
    font-size: 14px !important;
    padding: 0.65rem 1.25rem !important;
    height: 44px !important;
  }

  .adv-slider-nav {
    margin: 1rem !important;
  }

  .adv-slider-nav button {
    width: 44px !important;
    height: 44px !important;
    font-size: 15px !important;
  }

  /* Index-3 Search & Category Section Mobile Overrides */
  .adv-search-wrapper {
    margin-top: -35px !important;
    border-radius: 28px !important;
    padding: 0.85rem !important;
  }

  .adv-search-item {
    border-end-style: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.15);
    padding-bottom: 0.5rem;
    margin-bottom: 0.5rem;
  }

  .adv-search-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  .adv-cat-card {
    height: 280px !important;
  }

  .adv-cat-icon {
    width: 52px !important;
    height: 52px !important;
    font-size: 20px !important;
  }

  /* Index-3 Bento Grid Mobile Overrides */
  .adv-bento-tall {
    min-height: 380px !important;
  }

  .adv-bento-card {
    padding: 1.5rem !important;
  }

  /* Index-3 Why Choose Us V2 Mobile Overrides */
  .adv-cards-overlap-container {
    margin-left: 0 !important;
  }

  /* Hero & Header Elements */
  .avatar-group .avatar-img {
    width: 32px !important;
    height: 32px !important;
    border-width: 1.5px !important;
    margin-left: -8px !important;
  }

  .avatar-group .avatar-img:first-child {
    margin-left: 0 !important;
  }

  .tb-explore-heading {
    font-size: 34px !important;
  }

  .tb-discount-stamp-wrap {
    width: 95px;
    height: 95px;
    min-width: 95px;
  }

  .tb-stamp-sub {
    font-size: 9.5px;
  }

  .tb-stamp-val {
    font-size: 17px;
  }

  .tb-stamp-foot {
    font-size: 8px;
    letter-spacing: 0.8px;
  }

  .tb-package-item {
    padding: 6px 2px !important;
    gap: 8px !important;
  }

  .tb-item-check {
    width: 22px !important;
    height: 22px !important;
    min-width: 22px !important;
    font-size: 10px !important;
  }

  .tb-item-title {
    font-size: 13px !important;
  }

  .tb-about-img-frame {
    display: none !important;
  }

  .tb-about-compass-watermark {
    display: none !important;
  }

  .tb-about-sub-img-wrap {
    width: 65% !important;
    height: 190px !important;
    border-width: 6px !important;
  }

  .tb-about-experience-badge {
    left: -5px !important;
    top: 20px !important;
    padding: 9px 18px 9px 10px !important;
    gap: 10px !important;
  }

  .tb-exp-icon-wrap {
    width: 36px !important;
    height: 36px !important;
    font-size: 14px !important;
  }

  .tb-guide-floating-tag {
    font-size: 9.5px !important;
    padding: 4px 10px !important;
    bottom: 8px !important;
    left: 8px !important;
  }

  .tb-call-num {
    font-size: 18px !important;
  }

  .tb-book-pill-btn {
    padding: 0.75rem 1.85rem !important;
    font-size: 14px !important;
  }

  /* Why Travel With Travexa (Mobile) */
  .tb-why-triangle-wrapper {
    max-width: 290px;
    height: 245px;
    margin: 1rem auto 1.5rem;
  }

  .tb-feature-box {
    gap: 14px;
  }

  .tb-feature-icon-wrap {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    font-size: 18px !important;
  }

  .tb-feature-title {
    font-size: 17px !important;
  }

  .tb-feature-desc {
    font-size: 13.5px !important;
    line-height: 1.5 !important;
  }

  .tb-why-orbital-ring {
    display: none !important;
  }

  .tb-feature-card {
    padding: 14px 16px !important;
  }

  .tb-doodle-palm,
  .tb-doodle-umbrella,
  .tb-doodle-signpost {
    display: none !important;
  }

  .tb-destination-hero {
    padding: 150px 0 50px;
    min-height: 280px;
  }

  .tb-dest-header-card {
    padding: 1.5rem 0.85rem !important;
    border-radius: 18px !important;
  }

  .tb-dest-header-card h1 {
    font-size: 26px !important;
    margin-bottom: 0.5rem !important;
  }

  .tb-dest-header-card p {
    font-size: 13px !important;
    line-height: 1.5 !important;
    margin-bottom: 1rem !important;
  }

  .tb-flight-breadcrumb {
    padding: 0.4rem 0.65rem !important;
    gap: 0.35rem !important;
    max-width: 100% !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    border-radius: 24px !important;
  }

  .tb-bc-item {
    gap: 0.25rem !important;
    white-space: nowrap !important;
  }

  .tb-bc-icon {
    width: 22px !important;
    height: 22px !important;
    font-size: 9.5px !important;
    flex-shrink: 0 !important;
  }

  .tb-bc-item span {
    font-size: 11.5px !important;
    white-space: nowrap !important;
  }

  .tb-bc-divider {
    width: 18px !important;
    flex-shrink: 0 !important;
  }

  .tb-bc-plane {
    font-size: 10px !important;
  }

  .travexa-dest-search-bar,
  .booking-stepper {
    transform: translateY(-15px);
    margin-top: -30px !important;
    margin-bottom: -15px;
    padding: 0.85rem !important;
    border-radius: 18px !important;
  }

  .dest-filter-container {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    justify-content: flex-start !important;
    padding: 0.25rem 0.25rem 0.75rem !important;
    gap: 0.5rem !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .dest-filter-container::-webkit-scrollbar {
    display: none;
  }

  .dest-filter-btn {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    font-size: 12px !important;
    padding: 0.45rem 1rem !important;
  }

  .dest-info-item {
    flex-direction: column !important;
    text-align: center !important;
    gap: 0.35rem !important;
  }

  .dest-info-icon {
    width: 38px !important;
    height: 38px !important;
    font-size: 16px !important;
  }

  .dest-info-label {
    font-size: 11px !important;
    margin-bottom: 0 !important;
    white-space: nowrap !important;
  }

  .dest-info-val {
    font-size: 13px !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }

  .dest-info-item > div:last-child {
    min-width: 0;
    max-width: 100%;
  }

  .dest-main-img-box {
    height: 240px !important;
    border-radius: 18px !important;
  }

  .dest-gallery-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.75rem !important;
  }

  .dest-gallery-item {
    height: 110px !important;
    border-radius: 14px !important;
  }

  .dest-details-section {
    padding: 45px 0 !important;
  }

  .dest-sidebar-card {
    padding: 1.25rem !important;
    border-radius: 18px !important;
  }

  /* Tour Cards & Package Grid */
  .tour-listing-section {
    padding-top: 45px !important;
    padding-bottom: 45px !important;
  }

  .tour-card-img-wrap {
    height: 185px !important;
  }

  .tour-card-body {
    padding: 1.15rem 0.85rem !important;
  }

  .tour-card-body h3 {
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  .tour-card-body p {
    font-size: 12px !important;
    margin-bottom: 0.75rem !important;
  }

  .tour-inclusions-list {
    flex-wrap: wrap !important;
    gap: 0.4rem 0.6rem !important;
    margin: 0.75rem 0 !important;
    padding: 0.5rem 0 !important;
  }

  .tour-inclusion-item {
    font-size: 11px !important;
  }

  .tour-card-body .btn-primary {
    padding: 0.45rem 1rem !important;
    font-size: 12px !important;
    height: auto !important;
    white-space: nowrap !important;
  }

  .tb-hero-v2 {
    margin: 8px 8px !important;
    border-radius: 16px !important;
  }

  .offcanvas-mobile {
    width: 100% !important;
  }

  .hero-main-heading {
    font-size: 32px !important;
    line-height: 1.15;
  }

  .hero-brush-highlight {
    font-size: 42px !important;
  }

  .hero-script-tag {
    font-size: 22px !important;
  }

  .hero-booking-bar {
    border-radius: 16px;
  }

  .hero-rating-badge,
  .hero-destinations-badge {
    width: 100%;
    justify-content: flex-start;
  }

  /* Datepicker & Dropdowns */
  .travexa-datepicker-pop,
  .tb-reservation-field .travexa-datepicker-pop,
  .dest-sidebar-card .travexa-datepicker-pop,
  .position-relative .travexa-datepicker-pop {
    width: 270px !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    left: 0 !important;
    right: auto !important;
    transform: none !important;
    padding: 0.85rem 0.65rem !important;
    border-radius: 16px !important;
    box-shadow: 0 15px 40px rgba(44, 92, 80, 0.25) !important;
    z-index: 100000 !important;
  }

  .col-6:last-child .travexa-datepicker-pop,
  .col-md-6:last-child .travexa-datepicker-pop,
  .travexa-datepicker-pop.pop-right {
    left: auto !important;
    right: 0 !important;
    transform: none !important;
  }

  .dest-sidebar-card .travexa-date-picker {
    font-size: 11.5px !important;
    padding-left: 6px !important;
    padding-right: 22px !important;
  }

  .datepicker-header {
    margin-bottom: 0.5rem !important;
  }

  .datepicker-header .current-month-year {
    font-size: 14px !important;
  }

  .datepicker-day-name,
  .datepicker-day {
    font-size: 11px !important;
    height: 28px !important;
    line-height: 28px !important;
  }

  .datepicker-footer {
    padding-top: 0.5rem !important;
    margin-top: 0.5rem !important;
  }

  .datepicker-btn-clear,
  .datepicker-btn-today {
    font-size: 11px !important;
  }

  .travexa-custom-select {
    position: relative !important;
    width: 100% !important;
    z-index: 1 !important;
  }

  .travexa-custom-select.is-open {
    z-index: 999999 !important;
  }

  .select-options,
  .tb-reservation-field .select-options {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background-color: #ffffff !important;
    background: #ffffff !important;
    box-shadow: 0 15px 40px rgba(44, 92, 80, 0.2) !important;
  }

  .select-option,
  .tb-reservation-field .select-option {
    padding: 0.55rem 1rem !important;
    font-size: 13px !important;
  }

  .tb-package-card-v2 .card-body {
    padding: 1.15rem 0.85rem !important;
  }

  .tb-meta-pill-row {
    padding: 8px 8px !important;
    gap: 4px !important;
  }

  .tb-meta-pill-row span {
    font-size: 11.5px !important;
    white-space: nowrap !important;
  }

  .tb-meta-pill-row .text-muted {
    font-size: 9px !important;
  }

  .tb-package-card-v2 .btn {
    white-space: nowrap !important;
    padding: 0.5rem 0.95rem !important;
    font-size: 13px !important;
    flex-shrink: 0 !important;
  }

  .tb-testi-v2-card {
    padding: 1.25rem 1rem !important;
    border-radius: 20px !important;
  }

  .tb-testi-v2-user {
    flex-wrap: wrap !important;
    gap: 0.75rem !important;
    margin-bottom: 1rem !important;
    padding-bottom: 1rem !important;
  }

  .tb-testi-v2-avatar {
    width: 48px !important;
    height: 48px !important;
    flex-shrink: 0 !important;
  }

  .tb-testi-v2-user .ms-auto {
    margin-left: 0 !important;
    width: 100% !important;
    display: flex !important;
    gap: 2px !important;
  }

  .tb-testi-v2-quote-icon {
    font-size: 45px !important;
    top: 15px !important;
    right: 15px !important;
  }

  .tb-testi-v2-text {
    font-size: 13.5px !important;
    line-height: 1.6 !important;
  }

  .scroll-to-top {
    bottom: 20px !important;
    right: 15px !important;
    width: 38px !important;
    height: 38px !important;
    font-size: 14px !important;
    z-index: 99 !important;
  }

  /* Floating Exploration Icons Mobile */
  .blog-float-icon,
  .hero-float-decor,
  .dest-float-icon,
  .tour-float-icon,
  .tb-pkg-float,
  .travel-styles-float {
    display: none !important;
  }

  .blog-featured-card {
    min-height: 420px !important;
    border-radius: 20px !important;
  }

  .blog-featured-title {
    font-size: 20px !important;
  }

  .blog-stacked-card {
    padding: 1rem !important;
    border-radius: 16px !important;
    gap: 0.85rem !important;
  }

  .stacked-img-wrap {
    width: 110px !important;
    height: 95px !important;
    border-radius: 12px !important;
  }

  .stacked-arrow-btn {
    width: 32px !important;
    height: 32px !important;
    font-size: 11px !important;
  }

  .editorial-featured-card {
    min-height: 460px;
    border-radius: 20px !important;
  }

  .editorial-featured-card .btn {
    white-space: nowrap !important;
    padding: 0.5rem 1.1rem !important;
    font-size: 13px !important;
    flex-shrink: 0 !important;
  }

  .featured-location-tag {
    font-size: 11.5px !important;
    color: #479882 !important;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8) !important;
  }

  .editorial-title {
    font-size: 18px !important;
    line-height: 1.3 !important;
    margin-bottom: 0.75rem !important;
  }

  .featured-pill-badge {
    padding: 0.3rem 0.65rem !important;
    font-size: 11.5px !important;
  }

  .editorial-list-card {
    padding: 0.85rem 0.65rem !important;
    border-radius: 18px !important;
  }

  .editorial-list-card h4 {
    font-size: 14px !important;
    line-height: 1.35 !important;
    margin-bottom: 0.35rem !important;
  }

  .editorial-location-tag {
    font-size: 11px !important;
  }

  .rating-badge-pill {
    font-size: 11px !important;
    padding: 0.15rem 0.45rem !important;
  }

  .btn-explore-link {
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    padding: 0.35rem 0.75rem !important;
    flex-shrink: 0 !important;
  }

  .list-img-box {
    border-radius: 12px !important;
  }

  .tb-promo-v2-card h2 {
    font-size: 22px !important;
    line-height: 1.25 !important;
    margin-bottom: 0.5rem !important;
  }

  .tb-promo-v2-card .btn {
    white-space: nowrap !important;
    width: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .tb-timer-v2-wrap {
    display: flex !important;
    gap: 8px !important;
    justify-content: space-between !important;
    width: 100% !important;
  }

  .tb-timer-circle {
    width: 64px !important;
    height: 64px !important;
    min-height: 64px !important;
    flex: 0 0 calc(25% - 6px) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
  }

  .tb-timer-circle .num {
    font-size: 20px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    margin-bottom: 4px !important;
    display: block !important;
  }

  .tb-timer-circle .label {
    font-size: 9px !important;
    line-height: 1 !important;
  }

  /* Inner Pages Media Overrides */
  .pricing-card-modern,
  .pricing-card-featured-modern {
    padding: 2.5rem 1.5rem 1.5rem !important;
  }

  .pricing-badge-floating {
    top: -14px;
    padding: 6px 18px;
    font-size: 10px;
  }

  .review-user-img {
    width: 50px;
    height: 50px;
  }

  .review-wall-card h5 {
    font-size: 1.1rem !important;
  }

  .custom-faq-accordion .faq-btn {
    padding: 1.15rem 1.25rem !important;
    font-size: 16px !important;
  }

  .custom-faq-accordion .accordion-body {
    padding: 1.15rem 1.25rem !important;
    font-size: 14px !important;
  }

  .terms-content-container {
    padding: 2rem 1.5rem !important;
  }

  .terms-sidebar {
    padding: 1.5rem !important;
  }

  .account-stat-card {
    padding: 1.5rem !important;
  }

  .booking-history-item {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem !important;
  }

  .booking-img-wrap {
    width: 100%;
    height: 160px;
  }

  .booking-history-item .text-sm-end {
    width: 100%;
  }

  .booking-history-item .btn {
    width: 100%;
  }

  .auth-card-wrapper {
    border-radius: 20px !important;
  }

  .auth-form-container {
    padding: 0 !important;
  }

  .auth-social-btn span {
    display: none;
  }

  .auth-social-btn {
    padding: 0.75rem !important;
  }

  .contact-action-pill {
    padding: 0.75rem 0.85rem !important;
    font-size: 13px !important;
    border-radius: 14px !important;
  }

  .cs-timer-box {
    min-width: 58px !important;
    max-width: 68px !important;
    padding: 0.85rem 0.35rem !important;
    border-radius: 14px !important;
    flex: 1 1 0 !important;
  }

  .cs-num {
    font-size: 22px !important;
  }

  .cs-label {
    font-size: 8.5px !important;
    letter-spacing: 0.5px !important;
  }

  .cs-newsletter .cs-notify-btn {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100%;
    margin-top: 1rem;
  }

  .cs-newsletter .form-control {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
    text-align: center;
  }

  .error-card {
    padding: 2.5rem 1.5rem !important;
  }

  .error-code {
    font-size: 90px;
    letter-spacing: -2px;
  }

  .error-floating-icon {
    display: none;
  }

  .error-card .w-sm-auto {
    width: 100% !important;
  }

  .blog-card-img-wrap {
    height: 240px;
  }

  .blog-standard-card .p-md-5 {
    padding: 1.5rem !important;
  }

  .blog-standard-card h2 {
    font-size: 1.25rem !important;
  }

  .sidebar-widget {
    padding: 1.5rem !important;
  }

  .blog-detail-img-wrap {
    height: 260px;
  }

  .blog-detail-section h2 {
    font-size: 1.5rem !important;
  }

  .blog-blockquote {
    padding: 1.5rem !important;
  }

  .blog-blockquote p {
    font-size: 1rem !important;
  }

  .comment-reply {
    margin-left: 1.5rem !important;
  }

  .comment-reply::before {
    left: -12px;
    width: 10px;
  }

  .author-bio-box {
    text-align: center;
    align-items: center;
  }

  .contact-overlap-row {
    margin-top: -60px;
  }

  .contact-main-section {
    margin-top: -20px;
    padding-top: 60px !important;
  }

  .contact-info-card {
    padding: 2rem 1.5rem !important;
  }

  .contact-map-wrapper {
    min-height: 300px;
  }

  .contact-breadcrumb {
    flex-wrap: wrap;
  }

  .adv-slider-nav {
    display: none !important;
  }

  .adv-hero-section {
    min-height: 700px;
  }

  .adv-bento-tall {
    min-height: 350px;
    padding: 2rem 1.5rem !important;
  }

  .adv-bento-card.bg-glass {
    padding: 2rem 1.5rem !important;
  }

  .adv-bento-section h2 {
    font-size: 2.2rem !important;
  }

  .adv-bento-section .btn {
    width: 100%;
    justify-content: center;
  }

  .adv-cinematic-wrapper {
    height: 400px;
  }

  .adv-play-btn-v2 {
    width: 65px;
    height: 65px;
  }

  .adv-why-choose-us-v2 h2 {
    font-size: 2.2rem !important;
  }

  .adv-overlap-card {
    padding: 1.5rem 1.25rem !important;
    flex-direction: column;
    gap: 1rem !important;
  }

  .adv-dest-card-v3 {
    height: 420px;
  }

  .adv-dest-prev-v3,
  .adv-dest-next-v3 {
    width: 40px;
    height: 40px;
  }

  .blog-stacked-card {
    padding: 0.75rem !important;
    gap: 0.75rem !important;
  }

  .stacked-img-wrap {
    width: 95px !important;
    height: 95px !important;
    border-radius: 12px !important;
    flex-shrink: 0 !important;
  }

  .stacked-content {
    padding-top: 0.15rem !important;
    padding-right: 0 !important;
  }

  .stacked-content .blog-cat-tag {
    font-size: 0.7rem !important;
    margin-bottom: 0.2rem !important;
  }

  .stacked-content h4 {
    font-size: 0.875rem !important;
    line-height: 1.35 !important;
    margin-bottom: 0.35rem !important;
    -webkit-line-clamp: 2 !important;
  }

  .tb-contact-widget {
    padding: 1.25rem 1rem !important;
  }

  .tb-contact-icon-v3 {
    width: 44px !important;
    height: 44px !important;
    font-size: 16px !important;
  }

  .tb-contact-widget a[href^="tel:"] {
    font-size: 1rem !important;
    white-space: nowrap !important;
  }

  .tb-contact-widget a[href^="mailto:"] {
    font-size: 0.875rem !important;
  }

  .dest-quick-info-bar {
    padding: 1.25rem 1rem !important;
    border-radius: 20px !important;
  }

  .dest-info-item {
    gap: 0.65rem !important;
  }

  .dest-info-icon {
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
  }

  .dest-info-label {
    font-size: 11.5px !important;
    letter-spacing: 0.5px !important;
    font-weight: 700 !important;
  }

  .dest-info-val {
    font-size: 14.5px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
  }

  .hero-booking-bar {
    padding: 1.25rem 1rem !important;
    overflow: visible !important;
  }

  .hero-booking-bar .select-options {
    right: 0 !important;
    left: auto !important;
    width: auto !important;
    min-width: 230px !important;
    max-width: 270px !important;
    background-color: #ffffff !important;
    background: #ffffff !important;
    box-shadow: 0 20px 50px rgba(44, 92, 80, 0.35) !important;
    border-radius: 16px !important;
    z-index: 999999 !important;
  }

  .hero-booking-bar .select-option {
    padding: 0.6rem 1rem !important;
    font-size: 13px !important;
    white-space: nowrap !important;
  }

  /* Tour Packages Mobile Cards */
  .ref-tour-card {
    flex-direction: column;
    padding: 16px;
    gap: 16px;
  }

  .ref-tour-img-wrap {
    width: 100%;
    height: 200px;
  }

  .ref-tour-content {
    padding: 0;
  }

  .ref-tour-bottom {
    width: 100%;
  }

  /* Footer Mobile */
  .footer-area.ft-bg {
    background-size: auto 240px, 100% 100%, auto, auto;
    background-position: bottom center, center top, center center, center center;
  }

  .footer-widget-box.about-us p {
    max-width: 100%;
  }

  .newsletter-form .form-icon {
    max-width: 100%;
  }
}

@media (max-width: 400px) {
  .stacked-img-wrap {
    width: 85px !important;
    height: 85px !important;
  }

  .blog-stacked-card {
    padding: 0.65rem !important;
    gap: 0.65rem !important;
  }

  .tb-contact-widget {
    padding: 1rem 0.85rem !important;
  }

  .tb-contact-widget a[href^="tel:"] {
    font-size: 0.925rem !important;
  }

  .tb-contact-widget a[href^="mailto:"] {
    font-size: 0.825rem !important;
  }

  .dest-quick-info-bar {
    padding: 1.25rem 1rem !important;
  }

  .dest-info-item {
    gap: 0.5rem !important;
  }

  .dest-info-icon {
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
  }

  .dest-info-label {
    font-size: 11.5px !important;
    font-weight: 700 !important;
  }

  .dest-info-val {
    font-size: 15px !important;
    font-weight: 700 !important;
  }

  .cs-timer-box {
    min-width: 52px !important;
    max-width: 62px !important;
    padding: 0.75rem 0.25rem !important;
    border-radius: 12px !important;
  }

  .cs-num {
    font-size: 20px !important;
  }

  .cs-label {
    font-size: 8px !important;
    letter-spacing: 0.3px !important;
  }
}

/* ===== Ringchan logo: responsive sizing ===== */
.brand-logo-img, .tb-logo-img, .adv-logo-img, .footer-logo, .footer-widget-box.about-us .footer-logo img, .coming-soon-logo, .preloader-logo, .auth-logo img {
  width: auto;
  max-width: 100%;
  height: auto;
  object-fit: contain;
}
.brand-logo-img { max-height: 64px; }
.tb-logo-img { max-height: 56px; }
.adv-logo-img { max-height: 64px; height: auto; }
.footer-widget-box.about-us .footer-logo img { max-height: 90px; }
.coming-soon-logo { height: auto; max-height: 110px; }
.preloader-logo { height: auto; max-height: 52px; }
.auth-logo { height: auto; max-height: none; padding: 14px 26px; }
.auth-logo img { max-height: 84px; }

@media (max-width: 991.98px) {
  .brand-logo-img { max-height: 54px; }
  .tb-logo-img { max-height: 48px; }
  .adv-logo-img { max-height: 54px; }
  .footer-widget-box.about-us .footer-logo img { max-height: 80px; }
}
@media (max-width: 575.98px) {
  .brand-logo-img { max-height: 46px; }
  .tb-logo-img { max-height: 42px; }
  .adv-logo-img { max-height: 46px; }
  .footer-widget-box.about-us .footer-logo img { max-height: 70px; }
  .coming-soon-logo { max-height: 84px; }
  .preloader-logo { max-height: 42px; }
  .auth-logo { padding: 10px 18px; }
  .auth-logo img { max-height: 64px; }
}
@media (max-width: 359.98px) {
  .brand-logo-img, .tb-logo-img, .adv-logo-img { max-height: 40px; }
}

/* ===== Ringchan Guest House: extra responsive + image polish ===== */
html,body{max-width:100%;overflow-x:hidden}
img,video,iframe{max-width:100%}
img{height:auto;image-rendering:auto}
.brand-logo img,.preloader-logo{height:auto;max-height:70px;width:auto}
[class*="card"] img,[class*="gallery"] img,[class*="slide"] img,[class*="hero"] img{object-fit:cover}
iframe[src*="google.com/maps"]{width:100%;min-height:300px}
@media (max-width:991.98px){
  .text-shape{font-size:clamp(48px,16vw,140px)!important}
  h1{font-size:clamp(1.8rem,7vw,3rem)!important;line-height:1.15}
  h2{font-size:clamp(1.5rem,5.5vw,2.4rem)!important}
  section{padding-top:clamp(40px,8vw,80px);padding-bottom:clamp(40px,8vw,80px)}
}
@media (max-width:575.98px){
  .container{padding-left:16px;padding-right:16px}
  .btn{white-space:normal}
  table{display:block;overflow-x:auto}
}

/* ==========================================================
   HERO HEADING FIX + EXTRA RESPONSIVE SAFEGUARDS
   ========================================================== */
.tb-dest-header-card h1 {
  overflow-wrap: break-word;
  word-break: normal;
  line-height: 1.25;
  text-wrap: balance;
}

/* Underline SVG overlaps text when a long title wraps - hide on small screens */
@media (max-width: 767.98px) {
  .tb-dest-header-card h1 .heading-underline-svg {
    display: none !important;
  }
}

html, body {
  max-width: 100%;
  overflow-x: hidden;
}

img, video, svg, iframe {
  max-width: 100%;
}

img {
  height: auto;
}

.tb-dest-header-card {
  max-width: 100%;
}

@media (max-width: 575.98px) {
  .tb-dest-header-card h1 {
    font-size: clamp(22px, 7vw, 26px) !important;
  }
  .tb-flight-breadcrumb {
    flex-wrap: wrap;
  }
}

@media (min-width: 1400px) {
  .tb-dest-header-card h1 {
    font-size: 48px;
  }
}

/* Feature glass items (About page) - keep text from overflowing on small screens */
.feature-glass-item > div:last-child {
  min-width: 0;
}
.feature-glass-item h4,
.feature-glass-item p {
  overflow-wrap: break-word;
}
@media (max-width: 575.98px) {
  .feature-glass-item {
    padding: 0.85rem !important;
    gap: 0.75rem !important;
  }
  .feature-glass-icon {
    width: 46px !important;
    height: 46px !important;
    font-size: 18px !important;
  }
}

/* Tour cards (home v2): keep the Best Season + button row tidy on small screens */
.tb-package-card-v2 .card-body > .d-flex.border-top {
  flex-wrap: wrap;
  gap: 0.75rem;
}
@media (max-width: 575.98px) {
  .tb-package-card-v2 .card-body > .d-flex.border-top .btn {
    flex-shrink: 0;
  }
}

/* Hero background photo: keep the mountains in view on narrow screens */
.tb-hero-v2 .tb-hero-bg-img {
  object-position: 60% center;
}


@media (max-width: 575.98px) {
  .ref-tour-season .ref-tour-price {
    font-size: 17px;
  }
  .ref-tour-season-label {
    font-size: 10.5px;
  }
}

/* Destination sidebar: keep facts tidy on small screens */
.dest-sidebar-card .badge {
  white-space: normal;
  text-align: left;
}
@media (max-width: 575.98px) {
  .dest-sidebar-card .fs-2 {
    font-size: 1.6rem !important;
  }
}


/*=====================================================
  UNIFIED HEADER / FOOTER + EXTRA RESPONSIVE SAFETY
  (same header on every page incl. Home Tour Booking
   & Home Adventure Travel)
======================================================*/
html { -webkit-text-size-adjust: 100%; }
body { overflow-x: clip; }
img, video, svg { max-width: 100%; }
img { height: auto; }

/* Top bar: keep phone / email on one line */
.top-header-link span,
.top-header-link { white-space: nowrap; }
.top-header .col-lg-7 .top-header-link:first-child span { white-space: normal; }

/* Home Tour Booking: full-width hero so the header looks the same as other pages */
.tb-hero-v2 {
  margin: 0 !important;
  border-radius: 0 !important;
  min-height: 100vh;
}

/* Header identical on all pages */
.main-header.header-glass { top: 56px; }
@media (max-width: 991.98px) {
  .main-header.header-glass { top: 0 !important; }
  .tb-hero-v2, .adv-hero-section, .hero-section { padding-top: 120px; }
}

/* Footer safety on small screens */
.footer-area { overflow: hidden; }
.footer-area .container { max-width: 100%; }
@media (max-width: 575.98px) {
  .footer-area .row > [class*="col-"] { width: 100%; }
  .footer-area, .footer-area * { word-break: break-word; }
}

/* Tables & embeds never break layout */
.table-responsive, table { max-width: 100%; }
iframe { max-width: 100%; }

/* Contact page map: always fills its box, responsive height */
.contact-map-wrapper { position: relative; min-height: 400px; border-radius: 24px; overflow: hidden; }
.contact-map-wrapper iframe { position: absolute; inset: 0; width: 100%; height: 100%; min-height: 400px; }
@media (max-width: 991.98px) { .contact-map-wrapper, .contact-map-wrapper iframe { min-height: 360px; } }
@media (max-width: 575.98px) { .contact-map-wrapper, .contact-map-wrapper iframe { min-height: 300px; border-radius: 18px; } }

/*=====================================================
  FAQ PAGE - 6 SECTIONS (category menu + grouped accordions)
======================================================*/
.faq-side { top: 130px; }
.faq-cat-label { font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--accent); padding: 6px 12px 10px; }
.faq-cat-list { display: flex; flex-direction: column; gap: 4px; }
.faq-cat-link { display: flex; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 14px; color: var(--primary); font-weight: 600; font-size: 15px; text-decoration: none; transition: background .25s, color .25s, transform .25s; }
.faq-cat-link i { width: 34px; height: 34px; flex: 0 0 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(44,92,80,.08); color: var(--primary); font-size: 14px; transition: inherit; }
.faq-cat-link:hover, .faq-cat-link.active { background: rgba(228,60,56,.07); color: var(--accent); }
.faq-cat-link:hover i, .faq-cat-link.active i { background: var(--accent); color: #fff; }
.faq-group { margin-bottom: 3rem; scroll-margin-top: 140px; }
.faq-group:last-of-type { margin-bottom: 2rem; }
.faq-group-icon { width: 56px; height: 56px; flex: 0 0 56px; border-radius: 18px; display: flex; align-items: center; justify-content: center; background: var(--accent); color: #fff; font-size: 22px; box-shadow: 0 10px 25px rgba(228,60,56,.25); }
.faq-group-num { display: block; font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase; color: var(--accent); }
.faq-group-title { font-size: clamp(1.4rem, 3.4vw, 1.9rem); font-weight: 800; color: var(--primary); line-height: 1.2; }
.faq-group-intro { color: #6b7a76; font-size: 14.5px; }
.custom-faq-accordion .faq-btn { font-size: clamp(15px, 2.2vw, 17.5px); line-height: 1.4; }
.custom-faq-accordion .accordion-body { font-size: clamp(14.5px, 2vw, 16px); }
.custom-faq-accordion .accordion-body a { color: var(--accent); font-weight: 600; }
.faq-email { word-break: break-all; }
@media (max-width: 991.98px) {
  .faq-side { position: static !important; }
  .faq-cat-col { position: sticky; top: 92px; z-index: 50; padding-top: 4px; padding-bottom: 4px; }
  .faq-cat-nav-mob { margin-bottom: 0 !important; box-shadow: 0 6px 18px rgba(44,92,80,.12) !important; }
  .faq-cat-list { flex-direction: row; overflow-x: auto; gap: 8px; padding: 2px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .faq-cat-list::-webkit-scrollbar { display: none; }
  .faq-cat-link { flex: 0 0 auto; padding: 8px 14px 8px 8px; border: 1px solid rgba(44,92,80,.1); border-radius: 50px; font-size: 13.5px; white-space: nowrap; }
  .faq-cat-link i { width: 28px; height: 28px; flex-basis: 28px; font-size: 12px; }
  .faq-group { scroll-margin-top: 175px; margin-bottom: 2.25rem; }
}
@media (max-width: 575.98px) {
  .faq-group-icon { width: 46px; height: 46px; flex-basis: 46px; border-radius: 14px; font-size: 18px; }
  .custom-faq-accordion .faq-btn { padding: 1.1rem 1.1rem; }
  .custom-faq-accordion .accordion-body { padding: 1.1rem; }
}
/* keep sticky menus working inside the FAQ section (overflow:hidden would break them) */
.faq-page-section { overflow: clip !important; }

/* ===== Global responsive safety ===== */
html,body{max-width:100%;overflow-x:hidden}
img,video,iframe,svg{max-width:100%}
img{height:auto}
.rg-card-img,.tour-card-img{width:100%;aspect-ratio:4/3;object-fit:cover}
.hero-bg-video,.tb-destination-hero>img{object-fit:cover;width:100%}
.table-responsive,table{max-width:100%}
@media (max-width:991.98px){.hero-bg-video{min-height:100%}}
@media (max-width:575.98px){
  h1{font-size:clamp(1.6rem,7vw,2.2rem)}
  h2{font-size:clamp(1.35rem,6vw,1.8rem)}
  .container{padding-left:16px;padding-right:16px}
  .btn{white-space:normal}
}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}.hero-bg-video{display:none}}

/* =====================================================================
   UNIFORM SECTION SPACING (single source of truth)
   --section-space      : gap used inside every normal section (top & bottom)
   --section-space-hero : larger gap for the section that follows a hero
   Both are fluid, so they scale smoothly on every screen size.
   ===================================================================== */
:root {
  --section-space: clamp(28px, 1.6vw + 22px, 52px);
  --section-space-hero: clamp(56px, 4vw + 36px, 112px);
}

/* Every content section: same top & bottom space, no stray outer margins.
   Hero banners are excluded because they manage their own height. */
section:not(.hero-section):not(.tb-hero-v2):not(.tb-destination-hero):not(.adv-hero-section):not(.contact-hero-section) {
  padding-top: var(--section-space) !important;
  padding-bottom: var(--section-space) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* The section right below a hero gets extra breathing room */
:is(.hero-section, .tb-hero-v2, .tb-destination-hero, .adv-hero-section, .contact-hero-section) + section:not(.hero-section):not(.tb-hero-v2):not(.tb-destination-hero):not(.adv-hero-section):not(.contact-hero-section),
:is(.hero-section, .tb-hero-v2, .tb-destination-hero, .adv-hero-section, .contact-hero-section) + :is(div, main) > section:first-child:not(.hero-section) {
  padding-top: var(--section-space-hero) !important;
}

/* Wrapper paddings (py-3 / py-4 / py-lg-5 ...) used to stack on top of the section space
   and differed from page to page. One inner space for every page instead. */
:root { --section-inner-space: clamp(16px, 1.7vw, 24px); }
section:not(.hero-section):not(.tb-hero-v2):not(.tb-destination-hero):not(.adv-hero-section):not(.contact-hero-section) > :is(.container, .container-fluid)[class*="py-"] {
  padding-top: var(--section-inner-space) !important;
  padding-bottom: var(--section-inner-space) !important;
}

/* Avoid doubled gaps from first/last child margins inside sections */
section > .container > :first-child,
section > .container-fluid > :first-child { margin-top: 0; }
section > .container > :last-child,
section > .container-fluid > :last-child { margin-bottom: 0; }

/* =====================================================================
   STATS STRIP - floating card so it never merges with the section above
   or the footer (clear gap + distinct colour on every screen size).
   Section spacing comes from --section-space above.
   ===================================================================== */
.stats-strip { background: transparent; } /* inherits the page background */
.stats-strip .stats-card {
  background: linear-gradient(135deg, var(--primary), #1e4238);
  border-radius: clamp(16px, 2vw, 28px);
  padding: clamp(24px, 3.5vw, 52px) clamp(12px, 2.5vw, 40px);
  box-shadow: 0 14px 34px rgba(30, 66, 56, .22);
}
.stats-strip .stats-item { position: relative; }
@media (min-width: 992px) {
  .stats-strip .stats-item:not(:last-child)::after {
    content: ""; position: absolute; top: 15%; right: 0; height: 70%; width: 1px;
    background: rgba(255, 255, 255, .15);
  }
}

/* Dark pages: gap around the stats card matches the dark section above */
.stats-strip.stats-strip-dark { background: #08110f; }
.stats-strip.stats-strip-dark .stats-card { box-shadow: 0 14px 34px rgba(0, 0, 0, .45); }

/* ---------------------------------------------------------------------
   Dark stats strip - premium glass cards with icons (index-3)
   --------------------------------------------------------------------- */
.stats-strip-dark .stat-box {
  position: relative;
  height: 100%;
  min-width: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 6px;
  padding: clamp(18px, 2.6vw, 34px) clamp(10px, 1.6vw, 24px);
  border-radius: clamp(16px, 1.6vw, 22px);
  background: linear-gradient(160deg, rgba(255, 255, 255, .07), rgba(255, 255, 255, .015));
  border: 1px solid rgba(255, 255, 255, .09);
  overflow: hidden;
  transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease;
}
.stats-strip-dark .stat-box::before {
  content: "";
  position: absolute;
  top: 0; left: 50%;
  width: 44px; height: 3px;
  transform: translateX(-50%);
  border-radius: 0 0 4px 4px;
  background: var(--accent);
}
.stats-strip-dark .stat-box:hover {
  transform: translateY(-4px);
  border-color: rgba(var(--accent-rgb), .45);
  box-shadow: 0 16px 32px rgba(0, 0, 0, .45);
}
.stats-strip-dark .stat-icon {
  width: clamp(42px, 4vw, 56px);
  height: clamp(42px, 4vw, 56px);
  display: grid;
  place-items: center;
  border-radius: 50%;
  margin-bottom: 6px;
  font-size: clamp(1rem, 1.5vw, 1.3rem);
  color: var(--accent);
  background: rgba(var(--accent-rgb), .12);
  border: 1px solid rgba(var(--accent-rgb), .3);
}
.stats-strip-dark .stat-num {
  font-family: var(--font-heading);
  font-weight: 700;
  line-height: 1.1;
  color: #fff;
  font-size: clamp(1.8rem, 3.4vw, 2.9rem);
}
.stats-strip-dark .stat-num span { color: var(--accent); }
.stats-strip-dark .stat-label {
  color: rgba(255, 255, 255, .62);
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
  font-size: clamp(.7rem, .9vw, .85rem);
}
@media (prefers-reduced-motion: reduce) {
  .stats-strip-dark .stat-box { transition: none; }
  .stats-strip-dark .stat-box:hover { transform: none; }
}

/* =====================================================================
   TEAM CARDS - 3D flip on hover (details on the back)
   Desktop: hover / keyboard focus.  Touch: tap to flip, tap again to close.
   ===================================================================== */
.team-card-premium.team-flip {
  perspective: 1400px;
  overflow: visible !important;
  background: transparent;
  border: 0;
  box-shadow: none !important;
  min-height: 510px;
  outline: none;
}
.team-card-premium.team-flip:hover { transform: none; border-color: transparent; }
.team-flip .team-flip-inner {
  position: absolute;
  inset: 0;
  transform-style: preserve-3d;
  transition: transform .8s cubic-bezier(.25, 1, .5, 1);
}
.team-flip .team-face {
  position: absolute;
  inset: 0;
  overflow: hidden;
  border-radius: 1.25rem;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .1);
}
.team-flip .team-front { background-color: #e6eceb; }
.team-flip .team-back {
  transform: rotateY(180deg);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(22px, 2.6vw, 34px);
  color: #fff;
  background: linear-gradient(135deg, #0b6b59 0%, #04483a 100%);
  overflow-y: auto;
  scrollbar-width: none;
}
.team-flip .team-back::-webkit-scrollbar { display: none; }
.team-flip .team-back::before {
  content: "";
  position: absolute;
  top: -60px; right: -60px;
  width: 190px; height: 190px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, .14), transparent 70%);
  pointer-events: none;
}
.team-back-quote { font-size: 1.6rem; color: rgba(255, 255, 255, .28); margin-bottom: 14px; }
.team-back-name { margin: 0 0 4px; font-weight: 700; color: #fff; font-size: clamp(1.3rem, 1.2rem + .5vw, 1.65rem); }
.team-back-role { margin: 0 0 14px; font-weight: 600; color: rgba(255, 255, 255, .78); font-size: clamp(1rem, .95rem + .3vw, 1.15rem); }
.team-back-bio { margin: 0 0 18px; color: rgba(255, 255, 255, .92); line-height: 1.6; font-size: clamp(.86rem, .82rem + .2vw, .95rem); }
.team-back-label {
  margin: 0 0 10px;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .62);
}
.team-back-tags { display: flex; flex-wrap: wrap; gap: 8px; }
.team-back-tags span {
  padding: 6px 14px;
  border-radius: 50px;
  background: rgba(255, 255, 255, .14);
  font-size: clamp(.76rem, .72rem + .2vw, .85rem);
  font-weight: 600;
  line-height: 1.3;
}

/* Flip triggers */
@media (hover: hover) {
  html:not(.touch-mode) .team-card-premium.team-flip:hover .team-flip-inner { transform: rotateY(180deg); }
}
.team-card-premium.team-flip:focus-visible .team-flip-inner,
.team-card-premium.team-flip.is-flipped .team-flip-inner { transform: rotateY(180deg); }
.team-card-premium.team-flip:focus-visible .team-face { box-shadow: 0 0 0 3px rgba(var(--accent-rgb), .5); }

@media (max-width: 575.98px) {
  .team-card-premium.team-flip { min-height: 520px; }
}
@media (prefers-reduced-motion: reduce) {
  .team-flip .team-flip-inner { transition-duration: .01ms; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .team-card-premium.team-flip { min-height: 560px; }
}

/* =====================================================================
   HOME TRAVEL AGENCY HERO (index.php)
   Same one-screen size as the other home pages, fluid typography,
   clear type hierarchy and no overlap between text and floating badges.
   ===================================================================== */
section.hero-section {
  min-height: 100vh;
  min-height: 100svh;
  justify-content: center;
  padding-top: clamp(100px, 13vh, 170px) !important;
  padding-bottom: clamp(28px, 5vh, 60px) !important;
}
section.hero-section .hero-main-heading {
  font-size: inherit !important;
  line-height: 1.1 !important;
  letter-spacing: 0;
  margin-bottom: clamp(.9rem, 2.4vh, 1.4rem);
  text-transform: none;
}
.hero-main-heading .hero-h-top {
  display: block;
  font-size: clamp(.95rem, min(.7rem + 1.5vw, 4.4vh), 2.1rem);
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .95);
}
section.hero-section .hero-main-heading .hero-brush-highlight {
  font-size: clamp(3rem, min(1.8rem + 7vw, 14vh), 7.4rem) !important;
  line-height: 1 !important;
  margin: clamp(.15rem, 1vh, .6rem) 0 clamp(.1rem, .6vh, .4rem) !important;
  text-shadow: 0 6px 24px rgba(0, 0, 0, .35);
}
.hero-main-heading .hero-h-bottom {
  display: block;
  font-size: clamp(1.6rem, min(1rem + 3.2vw, 6.6vh), 4rem);
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
section.hero-section .hero-script-tag { margin-bottom: clamp(.9rem, 2.2vh, 1.4rem); }
section.hero-section .hero-script-text { font-size: clamp(1.05rem, .95rem + .5vw, 1.5rem) !important; }
section.hero-section .hero-desc {
  max-width: 760px;
  font-size: clamp(.92rem, .86rem + .3vw, 1.1rem) !important;
  line-height: 1.65;
  margin-bottom: clamp(.5rem, 1.5vh, 1rem);
  text-shadow: 0 2px 10px rgba(0, 0, 0, .3);
}
section.hero-section .hero-booking-bar { margin-top: clamp(1.1rem, 3.2vh, 2.2rem); }

/* Floating badges only where there is free space beside the centred text */
section.hero-section .hero-floating-badge { display: none !important; }
@media (min-width: 1500px) {
  section.hero-section .hero-floating-badge { display: flex !important; }
}
@media (max-width: 991.98px) {
  section.hero-section { padding-top: clamp(110px, 16vh, 140px) !important; }
}

/* Stronger, smoother overlay so text and the search bar stay readable on any frame of the video */
section.hero-section .hero-video-overlay {
  background:
    radial-gradient(ellipse at 50% 45%, rgba(10, 28, 23, .18) 0%, rgba(10, 28, 23, .5) 100%),
    linear-gradient(180deg, rgba(20, 44, 37, .6) 0%, rgba(44, 92, 80, .38) 45%, rgba(16, 36, 30, .78) 100%);
}
section.hero-section .hero-booking-bar .booking-sub::placeholder,
section.hero-section .hero-booking-bar .booking-sub { color: rgba(255, 255, 255, .88); }

/* Touch hint: green line + "Tap to learn more" on the front, "flip back" hint on the back */
.team-hint {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-top: 8px;
  font-size: .8rem;
  font-weight: 500;
  color: #6b7c77;
  letter-spacing: .01em;
}
.team-hint::before {
  content: "";
  width: 26px;
  height: 2px;
  border-radius: 2px;
  background: var(--primary);
  animation: teamHintPulse 2s ease-in-out infinite;
}
@keyframes teamHintPulse { 0%, 100% { width: 18px; opacity: .6; } 50% { width: 30px; opacity: 1; } }
.team-close-hint {
  display: none;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
  font-size: .74rem;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .6);
}
@media (hover: none), (pointer: coarse) {
  .team-hint, .team-close-hint { display: flex; }
  .team-card-premium.team-flip { cursor: pointer; }
}
html.touch-mode .team-hint, html.touch-mode .team-close-hint { display: flex; }
@media (prefers-reduced-motion: reduce) { .team-hint::before { animation: none; } }

/* Touch devices show an extra hint line, so give the card a little more height */
@media (hover: none), (pointer: coarse) {
  .team-card-premium.team-flip { min-height: 550px; }
}
@media (hover: none) and (min-width: 992px) and (max-width: 1199.98px),
       (pointer: coarse) and (min-width: 992px) and (max-width: 1199.98px) {
  .team-card-premium.team-flip { min-height: 610px; }
}
@media (hover: none) and (max-width: 575.98px),
       (pointer: coarse) and (max-width: 575.98px) {
  .team-card-premium.team-flip { min-height: 560px; }
}

/* =====================================================================
   HEADER / TOP BAR FIX: 992px - 1199px (tablet landscape, small laptops)
   The desktop menu is too wide here (logo squeezed to ~14px, "Contact us"
   wrapping, address wrapping to 7 lines). Use the hamburger + offcanvas
   menu up to 1199px; full desktop menu from 1200px. Same on every page.
   ===================================================================== */
@media (min-width: 992px) and (max-width: 1199.98px) {
  #mainNavbar,
  .main-header .header-actions { display: none !important; }
  .main-header .navbar-toggler { display: flex !important; margin-right: 0 !important; }
  .main-header .brand-logo-img { max-height: 60px; width: auto; }
  .top-header .col-lg-7 .top-header-link:first-child,
  .top-header .col-lg-7 .top-header-link:first-child + .top-header-divider { display: none !important; }
}

/* FOOTER small-screen polish (same footer on every page) */
.footer-contact-item .content a,
.footer-contact-item .content p { overflow-wrap: anywhere; }
@media (max-width: 575.98px) {
  .footer-contact-item .content a { font-size: clamp(12.5px, 3.7vw, 15.5px); }
  .footer-widget-box.list { margin-bottom: 1.75rem; }
}

/* =====================================================================
   MOBILE POLISH - inner page banners, About / Team / FAQ pictures
   Pictures keep a natural shape on every screen (no stretched / tall crops)
   ===================================================================== */
.tb-destination-hero > .tb-dest-hero-bg { object-position: 50% 45%; }
@keyframes kenBurnsSoft { from { transform: scale(1); } to { transform: scale(1.06); } }

@media (max-width: 991.98px) {
  /* banner photo stays visible: lighter overlay, still readable white text */
  .tb-dest-hero-overlay {
    background: linear-gradient(180deg, rgba(20, 44, 37, .62) 0%, rgba(20, 44, 37, .42) 45%, rgba(20, 44, 37, .72) 100%) !important;
  }
  .tb-dest-hero-bg { animation: kenBurnsSoft 25s ease-out infinite alternate !important; }
}

/* About Us - mission photo: fixed pixel height made it a tall strip on phones */
@media (max-width: 991.98px) {
  .our-mission-img { height: auto !important; aspect-ratio: 4 / 3; width: 100%; object-fit: cover; }
}
@media (max-width: 575.98px) {
  .our-mission-img { aspect-ratio: 5 / 4; }
}

/* Team cards (About Us + Our Team): compact portrait size instead of a very tall card */
.team-img-premium { object-position: 50% 15%; }
@media (max-width: 767.98px) {
  .team-card-premium.team-flip,
  .team-card-premium.team-flip:hover {
    min-height: 420px !important;
    height: auto;
    aspect-ratio: 1 / 1.12;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
  }
  .team-flip .team-back { padding: 18px 18px 20px; }
  .team-back-quote { margin-bottom: 8px; font-size: 1.3rem; }
  .team-back-role { margin-bottom: 10px; }
  .team-back-bio { margin-bottom: 10px; line-height: 1.5; font-size: .84rem; }
  .team-back-label { margin-bottom: 8px; }
  .team-back-tags { gap: 6px; }
  .team-back-tags span { padding: 5px 11px; font-size: .74rem; }
}
@media (max-width: 380px) {
  .team-card-premium.team-flip,
  .team-card-premium.team-flip:hover { min-height: 440px !important; }
}
@media (max-width: 991.98px) {
  .tb-dest-header-card p { color: rgba(255, 255, 255, .92) !important; }
}
