/* =========================================
   FILOSOFÍA
========================================= */

.filosofia{

    padding:120px 40px;

    background:#f8fafc;

    display:flex;

    flex-direction:column;

    gap:35px;
}

/* =========================================
   HEADER
========================================= */

.filosofia__header{

    text-align:center;

    max-width:850px;

    margin:0 auto;
}

.filosofia__header .subtitulo{

    display:inline-block;

    color:var(--primary);

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:2px;

    margin-bottom:16px;
}

.filosofia__header h2{

    color:var(--secondary);

    font-size:clamp(2.8rem,5vw,4.5rem);

    line-height:1.05;

    margin-bottom:10px;
}

.filosofia__header p{

    color:#64748b;

    font-size:1.1rem;

    line-height:1.8;

    max-width:700px;

    margin:0 auto;
}

/* =========================================
   GRID
========================================= */

.filosofia__grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

    max-width:1300px;

    width:100%;

    margin:0 auto;
    
    align-items:flex-start;
}

/* =========================================
   CARD
========================================= */

.filosofia-card{

    background:#fff;

    border-radius:24px;

    padding:40px;

    position:relative;

    overflow:hidden;

    box-shadow:
        0 15px 40px rgba(0,0,0,.08);

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;

    border:2px solid transparent;

    display:flex;

    flex-direction:column;

    gap:24px;
}

/* Línea superior decorativa */

.filosofia-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:5px;

    background:linear-gradient(
        90deg,
        var(--primary),
        #ffd04d
    );

    transform:scaleX(0);

    transform-origin:left;

    transition:.35s ease;
}

/* Hover */

.filosofia-card:hover{

    transform:translateY(-12px);

    border-color:rgba(245,184,0,.25);

    box-shadow:
        0 25px 50px rgba(0,0,0,.12),
        0 0 25px rgba(245,184,0,.18);
}

.filosofia-card:hover::before{

    transform:scaleX(1);
}

/* =========================================
   ICONO
========================================= */

.filosofia-card .elementor-icon{

    font-size:56px;

    color:var(--primary);

    transition:.35s ease;
}

.filosofia-card:hover .elementor-icon{

    transform:
        scale(1.12)
        rotate(5deg);
}

/* =========================================
   TITULO CARD
========================================= */

.filosofia-card h3{

    color:var(--secondary);

    font-size:1.8rem;

    font-weight:800;

    text-transform:uppercase;

    margin:0;
}

/* =========================================
   TEXTO
========================================= */

.filosofia-card p{

    color:#475569;

    line-height:1.9;

    margin:0;
}

/* =========================================
   LISTA DE VALORES
========================================= */

.filosofia-card ul{

    list-style:none;

    padding:0;

    margin:0;

    display:flex;

    flex-direction:column;

    gap:14px;
}

.filosofia-card li{

    position:relative;

    padding-left:28px;

    color:#475569;

    line-height:1.6;
}

.filosofia-card li::before{

    /*content:"✓";*/

    position:absolute;

    left:0;

    top:0;

    color:var(--primary);

    font-weight:700;
}

/* =========================================
   EFECTO FONDO
========================================= */

.filosofia-card::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    border-radius:50%;

    background:rgba(245,184,0,.05);

    top:-80px;

    right:-80px;

    transition:.35s ease;
}

.filosofia-card:hover::after{

    transform:scale(1.2);
}

/* =========================================
   RESPONSIVE
========================================= */

@media(max-width:1024px){

    .filosofia{

        padding:100px 30px;
    }

    .filosofia__grid{

        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:768px){

    .filosofia{

        padding:80px 20px;

        gap:40px;
    }

    .filosofia__grid{

        grid-template-columns:1fr;
    }

    .filosofia-card{

        padding:32px 24px;
    }

    .filosofia-card h3{

        font-size:1.5rem;
    }

    .filosofia-card .elementor-icon{

        font-size:48px;
    }
}