.elementor-621 .elementor-element.elementor-element-5a5a53a .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:110px;font-weight:700;text-transform:uppercase;line-height:1em;letter-spacing:0.6em;color:#edf2f5;}.elementor-621 .elementor-element.elementor-element-98cf04d{text-align:center;}.elementor-621 .elementor-element.elementor-element-925153d{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 15px) 0px;font-family:"Barlow Condensed", Sans-serif;font-size:14px;font-weight:500;line-height:1em;letter-spacing:0.4em;color:#838a93;}.elementor-621 .elementor-element.elementor-element-c0fd90b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-621 .elementor-element.elementor-element-c0fd90b .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:70px;font-weight:700;line-height:1.2em;color:#051b35;}.elementor-621 .elementor-element.elementor-element-5895d75{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-5895d75 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-77a9779{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-678f8ed{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-678f8ed .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-43b2603{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-c0c85b3{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-c0c85b3 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-9546e05{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-85b3100{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-85b3100 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-667aaaf{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-115e872{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-115e872 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-e540712{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-4e733ec{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-4e733ec .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-85a40a1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-38e527b{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-38e527b .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-f54c85b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-97528e0{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-97528e0 .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-9ba5455{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}.elementor-621 .elementor-element.elementor-element-73bdfad{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;text-align:center;}.elementor-621 .elementor-element.elementor-element-73bdfad .elementor-heading-title{font-family:"Barlow Condensed", Sans-serif;font-size:22px;font-weight:700;text-transform:uppercase;line-height:30px;color:#063a7a;}.elementor-621 .elementor-element.elementor-element-d915627{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;text-align:center;font-family:"Barlow Condensed", Sans-serif;font-size:20px;font-weight:400;line-height:34px;color:#838a93;}@media(min-width:768px){.elementor-621 .elementor-element.elementor-element-b81948b{width:33.333%;}.elementor-621 .elementor-element.elementor-element-aa0f635{width:33.333%;}.elementor-621 .elementor-element.elementor-element-612b66b{width:33.333%;}.elementor-621 .elementor-element.elementor-element-0061d76{width:33.333%;}.elementor-621 .elementor-element.elementor-element-eecf6d9{width:33.333%;}.elementor-621 .elementor-element.elementor-element-d06ae03{width:33.333%;}.elementor-621 .elementor-element.elementor-element-895af5f{width:33.333%;}.elementor-621 .elementor-element.elementor-element-12fe1fc{width:33.333%;}.elementor-621 .elementor-element.elementor-element-c3246a9{width:33.333%;}}/* Start custom CSS for section, class: .elementor-element-7e80c31 */.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget:not(:last-child) { --kit-widget-spacing: 0px; }
/* === odpowiednik .service-one z motywu scubo === */
/* sekcja nosi oryginalne klasy (.service-one, .block-title, .site-footer__fish-1 …),
   więc padding, animacje i typografia idą wprost z style.css motywu.
   Tutaj tylko to, czego motyw nie złapie, bo Elementor generuje inny HTML. */
/* .elementor-widget-image ma wbudowane text-align:center; gołe <img> motywu dziedziczą
   wyrównanie po rodzicu — bez tego dekoracje (rybki, drzewko) przesuwają się w poziomie */
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-image { text-align: inherit; }

/* kontenery wewnętrzne = .container motywu */
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-container > .elementor-container { width: 100%; padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; max-width: 100%; }
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-container > .elementor-container > .elementor-column > .elementor-widget-wrap { padding: 0; }
@media (min-width: 576px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-container > .elementor-container { max-width: 540px; } }
@media (min-width: 768px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-container > .elementor-container { max-width: 720px; } }
@media (min-width: 992px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-container > .elementor-container { max-width: 960px; } }
@media (min-width: 1200px) { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-container > .elementor-container { max-width: 1200px; } }
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-row > .elementor-container { width: 100%; padding-right: 0; padding-left: 0; margin-right: auto; margin-left: auto; max-width: 100%; }
@media (min-width: 576px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-row > .elementor-container { max-width: 540px; } }
@media (min-width: 768px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-row > .elementor-container { max-width: 720px; } }
@media (min-width: 992px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-row > .elementor-container { max-width: 960px; } }
@media (min-width: 1200px) { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-row > .elementor-container { max-width: 1200px; } }

/* blokiem zawierającym dla dekoracji ma być .service-one (jak w motywie), a nie
   kontener/kolumna Elementora — wszystkie trzy warstwy zdejmujemy z position:relative */
.elementor-621 .elementor-element.elementor-element-7e80c31 > .elementor-container,
.elementor-621 .elementor-element.elementor-element-7e80c31 > .elementor-container > .elementor-column,
.elementor-621 .elementor-element.elementor-element-7e80c31 > .elementor-container > .elementor-column > .elementor-widget-wrap { position: static; }

/* Elementor nadaje .elementor-widget-wrap > .elementor-element position:relative,
   co bije klasy motywu — dekoracjom trzeba przywrócić position:absolute. */
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-wrap > .contact-one__swimmer,
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-wrap > .site-footer__fish-1,
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-wrap > .site-footer__fish-3,
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-wrap > .site-footer__tree-2,
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-wrap > .service-one__floated-text { position: absolute; width: auto; }
/* pozycje (bottom/left/right/top) i animacje biorą się już z klas motywu */
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget-wrap > .service-one__floated-text { bottom: -12px; left: 50%; transform: translateX(-50%); text-align: center; }

/* .block-title > img — w Elementorze obrazek siedzi w .elementor-widget-container */
.elementor-621 .elementor-element.elementor-element-7e80c31 .block-title .elementor-widget-image img { display: block; margin-left: auto; margin-right: auto; }
/* text-editor dokłada własny wrapper; <p> w środku łapie już .block-title p motywu */
.elementor-621 .elementor-element.elementor-element-7e80c31 .block-title .elementor-widget-text-editor { color: inherit; }

/* wiersz kart = .row bootstrapa */
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-row > .elementor-container { display: flex; flex-wrap: wrap; align-items: stretch; }
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col { padding-right: 15px; padding-left: 15px; width: 100%; }
@media (min-width: 768px)  { .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col { width: 50%; } }
@media (min-width: 1200px) {
    .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col--3 { width: 25%; }
    .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col--4 { width: 33.333333%; }
    .elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col--6 { width: 50%; }
}

/* .service-one__single — motyw stylizuje DIV wewnątrz kolumny; jego odpowiednikiem
   jest .elementor-widget-wrap, do którego Elementor nie pozwala dopiąć klasy. */
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap {
    display: block;
    /* .service-one__single w motywie to zwykły div w kolumnie bootstrapa — ma własną
       wysokość. Tu rolę karty gra .elementor-widget-wrap, a kolumna Elementora rozciąga
       go (align-items: stretch) do wysokości najwyższej karty w wierszu. Efekt: białe
       tło karty zasłania dekoracje pod spodem. align-self: flex-start przywraca auto. */
    align-self: flex-start;
    margin-bottom: 30px;
    text-align: center;
    position: relative;
    padding: 30px;
    padding-top: 40px;
    border: 1px solid #f9f9f9;
    background: #fff;
    box-shadow: 0 10px 30px #eaf2f1;
    transition: all 500ms ease;
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap::before,
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap::after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    transform: scale(0);
    transform-origin: left top;
    top: 0;
    left: 0;
    transition: all 500ms linear;
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap::before {
    transform: scale(0, 1);
    transform-origin: bottom center;
    border-top: 8px solid var(--thm-primary);
    border-bottom: 8px solid var(--thm-primary);
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap::after {
    transform: scale(1, 0);
    transform-origin: left center;
    border-left: 8px solid var(--thm-primary);
    border-right: 8px solid var(--thm-primary);
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap:hover::before,
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap:hover::after { transform: scale(1, 1); }

.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col i {
    position: relative;
    font-size: 64px;
    color: var(--thm-base);
    display: inline-block;
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col i::after {
    content: '';
    width: 61px;
    height: 61px;
    border: 8px solid var(--thm-primary);
    opacity: 0.2;
    position: absolute;
    left: -32px;
    top: -20px;
    transform: rotate(0);
    transition: all 500ms ease;
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap:hover i::after {
    border-color: var(--thm-base);
    transform: rotate(360deg);
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col h3 {
    margin: 0;
    font-family: var(--thm-font);
    text-transform: uppercase;
    font-size: 22px;
    line-height: 30px;
    font-weight: bold;
    color: #063a7a;
    margin-top: 15px;
    margin-bottom: 10px;
}
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col h3 a { color: inherit; transition: all 500ms ease; }
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col h3 a:hover { color: var(--thm-primary); }
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col p { text-align: center; padding-bottom: 0; margin-bottom: 0; }
/* Elementor rozstawia widgety o 20 px — w oryginale odstępy dają marginesy h3/p */
.elementor-621 .elementor-element.elementor-element-7e80c31 .elementor-widget:not(:last-child) { margin-bottom: 0; }
.elementor-621 .elementor-element.elementor-element-7e80c31 .m16-svc-col > .elementor-widget-wrap > .elementor-element { width: 100%; }

/* responsywność 1:1 z responsive.css motywu (breakpointy bootstrapa, nie Elementora) */
@media (max-width: 480px) { .elementor-621 .elementor-element.elementor-element-7e80c31 .service-one__floated-text .elementor-heading-title { font-size: 50px; } }
@media (max-width: 375px) { .elementor-621 .elementor-element.elementor-element-7e80c31 .block-title h3, .elementor-621 .elementor-element.elementor-element-7e80c31 .block-title .elementor-heading-title { font-size: 45px; } }/* End custom CSS */