/* ============================================================
   TRANSPORTES FRANCISCO LANDING CORE — About Widgets
   ============================================================ */

/* ------------------------------------------------------------
   Widget 1: About Info (tflc-about-info)
   ------------------------------------------------------------ */
.tflc-about-info {
    position: relative;
    padding: 60px 0;
}

.tflc-about-info__inner {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

/* Columna Izquierda: Imágenes superpuestas */
.tflc-about-info__images {
    position: relative;
    width: 100%;
}

.tflc-about-info__img-main {
    width: 80%;
    height: auto;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    display: block;
}

.tflc-about-info__img-overlay-wrap {
    position: absolute;
    bottom: -40px;
    right: 0;
    width: 60%;
    box-shadow: 0 15px 40px rgba(0,0,0,0.15);
    overflow: hidden;
}

.tflc-about-info__img-overlay {
    width: 100%;
    height: auto;
    display: block;
}

/* Columna Derecha: Texto */
.tflc-about-info__content {
    display: flex;
    flex-direction: column;
}

.tflc-about-info__title {
    font-family: var(--project-font, 'Montserrat', sans-serif);
    font-size: 3rem;
    font-weight: 600;
    color: var(--project-primary, #223D65);
    text-transform: uppercase;
    margin: 0 0 30px 0;
    line-height: 1.1;
}

.tflc-about-info__text {
    font-size: 1.05rem;
    line-height: 1.8;
    font-family: var(--project-font, 'Montserrat', sans-serif);
    color: #111111;
}

.tflc-about-info__text p {
    margin-bottom: 20px;
    font-weight: 400;
}

.tflc-about-info__text p:last-child {
    margin-bottom: 0;
}

.tflc-about-info__text strong,
.tflc-about-info__text b {
    color: var(--project-primary, #223D65);
    font-weight: 700;
}


/* Responsive Info Widget */
@media (max-width: 991px) {
    .tflc-about-info__inner {
        grid-template-columns: 1fr;
        gap: 60px;
        padding: 0 20px;
    }

    .tflc-about-info__img-main {
        width: 90%;
    }

    .tflc-about-info__img-overlay-wrap {
        bottom: -30px;
        right: 10px;
        width: 50%;
    }
}


/* ------------------------------------------------------------
   Widget 2: About Gallery Grid (tflc-about-gallery)
   ------------------------------------------------------------ */
.tflc-about-gallery {
    width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
}

.tflc-about-gallery__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-auto-rows: minmax(400px, auto);
    gap: 0; /* Sin espacio entre las cajas para replicar el diseño */
}

.tflc-about-gallery__item {
    width: 100%;
    height: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Imagen bloque */
.tflc-about-gallery__item--image {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    min-height: 400px; /* Asegurar altura en móvil */
}

/* Caja de Texto bloque */
.tflc-about-gallery__item--text {
    padding: 60px;
}

.tflc-about-gallery__content {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    max-width: 500px;
    width: 100%;
}

.tflc-about-gallery__icon {
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--project-secondary, #FFC600);
}

.tflc-about-gallery__icon svg {
    width: 100%;
    height: 100%;
    fill: currentColor;
}

.tflc-about-gallery__text-wrap {
    display: flex;
    flex-direction: column;
}

.tflc-about-gallery__subtitle {
    font-family: 'Shadows Into Light', cursive; /* Fuente manuscrita como en el diseño. Usamos un genérico similar u otra que tengan cargada */
    font-size: 1.2rem;
    color: #e0e0e0;
    margin-bottom: 10px;
    font-style: italic;
}

.tflc-about-gallery__title {
    font-family: var(--project-font, 'Montserrat', sans-serif);
    font-size: 2.2rem;
    font-weight: 700;
    color: #ffffff;
    margin: 0;
    line-height: 1.2;
}

/* Responsive Gallery Grid */
@media (max-width: 991px) {
    .tflc-about-gallery__content {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
}

@media (max-width: 767px) {
    .tflc-about-gallery__grid {
        display: flex;
        flex-direction: column;
    }

    /* Reordenar para intercalar en móvil: Texto, Imagen, Texto, Imagen */
    .tflc-about-gallery__item:nth-child(1) { order: 1; }
    .tflc-about-gallery__item:nth-child(2) { order: 2; }
    .tflc-about-gallery__item:nth-child(3) { order: 4; }
    .tflc-about-gallery__item:nth-child(4) { order: 3; }

    .tflc-about-gallery__item--image {
        min-height: 300px;
    }

    .tflc-about-gallery__item--text {
        padding: 40px 20px;
    }
    
    .tflc-about-gallery__title {
        font-size: 1.8rem;
    }
}
