/* Start custom CSS for html, class: .elementor-element-cf7f101 *//* ==================================================
   NASI SPECJALIŚCI – 2 SPECJALISTKI
================================================== */

.stm-team,
.stm-team *,
.stm-team *::before,
.stm-team *::after {
    box-sizing: border-box;
}


/* ==================================================
   GŁÓWNA SEKCJA
================================================== */

.stm-team {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 62px 22px 72px;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 3% 94%,
            rgba(231, 168, 137, 0.12),
            transparent 19%
        ),
        radial-gradient(
            circle at 98% 8%,
            rgba(231, 168, 137, 0.11),
            transparent 18%
        ),
        #f8f5f0;

    font-family: Arial, Helvetica, sans-serif;
}


.stm-team__inner {
    position: relative;

    display: grid;

    grid-template-columns:
        minmax(330px, 0.9fr)
        minmax(0, 3.1fr);

    gap: 32px;

    width: 100%;
    max-width: 1500px;

    margin: 0 auto;
}


/* ==================================================
   WPROWADZENIE
================================================== */

.stm-team__intro {
    position: relative;
    z-index: 2;

    display: flex;
    flex-direction: column;
    justify-content: center;

    min-width: 0;

    padding:
        15px
        10px
        40px
        18px;

    padding-right: 10px;

    overflow: visible;
}


.stm-team__eyebrow {
    display: block;

    margin-bottom: 12px;

    color: #d98669;

    font-size: 11px;
    font-weight: 800;
    line-height: 1.2;

    letter-spacing: 1.5px;

    text-transform: uppercase;
}


.stm-team__title {
    width: 100%;
    max-width: 320px;

    margin: 0;

    color: #102d63;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: clamp(
        44px,
        3.7vw,
        62px
    );

    font-weight: 700;
    line-height: 1;

    letter-spacing: -1px;

    overflow: visible;

    word-break: normal;
}


.stm-team__decor {
    display: flex;

    align-items: center;

    gap: 12px;

    margin-top: 24px;

    color: #e39a79;
}


.stm-team__decor span {
    display: block;

    width: 76px;
    height: 1px;

    background: currentColor;
}


.stm-team__decor svg {
    width: 25px;
    height: 20px;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;
    stroke-linejoin: round;
}


.stm-team__description {
    max-width: 310px;

    margin: 31px 0 0;

    color: #26364f;

    font-size: 16px;
    line-height: 1.8;
}


/* ==================================================
   SIATKA – 2 SPECJALISTKI
================================================== */

.stm-team__grid {
    position: relative;
    z-index: 3;

    display: grid;

    grid-template-columns:
        repeat(
            2,
            minmax(0, 1fr)
        );

    gap: 24px;

    align-items: stretch;

    width: 100%;
    max-width: 850px;

    min-width: 0;
}


/* ==================================================
   KARTA SPECJALISTY
================================================== */

.stm-person {
    display: flex;

    flex-direction: column;

    min-width: 0;

    overflow: hidden;

    background:
        rgba(
            255,
            255,
            255,
            0.82
        );

    border:
        1px solid
        rgba(
            227,
            213,
            202,
            0.9
        );

    border-radius: 18px;

    box-shadow:
        0
        10px
        28px
        rgba(
            34,
            49,
            82,
            0.05
        );

    transition:
        transform 0.24s ease,
        box-shadow 0.24s ease;
}


.stm-person:hover {
    transform:
        translateY(-5px);

    box-shadow:
        0
        18px
        38px
        rgba(
            34,
            49,
            82,
            0.09
        );
}


/* ==================================================
   ZDJĘCIE
================================================== */

.stm-person__photo {
    position: relative;

    width: 100%;
    height: 390px;

    margin: 0;

    overflow: hidden;

    background: #ece7e0;
}


.stm-person__image {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.35s ease;
}


.stm-person:hover
.stm-person__image {
    transform:
        scale(1.025);
}


/* Kamila */

.stm-person__image--kamila {
    object-position:
        center 23%;
}


/* Julia */

.stm-person__image--julia {
    object-position:
        center 26%;
}


/* ==================================================
   TREŚĆ KARTY
================================================== */

.stm-person__content {
    display: flex;

    flex: 1 1 auto;

    flex-direction: column;

    padding:
        24px
        22px
        28px;
}


.stm-person__name {
    min-height: 58px;

    margin: 0;

    color: #102d63;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size: 25px;
    font-weight: 700;

    line-height: 1.2;

    text-align: center;
}


/* ==================================================
   OZDOBNY DIVIDER
================================================== */

.stm-person__divider {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 7px;

    margin:
        13px
        0
        15px;

    color: #e39a79;
}


.stm-person__divider span {
    display: block;

    width: 48px;
    height: 1px;

    background: currentColor;
}


.stm-person__divider i {
    display: block;

    width: 7px;
    height: 7px;

    border:
        1px solid
        currentColor;

    border-radius: 50%;
}


/* ==================================================
   SPECJALIZACJE
================================================== */

.stm-person__roles {
    display: flex;

    flex-direction: column;

    gap: 9px;

    width: 100%;

    margin: 0;
    padding: 0;

    color: #334056;

    font-size: 14px;
    line-height: 1.5;

    list-style: none;
}


.stm-person__roles li {
    position: relative;

    padding-left: 17px;
}


.stm-person__roles li::before {
    content: "";

    position: absolute;

    top: 0.6em;
    left: 0;

    width: 6px;
    height: 6px;

    background: #e39a79;

    border-radius: 50%;

    transform:
        translateY(-50%);
}


/* ==================================================
   DEKORACJE – LIŚCIE
================================================== */

.stm-team__leaf {
    position: absolute;

    z-index: 1;

    fill: none;

    stroke: #e7aa8d;

    stroke-width: 1.5;

    stroke-linecap: round;
    stroke-linejoin: round;

    opacity: 0.65;

    pointer-events: none;
}


.stm-team__leaf--left {
    bottom: -54px;
    left: -42px;

    width: 155px;
}


.stm-team__leaf--right {
    right: -35px;
    bottom: -58px;

    width: 155px;

    transform:
        scaleX(-1);
}


/* ==================================================
   DEKORACYJNE KROPKI
================================================== */

.stm-team__dots {
    position: absolute;

    top: -22px;
    right: -7px;

    z-index: 1;

    display: grid;

    grid-template-columns:
        repeat(
            3,
            7px
        );

    gap: 10px;

    opacity: 0.43;
}


.stm-team__dots span {
    display: block;

    width: 7px;
    height: 7px;

    background: #e4a285;

    border-radius: 50%;
}


/* ==================================================
   MNIEJSZE MONITORY
================================================== */

@media (max-width: 1300px) {

    .stm-team {
        padding:
            52px
            20px
            60px;
    }


    .stm-team__inner {
        grid-template-columns:
            290px
            minmax(0, 1fr);

        gap: 24px;
    }


    .stm-team__title {
        max-width: 280px;

        font-size: 48px;
    }


    .stm-team__description {
        font-size: 14px;
    }


    .stm-team__grid {
        gap: 18px;

        max-width: 760px;
    }


    .stm-person__photo {
        height: 340px;
    }


    .stm-person__content {
        padding:
            20px
            18px
            23px;
    }


    .stm-person__name {
        min-height: 50px;

        font-size: 22px;
    }


    .stm-person__roles {
        font-size: 13px;
    }

}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 1000px) {

    .stm-team__inner {
        grid-template-columns: 1fr;

        gap: 30px;
    }


    .stm-team__intro {
        align-items: center;

        max-width: 720px;

        margin: 0 auto;

        padding: 0;

        text-align: center;
    }


    .stm-team__title {
        max-width: 100%;

        font-size: 48px;

        text-align: center;
    }


    .stm-team__title br {
        display: none;
    }


    .stm-team__description {
        max-width: 600px;

        margin-top: 22px;
    }


    .stm-team__grid {
        grid-template-columns:
            repeat(
                2,
                minmax(0, 1fr)
            );

        max-width: 760px;

        margin: 0 auto;
    }


    .stm-person__photo {
        height: 360px;
    }

}


/* ==================================================
   TELEFON
================================================== */

@media (max-width: 620px) {

    .stm-team {
        padding:
            40px
            14px
            46px;
    }


    .stm-team__title {
        font-size: 39px;
    }


    .stm-team__decor {
        margin-top: 17px;
    }


    .stm-team__decor span {
        width: 54px;
    }


    .stm-team__description {
        margin-top: 18px;

        font-size: 13px;
        line-height: 1.65;
    }


    .stm-team__grid {
        grid-template-columns: 1fr;

        gap: 14px;

        max-width: 410px;

        margin: 0 auto;
    }


    .stm-person__photo {
        height: 390px;
    }


    .stm-person__content {
        padding:
            18px
            17px
            21px;
    }


    .stm-person__name {
        min-height: 0;

        font-size: 21px;
    }


    .stm-person__roles {
        font-size: 12px;
    }


    .stm-team__leaf--left,
    .stm-team__leaf--right {
        width: 110px;

        opacity: 0.4;
    }


    .stm-team__dots {
        display: none;
    }

}


/* ==================================================
   MAŁE TELEFONY
================================================== */

@media (max-width: 400px) {

    .stm-team__title {
        font-size: 37px;
    }


    .stm-person__photo {
        height: 330px;
    }

}/* End custom CSS */