.elementor-3 .elementor-element.elementor-element-92fecb5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:2%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-3 .elementor-element.elementor-element-42f4d76{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}/* Start custom CSS for html, class: .elementor-element-30c59a3 */@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&family=Playfair+Display:ital,wght@0,400;0,700&display=swap');

/* ==========================================
   ESTILOS DE LA PÁGINA LEGAL (TARJETAS)
   ========================================== */

.legal-hub-section {
    padding: 80px 20px;
    background-color: #fafafa;
    color: #333;
    /* Todo el texto general usará Montserrat */
    font-family: 'Montserrat', sans-serif;
}

.legal-hub-container {
    max-width: 1000px;
    margin: 0 auto;
}

/* Cabecera */
.legal-header {
    text-align: center;
    margin-bottom: 60px;
}

.legal-main-title {
    font-size: 2.5rem;
    color: #111;
    margin-bottom: 10px;
    /* Título principal elegante con Playfair Display */
    font-family: 'Playfair Display', serif; 
}

.legal-date {
    font-size: 0.9rem;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
    font-weight: 600; /* Montserrat en seminegrita */
}

.legal-intro {
    font-size: 1.1rem;
    max-width: 600px;
    margin: 0 auto;
    color: #555;
    line-height: 1.6;
}

/* Títulos de Sección (Aviso Legal, Privacidad, Cookies) */
.section-title {
    font-size: 2rem;
    color: #111;
    margin: 50px 0 25px 0;
    padding-bottom: 10px;
    border-bottom: 2px solid #eaeaea;
    /* Subtítulos también en Playfair Display */
    font-family: 'Playfair Display', serif;
}

/* Grid de Tarjetas */
.legal-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
}

/* Diseño de la Tarjeta */
.legal-card {
    background: #ffffff;
    border: 1px solid #eeeeee;
    border-radius: 0px; /* Bordes rectos, estilo minimalista */
    padding: 30px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.03);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    position: relative;
    overflow: hidden;
}

.legal-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

/* Icono/Número de la tarjeta */
.card-icon {
    position: absolute;
    top: -15px;
    right: -10px;
    font-size: 6rem;
    font-weight: 900;
    color: rgba(214, 62, 62, 0.05);
    line-height: 1;
    z-index: 0;
    font-family: 'Montserrat', sans-serif;
}

.legal-card h3 {
    font-size: 1.2rem;
    color: #d63e3e;
    margin-top: 0;
    margin-bottom: 15px;
    position: relative;
    z-index: 1;
    font-weight: 700; /* Montserrat Bold para los titulillos */
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.legal-card p {
    font-size: 0.95rem;
    line-height: 1.6;
    color: #666;
    margin: 0;
    position: relative;
    z-index: 1;
    font-weight: 400;
}

/* Listas dentro de las tarjetas */
.legal-list {
    margin: 15px 0 0 0;
    padding-left: 20px;
    position: relative;
    z-index: 1;
}

.legal-list li {
    font-size: 0.95rem;
    color: #666;
    margin-bottom: 8px;
    line-height: 1.5;
}

.legal-list li strong {
    color: #333;
    font-weight: 600;
}

/* Adaptación móvil */
@media (max-width: 768px) {
    .legal-main-title { font-size: 2rem; }
    .legal-hub-section { padding: 50px 15px; }
    .legal-card { padding: 25px; }
}/* End custom CSS */