/* Design components copied from the regular Libya expedition page. */
/* Page-specific styles retained from this page's former inline
       block. Everything else now comes from css/expedition.css. */
    .hero-content {
      box-sizing: border-box;
      max-width: 900px;
      padding: 0 1.5rem;
      position: relative;
      text-align: center;
      width: 100%;
      z-index: 2;
    }
    .itinerary-option {
      margin: 0 auto;
      max-width: 1080px;
    }
    .itinerary-option-header {
      margin: 0 auto 3rem;
      max-width: 760px;
      text-align: center;
    }
    .itinerary-option-label {
      color: var(--gold);
      display: inline-block;
      font-size: 0.7rem;
      font-weight: 600;
      letter-spacing: 0.3em;
      margin-bottom: 0.8rem;
      text-transform: uppercase;
    }
    .itinerary-option-title {
      color: var(--sand);
      font-family: 'Playfair Display', serif;
      font-size: clamp(1.6rem, 3vw, 2.3rem);
      font-weight: 700;
      line-height: 1.2;
      margin-bottom: 1rem;
    }
    .itinerary-option-summary {
      color: rgba(245, 237, 224, 0.75);
      font-size: 1rem;
      line-height: 1.65;
    }
    .itinerary-option--featured .itinerary-option-label::after {
      color: var(--gold);
      content: ' · MOST POPULAR';
    }
    .pricing-amount {
      color: var(--gold);
      font-family: 'Playfair Display', serif;
      font-size: clamp(3rem, 10vw, 7.5rem);
      font-weight: 900;
      letter-spacing: -0.02em;
      line-height: 1;
      margin-bottom: 0.3rem;
    }
    .pricing-note {
      color: rgba(245, 237, 224, 0.50);
      font-size: 0.82rem;
      font-style: italic;
      margin-bottom: 2.4rem;
    }
    .pricing-addon {
      background: rgba(196, 148, 74, 0.06);
      border: 1px solid rgba(196, 148, 74, 0.45);
      margin: 0 auto 2.8rem;
      max-width: 540px;
      padding: 1.6rem 1.8rem;
      text-align: left;
    }
    .pricing-addon-label {
      color: var(--gold);
      display: inline-block;
      font-size: 0.66rem;
      font-weight: 600;
      letter-spacing: 0.28em;
      margin-bottom: 0.6rem;
      text-transform: uppercase;
    }
    .pricing-addon-title {
      color: var(--sand);
      font-family: 'Playfair Display', serif;
      font-size: 1.45rem;
      font-weight: 700;
      line-height: 1.2;
      margin-bottom: 0.7rem;
    }
    .pricing-addon-desc {
      color: rgba(245, 237, 224, 0.7);
      font-size: 0.92rem;
      line-height: 1.6;
      margin-bottom: 1.1rem;
    }
    .pricing-addon-totals {
      align-items: baseline;
      border-top: 1px solid rgba(196, 148, 74, 0.22);
      display: flex;
      flex-wrap: wrap;
      gap: 0.6rem;
      padding-top: 0.9rem;
    }
    .pricing-addon-plus {
      color: rgba(245, 237, 224, 0.8);
      font-family: 'Source Sans 3', sans-serif;
      font-size: 0.85rem;
      font-weight: 600;
      letter-spacing: 0.04em;
    }
    .pricing-addon-arrow {
      color: rgba(196, 148, 74, 0.55);
      font-weight: 400;
    }
    .pricing-addon-total {
      color: var(--gold);
      font-family: 'Playfair Display', serif;
      font-size: 1.25rem;
      font-weight: 700;
      letter-spacing: -0.01em;
    }
    .pricing-headline {
      color: var(--sand);
      font-family: 'Playfair Display', serif;
      font-size: clamp(2rem, 4vw, 3rem);
      font-weight: 700;
      line-height: 1.15;
      margin-bottom: 1rem;
    }
    .pricing-tagline {
      color: rgba(245, 237, 224, 0.7);
      font-size: 1rem;
      line-height: 1.65;
      margin: 0 auto 3rem;
      max-width: 620px;
    }
    .pricing-options {
      display: grid;
      gap: 1.4rem;
      grid-template-columns: repeat(3, 1fr);
      margin: 0 auto 3rem;
      max-width: 1080px;
      text-align: left;
    }
    .pricing-option-card {
      background: rgba(20, 15, 10, 0.55);
      border: 1px solid rgba(196, 148, 74, 0.32);
      display: flex;
      flex-direction: column;
      padding: 1.6rem 1.4rem;
      position: relative;
      transition: border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);
    }
    .pricing-option-card:hover {
      border-color: var(--gold);
      box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
      transform: translateY(-3px);
    }
    .pricing-option-card--featured {
      background: rgba(196, 148, 74, 0.08);
      border-color: var(--gold);
    }
    .pricing-option-badge {
      background: var(--gold);
      color: var(--charcoal);
      font-family: 'Source Sans 3', sans-serif;
      font-size: 0.6rem;
      font-weight: 700;
      letter-spacing: 0.18em;
      padding: 4px 10px;
      position: absolute;
      right: 1rem;
      text-transform: uppercase;
      top: -10px;
    }
    .pricing-option-dur {
      color: var(--gold-light);
      font-family: 'Source Sans 3', sans-serif;
      font-size: 0.66rem;
      font-weight: 600;
      letter-spacing: 0.22em;
      margin-bottom: 0.7rem;
      text-transform: uppercase;
    }
    .pricing-option-name {
      color: var(--sand);
      font-family: 'Playfair Display', serif;
      font-size: 1.2rem;
      font-weight: 700;
      line-height: 1.25;
      margin-bottom: 0.9rem;
      min-height: 3rem;
    }
    .pricing-option-price {
      color: var(--gold);
      font-family: 'Playfair Display', serif;
      font-size: 2rem;
      font-weight: 900;
      line-height: 1;
      margin-bottom: 0.3rem;
    }
    .pricing-option-per {
      color: rgba(245, 237, 224, 0.5);
      font-size: 0.72rem;
      letter-spacing: 0.04em;
      margin-bottom: 1rem;
    }
    .pricing-option-perks {
      color: rgba(245, 237, 224, 0.72);
      flex-grow: 1;
      font-size: 0.88rem;
      line-height: 1.5;
      margin-bottom: 1.4rem;
    }
    .pricing-option-cta {
      border-top: 1px solid rgba(196, 148, 74, 0.32);
      color: var(--gold-light);
      display: inline-block;
      font-family: 'Source Sans 3', sans-serif;
      font-size: 0.7rem;
      font-weight: 700;
      letter-spacing: 0.22em;
      padding: 0.7rem 0;
      text-transform: uppercase;
      transition: color var(--transition-fast);
    }
    .pricing-option-card:hover .pricing-option-cta {
      color: var(--sand);
    }
    @media (max-width: 980px) {
      .pricing-options {
        grid-template-columns: repeat(2, 1fr);
      }
      .pricing-option-card:last-child {
        grid-column: 1 / -1;
      }
    }
    @media (max-width: 560px) {
      .pricing-options {
        grid-template-columns: 1fr;
      }
      .pricing-option-name {
        min-height: 0;
      }
    }

/* The main eastern expedition and three optional western extensions. */
.pricing-options{grid-template-columns:repeat(2,minmax(0,1fr));max-width:880px}
@media(max-width:980px){.pricing-options .pricing-option-card:last-child{grid-column:auto}}
@media(max-width:560px){.pricing-options{grid-template-columns:1fr}}

/* Preserve the eclipse photograph and a JPEG fallback on every screen size. */
body.wpj-expedition #heroBg{background:none;transform:none!important;inset:0;width:100%;height:100%}
#heroBg picture{display:block;width:100%;height:100%}
#heroBg .le-hero-image{display:block;width:100%;height:100%;object-fit:cover;object-position:65% 35%}
#day-3 .itin-day-img{object-position:center top}
#day-4 .itin-day-img{object-position:center top}
#book .pricing-bg{--pricing-img:url('/images/libya-eclipse-2027/cyrene-totality.webp');background-position:center 30%}
.le-route-note{max-width:880px;margin:2rem auto;text-align:center}
.le-route-note a{color:var(--gold);text-decoration:underline;text-underline-offset:3px}
.itin-day-body .day-desc+.day-desc{margin-top:.9rem}
.le-details-note{margin-top:1.5rem;font-size:.9rem;line-height:1.7;color:var(--charcoal)}
@media(max-width:900px){#heroBg .le-hero-image{object-position:65% center}}
