/* Country destination pages, using the shared Prestige Golf design tokens. */
.destination-page .destination-hero { padding-bottom: 70px; }
.destination-hero .section-label { color: var(--gold-light); margin-bottom: 16px; }
.destination-hero h1 { max-width: 840px; }
.destination-hero .page-hero-content > p { max-width: 730px; }
.destination-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; }
.destination-section-heading { max-width: 800px; margin-bottom: 32px; }
.destination-section-heading h2 { margin-bottom: 16px; color: var(--green-dark); }
.destination-section-heading > p { color: var(--grey-mid); }
.destination-departures { background: var(--cream); }
.destination-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.destination-trip { display: flex; flex-direction: column; padding: 30px; background: var(--white); border: 1px solid #ddd9cf; border-top: 3px solid var(--green-dark); }
.destination-trip h3 { margin-bottom: 12px; color: var(--green-dark); font-size: clamp(1.4rem, 2.8vw, 1.85rem); }
.destination-trip h3 a:hover { text-decoration: underline; text-underline-offset: 5px; }
.destination-trip > p { font-size: .92rem; }
.destination-trip .destination-status { margin-bottom: 16px; color: var(--green-dark); font-size: .75rem; font-weight: 700; letter-spacing: .02em; }
.destination-trip .destination-facts { color: var(--grey-mid); font-size: .8rem; font-weight: 600; }
.destination-trip > .text-link { align-self: flex-start; margin-top: auto; }
.destination-trip-sold { border-top-color: #9b825d; }
.destination-trip-sold .destination-status { color: #785221; }
.destination-inclusions { border-bottom: 1px solid var(--grey-light); }
.destination-table-wrap { overflow-x: auto; border: 1px solid #ddd9cf; }
.destination-table { width: 100%; min-width: 590px; border-collapse: collapse; text-align: left; font-size: .86rem; line-height: 1.6; }
.destination-table th, .destination-table td { padding: 19px 22px; vertical-align: top; }
.destination-table thead { color: var(--white); background: var(--green-dark); }
.destination-table tbody tr + tr { border-top: 1px solid #e2dfd6; }
.destination-table tbody tr:nth-child(even) { background: var(--cream); }
.destination-table tbody th { width: 29%; color: var(--green-dark); font-weight: 600; }
.destination-table a { text-decoration: underline; text-underline-offset: 4px; }
.destination-note { margin-top: 18px; max-width: 850px; color: var(--grey-mid); font-size: .83rem; }
.destination-planning { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 64px; }
.destination-planning h2 { margin-bottom: 20px; color: var(--green-dark); }
.destination-planning > div > p { color: var(--grey-mid); }
.destination-questions details { border-top: 1px solid #d4d7cd; }
.destination-questions details:last-child { border-bottom: 1px solid #d4d7cd; }
.destination-questions summary { padding: 21px 0; color: var(--green-dark); font-size: .94rem; font-weight: 600; line-height: 1.6; cursor: pointer; }
.destination-questions summary:focus-visible { outline: 3px solid var(--green-dark); outline-offset: 4px; }
.destination-questions details > p { padding: 0 0 22px; margin: 0; font-size: .88rem; }
.destination-enquiry { padding: 54px 0; color: var(--white); background: var(--green-dark); }
.destination-enquiry-inner { display: flex; align-items: center; justify-content: space-between; gap: 36px; }
.destination-enquiry h2 { color: var(--white); font-size: clamp(1.6rem, 3.5vw, 2.2rem); margin-bottom: 12px; }
.destination-enquiry p { max-width: 650px; color: #f1f3ee; font-size: .94rem; }
.destination-enquiry .btn { flex-shrink: 0; }

@media (max-width: 900px) {
  .destination-planning { gap: 36px; }
  .destination-trip { padding: 25px; }
  .destination-enquiry-inner { align-items: flex-start; flex-direction: column; gap: 24px; }
}

@media (max-width: 640px) {
  .destination-page .destination-hero { padding-bottom: 42px; }
  .destination-hero h1 { font-size: clamp(2rem, 8.8vw, 2.9rem); }
  .destination-hero .breadcrumb { flex-wrap: wrap; row-gap: 6px; }
  .destination-actions { flex-direction: column; align-items: flex-start; gap: 12px; }
  .destination-grid, .destination-planning { grid-template-columns: minmax(0, 1fr); }
  .destination-grid { gap: 18px; }
  .destination-trip { padding: 24px; }
  .destination-section-heading { margin-bottom: 26px; }
  .destination-table th, .destination-table td { padding: 16px; }
  .destination-enquiry { padding: 42px 0; }
}

/* Course-by-course region cards and the season table on country pages. */
.destination-regions { background: var(--cream); }
.destination-region { display: flex; flex-direction: column; background: var(--white); border: 1px solid #ddd9cf; }
.destination-region > img { width: 100%; height: 240px; object-fit: cover; }
.destination-region-body { display: flex; flex-direction: column; padding: 28px 30px 30px; flex: 1; }
.destination-region h3 { margin-bottom: 12px; color: var(--green-dark); font-size: clamp(1.4rem, 2.8vw, 1.85rem); }
.destination-region-body > p { font-size: .92rem; }
.destination-courses { margin: 6px 0 22px; padding: 0; list-style: none; font-size: .88rem; line-height: 1.6; }
.destination-courses li { padding: 10px 0; border-top: 1px solid #e2dfd6; }
.destination-courses strong { color: var(--green-dark); }
.destination-region-links { margin: auto 0 0; }
.destination-timing .destination-table-wrap { align-self: start; }
.destination-table-compact { min-width: 0; }
.destination-table-compact tbody th { width: 34%; white-space: nowrap; }
@media (max-width: 768px) {
  .destination-region > img { height: 200px; }
  .destination-region-body { padding: 22px; }
}
