:root {
  --nh-primary: #6b7f5b;
  --nh-primary-dark: #4f6143;
  --nh-primary-rgb: 107, 127, 91;
  --nh-secondary: #b08a3e;
  --nh-secondary-rgb: 176, 138, 62;
  --nh-accent: #b08a3e;
  --nh-accent-rgb: 176, 138, 62;
  --nh-surface: #e9dfc8;
  --nh-surface-rgb: 233, 223, 200;
  --nh-paper: #f8f4ea;
  --nh-border: #d2c3a4;
  --nh-ink: #2a3126;
  --nh-muted: #646a5d;
  --nh-white: #ffffff;
  --nh-shadow: 0 20px 50px rgba(17, 26, 27, 0.12);
  --nh-radius-lg: 28px;
  --nh-radius-md: 18px;
  --nh-radius-sm: 12px;
  --nh-wrap: min(1180px, calc(100vw - 2rem));
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

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

body {
  margin: 0;
  font-family: "Inter", "Segoe UI", sans-serif;
  color: var(--nh-ink);
  background:
    radial-gradient(circle at top left, rgba(var(--nh-secondary-rgb), 0.14), transparent 32%),
    linear-gradient(180deg, #fcfaf4 0%, var(--nh-paper) 32%, #f6f1e7 100%);
  line-height: 1.6;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.menu-open {
  overflow: hidden;
}

body.tour-gallery-open {
  overflow: hidden;
}

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

svg,
iframe,
video,
canvas,
embed,
object {
  max-width: 100%;
}

figure {
  max-width: 100%;
  margin: 0;
}

button,
input,
select,
textarea {
  margin: 0;
  color: inherit;
  font: inherit;
}

button,
[type="button"],
[type="submit"],
[type="reset"] {
  -webkit-appearance: none;
  appearance: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

p {
  margin: 0 0 1rem;
}

pre {
  max-width: 100%;
  overflow: auto;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1rem;
  color: var(--nh-ink);
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 400;
  line-height: 1.08;
}

.prose-block table,
.tour-single__prose table,
.entry-card table,
.page-card table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  border-collapse: collapse;
  white-space: nowrap;
}

.topbar__contact span:last-child,
.topbar__meta span:first-child,
.brand-lockup__title,
.brand-lockup__subtitle,
.section-heading h2,
.package-card h3,
.destination-card h3,
.insight-card h3,
.entry-card h2,
.page-card h1,
.tour-single__intro h1,
.tour-single__section-heading h2,
.tour-single__sidebar-head strong {
  overflow-wrap: anywhere;
}

.wrap {
  width: calc(100vw - 2rem);
  max-width: 1180px;
  width: var(--nh-wrap);
  margin: 0 auto;
}

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.skip-link:focus {
  left: 1rem;
  top: 1rem;
  width: auto;
  height: auto;
  padding: 0.75rem 1rem;
  clip: auto;
  background: var(--nh-primary);
  color: var(--nh-white);
  z-index: 999;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 200;
  background: rgba(255, 255, 255, 0.98);
  transition: background-color 180ms ease, box-shadow 180ms ease;
}

.site-header.is-scrolled {
  background: rgba(255, 255, 255, 0.96);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 10px 32px rgba(16, 31, 32, 0.08);
}

.topbar {
  background: linear-gradient(90deg, #4f6143, #617352);
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.9rem;
}

.topbar__inner,
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.topbar__inner {
  min-height: 44px;
}

.topbar__contacts {
  display: flex;
  gap: 1.25rem;
  flex-wrap: wrap;
}

.topbar__contact {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: rgba(255, 255, 255, 0.92);
  font-weight: 600;
}

.topbar__icon {
  width: 0.72rem;
  height: 0.72rem;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.14);
}

.topbar__icon--phone {
  border-radius: 0.28rem;
}

.topbar__meta {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  color: var(--nh-white);
  font-weight: 700;
  letter-spacing: 0.04em;
}

.topbar__caret {
  width: 0.5rem;
  height: 0.5rem;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-1px);
}

.header-shell {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 1.5rem;
  min-height: 96px;
}

.site-branding {
  min-width: 0;
  max-width: 100%;
}

.brand-lockup,
.site-logo .custom-logo-link {
  display: grid;
  gap: 0.18rem;
}

.brand-lockup__title {
  color: var(--nh-primary-dark);
  font-size: clamp(1.8rem, 2.2vw, 2.7rem);
  font-weight: 800;
  letter-spacing: 0.02em;
  line-height: 1;
  text-transform: uppercase;
}

.brand-lockup__title a,
.brand-lockup__title span {
  color: inherit;
}

.site-logo .custom-logo-link {
  display: inline-flex;
  align-items: center;
}

.site-logo-link,
.site-branding .custom-logo-link {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
}

.site-branding .custom-logo,
.site-branding .navbar-logo {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 74px;
  max-width: 260px;
  max-height: var(--nh-logo-height);
  max-width: min(100%, var(--nh-logo-width));
}

.brand-lockup__subtitle {
  color: var(--nh-accent);
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.38em;
  text-transform: uppercase;
  white-space: nowrap;
}

.main-navigation {
  justify-self: center;
  width: 100%;
  min-width: 0;
}

.main-navigation .menu,
.main-navigation .menu-fallback,
.footer-list {
  list-style: none;
}

.main-navigation .menu,
.main-navigation .menu-fallback {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.2rem;
  flex-wrap: wrap;
}

.main-navigation a,
.main-navigation .menu-fallback a {
  position: relative;
  color: #5f665f;
  font-weight: 600;
  font-size: 0.96rem;
}

.main-navigation a::after,
.main-navigation .menu-fallback a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -0.25rem;
  width: 100%;
  height: 2px;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 180ms ease;
  background: var(--nh-accent);
}

.main-navigation a:hover::after,
.main-navigation .current-menu-item > a::after,
.main-navigation .menu-fallback a:hover::after {
  transform: scaleX(1);
}

.main-navigation .current-menu-item > a,
.main-navigation a:hover,
.main-navigation .menu-fallback a:hover {
  color: var(--nh-accent);
}

.header-actions {
  display: inline-flex;
  align-items: center;
  justify-self: end;
  gap: 0.8rem;
}

.menu-toggle {
  display: none;
  width: 50px;
  height: 50px;
  border: 0;
  border-radius: 16px;
  background: rgba(var(--nh-primary-rgb), 0.1);
  cursor: pointer;
}

.menu-toggle span {
  display: block;
  width: 22px;
  height: 2px;
  margin: 4px auto;
  background: var(--nh-primary-dark);
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 0.95rem 1.45rem;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-accent));
  color: var(--nh-white);
  font-weight: 700;
  box-shadow: 0 16px 32px rgba(var(--nh-primary-rgb), 0.18);
  transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease;
}

.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 36px rgba(var(--nh-primary-rgb), 0.24);
}

.button--ghost {
  background: rgba(var(--nh-primary-rgb), 0.08);
  color: var(--nh-primary-dark);
  box-shadow: none;
}

.header-cta {
  min-height: 52px;
  padding-inline: 1.35rem;
  border-radius: 16px;
  font-size: 0.96rem;
  box-shadow: 0 12px 24px rgba(var(--nh-primary-rgb), 0.16);
}

.hero-banner {
  position: relative;
  height: min(66vh, 54rem);
  min-height: 37rem;
  margin-bottom: clamp(1.5rem, 4vw, 3rem);
  overflow: hidden;
  background:
    radial-gradient(circle at top right, rgba(var(--nh-secondary-rgb), 0.16), transparent 26%),
    linear-gradient(180deg, #fcfaf4 0%, var(--nh-paper) 72%, #f6efe3 100%);
}

.hero-banner__shell {
  width: var(--nh-wrap);
  height: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 1.35rem;
  padding-block: clamp(1.25rem, 2.5vh, 1.8rem);
}

.hero-banner__inner {
  display: grid;
  align-content: start;
  gap: 0.9rem;
  max-width: min(46rem, 100%);
}

.hero-banner--immersive {
  isolation: isolate;
  background: var(--nh-primary);
}

.hero-banner__slides {
  position: absolute;
  inset: 0;
}

.hero-banner__slide {
  position: absolute;
  inset: 0;
  margin: 0;
  opacity: 0;
  will-change: opacity;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: opacity 800ms ease;
}

.hero-banner__slide.is-active {
  opacity: 1;
}

.hero-banner__background,
.hero-banner__background-image,
.hero-banner__poster,
.hero-banner__video,
.hero-banner__background-overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.hero-banner__background {
  z-index: -2;
}

.hero-banner__background-image,
.hero-banner__poster,
.hero-banner__video {
  object-fit: cover;
  transform: translateZ(0);
}

.hero-banner__slide .hero-banner__background-image {
  transform: scale(1.02);
  transition: transform 6s ease;
}

.hero-banner__slide.is-active .hero-banner__background-image {
  transform: scale(1.08);
}

.hero-banner__background-overlay {
  background:
    linear-gradient(180deg, rgba(10, 14, 22, 0.42), rgba(10, 14, 22, 0.62)),
    linear-gradient(90deg, rgba(15, 20, 29, 0.26), rgba(15, 20, 29, 0.18));
}

.hero-banner__shell--immersive {
  width: 100%;
  grid-template-rows: 1fr;
  gap: 0;
  padding-block: 0;
}

.hero-banner__inner--immersive {
  width: min(var(--nh-wrap), calc(100vw - 2rem));
  min-height: 100%;
  margin: 0 auto;
  align-content: center;
  justify-items: center;
  gap: 1rem;
  max-width: min(58rem, calc(100vw - 3rem));
  padding-block: clamp(4rem, 10vh, 6.25rem);
  text-align: center;
}

.hero-banner__eyebrow {
  margin: 0;
  color: var(--nh-accent);
  font-size: 0.9rem;
  font-weight: 800;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.hero-banner h1 {
  margin: 0;
  color: var(--nh-primary-dark);
  font-size: clamp(2.7rem, 5.3vw, 4.5rem);
  line-height: 1.02;
}

.hero-banner__summary {
  max-width: 40rem;
  margin: 0;
  color: var(--nh-muted);
  font-size: clamp(1rem, 1.7vw, 1.18rem);
  line-height: 1.45;
}

.hero-banner__actions {
  display: flex;
  justify-content: flex-start;
  margin-top: 0.2rem;
}

.hero-banner__button {
  min-height: 3.8rem;
  min-width: auto;
  padding-inline: 1.85rem;
  border-radius: 999px;
  font-size: 1rem;
  box-shadow: 0 16px 34px rgba(var(--nh-primary-rgb), 0.18);
}

.hero-banner--immersive .hero-banner__eyebrow {
  color: rgba(255, 255, 255, 0.88);
}

.hero-banner--immersive h1 {
  color: var(--nh-white);
  max-width: 12ch;
  font-size: clamp(3rem, 6vw, 5.3rem);
  line-height: 0.95;
  letter-spacing: -0.03em;
  text-shadow: 0 12px 34px rgba(0, 0, 0, 0.22);
}

.hero-banner--immersive .hero-banner__summary {
  max-width: 40rem;
  color: rgba(255, 255, 255, 0.92);
  font-size: clamp(1.05rem, 1.5vw, 1.4rem);
  text-shadow: 0 6px 20px rgba(0, 0, 0, 0.16);
}

.hero-banner--immersive .hero-banner__actions {
  justify-content: center;
  margin-top: 0.5rem;
}

.hero-banner--immersive .hero-banner__button {
  min-height: 4.2rem;
  min-width: min(100%, 20.5rem);
  padding-inline: 2.4rem;
  border-radius: 1.7rem;
  font-size: 1.05rem;
  box-shadow: 0 22px 48px rgba(18, 25, 35, 0.22);
}

.hero-banner__media-panel {
  min-height: 0;
}

.hero-banner__gallery {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(300px, 0.88fr);
  gap: 1rem;
  height: 100%;
}

.hero-banner__gallery--count-1 {
  grid-template-columns: 1fr;
}

.hero-banner__gallery-main,
.hero-banner__gallery-thumb,
.hero-banner__video-shell {
  position: relative;
  min-height: 0;
  margin: 0;
  overflow: hidden;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--nh-shadow);
}

.hero-banner__gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  height: 100%;
}

.hero-banner__gallery--count-2 .hero-banner__gallery-grid {
  grid-template-columns: 1fr;
}

.hero-banner__gallery--count-3 .hero-banner__gallery-grid {
  grid-template-columns: 1fr;
}

.hero-banner__gallery-image,
.hero-banner__poster,
.hero-banner__video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-banner__video-shell {
  height: 100%;
}

.hero-banner__poster,
.hero-banner__video,
.hero-banner__video-overlay {
  position: absolute;
  inset: 0;
}

.hero-banner__video-overlay {
  background:
    linear-gradient(180deg, rgba(17, 21, 30, 0.12), rgba(17, 21, 30, 0.28)),
    linear-gradient(90deg, rgba(var(--nh-primary-rgb), 0.1), rgba(var(--nh-secondary-rgb), 0.08));
}

.section-kicker,
.mini-label,
.footer-kicker {
  letter-spacing: 0.16em;
  text-transform: uppercase;
  font-size: 0.76rem;
  font-weight: 800;
}

.section-kicker {
  color: var(--nh-accent);
  margin-bottom: 1rem;
}

.mini-label {
  color: var(--nh-primary);
  margin-bottom: 0.6rem;
}

.hero-summary,
.section-heading p,
.process-card p,
.quote-section p,
.insight-card p,
.entry-card p,
.page-card p,
.destination-card p,
.testimonial-card p {
  color: var(--nh-muted);
}

.route-card,
.stat-card,
.package-card,
.destination-card,
.process-card,
.timeline-card,
.testimonial-card,
.insight-card,
.entry-card,
.page-card,
.quote-shell {
  border-radius: var(--nh-radius-lg);
  box-shadow: var(--nh-shadow);
}

.route-card,
.package-card,
.process-card,
.timeline-card,
.entry-card,
.page-card,
.prose-block {
  background: rgba(255, 255, 255, 0.88);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}

.route-card {
  position: relative;
  padding: 2rem;
  background:
    linear-gradient(150deg, rgba(255, 255, 255, 0.96), rgba(var(--nh-secondary-rgb), 0.18)),
    var(--nh-white);
  overflow: hidden;
}

.route-card::after {
  content: "";
  position: absolute;
  right: -2rem;
  top: -2rem;
  width: 9rem;
  height: 9rem;
  border-radius: 40%;
  background: radial-gradient(circle, rgba(var(--nh-primary-rgb), 0.14), transparent 72%);
}

.route-stops {
  display: grid;
  gap: 1rem;
  list-style: none;
}

.route-stops li {
  display: grid;
  gap: 0.18rem;
  padding-left: 1.1rem;
  border-left: 2px solid rgba(var(--nh-primary-rgb), 0.18);
}

.route-stops span {
  font-weight: 800;
}

.route-stops small {
  color: var(--nh-muted);
}

.stat-card {
  padding: 1.35rem 1.5rem;
}

.stat-card strong {
  display: block;
  font-size: 1.2rem;
  margin-bottom: 0.45rem;
}

.stat-card span {
  color: var(--nh-muted);
}

.stat-card--gold {
  margin-left: 2rem;
  background: linear-gradient(140deg, rgba(var(--nh-secondary-rgb), 0.24), rgba(255, 255, 255, 0.95));
}

.stat-card--light {
  margin-right: 2rem;
  background: linear-gradient(140deg, rgba(var(--nh-primary-rgb), 0.09), rgba(255, 255, 255, 0.96));
}

.trust-strip {
  padding: 1rem 0 2rem;
}

.trust-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.trust-strip__card {
  padding: 1.35rem 1.25rem;
  border-radius: var(--nh-radius-md);
  background: rgba(255, 255, 255, 0.76);
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
}

.trust-strip__card h4 {
  margin-bottom: 0.35rem;
  color: var(--nh-primary);
  font-size: 1.2rem;
  font-weight: 800;
  font-family: "Playfair Display", Georgia, serif;
  line-height: 1.2;
}

.trust-strip__card p {
  margin: 0;
  color: var(--nh-muted);
}

.section-shell {
  padding: 4.25rem 0;
}

.section-shell--surface {
  background:
    linear-gradient(180deg, rgba(var(--nh-surface-rgb), 0.72), rgba(255, 255, 255, 0.62)),
    var(--nh-surface);
}

.section-heading {
  max-width: 62ch;
  margin-bottom: 2rem;
}

.section-heading h2 {
  font-size: clamp(2.15rem, 3vw, 3.35rem);
}

.package-grid,
.testimonial-grid,
.insight-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.35rem;
}

.package-card,
.testimonial-card,
.insight-card {
  padding: 1.6rem;
}

.package-card {
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(var(--nh-surface-rgb), 0.62)),
    var(--nh-white);
}

.package-card::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 0;
  width: 100%;
  height: 6px;
  background: linear-gradient(90deg, var(--nh-secondary), var(--nh-accent));
}

.package-card__badge {
  display: inline-flex;
  padding: 0.35rem 0.7rem;
  border-radius: 999px;
  background: rgba(var(--nh-primary-rgb), 0.08);
  color: var(--nh-primary-dark);
  font-size: 0.75rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.package-card h3,
.destination-card h3,
.insight-card h3,
.entry-card h2,
.page-card h1 {
  font-size: 1.55rem;
}

.package-card__meta {
  display: flex;
  gap: 0.6rem;
  flex-wrap: wrap;
}

.package-card__meta span {
  display: inline-flex;
  padding: 0.32rem 0.65rem;
  border-radius: 999px;
  background: rgba(var(--nh-secondary-rgb), 0.18);
  color: var(--nh-primary-dark);
  font-size: 0.85rem;
  font-weight: 700;
}

.package-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: 1.4rem;
}

.package-card__footer strong {
  color: var(--nh-primary-dark);
}

.package-card__footer a,
.insight-card a,
.entry-card a,
.timeline-card strong,
.footer-list a:hover,
.footer-bottom a:hover {
  color: var(--nh-accent);
}

.packages-section {
  padding-top: var(--nh-packages-padding-top, 4.75rem);
  padding-bottom: var(--nh-packages-padding-bottom, 4.75rem);
}

.packages-section__heading {
  display: grid;
  gap: var(--nh-packages-heading-gap, 1rem);
  margin-inline: calc(50% - 50vw);
  padding-inline: 1rem;
  width: 100%;
  max-width: none;
  margin-bottom: clamp(1.8rem, 4vw, 2.8rem);
}

.packages-section__heading-inner {
  width: min(1400px, calc(100vw - 2rem));
  margin-inline: auto;
}

.packages-section__kicker {
  margin: 0;
  width: 100%;
}

.packages-section__title {
  margin: 0;
  width: 100%;
  max-width: none;
  font-family: var(--nh-packages-title-font-family, "Playfair Display", Georgia, serif);
  font-size: clamp(2.3rem, 4vw, var(--nh-packages-title-font-size, 52px));
  font-weight: var(--nh-packages-title-font-weight, 500);
  line-height: var(--nh-packages-title-line-height, 1.05);
  color: var(--nh-packages-title-color, var(--nh-ink));
  text-wrap: pretty;
}

.packages-section__description {
  margin: 0;
  width: 100%;
  max-width: none;
  font-family: var(--nh-packages-description-font-family, "Inter", "Segoe UI", sans-serif);
  font-size: var(--nh-packages-description-font-size, 18px);
  font-weight: var(--nh-packages-description-font-weight, 500);
  line-height: var(--nh-packages-description-line-height, 1.65);
  color: var(--nh-packages-description-color, rgba(37, 44, 29, 0.78));
}

.packages-section--title-left .packages-section__kicker,
.packages-section--title-left .packages-section__title {
  text-align: left;
  margin-right: auto;
}

.packages-section--title-center .packages-section__kicker,
.packages-section--title-center .packages-section__title {
  text-align: center;
  margin-inline: auto;
}

.packages-section--title-right .packages-section__kicker,
.packages-section--title-right .packages-section__title {
  text-align: right;
  margin-left: auto;
}

.packages-section--description-left .packages-section__description {
  text-align: left;
  margin-right: auto;
}

.packages-section--description-center .packages-section__description {
  text-align: center;
  margin-inline: auto;
}

.packages-section--description-right .packages-section__description {
  text-align: right;
  margin-left: auto;
}

.packages-section .packages-section__grid {
  display: grid;
  grid-template-columns: repeat(var(--nh-packages-columns-desktop, 3), minmax(0, 1fr));
  gap: var(--nh-packages-gap, 22px);
}

.packages-section .homepage-package-card {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0;
  min-height: 100%;
  border: 1px solid rgba(var(--nh-secondary-rgb), 0.12);
  border-radius: var(--nh-packages-card-radius, 30px);
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.9)),
    var(--nh-white);
  box-shadow: 0 22px 56px rgba(40, 33, 14, 0.08);
}

.packages-section .homepage-package-card::before {
  content: none;
}

.packages-section--equal-height .homepage-package-card {
  height: 100%;
}

.packages-section .homepage-package-card__media {
  display: block;
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 10;
  color: inherit;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.28), transparent 45%),
    linear-gradient(135deg, rgba(var(--nh-secondary-rgb), 0.26), rgba(var(--nh-primary-rgb), 0.52));
}

.packages-section .homepage-package-card__media-fallback {
  display: block;
  width: 100%;
  height: 100%;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 38%),
    linear-gradient(135deg, rgba(var(--nh-secondary-rgb), 0.32), rgba(var(--nh-primary-rgb), 0.6));
}

.packages-section .homepage-package-card__image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.55s ease, filter 0.35s ease;
}

.packages-section .homepage-package-card:hover .homepage-package-card__image,
.packages-section .homepage-package-card:focus-within .homepage-package-card__image {
  transform: scale(1.04);
}

.packages-section .homepage-package-card__content {
  position: relative;
  z-index: 1;
  display: grid;
  align-content: start;
  justify-items: start;
  gap: 0.95rem;
  padding: clamp(1.35rem, 3vw, 2rem);
  flex: 1;
  text-align: left;
}

.packages-section .homepage-package-card__price-badge {
  position: absolute;
  z-index: 2;
  top: 1.1rem;
  right: 1.1rem;
  display: inline-flex;
  align-items: center;
  min-height: 2.8rem;
  padding: 0.6rem 1rem;
  border-radius: 999px;
  background: rgba(var(--nh-secondary-rgb), 0.96);
  color: #fffaf0;
  font-size: 0.98rem;
  font-weight: 800;
  letter-spacing: 0.01em;
  box-shadow: 0 14px 30px rgba(112, 80, 20, 0.2);
}

.packages-section--content-center .homepage-package-card__content {
  justify-items: center;
  text-align: center;
}

.packages-section--content-right .homepage-package-card__content {
  justify-items: end;
  text-align: right;
}

.packages-section .homepage-package-card__badge {
  margin: 0;
}

.packages-section .homepage-package-card__eyebrow {
  margin: 0;
  color: rgba(var(--nh-primary-rgb), 0.82);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.packages-section .homepage-package-card__title {
  margin: 0;
  width: 100%;
  font-size: clamp(1.55rem, 2.3vw, 2.25rem);
  line-height: 1.02;
  text-wrap: balance;
}

.packages-section .homepage-package-card__title a {
  color: inherit;
  text-decoration: none;
}

.packages-section .homepage-package-card__title a:hover,
.packages-section .homepage-package-card__title a:focus-visible {
  color: var(--nh-primary-dark);
}

.packages-section .homepage-package-card__meta {
  width: 100%;
  margin: 0;
}

.packages-section--content-center .homepage-package-card__meta {
  justify-content: center;
}

.packages-section--content-right .homepage-package-card__meta {
  justify-content: flex-end;
}

.packages-section .homepage-package-card__excerpt {
  width: 100%;
  margin: 0;
  color: rgba(37, 44, 29, 0.84);
  font-size: 1rem;
  line-height: 1.65;
}

.packages-section .homepage-package-card__details,
.packages-section .homepage-package-card__traits {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

.packages-section .homepage-package-card__details {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem 1rem;
}

.packages-section .homepage-package-card__detail {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  color: rgba(40, 48, 56, 0.84);
  font-size: 0.95rem;
  font-weight: 600;
  line-height: 1.45;
}

.packages-section .homepage-package-card__detail::before {
  content: "";
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 0.22rem;
  flex: 0 0 0.75rem;
  background: rgba(var(--nh-secondary-rgb), 0.82);
}

.packages-section .homepage-package-card__detail--route::before {
  border-radius: 50%;
  background: rgba(var(--nh-primary-rgb), 0.82);
}

.packages-section .homepage-package-card__detail--price::before {
  background: linear-gradient(135deg, var(--nh-secondary), var(--nh-accent));
}

.packages-section .homepage-package-card__traits {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.packages-section .homepage-package-card__traits li {
  display: inline-flex;
  align-items: center;
  min-height: 2.2rem;
  padding: 0.45rem 0.88rem;
  border-radius: 999px;
  background: rgba(var(--nh-secondary-rgb), 0.12);
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.3;
}

.packages-section .homepage-package-card__footer {
  width: 100%;
  margin-top: auto;
}

.packages-section--content-left .homepage-package-card__footer {
  justify-content: space-between;
}

.packages-section--content-center .homepage-package-card__footer {
  justify-content: center;
}

.packages-section--content-right .homepage-package-card__footer {
  justify-content: flex-end;
}

.packages-section--content-center .homepage-package-card__footer,
.packages-section--content-right .homepage-package-card__footer {
  flex-wrap: wrap;
}

.packages-section .homepage-package-card__price {
  color: var(--nh-primary-dark);
  font-size: 1rem;
  font-weight: 700;
}

.packages-section .homepage-package-card__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  color: var(--nh-accent);
  font-size: 1rem;
  font-weight: 600;
  text-decoration: none;
  transition: transform 0.22s ease, color 0.22s ease, background-color 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease;
}

.packages-section .homepage-package-card__cta:hover,
.packages-section .homepage-package-card__cta:focus-visible {
  color: var(--nh-primary-dark);
  transform: translateY(-1px);
}

.packages-section__empty {
  padding: clamp(1.5rem, 3vw, 2rem);
}

.packages-section__empty h3,
.packages-section__empty p {
  margin: 0;
}

.packages-section__empty p {
  margin-top: 0.8rem;
}

.packages-section--design-1 .homepage-package-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(250, 246, 238, 0.98));
  box-shadow: 0 26px 58px rgba(31, 39, 51, 0.1);
}

.packages-section--design-1 .homepage-package-card__media {
  aspect-ratio: 16 / 11;
  margin: 0.9rem 0.9rem 0;
  border-radius: max(22px, calc(var(--nh-packages-card-radius, 30px) - 8px));
}

.packages-section--design-1 .homepage-package-card__content {
  gap: 1rem;
  padding: 1.25rem 1.5rem 1.5rem;
}

.packages-section--design-1 .homepage-package-card__title {
  font-size: clamp(1.85rem, 2.4vw, 2.4rem);
  line-height: 1.08;
}

.packages-section--design-1 .homepage-package-card__meta span {
  background: rgba(var(--nh-surface-rgb), 0.6);
}

.packages-section--design-1 .homepage-package-card__details {
  display: none;
}

.packages-section--design-1 .homepage-package-card__traits {
  display: none;
}

.packages-section--design-1 .homepage-package-card__footer {
  margin-top: 0.35rem;
}

.packages-section--design-1 .homepage-package-card__price {
  font-size: 1.15rem;
  color: var(--nh-primary-dark);
}

.packages-section--design-1 .homepage-package-card__cta {
  padding: 0;
  min-height: auto;
  border-radius: 0;
  background: transparent;
  color: #b08a3e;
  font-size: 1.02rem;
  font-weight: 700;
  box-shadow: none;
}

.packages-section--design-1 .homepage-package-card__cta::after {
  content: "→";
}

.packages-section--design-2 .homepage-package-card {
  border-top: 6px solid #1e355d;
  background: rgba(255, 255, 255, 0.99);
  box-shadow: 0 20px 44px rgba(17, 35, 70, 0.09);
}

.packages-section--design-2 .homepage-package-card__media {
  aspect-ratio: 4 / 3;
  margin: 0.9rem;
  border-radius: max(22px, calc(var(--nh-packages-card-radius, 30px) - 8px));
}

.packages-section--design-2 .homepage-package-card__content {
  gap: 1.05rem;
  padding-top: 0;
}

.packages-section--design-2 .homepage-package-card__badge,
.packages-section--design-2 .homepage-package-card__meta,
.packages-section--design-2 .homepage-package-card__traits,
.packages-section--design-2 .homepage-package-card__price-badge {
  display: none;
}

.packages-section--design-2 .homepage-package-card__title {
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: clamp(1.85rem, 2.5vw, 2.55rem);
  font-weight: 800;
  line-height: 1.12;
  color: #15305a;
}

.packages-section--design-2 .homepage-package-card__details {
  padding-top: 0.1rem;
  color: rgba(53, 63, 82, 0.82);
}

.packages-section--design-2 .homepage-package-card__footer {
  display: grid;
  gap: 1rem;
}

.packages-section--design-2 .homepage-package-card__price {
  font-size: clamp(1.6rem, 2vw, 2rem);
  color: #18315f;
}

.packages-section--design-2 .homepage-package-card__cta {
  width: 100%;
  justify-content: center;
  min-height: 3.7rem;
  border-radius: 1.35rem;
  background: #f0ac3a;
  color: #fffdf8;
  font-size: 1.18rem;
  font-weight: 800;
  box-shadow: none;
}

.packages-section--design-3 .homepage-package-card {
  border-top: 8px solid #204d86;
  background: rgba(255, 255, 255, 0.99);
  box-shadow: 0 20px 42px rgba(20, 39, 75, 0.08);
}

.packages-section--design-3 .homepage-package-card__media {
  aspect-ratio: 16 / 11;
}

.packages-section--design-3 .homepage-package-card__badge,
.packages-section--design-3 .homepage-package-card__meta,
.packages-section--design-3 .homepage-package-card__traits,
.packages-section--design-3 .homepage-package-card__price-badge {
  display: none;
}

.packages-section--design-3 .homepage-package-card__title {
  color: #ce9b2d;
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: clamp(1.65rem, 2.2vw, 2.2rem);
  font-weight: 800;
  line-height: 1.18;
}

.packages-section--design-3 .homepage-package-card__excerpt {
  color: rgba(24, 31, 38, 0.92);
  font-size: 1.04rem;
  line-height: 1.82;
}

.packages-section--design-3 .homepage-package-card__details {
  display: grid;
  gap: 0.7rem;
  padding-top: 1rem;
  border-top: 1px dashed rgba(21, 43, 77, 0.28);
}

.packages-section--design-3 .homepage-package-card__detail {
  font-size: 1.02rem;
  color: #2d3138;
}

.packages-section--design-3 .homepage-package-card__detail--price {
  font-weight: 800;
}

.packages-section--design-3 .homepage-package-card__footer {
  justify-content: center;
}

.packages-section--design-3 .homepage-package-card__price {
  display: none;
}

.packages-section--design-3 .homepage-package-card__cta {
  justify-content: center;
  margin-inline: auto;
  padding-inline: 1.5rem;
  min-height: 3.2rem;
  border-radius: 999px;
  background: #f5b33d;
  color: #fffdf8;
  font-size: 1.02rem;
  font-weight: 800;
}

.packages-section--design-4 .homepage-package-card {
  min-height: clamp(23rem, 34vw, 29rem);
  background:
    linear-gradient(180deg, rgba(11, 14, 18, 0.04), rgba(8, 11, 16, 0.9)),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.34), rgba(var(--nh-secondary-rgb), 0.24));
  box-shadow: 0 28px 54px rgba(10, 14, 18, 0.24);
  color: #fffdf8;
}

.packages-section--design-4 .homepage-package-card__media {
  position: absolute;
  inset: 0;
  aspect-ratio: auto;
}

.packages-section--design-4 .homepage-package-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8, 11, 14, 0.14), rgba(8, 11, 14, 0.82));
}

.packages-section--design-4 .homepage-package-card__content {
  min-height: 100%;
  align-content: end;
  gap: 0.85rem;
  padding-top: 7rem;
}

.packages-section--design-4 .homepage-package-card__badge,
.packages-section--design-4 .homepage-package-card__meta span,
.packages-section--design-4 .homepage-package-card__traits li {
  background: rgba(255, 255, 255, 0.16);
  color: #fffdf8;
}

.packages-section--design-4 .homepage-package-card__title a,
.packages-section--design-4 .homepage-package-card__excerpt,
.packages-section--design-4 .homepage-package-card__detail,
.packages-section--design-4 .homepage-package-card__price,
.packages-section--design-4 .homepage-package-card__cta,
.packages-section--design-4 .homepage-package-card__eyebrow {
  color: #fffdf8;
}

.packages-section--design-4 .homepage-package-card__details {
  display: none;
}

.packages-section--design-4 .homepage-package-card__footer {
  justify-content: space-between;
}

.packages-section--design-4 .homepage-package-card__cta {
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

.packages-section--design-5 .homepage-package-card--has-media {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
  align-items: stretch;
}

.packages-section--design-5 .homepage-package-card--has-media .homepage-package-card__media {
  height: 100%;
  min-height: 100%;
  aspect-ratio: auto;
}

.packages-section--design-5 .homepage-package-card--has-media .homepage-package-card__image {
  min-height: 100%;
}

.packages-section--design-5 .homepage-package-card__content {
  gap: 0.95rem;
  padding: clamp(1.35rem, 2.8vw, 2rem);
}

.packages-section--design-5 .homepage-package-card__badge {
  background: rgba(var(--nh-accent-rgb), 0.12);
}

.packages-section--design-5 .homepage-package-card__meta {
  display: none;
}

.packages-section--design-5 .homepage-package-card__traits {
  display: none;
}

.packages-section--design-5 .homepage-package-card__details {
  display: grid;
  gap: 0.6rem;
}

.packages-section--design-5 .homepage-package-card__footer {
  justify-content: space-between;
  align-items: center;
}

.packages-section--design-5 .homepage-package-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: var(--nh-primary-dark);
  font-weight: 800;
}

.packages-section--design-5 .homepage-package-card__cta::after {
  content: "→";
}

.packages-section--design-6 .homepage-package-card {
  background: linear-gradient(180deg, rgba(252, 248, 241, 0.98), rgba(245, 238, 224, 0.98));
  box-shadow: 0 24px 48px rgba(71, 54, 22, 0.11);
}

.packages-section--design-6 .homepage-package-card__media {
  aspect-ratio: 4 / 3;
  margin: 1.05rem 1.05rem 0;
  border: 1px solid rgba(var(--nh-secondary-rgb), 0.28);
  outline: 10px solid rgba(255, 255, 255, 0.82);
  outline-offset: -10px;
  border-radius: max(18px, calc(var(--nh-packages-card-radius, 30px) - 10px));
}

.packages-section--design-6 .homepage-package-card__content {
  gap: 1rem;
  padding-top: 1.2rem;
}

.packages-section--design-6 .homepage-package-card__price-badge {
  left: 1.45rem;
  right: auto;
  top: 1.55rem;
}

.packages-section--design-6 .homepage-package-card__meta span {
  background: rgba(var(--nh-surface-rgb), 0.82);
}

.packages-section--design-6 .homepage-package-card__details {
  display: none;
}

.packages-section--design-6 .homepage-package-card__traits li {
  background: rgba(255, 255, 255, 0.82);
  border: 1px solid rgba(var(--nh-secondary-rgb), 0.18);
}

.packages-section--design-6 .homepage-package-card__cta {
  min-height: 3.3rem;
  padding-inline: 1.35rem;
  border-radius: 999px;
  background: #1a3158;
  color: #fffdf8;
  font-weight: 800;
}

.packages-section--design-6 .homepage-package-card__title a:hover,
.packages-section--design-6 .homepage-package-card__title a:focus-visible,
.packages-section--design-6 .homepage-package-card__cta:hover,
.packages-section--design-6 .homepage-package-card__cta:focus-visible {
  color: #fffdf8;
}

.packages-section--design-7 .homepage-package-card {
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(var(--nh-primary-rgb), 0.12);
  box-shadow: 0 16px 34px rgba(25, 33, 44, 0.08);
}

.packages-section--design-7 .homepage-package-card__media {
  aspect-ratio: 3 / 2;
}

.packages-section--design-7 .homepage-package-card__content {
  gap: 0.8rem;
  padding: 1.15rem 1.2rem 1.3rem;
}

.packages-section--design-7 .homepage-package-card__title {
  font-size: clamp(1.35rem, 2vw, 1.85rem);
  line-height: 1.14;
}

.packages-section--design-7 .homepage-package-card__badge,
.packages-section--design-7 .homepage-package-card__traits,
.packages-section--design-7 .homepage-package-card__price-badge {
  display: none;
}

.packages-section--design-7 .homepage-package-card__meta {
  display: none;
}

.packages-section--design-7 .homepage-package-card__details {
  gap: 0.5rem 0.9rem;
}

.packages-section--design-7 .homepage-package-card__excerpt {
  font-size: 0.95rem;
}

.packages-section--design-7 .homepage-package-card__cta {
  display: inline-flex;
  justify-content: center;
  min-height: 3rem;
  padding-inline: 1.15rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.16);
  border-radius: 999px;
  color: var(--nh-primary-dark);
  background: rgba(var(--nh-surface-rgb), 0.34);
}

.packages-section--design-8 .homepage-package-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(250, 246, 238, 0.96));
  box-shadow: 0 24px 54px rgba(31, 25, 15, 0.11);
}

.packages-section--design-8 .homepage-package-card__media {
  aspect-ratio: 16 / 9;
}

.packages-section--design-8 .homepage-package-card__content {
  gap: 0.95rem;
}

.packages-section--design-8 .homepage-package-card__title {
  font-size: clamp(1.65rem, 2.3vw, 2.4rem);
  color: #23304d;
}

.packages-section--design-8 .homepage-package-card__badge {
  position: absolute;
  top: 1.15rem;
  left: 1.15rem;
  z-index: 2;
  background: rgba(23, 43, 78, 0.9);
  color: #fffdf8;
}

.packages-section--design-8 .homepage-package-card__details {
  display: none;
}

.packages-section--design-8 .homepage-package-card__traits li {
  background: rgba(var(--nh-secondary-rgb), 0.14);
}

.packages-section--design-8 .homepage-package-card__footer {
  justify-content: flex-start;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(var(--nh-secondary-rgb), 0.12);
}

.packages-section--design-8 .homepage-package-card__price {
  display: none;
}

.packages-section--design-8 .homepage-package-card__cta {
  width: 100%;
  min-height: 3.35rem;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(var(--nh-secondary-rgb), 0.96), rgba(198, 153, 49, 0.96));
  color: #18305c;
  font-weight: 800;
}

.split-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(1.5rem, 3vw, 2.4rem);
  align-items: start;
}

.split-layout--destinations {
  align-items: start;
}

.destinations-section__heading {
  margin-bottom: 0;
}

.destination-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.1rem;
}

.destination-card {
  position: relative;
  display: grid;
  gap: 0.9rem;
  padding: 1.7rem;
  min-height: 250px;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-primary-rgb), 0.08)),
    var(--nh-white);
  overflow: hidden;
}

.destination-card::after {
  content: "";
  position: absolute;
  right: -2.5rem;
  bottom: -2.75rem;
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(var(--nh-secondary-rgb), 0.18), transparent 72%);
  pointer-events: none;
}

.destination-card__media {
  position: relative;
  display: grid;
  min-height: 13.5rem;
  overflow: hidden;
  border-radius: calc(var(--nh-radius-lg) - 8px);
  background: linear-gradient(140deg, rgba(var(--nh-primary-rgb), 0.16), rgba(var(--nh-secondary-rgb), 0.32));
}

.destination-card__media-link {
  display: block;
  width: 100%;
  height: 100%;
}

.destination-card__image,
.destination-card__image-fallback {
  width: 100%;
  height: 100%;
}

.destination-card__image {
  display: block;
  object-fit: cover;
}

.destination-card__image-fallback {
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.86), rgba(var(--nh-primary-rgb), 0.58));
  color: var(--nh-white);
  font-size: clamp(2.8rem, 4vw, 4rem);
  font-weight: 700;
  font-family: "Playfair Display", Georgia, serif;
}

.destination-card__marker {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--nh-primary), var(--nh-primary-dark));
  color: var(--nh-white);
  font-weight: 800;
}

.destination-card__price-badge {
  display: none;
}

.destination-card__body {
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  min-width: 0;
}

.destination-card__eyebrow {
  margin: 0;
}

.destination-card h3 {
  margin-bottom: 0;
}

.destination-card h3 a {
  color: inherit;
}

.destination-card h3 a:hover,
.destination-card h3 a:focus-visible {
  color: var(--nh-secondary);
}

.destination-card__copy {
  margin-bottom: 0;
}

.destination-card__tags,
.destination-card__footer {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.destination-card__tags span,
.destination-card__meta {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.42rem 0.85rem;
  border-radius: 999px;
  font-size: 0.84rem;
  font-weight: 700;
}

.destination-card__tags span {
  background: rgba(var(--nh-primary-rgb), 0.08);
  color: var(--nh-primary-dark);
}

.destination-card__footer {
  margin-top: auto;
}

.destination-card__meta {
  background: rgba(var(--nh-secondary-rgb), 0.16);
  color: var(--nh-primary-dark);
}

.destination-card__meta--tour {
  background: rgba(var(--nh-primary-rgb), 0.08);
  color: var(--nh-primary-dark);
}

.destination-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  width: fit-content;
  margin-top: auto;
  color: var(--nh-accent);
  font-weight: 700;
}

.destination-card__cta:hover,
.destination-card__cta:focus-visible {
  color: var(--nh-primary-dark);
}

.destinations-section--design-1 .destination-card__media {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 0;
  overflow: visible;
  background: transparent;
  border-radius: 0;
}

.destinations-section--design-1 .destination-card__media-link,
.destinations-section--design-1 .destination-card__image,
.destinations-section--design-1 .destination-card__image-fallback {
  display: none;
}

.destinations-section--design-1 .destination-card__price-badge {
  position: static;
  box-shadow: none;
}

.destinations-section--design-1 .destination-card__body {
  height: 100%;
}

.destinations-section--design-2 .split-layout--destinations,
.destinations-section--design-3 .split-layout--destinations,
.destinations-section--design-4 .split-layout--destinations,
.destinations-section--design-5 .split-layout--destinations,
.destinations-section--design-6 .split-layout--destinations,
.destinations-section--design-7 .split-layout--destinations,
.destinations-section--design-8 .split-layout--destinations,
.destinations-section--design-9 .split-layout--destinations,
.destinations-section--design-10 .split-layout--destinations {
  grid-template-columns: 1fr;
}

.destinations-section--design-2 .destinations-section__heading,
.destinations-section--design-3 .destinations-section__heading,
.destinations-section--design-4 .destinations-section__heading,
.destinations-section--design-5 .destinations-section__heading,
.destinations-section--design-6 .destinations-section__heading,
.destinations-section--design-7 .destinations-section__heading,
.destinations-section--design-8 .destinations-section__heading,
.destinations-section--design-9 .destinations-section__heading,
.destinations-section--design-10 .destinations-section__heading {
  max-width: 72ch;
}

.destinations-section--design-2 .destination-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.35rem;
}

.destinations-section--design-2 .destination-card {
  padding: 1rem;
  min-height: 100%;
}

.destinations-section--design-2 .destination-card__media {
  min-height: 14rem;
}

.destinations-section--design-3 .destination-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.15rem;
}

.destinations-section--design-3 .destination-card {
  padding: 1rem;
  min-height: 100%;
}

.destinations-section--design-3 .destination-card:first-child {
  grid-column: span 2;
  grid-row: span 2;
}

.destinations-section--design-3 .destination-card:first-child .destination-card__media {
  min-height: 21rem;
}

.destinations-section--design-3 .destination-card:first-child h3 {
  font-size: clamp(1.8rem, 2.4vw, 2.5rem);
}

.destinations-section--design-4 .destination-grid {
  grid-template-columns: 1fr;
  gap: 1rem;
}

.destinations-section--design-4 .destination-card {
  grid-template-columns: minmax(15rem, 0.92fr) minmax(0, 1.08fr);
  align-items: stretch;
  min-height: 0;
  padding: 1rem;
  gap: 1.1rem;
}

.destinations-section--design-4 .destination-card__media {
  min-height: 100%;
}

.destinations-section--design-4 .destination-card__body {
  padding: 0.3rem 0.35rem 0.3rem 0;
}

.destinations-section--design-5 .destination-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.4rem;
}

.destinations-section--design-5 .destination-card {
  padding: 0;
  min-height: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: hidden;
}

.destinations-section--design-5 .destination-card::after,
.destinations-section--design-5 .destination-card__eyebrow,
.destinations-section--design-5 .destination-card__copy,
.destinations-section--design-5 .destination-card__tags,
.destinations-section--design-5 .destination-card__footer,
.destinations-section--design-5 .destination-card__cta {
  display: none;
}

.destinations-section--design-5 .destination-card__media {
  min-height: 19rem;
  border-radius: 18px;
}

.destinations-section--design-5 .destination-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.18), rgba(0, 0, 0, 0.52));
}

.destinations-section--design-5 .destination-card__marker {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
  background: rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(8px);
}

.destinations-section--design-5 .destination-card__body {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  place-content: center;
  padding: 2rem;
  text-align: center;
}

.destinations-section--design-5 .destination-card h3 {
  font-size: clamp(1.6rem, 2vw, 2.4rem);
  line-height: 1.12;
  text-transform: uppercase;
}

.destinations-section--design-5 .destination-card h3 a,
.destinations-section--design-5 .destination-card h3 {
  color: var(--nh-white);
}

.destinations-section--design-6 .destination-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.destinations-section--design-6 .destination-card {
  padding: 0;
  min-height: 0;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.09);
}

.destinations-section--design-6 .destination-card__media {
  min-height: 15rem;
  border-radius: 0;
}

.destinations-section--design-6 .destination-card__marker {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  z-index: 1;
  background: rgba(var(--nh-primary-rgb), 0.88);
}

.destinations-section--design-6 .destination-card__body {
  padding: 1.2rem 1.2rem 1.3rem;
}

.destinations-section--design-6 .destination-card__copy,
.destinations-section--design-6 .destination-card__cta {
  display: none;
}

.destinations-section--design-6 .destination-card__tags {
  order: 4;
}

.destinations-section--design-7 .destination-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
}

.destinations-section--design-7 .destination-card {
  padding: 0.8rem;
  border: 1px solid rgba(var(--nh-secondary-rgb), 0.18);
  background: rgba(255, 255, 255, 0.92);
}

.destinations-section--design-7 .destination-card__media {
  min-height: 14rem;
  border-radius: 14px;
}

.destinations-section--design-7 .destination-card__body {
  gap: 0.75rem;
  padding: 0.2rem 0.2rem 0.4rem;
}

.destinations-section--design-7 .destination-card__copy {
  font-size: 0.95rem;
}

.destinations-section--design-7 .destination-card__cta {
  margin-top: 0.25rem;
}

.destinations-section--design-8 .destination-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1.2rem;
}

.destinations-section--design-8 .destination-card {
  padding: 0.9rem;
  min-height: 100%;
}

.destinations-section--design-8 .destination-card:first-child {
  grid-column: span 2;
  grid-row: span 2;
}

.destinations-section--design-8 .destination-card:first-child .destination-card__media {
  min-height: 22rem;
}

.destinations-section--design-8 .destination-card:first-child .destination-card__copy {
  max-width: 42ch;
}

.destinations-section--design-8 .destination-card__media {
  min-height: 12rem;
}

.destinations-section--design-8 .destination-card__cta {
  margin-top: 0.1rem;
}

.destinations-section--design-9 .destination-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.35rem;
}

.destinations-section--design-9 .destination-card {
  padding: 0;
  min-height: 24rem;
  border: 0;
  background: transparent;
  overflow: hidden;
}

.destinations-section--design-9 .destination-card::after,
.destinations-section--design-9 .destination-card__copy,
.destinations-section--design-9 .destination-card__tags,
.destinations-section--design-9 .destination-card__footer {
  display: none;
}

.destinations-section--design-9 .destination-card__media {
  min-height: 24rem;
  border-radius: 18px;
}

.destinations-section--design-9 .destination-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(16, 20, 13, 0.78));
}

.destinations-section--design-9 .destination-card__marker {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 2;
}

.destinations-section--design-9 .destination-card__body {
  position: absolute;
  inset: auto 1.35rem 1.35rem;
  z-index: 2;
  display: grid;
  gap: 0.7rem;
}

.destinations-section--design-9 .destination-card__eyebrow,
.destinations-section--design-9 .destination-card h3 a,
.destinations-section--design-9 .destination-card h3,
.destinations-section--design-9 .destination-card__cta {
  color: var(--nh-white);
}

.destinations-section--design-9 .destination-card__cta {
  margin-top: 0;
}

.destinations-section--design-10 .destination-grid {
  grid-template-columns: 1fr;
  gap: 1.15rem;
}

.destinations-section--design-10 .destination-card {
  grid-template-columns: minmax(17rem, 0.95fr) minmax(0, 1.05fr);
  align-items: stretch;
  min-height: 0;
  padding: 1rem;
  gap: 1.2rem;
}

.destinations-section--design-10 .destination-card:nth-child(even) .destination-card__media {
  order: 2;
}

.destinations-section--design-10 .destination-card:nth-child(even) .destination-card__body {
  order: 1;
}

.destinations-section--design-10 .destination-card__media {
  min-height: 15rem;
}

.destinations-section--design-10 .destination-card__body {
  padding: 0.3rem 0.35rem 0.3rem 0;
}

.process-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 1.35rem;
}

.process-card,
.timeline-card {
  padding: 2rem;
}

.feature-list {
  display: grid;
  gap: 0.9rem;
  list-style: none;
}

.feature-list li {
  position: relative;
  padding-left: 1.35rem;
  color: var(--nh-muted);
}

.feature-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--nh-secondary);
}

.timeline-card {
  background:
    linear-gradient(145deg, rgba(var(--nh-primary-rgb), 0.96), var(--nh-primary-dark)),
    var(--nh-primary);
  color: rgba(255, 255, 255, 0.92);
}

.timeline-card .mini-label,
.timeline-card strong {
  color: var(--nh-secondary);
}

.timeline-list {
  display: grid;
  gap: 1.25rem;
  list-style: none;
}

.timeline-list li {
  display: grid;
  gap: 0.35rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}

.timeline-list li:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.timeline-list span {
  color: rgba(255, 255, 255, 0.78);
}

.testimonial-card {
  position: relative;
  background: rgba(255, 255, 255, 0.9);
}

.testimonial-card::before {
  content: '"';
  position: absolute;
  top: 1rem;
  right: 1.25rem;
  color: rgba(var(--nh-secondary-rgb), 0.4);
  font-size: 4rem;
  line-height: 1;
  font-family: "Playfair Display", Georgia, serif;
}

.testimonial-card cite {
  display: inline-block;
  margin-top: 0.5rem;
  color: var(--nh-primary);
  font-style: normal;
  font-weight: 700;
}

.insight-card {
  background: rgba(255, 255, 255, 0.84);
  border: 1px solid rgba(var(--nh-primary-rgb), 0.06);
}

.prose-block {
  padding: 2rem;
}

.prose-block > *:last-child,
.entry-card > *:last-child,
.insight-card > *:last-child,
.package-card > *:last-child,
.quote-contact > *:last-child {
  margin-bottom: 0;
}

.quote-section {
  padding: 0 0 5rem;
}

.platform-reviews-section__heading {
  text-align: center;
  margin-inline: auto;
}

.platform-reviews-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: clamp(1.2rem, 2.5vw, 2rem);
}

.platform-reviews-card,
.platform-reviews-empty {
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 2rem;
  background:
    linear-gradient(160deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.58)),
    var(--nh-white);
  box-shadow: 0 22px 44px rgba(var(--nh-primary-rgb), 0.07);
}

.platform-reviews-card {
  padding: clamp(1.2rem, 2vw, 1.6rem);
}

.platform-reviews-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  margin-bottom: 1rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid rgba(var(--nh-primary-rgb), 0.08);
}

.platform-reviews-card__header h3 {
  margin: 0;
  font-size: clamp(1.2rem, 2vw, 1.55rem);
}

.platform-reviews-card__body {
  overflow: hidden;
}

.platform-review-fallback {
  display: grid;
  gap: 1rem;
  align-content: start;
  min-height: 100%;
  padding: 0.2rem;
}

.platform-review-fallback__eyebrow {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(var(--nh-primary-rgb), 0.78);
}

.platform-review-fallback__copy {
  margin: 0;
  color: rgba(var(--nh-primary-rgb), 0.72);
}

.platform-review-fallback__cta {
  justify-self: start;
}

.platform-review-fallback--tripadvisor .platform-review-fallback__cta {
  background: #34a853;
  border-color: #34a853;
  color: #fff;
}

.platform-review-fallback--tripadvisor .platform-review-fallback__cta:hover,
.platform-review-fallback--tripadvisor .platform-review-fallback__cta:focus-visible {
  background: #2c8c47;
  border-color: #2c8c47;
  color: #fff;
}

.platform-review-fallback--google .platform-review-fallback__cta {
  background: #4285f4;
  border-color: #4285f4;
  color: #fff;
}

.platform-review-fallback--google .platform-review-fallback__cta:hover,
.platform-review-fallback--google .platform-review-fallback__cta:focus-visible {
  background: #2f69c2;
  border-color: #2f69c2;
  color: #fff;
}

.platform-reviews-card__body iframe,
.platform-reviews-card__body object,
.platform-reviews-card__body embed {
  max-width: 100%;
}

.platform-reviews-card__body > * {
  max-width: 100%;
}

.platform-reviews-empty {
  max-width: 48rem;
  margin-inline: auto;
  padding: 1.6rem;
  text-align: center;
}

.platform-reviews-empty h3 {
  margin-bottom: 0.6rem;
}

html[lang|="de"] .section-heading h2,
html[lang|="de"] .hero-banner__inner h1,
html[lang|="de"] .homepage-package-card__title,
html[lang|="de"] .destination-card h3,
html[lang|="de"] .tour-archive__card h3,
html[lang|="de"] .journal-card__title,
html[lang|="de"] .footer-section-title {
  overflow-wrap: anywhere;
  hyphens: auto;
}

html[lang|="de"] .button,
html[lang|="de"] .homepage-package-card__cta,
html[lang|="de"] .tour-archive__card-cta,
html[lang|="de"] .journal-card__cta,
html[lang|="de"] .hero-banner__button,
html[lang|="de"] .tour-single__sidebar a.button {
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

.quote-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, 0.95fr);
  gap: clamp(1.4rem, 3vw, 2.4rem);
  padding: clamp(1.6rem, 3vw, 2.6rem);
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.86)),
    var(--nh-white);
  color: var(--nh-ink);
  overflow: hidden;
}

.quote-shell h2 {
  color: var(--nh-ink);
}

.quote-shell .section-kicker {
  color: var(--nh-accent);
}

.quote-copy {
  display: grid;
  align-content: start;
  gap: 1rem;
}

.quote-copy__lede {
  max-width: 56ch;
  margin-bottom: 0;
  font-size: 1.04rem;
}

.quote-copy__contacts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
  gap: 0.85rem;
  margin-top: 0.5rem;
}

.quote-copy__contact {
  display: grid;
  gap: 0.3rem;
  padding: 1rem 1.05rem;
  border-radius: 22px;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.1);
  background: rgba(255, 255, 255, 0.84);
  color: var(--nh-ink);
}

.quote-copy__contact span {
  color: var(--nh-muted);
  font-size: 0.86rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.quote-copy__contact strong {
  font-size: 1rem;
}

.quote-copy__contact:hover,
.quote-copy__contact:focus-visible {
  border-color: rgba(var(--nh-secondary-rgb), 0.45);
  box-shadow: 0 18px 38px rgba(31, 38, 30, 0.08);
  transform: translateY(-1px);
}

.quote-form-card {
  display: grid;
  gap: 0.75rem;
  padding: clamp(1.35rem, 2.4vw, 2rem);
  border-radius: calc(var(--nh-radius-lg) - 6px);
  background:
    linear-gradient(180deg, rgba(var(--nh-primary-rgb), 0.98), rgba(var(--nh-primary-rgb), 0.92)),
    var(--nh-primary);
  color: rgba(255, 255, 255, 0.92);
}

.quote-form-card h3 {
  margin-bottom: 0;
  color: var(--nh-white);
  font-size: clamp(1.5rem, 2vw, 2rem);
}

.quote-form-card__intro {
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.78);
}

.quote-form-card__body {
  display: grid;
  gap: 1rem;
}

.quote-form-card__cf7,
.quote-form-card__empty {
  display: grid;
  gap: 1rem;
}

.quote-form-card__empty {
  padding: 1.15rem;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.08);
  border: 1px dashed rgba(255, 255, 255, 0.24);
}

.quote-form-card .wpcf7 form,
.quote-form-card .wpcf7-form {
  display: grid;
  gap: 0.95rem;
}

.quote-form-card .wpcf7 p {
  margin: 0;
}

.quote-form-card label {
  display: grid;
  gap: 0.45rem;
  color: rgba(255, 255, 255, 0.9);
  font-weight: 600;
}

.quote-form-card input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]),
.quote-form-card select,
.quote-form-card textarea {
  width: 100%;
  min-height: 3.15rem;
  padding: 0.9rem 1rem;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.96);
  color: var(--nh-ink);
  box-shadow: none;
}

.quote-form-card textarea {
  min-height: 8rem;
  resize: vertical;
}

.quote-form-card input[type="submit"],
.quote-form-card button,
.quote-form-card .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.4rem;
  padding: 0.95rem 1.45rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--nh-secondary), var(--nh-accent));
  color: var(--nh-white);
  font-weight: 700;
  cursor: pointer;
}

.quote-form-card .wpcf7-spinner {
  margin: 0;
}

.quote-form-card .wpcf7-not-valid-tip,
.quote-form-card .wpcf7-response-output {
  color: var(--nh-white);
}

.site-footer {
  padding: 4rem 0 1.25rem;
  background-color: var(--nh-footer-bg);
  background-image: radial-gradient(circle at top right, rgba(var(--nh-secondary-rgb), 0.18), transparent 26%);
  color: rgba(255, 255, 255, 0.78);
}

.site-footer h2,
.site-footer h3 {
  color: var(--nh-white);
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: var(--nh-footer-section-gap);
  padding-bottom: 2rem;
  align-items: start;
}

.footer-brand,
.footer-contact,
.footer-explore {
  display: grid;
  gap: 0.95rem;
  min-width: 0;
  width: 100%;
}

.footer-brand {
  grid-column: span var(--nh-footer-logo-span);
  order: var(--nh-footer-logo-order);
  justify-items: var(--nh-footer-logo-justify);
  align-self: var(--nh-footer-logo-vertical-align);
  text-align: var(--nh-footer-logo-content-align);
  padding: var(--nh-footer-logo-padding);
  margin-top: var(--nh-footer-logo-margin-top);
  margin-bottom: var(--nh-footer-logo-margin-bottom);
}

.footer-contact {
  grid-column: span var(--nh-footer-contact-span);
  order: var(--nh-footer-contact-order);
  justify-items: var(--nh-footer-contact-justify);
  align-self: var(--nh-footer-contact-vertical-align);
  text-align: var(--nh-footer-contact-content-align);
  padding: var(--nh-footer-contact-padding);
  margin-top: var(--nh-footer-contact-margin-top);
  margin-bottom: var(--nh-footer-contact-margin-bottom);
}

.footer-explore {
  grid-column: span var(--nh-footer-explore-span);
  order: var(--nh-footer-explore-order);
  justify-items: var(--nh-footer-explore-justify);
  align-self: var(--nh-footer-explore-vertical-align);
  text-align: var(--nh-footer-explore-content-align);
  padding: var(--nh-footer-explore-padding);
  margin-top: var(--nh-footer-explore-margin-top);
  margin-bottom: var(--nh-footer-explore-margin-bottom);
}

.footer-brand > *:last-child,
.footer-contact > *:last-child,
.footer-explore > *:last-child {
  margin-bottom: 0;
}

.footer-logo-link {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
}

.footer-logo {
  display: block;
  width: auto;
  height: auto;
  min-width: min(100%, var(--nh-footer-logo-min-width));
  max-width: min(100%, var(--nh-footer-logo-max-width));
  min-height: var(--nh-footer-logo-min-height);
  max-height: var(--nh-footer-logo-max-height);
  object-fit: contain;
}

.footer-kicker {
  color: rgba(var(--nh-secondary-rgb), 0.95);
  margin-bottom: 0.85rem;
}

.footer-list {
  display: grid;
  gap: 0.7rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.footer-section-title {
  margin: 0;
}

.footer-contact__list {
  gap: var(--nh-footer-contact-gap);
}

.footer-contact__list a,
.footer-contact__text {
  color: var(--nh-footer-contact-color);
  font-family: var(--nh-footer-contact-font-family);
  font-size: var(--nh-footer-contact-font-size);
  font-weight: var(--nh-footer-contact-font-weight);
  line-height: var(--nh-footer-contact-line-height);
}

.footer-contact__text {
  margin: 0;
}

.footer-explore .footer-section-title {
  font-family: var(--nh-footer-explore-title-font-family);
  font-size: var(--nh-footer-explore-title-font-size);
  font-weight: var(--nh-footer-explore-title-font-weight);
  color: var(--nh-footer-explore-title-color);
  line-height: 1.2;
}

.footer-explore__menu {
  gap: var(--nh-footer-explore-item-gap);
}

.footer-explore__menu a {
  color: var(--nh-footer-explore-link-color);
  font-family: var(--nh-footer-explore-link-font-family);
  font-size: var(--nh-footer-explore-link-font-size);
  font-weight: var(--nh-footer-explore-link-font-weight);
  line-height: 1.6;
  transition: color 180ms ease, opacity 180ms ease;
}

.footer-explore__menu a:hover {
  color: var(--nh-footer-explore-link-hover-color);
}

.footer-bottom {
  padding-top: 1.1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 0.92rem;
  justify-content: flex-start;
}

.footer-bottom p {
  margin: 0;
}

.content-shell {
  padding: 3.5rem 0 4.5rem;
}

.about-page {
  padding-bottom: 5rem;
}

.about-section {
  padding: 0 0 5rem;
}

.about-hero {
  padding: 2rem 0 5rem;
}

.about-hero__grid,
.about-story__grid,
.about-values__grid,
.about-founder__grid {
  display: grid;
  gap: clamp(1.5rem, 3vw, 3.5rem);
  align-items: center;
}

.about-hero__grid,
.about-values__grid,
.about-founder__grid {
  grid-template-columns: minmax(0, 0.94fr) minmax(320px, 1.06fr);
}

.about-story__grid {
  grid-template-columns: minmax(0, 1.12fr) minmax(280px, 0.88fr);
  align-items: start;
}

.about-story__grid--single,
.about-values__grid--single,
.about-founder__grid--single {
  grid-template-columns: minmax(0, 1fr);
}

.about-hero__copy,
.about-values__content,
.about-founder__content,
.about-cta__copy {
  display: grid;
  align-content: start;
  gap: 1rem;
}

.about-hero__copy h1 {
  margin: 0;
  color: #1d241b;
  font-size: clamp(3rem, 6vw, 5.4rem);
  line-height: 0.94;
  text-wrap: balance;
}

.about-hero__intro,
.about-values__intro,
.about-founder__bio,
.about-cta__text,
.about-story__aside-text {
  color: var(--nh-muted);
  font-size: 1.03rem;
  line-height: 1.8;
}

.about-hero__actions,
.about-cta__actions {
  padding-top: 0.4rem;
}

.about-hero__button,
.about-cta__button {
  min-width: 220px;
  background: linear-gradient(135deg, #4f6143, #b08a3e);
  box-shadow: 0 20px 40px rgba(50, 72, 46, 0.22);
}

.about-hero__media,
.about-founder__media {
  position: relative;
  overflow: hidden;
  border-radius: 2rem;
  background: linear-gradient(145deg, rgba(var(--nh-primary-rgb), 0.18), rgba(var(--nh-secondary-rgb), 0.22));
  box-shadow: var(--nh-shadow);
}

.about-hero__media {
  min-height: 40rem;
}

.about-hero__media img,
.about-founder__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-hero__placeholder {
  width: 100%;
  height: 100%;
  min-height: 40rem;
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.45), transparent 34%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.72), rgba(var(--nh-secondary-rgb), 0.6));
}

.about-story__content,
.about-story__aside-card,
.about-values__card,
.about-testimonials__card,
.about-recognition__item {
  border: 1px solid rgba(79, 97, 67, 0.12);
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 18px 42px rgba(24, 34, 20, 0.08);
}

.about-story__content {
  padding: clamp(1.5rem, 2.3vw, 2.4rem);
  border-radius: 2rem;
}

.about-story__content h2,
.about-values__content h2,
.about-founder__content h2,
.about-testimonials__title,
.about-recognition__title,
.about-cta__copy h2 {
  margin: 0;
  color: #1d241b;
  font-size: clamp(2.1rem, 4vw, 3.5rem);
  line-height: 1.02;
  text-wrap: balance;
}

.about-story__prose {
  color: #3e4638;
}

.about-story__prose p:last-child,
.about-values__intro p:last-child,
.about-founder__bio p:last-child,
.about-cta__text p:last-child,
.about-story__aside-text p:last-child {
  margin-bottom: 0;
}

.about-story__aside {
  position: sticky;
  top: 7rem;
}

.about-story__aside-card {
  display: grid;
  gap: 1.2rem;
  padding: 1.6rem;
  border-radius: 1.9rem;
  background:
    radial-gradient(circle at top left, rgba(var(--nh-secondary-rgb), 0.14), transparent 34%),
    rgba(255, 255, 255, 0.9);
}

.about-story__aside-card h3,
.about-values__card h3,
.about-founder__identity h3 {
  margin: 0;
  color: #243020;
  font-size: 1.6rem;
  line-height: 1.12;
}

.about-story__stats {
  display: grid;
  gap: 0.9rem;
}

.about-story__stat {
  display: grid;
  gap: 0.2rem;
  padding: 1rem 1.05rem;
  border-radius: 1.2rem;
  background: rgba(233, 223, 200, 0.52);
}

.about-story__stat strong {
  color: #4f6143;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.5rem;
  font-weight: 600;
  line-height: 1;
}

.about-story__stat span {
  color: #5a6555;
  font-size: 0.96rem;
  font-weight: 600;
}

.about-values__media {
  position: relative;
  min-height: 34rem;
}

.about-values__media-primary,
.about-values__media-secondary {
  position: absolute;
  overflow: hidden;
  border-radius: 1.8rem;
  box-shadow: var(--nh-shadow);
}

.about-values__media-primary {
  inset: 0 12% 12% 0;
}

.about-values__media-secondary {
  right: 0;
  bottom: 0;
  width: 43%;
  height: 50%;
  border: 8px solid rgba(255, 255, 255, 0.82);
}

.about-values__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.about-values__cards {
  display: grid;
  gap: 1rem;
  padding-top: 0.65rem;
}

.about-values__card {
  padding: 1.25rem 1.3rem;
  border-radius: 1.4rem;
}

.about-values__card p {
  margin: 0;
  color: #5f6756;
  font-size: 0.98rem;
  line-height: 1.72;
}

.about-founder__media {
  min-height: 34rem;
}

.about-founder__content {
  padding: clamp(1.5rem, 2vw, 2rem) 0;
}

.about-founder__identity {
  display: grid;
  gap: 0.25rem;
}

.about-founder__identity p {
  margin: 0;
  color: #6a735f;
  font-size: 0.96rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.about-founder__quote {
  margin: 0;
  padding: 1.3rem 1.45rem;
  border-left: 4px solid var(--nh-secondary);
  border-radius: 0 1.25rem 1.25rem 0;
  background: rgba(233, 223, 200, 0.48);
}

.about-founder__quote p {
  margin: 0;
  color: #32412c;
  font-family: "Playfair Display", Georgia, serif;
  font-size: 1.45rem;
  line-height: 1.35;
}

.about-testimonials .wrap,
.about-recognition .wrap {
  display: grid;
  gap: 1.2rem;
}

.about-testimonials__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.1rem;
}

.about-testimonials__card {
  display: grid;
  gap: 1.1rem;
  padding: 1.4rem;
  border-radius: 1.6rem;
}

.about-testimonials__card blockquote {
  margin: 0;
}

.about-testimonials__card blockquote p {
  margin: 0;
  color: #3f4c39;
  font-size: 1rem;
  line-height: 1.78;
}

.about-testimonials__card footer {
  display: grid;
  gap: 0.25rem;
}

.about-testimonials__card strong {
  color: #1f281d;
  font-size: 1rem;
  font-weight: 800;
}

.about-testimonials__card span {
  color: #6d7568;
  font-size: 0.92rem;
}

.about-recognition__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.about-recognition__item {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 5.4rem;
  padding: 1rem 1.1rem;
  border-radius: 1.45rem;
  color: #33412d;
  font-size: 1rem;
  font-weight: 700;
  text-align: center;
}

.about-cta {
  padding-bottom: 0;
}

.about-cta__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 1.5rem;
  align-items: center;
  padding: clamp(1.65rem, 3vw, 2.6rem);
  border-radius: 2rem;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.18), transparent 34%),
    linear-gradient(135deg, #4f6143, #6b7f5b 42%, #b08a3e 100%);
  box-shadow: 0 26px 60px rgba(39, 55, 34, 0.18);
}

.about-cta__copy .section-kicker,
.about-cta__copy h2,
.about-cta__text {
  color: #fffdf7;
}

.about-cta__text {
  font-size: 1rem;
}

.about-cta__button {
  min-width: 230px;
  background: #fffdf7;
  color: #33412d;
  box-shadow: none;
}

.about-cta__button:hover,
.about-cta__button:focus-visible {
  background: #f4ead4;
  color: #2b3626;
}

@media (max-width: 1080px) {
  .about-hero__grid,
  .about-story__grid,
  .about-values__grid,
  .about-founder__grid,
  .about-cta__inner {
    grid-template-columns: 1fr;
  }

  .about-story__aside {
    position: static;
  }

  .about-testimonials__grid,
  .about-recognition__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .about-hero__media {
    min-height: 28rem;
    order: -1;
  }

  .about-values__media {
    min-height: 28rem;
  }

  .about-founder__media {
    min-height: 26rem;
  }
}

@media (max-width: 760px) {
  .about-page {
    padding-bottom: 4rem;
  }

  .about-section,
  .about-hero {
    padding-bottom: 3.5rem;
  }

  .about-hero__copy h1 {
    font-size: clamp(2.4rem, 11vw, 3.4rem);
  }

  .about-story__content,
  .about-story__aside-card,
  .about-testimonials__card,
  .about-values__card,
  .about-recognition__item,
  .about-cta__inner {
    border-radius: 1.5rem;
  }

  .about-values__media {
    min-height: 24rem;
  }

  .about-values__media-primary {
    inset: 0 8% 10% 0;
  }

  .about-values__media-secondary {
    width: 48%;
    height: 48%;
    border-width: 6px;
  }

  .about-testimonials__grid,
  .about-recognition__grid {
    grid-template-columns: 1fr;
  }

  .about-hero__button,
  .about-cta__button {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 520px) {
  .about-hero__media,
  .about-hero__placeholder {
    min-height: 22rem;
  }

  .about-values__media {
    min-height: 20rem;
  }

  .about-values__media-secondary {
    width: 50%;
    height: 44%;
  }

  .about-founder__quote p {
    font-size: 1.2rem;
  }
}

.contact-page {
  padding-bottom: 5rem;
}

.contact-page__hero,
.contact-page__main {
  padding: 2rem 0 4.5rem;
}

.contact-page__hero-grid,
.contact-page__main-grid {
  display: grid;
  gap: clamp(1.5rem, 3vw, 3.25rem);
}

.contact-page__hero-grid {
  grid-template-columns: minmax(0, 0.92fr) minmax(320px, 1.08fr);
  align-items: center;
}

.contact-page__main-grid {
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, 0.98fr);
  align-items: start;
}

.contact-page__hero-copy,
.contact-page__details {
  display: grid;
  align-content: start;
  gap: 1rem;
}

.contact-page__hero-copy h1,
.contact-page__details h2,
.contact-page__form-head h2 {
  margin: 0;
  color: #1d241b;
}

.contact-page__hero-copy h1 {
  font-size: clamp(3rem, 6vw, 5.2rem);
  line-height: 0.95;
  text-wrap: balance;
}

.contact-page__details h2,
.contact-page__form-head h2 {
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.02;
}

.contact-page__hero-intro,
.contact-page__form-intro,
.contact-page__prose {
  color: var(--nh-muted);
  font-size: 1.02rem;
  line-height: 1.8;
}

.contact-page__hero-media {
  overflow: hidden;
  min-height: 36rem;
  border-radius: 2rem;
  background: linear-gradient(145deg, rgba(var(--nh-primary-rgb), 0.18), rgba(var(--nh-secondary-rgb), 0.22));
  box-shadow: var(--nh-shadow);
}

.contact-page__hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.contact-page__hero-placeholder {
  width: 100%;
  height: 100%;
  min-height: 36rem;
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.44), transparent 36%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.76), rgba(var(--nh-secondary-rgb), 0.56));
}

.contact-page__prose,
.contact-page__detail-card,
.contact-page__form-card {
  border: 1px solid rgba(79, 97, 67, 0.12);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 44px rgba(24, 34, 20, 0.08);
}

.contact-page__prose {
  padding: 1.45rem 1.5rem;
  border-radius: 1.7rem;
}

.contact-page__prose p:last-child,
.contact-page__form-intro p:last-child {
  margin-bottom: 0;
}

.contact-page__detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.contact-page__detail-card {
  display: grid;
  gap: 0.65rem;
  padding: 1.2rem 1.25rem;
  border-radius: 1.5rem;
}

.contact-page__detail-card h3 {
  margin: 0;
  color: #243020;
  font-size: 1.2rem;
  line-height: 1.15;
}

.contact-page__detail-card a,
.contact-page__detail-card p {
  margin: 0;
  color: #5b6754;
  font-size: 1rem;
  line-height: 1.75;
}

.contact-page__detail-card a {
  font-weight: 600;
}

.contact-page__detail-card a:hover,
.contact-page__detail-card a:focus-visible {
  color: var(--nh-primary-dark);
}

.contact-page__form-shell {
  position: sticky;
  top: 7rem;
}

.contact-page__form-card {
  overflow: hidden;
  border-radius: 2rem;
}

.contact-page__form-head {
  padding: 1.3rem 1.45rem;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-secondary));
}

.contact-page__form-head h2 {
  color: #fffdf7;
  font-size: clamp(1.6rem, 3vw, 2.2rem);
}

.contact-page__form-body {
  display: grid;
  gap: 1rem;
  padding: 1.4rem 1.5rem 1.6rem;
}

.contact-page__cf7 .wpcf7,
.contact-page__cf7 .wpcf7 form {
  display: block;
  width: 100%;
}

.contact-page__cf7 .wpcf7 form {
  display: grid;
  gap: 0.85rem;
}

.contact-page__cf7 .wpcf7 p {
  margin: 0;
}

.contact-page__cf7 label {
  display: block;
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
}

.contact-page__cf7 .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.42rem;
}

.contact-page__cf7 input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.contact-page__cf7 input[type='email'],
.contact-page__cf7 input[type='tel'],
.contact-page__cf7 input[type='text'],
.contact-page__cf7 select,
.contact-page__cf7 textarea {
  width: 100%;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.14);
  border-radius: 18px;
  background: var(--nh-white);
  color: var(--nh-ink);
  font: inherit;
}

.contact-page__cf7 input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.contact-page__cf7 input[type='email'],
.contact-page__cf7 input[type='tel'],
.contact-page__cf7 input[type='text'],
.contact-page__cf7 select {
  min-height: 3.2rem;
  padding: 0 0.95rem;
}

.contact-page__cf7 textarea {
  min-height: 7.8rem;
  padding: 0.95rem;
  resize: vertical;
}

.contact-page__cf7 input:focus,
.contact-page__cf7 select:focus,
.contact-page__cf7 textarea:focus {
  outline: 0;
  border-color: rgba(var(--nh-secondary-rgb), 0.72);
  box-shadow: 0 0 0 4px rgba(var(--nh-secondary-rgb), 0.14);
}

.contact-page__cf7 .wpcf7-submit {
  width: 100%;
  min-height: 52px;
  padding: 0.95rem 1.45rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-accent));
  color: var(--nh-white);
  font-weight: 700;
  box-shadow: 0 16px 32px rgba(var(--nh-primary-rgb), 0.18);
  cursor: pointer;
  transition: transform 180ms ease, box-shadow 180ms ease;
}

.contact-page__cf7 .wpcf7-submit:hover,
.contact-page__cf7 .wpcf7-submit:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 20px 36px rgba(var(--nh-primary-rgb), 0.24);
}

.contact-page__cf7 .wpcf7-not-valid-tip {
  margin-top: 0.35rem;
  font-size: 0.82rem;
  font-weight: 600;
}

.contact-page__cf7 .wpcf7-response-output {
  margin: 0 !important;
  padding: 0.9rem 1rem !important;
  border: 0 !important;
  border-radius: 16px;
  font-weight: 700;
}

.contact-page__cf7 .wpcf7 form.sent .wpcf7-response-output {
  background: rgba(65, 145, 86, 0.12);
  color: #346d44;
}

.contact-page__cf7 .wpcf7 form.invalid .wpcf7-response-output,
.contact-page__cf7 .wpcf7 form.failed .wpcf7-response-output,
.contact-page__cf7 .wpcf7 form.aborted .wpcf7-response-output,
.contact-page__cf7 .wpcf7 form.unaccepted .wpcf7-response-output {
  background: rgba(192, 86, 63, 0.1);
  color: #a24631;
}

.contact-page__cf7-empty {
  margin: 0;
  padding: 1rem 1.1rem;
  border-radius: 18px;
  background: rgba(var(--nh-secondary-rgb), 0.12);
  color: #6b5727;
  font-size: 0.96rem;
  font-weight: 600;
  line-height: 1.65;
}

@media (max-width: 1080px) {
  .contact-page__hero-grid,
  .contact-page__main-grid {
    grid-template-columns: 1fr;
  }

  .contact-page__form-shell {
    position: static;
  }

  .contact-page__hero-media {
    min-height: 28rem;
    order: -1;
  }
}

@media (max-width: 760px) {
  .contact-page {
    padding-bottom: 4rem;
  }

  .contact-page__hero,
  .contact-page__main {
    padding-bottom: 3.5rem;
  }

  .contact-page__hero-copy h1 {
    font-size: clamp(2.4rem, 11vw, 3.4rem);
  }

  .contact-page__detail-grid {
    grid-template-columns: 1fr;
  }

  .contact-page__prose,
  .contact-page__detail-card,
  .contact-page__form-card {
    border-radius: 1.45rem;
  }
}

@media (max-width: 520px) {
  .contact-page__hero-media,
  .contact-page__hero-placeholder {
    min-height: 22rem;
  }
}

.tour-archive {
  padding: 1.4rem 0 5rem;
}

.tour-archive__hero {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(320px, 1.04fr);
  gap: clamp(1.5rem, 3vw, 3rem);
  align-items: center;
  padding: 0.85rem 0 3rem;
}

.tour-archive__hero-copy {
  display: grid;
  align-content: start;
  gap: 1.15rem;
}

.tour-archive__breadcrumbs {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  color: #71809d;
  font-size: 0.98rem;
  font-weight: 600;
}

.tour-archive__breadcrumbs a {
  color: #32486f;
}

.tour-archive__hero-copy h1,
.tour-archive__found,
.tour-archive__card-body h3 {
  font-family: "Inter", "Segoe UI", sans-serif;
}

.tour-archive__hero-copy h1 {
  margin: 0;
  color: #17345f;
  font-size: clamp(2.55rem, 5vw, 4.15rem);
  font-weight: 800;
  line-height: 1.1;
}

.tour-archive__hero-description {
  position: relative;
  max-width: 43rem;
  color: #44536f;
  font-size: clamp(1.02rem, 1.5vw, 1.15rem);
  font-weight: 500;
  line-height: 1.72;
}

.tour-archive__hero-description.is-collapsed {
  max-height: 14rem;
  overflow: hidden;
}

.tour-archive__hero-description.is-collapsed::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 5rem;
  background: linear-gradient(180deg, rgba(248, 244, 234, 0), rgba(248, 244, 234, 0.98));
  pointer-events: none;
}

.tour-archive__hero-description p:last-child {
  margin-bottom: 0;
}

.tour-archive__hero-more {
  justify-self: start;
  padding: 0;
  border: 0;
  background: transparent;
  color: #f0ac3a;
  font-size: 1rem;
  font-weight: 800;
  cursor: pointer;
}

.tour-archive__hero-cta {
  justify-content: center;
  justify-self: start;
  min-width: min(100%, 17rem);
  min-height: 4.35rem;
  padding-inline: 1.75rem;
  border-radius: 1.4rem;
  background: #f0ac3a;
  color: #fffdf8;
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: 1.1rem;
  font-weight: 800;
  box-shadow: 0 18px 34px rgba(240, 172, 58, 0.26);
}

.tour-archive__hero-cta:hover,
.tour-archive__hero-cta:focus-visible {
  color: #fffdf8;
  background: #e4a22f;
}

.tour-archive__hero-media {
  overflow: hidden;
  min-height: clamp(24rem, 45vw, 39rem);
  border-radius: clamp(2rem, 7vw, 7rem) 1.6rem 1.6rem 1.6rem;
  background: linear-gradient(135deg, rgba(23, 52, 95, 0.16), rgba(240, 172, 58, 0.18));
  box-shadow: 0 26px 56px rgba(23, 39, 68, 0.14);
}

.tour-archive__hero-media img,
.tour-archive__hero-placeholder {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.tour-archive__hero-placeholder {
  display: block;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.32), transparent 34%),
    linear-gradient(135deg, rgba(23, 52, 95, 0.34), rgba(240, 172, 58, 0.24));
}

.tour-archive__directory {
  display: grid;
  gap: 1.55rem;
}

.tour-archive__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.tour-archive__found {
  margin: 0;
  color: #1a3158;
  font-size: clamp(1.8rem, 2.2vw, 2.35rem);
  font-weight: 800;
}

.tour-archive__sort {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  color: #1a3158;
  font-size: 1rem;
  font-weight: 700;
}

.tour-archive__sort label {
  margin: 0;
}

.tour-archive__sort select {
  min-width: 13rem;
  min-height: 3rem;
  padding: 0 1rem;
  border: 1px solid rgba(23, 52, 95, 0.12);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.9);
  color: #42506b;
}

.tour-archive__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.tour-archive__chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.8rem;
  padding: 0.55rem 1.15rem;
  border: 1px solid rgba(23, 52, 95, 0.1);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.76);
  color: #44536f;
  font-size: 0.98rem;
  font-weight: 600;
  transition: border-color 180ms ease, color 180ms ease, background-color 180ms ease, transform 180ms ease;
}

.tour-archive__chip:hover,
.tour-archive__chip:focus-visible,
.tour-archive__chip.is-active {
  border-color: rgba(240, 172, 58, 0.45);
  background: rgba(255, 250, 241, 0.95);
  color: #17345f;
  transform: translateY(-1px);
}

.tour-archive__grid {
  display: grid;
  grid-template-columns: minmax(240px, 0.82fr) minmax(0, 1.88fr);
  gap: 1.35rem;
  align-items: start;
}

.tour-archive__filters {
  position: sticky;
  top: 6.3rem;
}

.tour-archive__panel {
  overflow: hidden;
  border: 1px solid rgba(23, 52, 95, 0.08);
  border-radius: 1.85rem;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 44px rgba(23, 39, 68, 0.08);
}

.tour-archive__panel {
  padding: 1.45rem 1.2rem 1.35rem;
}

.tour-archive__filters-form {
  display: grid;
  gap: 0;
}

.tour-archive__filter-group + .tour-archive__filter-group {
  margin-top: 1.2rem;
  padding-top: 1.2rem;
  border-top: 1px solid rgba(23, 52, 95, 0.1);
}

.tour-archive__panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.tour-archive__panel-head h3,
.tour-archive__inquiry-head h3 {
  margin: 0;
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: 1.15rem;
  font-weight: 800;
}

.tour-archive__panel-head h3 {
  color: #1a3158;
}

.tour-archive__panel-head a {
  color: #f0ac3a;
  font-size: 0.92rem;
  font-weight: 700;
}

.tour-archive__destination-form {
  display: block;
}

.tour-archive__destination-list,
.tour-archive__filter-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem 1rem;
}

.tour-archive__destination-option,
.tour-archive__filter-option {
  display: flex;
  align-items: flex-start;
  gap: 0.7rem;
  color: #44536f;
  font-size: 0.98rem;
  font-weight: 500;
  cursor: pointer;
}

.tour-archive__destination-option input,
.tour-archive__filter-option input {
  position: relative;
  flex: 0 0 1.35rem;
  width: 1.35rem;
  height: 1.35rem;
  margin-top: 0.1rem;
  border: 1px solid rgba(23, 52, 95, 0.24);
  border-radius: 50%;
  background: #fff;
  appearance: none;
}

.tour-archive__destination-option input:checked,
.tour-archive__filter-option input:checked {
  border-color: #f0ac3a;
  box-shadow: 0 0 0 2px rgba(240, 172, 58, 0.12);
}

.tour-archive__destination-option input:checked::after,
.tour-archive__filter-option input:checked::after {
  content: "";
  position: absolute;
  inset: 0.22rem;
  border-radius: 50%;
  background: #f0ac3a;
}

.tour-archive__filter-range {
  display: grid;
  gap: 0.75rem;
}

.tour-archive__filter-range-input {
  width: 100%;
  accent-color: #f0ac3a;
}

.tour-archive__filter-range-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  color: #5b6881;
  font-size: 0.92rem;
  font-weight: 600;
}

.tour-archive__filter-range-meta output {
  color: #1a3158;
  font-weight: 800;
  text-align: center;
}

.tour-archive__filters-actions {
  padding-top: 1.35rem;
  margin-top: 1.25rem;
  border-top: 1px solid rgba(23, 52, 95, 0.1);
}

.tour-archive__filters-clear {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  width: 100%;
  border: 1px solid rgba(23, 52, 95, 0.12);
  border-radius: 1rem;
  background: rgba(255, 255, 255, 0.72);
  color: #1a3158;
  font-size: 0.98rem;
  font-weight: 800;
}

.tour-archive__filters-clear:hover,
.tour-archive__filters-clear:focus-visible {
  background: rgba(255, 250, 241, 0.95);
  border-color: rgba(240, 172, 58, 0.45);
  color: #17345f;
}

.tour-archive__results {
  display: grid;
  gap: 1.15rem;
  scroll-margin-top: 7rem;
}

.tour-archive__cards {
  display: grid;
  gap: 1rem;
}

.tour-archive__card {
  display: grid;
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
  gap: 1.15rem;
  align-items: stretch;
  padding: 0.95rem;
  border: 1px solid rgba(23, 52, 95, 0.08);
  border-radius: 2rem;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 42px rgba(23, 39, 68, 0.06);
}

.tour-archive__card-media {
  overflow: hidden;
  border-radius: 1.5rem;
  background: linear-gradient(135deg, rgba(23, 52, 95, 0.16), rgba(240, 172, 58, 0.18));
}

.tour-archive__card-media img,
.tour-archive__card-media-fallback {
  width: 100%;
  height: 100%;
  min-height: 17rem;
  object-fit: cover;
}

.tour-archive__card-media-fallback {
  display: block;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.32), transparent 36%),
    linear-gradient(135deg, rgba(23, 52, 95, 0.36), rgba(240, 172, 58, 0.28));
}

.tour-archive__card-body {
  display: grid;
  align-content: start;
  gap: 0.75rem;
  padding: 0.35rem 0.2rem 0.2rem 0;
}

.tour-archive__card-body h3 {
  margin: 0;
  color: #1a3158;
  font-size: clamp(1.38rem, 1.9vw, 1.9rem);
  font-weight: 800;
  line-height: 1.18;
}

.tour-archive__card-body h3 a {
  color: inherit;
}

.tour-archive__card-excerpt {
  margin: 0;
  color: #54627d;
  font-size: 1.02rem;
  line-height: 1.62;
}

.tour-archive__card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem 1rem;
  margin: 0;
  color: #5b6881;
  font-size: 1rem;
  font-weight: 600;
}

.tour-archive__card-meta span {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
}

.tour-archive__card-meta svg {
  width: 1.1rem;
  height: 1.1rem;
}

.tour-archive__card-footer {
  display: grid;
  gap: 0.95rem;
  margin-top: auto;
}

.tour-archive__card-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.tour-archive__card-price {
  color: #1a3158;
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: clamp(1.55rem, 2vw, 2.2rem);
  font-weight: 800;
  line-height: 1.1;
}

.tour-archive__card-badge {
  display: inline-flex;
  align-items: center;
  min-height: 2.45rem;
  padding: 0.45rem 1rem;
  border: 1px solid rgba(240, 172, 58, 0.6);
  border-radius: 999px;
  color: #dc9a27;
  font-size: 0.95rem;
  font-weight: 700;
}

.tour-archive__card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 4.15rem;
  width: 100%;
  border-radius: 1.15rem;
  background: #f0ac3a;
  color: #fffdf8;
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: 1.12rem;
  font-weight: 800;
  text-decoration: none;
}

.tour-archive__card-cta:hover,
.tour-archive__card-cta:focus-visible {
  color: #fffdf8;
  background: #e4a22f;
}

.tour-archive__inquiry-head {
  padding: 1.15rem 1.3rem;
  background: #1a3158;
  color: #fffdf8;
  text-align: center;
}

.tour-archive__cf7 {
  padding: 1.2rem;
}

.tour-archive__cf7 .wpcf7,
.tour-archive__cf7 .wpcf7 form {
  display: block;
  width: 100%;
}

.tour-archive__cf7 .wpcf7 form {
  display: grid;
  gap: 0.85rem;
}

.tour-archive__cf7 .wpcf7 p {
  margin: 0;
}

.tour-archive__cf7 label {
  display: block;
  color: #4d5972;
  font-size: 0.92rem;
  font-weight: 700;
}

.tour-archive__cf7 .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.42rem;
}

.tour-archive__cf7 input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.tour-archive__cf7 input[type='date'],
.tour-archive__cf7 input[type='email'],
.tour-archive__cf7 input[type='number'],
.tour-archive__cf7 input[type='tel'],
.tour-archive__cf7 input[type='text'],
.tour-archive__cf7 select,
.tour-archive__cf7 textarea {
  width: 100%;
  border: 1px solid rgba(23, 52, 95, 0.12);
  border-radius: 1.15rem;
  background: #fff;
  color: #20304d;
  font: inherit;
}

.tour-archive__cf7 input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.tour-archive__cf7 input[type='date'],
.tour-archive__cf7 input[type='email'],
.tour-archive__cf7 input[type='number'],
.tour-archive__cf7 input[type='tel'],
.tour-archive__cf7 input[type='text'],
.tour-archive__cf7 select {
  min-height: 3.25rem;
  padding: 0 0.95rem;
}

.tour-archive__cf7 textarea {
  min-height: 7rem;
  padding: 0.95rem;
  resize: vertical;
}

.tour-archive__cf7 input:focus,
.tour-archive__cf7 select:focus,
.tour-archive__cf7 textarea:focus {
  outline: 0;
  border-color: rgba(240, 172, 58, 0.72);
  box-shadow: 0 0 0 4px rgba(240, 172, 58, 0.14);
}

.tour-archive__cf7 .wpcf7-submit {
  width: 100%;
  min-height: 3.7rem;
  padding: 0.95rem 1.45rem;
  border: 0;
  border-radius: 1rem;
  background: #f0ac3a;
  color: #fffdf8;
  font-weight: 800;
  cursor: pointer;
}

.tour-archive__cf7 .wpcf7-submit:hover,
.tour-archive__cf7 .wpcf7-submit:focus-visible {
  background: #e4a22f;
}

.tour-archive__cf7 .wpcf7-not-valid-tip {
  margin-top: 0.35rem;
  font-size: 0.82rem;
  font-weight: 600;
}

.tour-archive__cf7 .wpcf7-response-output {
  margin: 0 !important;
  padding: 0.9rem 1rem !important;
  border: 0 !important;
  border-radius: 1rem;
  font-weight: 700;
}

.tour-archive__cf7 .wpcf7 form.sent .wpcf7-response-output {
  background: rgba(65, 145, 86, 0.12);
  color: #346d44;
}

.tour-archive__cf7 .wpcf7 form.invalid .wpcf7-response-output,
.tour-archive__cf7 .wpcf7 form.failed .wpcf7-response-output,
.tour-archive__cf7 .wpcf7 form.aborted .wpcf7-response-output,
.tour-archive__cf7 .wpcf7 form.unaccepted .wpcf7-response-output {
  background: rgba(192, 86, 63, 0.1);
  color: #a24631;
}

.tour-archive__pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  padding: 0;
  list-style: none;
}

.tour-archive__pagination li {
  list-style: none;
}

.tour-archive__empty {
  padding: 2rem;
}

.destination-directory {
  padding-bottom: 5rem;
}

.destination-directory__hero,
.destination-directory__listing {
  padding: 1.6rem 0 3.8rem;
}

.destination-directory__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.92fr);
  gap: clamp(1.5rem, 3vw, 2.75rem);
  align-items: center;
}

.destination-directory__hero-copy {
  display: grid;
  gap: 1.1rem;
  align-content: start;
}

.destination-directory__hero-copy h1,
.destination-directory__section-head h2,
.destination-directory__card-body h3 {
  color: var(--nh-primary-dark);
}

.destination-directory__hero-copy h1 {
  margin: 0;
  font-size: clamp(2.7rem, 5vw, 4.5rem);
  line-height: 1.03;
}

.destination-directory__hero-intro {
  max-width: 44rem;
  color: #4d5948;
  font-size: 1.04rem;
  line-height: 1.8;
}

.destination-directory__hero-intro > *:first-child {
  margin-top: 0;
}

.destination-directory__hero-intro > *:last-child {
  margin-bottom: 0;
}

.destination-directory__hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.95rem 1.2rem;
}

.destination-directory__hero-button {
  min-width: 15.5rem;
}

.destination-directory__hero-link {
  display: inline-flex;
  align-items: center;
  color: var(--nh-primary-dark);
  font-size: 0.98rem;
  font-weight: 800;
}

.destination-directory__hero-link:hover,
.destination-directory__hero-link:focus-visible {
  color: var(--nh-secondary);
}

.destination-directory__hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-top: 0.25rem;
}

.destination-directory__hero-pill {
  display: inline-flex;
  align-items: center;
  min-height: 2.7rem;
  padding: 0.5rem 1rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.76);
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
  transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

.destination-directory__hero-pill:hover,
.destination-directory__hero-pill:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(var(--nh-secondary-rgb), 0.48);
  background: rgba(var(--nh-surface-rgb), 0.5);
}

.destination-directory__hero-media {
  position: relative;
  overflow: hidden;
  min-height: clamp(23rem, 44vw, 37rem);
  border-radius: clamp(2rem, 7vw, 6.5rem) 1.8rem 1.8rem 1.8rem;
  background:
    radial-gradient(circle at top right, rgba(255, 255, 255, 0.28), transparent 30%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.3), rgba(var(--nh-secondary-rgb), 0.24));
  box-shadow: var(--nh-shadow);
}

.destination-directory__hero-media img,
.destination-directory__hero-placeholder {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.destination-directory__hero-placeholder {
  display: block;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.32), transparent 34%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.36), rgba(var(--nh-secondary-rgb), 0.28));
}

.destination-directory__hero-stats {
  position: absolute;
  left: 1.15rem;
  right: 1.15rem;
  bottom: 1.15rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.8rem;
}

.destination-directory__hero-stat {
  padding: 0.9rem 1rem;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 1.2rem;
  background: rgba(33, 44, 29, 0.62);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #fdf8ee;
}

.destination-directory__hero-stat strong,
.destination-directory__hero-stat span {
  display: block;
}

.destination-directory__hero-stat strong {
  margin-bottom: 0.2rem;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.2rem, 2vw, 1.8rem);
  line-height: 1.05;
}

.destination-directory__hero-stat span {
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.destination-directory__section-head {
  display: grid;
  gap: 0.75rem;
  max-width: 56rem;
  margin-bottom: 1.4rem;
}

.destination-directory__section-head h2 {
  margin: 0;
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.08;
}

.destination-directory__section-head p {
  margin: 0;
  color: #53604f;
  font-size: 1.03rem;
  line-height: 1.72;
}

.destination-directory__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.25rem;
}

.destination-directory__card {
  overflow: hidden;
  display: grid;
  align-content: start;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 2rem;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 22px 46px rgba(var(--nh-primary-rgb), 0.08);
}

.destination-directory__card-media {
  position: relative;
  overflow: hidden;
  display: block;
  min-height: 17.5rem;
  background: linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.24), rgba(var(--nh-secondary-rgb), 0.24));
}

.destination-directory__card-media img,
.destination-directory__card-media-fallback {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.destination-directory__card-media-fallback {
  display: block;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.32), transparent 36%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.34), rgba(var(--nh-secondary-rgb), 0.28));
}

.destination-directory__card-count {
  position: absolute;
  top: 1rem;
  left: 1rem;
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
  padding: 0.45rem 0.95rem;
  border-radius: 999px;
  background: rgba(255, 250, 241, 0.92);
  color: var(--nh-primary-dark);
  font-size: 0.88rem;
  font-weight: 800;
}

.destination-directory__card-body {
  display: grid;
  align-content: start;
  gap: 0.8rem;
  padding: 1.4rem;
}

.destination-directory__card-kicker {
  margin: 0;
  color: var(--nh-secondary);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.destination-directory__card-body h3 {
  margin: 0;
  font-size: clamp(1.6rem, 2vw, 2.05rem);
  line-height: 1.1;
}

.destination-directory__card-body h3 a {
  color: inherit;
}

.destination-directory__card-description {
  margin: 0;
  color: #546151;
  line-height: 1.72;
}

.destination-directory__card-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
}

.destination-directory__card-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 2.3rem;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  background: rgba(var(--nh-surface-rgb), 0.48);
  color: var(--nh-primary-dark);
  font-size: 0.88rem;
  font-weight: 700;
}

.destination-directory__card-footer {
  display: grid;
  gap: 0.9rem;
  margin-top: auto;
}

.destination-directory__card-meta {
  display: grid;
  gap: 0.25rem;
}

.destination-directory__card-meta strong {
  color: var(--nh-primary-dark);
  font-family: "Inter", "Segoe UI", sans-serif;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.1;
}

.destination-directory__card-meta span {
  color: #667161;
  font-size: 0.92rem;
  line-height: 1.55;
}

.destination-directory__card-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.7rem;
  width: 100%;
  border-radius: 1.05rem;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-secondary));
  color: #fffdf8;
  font-weight: 800;
}

.destination-directory__card-cta:hover,
.destination-directory__card-cta:focus-visible {
  color: #fffdf8;
  transform: translateY(-1px);
}

.destination-directory__empty {
  max-width: 44rem;
}

@media (max-width: 1100px) {
  .destination-directory__hero-grid {
    grid-template-columns: 1fr;
  }

  .destination-directory__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .destination-directory__hero-media {
    order: -1;
  }
}

@media (max-width: 760px) {
  .destination-directory {
    padding-bottom: 4rem;
  }

  .destination-directory__hero,
  .destination-directory__listing {
    padding-bottom: 3rem;
  }

  .destination-directory__hero-copy h1 {
    font-size: clamp(2.35rem, 10vw, 3.5rem);
  }

  .destination-directory__hero-stats {
    grid-template-columns: 1fr;
  }

  .destination-directory__grid {
    grid-template-columns: 1fr;
  }

  .destination-directory__card-body,
  .destination-directory__hero-stat {
    padding: 1.1rem;
  }
}

@media (max-width: 560px) {
  .destination-directory__hero-media,
  .destination-directory__hero-placeholder {
    min-height: 24rem;
  }

  .destination-directory__hero-actions {
    align-items: stretch;
  }

  .destination-directory__hero-button,
  .destination-directory__hero-link {
    width: 100%;
    justify-content: center;
  }

  .destination-directory__card-media {
    min-height: 15rem;
  }
}

.tour-taxonomy-landing {
  padding: 1.4rem 0 5rem;
}

.tour-taxonomy-landing__hero {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  gap: clamp(1.5rem, 3vw, 2.8rem);
  align-items: center;
  padding: 0.75rem 0 2.8rem;
}

.tour-taxonomy-landing__hero-copy {
  display: grid;
  gap: 1.1rem;
  align-content: start;
}

.tour-taxonomy-landing__kicker {
  margin: 0;
}

.tour-taxonomy-landing__hero-copy h1,
.tour-taxonomy-landing__feature-body h2,
.tour-taxonomy-landing__story h2,
.tour-taxonomy-landing__section-head h2,
.tour-taxonomy-landing__link-group h3 {
  font-family: "Playfair Display", Georgia, serif;
}

.tour-taxonomy-landing__hero-copy h1 {
  margin: 0;
  color: var(--nh-primary-dark);
  font-size: clamp(2.55rem, 5vw, 4.25rem);
  line-height: 1.05;
}

.tour-taxonomy-landing__intro,
.tour-taxonomy-landing__feature-body p,
.tour-taxonomy-landing__story-content,
.tour-taxonomy-landing__section-head p,
.tour-taxonomy-landing__faq-intro {
  color: #495545;
  font-size: 1.03rem;
  line-height: 1.75;
}

.tour-taxonomy-landing__intro {
  max-width: 44rem;
  margin: 0;
}

.tour-taxonomy-landing__stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.tour-taxonomy-landing__stat {
  display: inline-flex;
  align-items: center;
  min-height: 2.7rem;
  padding: 0.55rem 1rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.82);
  color: var(--nh-primary-dark);
  font-size: 0.95rem;
  font-weight: 700;
}

.tour-taxonomy-landing__feature {
  overflow: hidden;
  display: grid;
  gap: 0;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 2rem;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 22px 48px rgba(var(--nh-primary-rgb), 0.08);
}

.tour-taxonomy-landing__feature-media {
  min-height: 21rem;
  background: linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.18), rgba(var(--nh-secondary-rgb), 0.24));
}

.tour-taxonomy-landing__feature-media img,
.tour-taxonomy-landing__feature-media--fallback {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.tour-taxonomy-landing__feature-media--fallback {
  display: block;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.28), transparent 36%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.36), rgba(var(--nh-secondary-rgb), 0.24));
}

.tour-taxonomy-landing__feature-body {
  display: grid;
  gap: 0.8rem;
  padding: 1.4rem;
}

.tour-taxonomy-landing__feature-label {
  margin: 0;
  color: var(--nh-secondary);
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tour-taxonomy-landing__feature-body h2 {
  margin: 0;
  color: var(--nh-primary-dark);
  font-size: clamp(1.6rem, 2.2vw, 2.3rem);
  line-height: 1.12;
}

.tour-taxonomy-landing__feature-body h2 a {
  color: inherit;
}

.tour-taxonomy-landing__feature-body p {
  margin: 0;
}

.tour-taxonomy-landing__feature-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.tour-taxonomy-landing__feature-meta span {
  display: inline-flex;
  align-items: center;
  min-height: 2.45rem;
  padding: 0.45rem 0.9rem;
  border-radius: 999px;
  background: rgba(var(--nh-surface-rgb), 0.72);
  color: var(--nh-primary-dark);
  font-size: 0.9rem;
  font-weight: 700;
}

.tour-taxonomy-landing__feature-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.6rem;
  width: fit-content;
  min-width: 14rem;
  padding: 0.85rem 1.4rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-secondary));
  color: #fffdf8;
  font-weight: 800;
}

.tour-taxonomy-landing__feature-cta:hover,
.tour-taxonomy-landing__feature-cta:focus-visible {
  color: #fffdf8;
  transform: translateY(-1px);
}

.tour-taxonomy-landing__overview {
  display: grid;
  grid-template-columns: minmax(0, 1.18fr) minmax(260px, 0.82fr);
  gap: 1.35rem;
  margin-bottom: 1.5rem;
}

.tour-taxonomy-landing__overview--links-only {
  grid-template-columns: 1fr;
}

.tour-taxonomy-landing__story,
.tour-taxonomy-landing__link-group,
.tour-taxonomy-landing__faq-item {
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 1.8rem;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 38px rgba(var(--nh-primary-rgb), 0.06);
}

.tour-taxonomy-landing__story {
  padding: 1.55rem;
}

.tour-taxonomy-landing__story h2,
.tour-taxonomy-landing__section-head h2 {
  margin: 0 0 0.8rem;
  color: var(--nh-primary-dark);
  font-size: clamp(1.9rem, 2.6vw, 2.7rem);
  line-height: 1.1;
}

.tour-taxonomy-landing__story-content > *:first-child,
.tour-taxonomy-landing__faq-intro > *:first-child {
  margin-top: 0;
}

.tour-taxonomy-landing__story-content > *:last-child,
.tour-taxonomy-landing__faq-intro > *:last-child {
  margin-bottom: 0;
}

.tour-taxonomy-landing__link-groups {
  display: grid;
  gap: 1rem;
}

.tour-taxonomy-landing__link-group {
  padding: 1.25rem;
}

.tour-taxonomy-landing__link-group h3 {
  margin: 0 0 0.85rem;
  color: var(--nh-primary-dark);
  font-size: 1.35rem;
  line-height: 1.16;
}

.tour-taxonomy-landing__links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.tour-taxonomy-landing__links a {
  display: inline-flex;
  align-items: center;
  min-height: 2.6rem;
  padding: 0.5rem 0.95rem;
  border: 1px solid rgba(var(--nh-secondary-rgb), 0.24);
  border-radius: 999px;
  background: rgba(var(--nh-surface-rgb), 0.35);
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
}

.tour-taxonomy-landing__links a:hover,
.tour-taxonomy-landing__links a:focus-visible {
  border-color: rgba(var(--nh-secondary-rgb), 0.52);
  background: rgba(var(--nh-surface-rgb), 0.58);
}

.tour-taxonomy-landing__section {
  display: grid;
  gap: 1.2rem;
  margin-top: 1.65rem;
}

.tour-taxonomy-landing__section-head {
  display: grid;
  gap: 0.7rem;
  max-width: 56rem;
}

.tour-taxonomy-landing__section-head h2,
.tour-taxonomy-landing__section-head p {
  margin: 0;
}

.tour-taxonomy-landing__cards {
  gap: 1rem;
}

.tour-taxonomy-landing__pagination ul {
  justify-content: center;
}

.tour-taxonomy-landing__faq-list {
  display: grid;
  gap: 0.95rem;
}

.tour-taxonomy-landing__faq-item {
  overflow: hidden;
}

.tour-taxonomy-landing__faq-item summary {
  position: relative;
  padding: 1.15rem 3.6rem 1.15rem 1.25rem;
  list-style: none;
  color: var(--nh-primary-dark);
  font-size: 1.05rem;
  font-weight: 800;
  cursor: pointer;
}

.tour-taxonomy-landing__faq-item summary::-webkit-details-marker {
  display: none;
}

.tour-taxonomy-landing__faq-item summary::after {
  content: "+";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  transform: translateY(-50%);
  color: var(--nh-secondary);
  font-size: 1.6rem;
  line-height: 1;
}

.tour-taxonomy-landing__faq-item[open] summary::after {
  content: "−";
}

.tour-taxonomy-landing__faq-answer {
  padding: 0 1.25rem 1.2rem;
  color: #495545;
  line-height: 1.75;
}

.tour-taxonomy-landing__faq-answer > *:first-child {
  margin-top: 0;
}

.tour-taxonomy-landing__faq-answer > *:last-child {
  margin-bottom: 0;
}

@media (max-width: 1100px) {
  .tour-taxonomy-landing__hero,
  .tour-taxonomy-landing__overview {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .tour-taxonomy-landing__feature-media {
    min-height: 18rem;
  }
}

@media (max-width: 780px) {
  .tour-taxonomy-landing__hero {
    padding-bottom: 2rem;
  }

  .tour-taxonomy-landing__story,
  .tour-taxonomy-landing__link-group {
    padding: 1.2rem;
  }

  .tour-taxonomy-landing__feature-cta {
    width: 100%;
    min-width: 0;
  }
}

@media (max-width: 640px) {
  .tour-taxonomy-landing__hero-copy h1 {
    font-size: clamp(2.1rem, 10vw, 3rem);
  }

  .tour-taxonomy-landing__feature-media {
    min-height: 15rem;
  }

  .tour-taxonomy-landing__stats,
  .tour-taxonomy-landing__links,
  .tour-taxonomy-landing__feature-meta {
    gap: 0.55rem;
  }

  .tour-taxonomy-landing__faq-item summary {
    padding-right: 3rem;
  }
}

.tour-single {
  padding-bottom: 5rem;
}

.tour-single__hero {
  padding: 2rem 0 2.75rem;
  background:
    radial-gradient(circle at top right, rgba(var(--nh-secondary-rgb), 0.18), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(var(--nh-surface-rgb), 0.7));
}

.tour-single__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
  gap: 2rem;
  align-items: center;
}

.tour-single__hero-copy h1 {
  font-size: clamp(2.7rem, 5vw, 4.6rem);
  margin-bottom: 1rem;
}

.tour-single__summary {
  max-width: 52rem;
  font-size: 1.1rem;
  color: var(--nh-muted);
}

.tour-single__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin: 1.5rem 0;
}

.tour-single__chip {
  display: inline-flex;
  align-items: center;
  min-height: 2.5rem;
  padding: 0.45rem 0.9rem;
  border-radius: 999px;
  background: rgba(var(--nh-primary-rgb), 0.08);
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
}

.tour-single__highlights {
  display: grid;
  gap: 0.8rem;
  list-style: none;
  margin-top: 1.5rem;
}

.tour-single__highlights li,
.tour-single__list li,
.tour-single__sidebar-list li {
  position: relative;
  padding-left: 1.4rem;
  color: var(--nh-muted);
}

.tour-single__highlights li::before,
.tour-single__list li::before,
.tour-single__sidebar-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.62rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--nh-secondary), var(--nh-accent));
}

.tour-single__hero-image,
.tour-single__panel,
.tour-single__sidebar-card,
.tour-single__fact,
.tour-single__list-card,
.tour-single__day,
.tour-single__stay-card {
  border-radius: var(--nh-radius-lg);
  box-shadow: var(--nh-shadow);
}

.tour-single__hero-image {
  overflow: hidden;
  background: rgba(255, 255, 255, 0.72);
}

.tour-single__hero-image img {
  width: 100%;
  aspect-ratio: 16 / 11;
  object-fit: cover;
}

.tour-single__tabs {
  position: sticky;
  top: 0;
  z-index: 90;
  background: rgba(255, 255, 255, 0.92);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 8px 24px rgba(18, 25, 35, 0.06);
}

.tour-single__tabs-inner {
  display: flex;
  gap: 1.2rem;
  overflow-x: auto;
  padding: 1rem 0;
  scrollbar-width: none;
}

.tour-single__tabs-inner::-webkit-scrollbar {
  display: none;
}

.tour-single__tabs a {
  flex: 0 0 auto;
  min-height: 2.9rem;
  display: inline-flex;
  align-items: center;
  padding: 0.5rem 1rem;
  border-radius: 999px;
  background: rgba(var(--nh-primary-rgb), 0.06);
  color: var(--nh-primary-dark);
  font-weight: 700;
}

.tour-single__tabs a:hover {
  background: rgba(var(--nh-secondary-rgb), 0.18);
}

.tour-single__body {
  padding-top: 2rem;
}

.tour-single__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  gap: 1.5rem;
  align-items: start;
}

.tour-single__main {
  display: grid;
  gap: 1.5rem;
}

.tour-single__panel {
  padding: 2rem;
  background: rgba(255, 255, 255, 0.88);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.tour-single__panel[id],
.tour-single__sidebar[id] {
  scroll-margin-top: 6rem;
}

.tour-single__section-heading {
  max-width: 46rem;
  margin-bottom: 1.5rem;
}

.tour-single__section-heading h2 {
  font-size: clamp(2rem, 3vw, 3rem);
  margin-bottom: 0.75rem;
}

.tour-single__facts-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.tour-single__facts-grid:empty {
  display: none;
}

.tour-single__fact {
  padding: 1.15rem 1.2rem;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.96), rgba(var(--nh-surface-rgb), 0.52));
}

.tour-single__fact span {
  display: block;
  margin-bottom: 0.4rem;
  color: var(--nh-muted);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tour-single__fact strong {
  color: var(--nh-primary-dark);
  font-size: 1.08rem;
}

.tour-single__prose {
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.tour-single__details-grid,
.tour-single__stay-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.tour-single__list-card,
.tour-single__stay-card {
  padding: 1.5rem;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.56));
}

.tour-single__list-card--muted {
  background: linear-gradient(160deg, rgba(var(--nh-primary-rgb), 0.08), rgba(255, 255, 255, 0.96));
}

.tour-single__list,
.tour-single__sidebar-list {
  display: grid;
  gap: 0.85rem;
  list-style: none;
}

.tour-single__itinerary {
  display: grid;
  gap: 1rem;
}

.tour-single__day {
  display: grid;
  grid-template-columns: 140px minmax(0, 1fr);
  overflow: hidden;
  background: rgba(255, 255, 255, 0.96);
}

.tour-single__day-label {
  display: grid;
  place-items: center;
  padding: 1.5rem;
  background: linear-gradient(180deg, var(--nh-primary-dark), var(--nh-primary));
  color: var(--nh-white);
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tour-single__day-body {
  padding: 1.5rem;
}

.tour-single__day-body h3 {
  font-size: 1.45rem;
}

.tour-single__day-body p {
  margin-bottom: 0;
  color: var(--nh-muted);
}

.tour-single__sidebar {
  position: sticky;
  top: 6rem;
}

.tour-single__sidebar-card {
  padding: 1.6rem;
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.72));
}

.tour-single__price {
  margin-bottom: 1rem;
  color: var(--nh-primary-dark);
  font-size: clamp(1.8rem, 3vw, 2.4rem);
  font-weight: 800;
}

.tour-single__sidebar-button {
  width: 100%;
  margin-bottom: 1.15rem;
}

.tour-single__sidebar-list {
  margin-bottom: 1.15rem;
}

.tour-single__contact {
  display: grid;
  gap: 0.55rem;
}

.tour-single__contact a {
  color: var(--nh-primary-dark);
  font-weight: 700;
}

.content-grid {
  display: grid;
  gap: 1.5rem;
}

.archive-header {
  max-width: 46rem;
  margin-bottom: 1.5rem;
}

.post-list {
  display: grid;
  gap: 1.25rem;
}

.entry-card,
.page-card {
  padding: 2rem;
}

.featured-image {
  margin: 1.5rem 0;
  overflow: hidden;
  border-radius: var(--nh-radius-md);
}

.pagination-shell {
  padding-top: 0.5rem;
}

.pagination-shell .nav-links {
  display: flex;
  gap: 0.65rem;
  flex-wrap: wrap;
}

.pagination-shell .page-numbers {
  display: inline-flex;
  min-width: 2.75rem;
  min-height: 2.75rem;
  align-items: center;
  justify-content: center;
  padding: 0 0.9rem;
  border-radius: 999px;
  background: rgba(var(--nh-primary-rgb), 0.08);
  font-weight: 700;
}

.pagination-shell .current {
  background: var(--nh-primary);
  color: var(--nh-white);
}

.journal-archive {
  padding: 1.4rem 0 5rem;
}

.journal-archive__hero {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(280px, 0.76fr);
  gap: clamp(1.4rem, 3vw, 2.6rem);
  align-items: start;
  padding-bottom: 2.6rem;
}

.journal-archive__hero-copy {
  display: grid;
  gap: 1.05rem;
}

.journal-archive__hero-copy h1,
.journal-archive__listing-head h2,
.journal-article__hero-copy h1,
.journal-article__author-card h2,
.journal-article__related-head h2,
.journal-article__sidebar-card h2,
.journal-card__title {
  color: var(--nh-primary-dark);
}

.journal-archive__hero-copy h1 {
  margin: 0;
  font-size: clamp(2.7rem, 5.2vw, 4.8rem);
  line-height: 1.02;
}

.journal-archive__hero-text,
.journal-article__excerpt,
.journal-article__author-card p,
.journal-article__sidebar-card p,
.journal-card__excerpt {
  color: #52604e;
  font-size: 1.04rem;
  line-height: 1.78;
}

.journal-archive__hero-text > *:first-child,
.journal-article__hero-copy > *:first-child,
.journal-article__prose > *:first-child {
  margin-top: 0;
}

.journal-archive__hero-text > *:last-child,
.journal-article__hero-copy > *:last-child,
.journal-article__prose > *:last-child {
  margin-bottom: 0;
}

.journal-archive__hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.9rem 1.15rem;
}

.journal-archive__hero-button {
  min-width: 15rem;
}

.journal-archive__hero-link {
  display: inline-flex;
  align-items: center;
  color: var(--nh-primary-dark);
  font-size: 0.98rem;
  font-weight: 800;
}

.journal-archive__hero-link:hover,
.journal-archive__hero-link:focus-visible {
  color: var(--nh-secondary);
}

.journal-archive__topics,
.journal-article__tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.journal-archive__topic,
.journal-article__tag-list a {
  display: inline-flex;
  align-items: center;
  min-height: 2.55rem;
  padding: 0.45rem 0.95rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.1);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  color: var(--nh-primary-dark);
  font-size: 0.9rem;
  font-weight: 700;
  transition: transform 180ms ease, border-color 180ms ease, background-color 180ms ease;
}

.journal-archive__topic:hover,
.journal-archive__topic:focus-visible,
.journal-article__tag-list a:hover,
.journal-article__tag-list a:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(var(--nh-secondary-rgb), 0.4);
  background: rgba(var(--nh-surface-rgb), 0.52);
}

.journal-archive__hero-panel,
.journal-article__sidebar {
  display: grid;
  gap: 1rem;
}

.journal-archive__hero-panel {
  align-content: start;
}

.journal-archive__hero-stat,
.journal-archive__hero-note,
.journal-card,
.journal-article__sidebar-card,
.journal-article__author-card,
.journal-article__tags {
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 1.8rem;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 42px rgba(var(--nh-primary-rgb), 0.07);
}

.journal-archive__hero-stat {
  padding: 1.3rem 1.35rem;
}

.journal-archive__hero-stat strong,
.journal-archive__hero-stat span {
  display: block;
}

.journal-archive__hero-stat strong {
  margin-bottom: 0.25rem;
  color: var(--nh-primary-dark);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.7rem, 2.6vw, 2.35rem);
  line-height: 1.05;
}

.journal-archive__hero-stat span {
  color: #677363;
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.journal-archive__hero-note {
  padding: 1.45rem;
  background:
    radial-gradient(circle at top right, rgba(var(--nh-secondary-rgb), 0.16), transparent 40%),
    linear-gradient(160deg, rgba(255, 255, 255, 0.96), rgba(var(--nh-surface-rgb), 0.56));
}

.journal-archive__hero-note h2,
.journal-card__title {
  margin: 0;
}

.journal-archive__hero-note h2 {
  margin-bottom: 0.65rem;
  font-size: clamp(1.6rem, 2.3vw, 2.2rem);
  line-height: 1.12;
}

.journal-archive__hero-note p {
  margin: 0;
  color: #5a6755;
  line-height: 1.72;
}

.journal-archive__featured,
.journal-article__related {
  margin-bottom: 1.6rem;
}

.journal-archive__listing,
.journal-article__related .wrap {
  display: grid;
  gap: 1.2rem;
}

.journal-archive__listing-head,
.journal-article__related-head {
  display: grid;
  gap: 0.65rem;
  max-width: 52rem;
}

.journal-archive__listing-head h2,
.journal-archive__listing-head p,
.journal-article__related-head h2 {
  margin: 0;
}

.journal-archive__listing-head p {
  color: #596755;
  font-size: 1.02rem;
  line-height: 1.7;
}

.journal-archive__grid,
.journal-article__related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.2rem;
}

.journal-card {
  overflow: hidden;
  display: grid;
  align-content: start;
}

.journal-card--featured {
  grid-template-columns: minmax(280px, 1.02fr) minmax(0, 0.98fr);
}

.journal-card__media {
  overflow: hidden;
  display: block;
  min-height: 17rem;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 38%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.28), rgba(var(--nh-secondary-rgb), 0.24));
}

.journal-card--featured .journal-card__media {
  min-height: 100%;
}

.journal-card__media img,
.journal-card__media-fallback {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.journal-card__media-fallback {
  display: block;
}

.journal-card__body {
  display: grid;
  align-content: start;
  gap: 0.95rem;
  padding: 1.45rem;
}

.journal-card--featured .journal-card__body {
  padding: 1.7rem;
}

.journal-card__topline {
  display: grid;
  gap: 0.7rem;
}

.journal-card__category,
.journal-article__category {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 2.35rem;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  background: rgba(var(--nh-surface-rgb), 0.5);
  color: var(--nh-primary-dark);
  font-size: 0.84rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.journal-card__meta,
.journal-article__hero-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1rem;
  color: #6a7566;
  font-size: 0.9rem;
  font-weight: 700;
}

.journal-card__meta span,
.journal-article__hero-meta span {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
}

.journal-card__meta span::before,
.journal-article__hero-meta span::before {
  content: "";
  width: 0.28rem;
  height: 0.28rem;
  border-radius: 50%;
  background: rgba(var(--nh-secondary-rgb), 0.9);
}

.journal-card__meta span:first-child::before,
.journal-article__hero-meta span:first-child::before {
  display: none;
}

.journal-card__title {
  font-size: clamp(1.7rem, 2.2vw, 2.25rem);
  line-height: 1.08;
}

.journal-card--featured .journal-card__title {
  font-size: clamp(2.05rem, 3vw, 3rem);
}

.journal-card__title a {
  color: inherit;
}

.journal-card__excerpt {
  margin: 0;
}

.journal-card__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-top: auto;
  flex-wrap: wrap;
}

.journal-card__cta {
  color: var(--nh-secondary);
  font-size: 0.98rem;
  font-weight: 800;
}

.journal-card__cta:hover,
.journal-card__cta:focus-visible,
.journal-card__category:hover,
.journal-card__category:focus-visible,
.journal-article__category:hover,
.journal-article__category:focus-visible {
  color: var(--nh-primary-dark);
}

.journal-card__comments {
  color: #75816f;
  font-size: 0.88rem;
  font-weight: 700;
}

.journal-article {
  padding-bottom: 5rem;
}

.journal-article__hero {
  padding: 1.5rem 0 2.75rem;
}

.journal-article__hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.94fr) minmax(320px, 1.06fr);
  gap: clamp(1.5rem, 3vw, 2.9rem);
  align-items: center;
}

.journal-article__hero-copy {
  display: grid;
  gap: 1rem;
}

.journal-article__breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  color: #6d7968;
  font-size: 0.93rem;
  font-weight: 700;
}

.journal-article__breadcrumbs a {
  color: var(--nh-primary-dark);
}

.journal-article__hero-copy h1 {
  margin: 0;
  font-size: clamp(2.6rem, 5vw, 4.7rem);
  line-height: 1.02;
}

.journal-article__excerpt {
  max-width: 44rem;
  margin: 0;
  font-size: 1.12rem;
}

.journal-article__hero-media {
  overflow: hidden;
  min-height: clamp(23rem, 46vw, 38rem);
  border-radius: clamp(2rem, 7vw, 6rem) 1.8rem 1.8rem 1.8rem;
  background:
    radial-gradient(circle at top left, rgba(255, 255, 255, 0.34), transparent 36%),
    linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.32), rgba(var(--nh-secondary-rgb), 0.24));
  box-shadow: var(--nh-shadow);
}

.journal-article__hero-media img,
.journal-article__hero-placeholder {
  width: 100%;
  height: 100%;
  min-height: inherit;
  object-fit: cover;
}

.journal-article__hero-placeholder {
  display: block;
}

.journal-article__main {
  padding-bottom: 2.5rem;
}

.journal-article__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.34fr);
  gap: 1.4rem;
  align-items: start;
}

.journal-article__content {
  display: grid;
  gap: 1.25rem;
}

.journal-article__prose {
  padding: 2.1rem;
}

.journal-article__prose > p:first-of-type::first-letter {
  float: left;
  margin: 0.06em 0.18em 0 0;
  color: var(--nh-primary-dark);
  font-family: "Playfair Display", Georgia, serif;
  font-size: 3.4em;
  line-height: 0.9;
}

.journal-article__prose h2,
.journal-article__prose h3,
.journal-article__prose h4 {
  color: var(--nh-primary-dark);
}

.journal-article__prose blockquote {
  margin: 1.8rem 0;
  padding: 1.4rem 1.5rem;
  border-left: 4px solid var(--nh-secondary);
  border-radius: 1.2rem;
  background: rgba(var(--nh-surface-rgb), 0.34);
}

.journal-article__prose ul,
.journal-article__prose ol {
  padding-left: 1.3rem;
}

.journal-article__prose img {
  border-radius: 1.2rem;
}

.journal-article__sidebar {
  position: sticky;
  top: 6rem;
}

.journal-article__sidebar-card {
  padding: 1.45rem;
}

.journal-article__sidebar-card h2 {
  margin: 0 0 0.8rem;
  font-size: 1.7rem;
  line-height: 1.12;
}

.journal-article__sidebar-list {
  display: grid;
  gap: 0.9rem;
  list-style: none;
}

.journal-article__sidebar-list li {
  display: grid;
  gap: 0.2rem;
}

.journal-article__sidebar-list span {
  color: #7a8575;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.journal-article__sidebar-list strong {
  color: var(--nh-primary-dark);
  font-size: 1rem;
  font-weight: 800;
}

.journal-article__sidebar-card--cta {
  background:
    radial-gradient(circle at top right, rgba(var(--nh-secondary-rgb), 0.16), transparent 40%),
    linear-gradient(160deg, rgba(255, 255, 255, 0.96), rgba(var(--nh-surface-rgb), 0.56));
}

.journal-article__sidebar-button {
  width: 100%;
  margin-top: 0.2rem;
}

.journal-article__tags,
.journal-article__author-card {
  padding: 1.45rem;
}

.journal-article__tags h2,
.journal-article__author-card h2 {
  margin: 0 0 0.9rem;
  font-size: 1.9rem;
  line-height: 1.12;
}

.journal-article__post-nav {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.journal-article__post-nav-card {
  padding: 1.25rem 1.35rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 18px 38px rgba(var(--nh-primary-rgb), 0.06);
}

.journal-article__post-nav-card span,
.journal-article__post-nav-card strong {
  display: block;
}

.journal-article__post-nav-card span {
  margin-bottom: 0.45rem;
  color: var(--nh-secondary);
  font-size: 0.8rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.journal-article__post-nav-card strong {
  color: var(--nh-primary-dark);
  font-size: 1.05rem;
  line-height: 1.45;
}

.journal-article__related {
  padding-top: 0.35rem;
}

@media (max-width: 1100px) {
  .journal-archive__hero,
  .journal-card--featured,
  .journal-article__hero-grid,
  .journal-article__layout {
    grid-template-columns: 1fr;
  }

  .journal-article__sidebar {
    position: static;
  }

  .journal-card--featured .journal-card__media {
    min-height: 17rem;
  }

  .journal-article__hero-media {
    order: -1;
  }
}

@media (max-width: 760px) {
  .journal-archive,
  .journal-article {
    padding-bottom: 4rem;
  }

  .journal-archive__grid,
  .journal-article__related-grid,
  .journal-article__post-nav {
    grid-template-columns: 1fr;
  }

  .journal-archive__hero-copy h1,
  .journal-article__hero-copy h1 {
    font-size: clamp(2.25rem, 10vw, 3.5rem);
  }

  .journal-card__body,
  .journal-article__sidebar-card,
  .journal-article__tags,
  .journal-article__author-card,
  .journal-article__prose,
  .journal-archive__hero-note,
  .journal-archive__hero-stat {
    padding: 1.2rem;
  }
}

@media (max-width: 560px) {
  .journal-card__media {
    min-height: 14rem;
  }

  .journal-archive__hero-actions {
    align-items: stretch;
  }

  .journal-archive__hero-button,
  .journal-archive__hero-link {
    width: 100%;
    justify-content: center;
  }

  .journal-article__hero-media,
  .journal-article__hero-placeholder {
    min-height: 20rem;
  }
}

[data-reveal] {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 520ms ease, transform 520ms ease;
}

[data-reveal].is-visible {
  opacity: 1;
  transform: translateY(0);
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .site-header.is-scrolled {
    background: rgba(255, 255, 255, 0.985);
  }

  .route-card,
  .package-card,
  .process-card,
  .timeline-card,
  .entry-card,
  .page-card,
  .prose-block,
  .tour-single__tabs,
  .tour-single__tabs-inner,
  .tour-single__panel,
  .tour-single__section,
  .tour-single__sidebar-card,
  .tour-single__gallery-panel-head {
    background: rgba(255, 255, 255, 0.97);
  }
}

@supports not (aspect-ratio: 1 / 1) {
  .packages-section .homepage-package-card--has-media .homepage-package-card__media {
    min-height: 15rem;
  }

  .tour-single__hero-image img {
    height: 24rem;
  }

  .tour-single__gallery-item img {
    height: clamp(10rem, 18vw, 15rem);
  }

  .tour-single__related-image img {
    height: clamp(13rem, 18vw, 16rem);
    object-fit: cover;
  }
}

@media (max-width: 1080px) {
  .tour-archive__hero,
  .tour-archive__grid {
    grid-template-columns: 1fr;
  }

  .tour-archive__hero-media {
    min-height: 26rem;
    order: -1;
  }

  .tour-archive__filters {
    position: static;
  }

  .tour-archive__panel {
    padding: 1.3rem 1.1rem 1.2rem;
  }

  .tour-archive__destination-list,
  .tour-archive__filter-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .hero-banner {
    height: auto;
    min-height: 0;
  }

  .hero-banner--immersive {
    height: min(62vh, 42rem);
    min-height: 32rem;
  }

  .hero-banner__shell {
    height: auto;
    padding-block: 1.4rem;
  }

  .hero-banner__shell--immersive {
    height: 100%;
    padding-block: 0;
  }

  .hero-banner__gallery {
    grid-template-columns: 1fr;
  }

  .hero-banner__media-panel {
    min-height: 32rem;
  }

  .main-navigation .menu,
  .main-navigation .menu-fallback {
    gap: 1rem;
  }

  .split-layout,
  .process-grid,
  .quote-shell,
  .footer-grid {
    grid-template-columns: 1fr;
  }

  .footer-brand,
  .footer-contact,
  .footer-explore {
    grid-column: 1 / -1;
  }

  .tour-single__hero-grid,
  .tour-single__layout,
  .tour-single__details-grid,
  .tour-single__stay-grid {
    grid-template-columns: 1fr;
  }

  .packages-section .packages-section__grid {
    grid-template-columns: repeat(var(--nh-packages-columns-tablet, 2), minmax(0, 1fr));
  }

  .packages-section--design-5 .homepage-package-card--has-media {
    grid-template-columns: 1fr;
  }

  .package-grid,
  .testimonial-grid,
  .insight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .destinations-section--design-2 .destination-grid,
  .destinations-section--design-3 .destination-grid,
  .destinations-section--design-5 .destination-grid,
  .destinations-section--design-6 .destination-grid,
  .destinations-section--design-7 .destination-grid,
  .destinations-section--design-8 .destination-grid,
  .destinations-section--design-9 .destination-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .destinations-section--design-3 .destination-card:first-child,
  .destinations-section--design-8 .destination-card:first-child {
    grid-column: span 2;
    grid-row: auto;
  }

  .destinations-section--design-4 .destination-card,
  .destinations-section--design-10 .destination-card {
    grid-template-columns: 1fr;
  }

  .tour-single__sidebar {
    position: static;
  }
}

@media (max-width: 820px) {
  .tour-archive {
    padding-top: 1rem;
  }

  .tour-archive__hero {
    padding-bottom: 2.25rem;
  }

  .tour-archive__hero-copy h1 {
    font-size: clamp(2.2rem, 9vw, 3.3rem);
  }

  .tour-archive__toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .tour-archive__sort {
    width: 100%;
    justify-content: space-between;
  }

  .tour-archive__sort select {
    min-width: 0;
    width: min(100%, 16rem);
  }

  .tour-archive__destination-list,
  .tour-archive__filter-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tour-archive__card {
    grid-template-columns: 1fr;
  }

  .tour-archive__card-media img,
  .tour-archive__card-media-fallback {
    min-height: 14.5rem;
  }

  .hero-banner__media-panel {
    min-height: auto;
  }

  .topbar__inner,
  .footer-bottom {
    flex-wrap: wrap;
  }

  .packages-section--design-6 .homepage-package-card {
    min-height: 20rem;
  }

  .header-shell {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
  }

  .main-navigation {
    grid-column: 1 / -1;
    order: 3;
  }

  .menu-toggle {
    display: inline-block;
  }

  .main-navigation {
    display: none;
    width: 100%;
    padding: 1rem 0 0.35rem;
  }

  .main-navigation.is-open {
    display: block;
  }

  .main-navigation .menu,
  .main-navigation .menu-fallback {
    display: grid;
    gap: 0.9rem;
    padding: 1rem 1.1rem;
    border-radius: var(--nh-radius-md);
    background: rgba(255, 255, 255, 0.86);
  }

  .header-cta {
    display: none;
  }

  .site-branding .custom-logo {
    max-height: var(--nh-logo-mobile-height);
  }

  .trust-strip__grid,
  .destination-grid,
  .package-grid,
  .testimonial-grid,
  .insight-grid,
  .tour-single__facts-grid {
    grid-template-columns: 1fr;
  }

  .packages-section .packages-section__grid {
    grid-template-columns: repeat(var(--nh-packages-columns-mobile, 1), minmax(0, 1fr));
  }

  .stat-card--gold,
  .stat-card--light {
    margin: 0;
  }

  .tour-single__day {
    grid-template-columns: 1fr;
  }

  .tour-single__day-label {
    place-items: start;
  }
}

@media (max-width: 640px) {
  .hero-banner {
    height: auto;
    min-height: 0;
    margin-bottom: 1.25rem;
  }

  .hero-banner--immersive {
    height: min(70vh, 36rem);
    min-height: 28rem;
  }

  .hero-banner--mobile-image .hero-banner__video {
    display: none;
  }

  .hero-banner__shell {
    gap: 1rem;
    padding-block: 1.15rem 1.35rem;
  }

  .hero-banner h1 {
    font-size: clamp(2.2rem, 10vw, 3.35rem);
  }

  .hero-banner--immersive h1 {
    font-size: clamp(2.45rem, 12vw, 4rem);
  }

  .hero-banner__summary {
    font-size: 0.98rem;
  }

  .hero-banner--immersive .hero-banner__summary {
    font-size: 1.02rem;
  }

  .hero-banner__gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: auto;
  }

  .hero-banner__button {
    width: auto;
    min-height: 3.5rem;
    padding-inline: 1.4rem;
  }

  .hero-banner--immersive .hero-banner__button {
    width: min(100%, 18rem);
    min-height: 4rem;
    padding-inline: 1.6rem;
  }

  .hero-banner__gallery-main,
  .hero-banner__gallery-thumb,
  .hero-banner__video-shell {
    border-radius: 22px;
  }

  .hero-banner__gallery-main {
    aspect-ratio: 1.35 / 1;
  }

  .hero-banner__gallery-thumb {
    aspect-ratio: 1 / 1;
  }

  .topbar__contacts,
  .topbar__inner,
  .header-actions {
    width: 100%;
  }

  .topbar__meta {
    margin-left: auto;
  }

  .hero-actions .button,
  .quote-actions .button {
    width: 100%;
  }

  .route-card,
  .package-card,
  .process-card,
  .timeline-card,
  .testimonial-card,
  .insight-card,
  .entry-card,
  .page-card,
  .quote-shell,
  .tour-single__hero-image,
  .tour-single__panel,
  .tour-single__sidebar-card,
  .tour-single__fact,
  .tour-single__list-card,
  .tour-single__day,
  .tour-single__stay-card {
    border-radius: 22px;
  }

  .quote-shell,
  .entry-card,
  .page-card,
  .prose-block,
  .tour-single__panel,
  .tour-single__sidebar-card {
    padding: 1.5rem;
  }

  .section-heading h2 {
    max-width: none;
  }

  .tour-single__hero {
    padding-top: 1.5rem;
  }

  .tour-single__hero-copy h1,
  .tour-single__section-heading h2 {
    max-width: none;
  }
}

.tour-single {
  padding-bottom: 5rem;
}

.tour-single__masthead {
  padding: 1.75rem 0 0;
}

.tour-single__breadcrumbs {
  margin-bottom: 1.35rem;
}

.tour-single__breadcrumbs ol {
  margin: 0;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  list-style: none;
  color: var(--nh-muted);
  font-size: 0.94rem;
}

.tour-single__breadcrumbs li {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  list-style: none;
}

.tour-single__breadcrumbs li:not(:last-child)::after {
  content: "›";
  color: rgba(var(--nh-primary-rgb), 0.45);
}

.tour-single__breadcrumbs a:hover {
  color: var(--nh-primary-dark);
}

.tour-single__intro {
  margin-bottom: 1.75rem;
}

.tour-single__intro h1 {
  font-size: clamp(1.95rem, 3.8vw, 3.1rem);
  margin-bottom: 0.9rem;
}

.tour-single__rating-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.75rem;
  color: var(--nh-muted);
  font-weight: 700;
}

.tour-single__stars {
  display: inline-flex;
  gap: 0.18rem;
  color: var(--nh-secondary);
  font-size: 1rem;
}

.tour-single__rating-score {
  color: var(--nh-secondary);
}

.tour-single__rating-meta,
.tour-single__rating-badge {
  color: var(--nh-muted);
}

.tour-single__gallery-shell {
  margin-bottom: 1.35rem;
}

.tour-single__gallery {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

.tour-single__gallery--count-1 {
  grid-template-columns: 1fr;
}

.tour-single__gallery--count-2 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tour-single__gallery-item,
.tour-single__fact-card,
.tour-single__section,
.tour-single__list-card,
.tour-single__price-card,
.tour-single__stay-card,
.tour-single__review-card,
.tour-single__sidebar-card {
  border-radius: 30px;
  box-shadow: var(--nh-shadow);
}

.tour-single__gallery-item {
  position: relative;
  overflow: hidden;
  margin: 0;
  background: rgba(255, 255, 255, 0.92);
}

.tour-single__gallery-item img,
.tour-single__gallery-modal-grid img,
.tour-single__related-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tour-single__gallery-item img {
  aspect-ratio: 1.55 / 1;
}

.tour-single__gallery-item--action::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 30%, rgba(18, 22, 30, 0.44));
}

.tour-single__gallery-button {
  position: absolute;
  right: 1rem;
  bottom: 1rem;
  z-index: 2;
  min-height: 3.2rem;
  padding: 0.75rem 1.2rem;
  border: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.96);
  color: var(--nh-primary);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 12px 26px rgba(13, 19, 27, 0.14);
}

.tour-single__facts {
  margin-bottom: 0.35rem;
}

.tour-single__fact-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
}

.tour-single__fact-card {
  padding: 1.45rem 1.25rem;
  background: rgba(255, 255, 255, 0.88);
  text-align: center;
}

.tour-single__fact-icon,
.tour-single__price-icon,
.tour-single__review-icon {
  display: inline-grid;
  place-items: center;
}

.tour-single__fact-icon {
  width: 3.5rem;
  height: 3.5rem;
  margin: 0 auto 0.9rem;
  color: var(--nh-primary-dark);
}

.tour-single__fact-icon svg,
.tour-single__price-icon svg,
.tour-single__review-icon svg {
  width: 100%;
  height: 100%;
}

.tour-single__fact-card h3 {
  margin-bottom: 0.55rem;
  color: var(--nh-secondary);
  font-size: 1.45rem;
}

.tour-single__fact-lines {
  display: grid;
  gap: 0.25rem;
}

.tour-single__fact-lines span {
  color: var(--nh-primary-dark);
  font-size: 1rem;
  font-weight: 700;
}

.tour-single__content {
  padding-top: 1.75rem;
}

.tour-single__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 340px);
  gap: 1.5rem;
  align-items: start;
}

.tour-single__main {
  min-width: 0;
  display: grid;
  gap: 1.5rem;
}

.tour-single__tabs {
  position: sticky;
  top: 6rem;
  z-index: 80;
}

.tour-single__tabs-inner {
  display: flex;
  gap: 0.5rem;
  overflow-x: auto;
  padding: 0.55rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  scrollbar-width: none;
}

.tour-single__tabs-inner::-webkit-scrollbar {
  display: none;
}

.tour-single__tab {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0.7rem 1.15rem;
  border-radius: 999px;
  color: var(--nh-muted);
  font-weight: 700;
  transition: background-color 180ms ease, color 180ms ease;
}

.tour-single__tab:hover,
.tour-single__tab.is-active {
  background: rgba(var(--nh-secondary-rgb), 0.18);
  color: var(--nh-primary-dark);
}

.tour-single__section,
.tour-single__sidebar-card {
  background: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.tour-single__section {
  padding: 2rem;
}

.tour-single__section[id],
.tour-single__sidebar[id] {
  scroll-margin-top: 8rem;
}

.tour-single__section-heading {
  margin-bottom: 1.4rem;
}

.tour-single__section-heading--split {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 1rem;
}

.tour-single__section-heading h2 {
  font-size: clamp(1.95rem, 3vw, 2.7rem);
  margin-bottom: 0;
}

.tour-single__section-meta {
  color: var(--nh-muted);
  font-size: 0.95rem;
  font-weight: 700;
}

.tour-single__lead {
  max-width: 60rem;
  margin-bottom: 1.35rem;
  color: var(--nh-muted);
  font-size: 1.08rem;
}

.tour-single__prose {
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.tour-single__prose > *:last-child {
  margin-bottom: 0;
}

.tour-single__details-grid,
.tour-single__pricing-grid,
.tour-single__related-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.tour-single__list-card,
.tour-single__price-card,
.tour-single__stay-card,
.tour-single__review-card {
  padding: 1.6rem;
}

.tour-single__list-card {
  background: linear-gradient(160deg, rgba(var(--nh-primary-rgb), 0.06), rgba(255, 255, 255, 0.98));
}

.tour-single__list-card--soft {
  background: linear-gradient(160deg, rgba(var(--nh-surface-rgb), 0.56), rgba(255, 255, 255, 0.98));
}

.tour-single__list-card h3,
.tour-single__price-card h3,
.tour-single__stay-card h3 {
  margin-bottom: 1rem;
  font-size: 1.55rem;
}

.tour-single__bullet-list,
.tour-single__highlight-list,
.tour-single__stay-list,
.tour-single__sidebar-list {
  list-style: none;
}

.tour-single__bullet-list,
.tour-single__stay-list,
.tour-single__sidebar-list {
  display: grid;
  gap: 0.8rem;
}

.tour-single__bullet-list li,
.tour-single__stay-list li,
.tour-single__sidebar-list li,
.tour-single__highlight-list li {
  position: relative;
  padding-left: 1.5rem;
  color: var(--nh-muted);
}

.tour-single__bullet-list li::before,
.tour-single__highlight-list li::before,
.tour-single__stay-list li::before,
.tour-single__sidebar-list li::before {
  position: absolute;
  left: 0;
  top: 0.15rem;
  font-weight: 800;
}

.tour-single__bullet-list--included li::before {
  content: "+";
  color: var(--nh-primary);
}

.tour-single__bullet-list--excluded li::before {
  content: "−";
  color: #c0563f;
}

.tour-single__highlight-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem 1rem;
}

.tour-single__highlight-list--single-column {
  grid-template-columns: 1fr;
}

.tour-single__highlight-list li::before,
.tour-single__stay-list li::before,
.tour-single__sidebar-list li::before {
  content: "";
  width: 0.52rem;
  height: 0.52rem;
  top: 0.6rem;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--nh-secondary), var(--nh-accent));
}

.tour-single__itinerary {
  display: grid;
  gap: 1rem;
}

.tour-single__itinerary-day {
  overflow: hidden;
  border-radius: 28px;
  background: rgba(249, 248, 244, 0.95);
  box-shadow: 0 16px 36px rgba(13, 19, 28, 0.08);
}

.tour-single__itinerary-day summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.35rem 1.45rem;
  cursor: pointer;
  list-style: none;
}

.tour-single__itinerary-day summary::marker {
  display: none;
  content: "";
}

.tour-single__itinerary-day summary::-webkit-details-marker {
  display: none;
}

.tour-single__itinerary-title {
  color: var(--nh-primary-dark);
  font-size: 1.22rem;
  font-weight: 800;
}

.tour-single__itinerary-toggle {
  display: inline-grid;
  place-items: center;
  width: 2.75rem;
  height: 2.75rem;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--nh-secondary), var(--nh-accent));
  color: var(--nh-white);
  font-size: 1.2rem;
  transition: transform 180ms ease;
}

.tour-single__itinerary-day[open] .tour-single__itinerary-toggle {
  transform: rotate(45deg);
}

.tour-single__itinerary-panel {
  padding: 0 1.45rem 1.45rem;
}

.tour-single__itinerary-copy p,
.tour-single__review-card p {
  color: var(--nh-muted);
}

.tour-single__itinerary-meta {
  display: grid;
  gap: 0.7rem;
  margin-top: 1rem;
}

.tour-single__itinerary-meta p {
  margin: 0;
  color: var(--nh-primary-dark);
}

.tour-single__itinerary-meta strong {
  color: var(--nh-primary-dark);
}

.tour-single__price-card {
  background: linear-gradient(160deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.42));
}

.tour-single__price-items {
  display: grid;
}

.tour-single__price-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0.8rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(var(--nh-primary-rgb), 0.08);
}

.tour-single__price-item:first-child {
  padding-top: 0.2rem;
  border-top: 0;
}

.tour-single__price-icon {
  width: 2.25rem;
  height: 2.25rem;
  color: var(--nh-secondary);
}

.tour-single__price-item strong {
  display: block;
  margin-bottom: 0.25rem;
  color: var(--nh-secondary);
  font-size: clamp(1.3rem, 2.2vw, 1.95rem);
  font-weight: 800;
}

.tour-single__price-item span {
  color: var(--nh-primary-dark);
  font-size: 1rem;
  font-weight: 600;
}

.tour-single__stay-card {
  margin-top: 1rem;
  background: linear-gradient(160deg, rgba(var(--nh-primary-rgb), 0.06), rgba(255, 255, 255, 0.98));
}

.tour-single__review-card {
  display: grid;
  gap: 1rem;
}

.tour-single__review-summary {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.tour-single__review-icon {
  flex: 0 0 auto;
  width: 3rem;
  height: 3rem;
  color: var(--nh-secondary);
}

.tour-single__review-score {
  margin-bottom: 0.15rem;
  color: var(--nh-primary-dark);
  font-size: 1.8rem;
  font-weight: 800;
}

.tour-single__review-meta {
  margin-bottom: 0;
}

.tour-single__related-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tour-single__related-card {
  padding: 0 0 1.4rem;
  overflow: hidden;
}

.tour-single__related-image {
  display: block;
  margin-bottom: 1.2rem;
}

.tour-single__related-image img {
  aspect-ratio: 1.38 / 1;
}

.tour-single__related-card .package-card__badge,
.tour-single__related-card h3,
.tour-single__related-card p,
.tour-single__related-card .package-card__footer {
  padding-inline: 1.4rem;
}

.tour-single__sidebar {
  position: sticky;
  top: 6rem;
}

.tour-single__sidebar-card {
  overflow: hidden;
}

.tour-single__sidebar-head {
  display: grid;
  gap: 0.08rem;
  padding: 0.9rem 1.1rem;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-primary));
  color: var(--nh-white);
  text-align: center;
  border-radius: 30px;
  box-shadow: 0 18px 36px rgba(24, 38, 32, 0.18);
}

.tour-single__sidebar-head span {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  opacity: 0.82;
}

.tour-single__sidebar-head strong {
  font-size: clamp(1.25rem, 2.4vw, 1.7rem);
  font-weight: 800;
  line-height: 1.05;
}

.tour-single__notice {
  margin: 1rem 1.5rem 0;
  padding: 0.9rem 1rem;
  border-radius: 16px;
  font-weight: 700;
}

.tour-single__notice--success {
  background: rgba(65, 145, 86, 0.12);
  color: #346d44;
}

.tour-single__notice--error {
  background: rgba(192, 86, 63, 0.1);
  color: #a24631;
}

.tour-single__inquiry,
.tour-single__cf7 {
  padding: 1.2rem 1.5rem 0;
}

.tour-single__form-shell {
  display: grid;
  gap: 1rem;
}

.tour-single__form-intro h3 {
  margin: 0;
  color: var(--nh-primary-dark);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(1.2rem, 2vw, 1.55rem);
  line-height: 1.1;
}

.tour-single__form-intro p,
.tour-single__form-note {
  margin: 0;
  color: var(--nh-muted);
  font-size: 0.94rem;
  line-height: 1.7;
}

.tour-single__trip-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.tour-single__trip-pill {
  display: inline-flex;
  align-items: center;
  min-height: 2rem;
  padding: 0.45rem 0.8rem;
  border-radius: 999px;
  background: rgba(var(--nh-surface-rgb), 0.9);
  color: var(--nh-primary-dark);
  font-size: 0.82rem;
  font-weight: 700;
}

.tour-single__form {
  display: grid;
  gap: 0.9rem;
}

.tour-single__field label {
  display: block;
  margin-bottom: 0.42rem;
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
}

.tour-single__field--honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.tour-single__cf7 .wpcf7,
.tour-single__cf7 .wpcf7 form {
  display: block;
  width: 100%;
}

.tour-single__cf7 .wpcf7 form {
  display: grid;
  gap: 0.85rem;
}

.tour-single__cf7 .wpcf7 p {
  margin: 0;
}

.tour-single__cf7 label {
  display: block;
  color: var(--nh-primary-dark);
  font-size: 0.92rem;
  font-weight: 700;
}

.tour-single__cf7 .wpcf7-form-control-wrap {
  display: block;
  margin-top: 0.42rem;
}

.tour-single__cf7 input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.tour-single__cf7 input[type='date'],
.tour-single__cf7 input[type='email'],
.tour-single__cf7 input[type='number'],
.tour-single__cf7 input[type='tel'],
.tour-single__cf7 input[type='text'],
.tour-single__cf7 select,
.tour-single__cf7 textarea {
  width: 100%;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.14);
  border-radius: 18px;
  background: var(--nh-white);
  color: var(--nh-ink);
  font: inherit;
}

.tour-single__cf7 input:not([type='submit']):not([type='checkbox']):not([type='radio']),
.tour-single__cf7 input[type='date'],
.tour-single__cf7 input[type='email'],
.tour-single__cf7 input[type='number'],
.tour-single__cf7 input[type='tel'],
.tour-single__cf7 input[type='text'],
.tour-single__cf7 select {
  min-height: 3.2rem;
  padding: 0 0.95rem;
  line-height: 1.2;
}

.tour-single__cf7 textarea {
  min-height: 7.2rem;
  padding: 0.95rem;
  resize: vertical;
}

.tour-single__cf7 input:focus,
.tour-single__cf7 select:focus,
.tour-single__cf7 textarea:focus {
  outline: 0;
  border-color: rgba(var(--nh-secondary-rgb), 0.72);
  box-shadow: 0 0 0 4px rgba(var(--nh-secondary-rgb), 0.14);
}

.tour-single__cf7 .wpcf7-submit {
  width: 100%;
  margin-top: 0.2rem;
  min-height: 52px;
  padding: 0.95rem 1.45rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--nh-primary-dark), var(--nh-accent));
  color: var(--nh-white);
  font-weight: 700;
  box-shadow: 0 16px 32px rgba(var(--nh-primary-rgb), 0.18);
  cursor: pointer;
  transition: transform 180ms ease, box-shadow 180ms ease, opacity 180ms ease;
}

.tour-single__cf7 .wpcf7-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 20px 36px rgba(var(--nh-primary-rgb), 0.24);
}

.tour-single__cf7 .wpcf7-not-valid-tip {
  margin-top: 0.35rem;
  font-size: 0.82rem;
  font-weight: 600;
}

.tour-single__cf7 .wpcf7-response-output {
  margin: 0 !important;
  padding: 0.9rem 1rem !important;
  border: 0 !important;
  border-radius: 16px;
  font-weight: 700;
}

.tour-single__cf7 .wpcf7 form.sent .wpcf7-response-output {
  background: rgba(65, 145, 86, 0.12);
  color: #346d44;
}

.tour-single__cf7 .wpcf7 form.invalid .wpcf7-response-output,
.tour-single__cf7 .wpcf7 form.failed .wpcf7-response-output,
.tour-single__cf7 .wpcf7 form.aborted .wpcf7-response-output,
.tour-single__cf7 .wpcf7 form.unaccepted .wpcf7-response-output {
  background: rgba(192, 86, 63, 0.1);
  color: #a24631;
}

.tour-single__cf7-empty {
  margin: 0;
  padding: 1rem 1.1rem;
  border-radius: 18px;
  background: rgba(var(--nh-secondary-rgb), 0.12);
  color: var(--nh-primary-dark);
  font-weight: 700;
}

.tour-single__field {
  display: block;
}

.tour-single__field input,
.tour-single__field select,
.tour-single__field textarea {
  width: 100%;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.14);
  border-radius: 18px;
  background: var(--nh-white);
  color: var(--nh-ink);
  font: inherit;
}

.tour-single__field input,
.tour-single__field select {
  min-height: 3.2rem;
  padding: 0 0.95rem;
  line-height: 1.2;
}

.tour-single__field select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding-right: 2.85rem;
  background-image:
    linear-gradient(45deg, transparent 50%, var(--nh-primary-dark) 50%),
    linear-gradient(135deg, var(--nh-primary-dark) 50%, transparent 50%);
  background-position:
    calc(100% - 1.15rem) calc(50% - 0.12rem),
    calc(100% - 0.8rem) calc(50% - 0.12rem);
  background-size: 0.42rem 0.42rem, 0.42rem 0.42rem;
  background-repeat: no-repeat;
}

.tour-single__field select::-ms-expand {
  display: none;
}

.tour-single__field input::placeholder,
.tour-single__field textarea::placeholder {
  color: rgba(100, 106, 93, 0.9);
  opacity: 1;
}

.tour-single__field textarea {
  min-height: 7.2rem;
  padding: 0.95rem;
  resize: vertical;
}

.tour-single__field input:focus,
.tour-single__field select:focus,
.tour-single__field textarea:focus {
  outline: 0;
  border-color: rgba(var(--nh-secondary-rgb), 0.72);
  box-shadow: 0 0 0 4px rgba(var(--nh-secondary-rgb), 0.14);
}

.tour-single__field-row {
  display: grid;
  grid-template-columns: minmax(6rem, 0.55fr) minmax(0, 1fr);
  gap: 0.8rem;
}

.tour-single__travelers {
  display: grid;
  gap: 0.75rem;
}

.tour-single__traveler {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0.8rem;
  align-items: center;
}

.tour-single__traveler-copy strong {
  display: block;
  color: var(--nh-primary-dark);
  font-size: 1rem;
}

.tour-single__traveler-copy span {
  color: var(--nh-muted);
  font-size: 0.82rem;
  font-weight: 600;
}

.tour-single__counter {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.3rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.14);
  border-radius: 999px;
  background: rgba(var(--nh-surface-rgb), 0.26);
}

.tour-single__counter button {
  width: 2rem;
  height: 2rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(var(--nh-secondary-rgb), 0.2);
  color: var(--nh-accent);
  font-size: 1.1rem;
  font-weight: 800;
  cursor: pointer;
}

.tour-single__counter input {
  width: 2.5rem;
  min-height: auto;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: center;
  font-weight: 800;
  box-shadow: none;
  -moz-appearance: textfield;
  appearance: textfield;
}

.tour-single__counter input::-webkit-outer-spin-button,
.tour-single__counter input::-webkit-inner-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

.tour-single__submit {
  width: 100%;
  margin-top: 0.3rem;
}

.tour-single__sidebar-list {
  padding: 0 1.5rem;
  margin-bottom: 1rem;
}

.tour-single__contact {
  display: grid;
  gap: 0.55rem;
  padding: 0 1.5rem 1.5rem;
}

.tour-single__contact a {
  color: var(--nh-primary-dark);
  font-weight: 700;
}

.tour-single__gallery-modal[hidden] {
  display: none;
}

.tour-single__gallery-modal {
  position: fixed;
  inset: 0;
  z-index: 400;
}

.tour-single__gallery-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(8, 12, 17, 0.74);
}

.tour-single__gallery-panel {
  position: relative;
  width: min(1100px, calc(100vw - 2rem));
  max-height: calc(100vh - 2rem);
  margin: 1rem auto;
  overflow: auto;
  border-radius: 28px;
  background: var(--nh-white);
  box-shadow: 0 28px 60px rgba(8, 11, 18, 0.36);
}

.tour-single__gallery-panel-head {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 1.15rem 1.25rem;
  background: rgba(255, 255, 255, 0.95);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.tour-single__gallery-close {
  width: 2.5rem;
  height: 2.5rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(var(--nh-primary-rgb), 0.08);
  color: var(--nh-primary-dark);
  font-size: 1.5rem;
  line-height: 1;
  cursor: pointer;
}

.tour-single__gallery-modal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  padding: 0 1.25rem 1.25rem;
}

.tour-single__gallery-modal-grid figure {
  margin: 0;
  overflow: hidden;
  border-radius: 22px;
}

.tour-single__gallery-modal-grid img {
  aspect-ratio: 1.2 / 1;
}

@media (max-width: 1080px) {
  .tour-single__gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tour-single__gallery--count-1,
  .tour-single__layout,
  .tour-single__pricing-grid,
  .tour-single__related-grid {
    grid-template-columns: 1fr;
  }

  .tour-single__fact-cards,
  .tour-single__details-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tour-single__sidebar {
    position: static;
  }
}

@media (max-width: 820px) {
  .tour-single__fact-cards,
  .tour-single__highlight-list,
  .tour-single__gallery-modal-grid {
    grid-template-columns: 1fr;
  }

  .tour-single__gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tour-single__gallery--count-1 {
    grid-template-columns: 1fr;
  }

  .tour-single__tabs {
    top: 5.2rem;
  }

  .tour-single__field-row,
  .tour-single__traveler {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .tour-single__masthead {
    padding-top: 1.25rem;
  }

  .tour-single__intro h1 {
    font-size: clamp(2rem, 9vw, 3rem);
  }

  .tour-single__gallery,
  .tour-single__fact-cards,
  .tour-single__details-grid {
    grid-template-columns: 1fr;
  }

  .tour-single__gallery-item,
  .tour-single__fact-card,
  .tour-single__section,
  .tour-single__list-card,
  .tour-single__price-card,
  .tour-single__stay-card,
  .tour-single__review-card,
  .tour-single__sidebar-card,
  .tour-single__gallery-panel {
    border-radius: 22px;
  }

  .tour-single__section,
  .tour-single__price-card,
  .tour-single__stay-card,
  .tour-single__review-card,
  .tour-single__form {
    padding: 1.35rem;
  }

  .tour-single__sidebar-list,
  .tour-single__contact {
    padding-inline: 1.35rem;
  }

  .tour-single__tabs-inner {
    padding: 0.45rem;
  }

  .tour-single__tab {
    min-height: 2.85rem;
    padding-inline: 1rem;
  }

  .tour-single__gallery-button {
    right: 0.8rem;
    bottom: 0.8rem;
    min-height: 2.8rem;
    padding-inline: 0.9rem;
    font-size: 0.9rem;
  }
}

@media (max-width: 1100px) {
  .header-shell {
    gap: 1rem;
    min-height: 88px;
  }

  .site-branding .custom-logo,
  .site-branding .navbar-logo {
    max-height: min(64px, var(--nh-logo-height));
    max-width: min(220px, var(--nh-logo-width));
  }

  .brand-lockup__subtitle {
    white-space: normal;
    letter-spacing: 0.24em;
  }

  .main-navigation .menu,
  .main-navigation .menu-fallback {
    gap: 0.85rem 1rem;
  }

  .header-actions {
    flex-wrap: wrap;
  }

  .header-cta {
    min-height: 48px;
    padding-inline: 1.05rem;
  }

  .trust-strip__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .destination-card {
    min-height: 0;
  }

  .package-card__footer {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .tour-single__section,
  .tour-single__sidebar-card {
    padding: 1.6rem;
  }
}

@media (max-width: 960px) {
  .topbar__inner {
    align-items: flex-start;
    padding-block: 0.55rem;
  }

  .topbar__contacts,
  .topbar__meta {
    width: 100%;
    min-width: 0;
  }

  .topbar__meta {
    justify-content: flex-start;
    text-align: left;
    flex-wrap: wrap;
  }

  .topbar__contact {
    min-width: 0;
    max-width: 100%;
  }

  .header-shell {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.9rem;
    min-height: 82px;
    padding-block: 0.7rem;
  }

  .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .header-cta {
    display: none;
  }

  .main-navigation {
    display: none;
    grid-column: 1 / -1;
    order: 3;
    width: 100%;
    padding-top: 0.25rem;
  }

  .main-navigation.is-open {
    display: block;
  }

  .main-navigation .menu,
  .main-navigation .menu-fallback {
    display: grid;
    justify-items: stretch;
    gap: 0.35rem;
    padding: 1rem;
    border-radius: var(--nh-radius-md);
    background: rgba(255, 255, 255, 0.94);
    box-shadow: 0 16px 36px rgba(18, 25, 35, 0.08);
  }

  .main-navigation a,
  .main-navigation .menu-fallback a {
    display: block;
    padding: 0.82rem 1rem;
    border-radius: 14px;
    text-align: left;
  }

  .main-navigation a::after,
  .main-navigation .menu-fallback a::after {
    display: none;
  }

  .hero-banner {
    height: min(72vh, 44rem);
    min-height: 30rem;
  }

  .hero-banner__inner--immersive {
    padding-inline: 1rem;
  }

  .hero-banner--immersive h1 {
    max-width: 11ch;
    font-size: clamp(2.55rem, 7vw, 4.3rem);
  }

  .hero-banner__summary,
  .hero-banner--immersive .hero-banner__summary {
    max-width: 34rem;
  }

  .section-shell {
    padding: 3.5rem 0;
  }

  .quote-section,
  .content-shell {
    padding-bottom: 3.5rem;
  }

  .trust-strip {
    padding-bottom: 1.6rem;
  }

  .tour-single__tabs {
    top: 5.2rem;
  }

  .tour-single__tabs-inner {
    padding-inline: 0.2rem;
  }

  .tour-single__layout {
    gap: 1rem;
  }

  .tour-single__gallery-button {
    max-width: calc(100% - 1.6rem);
  }
}

@media (max-width: 720px) {
  .topbar {
    font-size: 0.84rem;
  }

  .topbar__contacts {
    gap: 0.75rem;
  }

  .topbar__contact {
    width: 100%;
  }

  .brand-lockup__title {
    font-size: clamp(1.45rem, 7vw, 2rem);
  }

  .brand-lockup__subtitle {
    font-size: 0.72rem;
    letter-spacing: 0.18em;
  }

  .trust-strip__grid,
  .package-grid,
  .testimonial-grid,
  .insight-grid,
  .destination-grid {
    grid-template-columns: 1fr;
  }

  .section-shell {
    padding: 3rem 0;
  }

  .quote-shell,
  .route-card,
  .process-card,
  .timeline-card,
  .package-card,
  .destination-card,
  .testimonial-card,
  .insight-card,
  .entry-card,
  .page-card {
    padding: 1.35rem;
  }

  .packages-section__title {
    max-width: none;
  }

  .packages-section .homepage-package-card__content {
    padding: 1.3rem;
  }

  .package-card__footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .packages-section .homepage-package-card__footer {
    flex-direction: column;
    align-items: flex-start;
  }

  .packages-section--content-center .homepage-package-card__footer {
    align-items: center;
  }

  .packages-section--content-right .homepage-package-card__footer {
    align-items: flex-end;
  }

  .quote-actions .button,
  .package-card__footer a {
    width: 100%;
  }

  .packages-section .homepage-package-card__cta {
    width: 100%;
  }

  .tour-single__breadcrumbs ol {
    gap: 0.4rem;
    font-size: 0.88rem;
  }

  .tour-single__rating-row {
    gap: 0.55rem;
  }

  .tour-single__fact-cards,
  .tour-single__details-grid,
  .tour-single__pricing-grid,
  .tour-single__highlight-list {
    grid-template-columns: 1fr;
  }

  .tour-single__section,
  .tour-single__sidebar-card {
    padding: 1.35rem;
  }

  .tour-single__sidebar-head strong {
    font-size: clamp(1.15rem, 6vw, 1.45rem);
  }
}

@media (max-width: 520px) {
  .tour-archive__hero-media {
    min-height: 18rem;
    border-radius: 2rem 1rem 1rem 1rem;
  }

  .tour-archive__hero-copy {
    gap: 1rem;
  }

  .tour-archive__hero-cta,
  .tour-archive__sort,
  .tour-archive__sort select {
    width: 100%;
  }

  .tour-archive__chips {
    gap: 0.65rem;
  }

  .tour-archive__chip {
    width: 100%;
    justify-content: center;
  }

  .tour-archive__destination-list,
  .tour-archive__filter-list {
    grid-template-columns: 1fr;
  }

  .tour-archive__card {
    padding: 0.8rem;
    border-radius: 1.45rem;
  }

  .tour-archive__card-price-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .wrap {
    width: min(calc(100vw - 1.25rem), 1180px);
  }

  .topbar__inner {
    gap: 0.55rem;
  }

  .header-shell {
    min-height: 74px;
    padding-block: 0.55rem;
  }

  .site-branding .custom-logo,
  .site-branding .navbar-logo {
    max-height: min(56px, var(--nh-logo-height));
    max-width: min(180px, var(--nh-logo-width));
  }

  .menu-toggle {
    width: 46px;
    height: 46px;
    border-radius: 14px;
  }

  .hero-banner {
    min-height: 26rem;
  }

  .hero-banner--immersive {
    height: min(64vh, 32rem);
    min-height: 26rem;
  }

  .hero-banner__inner--immersive {
    max-width: calc(100vw - 1.5rem);
    padding-block: 3.5rem;
  }

  .hero-banner__eyebrow {
    font-size: 0.78rem;
    letter-spacing: 0.14em;
  }

  .hero-banner--immersive h1 {
    max-width: 10ch;
    font-size: clamp(2.15rem, 11vw, 3.5rem);
  }

  .hero-banner__button,
  .hero-banner--immersive .hero-banner__button {
    width: 100%;
    max-width: 100%;
    min-height: 3.6rem;
  }

  .tour-single__tabs-inner {
    gap: 0.55rem;
    padding: 0.35rem;
  }

  .tour-single__tab {
    min-height: 2.75rem;
    padding-inline: 0.9rem;
  }

  .tour-single__field input,
  .tour-single__field select {
    min-height: 3rem;
  }

  .tour-single__counter {
    width: 100%;
    justify-content: space-between;
  }

  .tour-single__counter input {
    width: 3rem;
  }
}

/*
 * Final responsive hardening pass.
 * Keeps all major templates stable on phones, tablets, and narrow laptops.
 */
html,
body {
  max-width: 100%;
}

body {
  overflow-x: hidden;
}

.section-heading,
.packages-section__heading,
.packages-section__heading-inner,
.tour-single__main,
.tour-single__sidebar,
.tour-archive__results,
.journal-article__content,
.journal-article__sidebar,
.about-hero__copy,
.about-values__content,
.about-founder__content,
.contact-page__hero-copy,
.contact-page__details,
.destination-directory__hero-copy,
.destination-directory__section-head {
  min-width: 0;
}

.section-heading h1,
.section-heading h2,
.section-heading h3,
.packages-section__title,
.tour-single__intro h1,
.tour-single__section-heading h2,
.tour-archive__hero-copy h1,
.journal-archive__hero-copy h1,
.journal-article__hero-copy h1,
.about-hero__copy h1,
.contact-page__hero-copy h1,
.destination-directory__hero-copy h1,
.entry-card h2,
.page-card h1,
.journal-card__title,
.tour-archive__card-body h3,
.destination-directory__card-body h3,
.destination-card h3,
.homepage-package-card__title,
.quote-form-card h3 {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.prose-block,
.tour-single__prose,
.journal-article__prose,
.about-story__prose,
.contact-page__prose,
.tour-archive__hero-description,
.journal-archive__hero-text,
.destination-directory__hero-intro,
.quote-copy__lede {
  overflow-wrap: anywhere;
}

.prose-block table,
.tour-single__prose table,
.journal-article__prose table,
.about-story__prose table,
.contact-page__prose table {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.prose-block pre,
.tour-single__prose pre,
.journal-article__prose pre,
.about-story__prose pre,
.contact-page__prose pre {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre-wrap;
  word-break: break-word;
}

.tour-single__field input,
.tour-single__field select,
.tour-single__field textarea,
.tour-archive__sort select,
.tour-archive__filter-range-input,
.contact-page__cf7 input,
.contact-page__cf7 select,
.contact-page__cf7 textarea,
.quote-form-card input,
.quote-form-card select,
.quote-form-card textarea {
  max-width: 100%;
}

@media (max-width: 1180px) {
  .about-hero__grid,
  .about-story__grid,
  .about-values__grid,
  .about-founder__grid,
  .about-cta__inner,
  .contact-page__hero-grid,
  .contact-page__main-grid,
  .destination-directory__hero-grid,
  .tour-archive__hero,
  .tour-archive__grid,
  .tour-single__layout,
  .journal-archive__hero,
  .journal-article__layout {
    grid-template-columns: 1fr;
  }

  .tour-single__sidebar,
  .tour-archive__filters,
  .journal-article__sidebar {
    position: static;
    top: auto;
  }

  .destination-directory__hero-media,
  .tour-archive__hero-media,
  .journal-article__hero-media,
  .contact-page__hero-media,
  .about-hero__media,
  .about-founder__media {
    order: -1;
  }

  .destination-directory__grid,
  .about-testimonials__grid,
  .about-recognition__grid,
  .contact-page__detail-grid,
  .tour-single__related-grid,
  .journal-archive__grid,
  .journal-article__related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .topbar__inner,
  .topbar__contacts,
  .header-shell,
  .header-actions {
    width: 100%;
  }

  .topbar__inner {
    flex-wrap: wrap;
    gap: 0.75rem;
  }

  .topbar__meta {
    margin-left: 0;
  }

  .header-shell {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .site-branding,
  .site-branding a {
    min-width: 0;
  }

  .brand-lockup,
  .brand-lockup__title,
  .brand-lockup__subtitle {
    max-width: 100%;
  }

  .split-layout,
  .split-layout--destinations,
  .process-grid,
  .quote-shell,
  .footer-grid,
  .tour-single__hero-grid,
  .tour-single__details-grid,
  .tour-single__pricing-grid,
  .tour-single__stay-grid,
  .tour-single__fact-cards,
  .tour-archive__card,
  .journal-card--featured,
  .destination-directory__card,
  .destinations-section--design-4 .destination-card,
  .destinations-section--design-10 .destination-card {
    grid-template-columns: 1fr;
  }

  .trust-strip__grid,
  .testimonial-grid,
  .insight-grid,
  .tour-single__highlight-list,
  .tour-single__gallery-modal-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .destinations-section--design-2 .destination-grid,
  .destinations-section--design-3 .destination-grid,
  .destinations-section--design-5 .destination-grid,
  .destinations-section--design-6 .destination-grid,
  .destinations-section--design-7 .destination-grid,
  .destinations-section--design-8 .destination-grid,
  .destinations-section--design-9 .destination-grid,
  .destination-directory__grid,
  .about-testimonials__grid,
  .about-recognition__grid,
  .contact-page__detail-grid,
  .tour-single__related-grid,
  .journal-archive__grid,
  .journal-article__related-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .destinations-section--design-3 .destination-card:first-child,
  .destinations-section--design-8 .destination-card:first-child {
    grid-column: span 2;
    grid-row: auto;
  }

  .destinations-section--design-5 .destination-card__media,
  .destinations-section--design-9 .destination-card__media {
    min-height: 16rem;
  }

  .destination-directory__hero-actions,
  .journal-archive__hero-actions,
  .about-hero__actions,
  .about-cta__actions {
    flex-wrap: wrap;
  }
}

@media (max-width: 760px) {
  .section-shell,
  .about-section,
  .contact-page__hero,
  .contact-page__main,
  .destination-directory__hero,
  .destination-directory__listing,
  .tour-archive__hero,
  .tour-archive__directory,
  .journal-archive__hero,
  .journal-archive__listing,
  .journal-article__hero,
  .journal-article__main,
  .tour-single__content {
    padding-top: 2.75rem;
    padding-bottom: 2.75rem;
  }

  .hero-banner__inner,
  .hero-banner__inner--immersive,
  .quote-shell,
  .tour-archive__panel,
  .tour-single__section,
  .tour-single__sidebar-card,
  .journal-card__body,
  .journal-archive__hero-note,
  .journal-archive__hero-stat,
  .journal-article__prose,
  .journal-article__sidebar-card,
  .journal-article__tags,
  .journal-article__author-card,
  .about-story__content,
  .about-story__aside-card,
  .about-values__card,
  .about-testimonials__card,
  .about-recognition__item,
  .about-cta__inner,
  .contact-page__prose,
  .contact-page__detail-card,
  .contact-page__form-card,
  .destination-directory__card,
  .destination-card,
  .tour-archive__card {
    padding: 1.25rem;
  }

  .hero-banner h1,
  .hero-banner--immersive h1,
  .tour-single__intro h1,
  .tour-archive__hero-copy h1,
  .journal-archive__hero-copy h1,
  .journal-article__hero-copy h1,
  .about-hero__copy h1,
  .contact-page__hero-copy h1,
  .destination-directory__hero-copy h1 {
    max-width: none;
  }

  .trust-strip__grid,
  .package-grid,
  .testimonial-grid,
  .insight-grid,
  .destination-grid,
  .tour-single__fact-cards,
  .tour-single__details-grid,
  .tour-single__pricing-grid,
  .tour-single__highlight-list,
  .tour-single__related-grid,
  .journal-archive__grid,
  .journal-article__related-grid,
  .about-testimonials__grid,
  .about-recognition__grid,
  .contact-page__detail-grid,
  .destination-directory__grid {
    grid-template-columns: 1fr;
  }

  .destinations-section--design-3 .destination-card:first-child,
  .destinations-section--design-8 .destination-card:first-child {
    grid-column: auto;
  }

  .destinations-section--design-5 .destination-grid,
  .destinations-section--design-6 .destination-grid,
  .destinations-section--design-7 .destination-grid,
  .destinations-section--design-8 .destination-grid,
  .destinations-section--design-9 .destination-grid {
    grid-template-columns: 1fr;
  }

  .destinations-section--design-5 .destination-card__media,
  .destinations-section--design-9 .destination-card__media {
    min-height: 14rem;
  }

  .tour-single__gallery,
  .tour-single__gallery--count-1,
  .tour-single__gallery-modal-grid,
  .tour-single__field-row,
  .tour-single__traveler,
  .tour-archive__destination-list,
  .tour-archive__filter-list {
    grid-template-columns: 1fr;
  }

  .tour-single__tabs {
    top: 4.85rem;
  }

  .tour-single__tabs-inner {
    gap: 0.5rem;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .tour-single__tabs-inner::-webkit-scrollbar {
    display: none;
  }

  .tour-single__tab,
  .tour-archive__hero-cta,
  .destination-directory__hero-button,
  .about-hero__button,
  .about-cta__button,
  .journal-archive__hero-button,
  .tour-single__sidebar-button,
  .tour-single__submit,
  .quote-form-card input[type="submit"],
  .quote-form-card .wpcf7-submit {
    width: 100%;
  }

  .tour-archive__sort,
  .tour-archive__sort select,
  .contact-page__form-shell,
  .quote-form-card,
  .quote-copy__contacts {
    width: 100%;
  }
}

@media (max-width: 560px) {
  .wrap {
    width: min(calc(100vw - 1.1rem), 1180px);
  }

  .topbar {
    font-size: 0.82rem;
  }

  .topbar__contact,
  .topbar__meta {
    width: 100%;
    justify-content: flex-start;
  }

  .site-branding .custom-logo,
  .site-branding .navbar-logo {
    max-width: min(170px, var(--nh-logo-width));
  }

  .menu-toggle {
    width: 44px;
    height: 44px;
  }

  .hero-banner {
    min-height: 24rem;
  }

  .hero-banner--immersive {
    height: min(62vh, 30rem);
    min-height: 24rem;
  }

  .hero-banner__inner--immersive {
    padding-block: 3rem;
  }

  .hero-banner__button,
  .hero-banner--immersive .hero-banner__button,
  .packages-section .homepage-package-card__cta,
  .destination-card__cta,
  .journal-card__cta,
  .tour-archive__card-cta {
    width: 100%;
    justify-content: center;
  }

  .destination-card__media,
  .destinations-section--design-2 .destination-card__media,
  .destinations-section--design-6 .destination-card__media,
  .destinations-section--design-7 .destination-card__media,
  .destinations-section--design-8 .destination-card__media,
  .destinations-section--design-10 .destination-card__media,
  .destination-directory__card-media,
  .tour-archive__card-media,
  .journal-card__media {
    min-height: 12.5rem;
  }

  .destinations-section--design-5 .destination-card__body,
  .destinations-section--design-9 .destination-card__body {
    padding: 1.35rem;
  }

  .destinations-section--design-5 .destination-card h3,
  .destinations-section--design-9 .destination-card h3 {
    font-size: clamp(1.35rem, 7vw, 2rem);
  }

  .tour-single__counter {
    width: 100%;
    justify-content: space-between;
  }

  .tour-single__counter input {
    width: 3rem;
  }

  .footer-grid {
    gap: 1rem;
  }
}

.testimonials-section {
  position: relative;
}

.testimonials-section__heading {
  max-width: min(58rem, 100%);
  margin-inline: auto;
  text-align: center;
}

.testimonials-section__heading h2 {
  position: relative;
  display: inline-block;
  padding-bottom: 0.75rem;
}

.testimonials-section__heading h2::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 4.5rem;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--nh-secondary), rgba(var(--nh-secondary-rgb), 0.55));
  transform: translateX(-50%);
}

.testimonials-section .testimonial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(1.25rem, 2.4vw, 2rem);
  align-items: stretch;
}

.testimonials-section .testimonial-card {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
  min-height: 100%;
  padding: 1.55rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 2rem;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(var(--nh-surface-rgb), 0.48));
  box-shadow: 0 26px 50px rgba(var(--nh-primary-rgb), 0.07);
  overflow: hidden;
}

.testimonials-section .testimonial-card::before {
  content: none;
}

.testimonial-card__media {
  position: relative;
  overflow: hidden;
  border-radius: 1.5rem;
  min-height: 15rem;
  background: linear-gradient(135deg, rgba(var(--nh-primary-rgb), 0.22), rgba(var(--nh-secondary-rgb), 0.3));
}

.testimonial-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.testimonial-card__media-fallback {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(2.4rem, 6vw, 4rem);
  color: rgba(255, 255, 255, 0.86);
  letter-spacing: 0.06em;
}

.testimonial-card__content {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 1rem;
}

.testimonial-card__top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1rem;
}

.testimonial-card__quote-mark {
  color: rgba(var(--nh-secondary-rgb), 0.72);
  font-family: "Playfair Display", Georgia, serif;
  font-size: clamp(3rem, 5vw, 5rem);
  line-height: 0.7;
}

.testimonial-card__meta-top {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 0.7rem;
  margin-left: auto;
}

.testimonial-stars {
  display: inline-flex;
  gap: 0.2rem;
  font-size: 1rem;
  line-height: 1;
}

.testimonial-stars__star {
  color: rgba(var(--nh-secondary-rgb), 0.22);
}

.testimonial-stars__star.is-filled {
  color: #f5c638;
}

.testimonial-card__verified {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.65rem;
  padding: 0.5rem 1rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.28);
  border-radius: 999px;
  background: rgba(82, 170, 111, 0.14);
  color: #2f8c4f;
  font-size: 0.92rem;
  font-weight: 700;
}

.testimonial-card__quote {
  margin: 0;
  color: rgba(31, 39, 57, 0.86);
  font-size: clamp(1.05rem, 1.4vw, 1.25rem);
  line-height: 1.85;
}

.testimonial-card__footer {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: auto;
  padding-top: 1.15rem;
  border-top: 1px solid rgba(var(--nh-primary-rgb), 0.08);
}

.testimonial-card__avatar {
  flex: 0 0 3.6rem;
  width: 3.6rem;
  height: 3.6rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(var(--nh-secondary-rgb), 0.92), rgba(var(--nh-secondary-rgb), 0.72));
  color: #243a72;
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  box-shadow: inset 0 0 0 4px rgba(255, 255, 255, 0.82);
}

.testimonial-card__author {
  display: grid;
  gap: 0.18rem;
}

.testimonial-card__author strong {
  color: #20345c;
  font-size: 1.05rem;
}

.testimonial-card__location,
.testimonial-card__role {
  color: rgba(31, 39, 57, 0.58);
  font-size: 0.98rem;
}

.testimonials-section__summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.5rem;
  padding: 0.3rem 0;
}

.testimonials-section__summary-copy {
  margin: 0;
  color: #20345c;
  font-size: 1rem;
  font-weight: 700;
}

.testimonials-section__summary-rating {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.65rem;
  color: rgba(31, 39, 57, 0.56);
}

.testimonials-section__summary-rating strong {
  color: rgba(31, 39, 57, 0.64);
  font-size: 1rem;
  font-weight: 700;
}

.testimonials-section__platforms {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1.5rem;
}

.testimonials-section__platforms span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.75rem;
  padding: 0.8rem 1.4rem;
  border: 1px solid rgba(var(--nh-primary-rgb), 0.08);
  border-radius: 1.6rem;
  background: rgba(255, 255, 255, 0.94);
  color: rgba(31, 39, 57, 0.76);
  font-size: 1.15rem;
  font-weight: 700;
  box-shadow: 0 16px 30px rgba(var(--nh-primary-rgb), 0.05);
}

.testimonials-section--verified-cards .testimonial-card__media {
  display: none;
}

.testimonials-section--verified-cards .testimonial-card {
  padding: clamp(1.5rem, 2vw, 2rem);
}

.testimonials-section--verified-cards .testimonial-card__quote {
  font-style: italic;
  font-size: clamp(1.18rem, 1.7vw, 1.42rem);
  line-height: 1.85;
}

.testimonials-section--spotlight-story .testimonials-section__heading,
.testimonials-section--editorial-rows .testimonials-section__heading {
  margin-inline: 0;
  text-align: left;
}

.testimonials-section--spotlight-story .testimonials-section__heading h2::after,
.testimonials-section--editorial-rows .testimonials-section__heading h2::after {
  left: 0;
  transform: none;
}

.testimonials-section--spotlight-story .testimonial-card--featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
  gap: 0;
  padding: 0;
}

.testimonials-section--spotlight-story .testimonial-card--featured .testimonial-card__media {
  min-height: 100%;
  border-radius: 0;
}

.testimonials-section--spotlight-story .testimonial-card--featured .testimonial-card__content {
  padding: clamp(1.8rem, 3vw, 2.8rem);
  gap: 1.35rem;
}

.testimonials-section--spotlight-story .testimonial-card--featured .testimonial-card__quote {
  max-width: 26ch;
  color: rgba(31, 39, 57, 0.62);
  font-size: clamp(1.3rem, 2vw, 1.7rem);
  line-height: 1.7;
}

.testimonials-section--spotlight-story .testimonial-card:not(.testimonial-card--featured) .testimonial-card__media {
  display: none;
}

.testimonials-section--image-editorial .testimonial-card {
  padding: 1rem;
}

.testimonials-section--image-editorial .testimonial-card__media {
  min-height: 16rem;
}

.testimonials-section--image-editorial .testimonial-card__quote-mark {
  font-size: 2.7rem;
}

.testimonials-section--image-editorial .testimonial-card__quote {
  font-size: 1.05rem;
  line-height: 1.75;
}

.testimonials-section--editorial-rows .testimonial-grid {
  grid-template-columns: 1fr;
}

.testimonials-section--editorial-rows .testimonial-card {
  display: grid;
  grid-template-columns: minmax(240px, 0.34fr) minmax(0, 1fr);
  gap: 0;
  padding: 0;
}

.testimonials-section--editorial-rows .testimonial-card:nth-child(even) .testimonial-card__media {
  order: 2;
}

.testimonials-section--editorial-rows .testimonial-card:nth-child(even) .testimonial-card__content {
  order: 1;
}

.testimonials-section--editorial-rows .testimonial-card__media {
  min-height: 100%;
  border-radius: 0;
}

.testimonials-section--editorial-rows .testimonial-card__content {
  padding: clamp(1.45rem, 3vw, 2.25rem);
}

.testimonials-section--editorial-rows .testimonial-card__quote {
  font-size: clamp(1.12rem, 1.6vw, 1.35rem);
}

.testimonials-section--overlay-gallery .testimonial-grid {
  align-items: stretch;
}

.testimonials-section--overlay-gallery .testimonial-card {
  min-height: 28rem;
  justify-content: flex-end;
  padding: 0;
  background: linear-gradient(160deg, rgba(var(--nh-primary-rgb), 0.92), rgba(var(--nh-primary-rgb), 0.74));
}

.testimonials-section--overlay-gallery .testimonial-card__media {
  position: absolute;
  inset: 0;
  min-height: 100%;
  border-radius: 0;
}

.testimonials-section--overlay-gallery .testimonial-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.1), rgba(15, 22, 31, 0.84));
}

.testimonials-section--overlay-gallery .testimonial-card__content {
  position: relative;
  z-index: 2;
  justify-content: flex-end;
  min-height: 100%;
  padding: 1.6rem;
  color: var(--nh-white);
}

.testimonials-section--overlay-gallery .testimonial-card__quote-mark,
.testimonials-section--overlay-gallery .testimonial-card__quote,
.testimonials-section--overlay-gallery .testimonial-card__author strong,
.testimonials-section--overlay-gallery .testimonial-card__location,
.testimonials-section--overlay-gallery .testimonial-card__role {
  color: var(--nh-white);
}

.testimonials-section--overlay-gallery .testimonial-card__verified {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.14);
  color: var(--nh-white);
}

.testimonials-section--overlay-gallery .testimonial-card__footer {
  border-top-color: rgba(255, 255, 255, 0.16);
}

.testimonials-section--overlay-gallery .testimonial-card__avatar {
  background: rgba(255, 255, 255, 0.22);
  color: var(--nh-white);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.25);
}

@media (max-width: 1100px) {
  .testimonials-section .testimonial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .testimonials-section--spotlight-story .testimonial-card--featured {
    grid-template-columns: 1fr;
  }

  .testimonials-section--spotlight-story .testimonial-card--featured .testimonial-card__media,
  .testimonials-section--editorial-rows .testimonial-card__media {
    min-height: 18rem;
  }
}

@media (max-width: 860px) {
  .testimonials-section__summary {
    flex-direction: column;
    align-items: flex-start;
  }

  .testimonials-section .testimonial-grid,
  .testimonials-section--editorial-rows .testimonial-grid {
    grid-template-columns: 1fr;
  }

  .testimonials-section--editorial-rows .testimonial-card {
    grid-template-columns: 1fr;
  }

  .testimonials-section--editorial-rows .testimonial-card:nth-child(even) .testimonial-card__media,
  .testimonials-section--editorial-rows .testimonial-card:nth-child(even) .testimonial-card__content {
    order: initial;
  }
}

@media (max-width: 640px) {
  .testimonials-section__heading,
  .testimonials-section--spotlight-story .testimonials-section__heading,
  .testimonials-section--editorial-rows .testimonials-section__heading {
    text-align: center;
    margin-inline: auto;
  }

  .testimonials-section__heading h2::after,
  .testimonials-section--spotlight-story .testimonials-section__heading h2::after,
  .testimonials-section--editorial-rows .testimonials-section__heading h2::after {
    left: 50%;
    transform: translateX(-50%);
  }

  .testimonials-section .testimonial-card {
    border-radius: 1.6rem;
  }

  .testimonial-card__media {
    min-height: 13rem;
  }

  .testimonials-section--overlay-gallery .testimonial-card {
    min-height: 22rem;
  }

  .testimonials-section__platforms span {
    width: 100%;
    justify-content: center;
  }
}
