/* Session (2026-09-27), Part E — verbatim extraction of single-eas_departure.php's
   own inline <style> block (lines 506-815), the real live source of truth for
   this template. This template has no separate enqueued stylesheet on live —
   its entire CSS lives inline in the PHP file itself — so this file exists only
   to give the migrated Next.js page something to <link rel="stylesheet"> to,
   matching every other page type's own -inline.css convention in this project.
   Shell contract (LAW 17) — scoped to .eas-dep-page. Typography/tokens
   confirmed live against /destinations/tanzania/ and single-eas_itinerary.php
   before writing this block — Cormorant Garamond + Jost, --canvas:#FAF7F0. */
.eas-dep-page {
  --canvas:      #FAF7F0;
  --cream:       #FEFDFB;
  --forest:      #2C3424;
  --ink:         #1C1A14;
  --ink-muted:   #5C513F;
  --ink-faint:   rgba(88,71,56,0.12);
  --gold:        #B8780A;
  --gold-on-light: #924F08;
  --gold-dim:    rgba(184,120,10,0.5);
  --gold-pale:   rgba(184,120,10,0.12);
  --amber:       #C9963C;
  --tobacco:     #B59E7D;
  --char:        #3A2F22;
  --parchment:   #F2EBD9;
  --parchment-soft: #EDE5CE;
  background: var(--canvas);
  color: var(--ink);
  overflow-x: clip;
}
.eas-dep-page .eas-dep-wrap { max-width: 1180px; margin: 0 auto; padding: 0 40px; }
@media (max-width: 640px) { .eas-dep-page .eas-dep-wrap { padding: 0 20px; } }

/* Glance strip */
.eas-dep-page .eas-dep-glance { background: var(--parchment); padding: 40px 0; }
.eas-dep-page .eas-dep-glance-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 0; border-top: 1px solid var(--ink-faint); border-left: 1px solid var(--ink-faint); }
.eas-dep-page .eas-dep-glance-item { border-right: 1px solid var(--ink-faint); border-bottom: 1px solid var(--ink-faint); padding: 22px 18px; text-align: center; }
.eas-dep-page .eas-dep-glance-label { font-family:'Jost',sans-serif; font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--ink-muted); margin-bottom: 8px; }
.eas-dep-page .eas-dep-glance-value { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 19px; color: var(--ink); }

/* Overview */
.eas-dep-page .eas-dep-overview { padding: 90px 0; }
.eas-dep-page .eas-dep-overview-inner { max-width: 720px; margin: 0 auto; }
.eas-dep-page .eas-dep-overview-head { max-width: 600px; margin-bottom: 28px; }
.eas-dep-page .eas-dep-overview-text {
  font-family: 'Jost', sans-serif; font-weight: 300; font-size: 16px;
  line-height: 1.9; color: var(--char); max-width: 64ch; margin: 0 auto;
  text-align: justify; text-align-last: left; hyphens: auto; -webkit-hyphens: auto;
}

/* Upcoming dates */
.eas-dep-page .eas-dep-dates { padding: 70px 0 40px; }
.eas-dep-page .eas-dep-dates-head { max-width: 640px; margin-bottom: 40px; }
.eas-dep-page .eas-dep-dates-since { font-family:'Jost',sans-serif; font-size: 13px; color: var(--ink-muted); margin-top: 10px; }
.eas-dep-page .eas-dep-empty { font-family:'Jost',sans-serif; font-size: 15px; color: var(--ink-muted); padding: 10px 0 40px; }
.eas-dep-page .eas-dep-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 24px; }
.eas-dep-page .eas-dep-card { background: var(--cream); border: 1px solid var(--ink-faint); padding: 28px 26px; display: flex; flex-direction: column; }
.eas-dep-page .eas-dep-card-dates { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 22px; color: var(--ink); margin-bottom: 6px; }
.eas-dep-page .eas-dep-card-nights { font-family:'Jost',sans-serif; font-size: 12px; color: var(--ink-muted); margin-bottom: 16px; }
.eas-dep-page .eas-dep-badge { display: inline-block; font-family:'Jost',sans-serif; font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; padding: 5px 12px; border-radius: 100px; margin-bottom: 16px; align-self: flex-start; }
.eas-dep-page .eas-dep-badge--confirmed { background: var(--gold-pale); color: var(--gold-on-light); border: 1px solid var(--gold-dim); }
.eas-dep-page .eas-dep-badge--limited { background: rgba(201,150,60,0.18); color: #8A5A0F; border: 1px solid rgba(201,150,60,0.55); }
.eas-dep-page .eas-dep-badge--waitlist { background: rgba(88,71,56,0.10); color: var(--char); border: 1px solid rgba(88,71,56,0.35); }
.eas-dep-page .eas-dep-badge--closed { background: rgba(88,71,56,0.06); color: var(--ink-muted); border: 1px solid var(--ink-faint); }
.eas-dep-page .eas-dep-card-row { display: flex; justify-content: space-between; padding: 10px 0; border-top: 1px solid var(--ink-faint); font-family:'Jost',sans-serif; font-size: 13px; }
.eas-dep-page .eas-dep-card-row:first-of-type { border-top: none; }
.eas-dep-page .eas-dep-card-row-label { color: var(--ink-muted); }
.eas-dep-page .eas-dep-card-row-value { color: var(--ink); font-weight: 500; }
.eas-dep-page .eas-dep-card-cta { display: block; text-align: center; margin-top: 20px; padding: 13px; background: var(--forest); color: var(--amber); text-decoration: none; font-family:'Jost',sans-serif; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; }
.eas-dep-page .eas-dep-card-cta:hover { background: var(--gold); color: var(--forest); }
.eas-dep-page .eas-dep-card-cta--waitlist { background: transparent; color: var(--gold-on-light); border: 1px solid var(--gold-dim); }

/* Past departures disclosure */
.eas-dep-page .eas-dep-past { padding: 10px 0 70px; }
.eas-dep-page .eas-dep-past-toggle { font-family:'Jost',sans-serif; font-size: 13px; letter-spacing: 0.04em; color: var(--ink-muted); cursor: pointer; padding: 14px 0; border-top: 1px solid var(--ink-faint); list-style: none; }
.eas-dep-page .eas-dep-past-toggle::-webkit-details-marker { display: none; }
.eas-dep-page .eas-dep-past-toggle::before { content: '+ '; color: var(--gold-on-light); }
.eas-dep-page details[open] .eas-dep-past-toggle::before { content: '\2212 '; }
.eas-dep-page .eas-dep-past-list { margin-top: 12px; display: flex; flex-direction: column; gap: 0; }
.eas-dep-page .eas-dep-past-row { display: flex; justify-content: space-between; padding: 12px 0; border-top: 1px solid var(--ink-faint); font-family:'Jost',sans-serif; font-size: 13.5px; color: var(--ink-muted); }
.eas-dep-page .eas-dep-past-row-label { font-family: 'Cormorant Garamond', serif; font-size: 16px; color: var(--char); }
.eas-dep-page .eas-dep-past-row-status { font-size: 11px; letter-spacing: 0.08em; text-transform: uppercase; }

/* Explore destinations */
.eas-dep-page .eas-dep-links { padding: 48px 0; border-top: 1px solid var(--ink-faint); border-bottom: 1px solid var(--ink-faint); }
.eas-dep-page .eas-dep-links-row { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 16px; }
.eas-dep-page .eas-dep-links-pill { font-family:'Jost',sans-serif; font-size: 13px; color: var(--gold-on-light); text-decoration: none; padding: 9px 18px; border: 1px solid var(--gold-dim); border-radius: 999px; transition: background 0.2s, color 0.2s; }
.eas-dep-page .eas-dep-links-pill:hover { background: var(--gold); color: var(--cream); }

/* Real day-by-day chapters — same visual pattern as single-eas_itinerary.php's
   chapter section. */
.eas-dep-page .eas-dep-chapters { padding: 80px 0 20px; }
.eas-dep-page .eas-dep-chapter { display: grid; grid-template-columns: 300px 1fr; gap: 44px; padding: 44px 0; border-top: 1px solid var(--ink-faint); }
.eas-dep-page .eas-dep-chapter:first-child { border-top: none; }
.eas-dep-page .eas-dep-chapter-days { font-family:'Jost',sans-serif; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gold-on-light); margin-bottom: 8px; }
.eas-dep-page .eas-dep-chapter-loc { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 28px; color: var(--ink); line-height: 1.2; margin-bottom: 14px; }
.eas-dep-page .eas-dep-chapter-lede { font-family:'Jost',sans-serif; font-weight: 300; font-size: 14.5px; line-height: 1.8; color: var(--ink-muted); }
.eas-dep-page .eas-dep-chapter-photo { height: 220px; background-size: cover; background-position: center; background-color: var(--tobacco); margin-bottom: 18px; }
.eas-dep-page .eas-dep-day { padding: 30px 0; border-top: 1px solid var(--ink-faint); }
.eas-dep-page .eas-dep-day:first-child { border-top: none; padding-top: 0; }
.eas-dep-page .eas-dep-day-title { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 19px; color: var(--ink); margin: 0 0 10px; }
.eas-dep-page .eas-dep-day-narrative { font-family:'Jost',sans-serif; font-weight: 300; font-size: 15px; line-height: 1.85; color: var(--char); max-width: 100%; text-align: justify; text-align-last: left; hyphens: auto; -webkit-hyphens: auto; margin: 0; }
.eas-dep-page .eas-dep-day-transfer { display: inline-flex; align-items: center; gap: 6px; font-family:'Jost',sans-serif; font-size: 12px; letter-spacing: 0.04em; color: var(--gold-on-light); background: var(--gold-pale); border: 1px solid var(--gold-dim); border-radius: 999px; padding: 5px 14px; margin: 10px 0 0; }
.eas-dep-page .eas-dep-day-transfer--flight { border-style: dashed; }
.eas-dep-page .eas-dep-day-transfer--road { border-style: solid; }
.eas-dep-page .eas-dep-day-transfer--transit { color: var(--ink-muted); background: rgba(88,71,56,0.06); border-color: rgba(88,71,56,0.16); }
.eas-dep-page .eas-dep-day-transfer-note { font-family:'Jost',sans-serif; font-weight: 300; font-size: 12.5px; font-style: italic; color: var(--ink-muted); margin: 4px 0 0; }
@media (max-width: 800px) { .eas-dep-page .eas-dep-chapter { grid-template-columns: 1fr; gap: 18px; } }

/* Real inline Accommodation cards per day. */
.eas-dep-page .eas-dep-day-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 30px; }
.eas-dep-page .eas-dep-day-card { background: var(--cream); border: 1px solid var(--ink-faint); display: flex; flex-direction: column; }
.eas-dep-page .eas-dep-day-card-photo { height: 150px; background-size: cover; background-position: center; background-color: var(--tobacco); }
.eas-dep-page .eas-dep-day-card-photo-link { display: block; position: relative; }
.eas-dep-page .eas-dep-day-card-body { padding: 14px 16px 16px; flex: 1; }
.eas-dep-page .eas-dep-day-card-head { padding: 9px 16px; background: linear-gradient(135deg, var(--parchment) 0%, var(--parchment-soft) 100%); border-bottom: 1px solid var(--ink-faint); }
.eas-dep-page .eas-dep-day-card-label { font-family:'Jost',sans-serif; font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gold-on-light); margin: 0; }
.eas-dep-page .eas-dep-day-card-tags { display: flex; gap: 6px; flex-wrap: wrap; }
.eas-dep-page .eas-dep-day-card-tag { font-family:'Jost',sans-serif; font-size: 10px; letter-spacing: 0.04em; color: var(--gold-on-light); background: var(--gold-pale); padding: 4px 9px; }
.eas-dep-page .eas-dep-day-card-title-link { text-decoration: none; color: inherit; display: block; }
.eas-dep-page .eas-dep-day-card-title { font-family: 'Cormorant Garamond', serif; font-size: 17px; color: var(--ink); margin-bottom: 4px; }
.eas-dep-page .eas-dep-day-card-title-link:hover .eas-dep-day-card-title { color: var(--gold-on-light); }
.eas-dep-page .eas-dep-day-card-meta { font-family:'Jost',sans-serif; font-size: 11.5px; color: var(--ink-muted); margin-bottom: 6px; }
.eas-dep-page .eas-dep-day-card-desc { font-family:'Jost',sans-serif; font-weight: 300; font-size: 12.5px; line-height: 1.55; color: var(--char); margin-bottom: 10px; }
.eas-dep-page .eas-dep-day-card-cta { font-family:'Jost',sans-serif; font-size: 11px; letter-spacing: 0.04em; color: var(--forest); text-decoration: none; border-bottom: 1px solid var(--gold-dim); padding-bottom: 2px; }
.eas-dep-page .eas-dep-day-card-cta:hover { border-bottom-color: var(--gold); color: var(--gold-on-light); }
@media (max-width: 560px) { .eas-dep-page .eas-dep-day-cards { grid-template-columns: 1fr; } }
@media (max-width: 640px) {
  .eas-dep-page .eas-dep-day { padding: 22px 0; }
  .eas-dep-page .eas-dep-day-title { font-size: 17px; }
  .eas-dep-page .eas-dep-day-narrative { font-size: 14px; }
  .eas-dep-page .eas-dep-day-cards { margin-top: 20px; }
  .eas-dep-page .eas-dep-day-card-photo { height: 130px; }
}

/* FAQ */
.eas-dep-page .eas-dep-faq { padding: 90px 0; }
.eas-dep-page .eas-dep-faq-head { max-width: 600px; margin-bottom: 40px; }
.eas-dep-page .eas-dep-faq-inner { max-width: 860px; margin: 0 auto; }
.eas-dep-page .eas-dep-faq-list { display: flex; flex-direction: column; gap: 12px; }
.eas-dep-page .eas-dep-faq-item { background: var(--cream); border: 1px solid var(--ink-faint); transition: border-color 0.2s; }
.eas-dep-page .eas-dep-faq-item[open] { border-color: var(--gold-dim); }
.eas-dep-page .eas-dep-faq-q { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 26px; cursor: pointer; list-style: none; }
.eas-dep-page .eas-dep-faq-q::-webkit-details-marker { display: none; }
.eas-dep-page .eas-dep-faq-q-text { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 20px; line-height: 1.4; color: var(--ink); }
.eas-dep-page .eas-dep-faq-toggle { flex-shrink: 0; position: relative; width: 26px; height: 26px; border-radius: 50%; border: 1px solid var(--gold-dim); transition: background 0.2s, border-color 0.2s; }
.eas-dep-page .eas-dep-faq-toggle::before, .eas-dep-page .eas-dep-faq-toggle::after { content: ""; position: absolute; top: 50%; left: 50%; background: var(--gold-on-light); transition: transform 0.2s, opacity 0.2s; }
.eas-dep-page .eas-dep-faq-toggle::before { width: 10px; height: 1px; transform: translate(-50%, -50%); }
.eas-dep-page .eas-dep-faq-toggle::after { width: 1px; height: 10px; transform: translate(-50%, -50%); }
.eas-dep-page .eas-dep-faq-item[open] .eas-dep-faq-toggle { background: var(--gold-pale); border-color: var(--gold); }
.eas-dep-page .eas-dep-faq-item[open] .eas-dep-faq-toggle::after { opacity: 0; transform: translate(-50%, -50%) rotate(90deg); }
.eas-dep-page .eas-dep-faq-a { font-family:'Jost',sans-serif; font-weight: 300; font-size: 15px; line-height: 1.85; color: var(--char); max-width: 640px; padding: 0 26px 24px; }
@media (max-width: 640px) { .eas-dep-page .eas-dep-faq-q { padding: 18px 20px; } .eas-dep-page .eas-dep-faq-a { padding: 0 20px 20px; } }

/* Date instance cards — CTA scroll-to-form variant */
.eas-dep-page .eas-dep-card-cta-btn { display: block; width: 100%; text-align: center; margin-top: 20px; padding: 13px; background: var(--forest); color: var(--amber); border: none; cursor: pointer; font-family:'Jost',sans-serif; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; }
.eas-dep-page .eas-dep-card-cta-btn:hover { background: var(--gold); color: var(--forest); }

/* Standalone reservation form (real, disclosed VISUAL-ONLY in this migration —
   see DepartureSingle.tsx's own docblock: no real submission endpoint exists
   for this form, matching page-contact-us.php's own established precedent in
   this codebase — a real backend for it was never asked for in this brief). */
.eas-dep-page .eas-dep-reserve { padding: 90px 0 100px; background: var(--parchment); scroll-margin-top: 80px; }
.eas-dep-page .eas-comp-offerspot + .eas-dep-reserve { padding-top: 40px; }
.eas-dep-page .eas-dep-reserve-inner { max-width: 680px; margin: 0 auto; }
.eas-dep-page .eas-dep-reserve-card { background: var(--cream); border-top: 2px solid var(--gold); padding: 64px 60px; box-shadow: 0 24px 60px -34px rgba(28,26,20,0.22); }
.eas-dep-page .eas-dep-reserve-head { text-align: center; margin-bottom: 40px; }
.eas-dep-page .eas-dep-reserve-head .eas-eyebrow-std,
.eas-dep-page .eas-dep-reserve-head .eas-h2-std { text-align: center; }
.eas-dep-page .eas-dep-reserve-rule { width: 44px; height: 1px; background: var(--gold-dim); margin: 24px auto 0; }
.eas-dep-page .eas-dep-reserve-intro { font-family:'Jost',sans-serif; font-weight: 300; font-size: 15px; line-height: 1.8; color: var(--char); text-align: center; max-width: 48ch; margin: 24px auto 40px; }
.eas-dep-page .eas-dep-reserve-form { display: flex; flex-direction: column; gap: 22px; }
.eas-dep-page .eas-dep-reserve-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
@media (max-width: 560px) { .eas-dep-page .eas-dep-reserve-row { grid-template-columns: 1fr; } }
.eas-dep-page .eas-dep-reserve-field { display: flex; flex-direction: column; gap: 8px; }
.eas-dep-page .eas-dep-reserve-label { font-family:'Jost',sans-serif; font-weight: 400; font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--gold-on-light); }
.eas-dep-page .eas-dep-reserve-input,
.eas-dep-page .eas-dep-reserve-select,
.eas-dep-page .eas-dep-reserve-textarea { width: 100%; min-height: 44px; padding: 14px 16px; background: var(--parchment); border: 1px solid var(--ink-faint); font-family:'Jost',sans-serif; font-size: 15px; font-weight: 300; color: var(--ink); border-radius: 0; appearance: none; outline: none; box-sizing: border-box; transition: border-color 0.25s ease; }
.eas-dep-page .eas-dep-reserve-input:focus,
.eas-dep-page .eas-dep-reserve-select:focus,
.eas-dep-page .eas-dep-reserve-textarea:focus { border-color: var(--gold); }
.eas-dep-page .eas-dep-reserve-textarea { resize: vertical; min-height: 110px; line-height: 1.7; }
.eas-dep-page .eas-dep-reserve-submit.eas-comp-final__btn { display: flex; width: 100%; justify-content: center; box-sizing: border-box; }
.eas-dep-page .eas-dep-reserve-submit:disabled { opacity: 0.65; cursor: default; }
.eas-dep-page .eas-dep-reserve-trust { font-family:'Jost',sans-serif; font-size: 12px; color: var(--ink-muted); line-height: 1.65; margin-top: 14px; text-align: center; }
.eas-dep-page .eas-dep-reserve-success { padding: 32px 34px; background: var(--parchment); border-top: 2px solid var(--gold); text-align: center; }
.eas-dep-page .eas-dep-reserve-success h3 { font-family: 'Cormorant Garamond', serif; font-size: 24px; font-weight: 400; color: var(--ink); margin-bottom: 10px; }
.eas-dep-page .eas-dep-reserve-success p { font-family:'Jost',sans-serif; font-size: 14px; font-weight: 300; line-height: 1.8; color: var(--char); }
@media (max-width: 640px) { .eas-dep-page .eas-dep-reserve-card { padding: 44px 26px; } }
