/* ========================= */
/* ABOUT PAGE */
/* ========================= */

.about-hero {

    position: relative;

    min-height: 100vh;

    display: flex;
    justify-content: center;
    align-items: stretch;

    padding: 0 20px;

    background: url('../assets/img/fondobase.png') center center / cover no-repeat fixed;
}


/* ========================= */
/* HERO OVERLAY */
/* ========================= */

.about-hero::before {

    content: "";

    position: absolute;
    inset: 0;

    background: rgba(0,0,0,0.55);

    z-index: 0;

}


/* ========================= */
/* CENTRAL COLUMN */
/* ========================= */

.about-overlay-box {

    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 900px;

    min-height: 100%;

    padding: 120px 70px 80px;

    background: rgba(0,0,0,0.75);

    display: flex;
    flex-direction: column;
    justify-content: center;

    text-align: center;

    box-shadow:
        0 0 120px rgba(0,0,0,0.9);

}


/* ========================= */
/* TITLE */
/* ========================= */

.about-overlay-box h1 {

    font-size: clamp(2rem,4vw,3rem);

    margin-bottom: 45px;

    letter-spacing: 2px;

}


/* ========================= */
/* TEXT BLOCK */
/* ========================= */

.about-text {

    display: flex;
    flex-direction: column;

    gap: 26px;

}


.about-text p {

    font-size: clamp(0.95rem,1.1vw,1.05rem);

    line-height: 1.85;

    opacity: 0.92;

    text-align: justify;

}


/* ========================= */
/* HIGHLIGHT */
/* ========================= */

.about-highlight {

    margin-top: 30px;

    font-size: clamp(1.05rem,1.2vw,1.15rem);

}


/* ========================= */
/* CTA BUTTON */
/* ========================= */

.about-cta {

    margin-top: 45px;

    align-self: center;

    padding: 14px 45px;

    border: 1px solid #ff1a1a;

    background: transparent;

    color: #ff1a1a;

    text-decoration: none;

    font-weight: 600;

    letter-spacing: 2px;

    text-transform: uppercase;

    transition: all 0.3s ease;

}


.about-cta:hover {

    background: #ff1a1a;

    color: #000;

    box-shadow:
        0 0 25px rgba(255,0,0,0.6);

}


/* ========================= */
/* TABLET */
/* ========================= */

@media (max-width:1024px) {

    .about-overlay-box {

        max-width: 800px;

        padding: 110px 55px 70px;

    }

}


/* ========================= */
/* MOBILE */
/* ========================= */

@media (max-width:768px) {

    .about-hero {

        padding: 0 16px;

    }

    .about-overlay-box {

        padding: 100px 30px 60px;

        max-width: 640px;

    }

    .about-overlay-box h1 {

        font-size: 1.9rem;

    }

    .about-text p {

        text-align: left;

        line-height: 1.75;

    }

    .about-cta {

        width: 100%;

        text-align: center;

    }

}