:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) {
  --tsh-destination-canvas:1220px;
  --tsh-destination-wide-hero-canvas:1320px;
  --tsh-destination-prose:820px;
  --tsh-destination-gutter:42px;
  --tsh-destination-ink:#161616;
  --tsh-destination-copy:#494947;
  --tsh-destination-muted:#66635e;
  --tsh-destination-line:#ddd9d1;
  --tsh-destination-warm:#f5f3ee;
  --tsh-destination-focus:#b36b2d;
  --tsh-destination-prose-size:18px;
  --tsh-destination-prose-mobile-size:17px;
  --tsh-destination-prose-line:1.7;
  --tsh-destination-paragraph-gap:1.32em;
  background:#fff;
  color:var(--tsh-destination-copy);
}

/* ================================================================
   V1.29R DESTINATION HERO — photography first, content-canvas bound
   ================================================================ */
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero {
  position:relative;
  isolation:isolate;
  width:min(var(--tsh-destination-canvas),calc(100% - var(--tsh-destination-gutter)));
  margin:22px auto 0;
  overflow:hidden;
  border-radius:6px;
  background:#202522;
  color:#fff;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--guide {
  aspect-ratio:var(--tsh-destination-hero-aspect,8 / 5);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--landing,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--continent {
  width:min(var(--tsh-destination-wide-hero-canvas),calc(100% - 32px));
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--landing {
  height:clamp(520px,58vh,680px);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--continent {
  height:clamp(500px,56vh,660px);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__media,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__featured-image,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__overlay {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__media {
  z-index:-3;
  margin:0;
  background:#272b28;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__featured-image {
  display:block;
  object-fit:cover;
  object-position:center;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__overlay {
  z-index:-2;
  background:
    linear-gradient(180deg,rgba(6,9,11,.17) 0%,rgba(6,9,11,.13) 42%,rgba(5,8,10,.3) 66%,rgba(4,7,9,.9) 100%),
    linear-gradient(180deg,rgba(5,8,10,.08),rgba(5,8,10,.22));
  pointer-events:none;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__inner {
  position:relative;
  box-sizing:border-box;
  width:100%;
  height:100%;
  min-height:inherit;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__identity {
  position:absolute;
  top:56%;
  left:50%;
  width:calc(100% - 96px);
  max-width:1000px;
  transform:translate(-50%,-50%);
  text-align:center;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs {
  margin:0 0 18px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs ol {
  justify-content:center;
  gap:8px;
  color:rgba(255,255,255,.88);
  font-size:clamp(14px,1.05vw,16px);
  font-weight:500;
  letter-spacing:0;
  line-height:1.45;
  text-shadow:0 2px 14px rgba(0,0,0,.58);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs li {
  gap:8px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs a,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs span {
  color:inherit;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs a {
  text-decoration-color:transparent;
  text-underline-offset:4px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs a:hover,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs a:focus-visible {
  color:#fff;
  text-decoration-color:currentColor;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero h1 {
  max-width:1000px;
  margin:0 auto;
  color:#fff;
  font-family:var(--tsh-font-sans);
  font-size:clamp(3rem,5vw,5.5rem);
  font-weight:700;
  letter-spacing:-.042em;
  line-height:.98;
  overflow-wrap:anywhere;
  text-align:center;
  text-shadow:0 3px 26px rgba(0,0,0,.68),0 1px 3px rgba(0,0,0,.9);
  text-wrap:balance;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--long-title h1 {
  line-height:1.01;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--landing h1,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--continent h1 {
  font-size:clamp(2.5rem,3.7vw,4rem);
  line-height:1.02;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--guide h1 {
  font-size:clamp(2.6rem,4.2vw,4.5rem);
  line-height:1.02;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__descriptor {
  display:-webkit-box;
  max-width:720px;
  margin:20px auto 0;
  overflow:hidden;
  color:rgba(255,255,255,.9);
  font-size:clamp(17px,1.4vw,21px);
  font-weight:400;
  line-height:1.45;
  text-align:center;
  text-shadow:0 2px 16px rgba(0,0,0,.72);
  text-wrap:balance;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:18px;
  color:rgba(255,255,255,.9);
  font-size:clamp(15px,1.15vw,17px);
  font-weight:600;
  line-height:1.4;
  text-decoration:underline;
  text-decoration-color:rgba(255,255,255,.42);
  text-underline-offset:5px;
  text-shadow:0 2px 16px rgba(0,0,0,.72);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide:hover,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide:focus-visible {
  color:#fff;
  text-decoration-color:currentColor;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide:focus-visible {
  outline:2px solid #fff;
  outline-offset:5px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-arrow {
  display:inline-block;
  transition:transform .22s ease;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide:hover .tsh-destination-hero__parent-arrow,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide:focus-visible .tsh-destination-hero__parent-arrow {
  transform:translateX(3px);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__footer {
  position:absolute;
  right:44px;
  bottom:38px;
  left:44px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:30px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__meta {
  display:flex;
  min-width:0;
  align-items:center;
  gap:13px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__author-mark {
  width:56px;
  height:56px;
  flex:0 0 56px;
  border:1px solid rgba(255,255,255,.34);
  border-radius:50%;
  background:rgba(8,12,15,.54);
  object-fit:cover;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__meta-copy {
  display:grid;
  gap:5px;
  min-width:0;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__meta-copy strong {
  color:#fff;
  font-size:15px;
  font-weight:700;
  line-height:1.2;
  text-decoration:underline;
  text-underline-offset:4px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__meta-copy p {
  margin:0;
  color:rgba(255,255,255,.78);
  font-size:14px;
  line-height:1.35;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__tools {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:4px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-label,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button {
  display:inline-flex;
  min-width:40px;
  min-height:44px;
  box-sizing:border-box;
  align-items:center;
  justify-content:center;
  border:0;
  background:transparent;
  color:#fff;
  line-height:1;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-label {
  gap:7px;
  padding:0 8px 0 0;
  color:rgba(255,255,255,.88);
  font-size:14px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button {
  padding:9px;
  border-radius:3px;
  cursor:pointer;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button:hover,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button:focus-visible {
  background:rgba(255,255,255,.14);
  outline:2px solid #fff;
  outline-offset:1px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button:disabled {
  cursor:not-allowed;
  opacity:.45;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-label svg,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button svg {
  display:block;
  width:21px;
  height:21px;
  flex:0 0 21px;
  fill:currentColor;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-label svg {
  width:18px;
  height:18px;
  flex-basis:18px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-share-copy.is-copied {
  background:rgba(255,255,255,.22);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-status {
  max-width:100px;
  margin-left:5px;
  color:rgba(255,255,255,.78);
  font-size:11px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-status:empty {
  display:none;
}

/* ================================================================
   DESTINATION DISCOVERY SECTIONS AND PHOTOGRAPHIC NAVIGATION
   ================================================================ */
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid {
  width:min(var(--tsh-destination-canvas),calc(100% - var(--tsh-destination-gutter)));
  margin:76px auto 112px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section__head,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid .tsh-section-head {
  max-width:820px;
  margin:0 0 34px;
  padding:0;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid .tsh-section-head::before {
  display:none;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section__eyebrow,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid .tsh-section-head>p {
  margin:0 0 10px;
  color:var(--tsh-destination-muted);
  font-size:11px;
  font-weight:700;
  letter-spacing:.15em;
  line-height:1.3;
  text-transform:uppercase;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section__head h2,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid .tsh-section-head h2 {
  margin:0;
  color:var(--tsh-destination-ink);
  font-size:clamp(34px,3.7vw,52px);
  font-weight:700;
  letter-spacing:-.036em;
  line-height:1.03;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section__intro {
  max-width:700px;
  margin:16px 0 0;
  color:var(--tsh-destination-muted);
  font-size:17px;
  line-height:1.65;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid {
  display:grid;
  gap:22px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--continents {
  grid-template-columns:repeat(3,minmax(0,1fr));
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--countries,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--cities {
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px 20px;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile {
  min-width:0;
  margin:0;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link {
  position:relative;
  isolation:isolate;
  display:block;
  overflow:hidden;
  border-radius:6px;
  background:#2c312e;
  color:#fff;
  text-decoration:none;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--continents .tsh-destination-tile__link {
  aspect-ratio:4 / 3;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--countries .tsh-destination-tile__link {
  aspect-ratio:4 / 3;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--cities .tsh-destination-tile__link {
  aspect-ratio:3 / 2;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link>img,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__shade {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link>img {
  z-index:-2;
  display:block;
  object-fit:cover;
  object-position:center;
  transition:transform .42s cubic-bezier(.2,.7,.2,1),filter .3s ease;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__shade {
  z-index:-1;
  background:linear-gradient(180deg,rgba(5,8,9,.04) 15%,rgba(5,8,9,.16) 50%,rgba(4,7,8,.88) 100%);
  pointer-events:none;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__copy {
  position:absolute;
  right:24px;
  bottom:22px;
  left:24px;
  display:block;
  color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.55);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__meta {
  display:block;
  margin-bottom:7px;
  color:rgba(255,255,255,.78);
  font-size:11px;
  font-weight:700;
  letter-spacing:.11em;
  line-height:1.3;
  text-transform:uppercase;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile h3 {
  margin:0;
  color:#fff;
  font-size:clamp(25px,2.55vw,39px);
  font-weight:700;
  letter-spacing:-.035em;
  line-height:1.02;
  overflow-wrap:anywhere;
  text-shadow:0 3px 20px rgba(0,0,0,.62);
  text-wrap:balance;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--countries .tsh-destination-tile h3,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--cities .tsh-destination-tile h3 {
  font-size:clamp(23px,2vw,31px);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__descriptor {
  display:-webkit-box;
  max-width:640px;
  margin-top:9px;
  overflow:hidden;
  color:rgba(255,255,255,.84);
  font-size:13.5px;
  line-height:1.43;
  text-shadow:0 2px 12px rgba(0,0,0,.62);
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__cta {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:14px;
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  line-height:1.25;
  text-transform:uppercase;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__cta svg {
  transition:transform .24s ease;
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link:hover>img,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link:focus-visible>img {
  transform:scale(1.025);
  filter:saturate(1.03) contrast(1.015);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link:hover .tsh-destination-tile__cta svg,
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link:focus-visible .tsh-destination-tile__cta svg {
  transform:translateX(3px);
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__link:focus-visible {
  outline:3px solid var(--tsh-destination-focus);
  outline-offset:4px;
}

/* ================================================================
   COUNTRY INTRODUCTION AND AUTHORITATIVE FACTS PRESENTATION
   ================================================================ */
.tsh-country-page--v129r .tsh-country-introduction {
  width:min(var(--tsh-destination-prose),calc(100% - var(--tsh-destination-gutter)));
  margin:78px auto 66px;
  color:var(--tsh-destination-copy);
}

.tsh-country-page--v129r .tsh-country-introduction p {
  margin:0;
  color:inherit;
  font-family:var(--tsh-font-sans);
  font-size:var(--tsh-destination-prose-size);
  font-weight:400;
  line-height:var(--tsh-destination-prose-line);
}

.tsh-destinations-v129r1.tsh-country-page--v129r .tsh-country-introduction p:first-child {
  font-size:var(--tsh-destination-prose-size);
  font-weight:400;
  line-height:var(--tsh-destination-prose-line);
}

.tsh-country-page--v129r .tsh-country-introduction p+p {
  margin-top:var(--tsh-destination-paragraph-gap);
}

.tsh-country-page--v129r .tsh-country-facts {
  width:min(var(--tsh-destination-canvas),calc(100% - var(--tsh-destination-gutter)));
  margin:0 auto 90px;
}

.tsh-country-page--v129r .tsh-country-facts>.sfs {
  margin:0 auto!important;
}

.tsh-country-page--v129r .tsh-country-facts .sfs-hero,
.tsh-country-page--v129r .tsh-country-facts .sfs-section,
.tsh-country-page--v129r .tsh-country-facts .sfs-history,
.tsh-country-page--v129r .tsh-country-facts .sfs-sources,
.tsh-country-page--v129r .tsh-country-facts .sfs-panel,
.tsh-country-page--v129r .tsh-country-facts .sfs-card,
.tsh-country-page--v129r .tsh-country-facts .sfs-metrics article,
.tsh-country-page--v129r .tsh-country-facts .sfs-nav,
.tsh-country-page--v129r .tsh-country-facts .sfs-notice {
  border-color:#ddd8cf!important;
  border-radius:6px!important;
  box-shadow:none!important;
}

.tsh-country-page--v129r .tsh-country-facts .sfs-card,
.tsh-country-page--v129r .tsh-country-facts .sfs-panel,
.tsh-country-page--v129r .tsh-country-facts .sfs-metrics article {
  background:#fff!important;
}

.tsh-country-page--v129r .tsh-country-facts .sfs-flag,
.tsh-country-page--v129r .tsh-country-facts .sfs-editorial,
.tsh-country-page--v129r .tsh-country-facts .sfs-neighbours span,
.tsh-country-page--v129r .tsh-country-facts .sfs-neighbours strong {
  border-radius:4px!important;
  box-shadow:none!important;
}

.tsh-country-page--v129r .tsh-country-facts .sfs-section>.sfs-section__heading {
  background:linear-gradient(105deg,var(--sfs-wash) 0%,#fff 70%,#fff 100%)!important;
}

/* ================================================================
   LEGACY AND MODERN CITY EDITORIAL WRAPPER
   ================================================================ */
.tsh-continent-page--v129r .tsh-continent-introduction,
.tsh-continent-page--v129r .tsh-source-content {
  width:min(var(--tsh-destination-prose),calc(100% - var(--tsh-destination-gutter)));
  max-width:var(--tsh-destination-prose);
  margin:68px auto 42px;
  color:var(--tsh-destination-copy);
}

.tsh-continent-page--v129r .tsh-continent-introduction p,
.tsh-continent-page--v129r .tsh-source-content :where(p,li) {
  color:var(--tsh-destination-copy)!important;
  font-family:var(--tsh-font-sans)!important;
  font-size:var(--tsh-destination-prose-size)!important;
  font-weight:400!important;
  line-height:var(--tsh-destination-prose-line)!important;
}

.tsh-continent-page--v129r .tsh-continent-introduction p {
  margin:0;
}

.tsh-continent-page--v129r .tsh-continent-country-grid {
  margin-top:30px;
}

.tsh-continent-page--v129r .tsh-source-content :where(h2,h3) {
  color:var(--tsh-destination-ink)!important;
  font-weight:700!important;
}

.tsh-city-page--v129r .tsh-source-content {
  width:min(var(--tsh-destination-prose),calc(100% - var(--tsh-destination-gutter)));
  max-width:var(--tsh-destination-prose);
  margin:76px auto 96px;
  color:var(--tsh-destination-copy);
  overflow-wrap:anywhere;
}

.tsh-city-page--v129r .tsh-source-content :where(p,li) {
  color:var(--tsh-destination-copy)!important;
  font-family:var(--tsh-font-sans)!important;
  font-size:var(--tsh-destination-prose-size)!important;
  font-weight:400!important;
  line-height:var(--tsh-destination-prose-line)!important;
}

.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content p,
.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content li,
.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content > .tsh-normalized-paragraph {
  color:var(--tsh-destination-copy)!important;
  font-family:var(--tsh-font-sans)!important;
  font-size:var(--tsh-destination-prose-size)!important;
  font-weight:400!important;
  line-height:var(--tsh-destination-prose-line)!important;
}

.tsh-city-page--v129r .tsh-source-content :where(p)+p {
  margin-top:var(--tsh-destination-paragraph-gap)!important;
}

.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content > p + p,
.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content > .tsh-normalized-paragraph + .tsh-normalized-paragraph,
.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content > p + .tsh-normalized-paragraph,
.tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content > .tsh-normalized-paragraph + p {
  margin-top:var(--tsh-destination-paragraph-gap)!important;
}

.tsh-city-page--v129r .tsh-source-content :where(h2,h3,h4) {
  color:var(--tsh-destination-ink)!important;
  font-weight:700!important;
  letter-spacing:-.025em!important;
  text-wrap:balance;
}

.tsh-city-page--v129r .tsh-source-content h2 {
  margin-top:2.25em!important;
  margin-bottom:.72em!important;
  font-size:clamp(1.75rem,2.4vw,2.35rem)!important;
  line-height:1.12!important;
}

.tsh-city-page--v129r .tsh-source-content h3 {
  margin-top:1.85em!important;
  margin-bottom:.64em!important;
  font-size:clamp(1.3rem,1.8vw,1.65rem)!important;
  line-height:1.2!important;
}

.tsh-city-page--v129r .tsh-source-content :where(ul,ol) {
  margin-top:1em;
  margin-bottom:1.35em;
  padding-left:1.35em;
}

.tsh-city-page--v129r .tsh-source-content :where(li)+li {
  margin-top:.48em;
}

.tsh-city-page--v129r .tsh-source-content :where(img,video,iframe) {
  max-width:100%!important;
  height:auto;
}

.tsh-city-page--v129r .tsh-source-content img {
  border-radius:4px;
}

.tsh-city-page--v129r .tsh-source-content figure {
  max-width:100%!important;
  margin:34px auto!important;
}

.tsh-city-page--v129r .tsh-source-content figcaption {
  margin-top:9px!important;
  color:var(--tsh-destination-muted)!important;
  font-size:12.5px!important;
  line-height:1.5!important;
}

.tsh-city-page--v129r .tsh-source-content blockquote {
  margin:34px 0!important;
  padding:4px 0 4px 22px!important;
  border-left:2px solid #a58a68!important;
  color:#373735!important;
  font-size:18px!important;
  line-height:1.7!important;
}

.tsh-city-page--v129r .tsh-source-content table {
  display:block;
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto;
  border-collapse:collapse;
  -webkit-overflow-scrolling:touch;
}

.tsh-city-page--v129r .tsh-source-content :where(th,td) {
  padding:12px 14px!important;
  border-bottom:1px solid var(--tsh-destination-line)!important;
  font-family:var(--tsh-font-sans)!important;
  text-align:left;
  vertical-align:top;
}

.tsh-city-page--v129r .tsh-source-content strong {
  font-weight:700!important;
}

/* ================================================================
   RESPONSIVE
   ================================================================ */
@media(max-width:1100px) {
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) {
    --tsh-destination-gutter:34px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--guide {
    min-height:700px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__identity {
    width:calc(100% - 70px);
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__footer {
    right:34px;
    bottom:30px;
    left:34px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--countries,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--cities {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

}

@media(max-width:900px) {
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--continents {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px) {
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) {
    --tsh-destination-gutter:24px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero {
    width:calc(100% - 16px);
    height:clamp(620px,68svh,700px);
    min-height:620px;
    aspect-ratio:auto;
    margin-top:8px;
    border-radius:4px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--landing,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--continent {
    width:calc(100% - 16px);
    height:clamp(460px,58svh,560px);
    min-height:460px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__inner {
    display:flex;
    flex-direction:column;
    padding:28px 18px 24px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__identity {
    position:static;
    width:100%;
    max-width:none;
    margin:auto 0 24px;
    transform:none;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs {
    margin-bottom:14px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs ol {
    gap:5px;
    font-size:12.5px;
    line-height:1.4;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero .tsh-breadcrumbs li {
    gap:5px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero h1 {
    font-size:clamp(37px,11vw,52px);
    line-height:1;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--landing h1,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--continent h1 {
    font-size:clamp(36px,9.6vw,48px);
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--guide h1,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero--long-title h1 {
    font-size:clamp(36px,10.2vw,45px);
    line-height:1.02;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__descriptor {
    max-width:620px;
    margin-top:14px;
    font-size:16px;
    line-height:1.42;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__parent-guide {
    margin-top:15px;
    font-size:15.5px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__footer {
    position:static;
    display:flex;
    width:100%;
    align-items:center;
    flex-direction:column;
    gap:14px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__meta {
    justify-content:center;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__author-mark {
    width:50px;
    height:50px;
    flex-basis:50px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__tools {
    width:100%;
    justify-content:center;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-button {
    width:44px;
    min-width:44px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid {
    margin-top:58px;
    margin-bottom:82px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--continents,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--countries,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--cities {
    grid-template-columns:1fr;
    gap:18px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--continents .tsh-destination-tile__link,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--countries .tsh-destination-tile__link {
    aspect-ratio:4 / 3;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-discovery-grid--cities .tsh-destination-tile__link {
    aspect-ratio:3 / 2;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__copy {
    right:18px;
    bottom:17px;
    left:18px;
  }

  .tsh-country-page--v129r .tsh-country-introduction,
  .tsh-continent-page--v129r .tsh-continent-introduction,
  .tsh-city-page--v129r .tsh-source-content {
    margin-top:54px;
    margin-bottom:70px;
  }

  .tsh-country-page--v129r .tsh-country-introduction p,
  .tsh-continent-page--v129r .tsh-continent-introduction p,
  .tsh-city-page--v129r .tsh-source-content :where(p,li) {
    font-size:var(--tsh-destination-prose-mobile-size)!important;
    line-height:var(--tsh-destination-prose-line)!important;
  }

  .tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content p,
  .tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content li,
  .tsh-destinations-v129r1.tsh-city-page--v129r .tsh-source-content > .tsh-normalized-paragraph {
    font-size:var(--tsh-destination-prose-mobile-size)!important;
    line-height:var(--tsh-destination-prose-line)!important;
  }

  .tsh-country-page--v129r .tsh-country-facts {
    margin-bottom:68px;
  }
}

@media(max-width:430px) {
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) {
    --tsh-destination-gutter:20px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__inner {
    padding-right:14px;
    padding-left:14px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__share-label {
    width:100%;
    min-height:26px;
    padding:0;
    justify-content:center;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-section__head h2,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-related-grid .tsh-section-head h2 {
    font-size:34px;
  }

  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile__descriptor {
    -webkit-line-clamp:1;
  }
}

@media(prefers-reduced-motion:reduce) {
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero *,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile *,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero *::before,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile *::before,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero *::after,
  :is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-tile *::after {
    scroll-behavior:auto!important;
    transition:none!important;
  }
}

:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__identity>ol{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;list-style:none;padding:0;margin:0 0 18px;color:#fff;font-size:14px}
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__identity>ol>li{display:inline-flex;align-items:center;gap:6px;list-style:none;padding:0;margin:0}
:is(.tsh-destinations-v129r,.tsh-country-template,.tsh-destination-templates) .tsh-destination-hero__identity>ol a{color:inherit;text-decoration:none}

/* The common shell scopes breadcrumb defaults by main ID. Hero context must win that scope. */
#main-content .tsh-destination-hero .tsh-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;list-style:none;margin:0;padding:0;gap:.35rem .6rem;color:rgba(255,255,255,.9)}
#main-content .tsh-destination-hero .tsh-breadcrumbs li{display:inline-flex;align-items:center;gap:.6rem;list-style:none;color:inherit}
#main-content .tsh-destination-hero .tsh-breadcrumbs :is(a,span){color:inherit}

#main-content .tsh-destination-hero .tsh-breadcrumbs{font-family:Barlow,Arial,Helvetica,sans-serif;font-size:16px}

/* Shared ordinary-city guide typography and logical spacing in every locale. */
.tsh-city-page--v129r .tsh-source-content :where(h2,h3,h4){font-family:var(--tsh-font-sans)!important}
.tsh-city-page--v129r .tsh-source-content :where(ul,ol){padding-inline-start:1.35em;padding-inline-end:0}
.tsh-city-page--v129r .tsh-source-content :where(th,td){text-align:start}
[dir="rtl"] .tsh-city-page--v129r .tsh-source-content blockquote{border-left:0!important;border-right:2px solid #a58a68!important;padding:4px 22px 4px 0!important}
