/* Copyrights @Digital Interaction Srl, commercial use not allowed */

:root {
    --primary-color: #Fff;
    --secondary-color: #25D366;
    --third-color: #28272F;
    --fourth-color: #FF385C;
    --l-third-color: #0B2559;
    --black-color: #000;

    --text-primary: #2F2F2F;
    --text-inactive: #676767;
    --font-h: 'Montserrat';
    --font-p: 'Lato';

    --fifth-color: rgb(16, 24, 29);
    --sixth-color: rgb(100, 116, 139);
    --bg_light_grey: #f2f2f2;
    --bg_dark_grey: #212121;
    --bg_black_8: rgba(0, 0, 0, 0.8);
    --grey-border-clr: #dee0e3;
    --text-description: #60687a;
}

* {
    -ms-overflow-style: none;
    /* Internet Explorer 10+ */
    scrollbar-width: none;
    /* Firefox */
}

::-webkit-scrollbar {
    display: none;
    /* Safari and Chrome */
}

.k_slider_active {
    border-bottom: 2px solid #000;
}

body {
    font-family: 'Raleway', sans-serif;
    background-color: var(--primary-color);
    font-display: swap;
}

.row {
    margin-right: 0;
    margin-left: 0;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.col,
.col-1,
.col-10,
.col-11,
.col-12,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-auto {
    padding-right: 0;
    padding-left: 0;
}

/*  sizing */
.dip_size_40px {
    height: 40px;
    width: 40px;
}

.dip_size_50px {
    height: 50px;
    width: 50px;
}

.dip_max_w_80px {
    max-width: 80px;
}

.dip_max_w_100px {
    max-width: 100px;
}

.dip_max_w_120px {
    max-width: 120px;
}

.dip_max_h_20vh {
    max-height: 20vh;
}

@keyframes rotateLeftRight {
    0% {
        transform: rotate(0deg);
    }

    25% {
        transform: rotate(-30deg);
    }

    50% {
        transform: rotate(0deg);
    }

    75% {
        transform: rotate(30deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

.dip_icon_play {
    background-image: url('/img/icons/play_arrow_b.svg');
}

.dip_icon_pause {
    background-image: url('/img/icons/pause_b.svg');
}

.dip_popup_menu_btn {
    color: #000;
    background-color: transparent;
    border: 1px solid #000;
    border-radius: 3px;
    margin-top: 0.3125rem;
    margin-bottom: 0.3125rem;
    padding: 0.3125rem 0.6rem;
}

.dip_popup_menu_btn_active {
    color: #fff;
    background-color: #000;
}

.dip_descr_t {
    font-size: 14px;
}

.dip_max_h_60vh {
    max-height: 60vh;
}

.rc_h_search_pg {
    max-height: calc(100vh - 120px);
}

.rc_h_100vw-50px {
    height: calc(100vh - 50px);
}

/* ! sizing ! */


/* padding & margin */
.dip_p_0_10px {
    padding: 0 10px !important;
}

.dip_m_0_5px {
    margin: 0 5px;
}

.dip_m_l_-10px {
    margin-left: -10px;
}

.dip_m_r_5px {
    margin-right: 5px;
}

/* ! padding & margin ! */

/*  positioning  */
.btn {
    padding: 0.5rem 2rem;
}

.rc_center_break {
    flex-basis: 100%;
    height: 0;
}

.rc_center_horiz {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.rc_center_vert {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.rc_center_both {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
}

/* ! positioning ! */

/* borders */
.dip_b_b_b_3 {
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
}

/* ! borders ! */

/*  colors  */
a {
    color: #000;
}

.rc_highlight {
    color: var(--secondary-color);
}

.rc_text_descr,
.rc_text_descr_cont p {
    color: var(--text-description);
}

.dip_bg_b_3 {
    background-color: rgba(0, 0, 0, 0.03);
}

.keys_primary_bg {
    background-color: var(--primary-color);
}

.keys_secondary_bg {
    background-color: var(--secondary-color);
}
.keys_b_bg {
    background-color: var(--black-color);
}

.l_third_bg {
    background-color: var(--l-third-color);
}

.keys_fourth_bg {
    background-color: var(--fourth-color);
}

.keys_grad_b {
    background: linear-gradient(180deg, #1A1920 0%, #69686D 100%), linear-gradient(180deg, #084791 0%, rgba(76, 133, 200, 0) 100%, rgba(76, 133, 200, 0.5) 100%), #4C85C8;
}

.keys_grad_orange {
    background: linear-gradient(180deg, #1B65A6 0%, #A7D5F2 100%);
}


@media screen and (max-width: 500px) {
.form_layout{
top: 60px;
margin-top: 50vw;
    
}
    .ctaTextSpan::before {
        content: "Call us now";
    }

    .owl-img-carousel {
        max-height: 383px;
        max-width: 405px;
    }
}

@media screen and (min-width: 550px) {
.form_layout{
top: 60px;
margin-top: 30vw;
    
}
    .owl-img-carousel {
        max-height: 654px;
        max-width: 699px;
    }
}

@media screen and (max-width: 400px) {
    .owl-img-carousel {
        max-height: 346px;
        max-width: 370px;
    }
}

@media screen and (max-width: 380px) {
    .owl-img-carousel {
        max-height: 345px;
        max-width: 325px;
    }
}

@media screen and (min-width: 900px) {
    .owl-img-carousel {
        max-height: 440px;
        max-width: 470px;
    }
}

@media screen and (min-width: 1200px) {
    .owl-img-carousel {
        max-height: 439px;
        max-width: 469px;
    }
    .card_tempo {
        margin: 0 auto;
    }
}

.keys_card_padding {
    padding: 20% 5%;
}

.keys_card_padding > p > span {
        font-weight: 700;
        font-size: 18px;
        position: relative;
        top: 24px;
        display: flex;
        justify-content: end;
}


.hp-buttons {
    display: flex;
    justify-content: center;
    flex-direction: column;
    
}
.hp-buttons button {
    padding-inline: 45px;
    width: auto;
    background-color: #fff !important;
    font-weight: 700;
}
.hp-buttons a {
    margin-inline:  auto;
    padding: 15px;
}
/*  */
@media screen and (max-width: 800px) {
    
.container-carrousel{
    width: 99%;

}
.carrousel {
    display: grid;
    grid-auto-flow: column;
    /*scroll-behavior: auto;*/
    gap: 16px;
    overflow-y: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    margin-left: 16px;
}

.card:last-child {
    margin-right: 30px;
}

.carrousel::-webkit-scrollbar{
    display: none;
}
.card {
    scroll-snap-align: start;
    min-height: 400px;
    min-width: 300px;
    display: flex;
    align-items: center;
    justify-content: center;

}
.card-body {
    /* justify-content: center; */
        display: flex;
        align-items: center;
        flex-direction: column;
        text-align: center;
    
}

.carousel-nav {
    width: 100%;
    color: #000;
    text-align: center;
    margin-top: 20px;
}

.carousel-button {
    width: 15px;
    height: 15px;
    color: #000;
    display: inline-block;

    background: #00000018 ;
    border: 1px solid #000;
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;

    &.button-selected {
        background: rgba(0, 0, 0, 0.942);
    }
} 
}

.follow-link-carousel {
    text-decoration-line: underline;
    position: absolute;
    bottom: 10px;
}
@media screen and (min-width: 800px) {
    
.container-carrousel{
    width: 100%;
    padding-inline: 16px;
    

}
.carrousel {
    display: grid;
    grid-auto-flow: column;
    scroll-behavior: auto;
    gap: 16px;
    overflow-y: auto;
    overscroll-behavior-x: contain;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;

}

.card:last-child {
    margin-right: 30px;
}

.carrousel::-webkit-scrollbar{
    display: none;
}
.card {
    scroll-snap-align: start;
    min-height: 400px;
    min-width: 300px;
    display: flex;
    align-items: center;
    justify-content: center;

}
.card-body {
    /* justify-content: center; */
        display: flex;
        align-items: center;
        flex-direction: column;
        text-align: center;
    
}

.carousel-nav {
    width: 100%;
    color: #000;
    text-align: center;
    margin-top: 20px;
}

.carousel-button {
    width: 15px;
    height: 15px;
    color: #000;
    display: inline-block;

    background: #00000018 ;
    border: 1px solid #000;
    border-radius: 50%;
    margin: 0 5px;
    cursor: pointer;

    &.button-selected {
        background: rgba(0, 0, 0, 0.942);
    }
} 
}
/*  */
/*  */
.lock_orange {
    background-color: #fde79c !important;
}

.lock_green {
    background-color: #b7e5ba !important;
}

.lock_purple {
    background-color: #ead3ff !important;
}

.lock_lightgrey {
    background-color: #e0e0e0 !important;
}

.rc_third_bg {
    background-color: var(--third-color);
}

.rc_fourth_bg {
    background-color: var(--fourth-color);
}

.rc_fifth_bg {
    background-color: var(--fifth-color);
}

.rc_sixth_bg {
    background-color: var(--sixth-color);
}

.rc_clr_secondary {
    color: var(--secondary-color);
}

.rc_clr_sixth {
    color: var(--sixth-color);
}

.rc_bg_light_grey {
    background-color: var(--bg_light_grey);
}

.rc_bg_dark_grey {
    background-color: var(--bg_dark_grey);
}

.rc_bg_black_8 {
    background-color: var(--bg_black_8);
}

.rc_footer {
    background-color: var(--bg_dark_grey);
}

.rc_price_highlight.activehighlight {
    animation-name: highlight;
}

.rc_price_highlight {
    display: inline;
    position: relative;
    background-size: 200% auto;
    background-image: linear-gradient(to right, rgba(255, 0, 0, 0) 50%, var(--secondary-color) 50%);
    background-position: 0% 0;
    animation-duration: 1s;
    animation-delay: 0.8s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    padding-left: 0.15em;
    margin-left: -0.15em;
    white-space: pre-wrap;
    padding-right: 0.15em;
    margin-right: -0.15em;
}

@keyframes highlight {
    from {
        background-position: 0% 0;
    }

    to {
        background-position: -100% 0;
        color: #fff;
        font-weight: inherit
    }
}



/* ! colors ! */

/*   gallery   */
.fancybox__container {
    z-index: 10050 !important;
}

/* ! gallery ! */

/* text */
.dipPropScrollH {
    padding: 0 7px 10px 7px;
    color: #000;
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
    float: left;
}

.dipPropScrollHSelected,
.dipPropScrollH:hover {
    font-weight: 600;
    text-decoration: none;
    color: var(--blue);
    border-bottom: 3px solid var(--blue);
}

.dipAnchor {
    height: 50px;
    margin-top: -50px;
    position: relative;
    z-index: -1;
}

.dip_c_pointer,
.dip_popup_menu_btn {
    cursor: pointer;
}

.dip_break_all {
    word-break: break-all;
}

.dip_cursor_pointer {
    cursor: pointer;
}

.searchGridInput,
.searchGridInput:focus-visible,
.searchGridInput:focus-within {
    border: 0;
    font-size: 18px;
    outline: 0px;
}

.searchSubmitIcon {
    height: 40px;
    width: 40px;
    border: 0;
    background-color: red;
}

/* ! text ! */

/* grids */
.lock_grid_2 {
    grid-column: 1 / -1;
}

.categAttrGrid {
    display: grid;
    grid-template-columns: [start] 60% [line1] auto [line2] auto [line3] auto [end];
    grid-template-rows: [row-start] auto [row-middle] auto [row-end];
}

.categAttrDescr {
    grid-column-start: 1;
    grid-column-end: 2;
    align-self: center;
    grid-row-start: 1;
    grid-row-end: 3;
}

.categAttrRooms,
.categAttrBaths,
.categAttrArea,
.categTitleRooms,
.categTitleBaths,
.categTitleArea {
    align-self: center;
    justify-self: center;
    font-size: 14px;
}

.categAttrRooms,
.categAttrBaths,
.categAttrArea {
    grid-row-start: 1;
    grid-row-end: 2;
    font-weight: 600;
}

.categTitleRooms,
.categTitleBaths,
.categTitleArea {
    grid-row-start: 2;
    grid-row-end: 3;
}

.categAttrRooms,
.categTitleRooms {
    grid-column-start: 2;
    grid-column-end: 3;
}

.categAttrBaths,
.categTitleBaths {
    grid-column-start: 3;
    grid-column-end: 4;
}

.categAttrArea,
.categTitleArea {
    grid-column-start: 4;
    grid-column-end: 5;
}

.categAttrSearchGrid {
    width: 50%;
    display: grid;
    grid-template-columns: [start] auto [line2] auto [line3] auto [end];
    grid-template-rows: [row-start] auto [row-middle] auto [row-end];
}

.categAttrSearchRooms,
.categAttrSearchBaths,
.categAttrSearchArea,
.categTitleSearchRooms,
.categTitleSearchBaths,
.categTitleSearchArea {
    align-self: center;
    justify-self: left;
    font-size: 14px;
}

.categAttrSearchRooms,
.categAttrSearchBaths,
.categAttrSearchArea {
    grid-row-start: 1;
    grid-row-end: 2;
    font-weight: 600;
}

.categTitleSearchRooms,
.categTitleSearchBaths,
.categTitleSearchArea {
    grid-row-start: 2;
    grid-row-end: 3;
}

.categAttrSearchRooms,
.categTitleSearchRooms {
    grid-column-start: 1;
    grid-column-end: 2;
}

.categAttrSearchBaths,
.categTitleSearchBaths {
    grid-column-start: 2;
    grid-column-end: 3;
}

.categAttrSearchArea,
.categTitleSearchArea {
    grid-column-start: 3;
    grid-column-end: 4;
}

.propMainAttrGrid {
    display: grid;
    grid-template-columns: [start] 40% [line1] auto [line2] auto [line3] auto [line4] auto [end];
    grid-template-rows: [row-start] auto [row-1] auto [row-2] 10px [row-3] auto [row-4] auto [row-5] auto [row-6] auto [row-end];
}

.propMainAttrGrid50 {
    display: grid;
    grid-template-columns: [start] 50% [line1] auto [line2] auto [line3] auto [line4] auto [end];
    grid-template-rows: [row-start] auto [row-1] auto [row-2] 10px [row-3] auto [row-4] auto [row-5] auto [row-6] auto [row-end];
}

.propMainPrice,
.propMainTitle,
.propMainLocation,
.propMainCTA {
    align-self: center;
}

.propMainRooms,
.propMainBaths,
.propMainSqm,
.propMainRoomsDescr,
.propMainBathsDescr,
.propMainSqmDescr {
    align-self: center;
    justify-self: center;
}

.propMainType,
.propMainTypeDescr {
    align-self: center;
    justify-self: right;
}

.propMainRoomsDescr,
.propMainBathsDescr,
.propMainSqmDescr {
    font-size: 14px;
}

.propMainPrice,
.propMainPriceDescr {
    grid-column-start: 1;
    grid-column-end: 2;
}

.propMainPriceInitial {
    text-decoration: line-through;
}

.propMainDiscountText {
    position: fixed;
    display: flex;
    justify-content: center;
    flex-direction: column;
    z-index: 100000;
    background: #0000007d;
    height: 100vh;
    top: 0;
    left: 0;
    width: 100vw;
    padding: 10px;
}

.propMainDiscountTextDiv {
    background: white;
    border-radius: 6px;
    padding: 10px;
}

.propMainRooms,
.propMainRoomsDescr {
    grid-column-start: 2;
    grid-column-end: 3;
}

.propMainBaths,
.propMainBathsDescr {
    grid-column-start: 3;
    grid-column-end: 4;
}

.propMainSqm,
.propMainSqmDescr {
    grid-column-start: 4;
    grid-column-end: 5;
}

.propMainType,
.propMainTypeDescr {
    grid-column-start: 2;
    grid-column-end: 5;
}

.propMainPrice,
.propMainRooms,
.propMainBaths,
.propMainSqm,
.propMainType {
    grid-row-start: 1;
    grid-row-end: 2;
    font-weight: 500;
}

.propMainPriceDescr,
.propMainRoomsDescr,
.propMainBathsDescr,
.propMainSqmDescr,
.propMainTypeDescr {
    grid-row-start: 2;
    grid-row-end: 3;
}

.propMainTitle,
.propMainLocation,
.propMainCTA {
    grid-column-start: 1;
    grid-column-end: 5;
}

.propMainTitle {
    grid-row-start: 4;
    grid-row-end: 5;
    font-weight: 500;
}

.propMainLocation {
    grid-row-start: 5;
    grid-row-end: 6;
}

.propMainCTA {
    grid-row-start: 6;
    grid-row-end: 7;
}

.propMainAttrGridNoPrice {
    grid-template-columns: [start] 0 [line1] auto [line2] auto [line3] auto [line4] auto [line5] auto [end];
}

.propMainAttrGridNoPrice .propMainBathsDescr {
    padding: 0 20px;
}

.propMainAttrGridNoPrice .propMainTitle,
.propMainAttrGridNoPrice .propMainLocation,
.propMainAttrGridNoPrice .propMainCTA {
    grid-column-start: 2;
    grid-column-end: 6;
}

.ensamblePropGrid {
    display: inline-grid;
    grid-auto-columns: 250px;
}

.ensamblePropCard {
    grid-row-start: 1;
    grid-row-end: 2;
}

.featAttrGrid {
    display: grid;
    grid-template-columns: [start] 40% [line1] 60% [end];
    grid-template-rows: auto;
}

/* .featAttrFull, .featAttrDef, .featAttrVal{ align-self: center; } */
.featAttrDef,
.featAttrVal {
    border-bottom: 1px solid rgba(0, 0, 0, 0.3);
    margin-top: 10px;
    font-size: 14px;
}

.featAttrFull {
    grid-column-start: 1;
    grid-column-end: 3;
}

.featAttrDef {
    grid-column-start: 1;
    grid-column-end: 2;
}

.featAttrVal {
    grid-column-start: 2;
    grid-column-end: 3;
}

.propMedImgGrid {
    margin-left: 2vw;
    display: grid;
    column-gap: 1.5vw;
    row-gap: 1.5vw;
    grid-template-columns: [start] 31vw [col-1] 31vw [col-2] 31vw [end];
    grid-auto-rows: 31vw;
}

.qualifPopGrid {
    display: grid;
    grid-template-columns: [start] 100% [end];
    grid-template-rows: 50px [start] auto [row-1] 80px [end];
}

.qualifPopHead,
.qualifPopFoot {
    align-self: center;
}

.qualifPopHead {
    grid-row-start: 1;
    grid-row-end: 2;
    position: sticky;
    top: 0;
    background: #fff;
    z-index: 1;
    justify-self: end;
}

.qualifPopFormDiv {
    grid-row-start: 2;
    grid-row-end: 3;
}

.qualifPopFoot {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 3;
    grid-row-end: 4;
    justify-self: center;
}

.qualifPopFormInner {
    display: grid;
    grid-template-columns: [start] 100% [end];
    grid-template-rows: [start] min-content [row-2] auto [row-1] min-content [row-2] min-content [row-3] auto [end];
}

.qualifPopFormTitle {
    grid-row-start: 1;
    grid-row-end: 2;
}

.qualifPopFormQuestion {
    grid-row-start: 3;
    grid-row-end: 4;
}

.qualifPopFormAnswer {
    grid-row-start: 4;
    grid-row-end: 5;
}

.qualifPopFormAnswer button {
    width: 100%;
}

.offerBtnDD {
    mask-image: url(/img/icons/chevron_left.svg);
    -webkit-mask-image: url(/img/icons/chevron_left.svg);
    -webkit-mask-size: 100%;
    mask-size: 100% 100%;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    background: #fff;
    transform: rotate(-90deg);
    margin-top: 1px;
}

.offerBtnDDup {
    transform: rotate(90deg);
}

.offerPriceGrid {
    display: flex;
    flex-direction: column;
    min-width: 650px;
}

.offerPriceItem {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.offerPriceSecond {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.offerPriceFirst,
.offerPriceSecond,
.offerPriceSecond div {
    width: 100%;
}

.offerPriceSecond div {
    flex-grow: 1;
    text-align: center;
}

.offerPriceFirst {
    max-width: 240px;
}

#btn_3D_menu_fullpage {
    display: grid;
    grid-template-columns: [start] auto [c1] 300px [c2] auto [end];
    grid-template-rows: [start] auto [row-2] 40px [row-1] 20px [row-2] 40px [row-3] auto [end];
}

#load3D,
#load_melon_360 {
    grid-row-start: 2;
    grid-row-end: 3;
    grid-column-start: 2;
    grid-column-end: 3;
}

#load_melon_3D {
    grid-row-start: 4;
    grid-row-end: 5;
    grid-column-start: 2;
    grid-column-end: 3;
}

.dipHomeHeaderMenuGrid {
    display: grid;
    grid-template-columns: [start] 20px [line1] auto [line2] auto [line3] 30px [line4] 5px [line5] 10px [end];
}

.dipCallBtnHeader {}

.dipCallBtnHeader {
    grid-column-start: 2;
    grid-column-end: 3;
    align-self: center;
}

.dipHomeHMLogo {
    grid-column-start: 2;
    grid-column-end: 4;
    align-self: center;
}

.dipHomeHMBurgerMenu {
    grid-column-start: 4;
    grid-column-end: 5;
}

/* .dipHomeCallIcon{ grid-column-start: 5; grid-column-end: 6;} */

.dipMainSpecsGrid {
    display: grid;
    grid-template-columns: [start] 50% [line1] auto [line2] auto [end];
    grid-template-rows: [row1-start] auto [line1] 10px [line2] auto [line3] auto [last-line];
}

.dipMainSpecsPrice {
    grid-column-start: 1;
    grid-column-end: 2;
}

.dipMainTitle {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: line2;
    grid-row-end: line3;
}

.dipMainLoc {
    grid-column-start: 1;
    grid-column-end: 4;
    grid-row-start: line3;
    grid-row-end: last-line;
}

.dipHeaderMenuGrid {
    display: grid;
    grid-template-columns: [start] 30px [line1] 10px [line2] auto [line3] auto [line4] 30px [end];
    grid-template-rows: [row1-start] 50px [last-line];
}

.dipHMBackBtn {
    grid-column-start: 1;
    grid-column-end: 2;
    justify-self: center;
    align-self: center;
}

.dipHMClientLogo {
    grid-column-start: 3;
    grid-column-end: 4;
    align-self: center;
}

.dipHMLogoTop,
.dipHMNavTop {
    grid-column-start: line3;
    grid-column-end: end;
    align-self: center;
}

.dipHMChangeContentInner,
.dipHMNoChangeInner {
    display: grid;
    grid-template-columns: [start] auto [line1] 30px [line2] 10px [end];
}

.dipHMDiLogo {
    grid-column-start: 1;
    grid-column-end: 2;
    align-self: center;
}

.dipHMNavBurger {
    grid-column-start: 2;
    grid-column-end: 3;
    align-self: center;
}

.di_conv_clicks_table td {
    padding: 0 10px;
}

.dipFooterMenuGrid {
    display: grid;
    grid-template-columns: [start] auto [line1] 5px [line2] auto [end];
}

.dipFMMainBtn {
    grid-column-start: 1;
    grid-column-end: 2;
}

.dipFMSecBtn {
    grid-column-start: 3;
    grid-column-end: 4;
}

.rc_pricing_cont {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    -webkit-column-gap: 20px;
    -moz-column-gap: 20px;
    column-gap: 20px;
    row-gap: 20px;
}

.rc_pricing_card {
    display: flex;
    flex-direction: column;
    width: 100%;
    border: 1px solid var(--grey-border-clr);
    border-radius: 12px;
    padding: 20px;
}

.rc_div_line {
    background-color: var(--grey-border-clr);
    height: 1px;
}

.rc_pricing_ul {
    list-style-type: none;
    padding: 0;
}

.rc_pricing_ul li {
    position: relative;
}

.rc_pricing_ul li::before {
    width: 20px;
    height: 20px;
    background-image: url('/img/icons/check_circle_FILL0_wght400_GRAD0_opsz48.svg');
    content: " ";
    position: absolute;
    background-size: contain;
    top: 2px;
    opacity: 0.6;
}

.rc_pricing_ul li span.text_content {
    margin-left: 25px;
}

.cookieConsent {
     position: fixed;
        bottom: -500px;
        width: 100%;
        background-color: rgb(0 0 0 / 68%);
        color: white;
        z-index: 1030;
        padding: 10px;
        transition-property: bottom;
        transition-duration: 1s;
        border-radius: 10px 10px 0 0;
}
     

.cookieConsent .textContainer {
    padding: 0 10px;
    height: 85px;
    overflow-y: auto;
}

.cookieConsent .cookieAccept {
    padding: 10px;
}

.cookieConsent .cookieAccept button {
    width: 100%;
    padding: 5px;
    background-color: #005eb8;
    color: white;
    border: none;
    border-radius: 3px;
    margin-bottom: 10px;
}

.cookieConsent .cookieAccept {
    text-align: center;
}

.cookieConsent .cookieAccept a {
    color: white;
}

.rc_layout_grid {
    display: -ms-grid;
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
    -ms-flex-align: start;
    align-items: start;
    grid-auto-columns: 1fr;
    grid-column-gap: 5rem;
    grid-row-gap: 4rem;
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
}

.rc_grup {
    -ms-grid-columns: 0.75fr 1.25fr;
    grid-template-columns: 0.75fr 1.25fr;
}

/* ! grids ! */

/*   carousel   */
#diPropCarousel .carousel__slide {
    width: var(--carousel-slide-width, 100%);
    padding: 0;
    overflow: hidden;
}

/* ! carousel ! */

/*   blog   */
.rc_blog_categ_cont {
    display: grid;
    grid-template-columns: 1fr;

}

.rc_blog_categ_cont a:hover {
    text-decoration: none;
}

.rc_blog_categ {
    border: 2px solid transparent;
    text-decoration: none;


}

@media screen and (min-width: 600px) {
    .rc_card_blog {
        padding-bottom: 10px;
        margin: 10px;
        height: 550px;
    }
}

@media screen and (max-width: 600px) {
    .rc_card_blog {
        padding: 10px;
        margin-bottom: 10px;
    }
}



.rc_blog_categ:hover {
    border: 2px solid var(--secondary-color);
}

.rc_blog_cal_icon {
    mask-image: url(/img/icons/today_FILL0_wght400_GRAD0_opsz48.svg);
    -webkit-mask-image: url(/img/icons/today_FILL0_wght400_GRAD0_opsz48.svg);
}

.rc_blog_clock_icon {
    mask-image: url(/img/icons/timer_FILL0_wght400_GRAD0_opsz48.svg);
    -webkit-mask-image: url(/img/icons/timer_FILL0_wght400_GRAD0_opsz48.svg);
}

@media screen and (max-width: 500px) {
    .styled-select {
        margin-inline: 10px;
        right: 0% !important;
    }
    .carousel-title {

        padding-inline: 5%;
        font-weight: 700;
        line-height: normal;
    }
}

.styled-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    padding: 10px;
    font-size: 16px;
    border: 1px solid #ccc;
    border-radius: 5px;
    width: 150px;
    position: relative;
    outline: none;
    cursor: pointer;
    right: 1%;

}

/* Hover style for the select element */
.styled-select:hover {
    border-color: #d2d2d2c1;
}

/* Focus style for the select element */
.styled-select:focus {
    border-color: #333;
}

/* ! blog ! */


/* article */

.rc_article_title h4 {
    margin-bottom: 30px !important;
}

.rc_article_title {
    padding-inline: 20% !important;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: left;
    justify-content: left;
    color: #000 !important;

}

.rc_article_text {
    color: #000;
    padding-inline: 20% !important;
    text-indent: 30px;
    display: flex;
    flex-direction: column;
    align-items: left;
    justify-content: left;
}

.rc_article_img {


    border-radius: 20px;


}

@media screen and (max-width: 500px) {
.carousel-title {

        padding-inline: 5%;
        font-weight: 700;
        line-height: normal;
    }

    .rc_article_title h4 {
        font-size: 24px;
        margin-bottom: 20px !important;
    }

    .rc_article_title {
        padding-inline: 16px !important;
    }

    .rc_article_img {

        border-radius: 20px;

    }

    .rc_article_text {
        color: #000;
        padding-inline: 16px !important;

    }
}
/* ! blog ! */

/*  elements  */

.keys_a_non_active:active,
.keys_a_non_active:hover {
    color: #000;
}

#bottomFixed {}

.keysBtnBlink {
    animation-name: pulseCall;
    animation-duration: 2s;
    animation-timing-function: ease;
    animation-iteration-count: infinite;
}

@keyframes pulseCall {
    0% {
        background-color: red;
    }

    50% {
        background-color: transparent;
    }

    100% {
        background-color: red;
    }
}

.rc_mask_icon {
    mask-size: cover;
    -webkit-mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}

.rc_mbl_menu_icon {
    height: 30px;
    mask-image: url(/uploads/img/icons/menu_FILL0_wght400_GRAD0_opsz48.svg);
    -webkit-mask-image: url(/uploads/img/icons/menu_FILL0_wght400_GRAD0_opsz48.svg);
}
.rc_mbl_menu_icon_close {
    height: 30px;
    mask-image: url(/uploads/img/icons/close.svg);
    -webkit-mask-image: url(/uploads/img/icons/close.svg);
    z-index: 99999;
    position: relative;
}

.btn-third {
    background-color: var(--secondary-color);
    color: #fff;
}

.row.rc_timeline::before {
    content: '';
    position: absolute;
    top: 0;
    left: calc(50% - 1.5px);
    transform: translateX(calc(50% - 1.5px));
    height: 100%;
    border-right: 3px dashed var(--primary-color);
}

.rc_timeline_bullet_l,
.rc_timeline_bullet_r {
    width: 30px;
    height: 30px;
    position: absolute;
    top: -3px;
    background-color: var(--primary-color);
    border-radius: 50%;
}

.rc_timeline_bullet_l {
    left: -15px;
}

.rc_timeline_bullet_r {
    right: -15px;
}

.row.rc_timeline_mbl::before {
    left: 25px;
}

.rc_timeline_mbl .rc_timeline_bullet_l {
    left: 12px;
}

.rc_timeline_mbl .rc_timeline_col_mbl {
    position: relative;
    padding-left: 55px;
    padding-right: 15px;
    margin-top: 40px;
}


.grecaptcha-badge {
    display: none !important;
}

@media screen and (max-width: 900px) {

.background-card-component-1 {
        border-radius: 30px;
        position: absolute;
        right: 16px;
        width: 75vw;
        height: 40vh;

    }

    .text-card-component-1 {
        border-radius: 30px;
            position: absolute;
            width: 80vw;
            margin-top: 48px;
            left: 16px;
            height: 40vh;
            background-color: rgb(225, 225, 225);
            box-shadow: 8px 8px 21px rgb(0 0 0 / 54%)
    }

        .text-card-component-1>p {
            padding: 20px;
            padding-inline: 10%;
        }
    
       
    
        .text-card-component-1 > .h4 {
            font-size: 20px;
            padding: 16px;
    
        }
.background-card-component-2 {
        border-radius: 30px;
        position: absolute;
        left: 16px;
        width: 75vw;
        height: 40vh;

    }

    .text-card-component-2 {
        border-radius: 30px;
            position: absolute;
            width: 80vw;
            margin-top: 48px;
            right: 16px;
            height: 40vh;
            background-color: rgb(225, 225, 225);
            box-shadow: -8px 8px 21px rgb(0 0 0 / 54%)
    }

        .text-card-component-2>p {
            padding: 20px;
            padding-inline: 10%;
        }
    
        
    
        .text-card-component-2 > .h4 {
            font-size: 20px;
            padding: 16px;
    
        }


    #dipNavMenuDD {
        position: fixed;
        top: 0;
        left: 0;
        height: 100%;
        width: 85vw;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        background-color: transparent;
        z-index: 9999;
    }
}
/*  */

.list-menu {
    display: flex;
    flex-direction: column;
    margin: 20px 0;
    cursor: grab;
    align-items: baseline;
    vertical-align: center;
}

.list-menu a {
    padding: 15px;
    text-decoration: none;
    color: #000;
    text-align: center;
    font-weight: 100;
    font-family: 'Raleway';
    font-size: 16px;
    font-weight: 100;
}

.menu-item-small {
    display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 10px;
}
.menu-item-small > p {
    margin: 0;
}
.list-menu a:hover {
    background-color: #eee;
    border-radius: 20px;
}

.joinUsForm {
    border-radius: 6px;
}

#threeDLinkInput {
    top: 45%;
    left: 45%;
}

#threeDLinkInputBtn {
    top: 45%;
    left: 65%;
}

.gm-style .gm-style-iw-c {
    max-width: calc(100vw - 30px) !important;
}

.rc_map_marker_cont {
    width: 100vw;
}

.rc_map_marker_row {
    width: calc(100vw - 24px);
    margin-top: 5px;
}

.rc_prop_form_mbl {
    width: calc(100vw - 20px);
}

#mblContactForm {
    bottom: 70px;
}

/* ! elements ! */


/*  animations  */
@keyframes wipe-enter {
    0% {
        transform: scale(0, .025);
    }

    50% {
        transform: scale(1, .025);
    }
}

@media (prefers-reduced-motion: no-preference) {
    .rc_fade_in_to_top {
        animation-name: wipe-enter;
        animation-duration: 1s;
        animation-iteration-count: infinite;
    }
}

/* ! animations ! */

/* SM */
@media (min-width: 720px) {
    .rc_p_sm_0 {
        padding: 0 !important;
    }
}

/* ! SM ! */

/* MD */
@media (min-width: 720px) {
    .background-card-component-1 {
            border-radius: 30px;
            position: absolute;
            margin-right: 16px;
            right: 30px;
            width: 55vw;
            height: 50vh;
    
        }
    
    
        .text-card-component-1 {
            border-radius: 20px;
                position: absolute;
                width: 55vw;
                height: 50vh;
                left: 40px;
                /* margin-top: 90vh; */
                background-color: rgb(225, 225, 225);
                box-shadow: 8px 8px 21px rgb(0 0 0 / 54%);
                margin-top: 50px;
        }
    
        .text-card-component-1 > p {
            padding: 20px;
            padding-inline: 10%;
        }
    
     
        .text-card-component-1 > h4 {
            font-size: 20px;
            padding: 16px;
    
        }
    .background-card-component-2 {
            border-radius: 30px;
            position: absolute;
            margin-right: 16px;
            width: 55vw;
            height: 50vh;
    
        }
    
    
        .text-card-component-2 {
            border-radius: 20px;
                position: absolute;
                width: 55vw;
                height: 50vh;
                right: 40px;
                /* margin-top: 90vh; */
                background-color: rgb(225, 225, 225);
                box-shadow: 8px 8px 21px rgb(0 0 0 / 54%);
                margin-top: 50px
        }
    
        .text-card-component-2 > p {
            padding: 20px;
            padding-inline: 10%;
        }
    
     
    
        .text-card-component-2 > h4 {
            font-size: 20px;
            padding: 16px;
    
        }
    .rc_t_md_left {
        text-align: left;
    }

    .rc_h_search_pg {
        max-height: calc(100vh - 50px);
    }

    .rc_p_md_0 {
        padding: 0 !important;
    }

    .rc_m_md_0 {
        margin: 0 !important;
    }

    .rc_w_md_50P {
        width: 50% !important;
    }

    .rc_blog_categ_cont {
        grid-template-columns: 1fr 1fr;
    }


    .offerPriceFirst {
        max-width: 320px;
    }

    .searchGrid {
        grid-template-columns: [start] auto [line1] 500px [line2] auto [end];
    }

    .searchGridSearchLP .searchGridBar {
        grid-column-start: 1;
        grid-column-end: 2;
    }

    .searchGridSearchLP .searchGridFilters {
        grid-column-start: 2;
        grid-column-end: 3;
    }

    .rc_pricing_card {
        width: calc(50% - 15px);
    }
}

/* ! MD ! */
   .overlay-open {
        position: absolute;
        overflow-x: hidden !important;
            width: 100%;
            height: 500vh;
            background-color: rgba(0, 0, 0, 0.5);
            z-index: 1001;
   }
/* LG */
.no-scroll {
    overflow: hidden;
}
.truncate-text {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    -webkit-line-clamp: 4;
   
}

@media screen and (min-width: 992px) {

.background-card-component-1 {
        border-radius: 20px;
        position: absolute; 
        right: 16px;
        width: 55vw;
        height: 50vh;
        padding: 16px;

    }

    .text-card-component-1 {
        border-radius: 20px;
        position: absolute;
        width: 55vw;
        height: 50vh;
        margin-top: 10vh;
        right: 30px;
        background-color: rgb(225, 225, 225);
            box-shadow: 8px 8px 21px rgb(0 0 0 / 54%)
    }
        .text-card-component-1 > p {
             /* padding: 40px; */
            padding-inline: 10%;
        }
 
    .text-card-component-1 > h1 {
        padding-inline: 30px;
            padding-top: 40px;
    }
.background-card-component-2 {
        border-radius: 20px;
        position: absolute; 
        left: 40px;
        width: 55vw;
        height: 50vh;
        padding: 16px;

    }

    .text-card-component-2 {
        border-radius: 20px;
        position: absolute;
        width: 55vw;
        height: 50vh;
        margin-top: 10vh;
        left: 42vw;
        background-color: rgb(225, 225, 225);
            box-shadow: -8px 8px 21px rgb(0 0 0 / 54%)
    }
        .text-card-component-2 > p {
             /* padding: 40px; */
            padding-inline: 10%;
        }
   
    .text-card-component-2 > h1 {
        padding-inline: 30px;
            padding-top: 40px;
    }
        
    #dipNavMenuDD {
            overflow-x: hidden !important;
            position: fixed !important;
            top: 0;
            left: 0 !important;
            height: 100%;
            width: 25vw;
            white-space: nowrap;
          
            background-color: #0000007e;
            z-index: 5000;   
        }
                
    .keys_card_padding {
        padding: 20% 30%;
        /* height: 30vw; */
        width: 60vw;
        text-align: center;
    }
    .keys_card_padding > p > span {
        font-weight: 700;
        font-size: 16px;
        position: relative;
        top: 200px;
        display: flex;
        justify-content: end;
    }
    .card_tempo {
        margin: 0 auto;

     
    }

    .lock_lg_grid_2_col {
        grid-template-columns: 1fr 1fr;
    }

    .dip_w_lg_50P {
        width: 50% !important;
    }

    .di_m_lg_t_80px {
        margin-top: 80px !important;
    }

    .rc_p_lg_r_10px {
        padding: 10px !important;
    }

    .rc_p_lg_l_10px {
        padding-left: 10px !important;
    }

    .dipHeaderMenuGrid_lg {
        display: grid !important;
        grid-template-columns: [start] 30px [line1] 10px [line2] auto [line3] auto [line4] auto [end];
        grid-template-rows: [row1-start] 50px [last-line];
        background-color: rgba(0, 0, 0, 0.1);
    }

    .dipHMDiLogo_lg {
        grid-column-start: 4;
        grid-column-end: 5;
        align-self: center;
    }

    .dipHMDiLogoHome_lg {
        grid-column-start: 3;
        grid-column-end: 4;
        align-self: center;
    }

    .dipCallBtnHeader_pc {
        grid-column-start: 4;
        grid-column-end: 5;
        align-self: center;
    }

    .dipHMLinks_lg {
        grid-column-start: 5;
        grid-column-end: 6;
        align-self: center;
        display: grid !important;
        grid-template-columns: auto auto auto auto auto auto auto auto;
    }

    .dipHMLinks_lg a {
        align-self: center;
    }

    .dip_center_vert {
        position: absolute;
        top: 50%;
        left: 0;
        transform: translate(0, -50%);
    }

    .propMainDiscountTextDiv {
        width: 1140px;
        left: unset;
        margin-left: auto;
        margin-right: auto;
    }

    .offerPriceFirst {
        max-width: 520px;
    }


    .gm-style .gm-style-iw-c {
        max-width: 25vw !important;
    }

    .rc_map_marker_cont {
        width: 25vw;
    }

    .rc_map_marker_row {
        width: calc(25vw - 24px);
        margin-top: 5px;
    }

    .rc_pricing_card {
        width: calc(33% - 15px);
    }

    .rc_blog_categ_cont {
        grid-template-columns: 1fr 1fr 1fr;
    }

    .carousel-title {
        padding-inline: 16px;
                font-weight: 700;
                line-height: normal;
    }
    
}

/* ! LG ! */


/* XL */
@media (min-width: 1200px) {


    
    .rc_pricing_card {
        width: calc(25% - 15px);
    }

    .rc_pricing_card_3 {
        width: calc(33% - 15px);
    }
}

/* ! XL ! */

/* loading.io loader */
.lds-spinner {
    color: white;
    display: inline-block;
    position: relative;
    width: 80px;
    height: 80px;
}

.lds-spinner div {
    transform-origin: 40px 40px;
    animation: lds-spinner 1.2s linear infinite;
}

.lds-spinner div:after {
    content: " ";
    display: block;
    position: absolute;
    top: 3px;
    left: 37px;
    width: 6px;
    height: 18px;
    border-radius: 20%;
    background: #fff;
}

.lds-spinner div:nth-child(1) {
    transform: rotate(0deg);
    animation-delay: -1.1s;
}

.lds-spinner div:nth-child(2) {
    transform: rotate(30deg);
    animation-delay: -1s;
}

.lds-spinner div:nth-child(3) {
    transform: rotate(60deg);
    animation-delay: -0.9s;
}

.lds-spinner div:nth-child(4) {
    transform: rotate(90deg);
    animation-delay: -0.8s;
}

.lds-spinner div:nth-child(5) {
    transform: rotate(120deg);
    animation-delay: -0.7s;
}

.lds-spinner div:nth-child(6) {
    transform: rotate(150deg);
    animation-delay: -0.6s;
}

.lds-spinner div:nth-child(7) {
    transform: rotate(180deg);
    animation-delay: -0.5s;
}

.lds-spinner div:nth-child(8) {
    transform: rotate(210deg);
    animation-delay: -0.4s;
}

.lds-spinner div:nth-child(9) {
    transform: rotate(240deg);
    animation-delay: -0.3s;
}

.lds-spinner div:nth-child(10) {
    transform: rotate(270deg);
    animation-delay: -0.2s;
}

.lds-spinner div:nth-child(11) {
    transform: rotate(300deg);
    animation-delay: -0.1s;
}

.lds-spinner div:nth-child(12) {
    transform: rotate(330deg);
    animation-delay: 0s;
}

@keyframes lds-spinner {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

/* loading.io loader */

.threeDSpinner,
.threeDProgressbar {
    z-index: 1;
    position: absolute;
    top: 40vh;
    left: calc(50vw - 70px);
    background-color: rgba(0, 0, 0, 0.7);
    border-radius: 10px;
    padding: 20px;
    transform: scale(0.5);
}

.threeDSpinner {
    transform: scale(0.8);
    top: 45vh;
    left: calc(50vw - 35px);
}



/* circular progress start */

.circle-wrap {
    margin: auto;
    width: 150px;
    height: 150px;
    background: gray;
    border-radius: 50%;
    border: 1px solid #cdcbd0;
}

.circle-wrap .circle .mask,
.circle-wrap .circle .fill {
    width: 150px;
    height: 150px;
    position: absolute;
    border-radius: 50%;
}

.circle-wrap .circle .mask {
    clip: rect(0px, 150px, 150px, 75px);
}

.circle-wrap .inside-circle {
    width: 122px;
    height: 122px;
    border-radius: 50%;
    background: #333;
    line-height: 120px;
    text-align: center;
    margin-top: 14px;
    margin-left: 14px;
    color: white;
    position: absolute;
    z-index: 100;
    font-weight: 700;
    font-size: 2em;
}

/* color animation */

/* 3rd progress bar */
.mask .fill {
    clip: rect(0px, 75px, 150px, 0px);
    background-color: whitesmoke;
}

.mask.full,
.circle .fill {
    animation: fill ease-in-out 3s;
    transform: rotate(120deg);
}


/* circular progress end */

.conv-links {
    display: flex;
    gap: 5px;
    margin-bottom: 10px;
}

@media screen and (max-width: 500px) {
    .conv-apply-clicks {

        margin-top: 10px;
    }

    select {
        margin-top: 10px;
    }
}

.img-width {
    width: 100%;

}

 .overlay-close {
    position: absolute;
    right: 15px;
    top: 10px;
    z-index: 1000;
    width: 30px;
    filter: invert(1);
    }