
.json-holiday-hero{min-height:680px;display:flex;align-items:center;background-size:cover;background-position:center}.json-holiday-hero-copy{max-width:980px}.json-holiday-hero h1{color:#fff;font-size:clamp(3.2rem,5vw,5.8rem);line-height:1.02;margin:18px 0}.json-holiday-hero-copy>p{max-width:790px;color:rgba(255,255,255,.86);font-size:1.08rem;line-height:1.8}.json-holiday-hero .breadcrumb-lite,.json-holiday-hero .breadcrumb-lite a{color:rgba(255,255,255,.65)}
.json-holiday-facts{margin-top:38px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid rgba(255,255,255,.24);max-width:900px}.json-holiday-facts span{padding:17px 20px;border-right:1px solid rgba(255,255,255,.2)}.json-holiday-facts span:last-child{border:0}.json-holiday-facts small,.json-holiday-facts strong{display:block}.json-holiday-facts small{color:var(--orange);font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:5px}.json-holiday-facts strong{color:#fff;font-size:.82rem}
.json-holiday-intro,.json-holiday-route,.json-holiday-experiences,.json-holiday-planning,.json-holiday-extensions{padding-top:104px!important;padding-bottom:104px!important}.json-holiday-intro-grid{display:grid;grid-template-columns:1fr .88fr;gap:84px;align-items:center}.json-holiday-intro figure{margin:0;position:relative}.json-holiday-intro figure:after{content:"";position:absolute;right:-16px;bottom:-16px;width:42%;height:48%;border-right:2px solid var(--orange);border-bottom:2px solid var(--orange)}.json-holiday-intro img{width:100%;min-height:440px;object-fit:cover}.json-section-head{max-width:860px;margin-bottom:55px}
.json-route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.json-route-card{display:grid;grid-template-columns:46% 54%;min-height:300px;background:#fff;border:1px solid var(--border);text-decoration:none;color:inherit;overflow:hidden;transition:.3s}.json-route-image{position:relative;overflow:hidden}.json-route-image img{width:100%;height:100%;object-fit:cover;transition:.5s}.json-route-image span{position:absolute;left:18px;top:18px;width:46px;height:46px;display:grid;place-items:center;background:var(--orange);color:#fff}.json-route-copy{padding:30px}.json-route-copy small{color:var(--orange);font-weight:700;text-transform:uppercase;letter-spacing:.1em}.json-route-copy h3{color:var(--navy);font-size:1.35rem;margin:8px 0 12px}.json-route-copy p{color:var(--muted);font-size:.82rem;line-height:1.7}.json-route-copy b{color:var(--navy);font-size:.74rem}.json-route-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(0,27,57,.08);border-color:rgba(254,132,5,.45)}.json-route-card:hover img{transform:scale(1.04)}.json-route-card:hover b{color:var(--orange)}
.json-experience-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.json-experience-grid article{padding:34px 28px;min-height:260px;background:var(--orange);border:1px solid var(--orange);transition:.3s}.json-experience-grid i{display:grid;width:60px;height:60px;place-items:center;background:#fff;color:var(--orange);font-size:1.4rem;margin-bottom:28px}.json-experience-grid h3{color:#fff;font-size:1.03rem}.json-experience-grid p{color:rgba(255,255,255,.88);font-size:.81rem;line-height:1.7}.json-experience-grid article:hover{background:#fff;transform:translateY(-5px)}.json-experience-grid article:hover h3{color:var(--navy)}.json-experience-grid article:hover p{color:var(--muted)}.json-suitable{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.json-suitable span{padding:11px 15px;background:var(--cream);color:var(--navy);font-size:.76rem}.json-suitable i{color:var(--orange);margin-right:7px}
.json-planning-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:center}.json-holiday-planning .section-title{color:#fff}.json-holiday-planning p{color:rgba(255,255,255,.72);line-height:1.82}.json-service-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(255,255,255,.16)}.json-service-grid div{padding:32px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16)}.json-service-grid div:nth-child(2n){border-right:0}.json-service-grid div:nth-last-child(-n+2){border-bottom:0}.json-service-grid span,.json-service-grid strong{display:block}.json-service-grid span{color:var(--orange);font-size:1.25rem;margin-bottom:22px}.json-service-grid strong{color:#fff;font-size:.9rem}
.json-extension-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.json-extension-list article{display:flex;gap:18px;padding:24px 0;border-bottom:1px solid var(--line)}.json-extension-list article:first-child{padding-top:0}.json-extension-list i{color:var(--orange);font-size:1.2rem}.json-extension-list h3{color:var(--navy);font-size:1rem;margin-bottom:6px}.json-extension-list p{color:var(--muted);font-size:.82rem;line-height:1.65;margin:0}
@media(max-width:991px){.json-holiday-hero{min-height:auto;padding:120px 0 90px}.json-holiday-intro,.json-holiday-route,.json-holiday-experiences,.json-holiday-planning,.json-holiday-extensions{padding-top:84px!important;padding-bottom:84px!important}.json-holiday-intro-grid,.json-planning-grid,.json-extension-grid{grid-template-columns:1fr;gap:40px}.json-experience-grid{grid-template-columns:1fr 1fr}.json-holiday-facts{grid-template-columns:1fr 1fr}.json-holiday-facts span:nth-child(2){border-right:0}.json-holiday-facts span:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.2)}}
@media(max-width:650px){.json-route-grid,.json-experience-grid{grid-template-columns:1fr}.json-route-card{grid-template-columns:1fr}.json-route-image{height:220px}.json-holiday-facts{grid-template-columns:1fr}.json-holiday-facts span{border-right:0;border-bottom:1px solid rgba(255,255,255,.2)!important}.json-holiday-facts span:last-child{border-bottom:0!important}}


/* =========================================================
   v79 — stronger holiday focal points
   ========================================================= */

/* Journey cards: imagery becomes the visual anchor */
.json-route-card {
    grid-template-columns: 55% 45%;
    min-height: 340px;
}

.json-route-copy {
    padding: 34px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.json-route-copy h3 {
    font-size: 1.5rem;
}

.json-route-image span {
    width: 52px;
    height: 52px;
    font-size: .9rem;
}

/* Suitable For becomes a proper conversion-focused section */
.json-holiday-suitable {
    padding-top: 104px !important;
    padding-bottom: 104px !important;
}

.json-suitable-heading {
    display: grid;
    grid-template-columns: minmax(0,1.1fr) minmax(320px,.65fr);
    gap: 80px;
    align-items: end;
    margin-bottom: 54px;
}

.json-suitable-grid {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 18px;
}

.json-suitable-grid article {
    min-height: 220px;
    padding: 34px;
    display: grid;
    grid-template-columns: 78px 1fr;
    gap: 24px;
    align-items: center;
    background: #fff;
    border: 1px solid var(--line);
    transition: .3s;
}

.json-suitable-icon {
    width: 70px;
    height: 70px;
    display: grid;
    place-items: center;
    background: var(--navy);
    color: var(--orange);
    font-size: 1.6rem;
}

.json-suitable-grid h3 {
    margin-bottom: 10px;
    color: var(--navy);
    font-size: 1.1rem;
}

.json-suitable-grid p {
    margin: 0;
    color: var(--muted);
    font-size: .84rem;
    line-height: 1.7;
}

.json-suitable-grid article:hover {
    transform: translateY(-5px);
    border-color: rgba(254,132,5,.5);
    box-shadow: 0 18px 42px rgba(0,27,57,.07);
}

/* Services are now master-data selections, maximum four */
.json-service-grid a {
    position: relative;
    min-height: 210px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    border-right: 1px solid rgba(255,255,255,.16);
    border-bottom: 1px solid rgba(255,255,255,.16);
    color: inherit;
    text-decoration: none;
    transition: .3s;
}

.json-service-grid a:nth-child(2n) { border-right: 0; }
.json-service-grid a:nth-last-child(-n+2) { border-bottom: 0; }

.json-service-grid a > i {
    margin-bottom: 22px;
    color: var(--orange);
    font-size: 1.55rem;
}

.json-service-grid a strong {
    color: #fff;
    font-size: .92rem;
}

.json-service-no {
    position: absolute;
    right: 22px;
    top: 20px;
    color: rgba(255,255,255,.38) !important;
    font-size: 1.1rem !important;
}

.json-service-grid a:hover {
    background: #dceaf7;
}

.json-service-grid a:hover strong {
    color: var(--navy);
}

.json-service-grid a:hover .json-service-no {
    color: var(--orange) !important;
}

/* Extensions gain a second major image focal point */
.json-extension-visual-grid {
    display: grid;
    grid-template-columns: minmax(380px,.95fr) minmax(0,1.05fr);
    gap: 80px;
    align-items: stretch;
}

.json-extension-image {
    margin: 0;
    min-height: 520px;
}

.json-extension-image img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    display: block;
}

.json-extension-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (max-width: 991px) {
    .json-holiday-suitable {
        padding-top: 84px !important;
        padding-bottom: 84px !important;
    }

    .json-suitable-heading,
    .json-extension-visual-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .json-extension-image,
    .json-extension-image img {
        min-height: 380px;
    }
}

@media (max-width: 650px) {
    .json-route-card {
        grid-template-columns: 1fr;
    }

    .json-suitable-grid {
        grid-template-columns: 1fr;
    }

    .json-suitable-grid article {
        min-height: auto;
        padding: 26px 22px;
        grid-template-columns: 62px 1fr;
        gap: 18px;
    }

    .json-suitable-icon {
        width: 58px;
        height: 58px;
        font-size: 1.3rem;
    }

    .json-holiday-suitable {
        padding-top: 68px !important;
        padding-bottom: 68px !important;
    }
}


/* =========================================================
   v99 — holiday detail rhythm aligned with Home/About
   ========================================================= */

.json-section-head-centered{
  max-width:900px;
  margin:0 auto 52px;
  text-align:center;
}
.json-section-head-centered .lead-muted{
  max-width:720px;
  margin-left:auto;
  margin-right:auto;
}

/* What This Journey Brings Together */
.json-holiday-experiences .json-experience-grid article.card-orange-soft{
  min-height:260px;
}
.json-holiday-experiences .json-experience-grid article.card-orange-soft:hover{
  transform:translateY(-4px);
}
.json-holiday-experiences .json-experience-grid article.card-orange-soft:hover i{
  background:#fff;
  color:var(--orange);
}

/* Suitable For becomes centered before the 2x2 card grid */
.json-suitable-heading-centered{
  display:block;
  max-width:900px;
  margin:0 auto 52px;
  text-align:center;
}
.json-suitable-heading-centered .section-title{
  max-width:820px;
  margin-left:auto;
  margin-right:auto;
}
.json-suitable-heading-centered .lead-muted{
  max-width:720px;
  margin:0 auto;
}

/* Why the Route Matters / blue focal section */
.json-planning-heading{
  max-width:900px;
  margin:0 auto 46px;
  text-align:center;
}
.json-planning-heading .section-title{
  color:#fff;
  margin-bottom:18px;
}
.json-planning-heading p{
  max-width:760px;
  margin:0 auto;
  color:rgba(255,255,255,.72);
  line-height:1.82;
}

.json-service-grid-row{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border:1px solid rgba(255,255,255,.16);
}

.json-service-grid-row a{
  min-height:220px;
  padding:30px 26px;
  border-right:1px solid rgba(255,255,255,.16);
  border-bottom:0;
  justify-content:flex-end;
}

.json-service-grid-row a:last-child{
  border-right:0;
}

.json-service-grid-row a.card-blue-soft:hover{
  background:#dceaf7;
  border-color:#b8d0e6;
}

.json-service-grid-row a.card-blue-soft:hover strong{
  color:var(--navy);
}

.json-service-grid-row a.card-blue-soft:hover .json-service-no{
  color:var(--orange)!important;
}

@media(max-width:1199px){
  .json-service-grid-row{
    grid-template-columns:repeat(2,1fr);
  }
  .json-service-grid-row a{
    border-bottom:1px solid rgba(255,255,255,.16);
  }
  .json-service-grid-row a:nth-child(2n){
    border-right:0;
  }
  .json-service-grid-row a:nth-last-child(-n+2){
    border-bottom:0;
  }
}

@media(max-width:650px){
  .json-section-head-centered,
  .json-suitable-heading-centered,
  .json-planning-heading{
    text-align:left;
    margin-bottom:34px;
  }
  .json-section-head-centered .lead-muted,
  .json-suitable-heading-centered .lead-muted,
  .json-planning-heading p{
    margin-left:0;
    margin-right:0;
  }
  .json-service-grid-row{
    grid-template-columns:1fr;
  }
  .json-service-grid-row a{
    min-height:180px;
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.16)!important;
  }
  .json-service-grid-row a:last-child{
    border-bottom:0!important;
  }
}


/* =========================================================
   v100 — holiday card refinements
   ========================================================= */

/* Experience cards: centered icon/content, no extra icon box */
.json-holiday-experiences .json-experience-grid article.card-orange-soft{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:36px 28px;
}
.json-holiday-experiences .json-experience-grid article.card-orange-soft > i{
  display:block;
  width:auto;
  height:auto;
  margin:0 0 24px;
  background:transparent!important;
  color:#fff;
  font-size:2rem;
  line-height:1;
}
.json-holiday-experiences .json-experience-grid article.card-orange-soft h3{
  margin-bottom:11px;
}
.json-holiday-experiences .json-experience-grid article.card-orange-soft p{
  max-width:250px;
  margin:0 auto;
}
.json-holiday-experiences .json-experience-grid article.card-orange-soft:hover > i{
  background:transparent!important;
  color:var(--orange)!important;
}

/* Why the Route Matters:
   planning-approach composition adapted to the navy/card-blue-soft system. */
.json-service-grid-row{
  gap:14px;
  border:0;
}

.json-service-grid-row a.json-planning-service-card{
  min-height:180px;
  padding:26px 24px;
  display:grid;
  grid-template-columns:64px minmax(0,1fr) 54px;
  gap:20px;
  align-items:center;
  border:1px solid rgba(255,255,255,.16);
  text-decoration:none;
}

.json-planning-service-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.08);
  transition:.28s ease;
}

.json-planning-service-icon i{
  margin:0!important;
  color:var(--orange);
  font-size:1.45rem;
}

.json-planning-service-copy strong{
  display:block;
  margin-bottom:7px;
  color:#fff;
  font-size:.92rem;
  line-height:1.35;
}

.json-planning-service-copy p{
  margin:0;
  color:rgba(255,255,255,.64);
  font-size:.75rem;
  line-height:1.6;
}

.json-planning-service-card .json-service-no{
  position:static;
  min-height:74px;
  display:grid;
  place-items:center;
  border-left:1px dashed rgba(255,255,255,.32);
  color:rgba(255,255,255,.44)!important;
  font-size:1.55rem!important;
}

.json-planning-service-card.card-blue-soft:hover .json-planning-service-icon{
  background:#fff;
}
.json-planning-service-card.card-blue-soft:hover .json-planning-service-copy strong{
  color:var(--navy)!important;
}
.json-planning-service-card.card-blue-soft:hover .json-planning-service-copy p{
  color:#526473!important;
}
.json-planning-service-card.card-blue-soft:hover .json-service-no{
  border-left-color:rgba(254,132,5,.4);
  color:var(--orange)!important;
}

@media(max-width:1199px){
  .json-service-grid-row a.json-planning-service-card{
    border:1px solid rgba(255,255,255,.16);
  }
}
@media(max-width:650px){
  .json-service-grid-row{
    gap:12px;
  }
  .json-service-grid-row a.json-planning-service-card{
    min-height:auto;
    grid-template-columns:52px minmax(0,1fr) 42px;
    gap:14px;
    padding:22px 18px;
    border:1px solid rgba(255,255,255,.16)!important;
  }
  .json-planning-service-icon{
    width:48px;
    height:48px;
  }
  .json-planning-service-card .json-service-no{
    min-height:62px;
    font-size:1.2rem!important;
  }
}


/* =========================================================
   v101 — simplify Why the Route Matters service cards
   ========================================================= */
.json-service-grid-row a.json-planning-service-card{
  min-height:170px;
  padding:28px 24px;
  display:grid;
  grid-template-columns:54px minmax(0,1fr) 62px;
  gap:20px;
  align-items:center;
}

.json-planning-service-card .json-service-no{
  position:static;
  min-height:auto;
  display:block;
  border-left:0;
  color:rgba(255,255,255,.42)!important;
  font-size:1.45rem!important;
  line-height:1;
}

.json-planning-service-card > strong{
  color:#fff;
  font-size:1rem;
  line-height:1.35;
  margin:0;
}

.json-planning-service-icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.08);
  justify-self:end;
}

.json-planning-service-icon i{
  margin:0!important;
  color:var(--orange);
  font-size:1.5rem;
}

.json-planning-service-card.card-blue-soft:hover .json-service-no{
  color:var(--orange)!important;
}

.json-planning-service-card.card-blue-soft:hover > strong{
  color:var(--navy)!important;
}

.json-planning-service-card.card-blue-soft:hover .json-planning-service-icon{
  background:#fff;
}

@media(max-width:650px){
  .json-service-grid-row a.json-planning-service-card{
    min-height:140px;
    grid-template-columns:42px minmax(0,1fr) 50px;
    gap:14px;
    padding:22px 18px;
  }
  .json-planning-service-icon{
    width:48px;
    height:48px;
  }
  .json-planning-service-card .json-service-no{
    font-size:1.2rem!important;
  }
}


/* =========================================================
   v102 — Why the Route Matters uses the HOME card-blue-soft
   composition: icon in place of number, then title + text.
   ========================================================= */

.json-service-grid-row{
  grid-template-columns:repeat(4,1fr);
  gap:0;
  border-left:1px solid rgba(255,255,255,.16);
  border-top:1px solid rgba(255,255,255,.16);
}

.json-service-grid-row a.json-planning-service-card{
  min-height:225px;
  padding:34px;
  display:block;
  border:0;
  border-right:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
  text-decoration:none;
}

.json-planning-service-card .json-planning-service-icon{
  display:block;
  width:auto;
  height:auto;
  margin:0 0 22px;
  background:transparent;
  color:var(--orange);
}

.json-planning-service-card .json-planning-service-icon i{
  margin:0!important;
  color:var(--orange);
  font-size:1.5rem;
  line-height:1;
}

.json-planning-service-card h3{
  margin:0 0 10px;
  color:#fff;
  font-size:1rem;
  line-height:1.4;
}

.json-planning-service-card p{
  margin:0;
  color:rgba(255,255,255,.65);
  font-size:.78rem;
  line-height:1.7;
}

.json-planning-service-card.card-blue-soft:hover .json-planning-service-icon{
  background:transparent!important;
  color:var(--orange)!important;
}

.json-planning-service-card.card-blue-soft:hover .json-planning-service-icon i{
  color:var(--orange)!important;
}

.json-planning-service-card.card-blue-soft:hover h3{
  color:var(--navy)!important;
}

.json-planning-service-card.card-blue-soft:hover p{
  color:#526473!important;
}

@media(max-width:1199px){
  .json-service-grid-row{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:650px){
  .json-service-grid-row{
    grid-template-columns:1fr;
  }
  .json-service-grid-row a.json-planning-service-card{
    min-height:auto;
    padding:28px 24px;
  }
}


/* v105 — Suitable For cards: strong navy separation */
.json-suitable-card{
  background:#fff;
  border:1px solid var(--navy)!important;
  transition:background .28s ease,border-color .28s ease,transform .28s ease,box-shadow .28s ease;
}
.json-suitable-card:hover{
  background:#dceaf7!important;
  border-color:var(--navy)!important;
  transform:translateY(-4px);
  box-shadow:0 14px 30px rgba(0,47,93,.08);
}


/* =========================================================
   v106 — traveller-fit section: editorial split, no card grid
   ========================================================= */
.json-traveller-fit-layout{
  display:grid;
  grid-template-columns:minmax(0,.95fr) minmax(380px,1.05fr);
  gap:86px;
  align-items:center;
}
.json-traveller-fit-list{
  border-top:1px solid rgba(0,47,93,.22);
}
.json-traveller-fit-item{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:18px;
  align-items:start;
  padding:20px 0;
  border-bottom:1px solid rgba(0,47,93,.22);
}
.json-traveller-fit-icon{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  color:var(--orange);
  font-size:1.25rem;
}
.json-traveller-fit-item h3{
  margin:0 0 5px;
  color:var(--navy);
  font-size:.98rem;
}
.json-traveller-fit-item p{
  margin:0;
  color:var(--muted);
  font-size:.79rem;
  line-height:1.65;
}
.json-traveller-fit-copy{
  max-width:620px;
}
.json-traveller-fit-copy .section-title{
  margin-bottom:20px;
}
.json-traveller-fit-copy .lead-muted{
  line-height:1.85;
}
.json-traveller-fit-note{
  margin-top:24px;
  padding-top:20px;
  border-top:2px solid var(--navy);
  color:var(--navy);
  font-size:.82rem;
  font-weight:600;
  line-height:1.65;
}
@media(max-width:991px){
  .json-traveller-fit-layout{
    grid-template-columns:1fr;
    gap:44px;
  }
}


/* =========================================================
   v109 — compact cross-browse holiday ideas
   ========================================================= */
.json-other-holidays{
  padding-top:92px!important;
  padding-bottom:92px!important;
}
.json-other-holidays-head{
  display:flex;
  justify-content:space-between;
  gap:40px;
  align-items:end;
  margin-bottom:34px;
}
.json-other-holidays-head .section-title{
  margin-bottom:0;
}
.json-other-holidays-link{
  flex:0 0 auto;
  color:var(--navy);
  font-size:.76rem;
  font-weight:700;
  text-decoration:none;
}
.json-other-holidays-link i{
  color:var(--orange);
  margin-left:6px;
}
.json-other-holidays-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.json-other-holiday-card{
  display:grid;
  grid-template-columns:42% 58%;
  min-height:190px;
}
.json-other-holiday-image{
  overflow:hidden;
  min-height:190px;
}
.json-other-holiday-image img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.json-other-holiday-copy{
  padding:24px 22px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.json-other-holiday-copy>span{
  color:var(--orange);
  font-size:.66rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.json-other-holiday-copy h3{
  color:var(--navy);
  font-size:1rem;
  line-height:1.4;
  margin:8px 0 9px;
}
.json-other-holiday-copy p{
  margin:0;
  color:var(--muted);
  font-size:.72rem;
  line-height:1.55;
}
@media(max-width:991px){
  .json-other-holidays-grid{
    grid-template-columns:1fr;
  }
  .json-other-holiday-card{
    grid-template-columns:220px 1fr;
  }
}
@media(max-width:650px){
  .json-other-holidays{
    padding-top:70px!important;
    padding-bottom:70px!important;
  }
  .json-other-holidays-head{
    display:block;
    margin-bottom:28px;
  }
  .json-other-holidays-link{
    display:inline-block;
    margin-top:14px;
  }
  .json-other-holiday-card{
    grid-template-columns:1fr;
  }
  .json-other-holiday-image{
    height:210px;
    min-height:0;
  }
}


/* =========================================================
   v110 — all other holidays slider, one card per step
   CTA remains above this section.
   ========================================================= */
.json-other-holidays{
  padding-top:84px!important;
  padding-bottom:92px!important;
}
.json-other-holidays-head{
  align-items:center;
}
.json-other-holiday-controls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.json-other-holidays-link{
  margin-right:8px;
}
.json-slider-btn{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid var(--navy);
  background:#fff;
  color:var(--navy);
  cursor:pointer;
  transition:.25s ease;
}
.json-slider-btn:hover:not(:disabled){
  background:var(--navy);
  color:#fff;
}
.json-slider-btn:disabled{
  opacity:.28;
  cursor:default;
}
.json-other-holidays-slider{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scrollbar-width:none;
  -ms-overflow-style:none;
  scroll-snap-type:x proximity;
}
.json-other-holidays-slider::-webkit-scrollbar{
  display:none;
}
.json-other-holidays-track{
  display:flex;
  gap:14px;
}
.json-other-holiday-card{
  flex:0 0 calc((100% - 56px)/5);
  min-width:0;
  display:flex;
  flex-direction:column;
  min-height:0;
  scroll-snap-align:start;
}
.json-other-holiday-image{
  width:100%;
  height:185px;
  min-height:185px;
}
.json-other-holiday-copy{
  padding:20px 18px 22px;
  display:block;
  min-height:150px;
}
.json-other-holiday-copy h3{
  margin:8px 0 10px;
  font-size:.96rem;
}
.json-other-holiday-copy p{
  font-size:.7rem;
}

@media(max-width:1199px){
  .json-other-holiday-card{
    flex-basis:calc((100% - 42px)/4);
  }
}
@media(max-width:991px){
  .json-other-holiday-card{
    flex-basis:calc((100% - 28px)/3);
  }
  .json-other-holidays-grid{
    display:block;
  }
}
@media(max-width:720px){
  .json-other-holidays-head{
    align-items:flex-start;
  }
  .json-other-holiday-controls{
    justify-content:flex-start;
    margin-top:16px;
  }
  .json-other-holiday-card{
    flex-basis:calc((100% - 14px)/2);
  }
}
@media(max-width:520px){
  .json-other-holiday-card{
    flex-basis:82%;
  }
  .json-other-holiday-image{
    height:200px;
  }
  .json-slider-btn{
    width:40px;
    height:40px;
  }
}

/* v111 — CTA / Continue Exploring share one white visual area.
   CTA bottom spacing provides the separation; avoid double padding. */
.json-other-holidays{
  padding-top:0!important;
}
