@media (max-width: 991.98px) {
    .hero-5 .hero-image {
        display: grid;
        place-items: center;
        margin-top: 12px;
    }

    .hero-5 .hero-image>img {
        display: block;
        margin: 0 auto;
        max-width: min(420px, 90%);
        height: auto;
    }
}

.assign-title {
    font-size: clamp(28px, 3.2vw, 42px);
    font-weight: 800;
    margin-bottom: 22px;
}

.assign-card {
    height: 100%;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 18px;
    padding: 22px 18px;
    text-align: center;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .06);
    transition: transform .2s ease, box-shadow .2s ease;
}

.assign-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .08);
}

.assign-card h5 {
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .4px;
    line-height: 1.2;
    margin-bottom: 12px;
}

.assign-card p {
    color: #5a5a5a;
    font-size: 15px;
    margin-bottom: 16px;
}

.assign-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 700;
    color: #e62e5c;
    border: 1px dashed #ffd0db;
    background: #fff5f7;
    padding: 8px 14px;
    border-radius: 999px;
}

.assign-link i {
    font-size: 18px;
}

/* -------- Banda de estadísticas -------- */
.stats-band {
    padding-top: 32px;
    padding-bottom: 48px;
}

.stats-wrap {
    background: #C6AC2D;
    border-radius: 28px;
    padding: 28px 26px;
    box-shadow: 0 20px 40px rgba(0, 0, 0, .08);
}

.stat-item {
    height: 100%;
    background: rgba(255, 255, 255, .06);
    border-radius: 22px;
    padding: 22px 16px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.stat-icon img {
    width: 56px;
    height: 56px;
    object-fit: contain;
    margin-bottom: 12px;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, .15));
}

.stat-content h3 {
    color: #1F1E5A;
    font-weight: 800;
    font-size: clamp(28px, 3vw, 40px);
    margin: 0 0 6px;
}

.stat-content p {
    color: #1F1E5A;
    margin: 0;
    line-height: 1.35;
    font-weight: 600;
}

/* Responsive tweaks */
@media (max-width: 575.98px) {
    .assign-card {
        text-align: left;
    }

    .stat-item {
        padding: 18px 14px;
    }
}

/* Franja oscura con CTA + descripción */
.cta-info-wrap {
    background: #0f0f36;
    /* azul bien oscuro */
    border-radius: 28px;
    padding: 34px 28px;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .12);
}

.cta-info-item h3 {
    color: #fff;
    font-weight: 800;
    margin: 14px 0 8px;
}

.cta-info-item .cta-desc {
    color: #e6e6f5;
    margin: 0 auto 16px;
    max-width: 90%;
}

.cta-icon {
    width: 72px;
    height: 72px;
    object-fit: contain;
    border: 3px solid rgba(255, 255, 255, .85);
    border-radius: 12px;
    padding: 8px;
    background: rgba(255, 255, 255, .08);
    box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
}

.cta-btn {
    background: linear-gradient(90deg, #ff4d4d 0%, #ff7a59 100%);
    border-radius: 999px;
    padding: 12px 18px;
    font-weight: 700;
}

@media (max-width: 575.98px) {
    .cta-info-item .cta-desc {
        max-width: 100%;
    }
}

/* Colores de marca */
:root {
    --brand-navy: #1f1e5a;
    --brand-gold: #C6AC2D;
}

/* Contenedor azul */
.cta-info-wrap {
    background: var(--brand-navy);
}

/* Textos sobre fondo azul */
.cta-info-item h3 {
    color: #fff;
}

.cta-info-item .cta-desc {
    color: #f0f1ff;
}

/* Botón amarillo con el estilo de theme-btn */
.theme-btn.cta-btn {
    background: var(--brand-gold) !important;
    color: var(--brand-navy) !important;
    border: none !important;
    box-shadow: 0 8px 18px rgba(198, 172, 45, .35);
}

.theme-btn.cta-btn:hover {
    filter: brightness(0.95);
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(198, 172, 45, .45);
}

.theme-btn.cta-btn i {
    margin-right: 8px;
}

/* por si agregas ícono */

/* Hover: texto blanco en los botones amarillos */
.theme-btn.cta-btn:hover,
.theme-btn.cta-btn:focus {
    color: #fff !important;
}

/* Asegura que el icono también se vea blanco */
.theme-btn.cta-btn:hover i,
.theme-btn.cta-btn:focus i {
    color: #fff !important;
}

.hero-image>img {
    margin-left: -250px;
}

.contact-card {
    background: #fff;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .08);
}

@media (min-width:992px) {
    .contact-card .card-left {
        border-right: 1px solid #ececec;
    }
}

.contact-cards .underline {
    width: 120px;
    height: 3px;
    background: #1F1E5A;
}

.contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.contact-list li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: .6rem 0;
    font-size: 16px;
}

.contact-list i {
    width: 22px;
    text-align: center;
    color: #1F1E5A;
}


.address-block+.address-block {
    margin-top: 12px;
}

.address-title {
    font-weight: 800;
    margin-bottom: .35rem;
}

.address-divider {
    height: 1px;
    background: #eee;
    margin: 14px 0;
}


.schedule-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.schedule-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}

.schedule-item .label {
    font-weight: 700;
    color: #222;
    line-height: 1.25;
}

.schedule-item .label span {
    font-weight: 700;
    color: #555;
    font-size: .95rem;
}

.time-pill {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 16px;
    border-radius: 999px;
    font-weight: 700;
    color: #fff;
    background: linear-gradient(90deg, #ff4d4d 0%, #ff7a59 100%);
    box-shadow: 0 6px 14px rgba(255, 77, 77, .25);
}

.whatsapp_chat_support {
    z-index: 11 !important;
    right: 100px !important;
    position: fixed;
    bottom: 24px;
}



.list-item li {
    font-weight: normal !important;
}

#assignModal .modal-content {
    background: #000;
    border: 0;
    border-radius: 14px;
    overflow: hidden;
}

#assignModal .modal-header {
    border: 0;
    padding: 10px 12px;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 5;
}

#assignModal .btn-close {
    filter: invert(1);
    opacity: .9;
}

#assignModal .modal-body {
    padding: 0;
}

/* Swiper full-bleed inside modal */
.assign-swiper {
    width: 100%;
    height: 70vh;
    min-height: 360px;
}

.assign-swiper .swiper-slide {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000;
}

.assign-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Controls */
.assign-swiper .swiper-button-prev,
.assign-swiper .swiper-button-next {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .9);
    color: #111;
    box-shadow: 0 10px 24px rgba(0, 0, 0, .25);
}

.assign-swiper .swiper-button-prev:after,
.assign-swiper .swiper-button-next:after {
    font-size: 18px;
}

.assign-swiper .swiper-pagination-bullet {
    background: #fff;
    opacity: .6;
}

.assign-swiper .swiper-pagination-bullet-active {
    opacity: 1;
}

@media (max-width: 575.98px) {
    .assign-swiper {
        height: 65vh;
    }
}

.assign-card a.assign-link,
.assign-card a.assign-more {
    display: inline-block;
    margin-top: 10px;
    margin-right: 8px;
}