/* Start custom CSS for html, class: .elementor-element-bc0cd25 *//* ==================================================
   HERO – STUDIO TERAPII MOWY
================================================== */

.stm-hero,
.stm-hero *,
.stm-hero *::before,
.stm-hero *::after {
    box-sizing: border-box;
}

.stm-hero {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 38px 30px 42px;
    overflow: hidden;
    background: #f8f5f0;
    font-family: Arial, Helvetica, sans-serif;
}

.stm-hero__inner {
    display: grid;
    grid-template-columns:
        minmax(420px, 0.94fr)
        minmax(500px, 1.06fr);
    align-items: center;
    gap: 34px;
    width: 100%;
    max-width: 1380px;
    min-height: 480px;
    margin: 0 auto;
}


/* ==================================================
   LEWA STRONA
================================================== */

.stm-hero__content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 600px;
}

.stm-hero__eyebrow {
    margin: 0 0 14px;
    color: #1aa9a2;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 1.4px;
    text-transform: uppercase;
}

.stm-hero__title {
    margin: 0;
    color: #17336f;
    font-size: clamp(44px, 4.1vw, 61px);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -1.3px;
}

.stm-hero__title span {
    display: block;
    margin: 7px 0 6px;
    color: #27b8b1;
    font-family:
        "Segoe Script",
        "Brush Script MT",
        cursive;
    font-size: 0.78em;
    font-weight: 500;
    line-height: 1.02;
    letter-spacing: -1px;
}

.stm-hero__text {
    max-width: 525px;
    margin: 21px 0 0;
    color: #596176;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.65;
}


/* ==================================================
   USŁUGI
================================================== */

.stm-hero__services {
    display: grid;
    grid-template-columns:
        minmax(145px, 1.05fr)
        minmax(115px, 0.78fr)
        minmax(180px, 1.35fr);
    align-items: stretch;
    gap: 14px;
    width: 100%;
    max-width: 590px;
    margin-top: 28px;
}

.stm-hero__service {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    padding: 15px 10px 14px;
    color: #17336f;
    background: rgba(255, 255, 255, 0.48);
    border: 1px solid rgba(255, 255, 255, 0.75);
    border-radius: 16px;
    text-align: center;
    text-decoration: none;
    transition:
        background 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.stm-hero__service:hover {
    color: #17336f;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(23, 51, 111, 0.09);
    transform: translateY(-3px);
}

.stm-hero__service-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 49px;
    height: 49px;
    margin-bottom: 10px;
    border-radius: 50%;
    background: #ffffff;
    box-shadow: 0 7px 20px rgba(23, 51, 111, 0.08);
}

.stm-hero__service-icon svg {
    display: block;
    width: 23px;
    height: 23px;
}

.stm-hero__service-icon--baby {
    color: #24b9b3;
}

.stm-hero__service-icon--child {
    color: #f18d96;
}

.stm-hero__service-icon--school {
    color: #f1b944;
}

.stm-hero__service-title {
    display: block;
    color: #17336f;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.25;
}

.stm-hero__service-subtitle {
    display: block;
    margin-top: 3px;
    color: #5f687a;
    font-size: 11px;
    font-weight: 600;
    line-height: 1.3;
}


/* ==================================================
   PRAWA STRONA
================================================== */

.stm-hero__visual {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 430px;
    overflow: hidden;
}

.stm-hero__image {
    display: block;
    width: 105%;
    max-width: 650px;
    height: auto;
    max-height: 500px;
    margin: 0;
    object-fit: contain;
    object-position: center;
}


/* ==================================================
   MONITORY DO 1250 PX
================================================== */

@media (max-width: 1250px) {

    .stm-hero {
        padding: 32px 25px 36px;
    }

    .stm-hero__inner {
        grid-template-columns:
            minmax(390px, 0.95fr)
            minmax(440px, 1.05fr);
        gap: 22px;
        min-height: 440px;
    }

    .stm-hero__title {
        font-size: clamp(41px, 4vw, 54px);
    }

    .stm-hero__text {
        font-size: 14px;
    }

    .stm-hero__services {
        grid-template-columns:
            minmax(130px, 1fr)
            minmax(105px, 0.8fr)
            minmax(165px, 1.3fr);
        gap: 10px;
    }

    .stm-hero__service {
        padding-right: 7px;
        padding-left: 7px;
    }

    .stm-hero__service-title {
        font-size: 12px;
    }

    .stm-hero__service-subtitle {
        font-size: 10px;
    }

    .stm-hero__visual {
        min-height: 400px;
    }

    .stm-hero__image {
        max-width: 580px;
        max-height: 450px;
    }
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 950px) {

    .stm-hero {
        padding: 36px 24px 42px;
    }

    .stm-hero__inner {
        grid-template-columns: 1fr;
        gap: 26px;
        min-height: 0;
    }

    .stm-hero__content {
        max-width: 680px;
        margin: 0 auto;
        text-align: center;
    }

    .stm-hero__text {
        max-width: 610px;
        margin-right: auto;
        margin-left: auto;
    }

    .stm-hero__services {
        max-width: 680px;
        margin-right: auto;
        margin-left: auto;
    }

    .stm-hero__visual {
        width: 100%;
        max-width: 650px;
        min-height: 370px;
        margin: 0 auto;
    }

    .stm-hero__image {
        width: 100%;
        max-width: 600px;
        max-height: 420px;
    }
}


/* ==================================================
   TELEFON
================================================== */

@media (max-width: 650px) {

    .stm-hero {
        padding: 29px 16px 34px;
    }

    .stm-hero__inner {
        gap: 20px;
    }

    .stm-hero__content {
        text-align: left;
    }

    .stm-hero__eyebrow {
        margin-bottom: 10px;
        font-size: 10px;
    }

    .stm-hero__title {
        font-size: 39px;
        line-height: 0.99;
        letter-spacing: -0.8px;
    }

    .stm-hero__title span {
        margin: 6px 0;
        font-size: 0.77em;
    }

    .stm-hero__text {
        margin-top: 17px;
        font-size: 14px;
        line-height: 1.6;
        text-align: left;
    }

    .stm-hero__services {
        display: flex;
        flex-direction: column;
        gap: 10px;
        margin-top: 22px;
    }

    .stm-hero__service {
        display: grid;
        grid-template-columns: 44px 1fr;
        grid-template-rows: auto auto;
        column-gap: 12px;
        row-gap: 1px;
        align-items: center;
        padding: 10px 13px;
        text-align: left;
    }

    .stm-hero__service-icon {
        grid-column: 1;
        grid-row: 1 / 3;
        width: 42px;
        height: 42px;
        margin: 0;
    }

    .stm-hero__service-icon svg {
        width: 20px;
        height: 20px;
    }

    .stm-hero__service-title {
        grid-column: 2;
        grid-row: 1;
        font-size: 13px;
    }

    .stm-hero__service-subtitle {
        grid-column: 2;
        grid-row: 2;
        margin: 0;
        font-size: 11px;
    }

    .stm-hero__visual {
        min-height: 280px;
    }

    .stm-hero__image {
        width: 105%;
        max-height: 325px;
    }
}


/* ==================================================
   MAŁE TELEFONY
================================================== */

@media (max-width: 400px) {

    .stm-hero__title {
        font-size: 34px;
    }

    .stm-hero__text {
        font-size: 13px;
    }

    .stm-hero__visual {
        min-height: 245px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-193745a *//* ==================================================
   SEKCJA - JAK MOŻEMY CI POMÓC
================================================== */

.stm-help,
.stm-help *,
.stm-help *::before,
.stm-help *::after {
    box-sizing: border-box;
}

.stm-help {
    position: relative;
    width: 100%;
    padding: 72px 24px 82px;
    background: #fbf8f4;
    overflow: hidden;
    font-family: Arial, Helvetica, sans-serif;
}

.stm-help__inner {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}

/* ==================================================
   NAGŁÓWEK
================================================== */

.stm-help__heading {
    max-width: 920px;
    margin: 0 auto 42px;
    text-align: center;
}

.stm-help__heading-icon {
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
    color: #59cfc5;
}

.stm-help__heading-icon svg {
    width: 92px;
    height: auto;
}

.stm-help__title {
    margin: 0;
    color: #0f2f73;
    font-size: clamp(42px, 5vw, 74px);
    font-weight: 900;
    line-height: 0.98;
    letter-spacing: -1.6px;
}

.stm-help__title span {
    color: #39c7bc;
    font-family: "Segoe Script", "Brush Script MT", cursive;
    font-size: 0.92em;
    font-weight: 500;
    letter-spacing: -0.5px;
}

.stm-help__subtitle {
    margin: 22px 0 0;
    color: #596176;
    font-size: 18px;
    line-height: 1.7;
}

/* ==================================================
   GRID
================================================== */

.stm-help__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

/* ==================================================
   KAFELKI
================================================== */

.stm-help-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(240, 236, 229, 0.95);
    border-radius: 22px;
    box-shadow: 0 10px 30px rgba(27, 44, 84, 0.05);
    text-decoration: none;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        background 0.22s ease;
}

.stm-help-card:hover {
    transform: translateY(-6px);
    background: #ffffff;
    box-shadow: 0 18px 38px rgba(27, 44, 84, 0.09);
}

.stm-help-card__image-wrap {
    width: 100%;
    padding: 18px 18px 0;
}

.stm-help-card__image {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 18px;
    object-fit: cover;
}

.stm-help-card__content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    padding: 22px 22px 24px;
}

.stm-help-card__title {
    margin: 0;
    color: #10285d;
    font-size: 23px;
    font-weight: 900;
    line-height: 1.35;
    letter-spacing: -0.3px;
}

.stm-help-card__text {
    margin: 18px 0 0;
    color: #585f70;
    font-size: 17px;
    line-height: 1.7;
}

.stm-help-card__more {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: auto;
    padding-top: 28px;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.2;
}

.stm-help-card__more svg {
    width: 24px;
    height: 24px;
    flex: 0 0 auto;
}

/* ==================================================
   WARIANTY KOLORÓW
================================================== */

.stm-help-card--teal .stm-help-card__more {
    color: #28bdb4;
}

.stm-help-card--pink .stm-help-card__more {
    color: #ef7f92;
}

.stm-help-card--gold .stm-help-card__more {
    color: #eeae2f;
}

/* ==================================================
   RESPONSIVE
================================================== */

@media (max-width: 1250px) {
    .stm-help {
        padding: 58px 22px 66px;
    }

    .stm-help__heading {
        margin-bottom: 34px;
    }

    .stm-help__subtitle {
        font-size: 16px;
    }

    .stm-help__grid {
        gap: 16px;
    }

    .stm-help-card__content {
        padding: 20px 18px 22px;
    }

    .stm-help-card__title {
        font-size: 19px;
    }

    .stm-help-card__text {
        font-size: 15px;
    }

    .stm-help-card__more {
        font-size: 16px;
        padding-top: 22px;
    }
}

@media (max-width: 991px) {
    .stm-help__grid {
        grid-template-columns: 1fr;
        max-width: 720px;
        margin: 0 auto;
    }

    .stm-help__heading {
        max-width: 760px;
    }
}

@media (max-width: 640px) {
    .stm-help {
        padding: 42px 16px 48px;
    }

    .stm-help__heading {
        margin-bottom: 26px;
    }

    .stm-help__heading-icon {
        margin-bottom: 8px;
    }

    .stm-help__heading-icon svg {
        width: 72px;
    }

    .stm-help__title {
        letter-spacing: -0.8px;
    }

    .stm-help__subtitle {
        margin-top: 16px;
        font-size: 14px;
        line-height: 1.6;
    }

    .stm-help__grid {
        gap: 14px;
    }

    .stm-help-card {
        border-radius: 18px;
    }

    .stm-help-card__image-wrap {
        padding: 14px 14px 0;
    }

    .stm-help-card__image {
        border-radius: 14px;
    }

    .stm-help-card__content {
        padding: 16px 14px 18px;
    }

    .stm-help-card__title {
        font-size: 18px;
        line-height: 1.3;
    }

    .stm-help-card__text {
        margin-top: 12px;
        font-size: 14px;
        line-height: 1.6;
    }

    .stm-help-card__more {
        gap: 10px;
        padding-top: 18px;
        font-size: 15px;
    }

    .stm-help-card__more svg {
        width: 20px;
        height: 20px;
    }
}
/* ==================================================
   ZMNIEJSZENIE CAŁEJ SEKCJI
================================================== */

.stm-help {
    padding: 52px 22px 60px;
}

.stm-help__inner {
    max-width: 1240px;
}

.stm-help__heading {
    max-width: 780px;
    margin-bottom: 30px;
}

.stm-help__heading-icon {
    margin-bottom: 6px;
}

.stm-help__heading-icon svg {
    width: 72px;
}

.stm-help__title {
    font-size: clamp(36px, 4vw, 58px);
    letter-spacing: -1.1px;
}

.stm-help__subtitle {
    margin-top: 16px;
    font-size: 16px;
    line-height: 1.55;
}

.stm-help__grid {
    gap: 14px;
}

.stm-help-card {
    border-radius: 18px;
}

.stm-help-card__image-wrap {
    padding: 14px 14px 0;
}

.stm-help-card__image {
    width: 100%;
    max-height: 285px;
    border-radius: 15px;
    object-fit: contain;
    background: #ffffff;
}

.stm-help-card__content {
    padding: 18px 18px 20px;
}

.stm-help-card__title {
    font-size: 20px;
    line-height: 1.25;
}

.stm-help-card__text {
    margin-top: 13px;
    font-size: 15px;
    line-height: 1.6;
}

.stm-help-card__more {
    gap: 9px;
    padding-top: 20px;
    font-size: 16px;
}

.stm-help-card__more svg {
    width: 21px;
    height: 21px;
}


/* MNIEJSZE EKRANY */

@media (max-width: 1250px) {
    .stm-help {
        padding: 46px 20px 54px;
    }

    .stm-help__inner {
        max-width: 1120px;
    }

    .stm-help__heading {
        margin-bottom: 26px;
    }

    .stm-help__title {
        font-size: clamp(34px, 4vw, 50px);
    }

    .stm-help__subtitle {
        font-size: 15px;
    }

    .stm-help-card__image {
        max-height: 250px;
    }

    .stm-help-card__title {
        font-size: 18px;
    }

    .stm-help-card__text {
        font-size: 14px;
    }

    .stm-help-card__more {
        font-size: 15px;
    }
}


/* TELEFON */

@media (max-width: 640px) {
    .stm-help {
        padding: 34px 14px 40px;
    }

    .stm-help__heading {
        margin-bottom: 22px;
    }

    .stm-help__heading-icon svg {
        width: 60px;
    }

    .stm-help__title {
        font-size: 34px;
        line-height: 1.02;
    }

    .stm-help__subtitle {
        margin-top: 13px;
        font-size: 13px;
    }

    .stm-help__grid {
        gap: 12px;
    }

    .stm-help-card__image {
        max-height: none;
    }

    .stm-help-card__content {
        padding: 15px 14px 17px;
    }

    .stm-help-card__title {
        font-size: 17px;
    }

    .stm-help-card__text {
        margin-top: 10px;
        font-size: 13px;
    }

    .stm-help-card__more {
        padding-top: 15px;
        font-size: 14px;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-6e21560 *//* ==================================================
   OBSZARY WSPARCIA
================================================== */

.stm-areas,
.stm-areas *,
.stm-areas *::before,
.stm-areas *::after {
    box-sizing: border-box;
}

.stm-areas {
    --stm-navy: #102d63;
    position: relative;
    width: 100%;
    margin: 0;
    padding: 54px 18px 56px;
    overflow: hidden;
    background: #f8f5f0;
    font-family: Arial, Helvetica, sans-serif;
}


/* ==================================================
   TYTUŁ SEKCJI
================================================== */

.stm-areas__header {
    position: relative;
    z-index: 2;
    max-width: 850px;
    margin: 0 auto 38px;
    text-align: center;
}

.stm-areas__eyebrow {
    display: block;
    margin-bottom: 10px;
    color: #23aaa6;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 1.6px;
    text-transform: uppercase;
}

.stm-areas__title {
    margin: 0;
    color: var(--stm-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(42px, 4.7vw, 68px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -1.3px;
}

.stm-areas__title-decor {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    margin-top: 17px;
    color: #ef929d;
}

.stm-areas__title-decor span {
    display: block;
    width: 58px;
    height: 1px;
    background: #dbcab8;
}

.stm-areas__title-decor svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linejoin: round;
}


/* ==================================================
   POJEDYNCZY BLOK
================================================== */

.stm-area {
    --area-accent: #b89f7f;
    --area-bg: #fbf5ec;

    position: relative;
    display: grid;
    grid-template-columns:
        minmax(440px, 0.96fr)
        minmax(420px, 1.04fr);
    align-items: center;
    gap: 38px;
    width: 100%;
    max-width: 1460px;
    min-height: 310px;
    margin: 0 auto 14px;
    padding: 20px 54px 20px 28px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 96% 12%,
            color-mix(in srgb, var(--area-accent) 13%, transparent),
            transparent 24%
        ),
        linear-gradient(
            110deg,
            var(--area-bg),
            #fffdfa 66%
        );
    border: 1px solid
        color-mix(in srgb, var(--area-accent) 18%, #e7ddd2);
    border-radius: 30px;
}

.stm-area::before,
.stm-area::after {
    content: "";
    position: absolute;
    pointer-events: none;
}

.stm-area::before {
    right: -48px;
    bottom: -62px;
    width: 170px;
    height: 220px;
    border-radius: 55% 45% 0 60%;
    background:
        color-mix(in srgb, var(--area-accent) 10%, transparent);
    transform: rotate(18deg);
}

.stm-area::after {
    top: 28px;
    right: 32px;
    width: 44px;
    height: 78px;
    opacity: 0.42;
    background:
        radial-gradient(
            circle,
            var(--area-accent) 0 2px,
            transparent 2.6px
        )
        0 0 / 14px 14px;
}

.stm-area--reverse .stm-area__media {
    order: 2;
}

.stm-area--reverse .stm-area__content {
    order: 1;
}


/* ==================================================
   WARIANTY KOLORYSTYCZNE
================================================== */

.stm-area--peach {
    --area-accent: #d99b82;
    --area-bg: #fff1e9;
}

.stm-area--sand {
    --area-accent: #ad8d65;
    --area-bg: #fcf5eb;
}

.stm-area--pink {
    --area-accent: #f27f96;
    --area-bg: #fff2f4;
}

.stm-area--blue {
    --area-accent: #5d94e8;
    --area-bg: #f0f6ff;
}

.stm-area--coral {
    --area-accent: #f47779;
    --area-bg: #fff1f1;
}

.stm-area--green {
    --area-accent: #82bc4d;
    --area-bg: #f3f9ed;
}

.stm-area--sky {
    --area-accent: #6b9fe6;
    --area-bg: #f0f5ff;
}

.stm-area--lavender {
    --area-accent: #8b75df;
    --area-bg: #f6f2ff;
}

.stm-area--mint {
    --area-accent: #76b95f;
    --area-bg: #f2f9ef;
}


/* ==================================================
   ZDJĘCIA
================================================== */

.stm-area__media {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    min-width: 0;
}

.stm-area__photo {
    position: relative;
    display: block;
    width: 100%;
    height: 260px;
    margin: 0;
    overflow: hidden;
    background: #ffffff;
    border: 5px solid rgba(255, 255, 255, 0.9);
    border-radius: 15px;
    box-shadow: 0 7px 20px rgba(25, 44, 79, 0.07);
}

.stm-area__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.35s ease;
}

.stm-area:hover .stm-area__photo img {
    transform: scale(1.025);
}


/* INDYWIDUALNE KADROWANIE ZDJĘĆ */

.stm-area--peach .stm-area__photo:first-child img {
    object-position: center 46%;
}

.stm-area--peach .stm-area__photo:last-child img {
    object-position: center 42%;
}

.stm-area--sand .stm-area__photo:first-child img {
    object-position: center 42%;
}

.stm-area--sand .stm-area__photo:last-child img {
    object-position: center 40%;
}

.stm-area--pink .stm-area__photo img {
    object-position: center 38%;
}

.stm-area--blue .stm-area__photo:first-child img {
    object-position: center 42%;
}

.stm-area--blue .stm-area__photo:last-child img {
    object-position: center 48%;
}

.stm-area--coral .stm-area__photo img {
    object-position: center 44%;
}

.stm-area--green .stm-area__photo:first-child img {
    object-position: center 34%;
}

.stm-area--green .stm-area__photo:last-child img {
    object-position: center 43%;
}

.stm-area--sky .stm-area__photo img {
    object-position: center 42%;
}

.stm-area--lavender .stm-area__photo img {
    object-position: center 35%;
}

.stm-area--mint .stm-area__photo:first-child img {
    object-position: center 46%;
}

.stm-area--mint .stm-area__photo:last-child img {
    object-position: center 46%;
}


/* ==================================================
   TREŚĆ
================================================== */

.stm-area__content {
    position: relative;
    z-index: 2;
    max-width: 610px;
}

.stm-area__content h2 {
    margin: 0;
    color: var(--stm-navy);
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(30px, 2.6vw, 43px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.65px;
}

.stm-area__content p {
    max-width: 590px;
    margin: 15px 0 0;
    color: #3f485a;
    font-size: 15px;
    line-height: 1.62;
}


/* ==================================================
   KORZYŚCI
================================================== */

.stm-area__benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 18px 34px;
    margin-top: 24px;
}

.stm-area__benefit {
    display: grid;
    grid-template-columns: 48px auto;
    align-items: center;
    gap: 11px;
    min-width: 205px;
    color: #152b55;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
}

.stm-area__benefit-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    color: var(--area-accent);
    background:
        color-mix(in srgb, var(--area-accent) 13%, #ffffff);
    border-radius: 50%;
}

.stm-area__benefit-icon svg {
    width: 26px;
    height: 26px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==================================================
   MNIEJSZE MONITORY
================================================== */

@media (max-width: 1200px) {

    .stm-area {
        grid-template-columns:
            minmax(380px, 0.95fr)
            minmax(370px, 1.05fr);
        gap: 28px;
        min-height: 285px;
        padding: 18px 36px 18px 22px;
    }

    .stm-area__photo {
        height: 225px;
    }

    .stm-area__content h2 {
        font-size: clamp(27px, 2.6vw, 36px);
    }

    .stm-area__content p {
        font-size: 14px;
    }

    .stm-area__benefits {
        gap: 15px 24px;
        margin-top: 19px;
    }

    .stm-area__benefit {
        min-width: 180px;
        font-size: 12px;
    }
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 920px) {

    .stm-areas {
        padding: 42px 14px 38px;
    }

    .stm-areas__header {
        margin-bottom: 29px;
    }

    .stm-areas__title {
        font-size: 46px;
    }

    .stm-area,
    .stm-area--reverse {
        grid-template-columns: 1fr;
        gap: 24px;
        padding: 22px;
        border-radius: 24px;
    }

    .stm-area .stm-area__media,
    .stm-area .stm-area__content,
    .stm-area--reverse .stm-area__media,
    .stm-area--reverse .stm-area__content {
        order: initial;
    }

    .stm-area__content {
        max-width: 100%;
    }

    .stm-area__photo {
        height: 275px;
    }
}


/* ==================================================
   TELEFON
================================================== */

@media (max-width: 600px) {

    .stm-areas {
        padding: 34px 10px 30px;
    }

    .stm-areas__header {
        margin-bottom: 24px;
    }

    .stm-areas__eyebrow {
        font-size: 10px;
    }

    .stm-areas__title {
        font-size: 36px;
        line-height: 1.03;
    }

    .stm-areas__title-decor {
        margin-top: 13px;
    }

    .stm-area {
        gap: 17px;
        margin-bottom: 10px;
        padding: 14px;
        border-radius: 19px;
    }

    .stm-area::after {
        display: none;
    }

    .stm-area__media {
        gap: 8px;
    }

    .stm-area__photo {
        height: 185px;
        border-width: 3px;
        border-radius: 11px;
    }

    .stm-area__content h2 {
        font-size: 27px;
    }

    .stm-area__content p {
        margin-top: 11px;
        font-size: 13px;
        line-height: 1.55;
    }

    .stm-area__benefits {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 12px 8px;
        margin-top: 17px;
    }

    .stm-area__benefit {
        grid-template-columns: 38px auto;
        gap: 8px;
        min-width: 0;
        font-size: 10.5px;
    }

    .stm-area__benefit-icon {
        width: 38px;
        height: 38px;
    }

    .stm-area__benefit-icon svg {
        width: 21px;
        height: 21px;
    }
}


/* ==================================================
   BARDZO MAŁE TELEFONY
================================================== */

@media (max-width: 420px) {

    .stm-areas__title {
        font-size: 32px;
    }

    .stm-area__photo {
        height: 155px;
    }

    .stm-area__content h2 {
        font-size: 24px;
    }

    .stm-area__benefits {
        grid-template-columns: 1fr;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-88368ad *//* ==================================================
   OPINIE GOOGLE – TAK O NAS MÓWIĄ
================================================== */

.stm-reviews,
.stm-reviews *,
.stm-reviews *::before,
.stm-reviews *::after {
    box-sizing: border-box;
}

.stm-reviews {
    position: relative;
    width: 100%;
    margin: 0;
    padding: 62px 22px 72px;
    overflow: hidden;
    background: #f8f5f0;
    font-family: Arial, Helvetica, sans-serif;
}

.stm-reviews__inner {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
}


/* ==================================================
   NAGŁÓWEK
================================================== */

.stm-reviews__heading {
    max-width: 900px;
    margin: 0 auto 38px;
    text-align: center;
}

.stm-reviews__eyebrow {
    display: block;
    margin-bottom: 11px;
    color: #d48f76;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

.stm-reviews__title {
    margin: 0;
    color: #102d63;
    font-family: Georgia, "Times New Roman", serif;
    font-size: clamp(44px, 5vw, 70px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -1.5px;
}

.stm-reviews__decor {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    margin-top: 18px;
}

.stm-reviews__decor span {
    display: block;
    width: 64px;
    height: 4px;
    background: #df9479;
    border-radius: 10px;
}

.stm-reviews__decor i {
    display: block;
    width: 8px;
    height: 8px;
    background: #df9479;
    border-radius: 50%;
}

.stm-reviews__subtitle {
    margin: 28px 0 0;
    color: #3f4859;
    font-size: 17px;
    line-height: 1.65;
}


/* ==================================================
   MIEJSCE NA OPINIE GOOGLE
================================================== */

.stm-reviews__widget {
    position: relative;
    z-index: 2;
    width: 100%;
    min-height: 220px;
    margin: 0 auto;
}

/*
Jeżeli wtyczka Google dodaje własny kontener,
możesz ograniczyć jego szerokość:

.stm-reviews__widget > div {
    width: 100%;
}
*/


/* ==================================================
   OZDOBNE KROPKI
================================================== */

.stm-reviews__dots {
    position: absolute;
    top: 48px;
    right: 72px;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, 7px);
    gap: 11px;
    opacity: 0.65;
}

.stm-reviews__dots span {
    display: block;
    width: 7px;
    height: 7px;
    background: #db987f;
    border-radius: 50%;
}


/* ==================================================
   OZDOBNE KSZTAŁTY
================================================== */

.stm-reviews__shape {
    position: absolute;
    z-index: 0;
    pointer-events: none;
}

.stm-reviews__shape--left {
    bottom: -120px;
    left: -85px;
    width: 240px;
    height: 260px;
    background: rgba(221, 199, 175, 0.22);
    border-radius: 48% 52% 42% 58%;
    transform: rotate(18deg);
}

.stm-reviews__shape--right {
    right: -90px;
    bottom: -130px;
    width: 260px;
    height: 280px;
    background: rgba(221, 199, 175, 0.2);
    border-radius: 55% 45% 58% 42%;
    transform: rotate(-16deg);
}


/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .stm-reviews {
        padding: 50px 18px 58px;
    }

    .stm-reviews__heading {
        margin-bottom: 30px;
    }

    .stm-reviews__subtitle {
        margin-top: 22px;
        font-size: 15px;
    }

    .stm-reviews__dots {
        top: 32px;
        right: 30px;
        gap: 8px;
    }

    .stm-reviews__dots span {
        width: 6px;
        height: 6px;
    }
}


/* ==================================================
   TELEFON
================================================== */

@media (max-width: 600px) {

    .stm-reviews {
        padding: 38px 14px 44px;
    }

    .stm-reviews__heading {
        margin-bottom: 24px;
    }

    .stm-reviews__eyebrow {
        margin-bottom: 8px;
        font-size: 10px;
        letter-spacing: 1.2px;
    }

    .stm-reviews__title {
        font-size: 38px;
        line-height: 1.03;
        letter-spacing: -0.8px;
    }

    .stm-reviews__decor {
        margin-top: 13px;
    }

    .stm-reviews__decor span {
        width: 48px;
        height: 3px;
    }

    .stm-reviews__decor i {
        width: 6px;
        height: 6px;
    }

    .stm-reviews__subtitle {
        margin-top: 18px;
        font-size: 13px;
        line-height: 1.6;
    }

    .stm-reviews__subtitle br {
        display: none;
    }

    .stm-reviews__widget {
        min-height: 180px;
    }

    .stm-reviews__dots {
        display: none;
    }

    .stm-reviews__shape--left,
    .stm-reviews__shape--right {
        width: 170px;
        height: 180px;
    }
}/* End custom CSS */