/* ============================================
   FISIO Clinic - Estilos Personalizados
   ============================================ */

/* Importar fuente de Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@100..900&display=swap');

/* Las variables CSS están centralizadas en config.css */

html {
    overflow-x: hidden;
    scroll-behavior: smooth;
}

body {
    font-family: 'Inter', sans-serif;
    overflow-x: hidden;
    max-width: 100vw;
}

/* ============================================
   COMPONENTES REUTILIZABLES
   ============================================ */

/* Estilo para iconos placeholder */
.icon-box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 9999px;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

/* ============================================
   ANIMACIONES
   ============================================ */

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fadeInUp {
    animation: fadeInUp 1s ease-out;
}

/* ============================================
   SECCIÓN HERO - EFECTOS ESPECIALES
   ============================================ */

#hero {
    position: relative;
}

#hero .bg-cover {
    background-size: cover;
    background-position: center;
}

/* ============================================
   EFECTOS HOVER MEJORADOS
   ============================================ */

.hover-lift {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

/* ============================================
   MODAL - ESTILOS MEJORADOS
   ============================================ */

#confirmation-modal {
    transition: opacity 0.3s ease;
}

#confirmation-modal.hidden {
    display: none !important;
}

#confirmation-modal.flex {
    display: flex !important;
}

/* ============================================
   RESPONSIVE - AJUSTES ADICIONALES
   ============================================ */

/* Prevenir scroll horizontal en móviles */
* {
    max-width: 100%;
}

img, video, iframe {
    max-width: 100%;
    height: auto;
}

/* Contenedores principales */
section, main, div {
    box-sizing: border-box;
}

/* Mejorar legibilidad en móviles */
@media (max-width: 640px) {
    .icon-box {
        width: 2.5rem;
        height: 2.5rem;
        font-size: 1.25rem;
    }
    
    /* Botón WhatsApp flotante más pequeño y mejor posicionado en móviles */
    [data-whatsapp-link].fixed {
        bottom: 1rem !important;
        right: 1rem !important;
        width: 3.5rem !important;
        height: 3.5rem !important;
        z-index: 9999 !important;
    }
    
    [data-whatsapp-link].fixed i {
        font-size: 1.75rem !important;
    }
    
    /* Ajustar padding de secciones en móviles */
    .max-w-7xl {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}

/* ============================================
   ACCESIBILIDAD Y FOCUS STATES
   ============================================ */

a:focus,
button:focus,
input:focus,
textarea:focus {
    outline: 2px solid var(--primary-teal);
    outline-offset: 2px;
}

html {
    overflow-x: hidden;
    scroll-behavior: smooth;
}

/* ============================================
   UTILIDADES PERSONALIZADAS
   ============================================ */

.border-accent {
    border-color: var(--primary-teal);
}

.bg-gradient-primary {
    background: linear-gradient(135deg, var(--primary-teal) 0%, #4a2563 100%);
}

.bg-gradient-accent {
    background: linear-gradient(135deg, var(--primary-teal) 0%, #4a2563 100%);
}

/* Sombras personalizadas */
.shadow-custom {
    box-shadow: 0 4px 6px -1px rgba(106, 58, 136, 0.1), 0 2px 4px -1px rgba(106, 58, 136, 0.06);
}


/* ============================================
   FOOTER - OVERRIDES
   ============================================ */
footer a, footer button {
    -webkit-tap-highlight-color: transparent !important;
}

/* Estilo de enfoque accesible para footer */
footer a:focus, footer button:focus {
    outline: 2px solid var(--primary-teal) !important;
    outline-offset: 2px !important;
    border-radius: 4px;
}
