:root {
    --content-font: 'Codec Pro', sans-serif;
    --heading-font: 'Butler', sans-serif;
    --handw-font: 'ABScript', sans-serif;
    --white: #ffffff;
    --brisa-blue: #73A4AA;
    --blue: #44B1BF;
}

html, body {
    overflow-x: hidden;
}

body {
    font-family: var( --content-font );
    color: #003575;
}

img {
    max-width: 100%;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var( --heading-font );
    font-weight: 400;
    line-height: 1.1;
}

.content-font {
    font-family: var( --content-font );
}

a {
    transition: all 0.15s ease-in-out;
}

a, a:hover, a:focus, a:active {
    text-decoration: none;
}

header, header a, header a:hover, header a:focus {
    color: #E5BA6D;
}

header .nav-link, header .nav-link:hover, header .nav-link:focus, header .nav-link:active {
    color: var( --white );
}

.navbar {
    padding: 1rem 0;
    transition: padding 140ms ease-in-out;
}

.navbar-brand, .navbar-toggler {
    z-index: 1032;
}

.navbar-toggler:focus {
    box-shadow: none;
}

.navbar-brand > img {
    height: 3rem;
}

.handw-font {
    font-family: var( --handw-font );
    font-weight: 300;
}

.big-title {
    font-size: 2.25rem;
}

.big-title.alternative {
    font-size: 2rem;
}

.big-title.alt {
    font-size: 2rem;
}

.big-title.hero {
    font-size: 3.5rem;
}

.big-title > .handw-font {
    font-size: 200%;
}

.big-title > span.handw-font + span {
    margin-top: -2rem;
}

.big-title > span + span.handw-font {
    margin-top: -0.75rem;
}

.big-title > small {
    font-size: 52%;
}

.btn {
    padding: .5rem 1.5rem;
    background-color: #E5BA6D;
    color: #fff;
    border-radius: 0.5rem;
}

.btn:hover, .btn:focus, .btn:active {
    background-color: #CEA762;
    color: #fff;
}

.btn.alt {
    background-color: #FDC663;
}

.fondo-arena {
    position: relative;
}

.fondo-arena::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 0;
    background-image: url(../img/sections/arena-brisa-marena.jpg);
    background-size: cover;
    background-position: center;
    opacity: 0.3;
}

.fondo-arena > div {
    position: relative;
}

.team .member, .features .feature {
    padding: 0 1rem;
    margin-bottom: 1.25rem;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
    text-align: center;
}

.team .member > .image {
    width: 100%;
    padding-bottom: 100%;
    box-shadow: 0 0 5px rgba(0,0,0,0.25);
    border-radius: 100%;
    transition: border-color 0.25s ease-in-out;
    background-size: cover;
    background-position: center;
}

.cover-cc-bg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.dark-section {
    color: #fff;
}

.form-control {
    border-radius: 0.5rem;
    height: calc(1.85em + .75rem + 2px);
}

.form-control:focus, .form-control:active {
    box-shadow: none;
    text-shadow: none;
}

.contact-section, .contact-section .form-control, .contact-section .form-control:focus, .contact-section .form-control:active {
    color: #603F18;
}

.contact-section .form-control::placeholder {
    color: #C7B299;
    opacity: 1;
}

.contact-section .form-control:-ms-input-placeholder {
    color: #C7B299;
}

.contact-section .form-control::-ms-input-placeholder {
    color: #C7B299;
}

.bm-form .form-group:nth-last-child(2) {
    margin-bottom: 0;
}

.bm-form .form-group:nth-last-child(2) .form-control {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 0;
}

.bm-form .form-group:nth-last-child(2) + .form-submit > button {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

/*Radios*/
[type="radio"]:not(:checked),[type="radio"]:checked {
	position:absolute;
	left:-9999px;
	visibility:hidden;
}

[type="radio"]:not(:checked)+label,[type="radio"]:checked+label {
	position:relative;
	padding-left:30px;
	cursor:pointer;
	display:inline-block;
	height:auto;
	transition:.28s ease;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
}

[type="radio"]+label:before,[type="radio"]+label:after {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:20px;
	height:20px;
	z-index:0;
	transition:.28s ease;
}

[type="radio"]:not(:checked)+label:before {
	border-radius:50%;
	border:2px solid #DAD2B7;;
	background-color: #DAD2B7;;
}

[type="radio"]:not(:checked)+label:after {
	border-radius:50%;
	z-index:-1;
	-webkit-transform:scale(0);
	transform:scale(0);
}

[type="radio"]:checked+label:before {
	border-radius:50%;
	border:2px solid transparent;
}

[type="radio"].with-gap:checked+label:before {
	border-radius:50%;
	border:2px solid #FDC663;
	background-color: #FDC663;
}

[type="radio"].with-gap:checked+label:after {
	border-radius:50%;
	border:2px solid #fff;
	background-color:#fff;
	z-index:0;
	-webkit-transform:scale(0.5);
	transform:scale(0.5);
}
/*End of: Radio*/

.no-list, .contact-list-data {
    padding-left: 0;
    list-style: none;
}

footer {
    background-color: #C7B299;
    color: #705C44;
}

footer .footer-nav a {
    display: block;
    padding: 0.25rem 1.25rem;
    color: #fff;
}

.footer-logo {
    max-height: 6rem;
}

.subscribe-form .input {
    position: relative;
}

.subscribe-form .input > .form-control {
    height: 2.75rem;
    border: 0;
    padding-right: 10rem;
}

.subscribe-form .input > button {
    position: absolute;
    right: 0.25rem;
    top: 0.25rem;
    bottom: 0.25rem;
    background-color: #3AC0EA;
}

.main-slider {
    height: 70vh;
    min-height: 600px;
}

.banner-content h1, .banner-content h2, .banner-content h3 {
    color: #fff;
}

a.link-btn {
    color: var( --white );
    border-radius: 0.5rem;
    border: 1px solid var( --blue );
    background: var( --blue );
}

[id$="-header"] {
    -webkit-transition: all 0.25s;
    -moz-transition: all 0.25s;
    transition: all 0.25s;
}

[id$="-header"].scrolled {
    background-color: var( --brisa-blue );
    box-shadow: 0 0 5px rgba(0,0,0,.15);
}

[id$="-header"].scrolled .navbar {
    padding: 0.5rem 0;
}

.navbar-toggler {
    padding: 0.5rem;
    padding-right: 0;
    margin-left: 1rem;
}

.burger-menu {
    width: 35px;
}

.burger-menu span {
    display: block;
    position: relative;
    height: 2px;
    width: 100%;
    background-color: var( --white );
    margin-bottom: 5px;
    -webkit-transition: transform .5s;
    -moz-transition: transform 0.5s;
    transition: transform 0.5s;
}

.burger-menu span:last-child {
    margin-bottom: 0;
}

.burger-menu[aria-expanded="true"] span:first-child {
    transform: rotate(-45deg);
    top: 0;
}

.burger-menu[aria-expanded="true"] span:nth-child(2) {
    opacity: 0;
    display: none;
}

.burger-menu[aria-expanded="true"] span:last-child {
    transform: rotate(45deg);
    opacity: 1;
    display: block;
    bottom: 2px;
}

.burger-menu[aria-expanded="true"] span:first-child,
.burger-menu[aria-expanded="true"] span:last-child {
    margin-bottom: 0;
}

[id$="-nav-collapse"] {
    position: fixed;
    width: 100%;
    left: 0;
    bottom: 0px;
    background-color: var( --brisa-blue );
    z-index: 1030;
    visibility: hidden;
    opacity: 0;
    will-change: opacity,visibility;
    /*top: 5.6rem;*/
    top: 0;
    color: var( --white );
    display: block;
    transition: visibility 600ms cubic-bezier(.4,0,.2,1), opacity 400ms cubic-bezier(.4,0,.2,1);
    height: 100% !important;
}

[id$="-nav-collapse"] .mobile-menu {
    transform: translateY(20px);
    transition: transform 600ms cubic-bezier(.4,0,.2,1);
}

[id$="-nav-collapse"].show {
    visibility: visible;
    opacity: 1;
}

[id$="-nav-collapse"].show .mobile-menu {
    transform: translateY(0);
}

[id$="-nav-collapse"] li + li {
    margin-top: 1.15rem;
}

.mobile-menu {
    font-size: 1.35rem;
}

.features {
    font-size: 85%;
}

.features .icon {
    width: 5rem;
    height: 5rem;
    margin: 0 auto 0.5rem;
    padding: 0.85rem;
    border-radius: 25px;
    background-color: #E8FDFF;
}

.call-to-action {
    background-color: #E5BA6D;
    color: #603F18;
}

.call-to-action .btn {
    border-color: #603F18;
    color: #603F18;
}

.call-to-action .btn:hover, .call-to-action .btn:focus, .call-to-action .btn:active {
    background-color: #603F18;
    color: #E5BA6D;
}

.gallery-slider {
    height: 50vh;
}

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 1.25rem;
}

.swiper-pagination-bullet {
    width: 30px;
    height: 5px;
    border-radius: 0;
}

.swiper-pagination-bullet-active {
    background-color: #FDC663;
}

.swiper-button-next, .swiper-button-prev {
    color: #003575;
}

.card-promo {
    background-color: #fff;
    box-shadow: 0px 19px 30px rgba(0, 0, 0, 0.05);
    font-size: 85%;
    position: relative;
    overflow: hidden;
}

.project-card, .card-promo {
    background-color: #fff;
    box-shadow: 0px 19px 30px rgba(0, 0, 0, 0.05);
}

.card-promo .title {
    color: #D8B77C;
}

/* Quoting */
#brisa-marena-map {
    width: 100%;
    max-height: 100%;
}

[id^="landmarks-lote"]:not(.not-available) {
    cursor: pointer;
}

[id^="landmarks-lote"].not-available > polygon,
[id^="landmarks-lote"].not-available > path,
[id^="landmarks-lote"].not-available > rect {
    fill: #dd3333;
}

.allotment-map-controls {
    width: 1.75rem;
    display:block;
    margin: 0 auto;
}

div[id^="zoom-"] {
    width: 2rem;
    height: 2rem;
    background-color: #96A581;
    display: block;
    border: 0;
    border-radius: 10px;
    cursor:pointer;
}

div[id^="zoom-"] + div[id^="zoom-"] {
    margin-top: 5px;
}

div[id^="zoom-"] img {
    height: 1.25rem;
    display:block;
    pointer-events: none;
}

.compass-rose {
    top: 1.5rem;
}

.quoting {
    background-color: #DEE5D4;
}

.box.quote-info {
    background-color: #fff;
    color: #003575;
    border-radius: 0;
}

.dot {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 100%;
    background-color: #92BB6E;
}

.dot.not-available {
    background-color: #dd3333;
}

.text-disclaimer {
    font-size: 80%;
}

[id^='landmarks-lote'] > g,
[id^='landmarks-lote'] > text,
[id^='landmarks-lote'].not-available {
    pointer-events: none;
}

.tooltip {
    pointer-events: none;
    z-index: 10000;
}

.tooltip-inner {
    font-family: var( --content-font );
    font-weight: 600;
    border-radius: 0;
}

.tooltip.show {
    opacity: 1;
}

.fixed-buttons {
    left: auto;
    right: 2rem;
    position: absolute;
    top: 1.5rem;
}

.remodal-overlay {
    background: rgba(0, 0, 0, 0.5) !important;
}

.remodal-close {
    left: auto;
    right: 1rem;
    top: 1rem;
    width: 20px;
    height: 20px;
    z-index: 5;
}

.remodal {
    padding: 0;
}

.remodal-close::before {
    content: "";
    background-image: url(../svg/icons/close.svg);
    background-position: center;
    background-repeat: no-repeat;
}

.remodal-close, .remodal-close::before {
    width: 20px;
    height: 20px;
}

.remodal .content {
    text-align: left;
}

.btn.btn-quote {
    border-radius: 0;
    padding: 0.75rem;
}

.price {
    color: #003575;
}

.price > .alt-text, .area {
    font-size: 1.25rem;
}

.price > .main-price {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1;
}

.price sup {
    top: -.4em;
    line-height: 1;
    font-size: 60%;
}

.video-wrapper {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 */
    height: 0;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.logos > img:first-child {
    max-height: 2.75rem;
}

.logos > img:last-child {
    max-height: 3.75rem;
}

#loader {
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background-color: rgba(0,0,0,0.65);
	z-index: 99999;
}

.nav-pills .nav-link, .nav-pills .nav-link:not(.active):hover {
	color: #003575;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link {
	background-color: #003575;
}

@media( max-width: 767px ){
    .banner-content h1 {
        font-size: 2rem;
    }
    .footer-nav li {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
    }
}

@media( min-width: 768px ){
    .big-title {
        font-size: 3.25rem;
    }
    .big-title.alternative {
        font-size: 2.25rem;
    }
    .big-title.alt {
        font-size: 2.75rem;
    }
    .big-title.hero {
        font-size: 4rem;
    }
    .big-title > span.handw-font + span {
        margin-top: -3rem;
    }
    .team .member, .features .feature {
        -ms-flex: 0 0 30%;
        flex: 0 0 30%;
        max-width: 30%;
    }
    .footer-logo {
        max-height: 7rem;
    }
    .navbar-brand > img {
        height: 4rem;
    }
    .allotment-map-controls {
        width: 2rem;
    }
    button[id^="zoom-"] {
        height: 2rem;
    }
    .price > .main-price {
        font-size: 3.5rem;
    }
    .oversize-image {
        width: 125%;
        max-width: 125%;
        margin-left: -25%;
    }
    .logos > img:first-child {
        max-height: 4rem;
    }
    .logos > img:last-child {
        max-height: 5rem;
    }
}

@media( min-width: 992px ){
    .team .member, .features .feature {
        -ms-flex: 0 0 calc( 100% / 6 );
        flex: 0 0 calc( 100% / 6 );
        max-width: calc( 100% / 6 );
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
    }
    [id$="-nav-collapse"] {
        position: relative;
        top: 0px;
        width: auto;
        right: 0px;
        bottom: 0px;
        background-color: transparent;
        transform: none;
        visibility: visible;
        opacity: 1;
        height: auto !important;
    }
    [id$="-nav-collapse"] li + li {
        margin-top: 0;
    }
    .fixed-buttons {
        right:5rem;
    }
    .allotment-map > .fixed-actions {
        position: absolute;
        z-index: 3;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        left: 10rem;
        max-width: 25rem;
    }
    .box.quote-info {
        border-radius: 1rem;
    }
    .remodal {
        max-width: 950px;
    }
}