/* =========================================================
   PROBLEMA
   ========================================================= */

.problem {

    height: 420px;

    position: relative;

    display: flex;

    align-items: center;

    color: white;

    overflow: hidden;

}

.problem-background {

    position: absolute;

    inset: 0;

    background:
        url("https://images.unsplash.com/photo-1581092162384-8987c1d64718?auto=format&fit=crop&w=2200&q=85")
        center / cover;

    transform: scale(1.05);

}

.problem-overlay {

    position: absolute;

    inset: 0;

    background:
        linear-gradient(
            90deg,
            rgba(10,10,10,.92),
            rgba(10,10,10,.75)
        );

}

/* =========================================================
   CONTENIDO
   ========================================================= */

.problem .section-container {

    position: relative;

    z-index: 5;

    width: min(
        calc(100% - 120px),
        var(--max-width)
    );

    margin: 0 auto;

}

/* =========================================================
   TITULO
   ========================================================= */

.problem-heading {

    display: grid;

    grid-template-columns: 1fr 320px;

    gap: 100px;

    align-items: center;

}

.problem-heading h2 {

    font-size: clamp(
        32px,
        3vw,
        54px
    );

    line-height: 1.05;

    letter-spacing: -.04em;

    font-weight: 500;

}

.problem-heading h2 strong {

    display: block;

    font-weight: 600;

}

.problem-heading p {

    margin-top: 18px;

    max-width: 420px;

    color: rgba(255,255,255,.72);

    font-size: 13px;

    line-height: 1.7;

}

/* =========================================================
   LISTA PROBLEMAS
   ========================================================= */
.problem-list {

    position: absolute;

    right: 0;

    top: 50%;

    transform: translateY(-50%);

    width: 340px;

    display: flex;

    flex-direction: column;

    gap: 14px;

    padding-left: 45px;

}

/* LINEA VERTICAL */

.problem-list::before {

    content: "";

    position: absolute;

    left: 15px;

    top: 20px;

    bottom: 20px;

    width: 1px;

    background: rgba(106,143,74,.45);

}


/* ITEMS */
.problem-item {

    position: relative;

    padding: 8px 0;

    background: transparent;

    border: none;

    backdrop-filter: none;

    border-radius: 0;

    transition: .3s ease;

}

.problem-item:hover {

    transform: translateX(8px);

}

/* CIRCULOS */

.problem-item::before {

    content: "";

    position: absolute;

    left: -37px;

    top: 50%;

    width: 14px;

    height: 14px;

    border-radius: 50%;

    background: #111;

    border: 2px solid var(--green);

    transform: translateY(-50%);

}
.problem-item::after {

    content: "→";

    position: absolute;

    left: -18px;

    top: 50%;

    transform: translateY(-50%);

    color: var(--green);

    font-size: 12px;

}
/* TEXTO */

.problem-item strong {

    font-size: 28px;

    font-weight: 500;

    color: white;

    line-height: 1.1;

}
.problem-item:nth-child(1) strong,
.problem-item:nth-child(2) strong,
.problem-item:nth-child(3) strong {

    color: rgba(255,255,255,.95);

}

.problem-item:nth-child(4) strong {

    color: rgba(255,255,255,.82);

}

.problem-item:nth-child(5) strong {

    color: rgba(255,255,255,.72);

}

.problem-item:nth-child(6) strong {

    color: var(--green);

    font-weight: 600;

}

/* ULTIMO PASO */

.problem-item:last-child::before {

    background: var(--green);

    border-color: var(--green);

}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 991px) {

    .problem {

        height: auto;

        padding: 90px 0;

    }

    .problem-list {

        position: relative;

        top: auto;

        right: auto;

        transform: none;

        margin-top: 40px;

        width: 100%;

    }

}

@media (max-width: 768px) {

    .problem-heading h2 {

        font-size: 38px;

    }

    .problem-list {

        width: 100%;

    }

}