.elementor-514 .elementor-element.elementor-element-0b69dfc{--display:flex;--min-height:600px;--justify-content:flex-end;}.elementor-514 .elementor-element.elementor-element-0b69dfc:not(.elementor-motion-effects-element-type-background), .elementor-514 .elementor-element.elementor-element-0b69dfc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-afc2262 );}.elementor-514 .elementor-element.elementor-element-ebd76d7{--display:flex;--gap:12px 12px;--row-gap:12px;--column-gap:12px;}.elementor-514 .elementor-element.elementor-element-c5e8c87{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:14px;--margin-left:0px;--margin-right:0px;}.elementor-514 .elementor-element.elementor-element-6596769 .elementor-heading-title{font-family:"Archivo", Sans-serif;font-size:clamp(2.7rem, 7vw, 6rem);font-weight:500;color:var( --e-global-color-2efef0c );}.elementor-514 .elementor-element.elementor-element-fd45b99{--spacer-size:24px;}.elementor-514 .elementor-element.elementor-element-74696fa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-514 .elementor-element.elementor-element-74696fa:not(.elementor-motion-effects-element-type-background), .elementor-514 .elementor-element.elementor-element-74696fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ECEEEE;}.elementor-514 .elementor-element.elementor-element-dd3e6d9{--display:flex;--gap:32px 32px;--row-gap:32px;--column-gap:32px;}@media(min-width:768px){.elementor-514 .elementor-element.elementor-element-ebd76d7{--width:50rem;}}/* Start custom CSS for heading, class: .elementor-element-6596769 *//* PROJECT HERO TITLE */

.project-title-hero .elementor-heading-title {
    font-size: clamp(60px, 6vw, 96px) !important;
    line-height: 0.95 !important;
    letter-spacing: -0.035em;
    text-wrap: balance;
}

/* Średnio długi tytuł */
.project-title-hero.title-medium .elementor-heading-title {
    font-size: clamp(52px, 5vw, 80px) !important;
}

/* Długi tytuł */
.project-title-hero.title-long .elementor-heading-title {
    font-size: clamp(44px, 4.2vw, 68px) !important;
}


/* TABLET */
@media (max-width: 1024px) {

    .project-title-hero .elementor-heading-title {
        font-size: clamp(48px, 7vw, 72px) !important;
    }

    .project-title-hero.title-medium .elementor-heading-title {
        font-size: clamp(44px, 6.2vw, 64px) !important;
    }

    .project-title-hero.title-long .elementor-heading-title {
        font-size: clamp(38px, 5.5vw, 56px) !important;
    }

}


/* MOBILE */
@media (max-width: 767px) {

    .project-title-hero .elementor-heading-title {
        font-size: clamp(40px, 12vw, 56px) !important;
        line-height: 0.98 !important;
    }

    .project-title-hero.title-medium .elementor-heading-title {
        font-size: clamp(36px, 10.5vw, 48px) !important;
    }

    .project-title-hero.title-long .elementor-heading-title {
        font-size: clamp(31px, 9vw, 42px) !important;
    }

}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0b69dfc */.elementor-514 .elementor-element.elementor-element-0b69dfc {
    position: relative;
    overflow: hidden;
    z-index: 0;
    isolation: isolate;

    background:
        /* siatka pozioma */
        linear-gradient(
            rgba(255,255,255,0.017) 1px,
            transparent 1px
        ),

        /* siatka pionowa */
        linear-gradient(
            90deg,
            rgba(255,255,255,0.017) 1px,
            transparent 1px
        ),

        /* tło bazowe */
        linear-gradient(
            100deg,
            #0b141c 0%,
            #0d1720 45%,
            #111b24 100%
        ) !important;

    background-size:
        92px 92px,
        92px 92px,
        100% 100% !important;
}


/* DWA KOŁA */
.elementor-514 .elementor-element.elementor-element-0b69dfc::before,
.elementor-514 .elementor-element.elementor-element-0b69dfc::after {
    content: "";
    position: absolute;

    width: 900px;
    height: 900px;

    border: 110px solid rgba(255,255,255,0.015);
    border-radius: 50%;
    box-sizing: border-box;

    pointer-events: none;
    z-index: -1;

    will-change: transform;
}


/* LEWE KOŁO */
.elementor-514 .elementor-element.elementor-element-0b69dfc::before {
    left: 22%;
    bottom: -500px;

    animation: hero-circle-left 10s ease-in-out infinite alternate;
}


/* PRAWE KOŁO */
.elementor-514 .elementor-element.elementor-element-0b69dfc::after {
    left: 58%;
    bottom: -520px;

    animation: hero-circle-right 12s ease-in-out infinite alternate;
}


/* ANIMACJA LEWEGO KOŁA */
@keyframes hero-circle-left {

    0% {
        transform:
            translate3d(-50px, 20px, 0)
            scale(1);
    }

    50% {
        transform:
            translate3d(30px, -40px, 0)
            scale(1.04);
    }

    100% {
        transform:
            translate3d(70px, 25px, 0)
            scale(1.01);
    }

}


/* ANIMACJA PRAWEGO KOŁA */
@keyframes hero-circle-right {

    0% {
        transform:
            translate3d(55px, 25px, 0)
            scale(1.02);
    }

    50% {
        transform:
            translate3d(-35px, -35px, 0)
            scale(1);
    }

    100% {
        transform:
            translate3d(-75px, 18px, 0)
            scale(1.04);
    }

}


/* accessibility */
@media (prefers-reduced-motion: reduce) {

    .elementor-514 .elementor-element.elementor-element-0b69dfc::before,
    .elementor-514 .elementor-element.elementor-element-0b69dfc::after {
        animation: none;
    }

}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-c9d5580 *//* POLITYKA PRYWATNOŚCI – OTECH */

.elementor-514 .elementor-element.elementor-element-c9d5580 {
    font-family: inherit;
    font-size: 16px;
    line-height: 1.75;
    color: #4b5563;
}

/* Nagłówki paragrafów */
.elementor-514 .elementor-element.elementor-element-c9d5580 h2 {
    font-size: 24px !important;
    font-weight: 600;
    line-height: 1.35;
    color: #181818;
    margin: 32px 0 12px;
    letter-spacing: -0.4px;
}

/* Pierwszy nagłówek */
.elementor-514 .elementor-element.elementor-element-c9d5580 h2:first-child {
    margin-top: 0;
}

/* Zwykłe akapity */
.elementor-514 .elementor-element.elementor-element-c9d5580 p {
    font-size: 16px;
    line-height: 1.75;
    margin: 0 0 16px;
    color: #4b5563;
}

/* Listy */
.elementor-514 .elementor-element.elementor-element-c9d5580 ul,
.elementor-514 .elementor-element.elementor-element-c9d5580 ol {
    margin: 8px 0 24px;
    padding-left: 26px;
}

/* Elementy list */
.elementor-514 .elementor-element.elementor-element-c9d5580 li {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 8px;
    padding-left: 3px;
}

/* Pogrubienia */
.elementor-514 .elementor-element.elementor-element-c9d5580 strong,
.elementor-514 .elementor-element.elementor-element-c9d5580 b {
    font-weight: 600;
    color: #262626;
}

/* Linki */
.elementor-514 .elementor-element.elementor-element-c9d5580 a {
    color: #c93c36;
    text-decoration: none;
    transition: color 0.2s ease;
}

.elementor-514 .elementor-element.elementor-element-c9d5580 a:hover {
    color: #a52e29;
    text-decoration: underline;
}

/* Ostatni element bez dolnego odstępu */
.elementor-514 .elementor-element.elementor-element-c9d5580 > :last-child {
    margin-bottom: 0;
}

/* TABLET */
@media (max-width: 1024px) {
    .elementor-514 .elementor-element.elementor-element-c9d5580 h2 {
        font-size: 22px !important;
        margin-top: 28px;
    }
}

/* MOBILE */
@media (max-width: 767px) {
    .elementor-514 .elementor-element.elementor-element-c9d5580 {
        font-size: 16px;
        line-height: 1.65;
    }

    .elementor-514 .elementor-element.elementor-element-c9d5580 h2 {
        font-size: 20px !important;
        line-height: 1.35;
        margin: 26px 0 10px;
    }

    .elementor-514 .elementor-element.elementor-element-c9d5580 p,
    .elementor-514 .elementor-element.elementor-element-c9d5580 li {
        font-size: 16px;
        line-height: 1.65;
    }

    .elementor-514 .elementor-element.elementor-element-c9d5580 ul,
    .elementor-514 .elementor-element.elementor-element-c9d5580 ol {
        padding-left: 22px;
        margin-bottom: 20px;
    }
}/* End custom CSS */