/* ========================================================
   SegmentaAds — Widget Filosofía
   CSS base (todos los valores reales se sobrescriben
   desde los controles de Elementor mediante inline style)
   ======================================================== */

.seg-filo-wrap {
    width: 100%;
    box-sizing: border-box;
}

.seg-filo-grid {
    display: flex;
    flex-direction: row;
    width: 100%;
    box-sizing: border-box;
}

.seg-filo-col {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
}

.seg-filo-col-left { flex: 1 1 50%; }
.seg-filo-col-right { flex: 1 1 50%; }

/* Eyebrow ("NUESTRA FILOSOFÍA") */
.seg-filo-eyebrow {
    margin: 0 0 24px 0;
    font-weight: bold;
    line-height: 1;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    text-align: left;
}

/* Título principal columna izquierda */
.seg-filo-title {
    display: block;
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.02em;
    text-align: left;
    margin: 0;
}
.seg-filo-title .seg-filo-highlight {
    font-weight: 800;
}

/* Subtítulo columna izquierda */
.seg-filo-subtitle {
    display: block;
    font-weight: 100;
    font-style: italic;
    line-height: 1.2;
    letter-spacing: -0.03em;
    text-align: left;
    margin-top: 16px;
}

/* Bloques de la columna derecha */
.seg-filo-block {
    box-sizing: border-box;
}
.seg-filo-block + .seg-filo-block {
    /* el separador se aplica desde los controles */
}

.seg-filo-block-line {
    display: block;
    font-weight: 800;
    line-height: 1.1;
    margin: 0;
}
.seg-filo-block-line .seg-filo-highlight-blue {
    font-weight: 800;
}
.seg-filo-block-line .seg-filo-highlight-cream {
    font-weight: 800;
}

.seg-filo-block-sub {
    display: block;
    font-weight: 100;
    font-style: italic;
    line-height: 1.2;
    letter-spacing: -0.03em;
}

/* Separadores (líneas finas grises) */
.seg-filo-sep {
    display: block;
    width: 100%;
    height: 1px;
    border: 0;
    border-top: 1px solid #E3EBF0;
    background-color: #E3EBF0;
    margin: 29px 0;
    padding: 0;
    box-sizing: border-box;
}

/* Fallback de visibilidad responsive por si la clase nativa de Elementor
   no estuviera cargada en el contexto del widget. */
@media (min-width: 1025px) {
    .seg-filo-sep.elementor-hidden-desktop { display: none !important; }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .seg-filo-sep.elementor-hidden-tablet { display: none !important; }
}
@media (max-width: 767px) {
    .seg-filo-sep.elementor-hidden-mobile { display: none !important; }
}

/* Responsive base: por defecto a 1 columna en móvil
   (los breakpoints reales los gestionan los controles _device) */
@media (max-width: 767px) {
    .seg-filo-grid {
        flex-direction: column;
    }
    .seg-filo-col-left,
    .seg-filo-col-right {
        flex: 1 1 100%;
    }
}
