/* =====================================================================
   REFINE — clean white / light theme in the two logo colours (black + orange).
   Loaded last. White pages, light-orange tint sections, black text, orange accents.
   ===================================================================== */
:root {
  --cream: #ffffff;
  --paper: #ffffff;
  --sand: #ffeadb;
  --line: #ebe7e2;
  --muted: #5f636c;
  --text: #17171a;
  --sh-sm: 0 2px 10px rgba(0, 0, 0, .05);
  --sh-md: 0 12px 32px rgba(0, 0, 0, .09);
  --sh-lg: 0 26px 64px rgba(0, 0, 0, .15);
}
body { background: #fff; color: var(--text); }
.section.white { background: #fff6ef; }
.section.sand { background: #ffeadb; }
.site-header { background: rgba(255, 255, 255, .96); border-bottom-color: #f0ece7; }
.chips-sm span { background: #fff6ef; border-color: #ffd9c2; color: #6b4a36; }
.fact, .panel, .wcard, .step, .vcard, .team-card, .ccard, .tcard, .dcard, .legal-body, .form-card, .rsum, .bookcard, .tl details, .faq details, .hl-list li { border-color: #ece8e3; }
.section.white .wcard, .section.white .step, .section.white .vcard, .section.white .tcard, .section.white .panel, .section.white .hl-list li, .section.white .faq details, .section.white .tl details { border-color: #ffdcc6; }
.legal-toc, .legal-body { border-color: #ece8e3; }
.faq details[open], .tl details[open] { border-color: var(--orange); }
.map-card { background: linear-gradient(135deg, #fff1e6, #ffe3cf); border-color: #ffd5b9; }
.field input, .field select, .field textarea { border-color: #e3dfd9; }
.cta-band svg.peaks { fill: rgba(0, 0, 0, .22); }

/* ---------- Expedition cards: equal heights, aligned prices & buttons ---------- */
.egrid { align-items: stretch; }
.ecard { height: 100%; }
.ecard-body { padding: 20px 22px 22px; gap: 0; flex: 1; }
.ecard-main { flex: 1; display: flex; flex-direction: column; gap: 6px; padding-bottom: 16px; }
.ecard-foot { margin-top: 0; padding-top: 16px; border-top: 1px dashed #e6dfd7; display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.ecard-foot .price { min-height: 48px; align-items: center; align-content: center; }
.ecard-route { display: flex; align-items: center; gap: 6px; min-width: 0; }
.ecard-route span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ecard.compact .ecard-foot { flex-direction: column; align-items: stretch; gap: 10px; }
.ecard.compact .ecard-foot .price { justify-content: flex-start; }
.ecard.compact .ecard-foot .btn { width: 100%; }
.ecard.compact .btn-row { width: 100%; }
.ecard h3 { min-height: 0; }
.price.quote { flex-direction: column; align-items: flex-start; gap: 0; }
.price.quote .now { font-size: 1.5rem; line-height: 1.05; }
.price.quote small { margin-top: 2px; }
.price .mrp { font-size: 1rem; }
.ecard-desc { margin-top: 6px; color: #444851; }

/* ---------- Lighter photo overlays (airy, still readable) ---------- */
.hero::after { background: linear-gradient(95deg, rgba(0,0,0,.58) 0%, rgba(0,0,0,.22) 48%, rgba(0,0,0,0) 78%), linear-gradient(0deg, rgba(0,0,0,.28) 0%, transparent 34%); }
.page-hero::after { background: linear-gradient(180deg, rgba(0,0,0,.34) 0%, rgba(0,0,0,.26) 55%, rgba(0,0,0,.5) 100%); }
.banner::after { background: linear-gradient(90deg, rgba(0,0,0,.62), rgba(0,0,0,.12)); }
.quote-banner::after { background: rgba(0,0,0,.42); }
.dtile::after { background: linear-gradient(0deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,0) 58%); }
.ecard-pic::after { background: linear-gradient(0deg, rgba(0,0,0,.22), transparent 42%); }
.egrid:not(.four):not(.three) .ecard-pic { aspect-ratio: 16 / 9; }
.hero, .page-hero, .banner, .dtile { background: #cfc9bf; }
