.sp-scroll-up {
    right: 20px;
    bottom: 20px;
}

.rzutyszer {
    width: 150px
}
.highlight {
    color: white;
    font-weight: 700!important;
    border: 3px solid #890000;
}
.sppb-btn-tabela {
    display: inline-block;
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    border: 1px solid transparent;
    padding: 8px 12px;
    background: #214768;
    color: white;
    line-height: 1.25;
    border-radius: 4px;
    transition: all .15s ease-in-out;
}
.nav-link {
    color: #214768!important;
    font-weight: 600!important;
}

.sppb-section.header .sppb-addon-single-image-container {
    width: 100%;
}

.sppb-section.header .sppb-addon-single-image-container img {
    width: 100%;
}

.sppb-section.boxes .sppb-column {

    background-color: #e1e1e1;
}

.sppb-section.boxes .sppb-column .sppb-addon-title {
    margin: 0;
}

.sppb-section.boxes .sppb-column .sppb-addon-title a {
    color: inherit;
}

.sppb-section.boxes .sppb-column .sppb-addon-text {
    display: none;
}

/* Homepage articles */

.sppb-addon-articles .sppb-addon-article {

    background: rgb(240 240 240)!important;
    height: 100%;
    margin-bottom: 0;
}

.sppb-addon-articles .sppb-row > div {

    padding-bottom: 30px;
}

.sppb-addon-articles .sppb-addon-article, .sppb-article-info-wrap h3 a:hover {
    color: #214768!important;
}

.sppb-addon-articles .sppb-addon-article .sppb-article-info-wrap h3 {
    margin: 0;
}

.sppb-addon-articles .sppb-addon-article .sppb-article-info-wrap h3 a {
    color: inherit;
}


.sppb-addon-articles .sppb-addon-article .sppb-article-info-wrap {
    position: relative!important;
    padding: 15px;
}

.sppb-addon-articles .sppb-addon-article .sppb-article-info-wrap .sppb-article-introtext {
    margin-top: 10px;
}

.article-image img {
    width: 100%;
    height: auto;
}


.article-details {
    margin-top: 60px;
}

@media only screen and (min-width: 992px) {

    .article-details {
        margin-top: 80px;
    }
}

.article-image + .article-details {
    margin-top: 0;
}

.article-details .article-header .article-can-edit  {
    display: none !important;
}

.article-details .article-ratings-social-share  {
    display: none !important;
}

.nav-link.active {
    color: #ffffff ! IMPORTANT;
    background-color: #214768 ! IMPORTANT;
    font-weight: 600
}
.nav-tabs {
    font-size: 14px!IMPORTANT;
    font-weight: bolder!IMPORTANT;
    line-height: 1.42857143!IMPORTANT;
    padding: 12px 15px! IMPORTANT;
    background: #f6fafb! IMPORTANT;
    color: #4b5981! IMPORTANT;
    border: 1px solid #e8eff1! IMPORTANT;
    border-radius: 4px 4px 0 0! IMPORTANT;
}
.wyrownanie {
    text-align: center;
    vertical-align: middle;
}

.tabela-dane td.promocja {
    color: red;
}

.segment-fotka {
    text-align: center;
}
.sppb-addon-content {

}
.sppb-addon-title {

}

#sp-menu {
    display: flex;
}

h1.sppb-addon-title {

    color: #1f4262;
    font-weight: 700;
}

h2.sppb-addon-title {

    color: #1f4262;
    font-size: 1.4rem !important;
}

#sp-footer #sp-footer1 .sp-module {
    float: inherit!important;
}
canvas {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none;
}
.sppb-addon-table-main td {
    color: #214768!important;
}
.info-tooltip {
    position: absolute;
    color: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    display: none;
    width: 180px;
    border: 2px solid #034a04;
    z-index: 100;
    transform: translate(-50%, -50%);
    transition: opacity 0.3s ease;
    /* Efekt płynnego wygaszania */
}
.info-tooltip h3 {
    color: white!important
}
.REZERWACJA {
    text-align: center;
    margin: 0px;
    background-color: #2747bb!important;
    color: white!important;
    padding: 10px;
}
.WOLNE, .zielone {
    text-align: center;
    margin: 0px;
    padding: 10px;
    background-color: #028304!important;
    color: white!important;
}
.SPRZEDANE {
    text-align: center;
    margin: 0px;
    padding: 10px;
    background-color: #ff0000 !important;
    color: white!important;
}
.tabela-dane {
    text-align: center
}
.tabela-mieszkania {
    background: #214768 !important;
    color: white !important;
    text-align: center;
}
td[data-th="Typ"] {
    position: relative;
    max-height: 100px;
}
.tooltip {
    position: absolute;
    background-color: #333;
    color: #fff;
    padding: 5px;
    border-radius: 5px;
    z-index: 10;
    display: none;
}
td[data-th="Typ"], td[data-th="Etap"], td[data-th="Powierzchnia"], td[data-th="Ogród"] {}
.sppb-nav-modern>li.active>a {
    color: #ffffff!IMPORTANT;
    background-color: #214768!IMPORTANT;
}
img {
    display: inline!important;
}
.sp-megamenu-wrapper>ul>li {
    flex: none!important;
}
.offcanvas-menu .offcanvas-inner .sp-module ul>li a, {
    color: #336fa2!important
}
.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active>a {
    color: #214768!important;
    font-weight: 600;
}
.area-selected {
    opacity: 0.5;
    transition: opacity 0.3s ease;
}
.fotka-realizacje {
    width: 100%;
}
.szczegoly {
    color: #214768;
    background: #d9d9d9;
    padding: 10px 0px 10px 10px;
    display: flex;
}
.locals span, .implementation span {
    background: #214768;
    color: white;
    font-weight: 700;
    padding: 5px;
    display: inline-block;
    margin: 5px;
}
.przycisk {
    padding: 15px;
    font-size: 40px;
    border-right: 1px solid #214768;
}
.nazwa {
    font-size: 18px;
    padding-left: 10px;
}
.przycisk button {
    background: none;
    border: none;
    color: #214768;
}
.sp-page-title {
    padding: 0!important;
}

.menu-toggler:after {
    content: "";
    display: block;
    margin-left: 15px;
    top: 50%;
    font-family: "font awesome 5 free";
    font-weight: 900;
}
.offcanvas-menu .offcanvas-inner .sp-module ul>li a, .offcanvas-menu .offcanvas-inner .sp-module ul>li span {
    display: inline-table!important;
}
.sp-megamenu-wrapper>ul>li:not(:last-child)>a, .sp-megamenu-wrapper>ul {
    border: none!important;
}
.container1 {
    max-width: 1320px!important;
    width: 100%!important;
    margin-right: auto!important;
    margin-left: auto!important;
}
#sp-header #sp-logo {
    position: relative!important;
    border-bottom: none!important;
}

#sp-header #sp-logo .logo-image {
    height: 40px;
    position: relative;
    display: block;
}

/*#sp-header #sp-logo:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: -40px;
    z-index: 10;
    width: 87px;
    height: 93px;
    background-image: url(/templates/indigo/images/czapka-mikolaja.png);
    background-size: contain;
    background-color: transparent;
    background-repeat: no-repeat;
}
*/
ul {
/*    list-style-type: none;*/
}
td:before {
    display: flex!important;
    align-items: center;
    justify-content: center;
    background: #214768!important;
    padding: 10px
}
.sppb-addon-table-main td {

    margin-bottom: 5px!important;
}
.sppb-addon-table-main th {
    background: #214768 !important;
}
.ptakkicheck {
    list-style-type: none;
    padding: 0;
}
.ptakkicheck li {
    display: inline-flex;
    margin-bottom: .5rem;
}
.ptakkicheck li::before {
    content: '✓';
    margin: -10px 13px;
    font-size: 30px;
    color: #214768;
}
.sp-megamenu-wrapper>ul>li>a {
    letter-spacing: 0.49px!important;
}
.view-article #sp-main-body .container .article-details .article-header {
    position: relative;
    text-align: center;
    background-size: cover !important;
    background-position: center center !important;
    margin-bottom: 50px;
    z-index: 1;
}

div[itemprop="articleBody"] {
    padding: 50px 0;
    margin: 0 auto;
/*    margin-top: -140px;*/
    position: relative;
    z-index: 2;
    background: white;

}
h1[itemprop="headline"] {
    text-align: center;
    color: #1f4262;
    font-weight: 700;
}
.sppb-btn-primary {
    /*color: #214768 !important;
    text-decoration: underline;
    background-image: none!important;
    background-color: none!important;
    height: 40px!important;
    font-size: 13px!important;
    letter-spacing: 0.3px!important;*/
}
body:not(.home-page) #sp-title {
    min-height: 0 !important;
}

#offcanvas-toggler > .fa {
    color: #214768;

}

.menumenu-stopka {
    text-transform: uppercase;
    display: ruby-text;
    text-align: center;
    font-size: 17px;
}
.menumenu-stopka li+li:before {
    content: "|";
}
#sp-footer, #sp-footer2 {
    background-color: #214768!important;
    color: white;
}
#sp-footer a, #sp-footer2 a {
    color: white;
}
.tags {
    padding: 13px;
    color: white;
    clip-path: polygon(180% 135%, 100% 0%, 0% 0%);
    background-color: red;
    border-left: 91px solid transparent;
    border-right: 66px solid transparent;
    border-bottom: 168px solid red;
    position: absolute;
    top: 0;
    right: 0;
    /* transform: rotate(45deg); */
    text-align: center;
    width: 100px;
}
.tags a, .tags a:hover {
    color: white!important
}
.sppb-carousel-extended-content-wrap {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    top: -59px;
    /* bottom: -28px; */
    left: 0;
    flex-direction: column;
    z-index: 1;
    padding: 20px;
    text-align: center;
    background-color: #e9e9e9;
}
.sp-megamenu-wrapper>ul>li>a {
    text-transform: uppercase;
    font-weight: 700;
    padding: 15px 10px;
    line-height: 1.2em;
    min-height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.25s ease-in-out;
}
.header-wrapper {
    position: relative!important;
    top: 0!important;
    left: 0!important;
    width: 100%!important;
    z-index: 999!important;
    height: 100px!important;
    box-shadow: 0px 0px 14px #b1b1b1;
    background-color: white;
}

#sp-header.header-sticky {
    position: fixed!important;
    z-index: 9999!important;
    background: rgba(33, 34, 63, 0.95)!important;
    padding-bottom: 0!important;

    transition: 0.3s!important;
}

#sp-header.header-sticky {
    background: white!important;
    box-shadow: 0px 0px 14px #b1b1b1;
}

#sp-header.header-sticky .logo {
    background-color: transparent;
}

#sp-header #sp-logo:after, #sp-header #sp-logo:before {
    background-color: rgb(255 255 255 / 0%)!important;
}
.sp-megamenu-parent>li.active>a, .sp-megamenu-parent>li>a:before, .sp-megamenu-parent>li>span:before {
    background-image: none!important;
    color: #214768!important;
}
.sp-megamenu-wrapper>ul>li>a {
    color: #214768!important
}

/* SAWI: */

.table-locals {

}

.table-locals tbody td.cena {
    width: 120px;
}

.table-locals tbody td.nr {

    width: 90px;
}

.table-locals tbody td.nr span {
    display: block;
}

.table-locals tbody td.cena.promocja {
    color: red;
}

#sp-header .logo {
    margin: 0;
    background-color: #214768;
    padding: 0 15px;
    height: 60px;
    transition: background-color 0.3s !important;
}

@media only screen and (max-width: 992px) {
    .szczegoly {
        text-align: center
    }
    .locals span {
        margin: 10px
    }
    #sp-menu ul {
        display: none!important
    }

    #sp-header {
        padding: 0px;
        height: 60px;

    }

    .view-article #sp-main-bod {
        margin-top: -60px;
    }

    #sp-header > .container > .row {
        justify-content: center;
    }

    #sp-header #sp-logo {
        padding: 0 50px;
        margin: 0;
    }

    #sp-header #sp-logo #offcanvas-toggler {
        position: absolute;
        left: 0;
        top: 10px;
        margin: 0;
        padding: 10px;

    }

    #sp-header #sp-logo #offcanvas-toggler:hover > .fa {
        color: inherit;
    }

    #sp-header #sp-logo:after {
        transform: scale(-1, 1);
        right: 19px;
        left: auto;
        top: -3px;
        width: 65px;
    }
}
@media only screen and (max-width: 767px) {



    .szczegoly {
        display: block;
        text-align: center;
        .locals {
            margin-bottom: 20px;
        }
        #sp-header {
            height: 94px!important;
        }
        #offcanvas-toggler {
            margin-top: 15px!important;
        }
    }
}

@media only screen and (max-width: 575px) {
    .sppb-nav-modern>li>a {
        min-width: 135px;
        font-size: 11px;
    }
    .czerwone, .wolne, .granatowe {
        padding: 10px;
    }
    .nav-tabs {
        font-size: 13px!IMPORTANT;
    }
    [role="presentation"] {
        margin: 0 auto;
    }
    .sppb-nav-modern>li {
        margin-right: 0px;
        margin-bottom: 3px;
    }
    .addon-root-text-block {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    td[data-th="Lokal nr"] {
        text-align: center;
        background-color: #214768!important
    }
    td[data-th="Typ"]::before, td[data-th="Powierzchnia"]::before, td[data-th="Etap"]::before, td[data-th="Ogród"]::before, td[data-th="Cena"]::before, td[data-th="Rzuty"]::before {
        color: black!important;
        background: none!important;
        display: block;
        width: 100%;
        /* Dostosuj szerokość zgodnie z potrzebami */
        height: 100%;
        /* Dostosuj wysokość zgodnie z potrzebami */
        top: 0;
        left: 0;
    }
    .sppb-btn-primary {
        padding: 0px 15px!important;
    }
    .bt-content {
        width: 100%
    }
    #sp-header {
        /*background-color: white;
        box-shadow: 0px 0px 4px black;*/
    }
    .sppb-addon-table-main tbody tr:nth-child(even) {
        background: #f8f6ff!important;
    }

    .sp-slider .sp-item .sppb-sp-slider-title {
        font-size: 30px !important;
    }

    .sp-slider .sp-nav-control  {
        left: 5px !important;
        right: 5px !important;
    }

    .sp-slider .sp-nav-control .nav-control {
        width: 35px !important;
        height: 35px !important;
        font-size: 0 !important;
    }

    .sp-slider .sp-nav-control .nav-control i {
        font-size: 20px !important;
        line-height: 35px !important;
    }

    /*


   #sp-header {
    height: 94px!important;}
  #offcanvas-toggler {
    margin-top: 15px!important;}
    #a12, #a11, #a21, #a22, #a31, #a32, #a41, #a42, #a51, #a52, #a61, #a62, #a71, #a72, #a81, #a82, #a91, #a92, #a101, #a102, #a111, #a112, #a121, #a122, #a131, #a132, #a141, #a142, #b11, #b12, #b21, #b22, #b31, #b32, #c11, #c12 { background-color: yellow;padding: 10px 0 10px 16px;}
 */
}


/*SAWI*/

.wizualizacja-map .promo {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    background-color: red;
    color: white;
    padding: 10px 20px;

    font-weight: 600;
    font-size: 1.3em;
    text-transform: uppercase;
/*    animation: pulse 1.5s infinite;*/
}

.wizualizacja-map .promo:after {
    content: '';
    position: absolute;
    top: 0;
    left: 100%;

    width: 0;
    height: 0;
    border-top: 1.3em solid transparent;
    border-bottom: 1.3em solid transparent;
    border-left: 10px solid red;
}

@keyframes pulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

.rotator {
    text-align: center;
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;

}

.rotator span {


/*    opacity: 0;*/
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
    max-width: 0;
    opacity: 0;
    transition: max-width 0.5s ease;
    transition: opacity 0.5s ease;

}

.rotator.rotator-1 span:nth-of-type(1),
.rotator.rotator-2 span:nth-of-type(2),
.rotator.rotator-3 span:nth-of-type(3),
.rotator.rotator-4 span:nth-of-type(4),
.rotator.rotator-5 span:nth-of-type(5) {
    white-space: initial;
    opacity: 1;
    max-width: 100%;
}

.sp-slider .rotator {
    text-transform: uppercase;
    font-weight: 600;
    padding: 10px 15px;
    max-width: 100vW;
    font-size: 0;
}

.sp-slider .rotator {
    text-align: center;
}

.sp-slider .rotator span {
    font-size: 13px;
    line-height: 1.2em;
}

@media only screen and (min-width: 992px) {
    .sp-slider .rotator span {
        font-size: 20px;
    }
}


@media only screen and (min-width: 992px) {

    #sp-header > .container > .row {
        justify-content: space-between;
        gap: 20px;
        flex-wrap: inherit;
    }


    #sp-header #sp-menu .menu-wrap {

        padding: 0 0 10px 0;
    }

    #sp-header .logo {

        padding: 0 15px;
        height: 95px;
    }

    #sp-header #sp-logo .logo-image {

        height: 60px;
    }
}

@media only screen and (min-width: 1200px) {
    .sp-megamenu-wrapper>ul>li>a {
        padding: 15px;
    }

    .sp-megamenu-wrapper>ul>li:first-child>a {
        padding-left: 0 !important;
    }

    .sp-megamenu-wrapper>ul>li:last-child>a {
        padding-right: 0 !important;
    }
}


