/* Header differences from Safari Packages.dc.html lines 109–117, 29–61.
   All shared dimensions/type remain in page-header.css; About is unchanged. */
.packages-page .reference-page-header-overlay { background:linear-gradient(115deg, rgba(15,12,8,0.72) 0%, rgba(15,12,8,0.5) 52%, rgba(15,12,8,0.18) 100%); }
/* Listing source lines 129–188. Reference uses content-box, including pills/links. */
.packages-list, .packages-list * { box-sizing:content-box; }
.packages-list { background:var(--color-cream-2); padding:56px 40px 20px; line-height:normal; }
.packages-list-inner { max-width:1200px; margin:0 auto; display:flex; flex-direction:column; gap:40px; }
.packages-list .pkg { min-height:470px; display:grid; grid-template-columns:1.05fr 1fr; background:var(--color-cream); border:1px solid var(--border-subtle); border-radius:var(--radius-lg); box-shadow:var(--shadow-card); overflow:hidden; }
.packages-list .pkg-reverse { grid-template-columns:1fr 1.05fr; }
.packages-list .pkg-media { position:relative; height:100%; min-height:0; max-height:100%; overflow:hidden; }
.packages-list .pkg-media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform 700ms var(--ease-standard); }
.packages-list .pkg-media img:hover { transform:scale(1.05); }
.packages-list .pkg-badges { position:absolute; left:18px; top:18px; display:flex; gap:8px; }
.packages-list .pkg-badges span { background:rgba(15,12,8,0.62); color:var(--color-cream); font-size:12.5px; font-weight:700; letter-spacing:0.12em; padding:7px 12px; border-radius:var(--radius-pill); }
.packages-list .pkg-body { padding:34px 34px 32px; display:flex; flex-direction:column; }
.packages-list .pkg-route { font-size:13.5px; letter-spacing:0.16em; font-weight:700; color:var(--color-gold-dark); margin-bottom:10px; }
.packages-list .pkg-title { font-family:var(--font-serif-display); font-weight:700; font-size:31px; line-height:1.18; margin:0 0 14px; color:var(--text-primary); }
.packages-list .pkg-body p { font-size:17px; line-height:1.7; color:var(--text-secondary); margin:0 0 20px; text-wrap:pretty; flex:1 1 auto; }
.packages-list .pkg-tags { display:flex; flex-wrap:wrap; gap:8px 10px; margin-bottom:20px; }
.packages-list .pkg-tags span { display:inline-flex; align-items:center; white-space:nowrap; line-height:1.3; background:var(--color-cream-2); border:1px solid var(--border-subtle); font-size:13.5px; color:var(--text-secondary); padding:6px 11px; border-radius:var(--radius-pill); }
.packages-list .pkg-facts { display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; font-size:15px; color:var(--text-secondary); padding:16px 0; border-top:1px solid var(--border-subtle); border-bottom:1px solid var(--border-subtle); margin-bottom:20px; }
.packages-list .pkg-facts > span { display:flex; align-items:center; gap:8px; }
.packages-list .pkg-fact-icon { width:15px; height:15px; color:var(--color-gold-dark); display:flex; }
.packages-list .pkg-fact-icon svg { width:100%; height:100%; }
.packages-list .pkg-cta { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.packages-list .pkg-cta a { border:1px solid var(--border-strong); color:var(--text-primary); font-size:14.5px; font-weight:700; letter-spacing:0.1em; padding:14px 22px; border-radius:var(--radius-sm); display:flex; align-items:center; gap:9px; white-space:nowrap; text-decoration:none; }
.packages-list .pkg-cta a:hover { background:var(--color-espresso); color:var(--color-cream); }
.packages-list .pkg-cta a + a { border:0; background:var(--color-safari-green); color:var(--color-cream); padding:14px 24px; box-shadow:var(--shadow-sm); white-space:normal; }
.packages-list .pkg-cta a + a:hover { background:var(--color-safari-green-dark); }
.packages-list .pkg-cta svg { width:14px; height:14px; }
@media (max-width:1024px) {
  .packages-list .pkg { grid-template-columns:1fr; min-height:0; }
  .packages-list .pkg-media { order:-1; height:320px; }
}
@media (max-width:900px) { .packages-list { padding-left:24px; padding-right:24px; } }
@media (max-width:640px) {
  .packages-list { padding-left:20px; padding-right:20px; }
  .packages-list .pkg-media { height:240px; }
  .packages-list .pkg-body { padding:24px 20px 28px; }
  .packages-list .pkg-title { font-size:26px; }
  .packages-list .pkg-cta { flex-direction:column; align-items:stretch; }
  .packages-list .pkg-cta > a { justify-content:center; }
  .packages-page .reference-page-header { min-height:420px; }
  /* Relative rather than source static flow keeps copy above the absolute image. */
  .packages-page .reference-page-header-copy { padding:80px 20px 40px; }
}

/* Remaining source sections use original inline values and scoped responsive rules. */
.packages-details-section, .packages-details-section *, .packages-jump, .packages-jump *, .packages-enquire, .packages-enquire * { box-sizing:content-box; }
.packages-details-section, .packages-jump { line-height:normal; }
.packages-included svg { display:inline; vertical-align:baseline; }
.packages-enquire { background:var(--color-safari-green-dark); padding:26px 40px; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; line-height:normal; }
.packages-enquire-copy { color:var(--color-cream); }
.packages-enquire-title { font-family:var(--font-serif-display); font-size:24px; font-weight:700; }
.packages-enquire-text { font-size:15px; opacity:0.85; margin-top:4px; }
.packages-enquire-cta { display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.packages-enquire-cta a { font-size:14.5px; font-weight:700; padding:13px 24px; border-radius:var(--radius-sm); display:flex; align-items:center; gap:8px; }
.packages-enquire-primary { background:var(--color-gold); color:var(--color-espresso); letter-spacing:0.1em; }
.packages-enquire-primary svg { width:14px; height:14px; }
.packages-enquire-primary:hover { background:var(--color-gold-dark); color:var(--color-espresso); text-decoration:none; }
.packages-enquire-cta .packages-enquire-whatsapp { border:1px solid var(--color-cream); color:var(--color-cream); letter-spacing:0.06em; padding:13px 22px; }
.packages-enquire-whatsapp svg { width:15px; height:15px; }
.packages-enquire-whatsapp:hover { background:var(--color-cream); color:var(--color-espresso); text-decoration:none; }
.packages-jump .jump { justify-content:safe center !important; }
.packages-jump a:hover { background:var(--color-espresso) !important; color:var(--color-cream) !important; text-decoration:none; }
@media (max-width:1024px) { .packages-page .inc-grid { grid-template-columns:repeat(2,1fr) !important; } }
@media (max-width:900px) { .packages-details-section, .packages-enquire { padding-left:24px !important; padding-right:24px !important; } }
@media (max-width:640px) { .packages-details-section, .packages-enquire { padding-left:20px !important; padding-right:20px !important; }  .packages-page .inc-grid { grid-template-columns:1fr !important; } }
