* {
    font-family: 'Montserrat', 'sans-serif' !important;
}

.header_mid_inner .logo img.logo_retina{
    width: 100% !important;
}

.container,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
    max-width: 100% !important;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 1400px) {
    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1640px !important;
    }
}

input[type="text"], input[type="email"], textarea {
    background: #FFF !important;
}

input[type="submit"] {
    margin-left: 0 !important;
    font-size: clamp(1.125rem, calc(18px + 8 * ((100vw - 320px) / 1600)), 1.625rem) !important;
    line-height: clamp(1.8125rem, calc(29px + 14 * ((100vw - 320px) / 1600)), 2.6875rem) !important;
    text-transform: capitalize !important;
    min-height: 64px;
}

.mt-3 {
    margin-top: 3em !important;
}

.mt-2 {
    margin-top: 2em !important;
}


.mt-lg-0 {
    @media screen and (min-width: 1025px) {
        margin-top: 0 !important;
    }
}

div.header_mid_inner {
    max-width: 1640px;
    width: 100%;
}

.headline_inner {
    display: none;
}

#middle .content_wrap {
    width: 100% !important;
    padding: 0 !important;
}

#hero .main-content {
    margin-top: 10vw;
    @media screen and (min-width: 1200px) {
        top: 0;
        height: 100%;
        margin-top: 0;
        position: absolute;
    }
}

#hero .mobile-desktop {
    display: none !important;
    @media screen and (min-width: 1200px) {
        display: block !important;
    }
}

#hero picture {
    max-height: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    width: 100% !important;
}

#hero img {
    width: 100%;
    height: 100%;
}

#hero .mobile-image {
    margin-left: auto;
    display: block !important;
    @media screen and (min-width: 1200px) {
        display: none !important;
    }
}

#hero h6 {
    font-family: 'Montserrat', 'sans-serif';
    font-weight: 500;
    font-style: normal;
    color: #C2A020;
    text-transform: uppercase;
    font-size: clamp(1.125rem, calc(18px + 7 * ((100vw - 320px) / 1600)), 1.5625rem);
    line-height: clamp(1.375rem, calc(22px + 8 * ((100vw - 320px) / 1600)), 1.875rem);
}

#hero h1 {
    font-size: clamp(2rem, calc(32px + 15 * ((100vw - 320px) / 1600)), 2.9375rem);
    line-height: clamp(2.4375rem, calc(39px + 18 * ((100vw - 320px) / 1600)), 3.5625rem);
    font-family: 'Montserrat', 'sans-serif';
    font-style: normal;
    font-weight: 500;
    max-width: 552px;
}

#hero p {
    font-size: clamp(1.125rem, calc(18px + 8 * ((100vw - 320px) / 1600)), 1.625rem);
    line-height: clamp(1.8125rem, calc(29px + 14 * ((100vw - 320px) / 1600)), 2.6875rem);
    padding-bottom: 0;
}

#hero .main-content {
    @media screen and (min-width: 1200px) {
        max-width: 45%;
    }
}

#contact {
    background: rgba(194, 160, 32, 0.39);
    padding-bottom: 30px;
    margin-top: 10vw;
    @media screen and (min-width: 1025px) {
        padding-top: 59px;
        padding-bottom: 59px;
    }

    @media screen and (min-width: 1200px) {
        margin-top: 0;
    }
}

#contact h3 {
    font-size: clamp(1.25rem, calc(20px + 9 * ((100vw - 320px) / 1600)), 1.8125rem);
    line-height: clamp(1.5rem, calc(24px + 11 * ((100vw - 320px) / 1600)), 2.1875rem);
    font-weight: 500;
    margin-bottom: 0;
}

#contact p {
    padding-bottom: 0;
    font-size: clamp(1.125rem, calc(18px + 8 * ((100vw - 320px) / 1600)), 1.625rem);
    line-height: clamp(1.8125rem, calc(29px + 14 * ((100vw - 320px) / 1600)), 2.6875rem);
}

#contact .container-gap {
    gap: 18px;
}

.map-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%; /* 16:9 = 9/16 = 0.5625 = 56.25% */
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    margin: 20px 0;
}

.map-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0;
}

/* Outras proporções se precisar */
.map-container.ratio-4x3 {
    padding-bottom: 75%; /* 4:3 = 3/4 = 0.75 = 75% */
}

.map-container.ratio-1x1 {
    padding-bottom: 100%; /* 1:1 = 1/1 = 1 = 100% */
}

.map-container.ratio-21x9 {
    padding-bottom: 42.857%; /* 21:9 = 9/21 = 0.42857 = 42.857% */
}

#map {
    margin-top: 10vw;
    @media screen and (min-width: 1640px) {
        margin-top: 200px;
    }
}

#form h2 {
    font-size: clamp(2rem, calc(32px + 15 * ((100vw - 320px) / 1600)), 2.9375rem);
    line-height: clamp(2.4375rem, calc(39px + 18 * ((100vw - 320px) / 1600)), 3.5625rem);
    font-family: 'Montserrat', 'sans-serif';
    font-style: normal;
    font-weight: 500;
}

#form h6 {
    font-family: 'Montserrat', 'sans-serif';
    font-weight: 500;
    font-style: normal;
    color: #C2A020;
    text-transform: uppercase;
    font-size: clamp(1.125rem, calc(18px + 7 * ((100vw - 320px) / 1600)), 1.5625rem);
    line-height: clamp(1.375rem, calc(22px + 8 * ((100vw - 320px) / 1600)), 1.875rem);
}

#form p {
    font-size: clamp(1.125rem, calc(18px + 8 * ((100vw - 320px) / 1600)), 1.625rem);
    line-height: clamp(1.8125rem, calc(29px + 14 * ((100vw - 320px) / 1600)), 2.6875rem);
}

#form .main-image {
    @media screen and (min-width: 1025px) {
        padding-left: 85px;
    }
}

#form img {
    width: 100%;
}

#form {
    margin-top: 10vw;
    @media screen and (min-width: 1025px) {
        margin-top: 200px
    }
}

#testimonials {
    margin-top: 10vw;
    margin-bottom: 10vw;
    @media screen and (min-width: 1640px) {
        margin-top: 200px;
        margin-bottom: 200px;
    }
}

#testimonials h2 {
    font-size: clamp(2rem, calc(32px + 15 * ((100vw - 320px) / 1600)), 2.9375rem);
    line-height: clamp(2.4375rem, calc(39px + 18 * ((100vw - 320px) / 1600)), 3.5625rem);
    font-weight: 500;
}

#testimonials p {
    font-size: clamp(1.125rem, calc(18px + 8 * ((100vw - 320px) / 1600)), 1.625rem);
    line-height: clamp(1.8125rem, calc(29px + 14 * ((100vw - 320px) / 1600)), 2.6875rem);
}

#testimonials .testimonial-content {
    margin-top: 22px;
}

#testimonials .testimonial-content {
    @media screen and (min-width: 769px) {
        padding-right: 95px;
    }
}

#testimonials .testimonials-header {
    margin-bottom: 5vw;
    @media screen and (min-width: 1025px) {
        margin-bottom: 85px;
    }
}

#testimonials .testimonial-content p {
    font-style: italic;
}

#testimonials .testimonial-author h3 {
    margin-bottom: 0;
    font-size: clamp(1.25rem, calc(20px + 9 * ((100vw - 320px) / 1600)), 1.8125rem);
    line-height: clamp(1.5rem, calc(24px + 11 * ((100vw - 320px) / 1600)), 2.1875rem);
    font-weight: 500;
}

#testimonials .testimonial-author p {
    padding-bottom: 0;
}

#testimonials .testimonial-author {
    gap: 15px;
}

#testimonials .testimonials-prev,
#testimonials .testimonials-next {
    padding: 17px;
}

#testimonials .nav-desktop .testimonials-nav {
    text-align: right;
}

#testimonials .testimonials-nav-mobile {
    margin-top: 5vw;
    text-align: center;
}