@import url('https://fonts.googleapis.com/css?family=DM+Sans:400,400i,500,500i,700,700i|DM+Serif+Display:400,400i|DM+Serif+Text:400,400i|Playfair+Display+SC:400,400i,700,700i,900,900i|Playfair+Display:400,400i,700,700i,900,900i&display=swap&subset=latin-ext');

*, html, body, p {
    font-family: 'DM Sans', sans-serif;
    font-size: 1vw;
    margin: 0;
    padding: 0;
    color: #fff;
}

.txt-ad {
    color: #017EBE;
}

.ff-dmsa {
    font-family: 'DM Sans', sans-serif;
}

.ff-dmse {
    font-family: 'DM Serif Text', serif;
}

.ff-dmsd {
    font-family: 'DM Serif Display', serif;
}

.ff-pd {
    font-family: 'Playfair Display', serif;
}

.ff-pds {
    font-family: 'Playfair Display SC', serif;
}

body {
    background-color: #fafafa;
    overflow: hidden auto;
}

.fw {
    width: 100vw;
    max-width: 100%;
}

.fw.ml {
    width: 87.5vw;
    max-width: 87.5%;
    margin-left: 12.5vw;
    margin-left: 12.5%;
}

.fw.mr {
    width: 87.5vw;
    max-width: 87.5%;
    margin-right: 12.5vw;
    margin-right: 12.5%;
}

.fh {
    height: 100vh;
    max-height: 100%;
}

.fc-slider > div {
    width: 100%;
    height: 100%;
}

.fc-slider {
    overflow: hidden;
}

.fc-slider .slides {
    width: 100%;
    height: 100vh;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.fc-slider .bx-wrapper .ns-prox img {
    vertical-align: middle;
    display: inline;
}

.fc-slider .slides > div:not(.next-slide) {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.fc-slider > div > img {
    object-fit: cover;
    position: absolute;
    min-width: 100vw;
    min-height: 100vh;
    width: auto;
    height: auto;
    z-index: -1;
}

.fc-slider .slides div.next-slide {
    top: 29.81vh;
    position: absolute;
    right: 0;
    width: 29.6875vw;
    border-radius: 16px 0 0 16px;
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(70px);
}

.fc-slider .next-slide .col-6.txts {
    padding: 4vh;
}

.fc-slider .next-slide .col-6.img {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.fc-slider .next-slide .ns-stt {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    opacity: 0.5;
    margin-bottom: 1rem;
}

.fc-slider .next-slide .ns-ttl {
    font-family: 'Playfair Display SC', serif;
    font-weight: bold;
    font-size: 1.95rem;
    /*font-size: 2.083rem;*/
    line-height: 1.35;
    margin-bottom: 2rem;
}

.fc-slider .next-slide .ns-prox {
    font-size: 0.78125rem;
    text-align: right;
    cursor: pointer;
}

.slidetxt {
    position: absolute;
    left: 12.5vw;
    top: 40.74vh;
}

.slidetxt h1 {
    font-family: 'Playfair Display SC', serif;
    font-weight: bold;
    font-size: 3.75rem;
    line-height: 1.1;
    font-weight: 100;
    margin: 0;
}

.slidetxt h5 {
    font-size: 1.25rem;
    line-height: 1.5;
    font-weight: 100;
    margin: 0;
}

.conceito {
    position: relative;
}

.conceito-bg-ttl {
    padding-top: 5.9259vh;
    background-color: #072F50;
    padding-bottom: 2.4074074074074074vh;
}

.conceito .topics-container {
    left: 12.5vw;
    width: 45vw;
    position: absolute;
    top: 19.4vh;
    z-index: 10;
}

.conceito .topics-container.mobile {
    display: none;
}

.topic {
    cursor: pointer;
}

.conceito .topic {
    margin-top: -3px;
}

.topic .col-4 div span {
    color: #828282;
    font-family: 'DM Sans', sans-serif;
    font-weight: normal;
    line-height: 1;
    font-size: 1.40625rem;
}

.topic .col-8 div {
    /*background-color: rgba(8, 47, 78, 1);*/
    width: 100%;
    height: 100%;
}

.topic.active .col-4 div span {
    color: #017EBE;
}

.bg-destaque {
    background-color: #017EBE;
}

.conceito .topic .col-8 {
    opacity: 0;
    transition: .2s ease-in-out;
}

.conceito .topic.active .col-8 {
    opacity: 1;
    transition: .2s ease-in-out;
}

.conceito .topics-container .col-8.vam {
    background-color: #017EBE;
    height: 33vh;
    max-height: 33vh;
    top: -2vh;
    margin-bottom: -10vh;
    position: relative;
}

.conceito .topics-container .topic:last-child .col-8.vam {
    top: -10vh;
    margin-bottom: -2vh;
}

.btn-brr {
    border: 1px solid #017EBE;
    color: #017EBE;
    text-align: center;
    font-weight: bold;
    font-size: 0.9375rem;
    border-radius: 3rem;
    line-height: 3;
    background-color: transparent;
}

.excd-ctrl {
    cursor: pointer;
}

.excd-img {
    width: 100%;
}

.excd-img img {
    width: 100%;
    height: auto;
    display: none;
}

.excd-img img.active {
    display: block;
}

.btn-brr.active {
    color: #fff;
    background-color: #017EBE;
}

.topic.active .col-8 div {
    background-color: transparent;
}

.vam > div {
    display: table;
    height: 100%;
    width: 100%;
}

.vam > div > * {
    vertical-align: middle;
    display: table-cell;
}

.topic .col-8 div span {
    font-size: 1.02rem;
    line-height: 1.5;
    padding-left: 5%;
    padding-right: 5%;
}


.conceito .topic {
    height: 23vh;
}

.conceito div.img-container {
    top: 9.62962962962963vh;
    width: 60.885416666666664vw;
    height: 78.14814814814814vh;
    position: absolute;
    right: 0;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 5;
}

.conceito div.bg-parc {
    width: 40.625vw;
    height: 50%;
    position: absolute;
    bottom: 0;
    right: 12.5vw;
    z-index: 2;
    background-color: rgba(8, 47, 78, 1);
}

.margins, .theme-ttl {
    margin-left: 12.5vw;
    margin-right: 12.5vw;
}

.theme-ttl span {
    font-size: 0.91rem;
    margin-left: 2vw;
    display: inline-block;
}

.theme-ttl.regular div, .sub-ttl {
    color: #222;
    opacity: .7;
}

.azd-ttl, .theme-ttl.regular h3 {
    color: #017EBE;
    font-weight: bold;
}

.theme-ttl.regular span {
    color: #000;
    line-height: 1.633;
    letter-spacing: 0;
}

.theme-ttl.regular li span {
    margin-left: 0;
}

.theme-ttl div, .sub-ttl {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    letter-spacing: 0.3125rem;
}

.azd-ttl, .theme-ttl h3 {
    font-family: 'Playfair Display SC', serif;
    font-size: 2.083rem;
    font-weight: bold;
    letter-spacing: 0;
}

.bx-wrapper {
    box-shadow: none;
    border: none;
    background: transparent;
}

.hrs.hrs2 {
    height: 100%;
    position: relative;
}

.hrs.hrs2 div {
    top: 50%;
    position: absolute;
}

.hrs.hrs2 .hrs2bg {
    width: 100%;
    background-color: #BDBDBD;
    height: 2px;
    margin-top: -1px;
}

.hrs.hrs2 .hrs2pg {
    width: 50%;
    background-color: #017EBE;
    height: 4px;
    margin-top: -2px;
}

.hrs .col {
    border-top-color: #BDBDBD;
    border-top-width: 2px;
    margin-bottom: 1px;
}

.hrs .col.active {
    border-top-color: #017EBE;
    border-top-width: 4px;
}

.slider-localizacao {
    position: relative;
}

.slider-localizacao > img {
    position: absolute;
    right: 0;
    top: 50%;
    z-index: 5;
    transform: translate(0, -50%);
    cursor: pointer;
}

.slider-localizacao-ctrl, .slider-pager {
    margin-top: 3.240740740740741vh;
    margin-bottom: 3.240740740740741vh;
}

.bx-wrapper .bx-viewport .bx-caption {
    overflow-y: visible;
}

.bx-wrapper .bx-viewport .bx-caption {
    font-size: 0.8333333333333334rem;
    line-height: 1rem;
    background-color: transparent;
    bottom: -1px;
}

.bx-wrapper .bx-viewport .bx-caption span {
    color: #828282;
    background-color: #fafafa;
}

.bg-loc-map {
    background-color: #017EBE;
    width: 86%;
    height: 12vh;
    margin-left: auto;
}

.img-loc-map {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 70.46296296296296vh;
    width: 100%;
    max-width: 61.822916666666664vw;
}

.img-loc-map img {
    display: none;
}

.texts-map h4 {
    font-size: 2.0833333333333335rem;
    line-height: 1.2;
    font-weight: bold;
    letter-spacing: -1px;
    margin-bottom: 2vh;
}

.texts-map div:not(.row) {
    color: rgba(34, 34, 34, .7);
    font-size: 1.25rem;
    line-height: 1.5;
    margin-bottom: 2vh;
    letter-spacing: 0.20833333333333334rem;
}

.texts-map p {
    color: #222;
    font-size: 0.91rem;
    /*font-size: 0.8205128205128205rem;*/
    line-height: 1.633;
    margin-bottom: 1.3398974358974358rem;
}

.txt-regular {
    font-size: 1.25rem;
    line-height: 1.5;
    color: #222;
}

ul.azd {
    margin-left: 1rem;
}

ul.azd,
ul.azd li {
    color: #017EBE;
    font-weight: bold;
    line-height: 1.7;
    font-size: 0.8333333333333334rem;
}

.implantacao, .casas {
    margin-top: 19.16vh;
}

.implantacao .slider-img-loc-map {
    max-width: 90%;
}

img.proximo {
    cursor: pointer;
}

.implantacao .slider-img-loc-map img {
    position: absolute;
    top: 50%;
    right: 10%;
}

.implantacao .img-loc-map {
    width: 92%;
    z-index: 5;
    margin-bottom: 7vh;
}

.implantacao .bg-loc-map {
    width: 95%;
    margin-top: -14vh;
    height: 21.11vh;
    position: absolute;
    bottom: 0;
    z-index: -1;
}

.implantacao .icones svg, .implantacao .icones img {
    fill: #017EBE;
}

.implantacao .icones .txt {
    color: #017EBE;
}

.ct {
    text-align: center;
}

.ctt-txt {
    font-size: 0.9375rem;
    font-weight: bold;
    letter-spacing: 0.20833333333333334rem;
    color: #30232d;
    line-height: 1.823;
}

.ctt-txt.ctt-cnd {
    font-weight: normal;
    line-height: 1.432;
    letter-spacing: 0;
    color: #776C82;
}

.ctt-form-container {
    background-color: #2D9CDB;
    position: relative;
    margin-bottom: 7.77vh;
}

.ctt-form-wrapper {
    min-height: 100%;
    position: relative;
    top: 3.77vh;
    left: -7vw;
    padding: 5.92vh 2.25vw 2vh 2.25vw;
    box-shadow: 0 0 70px rgba(0, 0, 0, .4);
}

.ctt-form-wrapper label {
    font-family: 'DM Sans', sans-serif;
    font-size: 0.65625rem;
    color: #fcfcfc;
    letter-spacing: 0.3125rem;
    line-height: 1.823;
    margin-top: 1vh;
}

.ctt-form-wrapper input, .ctt-form-wrapper button, .ctt-form-wrapper textarea {
    border-radius: 0.5208333333333334rem;
    padding: 0.5208333333333334rem;
    font-family: 'DM Sans', sans-serif;
    color: #9B94A3;
    font-size: 0.84375rem;
    width: 100%;
}

.ctt-form-wrapper button, .ctt-form-wrapper input[type="submit"] {
    width: fit-content;
    margin-left: auto;
    margin-right: 0;
    display: block;
    margin-top: 4.3vh;
    background-color: #072F50;
    color: #FFF;
    letter-spacing: 0.20833333333333334rem;
    border: transparent;
    width: 45%;
}

.ctt-form-wrapper > h3 {
    margin-bottom: 2vh;
}

.ctt-form-wrapper > div {
    margin-top: 1vh;
}

.contato div.wpcf7 span.wpcf7-not-valid-tip {
    color: #fff;
    text-align: right;
    height: 0;
    overflow: visible;
}

.contato div.wpcf7-response-output {
    border-radius: 0.5208333333333334rem;
}

.contato div.wpcf7-mail-sent-ok {
    border: 2px solid #fff;
}

.contato div.wpcf7 .ajax-loader {
    float: left;
    margin-top: -4vh;
    background-color: #fff;
    border-radius: 450%;
    box-shadow: 0 0 10px 2px;
}

.casas .galeria {
    padding-top: 0.78125vw;
}

.casas .galeria > div > div {
    height: 28.703703703703702vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0.78125vw 0;
}

.casas .galeria > div > div .overlay {
    display: none;
    text-align: center;
    cursor: pointer;
}

.casas .galeria > div > div:hover .overlay {
    display: block;
    width: 100%;
    height: 100%;
}

.casas .overlay {
    background-color: rgba(0, 97, 154, .6);
}

.casas .galeria .carregar-mais {
    color: #fff;
    background-color: #017EBE;
    border-radius: 10px;
}

.mt2 {
    margin-top: 7.77vh
}

.mt1 {
    margin-top: 3.33vh
}

.marina .mpbgs {
    min-height: 80vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% 100%;
    position: relative;
}

.marina .mpbgs > div {
    margin: 5vh;
    width: 90%;
    height: 90%;
    max-width: 90%;
    max-height: 90%;
    position: absolute;
    background-repeat: no-repeat;
}


.marina .mpbgs > div:first-child {
    background-position: top left, center;
    background-size: 65% auto;
    z-index: 1;
}

.marina .mpbgs > div:last-child {
    background-position: bottom right;
    background-size: 65% auto;
}


.rpv {
    margin-top: 5vh;
    display: table;
    background-color: #fff;
    border-radius: 10px;
    padding: 1vw 1vw 2vw 1vw;
    width: 100%;
}

.rpv > div {
    display: table-row;
}

.rpv > div > div {
    display: table-cell;
}

.rpv .legendas > div {
    padding-top: 1vw;
    padding-bottom: 1vw;
    text-align: center;
    font-family: 'Playfair Display', serif;
    font-size: 0.7291rem;
    line-height: 1.1;
    letter-spacing: 0.21rem;
    color: #30233D;
}

.rpv .logos {
    text-align: center;
    padding-bottom: 1vh;
}

.footer {
    background-color: #072F50;
    padding-bottom: 15vh;
    padding-top: 15vh;
}

.footer h5 {
    font-family: 'Playfair Display', serif;
    font-size: 1.25rem;
    line-height: 1.823;
    letter-spacing: 0.3125vw;
    text-align: center;
    font-weight: bold;
}

.footer p {
    font-family: 'DM Sans', sans-serif;
    font-size: 1.666rem;
    text-align: center;
}

.txt-legal p {
    margin-top: 3vh;
    opacity: .7;
    font-size: 0.625rem;
    line-height: 2;
}


.menu-topo-container {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

.menu-topo {
    padding-top: 0.7291666666666666vw;
    font-size: 0.9375rem;
    max-width: 75vw;
    margin: 0 auto;
    border-bottom: 1px solid #E7E7F2;
}

/* new menu 0 */

.menu-desk {
    transition-duration: 0.8s;
}

.menu-desk.moved {
    background-color: rgba(0, 97, 154, .5);
    backdrop-filter: blur(70px);
}

.menu-desk .menu-topo {
    transition-duration: 0.2s;
}

.menu-desk.moved .menu-topo {
    padding: 0;
    border-bottom: 1px solid transparent;
}

.menu-desk > .menu-topo > .row > div:nth-child(2) {
    text-align: center;
}

.menu-desk .menu-topo svg.logo {
    max-width: 100%;
    max-height: 100%;
    transition-duration: .5s;
}

.menu-desk.moved .menu-topo svg.logo {
    height: 40px;
}

/* new menu 1 */

.bf-container {
    position: fixed;
    bottom: 0;
    z-index: 100;
}

.bf {
    padding: 0.5729vw 2.5vw;
    max-width: 75vw;
    margin: 0 auto;
    background-color: #00619a;
    background-color: rgba(0, 97, 154, .5);
    border-radius: 20px 20px 0 0;
    backdrop-filter: blur(70px);
}

.bf > div, .bf-mob > div {
    display: table;
    width: 100%;
}

.bf > div > div, .bf-mob > div > div {
    display: table-cell;
}

.bf .cvtx span {
    display: block;
    line-height: 1;
}

.bf .cvtx span {
    font-size: 0.72916rem;
}

.bf .cvtx a span,
.bf .cvtx span:nth-child(2) {
    font-size: 0.833rem;
    font-weight: bold;
}

.bf .mf-dsk .brbb {
    width: fit-content;
    line-height: 1.8rem;
}

.bf .brbb {
    border: 1px solid #fff;
    border-radius: 10px;
    padding: 10px;
    margin-top: 10px;
}

.bf .brbb.cvtx {
    padding: 0 10px;
}

.bf .brbb.cvtx > div {
    padding: 10px 0;
}

.bf .txbf {
    font-weight: bold;
    font-size: 0.9375rem;
    line-height: 1.0416rem;
}

.menu-topo .logo {
    max-width: 100%;
    max-height: 100%;
}

.menu-topo ul {
    display: table;
    width: 100%;
    height: 100%;
}

.menu-topo ul li {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.menu-topo ul li a {
    color: #fff;
    text-decoration: none;
}

.slider-localizacao > div {
    /*max-width: 100% !important;*/
    /*padding-left: 12.5vw;*/
}

.menu-mobile {
    display: none;
}

.row.hrs {
    width: 20vw;
    margin: 0 2vw 0 2vw;
}

.contato .icone.pin,
.contato .icone.envelope,
.contato .icone.cell {
    width: 1.67rem;
}

.contato .icone.maps,
.contato .icone.waze {
    width: 2.55rem;
}

.contato {
    margin-bottom: -7.75vh;
}

.contato div:not(.ctt-form-wrapper) > .azd-ttl {
    margin-bottom: 8vh;
}

.contato div.ctt-form-wrapper > .azd-ttl {
    font-size: 2rem;
}

.icones div.ico {
    text-align: center;
}

.icones div.txt > div,
.icones div.ico > div {
    height: 56px;
    vertical-align: middle;
    margin-bottom: 0 !important;
    display: table-cell;
    color: #017EBE;
}


.bttop {
    position: fixed;
    bottom: 10vh;
    right: 1vw;
    font-size: 2.5rem;
    border-radius: 100%;
    text-align: center;
    vertical-align: middle;
    background-color: rgba(0, 97, 154, .5);
    backdrop-filter: blur(70px);
    z-index: 10;
    padding: 0rem .8rem .2rem 0.8rem;
    line-height: 1;
    cursor: pointer;
    display: none;
}

a.len {
    color: #fff;
    text-decoration: none;
    font-size: .7rem;
}

@media screen and (min-width: 768px) {

    .conceito.t1 div.img-container {
        background-size: cover, 0, 0, 0, 0, 0;
    }

    .conceito.t2 div.img-container {
        background-size: 0, cover, 0, 0, 0, 0;
    }

    .conceito.t3 div.img-container {
        background-size: 0, 0, cover, 0, 0, 0;
    }

    .lightbox-casas {
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
        background-color: rgba(0, 97, 154, .85);
        z-index: 150;
        display: none;
    }

    .lightbox-casas > div {
        position: relative;
        width: 100%;
        height: 100%;
    }

    .lightbox-casas .lightbox-casas-slider {
        width: 90%;
        height: 90%;
        top: 5%;
        left: 5%;
        position: absolute;
    }

    .fechar {
        cursor: pointer;
        position: absolute;
        top: 0;
        right: 0;
        font-family: 'Playfair Display', serif;
        color: #fff;
        display: block;
        width: 4vw;
        font-size: 3vw;
        height: 5vh;
        text-align: left;
    }

    .lightbox-casas .lightbox-casas-slider > div,
    .lightbox-casas .lightbox-casas-slider div.lightbox-casas-slide {
        width: 90vw;
        height: 90vh;
    }

    .lightbox-casas .lightbox-casas-slider div.lightbox-casas-slide {
        background-position: center;
        background-size: contain;
        background-repeat: no-repeat;
    }

    .fc-slider {
        background-size: cover, 0;
    }
}

@media screen and (max-width: 767px) {

    .conceito.t1 div.img-container {
        background-size: 0, 0, 0, cover, 0, 0;
    }

    .conceito.t2 div.img-container {
        background-size: 0, 0, 0, 0, cover, 0;
    }

    .conceito.t3 div.img-container {
        background-size: 0, 0, 0, 0, 0, cover;
    }

    .fc-slider {
        overflow: hidden !important;
        background-size: 0, cover;
    }

    .margins, .theme-ttl {
        margin-left: 5vw;
        margin-right: 5vw;
    }

    .fw {
        width: 100vw;
        max-width: 100%;
        overflow-x: hidden;
        overflow-y: visible;
        padding-bottom: 10px;
    }

    .fw.ml, .fw.mr {
        max-width: 95%;
        width: 95vw;
    }

    .fw.ml {
        margin-left: 5vw;
    }

    .fw.mr {
        margin-right: 5vw;
    }

    .mr-mb {
        margin-right: 5vw;
        max-width: 95%;
    }

    .margins-mb, .fw.margins-mb {
        max-width: 90%;
        width: 90vw;
        margin-left: 5vw;
    }


    .menu-topo {
        max-width: 100%;
        border: none;
    }

    .menu-mobile .menu-topo ul {
        display: block;
        width: 80%;
        margin: 10rem auto 0 auto;
        height: auto;
    }

    .menu-mobile .menu-topo ul li {
        display: block;
        text-align: left;
        vertical-align: middle;
    }

    .menu-mobile .menu-topo ul li:not(:last-child) {
        border-bottom: 1px solid rgba(231, 231, 242, .4);
        padding-bottom: 2rem;
        margin-bottom: 2rem;
    }

    .menu-mobile .menu-topo ul li a {
        color: #00619A;
        text-decoration: none;
        font-size: 4.44rem;
        line-height: 2.079;
        letter-spacing: 1.66rem;
        font-weight: bold;
        font-family: 'Playfair Display', serif;
    }

    .menu-mobile {
        z-index: 110;
        background-color: #FAFAFA;
        max-width: 100%;
        width: 100vw;
        max-height: 100%;
        height: 100vh;
    }

    .menu-mobile.active {
        display: block;
    }

    .slidetxt {
        top: 27.5vh;
        left: 4.44vw;
        width: 66vw;
    }

    .slidetxt h1 {
        font-family: 'Playfair Display SC', serif;
        font-size: 11.11rem;
        line-height: 1.1;
        letter-spacing: .11rem;
    }

    .slidetxt h5, .next-slide {
        display: none;
    }

    .conceito .topics-container {
        display: none;
    }

    .conceito .topics-container.mobile {
        display: block;
    }

    .conceito-bg-ttl {
        padding-bottom: 17.5vh;
    }

    .conceito div.img-container {
        top: -25vh;
        width: 95vw;
        height: 38.9vh;
        right: -5vw;
        margin-bottom: -47vh;
        position: relative;
    }

    .conceito .bg-parc {
        display: none;
    }

    .conceito .topics-mobile {
        margin-top: 27vh;
        width: 95vw;
        margin-left: 5vw;
    }

    .conceito .topics-mobile div[data-el=".conceito"] {
        margin-bottom: 1vh;
    }

    .conceito .topic {
        text-align: center;
        height: auto;
    }

    .conceito .mtopics {
        background-color: #017EBE;
        padding: 2.5vh 1.66vw;
        margin-top: 1vh;
    }

    .conceito .mtopics > span {
        display: none;
        font-size: 3.33rem;
        line-height: 1.432;
        width: 100%;
        vertical-align: middle;
    }

    .conceito.t1 .mtopics .mtopic-1 {
        display: table-cell;
    }

    .conceito.t2 .mtopics .mtopic-2 {
        display: table-cell;
    }

    .conceito.t3 .mtopics .mtopic-3 {
        display: table-cell;
    }

    .conceito .topic.active span {
        color: #072f50;
    }

    .conceito .topic span {
        color: #BDBDBD;
        font-size: 3.5rem;
    }

    .conceito.fh {
        height: auto;
    }

    .localizacao .theme-ttl {
        padding-top: 5.9259vh;
        margin-left: 5vw;
        margin-right: 5vw;
    }

    .localizacao .theme-ttl {
        font-size: 6.11rem;
    }

    .localizacao .theme-ttl span {
        margin-left: 0;
        font-size: 3.88rem;
    }

    .localizacao .theme-ttl > div {
        padding-left: 0;
        padding-right: 0;
    }

    .slider-pager div,
    .slider-localizacao-ctrl div {
        font-size: 5rem;
    }

    .slider-pager div .row.hrs,
    .slider-localizacao-ctrl div .row.hrs {
        width: 100%;
        margin: 0;
    }

    .slider-pager > div,
    .slider-localizacao-ctrl > div {
        width: calc(100% - 60px);
    }

    .slider-pager div.start,
    .slider-pager div.last,
    .slider-localizacao-ctrl > div.start,
    .slider-localizacao-ctrl > div.last {
        width: 30px;
        text-align: center;
        font-size: 4rem;
    }

    .slider-pager .hrs .col.active,
    .slider-localizacao-ctrl .hrs .col.active {
        margin-top: 3rem;
    }

    .slider-pager .hrs .col,
    .slider-localizacao-ctrl .hrs .col {
        margin-top: calc(3rem + 1px);
    }

    .slider-pager .bx-wrapper .bx-viewport .bx-caption,
    .localizacao .bx-wrapper .bx-viewport .bx-caption {
        display: none;
    }

    .localizacao .bx-viewport {
        width: 90vw !important;
        margin-left: 5vw !important;
        padding-left: 0 !important;
    }

    .localizacao .slider-localizacao-ctrl, .slider-pager {
        margin-left: 0;
        margin-right: 0;
    }

    .conceito .theme-ttl div {
        padding: 2vh 0;
    }

    .conceito .theme-ttl h3 {
        letter-spacing: 0;
        padding: 2vh 0;
    }

    .theme-ttl div, .sub-ttl {
        font-size: 4.44rem;
        letter-spacing: 1.66rem;
    }

    .localizacao-cont .texts-map h4 {
        font-size: 6.66rem;
        letter-spacing: 0;
    }

    .localizacao-cont .texts-map div {
        font-size: 3.88rem;
    }

    .localizacao-cont .texts-map p {
        /*font-size: 3.33rem;*/
        font-size: 3.88rem;
    }

    .localizacao-cont .bg-loc-map {
        margin-top: 3rem;
    }

    .localizacao-cont .img-loc-map {
        background-size: 0;
        width: 95vw;
        max-width: 100%;
        height: auto;
    ''
    }

    .localizacao-cont .img-loc-map img {
        display: block;
        max-width: 100%;
        width: 95vw;
    }

    .implantacao, .casas {
        margin-top: 5.9259vh;
    }

    .implantacao .texts-map div.ttl {
        font-family: 'Playfair Display', serif;
        font-size: 4.44rem;
        line-height: 1.5;
        letter-spacing: 1.11rem;
        opacity: .7;
    }

    .implantacao .texts-map h4 {
        font-size: 6.66rem;
        line-height: 1.2;
        letter-spacing: -1px;
    }

    .implantacao .texts-map div.loc,
    .implantacao .texts-map p {
        font-size: 3.88rem;
        line-height: 1.5;
    }

    .icones div.txt > div,
    .implantacao .icones .txt {
        font-size: 4.44rem;
        line-height: 1.75;
        color: #017EBE;
    }

    .implantacao .icones .row {
        margin-bottom: 0;
    }

    .implantacao .icones {
        margin-top: 5vh;
    }

    .casas .theme-ttl.regular li span {
        font-size: 4.44rem;
        line-height: 1.5;
    }

    .excd .theme-ttl.regular span,
    .casas .theme-ttl.regular span {
        margin-left: 0;
        font-size: 3.88rem;
        line-height: 1.432;
    }

    .excd .azd-ttl,
    .casas .azd-ttl,
    .theme-ttl h3 {
        letter-spacing: -1px;
    }

    .excd .theme-ttl > div,
    .excd .theme-ttl h3,
    .casas .theme-ttl > div,
    .casas .theme-ttl h3 {
        margin-bottom: 3vh;
    }

    .excd-ctrl {
        font-size: 4.44rem;
    }

    .excd .bg-destaque {
        margin-top: 3.75vh;
        height: 7vh;
        margin-bottom: -3.5vh;
        z-index: -1;
    }

    .marina .mpbgs.margins-mb {
        height: 45vh;
        min-height: 45vh;
    }

    .marina .mpbgs > div {
        margin: 5vw 0;
    }

    .marina .txt-regular {
        font-size: 3.88rem;
    }

    .marina ul.azd {
        margin: 3.5vh 5vw;
    }

    .marina ul.azd > li {
        font-size: 4.44rem;
        line-height: 1.7;
        margin-bottom: 1.7rem;
    }

    .casas .galeria.imgs .bx-wrapper {
        margin-bottom: 2vh;
    }

    .casas .galeria img {
        width: 90vw;
        /*max-width: 100% !important;*/
        height: auto;
    }

    .casas .galeria > div > div {
        background-image: unset !important;
        height: unset !important;
    }

    .contato {
        margin-bottom: -40vh;
    }

    .contato .icone.pin,
    .contato .icone.envelope,
    .contato .icone.cell {
        width: 8.88rem;
    }

    .contato .icone.maps,
    .contato .icone.waze {
        width: 10rem;
    }

    .contato .row-p p {
        font-size: 4.44rem;
    }

    .contato .row-p div {
        font-size: 3.88rem;
    }

    .contato .row-e .ctt-txt a {
        font-size: 3.33rem;
    }

    .contato .row-c .ctt-txt a {
        font-size: 4.44rem;
    }

    .contato .row-e .ctt-txt a,
    .contato .row-c .ctt-txt a {
        color: #000;
    }

    .contato .ctt-form-container {
        margin-top: 10vh;
    }

    .contato .ctt-form-wrapper {
        top: 0;
        left: 0;
        padding: 5vw 5vw;
        position: unset;
    }

    .contato .ctt-form-wrapper label {
        font-size: 3.33rem;
    }

    .contato .ctt-form-wrapper input,
    .contato .ctt-form-wrapper button,
    .contato .ctt-form-wrapper textarea {
        font-size: 3.88rem;
        border-radius: 2.77rem;
        padding: 2.77rem;
    }

    .footer {
        padding-top: 40vh;
    }

    .footer h5 {
        font-size: 4.44rem;
    }

    .footer p {
        font-size: 6.66rem;
    }

    .footer .txt-legal p {
        font-size: 3rem;
    }

    .footer .rpv .legendas > div {
        font-size: 3.88rem;
        line-height: 3;
    }

    .footer .rpv > div {
        display: block;
    }

    .footer .rpv > div > div {
        display: block;
    }

    .footer .logos .col-5 img,
    .footer .logos .col-6 img,
    .footer .logos .col-7 img {
        height: 20rem;
    }

    .footer .logos .col-12 img {
        height: 30rem;
    }

    .azd-ttl, .theme-ttl h3 {
        font-size: 6.66rem;
    }

    .bf .bf-mobile {
        display: none;
        padding-top: 1.38rem;
    }

    .bf .bf-mobile .txbf {
        font-size: 3.34rem;
        line-height: 1.1;
        margin: 2rem 1rem 3rem 1rem;
    }

    .bf .bf-mobile .icones div {
        text-align: center;
        margin-bottom: 4rem;
    }

    .bf .bf-mobile .icones div:first-child {
        text-align: left;
        margin-left: 1rem;
        margin-right: -1rem;
    }

    .bf .bf-mobile .icones div:last-child {
        text-align: right;
        margin-right: 1rem;
        margin-left: -1rem;
    }

    .bf > div > div {
        display: flex;
    }

    .mobile-fix {
        position: absolute;
        top: 0;
        left: 0;
        width: 100vw;
        height: 100vh;
    }

    .bttop {
        line-height: 18rem;
        font-size: 10rem;
        width: 20rem;
        height: 20rem;
        right: 3vw;
        bottom: 12vh;
    }

    a.len {
        padding-top: 1vh;
        font-size: 2rem;
    }

    .contato div.wpcf7-response-output {
        font-size: 3.3rem;
    }
}

body:not(.page-template-home-php) .bf-container,
body:not(.page-template-home-php) .footer,
body:not(.page-template-home-php) .mob-overlay-bg,
body:not(.page-template-home-php) .menu-topo-container {
    display: none !important;
}

.google-txt {
    text-align: center;
    color: #000;
    bottom: 0;
    left: 0;
    margin: 0 auto;
    background-color: rgba(255, 255, 255, .5);
}

body.page-template-page-area-restrita .google-txt {
    display: none;
}

body:not(.page-template-home-php) .google-txt {
    position: absolute;
    width: 50%;
}

.google-txt a {
    font-size: .75rem;
    line-height: 1.1;
}

.grecaptcha-badge {
    opacity: 0;
}