/*
 * Africa Made Easy — Travel Ideas editorial layout repairs
 * Scoped to data-ame-kind="travel" so Signature Journey and core pages are untouched.
 */

html[data-ame-kind="travel"] main img {
  max-width: 100%;
}

/* Keep the fairway—not an expanse of sky—in shallow landscape crops. */
html[data-ame-page="golf-journeys"] img[src*="south-africa-coastal-golf-pexels-37727302"] {
  object-position: center bottom !important;
}

/* Prevent portrait source material from hiding the family-and-wildlife story. */
html[data-ame-page="family-adventures"] main img[alt="Luxury family safari in Africa"] {
  object-position: center 42% !important;
}

/* Five recommendations: a balanced 3 + centred 2 on desktop. */
@media (min-width: 1024px) {
  html[data-ame-page="honeymoon-romance"] .ame-style-recommendations,
  html[data-ame-page="safari-wildlife"] .ame-style-recommendations,
  html[data-ame-page="cape-town-winelands"] .ame-style-recommendations {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }

  html[data-ame-page="honeymoon-romance"] .ame-style-recommendations > .ame-journey-card,
  html[data-ame-page="safari-wildlife"] .ame-style-recommendations > .ame-journey-card,
  html[data-ame-page="cape-town-winelands"] .ame-style-recommendations > .ame-journey-card {
    grid-column: span 2;
  }

  html[data-ame-page="honeymoon-romance"] .ame-style-recommendations > .ame-journey-card:nth-child(4),
  html[data-ame-page="safari-wildlife"] .ame-style-recommendations > .ame-journey-card:nth-child(4),
  html[data-ame-page="cape-town-winelands"] .ame-style-recommendations > .ame-journey-card:nth-child(4) {
    grid-column: 2 / span 2;
  }

  html[data-ame-page="honeymoon-romance"] .ame-style-recommendations > .ame-journey-card:nth-child(5),
  html[data-ame-page="safari-wildlife"] .ame-style-recommendations > .ame-journey-card:nth-child(5),
  html[data-ame-page="cape-town-winelands"] .ame-style-recommendations > .ame-journey-card:nth-child(5) {
    grid-column: 4 / span 2;
  }
}

/* Fixed editorial collections are grids on tablet/desktop, not faux carousels. */
@media (min-width: 768px) {
  html[data-ame-kind="travel"] #signature-carousel,
  html[data-ame-kind="travel"] #ls-carousel {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px !important;
    overflow: visible !important;
    padding-bottom: 0 !important;
    scroll-snap-type: none !important;
  }

  html[data-ame-kind="travel"] #signature-carousel > *,
  html[data-ame-kind="travel"] #ls-carousel > * {
    width: auto !important;
    min-width: 0 !important;
    scroll-snap-align: none !important;
  }

  html[data-ame-kind="travel"] #sig-prev,
  html[data-ame-kind="travel"] #sig-next,
  html[data-ame-kind="travel"] #ls-prev,
  html[data-ame-kind="travel"] #ls-next {
    display: none !important;
  }
}

@media (min-width: 1180px) {
  html[data-ame-kind="travel"] #signature-carousel,
  html[data-ame-kind="travel"] #ls-carousel {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px !important;
  }

  html[data-ame-kind="travel"] #ls-carousel:has(> :nth-child(3):last-child) {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  html[data-ame-page="golf-journeys"] #ls-carousel {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  html[data-ame-page="golf-journeys"] #ls-carousel > :last-child:nth-child(4) {
    grid-column: 2;
  }
}

/* Golf has one dedicated journey: treat it as the featured editorial product. */
@media (min-width: 900px) {
  html[data-ame-page="golf-journeys"] .ame-style-recommendations {
    display: block;
    max-width: 1160px;
    margin-inline: auto;
    overflow: visible;
    padding-inline: 0;
  }

  html[data-ame-page="golf-journeys"] .ame-style-recommendations .ame-journey-card {
    display: grid;
    grid-template-columns: minmax(0, 1.22fr) minmax(360px, 0.78fr);
    min-height: 500px;
  }

  html[data-ame-page="golf-journeys"] .ame-style-recommendations .ame-journey-card-media {
    height: 100%;
    min-height: 500px;
  }

  html[data-ame-page="golf-journeys"] .ame-style-recommendations .ame-journey-card-media img {
    height: 100%;
  }

  html[data-ame-page="golf-journeys"] .ame-style-recommendations .ame-journey-card-body {
    justify-content: center;
    padding: clamp(38px, 4vw, 68px);
  }
}

html[data-ame-page="golf-journeys"] .ame-golf-secondary-cta {
  max-width: 760px;
  margin: 42px auto 0;
  text-align: center;
}

html[data-ame-page="golf-journeys"] .ame-golf-secondary-cta h3 {
  margin: 0 0 10px;
  color: #2c2c2a;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: clamp(28px, 3vw, 38px);
  font-weight: 500;
}

html[data-ame-page="golf-journeys"] .ame-golf-secondary-cta p {
  margin: 0 auto 22px;
  max-width: 620px;
  color: rgba(44, 44, 42, 0.72);
  font-size: 15px;
  line-height: 1.75;
}

html[data-ame-page="golf-journeys"] .ame-golf-secondary-cta a {
  display: inline-flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  border: 1px solid #c8a97e;
  padding: 13px 25px;
  color: #2c2c2a;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  transition: background-color 180ms ease, color 180ms ease;
}

html[data-ame-page="golf-journeys"] .ame-golf-secondary-cta a:hover,
html[data-ame-page="golf-journeys"] .ame-golf-secondary-cta a:focus-visible {
  background: #c8a97e;
  color: #fff;
}

@media (max-width: 767px) {
  html[data-ame-kind="travel"] #signature-carousel,
  html[data-ame-kind="travel"] #ls-carousel {
    scroll-padding-inline: 24px;
  }

  html[data-ame-kind="travel"] #signature-carousel > *,
  html[data-ame-kind="travel"] #ls-carousel > * {
    flex-basis: min(84vw, 350px) !important;
  }
}
