/* 1. Importación de la fuente desde Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;700;800&display=swap');

/* 2. Aplicación global a todo el sitio */
body, h1, h2, h3, h4, h5, h6, p, a, li, span, div {
    font-family: 'Inter', sans-serif !important;
}

.material-icons {
    font-family: 'Material Icons' !important;
}

/* ==========================================================================
   1. ESTILOS BASE Y TIPOGRAFÍA
========================================================================== */
body {
    background-color: #fff;
}

h1 {
    display: block !important;
    width: 100% !important;
    font-size: clamp(1.5rem, 5vw + 2rem, 4.5rem);
    font-weight: 700 !important;
    line-height: 1 !important;
    word-wrap: normal !important;
}

h2 { 
    font-size: clamp(1.8rem, 6vw + 1rem, 2.5rem); 
    line-height: 1.1;
    margin-top: 120px;
}

h3 { 
    color: #1C1D1F; 
    font-size: clamp(1.4rem, 4vw + 1rem, 1.75rem); 
    line-height: 1.2;
}

p { 
    font-size: 17px; 
    color: #1C1D1F; 
}


/* -------------------------------------------------------
   HERO 
--------------------------------------------------------*/
.row:has(> .dynamicform > .gradient-sunset) {
    border-bottom: 30px solid;
    border-image-source: linear-gradient(90deg, #fef25c 5%, #f5c762 15%, #eeae78 25%, #e37bae 40%, #fb8579 65%, #5cd5ff 85%);
    border-image-slice: 1;

}
/* -------------------------------------------------------
   SAVE THE DATE
--------------------------------------------------------*/

.save-date div > div > div > div,
.logos {
    display: flex;
    justify-content: center; 
    align-items: center;
    gap: 10px;              
    flex-wrap: wrap;  
    margin: 48px auto 0 auto;
}

/* Estilo para cada bloque de fecha (los párrafos <p>) */
.save-date p {
    background-color: #333;  
    color: white;
    border-radius: 24px;    
    display: flex;
    flex-direction: column;  
    justify-content: center;
    align-items: center;
    margin: 0 !important;  
    line-height: 0.8;
    min-width: 125px;
    padding: 26px 36px;
}

/* Estilo para el día (MIÉ, JUE, VIE) */
.save-date p::first-line {
    font-size: 46px;
    font-weight: bold;
    line-height: 1;
}

/* Estilo para el número (11, 12, 13) */
.save-date p {
    font-size: 26px;
    font-weight: 800;
}

.dynamicform:has(> .contact-form) {
    display: flex;
    justify-content: center;
    gap: 10px;
    background-color: #EEEEEE;
    border-radius: 32px;
    padding: 62px;
    margin: 120px auto;
}



/* -------------------------------------
----------- VISTA MOVIL---------------
---------------------------------------*/
/* Ajuste específico para móvil */
@media (max-width: 600px) {
    .save-date p {
        font-size: 28px;
    }

    .dynamicform:has(> .contact-form){
        padding: 43px 32px 0 32px;
        flex-wrap: wrap;
     }



}