
/* ── Section wrapper ─────────────────────────────────────────────────── */
.fare-section {
    padding: 2rem 0 2.5rem;
    border-bottom: 1px solid #e8edf3;
}
.fare-section-title {
    font-size: 1.3rem;
    font-weight: 700;
    color: #0f1f35;
    margin-bottom: 1.5rem;
}

/* ── Promo banners (replaces your MYArrAd inline style) ─────────────── */
.fare-promo-banner {
    grid-column: 1 / -1;   /* ← spans all grid columns */
    display: block;
    width: 100%;
    text-align: center;
    padding: 12px 16px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 12px;
    margin-bottom: 4px;
    text-decoration: none;
    transition: opacity 0.15s;
}
.fare-promo-banner:hover { opacity: 0.88; text-decoration: none; }
.fare-promo-pink  { background: #ffa8cd; color: #4a0020; }
.fare-promo-dark  { background: #1e0032; color: #ffffff; }
.fare-promo-pink strong,
.fare-promo-dark strong { font-size: 1.1em; }

/* ── Grid ────────────────────────────────────────────────────────────── */
.fare-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
    gap: 16px;
    align-items: start;
}

/* ── Card shell ──────────────────────────────────────────────────────── */
.fare-card {
    background: #ffffff;
    border: 1px solid rgba(41, 124, 187, 0.13);
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
    position: relative;
    display: flex;
    flex-direction: column;
}
.fare-card:hover {
    transform: translateY(-4px);
    border-color: rgba(41, 124, 187, 0.38);
    box-shadow: 0 12px 32px rgba(41, 124, 187, 0.13);
}

/* ── Card header (route zone) ────────────────────────────────────────── */
.fare-card__header {
    padding: 14px 16px 12px;
    background: #f0f5fb;
    border-bottom: 1px solid rgba(41, 124, 187, 0.1);
}

/* ── Trip type badge ─────────────────────────────────────────────────── */
.fare-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-family: 'Space Grotesk', 'Rubik', sans-serif;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    padding: 3px 9px;
    border-radius: 20px;
    margin-bottom: 10px;
}
.fare-badge--oneway  { background: rgba(41,124,187,0.1);  color: #297cbb; }
.fare-badge--return  { background: rgba(222,68,55,0.1);   color: #de4437; }

/* ── Route row ───────────────────────────────────────────────────────── */
.fare-route {
    display: flex;
    align-items: center;
    gap: 8px;
}
.fare-airport { flex: 1; min-width: 0; }
.fare-airport--right { text-align: right; }
.fare-iata {
    font-family: 'Space Grotesk', 'Rubik', sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #0f1f35;
    line-height: 1;
}
.fare-city {
    font-size: 11px;
    color: #6b7a90;
    margin-top: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.fare-plane {
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    color: #297cbb;
}
.fare-plane__line {
    width: 34px;
    height: 1px;
    background: linear-gradient(to right, rgba(41,124,187,0.15), #297cbb, rgba(41,124,187,0.15));
}
.fare-plane svg { display: block; }

/* ── Card body (dates) ───────────────────────────────────────────────── */
.fare-card__body {
    padding: 12px 16px;
    flex: 1;
}
.fare-dates {
    display: flex;
    gap: 8px;
}
.fare-date-pill {
    flex: 1;
    background: #f0f5fb;
    border-radius: 10px;
    padding: 7px 10px;
}
.fare-date-pill--hidden { opacity: 0; pointer-events: none; }
.fare-date-pill__label {
    font-size: 10px;
    color: #6b7a90;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 500;
    margin-bottom: 2px;
}
.fare-date-pill__val {
    font-size: 13px;
    font-weight: 600;
    color: #0f1f35;
}

/* ── Card footer (price + CTA) ───────────────────────────────────────── */
.fare-card__footer {
    padding: 0 16px 14px;
}
.fare-book-btn {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: transparent;
    border: 1.5px solid #297cbb;
    border-radius: 10px;
    padding: 9px 14px;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.18s ease, border-color 0.18s ease;
}
.fare-card:hover .fare-book-btn {
    background: #297cbb;
}
.fare-book-btn__price {

    font-size: 16px;
    font-weight: 700;
    color: #297cbb;
    transition: color 0.18s ease;
	width:100%;
	text-align:center;
}
.fare-card:hover .fare-book-btn__price { color: #ffffff; }
.fare-book-btn__label {
    font-size: 11px;
    font-weight: 600;
    color: #297cbb;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    transition: color 0.18s ease;
}
.fare-card:hover .fare-book-btn__label { color: #ffffff; }

/* ── Responsive tweaks ───────────────────────────────────────────────── */
@media (max-width: 576px) {
    .fare-grid { grid-template-columns: 1fr 1fr; gap: 12px; }
    .fare-iata { font-size: 18px; }
}
@media (max-width: 380px) {
    .fare-grid { grid-template-columns: 1fr; }
}

.fp-cta{background:linear-gradient(135deg,#f7931e 0%,#f7931e 100%);border-radius:var(--fp-radius);padding:34px 30px;margin-bottom:48px;position:relative;overflow:hidden;}
.fp-cta-title{font-size:24px;color:#fff;margin-bottom:6px;}
.fp-cta-sub{font-size:14px;color:rgba(255,255,255,.72);margin-bottom:0;}
.btn-fp-cta{background:#fff;color:#000;border-radius:7px;padding:11px 22px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:background .18s;white-space:nowrap;}
.btn-fp-cta:hover{background:#f5ede0;color:#;text-decoration:none;}
.btn-fp-call{background:#000;color:#fff;border:2px solid rgba(255,255,255,.35);border-radius:7px;padding:11px 18px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:border-color .18s;}
.btn-fp-call:hover{border-color:#fff;color:#fff;text-decoration:none;}