.elementor-167 .elementor-element.elementor-element-7b5d07b{--display:flex;--min-height:550px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:1;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-167 .elementor-element.elementor-element-7b5d07b:not(.elementor-motion-effects-element-type-background), .elementor-167 .elementor-element.elementor-element-7b5d07b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://fundacionbuenpastor.cl/wp-content/uploads/2026/07/articles-85005_imagen_02.thumb_i_lateral.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-167 .elementor-element.elementor-element-7b5d07b::before, .elementor-167 .elementor-element.elementor-element-7b5d07b > .elementor-background-video-container::before, .elementor-167 .elementor-element.elementor-element-7b5d07b > .e-con-inner > .elementor-background-video-container::before, .elementor-167 .elementor-element.elementor-element-7b5d07b > .elementor-background-slideshow::before, .elementor-167 .elementor-element.elementor-element-7b5d07b > .e-con-inner > .elementor-background-slideshow::before, .elementor-167 .elementor-element.elementor-element-7b5d07b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #00000070 0%, #000000D9 100%);}.elementor-167 .elementor-element.elementor-element-68a80c5{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-167 .elementor-element.elementor-element-42123da{--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;}.elementor-167 .elementor-element.elementor-element-abaf3c7{--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;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:50px;--margin-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-167 .elementor-element.elementor-element-a984629 img{border-radius:20px 20px 20px 20px;}.elementor-167 .elementor-element.elementor-element-2c1a383{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-167 .elementor-element.elementor-element-40915eb{--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;--justify-content:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:50px;}.elementor-167 .elementor-element.elementor-element-7a22372 img{border-radius:20px 20px 20px 20px;}.elementor-167 .elementor-element.elementor-element-0977765{--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;}.elementor-167 .elementor-element.elementor-element-25780a2{--display:flex;--margin-top:-40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-167 .elementor-element.elementor-element-42123da{--width:50%;}.elementor-167 .elementor-element.elementor-element-abaf3c7{--width:50%;}.elementor-167 .elementor-element.elementor-element-40915eb{--width:50%;}.elementor-167 .elementor-element.elementor-element-0977765{--width:50%;}}@media(max-width:767px){.elementor-167 .elementor-element.elementor-element-7b5d07b{--min-height:344px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-167 .elementor-element.elementor-element-abaf3c7{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-167 .elementor-element.elementor-element-2c1a383{--flex-direction:row-reverse;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap-reverse;}.elementor-167 .elementor-element.elementor-element-40915eb{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-167 .elementor-element.elementor-element-25780a2{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-167 .elementor-element.elementor-element-36f12bd{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}@media(min-width:1025px){.elementor-167 .elementor-element.elementor-element-7b5d07b:not(.elementor-motion-effects-element-type-background), .elementor-167 .elementor-element.elementor-element-7b5d07b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}/* Start custom CSS for html, class: .elementor-element-36f12bd */<style>
    @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap');
    
    /* --- BASE Y CONTENEDOR --- */
    .fbp-mod-section {
        background-color: #F9F8F6; /* Color Arena elegante */
        padding: 1.5rem 0;
        font-family: 'Montserrat', sans-serif;
        box-sizing: border-box;
    }

    .fbp-mod-section *, .fbp-mod-section *::before, .fbp-mod-section *::after {
        box-sizing: inherit;
    }

    .fbp-mod-container {
        max-width: 72rem; /* Contenedor optimizado */
        margin: 0 auto;
        padding: 0 1.5rem;
    }

    @media (min-width: 1024px) {
        .fbp-mod-section { padding: 8rem 0; }
        .fbp-mod-container { padding: 0 3rem; }
    }

    /* --- CABECERA --- */
    .fbp-mod-header {
        text-align: center;
        margin-bottom: 5rem;
    }

    .fbp-mod-icon-wrap {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 3.5rem;
        height: 3.5rem;
        background-color: #ffffff;
        color: #f6df83;
        border-radius: 50%;
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
        box-shadow: 0 10px 20px rgba(0,0,0,0.05);
    }

    .fbp-mod-title {
        font-family: 'Playfair Display', serif !important;
        font-size: 2.2rem;
        color: #1a1a1a;
        font-weight: 700;
        line-height: 1.2;
        margin: 0 0 1.5rem 0;
    }

    .fbp-mod-title span {
        font-style: italic;
        font-weight: 300;
        color: #0345bf; /* Acento Azul */
    }

    @media (min-width: 768px) {
        .fbp-mod-title { font-size: 3.5rem; }
    }

    .fbp-mod-divider {
        width: 2px;
        height: 3rem;
        background: linear-gradient(to bottom, #0345bf, transparent);
        margin: 0 auto;
    }

    /* --- ESTRUCTURA LÍNEA DE TIEMPO (Optimizada) --- */
    .fbp-mod-timeline {
        position: relative;
        padding: 2rem 0;
    }

    /* La Línea Central */
    .fbp-mod-line {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 2px;
        background-color: #E5E5E5;
        left: 20px; /* Posición móvil */
        z-index: 1;
    }

    /* Contenedor del Hito */
    .fbp-mod-item {
        position: relative;
        display: flex;
        flex-direction: column;
        margin-bottom: 3rem;
        z-index: 2;
    }

    .fbp-mod-item:last-child {
        margin-bottom: 0;
    }

    /* El Punto (Marcador animado que usa la variable CSS) */
    .fbp-mod-marker {
        position: absolute;
        width: 16px;
        height: 16px;
        background-color: #ffffff;
        border: 4px solid var(--accent);
        border-radius: 50%;
        left: 20px;
        top: 1.5rem;
        transform: translateX(-50%);
        z-index: 3;
        transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    /* Efecto al pasar el ratón por todo el hito */
    .fbp-mod-item:hover .fbp-mod-marker {
        background-color: var(--accent);
        transform: translateX(-50%) scale(1.4);
        box-shadow: 0 0 15px var(--accent);
    }

    /* Columnas (Fecha y Contenido) */
    .fbp-mod-col {
        padding-left: 3.5rem; /* Espacio para la línea en móvil */
    }

    /* Estilo de la Fecha */
    .fbp-mod-date {
        font-family: 'Playfair Display', serif !important;
        font-size: 2.5rem;
        font-weight: 700;
        color: var(--accent);
        line-height: 1;
        margin-bottom: 1rem;
        transition: color 0.4s ease;
    }

    /* Tarjeta Elegante (Panel) */
    .fbp-mod-panel {
        background-color: #ffffff;
        padding: 1.5rem 2rem;
        border-radius: 12px;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.03);
        border-left: 4px solid var(--accent); /* Borde lateral del color del hito */
        transition: transform 0.4s ease, box-shadow 0.4s ease;
    }

    .fbp-mod-item:hover .fbp-mod-panel {
        transform: translateY(-5px);
        box-shadow: 0 12px 25px rgba(0, 0, 0, 0.08);
    }

    .fbp-mod-panel p {
        font-family: 'Montserrat', sans-serif !important;
        font-size: 0.95rem;
        color: #555555;
        font-weight: 300;
        line-height: 1.6;
        margin: 0;
    }

    /* --- DISEÑO ESCRITORIO (Alternado Inteligente) --- */
    @media (min-width: 768px) {
        .fbp-mod-line {
            left: 50%;
            transform: translateX(-50%);
        }

        .fbp-mod-marker {
            left: 50%;
            top: 2rem;
        }

        .fbp-mod-item {
            flex-direction: row;
            align-items: center;
            justify-content: space-between;
        }

        .fbp-mod-col {
            width: 45%;
            padding-left: 0;
        }

        /* --- Elementos IMPARES (Ej: 1784) --- */
        /* Fecha a la derecha, Texto a la izquierda */
        .fbp-mod-item:nth-child(odd) .fbp-mod-col-date {
            order: 2;
            text-align: left;
            padding-left: 3rem;
        }
        .fbp-mod-item:nth-child(odd) .fbp-mod-col-content {
            order: 1;
            text-align: right;
            padding-right: 3rem;
        }
        /* Ajuste de la tarjeta para impares */
        .fbp-mod-item:nth-child(odd) .fbp-mod-panel {
            border-left: none;
            border-right: 4px solid var(--accent); /* Borde pasa a la derecha */
            text-align: right;
        }

        /* --- Elementos PARES (Ej: 1835) --- */
        /* Texto a la izquierda, Fecha a la derecha (Invertido) */
        .fbp-mod-item:nth-child(even) .fbp-mod-col-date {
            order: 1;
            text-align: right;
            padding-right: 3rem;
        }
        .fbp-mod-item:nth-child(even) .fbp-mod-col-content {
            order: 2;
            text-align: left;
            padding-left: 3rem;
        }
        
        /* Agrandar un poco la fecha en escritorio */
        .fbp-mod-date {
            font-size: 3.5rem;
            margin-bottom: 0;
        }
    }

    /* =========================================================
       OPTIMIZACIÓN RESPONSIVE — TABLET Y MÓVIL
       ========================================================= */

    /* -------------------------
       TABLET: 768px a 1023px
       ------------------------- */

    @media (min-width: 768px) and (max-width: 1023px) {

        .fbp-mod-section {
            padding: 5rem 0;
        }

        .fbp-mod-container {
            max-width: 100%;
            padding: 0 2rem;
        }

        /* Cabecera más compacta */

        .fbp-mod-header {
            max-width: 42rem;
            margin: 0 auto 3.75rem;
        }

        .fbp-mod-icon-wrap {
            width: 3.25rem;
            height: 3.25rem;
            margin-bottom: 1.25rem;
            font-size: 1.35rem;
        }

        .fbp-mod-title {
            font-size: 3rem;
            margin-bottom: 1.25rem;
        }

        .fbp-mod-divider {
            height: 2.5rem;
        }

        /* Línea de tiempo */

        .fbp-mod-timeline {
            padding: 1.5rem 0;
        }

        .fbp-mod-item {
            margin-bottom: 2.75rem;
        }

        .fbp-mod-marker {
            top: 1.75rem;
        }

        /* Menos separación entre la línea y las columnas */

        .fbp-mod-item:nth-child(odd) .fbp-mod-col-date {
            padding-left: 2rem;
        }

        .fbp-mod-item:nth-child(odd) .fbp-mod-col-content {
            padding-right: 2rem;
        }

        .fbp-mod-item:nth-child(even) .fbp-mod-col-date {
            padding-right: 2rem;
        }

        .fbp-mod-item:nth-child(even) .fbp-mod-col-content {
            padding-left: 2rem;
        }

        .fbp-mod-col {
            width: 46.5%;
        }

        .fbp-mod-date {
            font-size: 2.9rem;
        }

        .fbp-mod-panel {
            padding: 1.35rem 1.5rem;
            border-radius: 10px;
        }

        .fbp-mod-panel p {
            font-size: 0.9rem;
            line-height: 1.65;
        }
    }


    /* -------------------------
       MÓVIL: hasta 767px
       ------------------------- */

    @media (max-width: 767px) {

        .fbp-mod-section {
            padding: 3.75rem 0;
        }

        .fbp-mod-container {
            width: 100%;
            padding: 0 1.25rem;
        }

        /* Cabecera */

        .fbp-mod-header {
            max-width: 32rem;
            margin: 0 auto 3rem;
        }

        .fbp-mod-icon-wrap {
            width: 3rem;
            height: 3rem;
            margin-bottom: 1.1rem;
            font-size: 1.25rem;
        }

        .fbp-mod-title {
            font-size: clamp(2rem, 9vw, 2.6rem);
            line-height: 1.15;
            margin-bottom: 1.1rem;
        }

        .fbp-mod-title br {
            display: none;
        }

        .fbp-mod-divider {
            height: 2.25rem;
        }

        /* Línea de tiempo */

        .fbp-mod-timeline {
            padding: 0.75rem 0 0;
        }

        .fbp-mod-line {
            left: 12px;
        }

        .fbp-mod-item {
            margin-bottom: 2.25rem;
        }

        .fbp-mod-marker {
            left: 12px;
            top: 0.65rem;
            width: 14px;
            height: 14px;
            border-width: 3px;
        }

        /* Menos espacio ocupado por la línea lateral */

        .fbp-mod-col {
            width: 100%;
            padding-left: 2.25rem;
        }

        .fbp-mod-col-date {
            margin-bottom: 0.75rem;
        }

        .fbp-mod-date {
            font-size: 2.15rem;
            line-height: 1;
            margin-bottom: 0;
        }

        /* Tarjetas */

        .fbp-mod-panel {
            padding: 1.25rem 1.35rem;
            border-left-width: 3px;
            border-radius: 10px;
        }

        .fbp-mod-panel p {
            font-size: 0.92rem;
            line-height: 1.65;
        }

        /* Evita desplazamientos bruscos en pantallas táctiles */

        .fbp-mod-item:hover .fbp-mod-panel {
            transform: none;
        }

        .fbp-mod-item:hover .fbp-mod-marker {
            transform: translateX(-50%);
            box-shadow: none;
        }
    }


    /* -------------------------
       MÓVILES PEQUEÑOS
       ------------------------- */

    @media (max-width: 480px) {

        .fbp-mod-section {
            padding: 3.25rem 0;
        }

        .fbp-mod-container {
            padding: 0 1rem;
        }

        .fbp-mod-header {
            margin-bottom: 2.5rem;
        }

        .fbp-mod-title {
            font-size: clamp(1.85rem, 9.5vw, 2.25rem);
        }

        .fbp-mod-divider {
            height: 2rem;
        }

        .fbp-mod-item {
            margin-bottom: 1.9rem;
        }

        .fbp-mod-col {
            padding-left: 2rem;
        }

        .fbp-mod-line,
        .fbp-mod-marker {
            left: 10px;
        }

        .fbp-mod-date {
            font-size: 1.95rem;
        }

        .fbp-mod-panel {
            padding: 1.1rem 1.15rem;
            border-radius: 9px;
        }

        .fbp-mod-panel p {
            font-size: 0.88rem;
            line-height: 1.6;
        }
    }


    /* -------------------------
       PANTALLAS MUY PEQUEÑAS
       ------------------------- */

    @media (max-width: 360px) {

        .fbp-mod-container {
            padding: 0 0.8rem;
        }

        .fbp-mod-col {
            padding-left: 1.85rem;
        }

        .fbp-mod-panel {
            padding: 1rem;
        }

        .fbp-mod-panel p {
            font-size: 0.85rem;
        }
    }
</style>/* End custom CSS */