/* ==========================================================================
   ESTILOS ADMISIÓN - NUEVO SISTEMA DE REDISEÑO
   ========================================================================== */

:root {
    --navy-blue-main: #0B0A43;   /* Tu azul corporativo oscuro de los fondos */
    --orange-accent: #FF6B00;    /* El color de los subtítulos y detalles */
    --card-radius-redesign: 24px;/* Bordes amplios y modernos de las capturas */
    --transition-custom: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Auxiliares de Fuentes */
.font-weight-black { font-weight: 900; }
.text-light-muted { color: rgba(255, 255, 255, 0.7); }
.text-orange-accent { color: var(--orange-accent); }
.z-index-1 { z-index: 1; }

/* 1. Hero Box Flotante */
.admission-hero-box {
    min-height: 320px;
    background-color: #A3A3A3; /* Base gris de la captura */
    background: linear-gradient(rgba(18, 15, 45, 0.8), rgba(18, 15, 45, 0.8)), 
                url('../img/headers/admission.jpg') center/cover no-repeat;
    box-shadow: 0 20px 40px rgba(0,0,0,0.2);
    border-radius: var(--card-radius-redesign);
}

.hero-bg-overlay {
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    background-color: rgba(11, 10, 67, 0.45); /* Capa azul marino translúcida */
    z-index: 0;
}

.status-pill {
    padding: 10px 28px;
    border-radius: 50px;
    font-weight: 900;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
}

.status-pill-closed {
    background: linear-gradient(135deg, #E63946, #C1121F); /* Degradado sutil */
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
    cursor: not-allowed; /* Muestra visualmente que no se puede hacer clic */
    transition: all 0.3s ease-in-out; /* Transición suave para el hover */
}

/* Efecto Hover Premium */
.status-pill-closed:hover {
    background: linear-gradient(135deg, #FF4D5A, #D91E2A); /* Color ligeramente más vivo al pasar el cursor */
    transform: translateY(-2px); /* Pequeña elevación muy sutil */
    box-shadow: 0 10px 25px rgba(230, 57, 70, 0.6);
}

/* Animación interactiva en el ícono del candado al hacer hover */
.status-pill-closed:hover i {
    display: inline-block;
    animation: lockWobble 0.4s ease-in-out;
}

/* Animación de Pulso Activa (Glow) */
.pulse-glow {
    animation: premiumPulse 2s infinite alternate ease-in-out;
}

/* Keyframes para el vaivén del candado */
@keyframes lockWobble {
    0% { transform: rotate(0deg); }
    25% { transform: rotate(-10deg); }
    75% { transform: rotate(10deg); }
    100% { transform: rotate(0deg); }
}

/* Keyframes para el pulso global */
@keyframes premiumPulse {
    0% {
        box-shadow: 0 4px 15px rgba(230, 57, 70, 0.4), 0 0 0 0 rgba(230, 57, 70, 0.4);
    }
    100% {
        box-shadow: 0 8px 25px rgba(230, 57, 70, 0.7), 0 0 0 8px rgba(230, 57, 70, 0);
    }
}

/* 2. Modalidades de Ingreso (Títulos y Tarjetas) */
.sub-title-accent {
    color: var(--orange-accent);
    letter-spacing: 0.1em;
    font-size: 0.85rem;
}

.main-title-redesign {
    color: var(--navy-blue-main);
    font-size: 2.2rem;
    letter-spacing: -0.02em;
}

.card-redesign {
    background: #FFFFFF;
    border: 1px solid #EAEAEA;
    border-radius: var(--card-radius-redesign);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.02);
    transition: var(--transition-custom);
}

.card-redesign:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(11, 10, 67, 0.08);
}

/* Ajuste de imágenes para evitar compresión */
.card-img-wrapper {
    width: 100%;
    aspect-ratio: 16 / 9; /* Esto le da la altura perfecta y profesional */
    border-radius: 12px;
}

.card-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: var(--transition-custom);
}

.card-redesign:hover .transition-zoom {
    transform: scale(1.05);
}

.card-title-redesign {
    color: var(--navy-blue-main);
    font-size: 1.35rem;
}

.card-text-redesign {
    color: #555555;
    line-height: 1.6;
}

.btn-redesign-action {
    background: var(--navy-blue-main);
    color: #FFFFFF !important;
    padding: 10px 30px; /* Padding horizontal ajustado */
    border-radius: 8px; /* Un poco más suave */
    font-weight: 700;
    font-size: 0.9rem;
    text-decoration: none;
    transition: var(--transition-custom);
    border: 2px solid var(--navy-blue-main);
}

.btn-redesign-action:hover {
    background: transparent;
    color: var(--navy-blue-main) !important;
    transform: translateY(-2px);
}

/* Ajuste para que los botones de las tarjetas no se estiren al 100% */
.card-redesign .btn-redesign-action {
    align-self: center; /* Centra el botón y hace que respe te su propio padding */
    display: inline-block !important;
    width: auto;
}

/* 3. Requisitos (Diseño inclinado asimétrico) */
.section-requirements-slant {
    padding: 90px 0;
}

.section-requirements-slant::before {
    content: '';
    position: absolute;
    top: 0; left: -5%; width: 110%; height: 100%;
    background-color: #F9FAFB;
    transform: skewY(-2.5deg);
    z-index: 0;
}

.requirement-box-redesign {
    background: #FFFFFF;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
    transition: var(--transition-custom);
}

.requirement-box-redesign:hover {
    transform: translateX(5px);
    box-shadow: 0 6px 20px rgba(11, 10, 67, 0.05);
}

.requirement-icon-mask {
    background-color: #EE5B5B; /* El rojo plano de tu captura de requisitos */
    width: 48px;
    height: 48px;
    border-radius: 8px;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.requirement-label {
    color: var(--navy-blue-main);
    letter-spacing: -0.01em;
    line-height: 1.3;
}

/* 4. Estilos de Soporte: Cronograma y Faqs Dinámicos */
/* Corrección de Auditoría: Se añade especificidad contextual para no romper los bordes globales de Bootstrap */
.position-relative .border-primary {
    border-color: #0B0A43 !important; /* Tu --navy-blue-main */
}

/* Separación premium para las preguntas frecuentes */
.custom-admission-faq .accordion-button {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
    font-size: 0.9rem !important; /* Un toque más sutil */
    letter-spacing: 0.02em;
}

.custom-admission-faq .accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230B0A43'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}

/* Agranda sutilmente la flecha del acordeón */
.custom-admission-faq .accordion-button::after {
    transform: scale(1.2);
    transition: transform 0.2s ease;
}

.custom-admission-faq .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23FF6B00'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}

.custom-admission-faq .accordion-button:not(.collapsed) {
    color: var(--orange-accent) !important;
}

/* 5. Franja de Acción Inclinada Premium (Unificada) */
.cta-slant-box {
    background: var(--navy-blue-main);
    padding: 100px 0;
    clip-path: polygon(0 15%, 100% 0, 100% 100%, 0 100%);
    position: relative;
    margin-bottom: 0px; /* Corrección de Auditoría: Se eliminó el margen negativo para proteger la visualización del Footer */
}

.cta-slant-box h2 {
    letter-spacing: 0.02em;
    font-weight: 700 !important;
}

/* Botón Principal (Llamar) */
.btn-cta-white {
    background: #FFFFFF;
    color: var(--orange-accent) !important;
    padding: 16px 35px;
    border-radius: 8px;
    font-weight: 800;
    font-size: 0.95rem;
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.btn-cta-white:hover {
    transform: translateY(-3px);
    box-shadow: 0 15px 30px rgba(0,0,0,0.3);
    background: #f8f8f8;
}

/* Botón Outline (Chat) */
.btn-cta-outline {
    border: 2px solid rgba(255, 255, 255, 0.3);
    color: white !important;
    padding: 16px 35px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 700;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
}

.btn-cta-outline:hover {
    background: rgba(255, 255, 255, 0.15);
    border-color: white;
    transform: translateY(-3px);
}

/* Ajuste Responsivo */
@media (max-width: 768px) {
    .cta-slant-box {
        clip-path: polygon(0 5%, 100% 0, 100% 100%, 0 100%);
        padding: 60px 0;
    }
}