/* Card upgrade (site feedback brief, Phase 3). Source: Mockups/cards-upgrade.html.
   The itinerary card and the departure card share this one structure (.eas-uc). The platinum card keeps its own
   file of rules inside PlatinumCards.tsx. Loaded after every other stylesheet (see LIVE_CSS_FILES in layout.tsx). */

/* Lining numerals everywhere, so 11 reads 11 and not II in Cormorant. Jost and Manrope already draw lining figures,
   so nothing else changes. Inherited: an element that sets its own font-variant-numeric (tabular figures) keeps it. */
html { font-variant-numeric: lining-nums; font-feature-settings: 'lnum' 1; }

.eas-uc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 26px; }

.eas-uc { display: block; background: #FFFFFF; border: 1px solid rgba(28,26,20,0.12); color: #1C1A14; text-decoration: none; overflow: hidden; }
.eas-uc *, .eas-uc { box-sizing: border-box; }

/* the photo is clear: the one small tag or chip is the only thing on it */
.eas-uc__img { position: relative; height: 230px; overflow: hidden; background: linear-gradient(160deg, #3F4F35 0%, #6B5A3E 100%); }
.eas-uc__photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.5s ease; }
.eas-uc:hover .eas-uc__photo { transform: scale(1.04); }
.eas-uc__letter { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; font-family: 'Cormorant Garamond', serif; font-size: 72px; color: rgba(250,247,240,0.55); }

.eas-uc__tag { position: absolute; top: 16px; left: 16px; z-index: 1; background: #FAF7F0; color: #1C1A14; font-family: 'Jost', sans-serif; font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; padding: 7px 12px; }
.eas-uc__chip { position: absolute; top: 16px; right: 16px; z-index: 1; font-family: 'Jost', sans-serif; font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; padding: 7px 12px; font-weight: 500; }
.eas-uc__chip--open { background: rgba(15,110,86,0.9); color: #FFFFFF; }
.eas-uc__chip--limited { background: #B8780A; color: #1C1A14; }
.eas-uc__chip--sold, .eas-uc__chip--closed { background: rgba(153,60,29,0.92); color: #FFFFFF; }

.eas-uc__body { padding: 22px 24px 24px; }
.eas-uc__eyebrow { font-family: 'Jost', sans-serif; font-size: 13px; letter-spacing: 0.16em; text-transform: uppercase; color: #924F08; margin: 0 0 8px; }
.eas-uc__title { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 28px; line-height: 1.15; color: #1C1A14; margin: 0 0 8px; }
.eas-uc__route { font-family: 'Jost', sans-serif; font-size: 15px; line-height: 1.5; color: rgba(28,26,20,0.62); margin: 0 0 18px; }
.eas-uc__date { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 26px; line-height: 1.1; color: #1C1A14; margin: 10px 0 0; }
.eas-uc__more { font-family: 'Jost', sans-serif; font-size: 14px; color: rgba(28,26,20,0.55); margin: 2px 0 16px; }
.eas-uc__date + .eas-uc__facts { margin-top: 16px; }
.eas-uc__more + .eas-uc__facts { margin-top: 0; }

.eas-uc__facts { display: flex; flex-wrap: wrap; gap: 14px 30px; border-top: 1px solid rgba(28,26,20,0.12); padding-top: 14px; }
.eas-uc__lbl { font-family: 'Jost', sans-serif; font-size: 13px; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(28,26,20,0.5); }
.eas-uc__val { font-family: 'Cormorant Garamond', serif; font-weight: 400; font-size: 26px; line-height: 1.1; color: #1C1A14; margin-top: 2px; }

.eas-uc__link { display: inline-block; margin-top: 18px; font-family: 'Jost', sans-serif; font-size: 13px; letter-spacing: 0.14em; text-transform: uppercase; font-weight: 500; color: #1C1A14; border-bottom: 1px solid #1C1A14; padding-bottom: 2px; transition: color 0.2s ease, border-color 0.2s ease; }
.eas-uc:hover .eas-uc__link, .eas-uc:focus-visible .eas-uc__link { color: #924F08; border-color: #924F08; }

@media (max-width: 1100px) { .eas-uc-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 700px) {
  .eas-uc-grid { grid-template-columns: 1fr; gap: 20px; }
  .eas-uc__img { height: 220px; }
  .eas-uc__title { font-size: 26px; }
}

/* Homepage featured departure card (HTML built in src/lib/homeAvailabilityRender.ts): its layout is unchanged; the seat
   badge takes the same colours as the departure card's chip. */
.eas-departure-card .eas-offer-card__badge--open { background: rgba(15,110,86,0.9); color: #FFFFFF; }
.eas-departure-card .eas-offer-card__badge--limited { background: #B8780A; color: #1C1A14; }
.eas-departure-card .eas-offer-card__badge--sold, .eas-departure-card .eas-offer-card__badge--closed { background: rgba(153,60,29,0.92); color: #FFFFFF; }

/* A word value such as "Price on request" stays on one line in the homepage card's narrow From cell. */
.eas-departure-card .eas-offer-card__meta-v--text { white-space: nowrap; font-size: 17px; }
