/* ============================================================
   Rihla Discovery — Pack/Tour card (rd-pack-card-v2)
   Shared by: home static packs widget, Tour list blocks,
   related tours, tour search grids.
   ============================================================ */

:root {
    --rd-navy: #1A2B4E;
    --rd-blue: #1255CC;
    --rd-blue-light: #5191fa;
    --rd-gold: #D4A843;
    --rd-gold-light: #F5D87A;
    --rd-border: #E1E6EE;
    --rd-muted: #6B7280;
    --rd-text: #374151;
    --rd-radius-md: 14px;
    --rd-radius-sm: 8px;
    --rd-shadow-sm: 0 1px 4px rgba(26,43,78,.06);
    --rd-shadow-lg: 0 8px 40px rgba(26,43,78,.14);
    --rd-font-display: 'Playfair Display', serif;
    --rd-font-body: 'Inter', sans-serif;
}

.rd-pack-card-v2 {
    display: flex;
    flex-direction: column;
    text-decoration: none !important;
    color: inherit !important;
    background: white;
    border: 1.5px solid var(--rd-border);
    border-radius: var(--rd-radius-md, 14px);
    overflow: hidden;
    transition: all 0.22s cubic-bezier(.4,0,.2,1);
    height: 100%;
    box-shadow: var(--rd-shadow-sm, 0 1px 4px rgba(26,43,78,.06));
}
.rd-pack-card-v2:hover {
    transform: translateY(-5px);
    box-shadow: var(--rd-shadow-lg, 0 8px 40px rgba(26,43,78,.14));
    border-color: var(--rd-blue-light, #5191fa);
}
.rd-pack-card-v2__image {
    position: relative;
    width: 100%;
    height: 220px;
    overflow: hidden;
}
.rd-pack-card-v2__image img {
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform 0.5s cubic-bezier(.4,0,.2,1);
}
.rd-pack-card-v2:hover .rd-pack-card-v2__image img {
    transform: scale(1.06);
}
.rd-pack-card-v2__cat {
    position: absolute;
    top: 14px; left: 14px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    padding: 5px 12px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: var(--rd-blue);
    color: white;
}
.rd-cat--maroc      { background: #FF6F00; color: white; }
.rd-cat--asie       { background: var(--rd-blue); color: white; }
.rd-cat--croisiere  { background: #0277BD; color: white; }
.rd-cat--europe     { background: #5E35B1; color: white; }
.rd-cat--orient     { background: #00695C; color: white; }
.rd-cat--promo      { background: #C2185B; color: white; }

.rd-pack-card-v2__price {
    position: absolute;
    bottom: 14px; right: 14px;
    background: rgba(26,43,78,0.85);
    backdrop-filter: blur(6px);
    border: 1px solid rgba(212,168,67,0.5);
    color: white;
    padding: 8px 14px;
    border-radius: var(--rd-radius-sm, 8px);
    text-align: right;
    line-height: 1.25;
}
.rd-pack-card-v2__price small {
    display: block;
    font-size: 10px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: var(--rd-gold-light, #F5D87A);
    font-weight: 500;
}
.rd-pack-card-v2__price strong {
    font-size: 16px;
    font-weight: 700;
}
.rd-pack-card-v2__price .rd-price-old {
    font-size: 12px;
    font-weight: 400;
    text-decoration: line-through;
    color: rgba(255,255,255,.6);
    margin-right: 6px;
}
.rd-pack-card-v2__body {
    padding: 22px 22px 20px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.rd-pack-card-v2__location {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    font-weight: 600;
    color: var(--rd-gold, #D4A843);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 8px;
}
.rd-pack-card-v2__title {
    font-size: 19px;
    font-weight: 700;
    color: var(--rd-navy);
    margin: 0 0 14px;
    line-height: 1.3;
}
.rd-pack-card-v2__desc {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 14px;
    color: var(--rd-muted);
    line-height: 1.5;
    margin-bottom: 12px;
}
.rd-pack-card-v2__meta {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    padding-top: 14px;
    border-top: 1px solid var(--rd-border);
    margin-top: auto;
}
.rd-pack-card-v2__meta-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12px;
    color: var(--rd-muted);
    font-weight: 500;
}
.rd-pack-card-v2__meta-item i { color: var(--rd-blue); font-size: 14px; }
.rd-pack-card-v2__cta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 16px;
    font-size: 13px;
    font-weight: 700;
    color: var(--rd-blue);
    transition: gap 0.2s;
}
.rd-pack-card-v2:hover .rd-pack-card-v2__cta { gap: 10px; }

/* Featured wide variant */
.rd-pack-col--wide .rd-pack-card-v2 { flex-direction: row; }
.rd-pack-col--wide .rd-pack-card-v2__image { width: 52%; height: auto; flex-shrink: 0; }
.rd-pack-col--wide .rd-pack-card-v2__body { padding: 32px 28px; }
.rd-pack-col--wide .rd-pack-card-v2__title { font-size: 22px; }
.rd-pack-col--wide .rd-pack-card-v2__desc { display: block; }

/* Cards inside swiper slides need full height */
.swiper-slide .rd-pack-card-v2 { height: 100%; }
