/* ═══════════════════════════════════════════════════════════════════════════
   NEARTRIPS THEME — main.css
   NEARTRIPS | Travel discovery + WooCommerce
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── 1. Design Tokens ───────────────────────────────────────────────────── */
:root {
  /* Palette */
  --mdt-dark:        #141414;
  --mdt-dark-2:      #181818;
  --mdt-dark-3:      #242424;
  --mdt-orange:      #E50914;
  --mdt-orange-h:    #B20710;  /* hover */
  --mdt-gold:       #E50914;
  --mdt-gold-light: #F5F5F5;
  --mdt-cream:       #181818;
  --mdt-cream-2:     #222222;
  --mdt-white:       #FFFFFF;
  --mdt-gray-1:      #A3A3A3;
  --mdt-gray-2:      #737373;
  --mdt-border:      #2F2F2F;
  --mdt-border-dark: #2F2F2F;

  /* Typography */
  --font-display: 'DM Sans', system-ui, sans-serif;
  --font-body:    'DM Sans', system-ui, sans-serif;
  --font-ui:      'Jost', system-ui, sans-serif;

  /* Scale */
  --text-xs:   0.75rem;   /* 12px */
  --text-sm:   0.875rem;  /* 14px */
  --text-base: 1rem;      /* 16px */
  --text-lg:   1.125rem;  /* 18px */
  --text-xl:   1.25rem;   /* 20px */
  --text-2xl:  1.5rem;    /* 24px */
  --text-3xl:  1.875rem;  /* 30px */
  --text-4xl:  2.25rem;   /* 36px */
  --text-5xl:  3rem;      /* 48px */
  --text-6xl:  3.75rem;   /* 60px */
  --text-7xl:  4.5rem;    /* 72px */

  /* Spacing */
  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;

  /* Radius / Shadow */
  --radius-sm:  4px;
  --radius-md:  8px;
  --radius-lg:  16px;
  --radius-xl:  24px;
  --radius-full: 9999px;

  --shadow-sm:  0 1px 3px rgba(18,11,4,.12);
  --shadow-md:  0 4px 16px rgba(18,11,4,.18);
  --shadow-lg:  0 8px 32px rgba(18,11,4,.22);
  --shadow-xl:  0 16px 48px rgba(18,11,4,.28);

  /* Transitions */
  --ease: cubic-bezier(.4,0,.2,1);
  --dur:  220ms;

  /* Layout */
  --container-max: 1200px;
  --container-pad: clamp(1rem, 4vw, 2rem);
  --header-h:      72px;
}

/* ── 2. Reset & Base ─────────────────────────────────────────────────────── */
*,
*::before,
*::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body {
  font-family: var(--font-body);
  font-size:   var(--text-base);
  line-height: 1.65;
  color:       var(--mdt-white);
  background:  var(--mdt-dark);
  overflow-x:  hidden;
}

img, video, svg { display: block; max-width: 100%; }
img { height: auto; }

a { color: var(--mdt-white); text-decoration: none; transition: color var(--dur) var(--ease); }
a:hover { color: var(--mdt-orange-h); }

ul, ol { list-style: none; }

button { cursor: pointer; font-family: inherit; border: none; background: none; }

::selection { background: var(--mdt-orange); color: var(--mdt-white); }

/* Focus ring */
:focus-visible { outline: 2px solid var(--mdt-orange); outline-offset: 3px; }

/* Screen reader only */
.screen-reader-text {
  position: absolute; width: 1px; height: 1px;
  padding: 0; overflow: hidden; clip: rect(0,0,0,0);
  white-space: nowrap; border: 0;
}

/* ── 3. Layout Utilities ─────────────────────────────────────────────────── */
.container {
  max-width: var(--container-max);
  margin-inline: auto;
  padding-inline: var(--container-pad);
}

/* ── 4. Buttons ──────────────────────────────────────────────────────────── */
.mdt-btn {
  display:          inline-flex;
  align-items:      center;
  justify-content:  center;
  gap:              var(--space-2);
  font-family:      var(--font-ui);
  font-size:        var(--text-sm);
  font-weight:      700;
  letter-spacing:   .06em;
  text-transform:   uppercase;
  padding:          .7em 1.6em;
  border-radius:    var(--radius-sm);
  border:           2px solid transparent;
  transition:       background var(--dur) var(--ease),
                    color       var(--dur) var(--ease),
                    border-color var(--dur) var(--ease),
                    box-shadow  var(--dur) var(--ease),
                    transform   var(--dur) var(--ease);
  white-space:      nowrap;
}
.mdt-btn:hover { transform: translateY(-1px); box-shadow: var(--shadow-md); }
.mdt-btn:active { transform: translateY(0); }

.mdt-btn--orange { background: var(--mdt-orange); color: var(--mdt-white); border-color: var(--mdt-orange); }
.mdt-btn--orange:hover { background: var(--mdt-orange-h); border-color: var(--mdt-orange-h); color: var(--mdt-white); }

.mdt-btn--ghost  { background: transparent; color: var(--mdt-white); border-color: rgba(255,255,255,.6); }
.mdt-btn--ghost:hover { background: rgba(255,255,255,.12); border-color: var(--mdt-white); color: var(--mdt-white); }

.mdt-btn--outline { background: transparent; color: var(--mdt-white); border-color: rgba(255,255,255,.45); }
.mdt-btn--outline:hover { background: var(--mdt-white); color: var(--mdt-dark); }

.mdt-btn--outline-light { background: transparent; color: var(--mdt-white); border-color: var(--mdt-white); }
.mdt-btn--outline-light:hover { background: var(--mdt-white); color: var(--mdt-dark); }

.mdt-btn--whatsapp { background: #25D366; color: var(--mdt-white); border-color: #25D366; }
.mdt-btn--whatsapp:hover { background: #1ebe5a; border-color: #1ebe5a; color: var(--mdt-white); }

.mdt-btn--lg  { font-size: var(--text-base); padding: .85em 2em; }
.mdt-btn--sm  { font-size: var(--text-xs);   padding: .5em 1.2em; }
.mdt-btn--block { width: 100%; }

.mdt-btn__icon { width: 18px; height: 18px; flex-shrink: 0; }

/* ── 5. Header ──────────────────────────────────────────────────────────── */
.mdt-header {
  position:   fixed;
  top:        0;
  left:       0;
  right:      0;
  z-index:    1000;
  height:     var(--header-h);
  background: var(--mdt-dark);
  box-shadow: 0 1px 0 rgba(255,255,255,.08);
  transition: background var(--dur) var(--ease),
              box-shadow  var(--dur) var(--ease);
}

.mdt-header--transparent {
  background: var(--mdt-dark);
  box-shadow: 0 1px 0 rgba(255,255,255,.08);
}

.mdt-header--scrolled {
  background: var(--mdt-dark) !important;
  box-shadow: 0 2px 16px rgba(0,0,0,.5) !important;
}

.mdt-header__inner {
  display:         flex;
  align-items:     center;
  gap:             var(--space-6);
  height:          100%;
}

/* Logo */
.mdt-header__logo { flex-shrink: 0; }
.mdt-header__logo-link,
.mdt-header__logo .custom-logo-link {
  display:     flex;
  align-items: center;
  gap:         var(--space-3);
  text-decoration: none;
}
.mdt-logo-mark { flex-shrink: 0; width: 66px; height: 34px; object-fit: contain; }
.mdt-header__logo-text {
  display:        flex;
  flex-direction: column;
  line-height:    1.15;
}
.mdt-header__logo-name {
  font-family:  var(--font-display);
  font-size:    1.2rem;
  font-weight:  600;
  color:        var(--mdt-white);
  white-space:  nowrap;
}
.mdt-header__logo-tagline {
  font-family:    var(--font-ui);
  font-size:      9px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color:          var(--mdt-gray-1);
  white-space:    nowrap;
}

/* Nav */
.mdt-nav { flex: 1; display: flex; justify-content: center; }

.mdt-nav__menu {
  display:     flex;
  align-items: center;
  gap:         var(--space-1);
  list-style:  none;
}

.mdt-nav__menu > li { position: relative; }

.mdt-nav__menu > li > a {
  display:        flex;
  align-items:    center;
  gap:            4px;
  font-family:    var(--font-ui);
  font-size:      var(--text-sm);
  font-weight:    500;
  letter-spacing: .04em;
  text-transform: uppercase;
  color:          rgba(255,255,255,.86);
  padding:        .5em .75em;
  border-radius:  var(--radius-sm);
  transition:     color var(--dur) var(--ease), background var(--dur) var(--ease);
}
.mdt-nav__menu > li > a:hover,
.mdt-nav__menu > li.current-menu-item > a,
.mdt-nav__menu > li.current-menu-ancestor > a {
  color:      var(--mdt-white);
  background: rgba(255,255,255,.08);
}

/* Chevron */
.mdt-nav__chevron { flex-shrink: 0; transition: transform var(--dur) var(--ease); }
.mdt-nav__menu > li:hover .mdt-nav__chevron { transform: rotate(180deg); }

/* Dropdown */
.mdt-nav__dropdown {
  position:   absolute;
  top:        calc(100% + 8px);
  left:       0;
  min-width:  220px;
  background: var(--mdt-dark-2);
  border:     1px solid var(--mdt-border-dark);
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-xl);
  padding:    var(--space-2) 0;
  list-style: none;

  /* Hidden by default */
  opacity:    0;
  visibility: hidden;
  transform:  translateY(-8px);
  transition: opacity var(--dur) var(--ease),
              transform var(--dur) var(--ease),
              visibility var(--dur) var(--ease);
}
.mdt-nav__menu > li:hover > .mdt-nav__dropdown,
.mdt-nav__menu > li:focus-within > .mdt-nav__dropdown {
  opacity:    1;
  visibility: visible;
  transform:  translateY(0);
}
.mdt-nav__dropdown li a {
  display:     block;
  padding:     .55em 1.25em;
  font-family: var(--font-ui);
  font-size:   var(--text-sm);
  color:       rgba(255,255,255,.8);
  transition:  color var(--dur) var(--ease), background var(--dur) var(--ease);
}
.mdt-nav__dropdown li a:hover { color: var(--mdt-gold); background: rgba(255,255,255,.05); }

/* Header actions */
.mdt-header__actions { display: flex; align-items: center; gap: var(--space-3); flex-shrink: 0; }

.mdt-lang-toggle {
  display:     flex;
  align-items: center;
  gap:         4px;
  font-family: var(--font-ui);
  font-size:   var(--text-xs);
  font-weight: 600;
  color:       rgba(255,255,255,.75);
  padding:     .4em .7em;
  border:      1px solid rgba(255,255,255,.22);
  border-radius: var(--radius-sm);
  transition:  all var(--dur) var(--ease);
}
.mdt-lang-toggle:hover { border-color: rgba(255,255,255,.6); color: var(--mdt-white); }

/* Hamburger */
.mdt-hamburger {
  display:        none;
  flex-direction: column;
  gap:            5px;
  padding:        var(--space-2);
  margin-left:    auto;
}
.mdt-hamburger span {
  display:    block;
  width:      22px;
  height:     2px;
  background: var(--mdt-white);
  border-radius: 1px;
  transition: all var(--dur) var(--ease);
}
.mdt-hamburger.is-active span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mdt-hamburger.is-active span:nth-child(2) { opacity: 0; transform: scaleX(0); }
.mdt-hamburger.is-active span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.mdt-mobile-overlay {
  display:    none;
  position:   fixed;
  inset:      0;
  background: rgba(18,11,4,.65);
  z-index:    999;
}

/* ── 6. Hero ─────────────────────────────────────────────────────────────── */
.mdt-hero {
  position:   relative;
  display:    flex;
  align-items: center;
  min-height: 100svh;
  padding-top: 0;
  overflow:   hidden;
  color:      var(--mdt-white);
}

.mdt-hero__bg {
  position: absolute;
  inset:    0;
  z-index:  0;
}
.mdt-hero__image,
.mdt-hero__video {
  width:      100%;
  height:     100%;
  object-fit: cover;
}
.mdt-hero__overlay {
  position:   absolute;
  inset:      0;
  background: linear-gradient(90deg, rgba(20,20,20,.94) 0%, rgba(20,20,20,.58) 52%, rgba(20,20,20,.24) 100%);
}

.mdt-hero__content {
  position:   relative;
  z-index:    1;
  padding-block: var(--space-20);
  max-width:  760px;
}

.mdt-hero__badge {
  display:     inline-flex;
  align-items: center;
  gap:         var(--space-2);
  font-family: var(--font-ui);
  font-size:   var(--text-xs);
  font-weight: 700;
  letter-spacing: .08em;
  color:       var(--mdt-white);
  background:  rgba(255,255,255,.08);
  border:      1px solid rgba(255,255,255,.3);
  padding:     .45em 1em;
  border-radius: var(--radius-full);
  margin-bottom: var(--space-6);
}
.mdt-hero__badge-star { font-size: 1.1em; }

.mdt-hero__eyebrow {
  font-family:    var(--font-ui);
  font-size:      var(--text-xs);
  font-weight:    600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color:          var(--mdt-gold);
  margin-bottom:  var(--space-4);
  line-height:    1.4;
}

.mdt-hero__title {
  font-family:    var(--font-display);
  font-size:      clamp(3.25rem, 6vw, 5.2rem);
  font-weight:    700;
  line-height:    1.1;
  margin-bottom:  var(--space-6);
  display:        flex;
  flex-direction: column;
}
.mdt-hero__title-line1 { color: var(--mdt-white); }
.mdt-hero__title-line2 {
  color:       var(--mdt-gold);
  font-style:  italic;
  font-weight: 400;
}

.mdt-hero__sub {
  font-size:   var(--text-lg);
  color:       rgba(255,255,255,.85);
  margin-bottom: var(--space-8);
  max-width:   520px;
  line-height: 1.6;
}

.mdt-hero__ctas {
  display:   flex;
  flex-wrap: wrap;
  gap:       var(--space-4);
}

.mdt-hero__scroll-hint {
  position:   absolute;
  bottom:     var(--space-8);
  left:       50%;
  transform:  translateX(-50%);
  display:    flex;
  flex-direction: column;
  align-items: center;
  gap:        var(--space-1);
  font-family: var(--font-ui);
  font-size:  9px;
  letter-spacing: .15em;
  color:      rgba(255,255,255,.55);
  animation:  mdt-bounce 2.4s ease-in-out infinite;
}
@keyframes mdt-bounce {
  0%,100% { transform: translateX(-50%) translateY(0); }
  50%      { transform: translateX(-50%) translateY(6px); }
}

/* ── 7. Trust Bar ───────────────────────────────────────────────────────── */
.mdt-trust-bar {
  background: var(--mdt-dark-2);
  border-top:    1px solid var(--mdt-border-dark);
  border-bottom: 1px solid var(--mdt-border-dark);
  padding-block: var(--space-4);
}
.mdt-trust-bar__inner {
  display:         flex;
  flex-wrap:       wrap;
  align-items:     center;
  justify-content: center;
  gap:             clamp(1rem, 4vw, 3rem);
}
.mdt-trust-bar__item {
  display:     flex;
  align-items: center;
  gap:         var(--space-2);
  font-family: var(--font-ui);
  font-size:   var(--text-sm);
  font-weight: 600;
  color:       rgba(255,255,255,.8);
}
.mdt-trust-bar__icon { width: 16px; height: 16px; color: var(--mdt-gold); flex-shrink: 0; }
.mdt-trust-bar__item--rating { gap: var(--space-3); }

/* ── 8. Sections ────────────────────────────────────────────────────────── */
.mdt-section { padding-block: var(--space-20); }

.mdt-section--dark {
  background: var(--mdt-dark);
  color:      var(--mdt-white);
}

.mdt-section__header {
  text-align:    center;
  max-width:     640px;
  margin-inline: auto;
  margin-bottom: var(--space-12);
}
.mdt-section__header--light .mdt-section__eyebrow { color: var(--mdt-gold); }
.mdt-section__header--light .mdt-section__title   { color: var(--mdt-white); }
.mdt-section__header--light .mdt-section__sub     { color: rgba(255,255,255,.7); }

.mdt-section__eyebrow {
  font-family:    var(--font-ui);
  font-size:      var(--text-xs);
  font-weight:    700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color:          var(--mdt-orange);
  margin-bottom:  var(--space-3);
}
.mdt-section__title {
  font-family: var(--font-display);
  font-size:   clamp(1.8rem, 3.5vw, 2.8rem);
  font-weight: 700;
  line-height: 1.18;
  color:       var(--mdt-dark);
  margin-bottom: var(--space-4);
}
.mdt-section__sub {
  font-size:  var(--text-base);
  color:      var(--mdt-gray-1);
  line-height: 1.7;
}
.mdt-section__cta-wrap { text-align: center; margin-top: var(--space-12); }

/* ── 9. Tour Cards ──────────────────────────────────────────────────────── */
.mdt-filter-bar {
  display:         flex;
  flex-wrap:       wrap;
  gap:             var(--space-2);
  justify-content: center;
  margin-bottom:   var(--space-10);
}
.mdt-filter-btn {
  font-family:    var(--font-ui);
  font-size:      var(--text-xs);
  font-weight:    700;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding:        .5em 1.2em;
  border-radius:  var(--radius-full);
  border:         2px solid var(--mdt-border);
  color:          var(--mdt-gray-1);
  background:     var(--mdt-white);
  transition:     all var(--dur) var(--ease);
}
.mdt-filter-btn:hover,
.mdt-filter-btn--active {
  background:   var(--mdt-orange);
  border-color: var(--mdt-orange);
  color:        var(--mdt-white);
}

.mdt-tour-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr));
  gap:                   var(--space-6);
}

.mdt-tour-card {
  background:    var(--mdt-white);
  border-radius: var(--radius-lg);
  overflow:      hidden;
  box-shadow:    var(--shadow-sm);
  border:        1px solid var(--mdt-border);
  display:       flex;
  flex-direction: column;
  transition:    box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.mdt-tour-card:hover { box-shadow: var(--shadow-xl); transform: translateY(-4px); }

.mdt-tour-card__thumb-wrap {
  position:  relative;
  overflow:  hidden;
  aspect-ratio: 3/2;
  display:   block;
}
.mdt-tour-card__thumb {
  width:      100%;
  height:     100%;
  object-fit: cover;
  transition: transform 400ms var(--ease);
}
.mdt-tour-card:hover .mdt-tour-card__thumb { transform: scale(1.04); }
.mdt-tour-card__thumb--placeholder { background: var(--mdt-cream-2); }

.mdt-tour-card__badge {
  position:     absolute;
  top:          var(--space-3);
  left:         var(--space-3);
  font-family:  var(--font-ui);
  font-size:    10px;
  font-weight:  700;
  letter-spacing: .1em;
  text-transform: uppercase;
  background:   var(--mdt-orange);
  color:        var(--mdt-white);
  padding:      .3em .75em;
  border-radius: var(--radius-full);
}
.mdt-tour-card__difficulty {
  position:     absolute;
  top:          var(--space-3);
  right:        var(--space-3);
  font-family:  var(--font-ui);
  font-size:    10px;
  font-weight:  700;
  letter-spacing: .08em;
  text-transform: uppercase;
  padding:      .3em .75em;
  border-radius: var(--radius-full);
  background:   rgba(18,11,4,.55);
  color:        var(--mdt-white);
  backdrop-filter: blur(4px);
}

.mdt-tour-card__body {
  padding:        var(--space-6);
  display:        flex;
  flex-direction: column;
  flex:           1;
  gap:            var(--space-3);
}
.mdt-tour-card__meta-row { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.mdt-tour-card__pill {
  display:     inline-flex;
  align-items: center;
  gap:         4px;
  font-family: var(--font-ui);
  font-size:   10px;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding:     .3em .7em;
  border-radius: var(--radius-full);
  background:  var(--mdt-cream);
  color:       var(--mdt-dark-3);
  border:      1px solid var(--mdt-border);
}
.mdt-tour-card__pill svg { width: 10px; height: 10px; flex-shrink: 0; }
.mdt-tour-card__pill--duration { background: rgba(200,105,42,.1); color: var(--mdt-orange); border-color: rgba(200,105,42,.2); }

.mdt-tour-card__title {
  font-family:  var(--font-display);
  font-size:    var(--text-xl);
  font-weight:  700;
  line-height:  1.25;
}
.mdt-tour-card__title a { color: var(--mdt-dark); }
.mdt-tour-card__title a:hover { color: var(--mdt-orange); }

.mdt-tour-card__excerpt {
  font-size:   var(--text-sm);
  color:       var(--mdt-gray-1);
  line-height: 1.6;
  flex:        1;
}

.mdt-tour-card__footer {
  display:         flex;
  align-items:     center;
  justify-content: space-between;
  flex-wrap:       wrap;
  gap:             var(--space-2);
  padding-top:     var(--space-3);
  border-top:      1px solid var(--mdt-border);
}

/* Stars */
.mdt-stars { display: inline-flex; gap: 2px; color: var(--mdt-gold); }
.mdt-stars .star { width: 14px; height: 14px; }

.mdt-tour-card__rating {
  display:     flex;
  align-items: center;
  gap:         var(--space-1);
}
.mdt-tour-card__rating-num  { font-weight: 700; font-size: var(--text-sm); }
.mdt-tour-card__rating-count { font-size: var(--text-xs); color: var(--mdt-gray-2); }

.mdt-tour-card__price { text-align: right; line-height: 1.2; }
.mdt-tour-card__price-label { font-size: var(--text-xs); color: var(--mdt-gray-2); display: block; }
.mdt-tour-card__price-val   { font-family: var(--font-display); font-size: var(--text-xl); font-weight: 700; color: var(--mdt-dark); }
.mdt-tour-card__price-old   { font-size: var(--text-xs); color: var(--mdt-gray-2); text-decoration: line-through; }

.mdt-tour-card__cta { margin-top: var(--space-2); }

.mdt-empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-4);
  padding: var(--space-12);
  border: 1px dashed var(--mdt-border);
  border-radius: var(--radius-lg);
  background: var(--mdt-cream);
  color: var(--mdt-gray-1);
  text-align: center;
}

/* ── 10. Why grid ───────────────────────────────────────────────────────── */
.mdt-why-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr));
  gap:                   var(--space-6);
}
.mdt-why-card {
  background:    rgba(255,255,255,.04);
  border:        1px solid rgba(255,255,255,.08);
  border-radius: var(--radius-lg);
  padding:       var(--space-8);
  transition:    background var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.mdt-why-card:hover { background: rgba(255,255,255,.07); border-color: rgba(201,160,64,.3); }
.mdt-why-card__icon { color: var(--mdt-gold); margin-bottom: var(--space-4); }
.mdt-why-card__icon svg { width: 36px; height: 36px; }
.mdt-why-card__title {
  font-family:  var(--font-display);
  font-size:    var(--text-xl);
  font-weight:  700;
  color:        var(--mdt-white);
  margin-bottom: var(--space-3);
}
.mdt-why-card__text { font-size: var(--text-sm); color: rgba(255,255,255,.65); line-height: 1.7; }

/* ── 11. Stats bar ──────────────────────────────────────────────────────── */
.mdt-stats-bar {
  background: var(--mdt-orange);
  padding-block: var(--space-12);
}
.mdt-stats-bar__inner {
  display:         flex;
  flex-wrap:       wrap;
  align-items:     center;
  justify-content: space-around;
  gap:             var(--space-8);
}
.mdt-stats-bar__item { text-align: center; color: var(--mdt-white); }
.mdt-stats-bar__val {
  display:     block;
  font-family: var(--font-display);
  font-size:   clamp(2rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1;
  margin-bottom: var(--space-1);
}
.mdt-stats-bar__label {
  font-family:    var(--font-ui);
  font-size:      var(--text-xs);
  letter-spacing: .1em;
  text-transform: uppercase;
  opacity:        .85;
}

/* ── 12. Testimonials ───────────────────────────────────────────────────── */
.mdt-testimonials-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
  gap:                   var(--space-6);
}
.mdt-review-card {
  background:    var(--mdt-white);
  border:        1px solid var(--mdt-border);
  border-radius: var(--radius-lg);
  padding:       var(--space-8);
  box-shadow:    var(--shadow-sm);
  display:       flex;
  flex-direction: column;
  gap:           var(--space-4);
  transition:    box-shadow var(--dur) var(--ease);
}
.mdt-review-card:hover { box-shadow: var(--shadow-lg); }
.mdt-review-card__stars .mdt-stars .star { width: 16px; height: 16px; }
.mdt-review-card__quote {
  font-family: var(--font-display);
  font-size:   var(--text-lg);
  font-style:  italic;
  line-height: 1.55;
  color:       var(--mdt-dark-3);
  flex:        1;
}
.mdt-review-card__footer { display: flex; align-items: center; gap: var(--space-3); margin-top: auto; }
.mdt-review-card__flag { font-size: 1.4rem; }
.mdt-review-card__name { display: block; font-weight: 700; font-size: var(--text-sm); color: var(--mdt-dark); }
.mdt-review-card__country { font-size: var(--text-xs); color: var(--mdt-gray-2); }

/* ── 13. Blog cards ─────────────────────────────────────────────────────── */
.mdt-blog-grid {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
  gap:                   var(--space-6);
}
.mdt-post-card {
  background:    var(--mdt-white);
  border-radius: var(--radius-lg);
  overflow:      hidden;
  border:        1px solid var(--mdt-border);
  box-shadow:    var(--shadow-sm);
  display:       flex;
  flex-direction: column;
  transition:    box-shadow var(--dur) var(--ease), transform var(--dur) var(--ease);
}
.mdt-post-card:hover { box-shadow: var(--shadow-xl); transform: translateY(-3px); }
.mdt-post-card__thumb-wrap { overflow: hidden; aspect-ratio: 16/10; display: block; }
.mdt-post-card__thumb { width: 100%; height: 100%; object-fit: cover; transition: transform 400ms; }
.mdt-post-card:hover .mdt-post-card__thumb { transform: scale(1.04); }
.mdt-post-card__body { padding: var(--space-6); display: flex; flex-direction: column; flex: 1; gap: var(--space-3); }
.mdt-post-card__meta {
  display:     flex;
  flex-wrap:   wrap;
  gap:         var(--space-2);
  font-size:   var(--text-xs);
  color:       var(--mdt-gray-2);
  font-family: var(--font-ui);
}
.mdt-post-card__title {
  font-family:  var(--font-display);
  font-size:    var(--text-xl);
  font-weight:  700;
  line-height:  1.25;
}
.mdt-post-card__title a { color: var(--mdt-dark); }
.mdt-post-card__title a:hover { color: var(--mdt-orange); }
.mdt-post-card__excerpt { font-size: var(--text-sm); color: var(--mdt-gray-1); flex: 1; }

/* ── 14. CTA Banner ─────────────────────────────────────────────────────── */
.mdt-cta-banner {
  position:   relative;
  overflow:   hidden;
  min-height: 400px;
  display:    flex;
  align-items: center;
  color:      var(--mdt-white);
}
.mdt-cta-banner__bg { position: absolute; inset: 0; }
.mdt-cta-banner__bg img { width: 100%; height: 100%; object-fit: cover; }
.mdt-cta-banner__overlay { position: absolute; inset: 0; background: rgba(18,11,4,.7); }
.mdt-cta-banner__content {
  position:   relative;
  z-index:    1;
  text-align: center;
  padding-block: var(--space-20);
}
.mdt-cta-banner__title {
  font-family: var(--font-display);
  font-size:   clamp(1.8rem, 4vw, 3rem);
  font-weight: 700;
  margin-bottom: var(--space-4);
}
.mdt-cta-banner__sub {
  font-size:    var(--text-lg);
  opacity:      .85;
  margin-bottom: var(--space-8);
}
.mdt-cta-banner__btns { display: flex; justify-content: center; flex-wrap: wrap; gap: var(--space-4); }

/* ── 15. Inner Hero (non-homepage) ─────────────────────────────────────── */
.mdt-inner-hero {
  padding-top:   calc(var(--header-h) + var(--space-12));
  padding-bottom: var(--space-16);
  background:    var(--mdt-dark) no-repeat center/cover;
  color:         var(--mdt-white);
}
.mdt-inner-hero__content { max-width: 760px; }

.mdt-inner-hero__title {
  font-family: var(--font-display);
  font-size:   clamp(2rem, 5vw, 3.5rem);
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: var(--space-4);
}
.mdt-inner-hero__sub {
  font-size: var(--text-lg);
  color:     rgba(255,255,255,.8);
  max-width: 600px;
}
.mdt-inner-hero__meta,
.mdt-inner-hero__cats {
  font-size:   var(--text-sm);
  color:       rgba(255,255,255,.65);
  margin-bottom: var(--space-3);
  display:     flex;
  flex-wrap:   wrap;
  gap:         var(--space-2);
  align-items: center;
}
.mdt-inner-hero__stats {
  display:     flex;
  flex-wrap:   wrap;
  gap:         var(--space-4);
  margin-top:  var(--space-6);
  font-size:   var(--text-sm);
  color:       rgba(255,255,255,.8);
  align-items: center;
}
.mdt-inner-hero__stats strong { color: var(--mdt-gold); font-size: var(--text-lg); }

/* ── 16. Breadcrumb ─────────────────────────────────────────────────────── */
.mdt-breadcrumb { margin-bottom: var(--space-4); }
.mdt-breadcrumb ul { display: flex; flex-wrap: wrap; gap: var(--space-1); align-items: center; }
.mdt-breadcrumb li {
  font-family: var(--font-ui);
  font-size:   var(--text-xs);
  color:       rgba(255,255,255,.55);
}
.mdt-breadcrumb li:not(:last-child)::after { content: '›'; margin-left: var(--space-1); }
.mdt-breadcrumb a { color: rgba(255,255,255,.75); }
.mdt-breadcrumb a:hover { color: var(--mdt-gold); }

/* ── 17. Tour archive layout ────────────────────────────────────────────── */
.mdt-archive-tours__body {
  display:               grid;
  grid-template-columns: 260px 1fr;
  gap:                   var(--space-8);
  padding-block:         var(--space-16);
  align-items:           start;
}
.mdt-archive-tours__count {
  font-family:  var(--font-ui);
  font-size:    var(--text-sm);
  color:        var(--mdt-gray-1);
  margin-bottom: var(--space-6);
}

/* Filter sidebar */
.mdt-filter-box {
  background:    var(--mdt-cream);
  border:        1px solid var(--mdt-border);
  border-radius: var(--radius-lg);
  padding:       var(--space-6);
  position:      sticky;
  top:           calc(var(--header-h) + var(--space-4));
}
.mdt-filter-box__title {
  font-family:  var(--font-display);
  font-size:    var(--text-xl);
  font-weight:  700;
  margin-bottom: var(--space-6);
  padding-bottom: var(--space-4);
  border-bottom: 1px solid var(--mdt-border);
}
.mdt-filter-box__group { margin-bottom: var(--space-6); }
.mdt-filter-box__group h4 {
  font-family:    var(--font-ui);
  font-size:      var(--text-xs);
  font-weight:    700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color:          var(--mdt-gray-1);
  margin-bottom:  var(--space-3);
}
.mdt-filter-box__list { display: flex; flex-direction: column; gap: var(--space-2); }
.mdt-filter-box__list label {
  display:     flex;
  align-items: center;
  gap:         var(--space-2);
  font-size:   var(--text-sm);
  cursor:      pointer;
}
.mdt-filter-box__count { font-size: var(--text-xs); color: var(--mdt-gray-2); margin-left: auto; }
.mdt-filter-radio { accent-color: var(--mdt-orange); width: 15px; height: 15px; }

/* ── 18. Single Tour ────────────────────────────────────────────────────── */
.mdt-tour-hero {
  min-height:    420px;
  padding-top:   calc(var(--header-h) + var(--space-16));
  padding-bottom: var(--space-16);
  background:    var(--mdt-dark) no-repeat center/cover;
  color:         var(--mdt-white);
  display:       flex;
  align-items:   flex-end;
}
.mdt-tour-hero__content { max-width: 760px; }
.mdt-tour-hero__badge {
  display:     inline-block;
  font-family: var(--font-ui);
  font-size:   10px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  background:  var(--mdt-orange);
  padding:     .3em .8em;
  border-radius: var(--radius-full);
  margin-bottom: var(--space-3);
}
.mdt-tour-hero__title {
  font-family: var(--font-display);
  font-size:   clamp(1.8rem, 4vw, 3rem);
  font-weight: 700;
  line-height: 1.15;
  margin-bottom: var(--space-4);
}
.mdt-tour-hero__meta {
  display:     flex;
  flex-wrap:   wrap;
  gap:         var(--space-2);
  align-items: center;
  font-size:   var(--text-sm);
  color:       rgba(255,255,255,.8);
  margin-bottom: var(--space-4);
}
.mdt-tour-hero__price {
  display:     flex;
  align-items: baseline;
  gap:         var(--space-2);
  font-family: var(--font-display);
}
.mdt-tour-hero__price strong { font-size: var(--text-3xl); font-weight: 700; color: var(--mdt-gold); }
.mdt-tour-hero__price del    { font-size: var(--text-base); color: rgba(255,255,255,.5); }
.mdt-tour-hero__price span   { font-size: var(--text-sm); color: rgba(255,255,255,.65); }

.mdt-single-tour__layout {
  display:               grid;
  grid-template-columns: 1fr 360px;
  gap:                   var(--space-10);
  padding-block:         var(--space-16);
  align-items:           start;
}
.mdt-single-tour__sidebar-sticky { position: sticky; top: calc(var(--header-h) + var(--space-4)); }
.mdt-single-tour__sidebar-widgets { margin-top: var(--space-4); }

/* Quick facts */
.mdt-quick-facts {
  display:               grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap:                   1px;
  background:            var(--mdt-border);
  border:                1px solid var(--mdt-border);
  border-radius:         var(--radius-lg);
  overflow:              hidden;
  margin-bottom:         var(--space-8);
}
.mdt-quick-facts__item {
  background:     var(--mdt-cream);
  padding:        var(--space-5) var(--space-4);
  display:        flex;
  flex-direction: column;
  align-items:    center;
  text-align:     center;
  gap:            var(--space-2);
}
.mdt-quick-facts__icon { color: var(--mdt-orange); }
.mdt-quick-facts__icon svg { width: 22px; height: 22px; }
.mdt-quick-facts__label { font-family: var(--font-ui); font-size: var(--text-xs); color: var(--mdt-gray-1); text-transform: uppercase; letter-spacing: .08em; font-weight: 600; }
.mdt-quick-facts__val   { font-family: var(--font-display); font-size: var(--text-base); font-weight: 700; color: var(--mdt-dark); }

/* Section heading inside single tour */
.mdt-single-tour__section { margin-bottom: var(--space-10); padding-bottom: var(--space-10); border-bottom: 1px solid var(--mdt-border); }
.mdt-single-tour__section:last-child { border-bottom: none; }
.mdt-single-tour__section-title {
  font-family: var(--font-display);
  font-size:   var(--text-2xl);
  font-weight: 700;
  margin-bottom: var(--space-6);
}

/* Itinerary */
.mdt-itinerary { display: flex; flex-direction: column; gap: 0; position: relative; }
.mdt-itinerary::before {
  content:    '';
  position:   absolute;
  left:       19px;
  top:        20px;
  bottom:     20px;
  width:      2px;
  background: var(--mdt-border);
  z-index:    0;
}
.mdt-itinerary__day { display: flex; gap: var(--space-4); padding-bottom: var(--space-6); position: relative; }
.mdt-itinerary__marker {
  width:          40px;
  height:         40px;
  border-radius:  50%;
  background:     var(--mdt-orange);
  color:          var(--mdt-white);
  display:        flex;
  align-items:    center;
  justify-content: center;
  font-family:    var(--font-ui);
  font-weight:    700;
  font-size:      var(--text-sm);
  flex-shrink:    0;
  position:       relative;
  z-index:        1;
}
.mdt-itinerary__content { flex: 1; padding-top: var(--space-2); }
.mdt-itinerary__content p { font-size: var(--text-base); line-height: 1.7; color: var(--mdt-dark-3); }

/* Includes / Excludes */
.mdt-inc-exc-grid {
  display:               grid;
  grid-template-columns: 1fr 1fr;
  gap:                   var(--space-8);
}
.mdt-inc-exc-grid h4 { font-family: var(--font-ui); font-size: var(--text-sm); font-weight: 700; margin-bottom: var(--space-4); color: var(--mdt-dark); }
.mdt-checklist { display: flex; flex-direction: column; gap: var(--space-2); }
.mdt-checklist li {
  display:     flex;
  gap:         var(--space-2);
  font-size:   var(--text-sm);
  line-height: 1.5;
  color:       var(--mdt-dark-3);
}
.mdt-checklist--check li::before { content: '✓'; color: #16A34A; font-weight: 700; flex-shrink: 0; }
.mdt-checklist--cross li::before { content: '✗'; color: #DC2626; font-weight: 700; flex-shrink: 0; }

/* Map */
.mdt-map-embed { border-radius: var(--radius-lg); overflow: hidden; border: 1px solid var(--mdt-border); }

/* ── 19. Booking Widget ─────────────────────────────────────────────────── */
.mdt-booking-widget {
  background:    var(--mdt-white);
  border:        1px solid var(--mdt-border);
  border-radius: var(--radius-lg);
  padding:       var(--space-6);
  box-shadow:    var(--shadow-md);
}
.mdt-booking-widget__price { margin-bottom: var(--space-4); }
.mdt-booking-widget__price-label { font-family: var(--font-ui); font-size: var(--text-xs); color: var(--mdt-gray-1); text-transform: uppercase; letter-spacing: .08em; display: block; margin-bottom: var(--space-1); }
.mdt-booking-widget__price-val   { font-family: var(--font-display); font-size: var(--text-3xl); font-weight: 700; color: var(--mdt-dark); }
.mdt-booking-widget__price-pp    { font-size: var(--text-xs); color: var(--mdt-gray-2); }
.mdt-booking-widget__divider      { border: none; border-top: 1px solid var(--mdt-border); margin-block: var(--space-4); }

.mdt-booking-widget__title { font-family: var(--font-display); font-size: var(--text-xl); font-weight: 700; margin-bottom: var(--space-2); }
.mdt-booking-widget__sub   { font-size: var(--text-xs); color: var(--mdt-gray-1); margin-bottom: var(--space-5); }

.mdt-booking-widget__feedback {
  margin-top: var(--space-3);
  font-size:  var(--text-sm);
  padding:    var(--space-3);
  border-radius: var(--radius-sm);
  text-align: center;
}
.mdt-booking-widget__feedback.is-success { background: #DCFCE7; color: #166534; }
.mdt-booking-widget__feedback.is-error   { background: #FEE2E2; color: #991B1B; }

.mdt-booking-widget__trust { display: flex; flex-direction: column; gap: var(--space-2); margin-top: var(--space-5); }
.mdt-booking-widget__trust li {
  display:     flex;
  align-items: center;
  gap:         var(--space-2);
  font-size:   var(--text-xs);
  color:       var(--mdt-gray-1);
}
.mdt-booking-widget__trust svg { width: 13px; height: 13px; color: #16A34A; flex-shrink: 0; }

/* ── 20. Form Styles ────────────────────────────────────────────────────── */
.mdt-form-field { display: flex; flex-direction: column; gap: var(--space-1); margin-bottom: var(--space-4); }
.mdt-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-4); }
.mdt-form-field label {
  font-family:  var(--font-ui);
  font-size:    var(--text-xs);
  font-weight:  700;
  letter-spacing: .06em;
  text-transform: uppercase;
  color:        var(--mdt-dark-3);
}
.mdt-form-field input,
.mdt-form-field select,
.mdt-form-field textarea {
  width:         100%;
  padding:       .7em .9em;
  border:        1px solid var(--mdt-border);
  border-radius: var(--radius-sm);
  font-family:   var(--font-body);
  font-size:     var(--text-sm);
  color:         var(--mdt-dark);
  background:    var(--mdt-white);
  transition:    border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);
  appearance:    none;
}
.mdt-form-field input:focus,
.mdt-form-field select:focus,
.mdt-form-field textarea:focus {
  outline:      none;
  border-color: var(--mdt-orange);
  box-shadow:   0 0 0 3px rgba(200,105,42,.15);
}
.mdt-form-field textarea { resize: vertical; min-height: 100px; }
.mdt-form-field select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%236B7280' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right .75em center;
  background-size: 10px;
  padding-right: 2em;
}

/* Search form */
.mdt-search-form {
  display:       flex;
  border:        1px solid var(--mdt-border);
  border-radius: var(--radius-sm);
  overflow:      hidden;
  margin-top:    var(--space-4);
}
.mdt-search-form__input {
  flex:         1;
  padding:      .65em .9em;
  border:       none;
  font-family:  var(--font-body);
  font-size:    var(--text-sm);
  background:   var(--mdt-cream);
  color:        var(--mdt-dark);
}
.mdt-search-form__input:focus { outline: none; }
.mdt-search-form__btn {
  padding:    .65em .9em;
  background: var(--mdt-orange);
  color:      var(--mdt-white);
  border:     none;
  transition: background var(--dur) var(--ease);
}
.mdt-search-form__btn:hover { background: var(--mdt-orange-h); }
.mdt-search-form__btn svg   { display: block; }

/* ── 21. Footer ─────────────────────────────────────────────────────────── */
.mdt-footer { background: var(--mdt-dark); color: rgba(255,255,255,.75); }

.mdt-footer__top { padding-block: var(--space-20); }

.mdt-footer__grid {
  display:               grid;
  grid-template-columns: 1.8fr 1fr 1fr 1fr;
  gap:                   clamp(2rem, 5vw, 4rem);
  align-items:           start;
}

.mdt-footer__brand {}
.mdt-footer__logo-link,
.mdt-footer .custom-logo-link {
  display:       flex;
  align-items:   center;
  gap:           var(--space-3);
  margin-bottom: var(--space-5);
  text-decoration: none;
}
.mdt-footer__brand-name {
  font-family:  var(--font-display);
  font-size:    var(--text-xl);
  font-weight:  700;
  color:        var(--mdt-white);
}
.mdt-footer__tagline {
  font-size:     var(--text-sm);
  line-height:   1.7;
  margin-bottom: var(--space-5);
  color:         rgba(255,255,255,.6);
  max-width:     320px;
}
.mdt-footer__rating {
  display:       flex;
  align-items:   center;
  gap:           var(--space-2);
  margin-bottom: var(--space-5);
  font-size:     var(--text-sm);
  color:         rgba(255,255,255,.65);
}
.mdt-footer__rating .mdt-stars .star { width: 14px; height: 14px; }

.mdt-footer__social { display: flex; gap: var(--space-3); }
.mdt-footer__social a {
  display:       flex;
  align-items:   center;
  justify-content: center;
  width:         36px; height: 36px;
  border-radius: 50%;
  border:        1px solid rgba(255,255,255,.2);
  color:         rgba(255,255,255,.65);
  transition:    all var(--dur) var(--ease);
}
.mdt-footer__social a svg { width: 16px; height: 16px; }
.mdt-footer__social a:hover { background: var(--mdt-orange); border-color: var(--mdt-orange); color: var(--mdt-white); }

.mdt-footer__col {}
.mdt-footer__col-title {
  font-family:    var(--font-ui);
  font-size:      var(--text-xs);
  font-weight:    700;
  letter-spacing: .12em;
  text-transform: uppercase;
  color:          var(--mdt-gold);
  margin-bottom:  var(--space-5);
  padding-bottom: var(--space-3);
  border-bottom:  1px solid rgba(255,255,255,.1);
}

.mdt-footer__menu { display: flex; flex-direction: column; gap: var(--space-2); }
.mdt-footer__menu a {
  font-size:  var(--text-sm);
  color:      rgba(255,255,255,.65);
  transition: color var(--dur) var(--ease);
}
.mdt-footer__menu a:hover { color: var(--mdt-gold); }

.mdt-footer__contact { display: flex; flex-direction: column; gap: var(--space-3); }
.mdt-footer__contact-item {
  display:     flex;
  gap:         var(--space-2);
  font-size:   var(--text-sm);
  color:       rgba(255,255,255,.65);
  align-items: flex-start;
}
.mdt-footer__contact-item svg { width: 16px; height: 16px; flex-shrink: 0; margin-top: 2px; }
.mdt-footer__contact-item a { color: rgba(255,255,255,.65); }
.mdt-footer__contact-item a:hover { color: var(--mdt-gold); }

.mdt-footer__badges { display: flex; flex-wrap: wrap; gap: var(--space-2); margin-top: var(--space-5); }
.mdt-footer__badge {
  font-family:  var(--font-ui);
  font-size:    11px;
  font-weight:  600;
  padding:      .3em .75em;
  border:       1px solid rgba(255,255,255,.15);
  border-radius: var(--radius-full);
  color:        rgba(255,255,255,.6);
}

.mdt-footer__bottom {
  padding-block: var(--space-5);
  border-top:    1px solid rgba(255,255,255,.08);
}
.mdt-footer__bottom-inner {
  display:         flex;
  align-items:     center;
  justify-content: space-between;
  flex-wrap:       wrap;
  gap:             var(--space-4);
}
.mdt-footer__copy  { font-size: var(--text-xs); color: rgba(255,255,255,.45); }
.mdt-footer__legal { display: flex; gap: var(--space-4); }
.mdt-footer__legal a { font-size: var(--text-xs); color: rgba(255,255,255,.45); }
.mdt-footer__legal a:hover { color: rgba(255,255,255,.8); }

/* ── 22. Page layouts ───────────────────────────────────────────────────── */
.mdt-page__body { padding-block: var(--space-16); max-width: 860px; }
.mdt-page__featured-img { margin-bottom: var(--space-8); border-radius: var(--radius-lg); overflow: hidden; }
.mdt-page__img { width: 100%; height: 400px; object-fit: cover; }

.mdt-single-post__layout { display: grid; grid-template-columns: 1fr 280px; gap: var(--space-10); padding-block: var(--space-16); align-items: start; }
.mdt-single-post__content.entry-content { max-width: 720px; }
.mdt-single-post__sidebar { position: sticky; top: calc(var(--header-h) + var(--space-4)); }

.mdt-archive__layout { display: grid; grid-template-columns: 1fr 260px; gap: var(--space-8); padding-block: var(--space-16); }

/* Entry content typography */
.entry-content {
  font-size:   var(--text-base);
  line-height: 1.8;
  color:       var(--mdt-dark-3);
}
.entry-content h1, .entry-content h2, .entry-content h3,
.entry-content h4, .entry-content h5, .entry-content h6 {
  font-family:  var(--font-display);
  font-weight:  700;
  line-height:  1.2;
  color:        var(--mdt-dark);
  margin-block: var(--space-8) var(--space-4);
}
.entry-content h2 { font-size: var(--text-2xl); }
.entry-content h3 { font-size: var(--text-xl); }
.entry-content p  { margin-bottom: var(--space-4); }
.entry-content a  { color: var(--mdt-orange); text-decoration: underline; text-underline-offset: 3px; }
.entry-content ul,
.entry-content ol { padding-left: var(--space-6); margin-bottom: var(--space-4); }
.entry-content ul { list-style: disc; }
.entry-content ol { list-style: decimal; }
.entry-content li { margin-bottom: var(--space-2); }
.entry-content img { border-radius: var(--radius-md); margin-block: var(--space-6); }
.entry-content blockquote {
  border-left: 3px solid var(--mdt-orange);
  padding:     var(--space-4) var(--space-6);
  margin-block: var(--space-6);
  background:  var(--mdt-cream);
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0;
  font-family: var(--font-display);
  font-size:   var(--text-lg);
  font-style:  italic;
}

/* ── 23. Pagination ─────────────────────────────────────────────────────── */
.mdt-pagination {
  display:         flex;
  justify-content: center;
  gap:             var(--space-2);
  padding-top:     var(--space-12);
  flex-wrap:       wrap;
}
.mdt-pagination a,
.mdt-pagination span {
  font-family:  var(--font-ui);
  font-size:    var(--text-sm);
  font-weight:  600;
  padding:      .5em 1em;
  border:       1px solid var(--mdt-border);
  border-radius: var(--radius-sm);
  color:        var(--mdt-dark);
  background:   var(--mdt-white);
  transition:   all var(--dur) var(--ease);
}
.mdt-pagination a:hover   { background: var(--mdt-orange); border-color: var(--mdt-orange); color: var(--mdt-white); }
.mdt-pagination .current  { background: var(--mdt-orange); border-color: var(--mdt-orange); color: var(--mdt-white); }

/* ── 24. 404 Page ───────────────────────────────────────────────────────── */
.mdt-404 {
  min-height:   calc(100vh - var(--header-h));
  padding-top:  var(--header-h);
  display:      flex;
  align-items:  center;
  background:   var(--mdt-cream);
}
.mdt-404__body { padding-block: var(--space-20); }
.mdt-404__content { max-width: 560px; }
.mdt-404__num {
  font-family: var(--font-display);
  font-size:   clamp(5rem, 15vw, 10rem);
  font-weight: 700;
  color:       var(--mdt-border);
  line-height: 1;
  display:     block;
}
.mdt-404__title { font-family: var(--font-display); font-size: var(--text-3xl); font-weight: 700; margin-bottom: var(--space-4); }
.mdt-404__sub   { font-size: var(--text-lg); color: var(--mdt-gray-1); margin-bottom: var(--space-8); }
.mdt-404__actions { display: flex; gap: var(--space-4); flex-wrap: wrap; margin-bottom: var(--space-8); }

/* ── 25. Widget Styles ──────────────────────────────────────────────────── */
.widget { margin-bottom: var(--space-8); }
.widget-title, .footer-widget-title {
  font-family:    var(--font-display);
  font-size:      var(--text-xl);
  font-weight:    700;
  margin-bottom:  var(--space-4);
  padding-bottom: var(--space-3);
  border-bottom:  1px solid var(--mdt-border);
}
.widget ul { display: flex; flex-direction: column; gap: var(--space-2); }
.widget ul li a { font-size: var(--text-sm); color: var(--mdt-dark-3); }
.widget ul li a:hover { color: var(--mdt-orange); }

/* ── 26. Related tours ──────────────────────────────────────────────────── */
.mdt-related-tours { background: var(--mdt-cream); }

/* ── 27. No results ─────────────────────────────────────────────────────── */
.mdt-no-results { text-align: center; padding-block: var(--space-20); color: var(--mdt-gray-1); }
.mdt-placeholder-text { font-style: italic; color: var(--mdt-gray-2); font-size: var(--text-sm); padding: var(--space-4); }

/* ── 28. Post tags ──────────────────────────────────────────────────────── */
.mdt-post-tags {
  margin-top:  var(--space-8);
  display:     flex;
  flex-wrap:   wrap;
  gap:         var(--space-2);
  font-size:   var(--text-sm);
  color:       var(--mdt-gray-1);
  align-items: center;
}
.mdt-post-tags a {
  background:    var(--mdt-cream);
  border:        1px solid var(--mdt-border);
  border-radius: var(--radius-full);
  padding:       .25em .75em;
  font-size:     var(--text-xs);
  color:         var(--mdt-dark-3);
}
.mdt-post-tags a:hover { background: var(--mdt-orange); border-color: var(--mdt-orange); color: var(--mdt-white); }

/* ── 29. Responsive ─────────────────────────────────────────────────────── */
@media (max-width: 1100px) {
  .mdt-footer__grid { grid-template-columns: 1fr 1fr; gap: var(--space-8); }
}

@media (max-width: 960px) {
  .mdt-single-tour__layout { grid-template-columns: 1fr; }
  .mdt-single-tour__sidebar { order: -1; }
  .mdt-single-tour__sidebar-sticky { position: static; }

  .mdt-archive-tours__body { grid-template-columns: 1fr; }
  .mdt-archive-tours__sidebar { order: -1; }
  .mdt-filter-box { position: static; }

  .mdt-single-post__layout { grid-template-columns: 1fr; }
  .mdt-archive__layout { grid-template-columns: 1fr; }
  .mdt-inc-exc-grid { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  :root { --header-h: 60px; }

  .mdt-nav,
  .mdt-header__actions { display: none; }

  .mdt-hamburger { display: flex; }

  /* Mobile nav */
  .mdt-nav.is-open {
    display:    flex;
    position:   fixed;
    top:        var(--header-h);
    left:       0;
    right:      0;
    bottom:     0;
    background: var(--mdt-dark);
    z-index:    999;
    overflow-y: auto;
    align-items: flex-start;
    padding:    var(--space-6);
  }
  .mdt-nav.is-open .mdt-nav__menu {
    flex-direction: column;
    align-items:    flex-start;
    width:          100%;
    gap:            0;
  }
  .mdt-nav.is-open .mdt-nav__menu > li { width: 100%; border-bottom: 1px solid rgba(255,255,255,.08); }
  .mdt-nav.is-open .mdt-nav__menu > li > a { padding: var(--space-4) 0; font-size: var(--text-base); width: 100%; }
  .mdt-nav.is-open .mdt-nav__dropdown {
    position:   static;
    opacity:    1;
    visibility: visible;
    transform:  none;
    background: transparent;
    border:     none;
    box-shadow: none;
    padding:    0 0 var(--space-3) var(--space-5);
  }

  .mdt-footer__grid { grid-template-columns: 1fr; gap: var(--space-8); }
  .mdt-hero__ctas { flex-direction: column; }
  .mdt-why-grid { grid-template-columns: 1fr; }
  .mdt-trust-bar__inner { justify-content: flex-start; }
  .mdt-form-row { grid-template-columns: 1fr; }
  .mdt-quick-facts { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
  .mdt-tour-grid { grid-template-columns: 1fr; }
  .mdt-blog-grid { grid-template-columns: 1fr; }
  .mdt-testimonials-grid { grid-template-columns: 1fr; }
  .mdt-stats-bar__inner { flex-direction: column; gap: var(--space-6); text-align: center; }
  .mdt-quick-facts { grid-template-columns: 1fr; }
}

/* ── 30. Utilities / Misc ───────────────────────────────────────────────── */
.sep { opacity: .4; }
body { padding-top: var(--header-h); }

/* Animate on scroll placeholder (AOS-compatible) */
[data-aos] { opacity: 0; transform: translateY(20px); transition: opacity .55s ease, transform .55s ease; }
[data-aos].aos-animate { opacity: 1; transform: none; }

/* WP alignment classes */
.aligncenter { display: block; margin-inline: auto; }
.alignleft    { float: left;  margin-right: var(--space-6); margin-bottom: var(--space-4); }
.alignright   { float: right; margin-left:  var(--space-6); margin-bottom: var(--space-4); }
.alignwide    { margin-inline: calc(-1 * var(--container-pad)); }

/* Admin bar offset */
.admin-bar .mdt-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .mdt-header { top: 46px; } }

/* ── 31. Netflix-inspired premium skin ─────────────────────────────────── */
.mdt-section:not(.mdt-section--dark),
.mdt-related-tours,
.mdt-filter-box,
.mdt-form-card {
  background: var(--mdt-dark);
  color: var(--mdt-white);
}

.mdt-section--dark { background: var(--mdt-dark-2); }

.mdt-section__header {
  max-width: 760px;
  margin-inline: 0;
  text-align: left;
}

.mdt-section__title,
.mdt-section__header--light .mdt-section__title {
  color: var(--mdt-white);
  font-family: var(--font-display);
  font-weight: 800;
  letter-spacing: -.045em;
}

.mdt-section__sub,
.mdt-section__header--light .mdt-section__sub {
  color: var(--mdt-gray-1);
}

.mdt-filter-bar {
  justify-content: flex-start;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
  scrollbar-width: none;
}
.mdt-filter-bar::-webkit-scrollbar { display: none; }
.mdt-filter-btn {
  flex: 0 0 auto;
  border-width: 1px;
  border-color: #383838;
  color: var(--mdt-gray-1);
  background: transparent;
}

.mdt-tour-grid {
  display: flex;
  overflow-x: auto;
  gap: var(--space-4);
  padding-bottom: var(--space-3);
  scrollbar-width: none;
}
.mdt-tour-grid::-webkit-scrollbar { display: none; }
.mdt-tour-card {
  flex: 0 0 min(340px, 84vw);
  border: 1px solid #2d2d2d;
  border-radius: 5px;
  background: #1f1f1f;
  box-shadow: none;
}
.mdt-tour-card:hover {
  border-color: #555;
  box-shadow: 0 18px 40px rgba(0,0,0,.38);
  transform: translateY(-5px);
}
.mdt-tour-card__thumb-wrap { aspect-ratio: 16/9; }
.mdt-tour-card__body { padding: var(--space-5); }
.mdt-tour-card__title a { color: var(--mdt-white); }
.mdt-tour-card__title a:hover { color: var(--mdt-orange); }
.mdt-tour-card__excerpt,
.mdt-tour-card__price-label { color: var(--mdt-gray-1); }
.mdt-tour-card__price-val { color: var(--mdt-white); }
.mdt-tour-card__pill {
  border-color: #3b3b3b;
  background: #292929;
  color: var(--mdt-gray-1);
}
.mdt-tour-card__pill--duration {
  border-color: rgba(229,9,20,.35);
  color: #ff5c64;
  background: rgba(229,9,20,.1);
}

.mdt-trust-bar { background: var(--mdt-dark-2); border-bottom: 1px solid #2b2b2b; }
.mdt-trust-bar__item { color: var(--mdt-gray-1); }
.mdt-trust-bar__icon { color: var(--mdt-orange); }
.mdt-stats-bar { background: var(--mdt-orange); }

.mdt-hero {
  min-height: 680px;
  background-color: var(--mdt-dark);
}
.mdt-hero__title {
  max-width: 760px;
  font-family: var(--font-display);
  font-weight: 800;
  letter-spacing: -.055em;
  line-height: .98;
}
.mdt-hero__eyebrow,
.mdt-hero__badge { color: var(--mdt-orange); }
.mdt-hero__sub { color: rgba(255,255,255,.7); }
.mdt-hero__ctas .mdt-btn--outline {
  color: var(--mdt-white);
  border-color: rgba(255,255,255,.4);
}

.mdt-why-grid__item {
  background: #1f1f1f;
  border-color: #303030;
}
.mdt-why-grid__item h3 { color: var(--mdt-white); }
.mdt-why-grid__item p { color: var(--mdt-gray-1); }

.mdt-inner-hero,
.mdt-tour-hero { background-color: var(--mdt-dark); }
.mdt-inner-hero__title,
.mdt-tour-hero__title {
  font-family: var(--font-display);
  font-weight: 800;
  letter-spacing: -.05em;
}
.mdt-inner-hero__stats strong,
.mdt-tour-hero__price strong { color: var(--mdt-white); }

.mdt-search-form__input,
.mdt-filter-box__group,
.mdt-booking-form {
  color: var(--mdt-white);
  background: var(--mdt-dark-3);
  border-color: #3a3a3a;
}

.mdt-footer { background: #0b0b0b; }
.mdt-footer__col-title { color: var(--mdt-orange); }
.mdt-footer__menu a:hover,
.mdt-footer__contact-item a:hover { color: var(--mdt-white); }

@media (max-width: 700px) {
  .mdt-hero { min-height: 650px; }
  .mdt-section { padding-block: var(--space-12); }
  .mdt-tour-grid { margin-right: calc(-1 * var(--container-pad)); }
}

/* ── 32. Interior pages ────────────────────────────────────────────────── */
.mdt-special-page {
  background: var(--mdt-dark);
  color: var(--mdt-white);
}

.mdt-page-hero {
  min-height: 455px;
  display: flex;
  align-items: flex-end;
  padding: 130px 0 72px;
  background-position: center;
  background-size: cover;
}
.mdt-page-hero--compact { min-height: 380px; }
.mdt-page-hero h1 {
  max-width: 820px;
  margin: 12px 0 18px;
  color: var(--mdt-white);
  font-family: var(--font-display);
  font-size: clamp(2.8rem, 6vw, 5.3rem);
  font-weight: 800;
  letter-spacing: -.06em;
  line-height: .98;
}
.mdt-page-hero h1 em { color: var(--mdt-orange); font-style: italic; }
.mdt-page-hero__sub {
  max-width: 620px;
  margin: 0;
  color: rgba(255,255,255,.7);
  font-size: var(--text-lg);
  line-height: 1.65;
}

.mdt-special-section {
  padding-block: clamp(4rem, 9vw, 8rem);
  background: var(--mdt-dark);
}
.mdt-special-section--alt { background: var(--mdt-dark-2); }
.mdt-split-content {
  display: grid;
  grid-template-columns: minmax(260px, .9fr) minmax(0, 1.1fr);
  gap: clamp(3rem, 9vw, 9rem);
  align-items: start;
}
.mdt-split-content h2,
.mdt-contact-intro h2,
.mdt-faq-layout h2 {
  max-width: 520px;
  margin: 12px 0 0;
  color: var(--mdt-white);
  font-family: var(--font-display);
  font-size: clamp(2rem, 4vw, 3.5rem);
  font-weight: 800;
  letter-spacing: -.055em;
  line-height: 1;
}
.mdt-special-copy {
  color: var(--mdt-gray-1);
  font-size: var(--text-base);
  line-height: 1.9;
}
.mdt-special-copy p { margin: 0 0 var(--space-5); }

.mdt-value-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--space-4);
}
.mdt-value-grid article {
  min-height: 225px;
  padding: var(--space-7);
  border: 1px solid #303030;
  border-radius: 5px;
  background: #1f1f1f;
}
.mdt-value-grid article > span {
  display: block;
  margin-bottom: 42px;
  color: var(--mdt-orange);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: .12em;
}
.mdt-value-grid h3 {
  margin: 0 0 var(--space-3);
  color: var(--mdt-white);
  font-size: var(--text-lg);
}
.mdt-value-grid p {
  margin: 0;
  color: var(--mdt-gray-1);
  font-size: var(--text-sm);
  line-height: 1.7;
}

.mdt-contact-layout,
.mdt-faq-layout {
  display: grid;
  grid-template-columns: minmax(250px, .8fr) minmax(360px, 1.2fr);
  gap: clamp(3rem, 8vw, 8rem);
  align-items: start;
}
.mdt-contact-intro > p:not(.mdt-section__eyebrow) {
  max-width: 430px;
  margin: 25px 0 35px;
  color: var(--mdt-gray-1);
  line-height: 1.8;
}
.mdt-contact-details {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}
.mdt-contact-details div {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.mdt-contact-details span {
  color: var(--mdt-orange);
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.mdt-contact-details strong {
  color: var(--mdt-white);
  font-size: var(--text-sm);
  font-weight: 500;
}

.mdt-booking-widget {
  padding: clamp(1.5rem, 4vw, 2.25rem);
  border: 1px solid #303030;
  border-radius: 5px;
  background: #1f1f1f;
  box-shadow: 0 20px 50px rgba(0,0,0,.28);
}
.mdt-booking-widget__price-val,
.mdt-booking-widget__title { color: var(--mdt-white); }
.mdt-booking-widget__price-val { font-family: var(--font-display); }
.mdt-form-field label { color: rgba(255,255,255,.74); }
.mdt-form-field input,
.mdt-form-field select,
.mdt-form-field textarea {
  border-color: #3b3b3b;
  color: var(--mdt-white);
  background: #292929;
}
.mdt-form-field input::placeholder,
.mdt-form-field textarea::placeholder { color: #777; }
.mdt-booking-widget__trust li { color: var(--mdt-gray-1); }

.mdt-faq-layout > div:first-child .mdt-special-copy {
  max-width: 340px;
  margin: 25px 0;
}
.mdt-faq-list details {
  border-bottom: 1px solid #343434;
}
.mdt-faq-list details:first-child { border-top: 1px solid #343434; }
.mdt-faq-list summary {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 0;
  color: var(--mdt-white);
  cursor: pointer;
  font-size: var(--text-base);
  font-weight: 600;
  list-style: none;
}
.mdt-faq-list summary::-webkit-details-marker { display: none; }
.mdt-faq-list summary span {
  color: var(--mdt-orange);
  font-size: 24px;
  font-weight: 400;
  line-height: .7;
  transition: transform .2s ease;
}
.mdt-faq-list details[open] summary span { transform: rotate(45deg); }
.mdt-faq-list details p {
  max-width: 700px;
  margin: -4px 0 22px;
  color: var(--mdt-gray-1);
  font-size: var(--text-sm);
  line-height: 1.8;
}

.mdt-guide-grid .mdt-post-card {
  border: 1px solid #303030;
  background: #1f1f1f;
  box-shadow: none;
}
.mdt-guide-grid .mdt-post-card__title a { color: var(--mdt-white); }
.mdt-guide-grid .mdt-post-card__meta,
.mdt-guide-grid .mdt-post-card__excerpt { color: var(--mdt-gray-1); }
.mdt-guide-empty {
  padding: 60px 30px;
  border: 1px dashed #444;
  border-radius: 5px;
  text-align: center;
}
.mdt-guide-empty h3 { color: var(--mdt-white); }
.mdt-guide-empty p { color: var(--mdt-gray-1); }
.mdt-pagination {
  margin-top: var(--space-10);
  text-align: center;
}
.mdt-pagination a,
.mdt-pagination span {
  display: inline-block;
  margin: 3px;
  padding: 8px 12px;
  border: 1px solid #3b3b3b;
  border-radius: 3px;
  color: var(--mdt-white);
}
.mdt-pagination .current,
.mdt-pagination a:hover { border-color: var(--mdt-orange); background: var(--mdt-orange); }

@media (max-width: 760px) {
  .mdt-page-hero { min-height: 390px; padding: 120px 0 48px; }
  .mdt-page-hero--compact { min-height: 340px; }
  .mdt-split-content,
  .mdt-contact-layout,
  .mdt-faq-layout { grid-template-columns: 1fr; gap: var(--space-10); }
  .mdt-value-grid { grid-template-columns: 1fr; }
  .mdt-value-grid article { min-height: auto; }
  .mdt-value-grid article > span { margin-bottom: 26px; }
}

/* ── 34. NEARTRIPS identity, personalization and commerce ──────────────── */
.neartrips-wordmark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--mdt-white);
}
.neartrips-wordmark__mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--mdt-orange);
}
.neartrips-wordmark__text {
  font-family: var(--font-ui);
  font-size: clamp(1rem, 1.5vw, 1.25rem);
  font-weight: 800;
  letter-spacing: .13em;
}

.neartrips-header-icon {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  color: var(--mdt-white);
  transition: border-color var(--dur) var(--ease), background var(--dur) var(--ease);
}
.neartrips-header-icon:hover { border-color: rgba(255,255,255,.55); background: rgba(255,255,255,.08); }
.neartrips-header-icon svg { width: 18px; height: 18px; }
.neartrips-header-icon__count {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 18px;
  height: 18px;
  padding: 0 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: var(--mdt-orange);
  color: #fff;
  font-family: var(--font-ui);
  font-size: 10px;
  font-weight: 800;
  line-height: 1;
}

.mdt-tour-card { position: relative; }
.neartrips-wishlist-toggle {
  position: absolute;
  z-index: 5;
  top: 12px;
  right: 12px;
  width: 38px;
  height: 38px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: 999px;
  background: rgba(12,12,12,.58);
  color: #fff;
  backdrop-filter: blur(10px);
  box-shadow: 0 8px 22px rgba(0,0,0,.2);
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}
.neartrips-wishlist-toggle:hover { transform: scale(1.06); border-color: rgba(255,255,255,.7); }
.neartrips-wishlist-toggle svg { width: 18px; height: 18px; }
.neartrips-wishlist-toggle.is-active {
  background: var(--mdt-orange);
  border-color: var(--mdt-orange);
}
.neartrips-wishlist-toggle.is-active svg { fill: currentColor; }
.mdt-tour-card__difficulty { top: 58px; }

.neartrips-tour-title-row {
  display: flex;
  align-items: flex-end;
  gap: var(--space-5);
}
.neartrips-tour-title-row .mdt-tour-hero__title { flex: 1; }
.neartrips-wishlist-toggle--hero {
  position: static;
  flex: 0 0 auto;
  width: 46px;
  height: 46px;
  margin-bottom: .35rem;
}

.neartrips-personalized { overflow: hidden; }
.neartrips-personalized--recent { background: var(--mdt-dark-2) !important; }
.neartrips-personalized--smart { background: var(--mdt-dark) !important; }
.neartrips-rail__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--space-6);
  margin-bottom: var(--space-7);
}
.neartrips-rail__heading .mdt-section__sub { margin-top: var(--space-3); }
.neartrips-rail__link {
  flex: 0 0 auto;
  color: rgba(255,255,255,.72);
  font-family: var(--font-ui);
  font-size: var(--text-sm);
  font-weight: 700;
}
.neartrips-rail__link:hover { color: var(--mdt-orange); }
.neartrips-rail {
  display: flex;
  gap: var(--space-4);
  overflow-x: auto;
  padding: 4px 0 var(--space-4);
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}
.neartrips-rail::-webkit-scrollbar { display: none; }
.neartrips-rail__item {
  flex: 0 0 min(340px, 84vw);
  scroll-snap-align: start;
}
.neartrips-rail__item .mdt-tour-card { height: 100%; }

.neartrips-favorites-page { background: var(--mdt-dark); color: var(--mdt-white); }
.neartrips-favorites-empty {
  max-width: 620px;
  margin: 0 auto;
  padding: clamp(2rem, 6vw, 4rem);
  text-align: center;
  border: 1px solid #303030;
  border-radius: 8px;
  background: #1f1f1f;
}
.neartrips-favorites-empty h2 {
  margin-bottom: var(--space-3);
  color: var(--mdt-white);
  font-family: var(--font-display);
  font-size: var(--text-3xl);
}
.neartrips-favorites-empty p { margin-bottom: var(--space-6); color: var(--mdt-gray-1); }

.neartrips-commerce-status {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: var(--space-4);
  padding: 10px 12px;
  border-radius: 5px;
  font-family: var(--font-ui);
  font-size: var(--text-xs);
  font-weight: 700;
}
.neartrips-commerce-status--ready {
  border: 1px solid rgba(34,197,94,.28);
  background: rgba(34,197,94,.1);
  color: #86efac;
}
.neartrips-commerce-status--fallback {
  border: 1px solid rgba(245,158,11,.3);
  background: rgba(245,158,11,.1);
  color: #fcd34d;
}
.neartrips-checkout-cta { margin-top: var(--space-2); }

/* WooCommerce pages inherit the NEARTRIPS dark shell without template overrides. */
body.woocommerce-page .mdt-page__body,
body.woocommerce-cart .mdt-page__body,
body.woocommerce-checkout .mdt-page__body,
body.woocommerce-account .mdt-page__body {
  padding-top: clamp(2.5rem, 6vw, 5rem);
  padding-bottom: clamp(3.5rem, 7vw, 6rem);
}
body.woocommerce-page .mdt-page__content,
.woocommerce {
  color: var(--mdt-gray-1);
}
.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.wc-block-components-title { color: var(--mdt-white); }
.woocommerce table.shop_table,
.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register,
.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar {
  border-color: #343434;
  color: var(--mdt-gray-1);
}
.woocommerce table.shop_table { background: #1f1f1f; border-radius: 6px; overflow: hidden; }
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { border-color: #343434; }
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.select2-container--default .select2-selection--single,
.wc-block-components-text-input input,
.wc-blocks-components-select .wc-blocks-components-select__select {
  border: 1px solid #3b3b3b;
  color: var(--mdt-white);
  background: #292929;
}
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wc-block-components-button:not(.is-link) {
  border-radius: 4px;
  background: var(--mdt-orange);
  color: #fff;
  font-family: var(--font-ui);
  font-weight: 800;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:not(.is-link):hover {
  background: var(--mdt-gold);
  color: #fff;
}
.woocommerce-info,
.woocommerce-message,
.woocommerce-error {
  border-top-color: var(--mdt-orange);
  background: #1f1f1f;
  color: var(--mdt-gray-1);
}
.woocommerce-info::before,
.woocommerce-message::before { color: var(--mdt-orange); }
.woocommerce-checkout #payment { background: #1f1f1f; color: var(--mdt-gray-1); }
.woocommerce-checkout #payment div.payment_box { background: #292929; color: var(--mdt-gray-1); }
.woocommerce-checkout #payment div.payment_box::before { border-bottom-color: #292929; }
.woocommerce .quantity .qty { min-height: 38px; }

@media (max-width: 1024px) {
  .mdt-header__actions { display: flex; margin-left: auto; }
  .mdt-header__actions > .mdt-btn,
  .mdt-header__actions > .mdt-lang-toggle { display: none; }
  .mdt-hamburger { margin-left: 0; }
}

@media (max-width: 700px) {
  .neartrips-wordmark__text { font-size: .92rem; letter-spacing: .1em; }
  .neartrips-wordmark__mark svg { width: 32px; height: 32px; }
  .neartrips-header-icon { width: 34px; height: 34px; }
  .neartrips-header-icon:nth-of-type(2) { display: none; }
  .neartrips-tour-title-row { align-items: center; }
  .neartrips-wishlist-toggle--hero { width: 42px; height: 42px; margin-bottom: 0; }
  .neartrips-rail__heading { align-items: flex-start; flex-direction: column; }
  .neartrips-rail__item { flex-basis: min(315px, 88vw); }
}
