/* Latest Offers Section */
.latest-offers-section {
    padding: var(--space-70) var(--nav-pad-x);
    background-color: var(--color-bg-light);
}

.latest-offers-section .section-title {
    font-size: var(--fs-42);
    font-weight: var(--fw-bold);
    color: var(--color-text);
    margin-bottom: var(--space-40);
}

/* Card */
.offer-card {
    background-color: var(--color-white);
    border: var(--border-medium) solid var(--color-blue);
    border-radius: var(--radius-3xl);
    padding: var(--space-32) var(--space-24);
    text-align: center;
    position: relative;
    transition: transform var(--transition), box-shadow var(--transition);
    box-shadow: 0 4px 0 0 var(--color-blue), 4px 0 0 0 var(--color-blue);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Badges */
.offer-badge {
    position: absolute;
    top: var(--space-16);
    font-size: var(--fs-12);
    font-weight: var(--fw-semibold);
    padding: var(--space-4) var(--space-12);
    border-radius: var(--radius-pill);
    display: inline-block;
    line-height: 1.2;
}

.category-badge {
    right: var(--space-16);
    background-color: var(--color-navy);
    color: var(--color-white);
}

.type-badge {
    left: var(--space-16);
    background-color: var(--color-surface-tint);
    color: var(--color-blue);
}

/* Content */
.offer-title {
    font-size: var(--fs-20);
    font-weight: var(--fw-bold);
    color: var(--color-text);
    margin-top: var(--space-40); 
    margin-bottom: var(--space-12);
}

.offer-desc {
    font-size: var(--fs-14);
    color: var(--color-text-soft);
    line-height: var(--lh-base);
    margin-bottom: var(--space-20);
}

.offer-price {
    font-size: var(--fs-24);
    font-weight: var(--fw-bold);
    color: var(--color-blue);
    margin-bottom: var(--space-24);
}

/* Button */
.btn-offer-subscribe {
    display: block;
    width: 100%;
    padding: var(--space-12) 0;
    font-size: var(--fs-16);
    font-weight: var(--fw-semibold);
    color: var(--color-blue);
    background-color: transparent;
    border: 2px solid var(--color-blue);
    border-radius: var(--radius-pill);
    text-decoration: none;
    transition: all var(--transition);
}

.btn-offer-subscribe:hover {
    background-color: var(--color-blue);
    color: var(--color-white);
}

/* Carousel Indicators (Dots) */
.custom-indicators {
    position: static;
    margin-top: var(--space-40);
    margin-bottom: 0;
}

.custom-indicators [data-bs-target] {
    width: 12px;
    height: 12px;
    border-radius: var(--radius-round);
    background-color: var(--color-blue);
    border: none;
    opacity: 0.4;
    margin: 0 var(--space-6);
    transition: opacity var(--transition);
}

.custom-indicators .active {
    opacity: 1;
}

/* Tablet Grid Tweaks */
@media (min-width: 768px) and (max-width: 991px) {
    .offer-card {
        padding: var(--space-24) var(--space-16);
    }
    
    .offer-title {
        font-size: var(--fs-16);
        margin-top: var(--space-32);
    }
    
    .offer-desc {
        font-size: var(--fs-12);
    }
    
    .offer-price {
        font-size: var(--fs-20);
    }
    
    .btn-offer-subscribe {
        font-size: var(--fs-14);
        padding: var(--space-8) 0;
    }
}

