:root {
    --kwcta: #ffe000;
}
.kwCtaColor {
    color: var(--kwcta);
}
.kwCtaPrimary {
    color: var(--kwbodycolor);
}

/* barra promo */
.kwRowAbsPromo {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 30px;
    background: rgba(0,0,0,.3);
    z-index: 1;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: var(--kwmarginsmall);
    text-transform: uppercase;
    font-weight: 700;
    font-size: 0.8rem;
}

/* header */
#sp-header .container {
    border: none;
}

/* atf */
.kwAtfSection {
    position: relative;
}
.kwImgBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.kwLogoLanding {
    width: 140px;
    margin: auto;
}
.kwAtfContent .kwBigText {
    font-size: 1.75em;
    margin-top: var(--kwmarginmedium);
}
.kwAtfContent .kw2Cta {
    justify-content: center;
}
.kwAtfSection {
    clip-path: polygon(0% 0%,100% 0%,100% calc(100% - 16.15vw),38.35% calc(100% - 0.55vw),38.35% calc(100% - 0.55vw),36.934% calc(100% - 0.248vw),35.508% calc(100% - 0.063vw),34.081% calc(100% + 0.008vw),32.657% calc(100% - 0.036vw),31.244% calc(100% - 0.194vw),29.847% calc(100% - 0.464vw),28.473% calc(100% - 0.845vw),27.128% calc(100% - 1.337vw),25.818% calc(100% - 1.939vw),24.55% calc(100% - 2.65vw),0% calc(100% - 17.65vw),0% 100%);    
}
.kwAtfContent {
    position: relative;
    display: grid;
    align-content: center;
    text-align: center;
    color: var(--kwbgcolor);
    min-height: calc(100vh - var(--kwheaderheight));
    padding-bottom: 220px;
}
.kwAtfSection .kwImgBg > img {
    height: 100%;
    object-position: bottom;
}
.kwAtfSection .kwAtfContent,
.kwAtfSection .kwDiscMoreArrow,
.kwAtfSection .kwImgBg::before {
    animation: none;
}
.kwAtfSection > .kwImgBg {
    animation: none;
}
.kwDataAtf {
    font-weight: 700;
    font-size: 1.5rem;
}
.kwAtfContent h1 {
    font-size: 1.5rem;
}

/* atf */
.kwDomandaAtf {
    font-size: var(--kwbigtext);
    text-transform: uppercase;
    letter-spacing: 0.17em;
}
.kwDataAtf {
    font-weight: 700;
    font-size: 1.5rem;
}
.kwFull2Col .kwColImg {
    height: 100%;
    display: grid;
    align-content: center;
    position: relative;
}
.kwFull2Col .kwColImg > img {
    position: relative;
    width: 100%;;
}
.kwFull2Col .kwColImg > img + img {
    margin-top: 0;
}
.kwFull2Col .kwColImg::before {
    content: "";
    position: absolute;
    left: var(--kwmarginlarge);
    top: 0;
    right: 0;
    bottom: 0;
    display: block;
    background: var(--kwbgcolor);
}
.kwFull2Col .kwColImg.kwImgFullHeight {
    align-content: initial;
}
.kwLogoAtf {
    display: inline;
    width: 250px;
}
.kwPreTitle {
    font-weight: 700;
}
.kwFull2Col .kwColImg:last-child > img {
    padding: 0;
    object-fit: contain;
    height: auto;
}

/* annunci */
.kwTabAnnunci {
    display: flex;
    justify-content: center;
    gap: var(--kwmarginlarge);
    flex-wrap: wrap;
}
.kwCellAnnunci {
    background: var(--kwbgcolor);
    border-radius: 23px;
    overflow: hidden;
    max-width: 480px;
}
.kwContentAnnuncio {
    padding: var(--kwmarginmedium);
}
.kwContentAnnuncio {
    padding: var(--kwmargincontainer);
}
.kwPrezzoOriginale {
    color: #c60000;
    font-size: 1.4rem;
}
.kwPrezzoScontato {
    color: #00b240;
    font-size: 2.1rem;
}
.kwPrezzoScontato sup {
    font-size: 1.2rem;
}
.kwPriceContainer {
    border: 1px solid var(--kwprimary);
    border-radius: 9px;
    padding: 23px var(--kwmarginsmall);
    display: flex;
    gap: var(--kwmarginsmall);
    align-items: center;
    justify-content: center;
}
.kwPreTitlePrice {
    color: var(--kwprimary);
    background: var(--kwbgcolor);
    position: relative;
    display: inline-block;
    padding: 0 10px;
}
.kwPreTitlePrice + .kwPriceContainer {
    margin-top: -12px;
}

/* promo */
.kwCellPromo {
    border-radius: 23px;
    padding: var(--kwmarginmedium) var(--kwmargincontainer);
    margin-top: 35px;
    align-self: normal;
}
.kwIcoPromo {
    margin: calc(-35px - var(--kwmarginmedium)) auto 0;
}
.kwHeadPromo {
    font-size: 1.15rem;
}
.kwBigTextPromo {
    font-size: 2rem;
    font-family: var(--kwseriffontfamily);
    color: #197bbd;
    text-transform: uppercase;
}
hr.kwHrPromo:not([size]) {
    background: var(--kwbodycolor);
    opacity: 1;
    margin: var(--kwmarginmedium);
    height: 2px;
}

/* iscrizioni */
.kwTabInfoOpenHouse {
    display: flex;
    justify-content: center;
    gap: var(--kwmarginmedium);
}
.kwCellInfoOpenHouse {
    display: grid;
    justify-items: center;
    grid-gap: var(--kwmarginsmall);
}
.kwPhoneText.kwColorPrimaryText {
    color: var(--kwprimary);
}

/* sezioni */
.kwBgImgSection {
    position: relative;
    background-image: url(../../../images/promoestate/bg-img.jpg);
    color: #fff;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    clip-path: polygon( 36.45% 0.1vw,36.45% 0.1vw,35.445% 0.028vw,34.441% -0.009vw,33.438% -0.011vw,32.436% 0.022vw,31.438% 0.088vw,30.442% 0.186vw,29.449% 0.318vw,28.461% 0.481vw,27.478% 0.675vw,26.5% 0.9vw,0% 8.6vw,0% 100%,100% 100%,100% 5vw);
    padding-top: 8.6vw;
}
.kwPreImgBgSection {
    padding-bottom: calc(var(--kwmarginlarge) + 8.6vw);
    margin-bottom: -8.6vw;
}
.kwBgYellow {
    background: #ffe000;
    color: var(--kwbodycolor);
}
.kwBgLightBlue {
    background-color: #a7e5ea;
    color: var(--kwbodycolor);
}
.kwBgGrey {
    color: var(--kwbodycolor);
}

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

    /* atf */
    .kwLogoLanding {
        width: 200px;
    }
    .kwAtfContent .kwBigText {
        font-size: 2em;
    }
    .kwImgBg::before {
        background: rgba(0,0,0,.5);
    }
    .kwAtfContent {
        min-height: 100vh;
    }
}

@media screen and (max-width: 768px) {

    /* atf */
    .kwImgBg::before {
        background: rgba(0,0,0,.24);
    }

    /* iscrizioni */
    .kwLabelInfoOpenHouse {
        font-size: var(--kwsmalltext);
    }
}