.elementor-38 .elementor-element.elementor-element-7b32e37{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--margin-top:-20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-38 .elementor-element.elementor-element-7b32e37:not(.elementor-motion-effects-element-type-background), .elementor-38 .elementor-element.elementor-element-7b32e37 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://geohorizont.com/wp-content/uploads/2026/06/contato.webp");background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-38 .elementor-element.elementor-element-3782845{text-align:center;}.elementor-38 .elementor-element.elementor-element-3782845 .elementor-heading-title{color:var( --e-global-color-58be983 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-38 .elementor-element.elementor-element-c429fd1{text-align:center;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;color:var( --e-global-color-58be983 );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-38 .elementor-element.elementor-element-be4b078 .elementor-button{background-color:var( --e-global-color-dff8941 );font-family:"Montserrat", Sans-serif;font-size:22px;font-weight:500;line-height:1em;letter-spacing:0px;border-radius:30px 30px 30px 30px;}.elementor-38 .elementor-element.elementor-element-d924451{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-38 .elementor-element.elementor-element-0afa207{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:767px){.elementor-38 .elementor-element.elementor-element-c429fd1{font-size:14px;}}/* Start custom CSS for button, class: .elementor-element-be4b078 *//* BOTÃO GEO */

.elementor-element-8dcfe7b .elementor-button{

    background: #F7A51D !important;

    color: #FFFFFF !important;

    border: none !important;

    border-radius: 999px !important;

    min-width: 300px;
    height: 58px;

    padding: 0 40px !important;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    transition: all .3s ease;

    box-shadow: none;
}

.elementor-element-8dcfe7b .elementor-button:hover{

    background: #E48C02 !important;

    transform: translateY(-2px);
}

.elementor-element-8dcfe7b .elementor-button-text{

    font-family: "Montserrat", sans-serif;

    font-size: 18px;

    font-weight: 500;

    line-height: 1;

    color: #FFFFFF;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-7b32e37 *//* HERO GLOBAL */
.geo-hero{
    position: relative !important;
    overflow: hidden !important;
    min-height: 650px !important;
    padding: 80px 20px !important;

    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;

    text-align: center !important;

    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

.geo-hero::before{
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 1;
}

.geo-hero > .elementor-element{
    position: relative;
    z-index: 2;
}

/* H1 */
.geo-hero .geo-hero-title .elementor-heading-title{
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(42px, 4vw, 48px) !important;
    font-weight: 500 !important;
    line-height: .95 !important;
    text-transform: uppercase !important;
    color: #fff !important;
    margin: 0 !important;
}

/* TEXTO */
.geo-hero .geo-hero-text{
    max-width: 780px !important;
    margin-top: 20px !important;
    margin-bottom: 35px !important;
}

.geo-hero .geo-hero-text,
.geo-hero .geo-hero-text p{
    font-family: "Montserrat", sans-serif !important;
    font-size: clamp(18px, 1.6vw, 24px) !important;
    font-weight: 400 !important;
    line-height: 1.35 !important;
    color: #fff !important;
    margin: 0 !important;
}

/* BOTÃO */
.geo-hero .geo-hero-btn .elementor-button{
    background: #F7A51D !important;
    border-radius: 999px !important;
    padding: 16px 48px !important;
    border: none !important;
}

.geo-hero .geo-hero-btn .elementor-button-text{
    font-family: "Montserrat", sans-serif !important;
    font-size: 18px !important;
    font-weight: 500 !important;
    color: #fff !important;
}

/* MOBILE */
@media(max-width:767px){
    .geo-hero{
        min-height: 500px !important;
        padding: 60px 20px !important;
    }

    .geo-hero .geo-hero-title .elementor-heading-title{
        font-size: 28px !important;
    }

    .geo-hero .geo-hero-text,
    .geo-hero .geo-hero-text p{
        font-size: 16px !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4055475 */.geo-contact {
    --geo-contact-bg: #F4F4F4;
    --geo-contact-text: #1A1A1A;
    --geo-contact-border: #2B2B2B;
    --geo-contact-orange: #F6A514;
    --geo-contact-orange-hover: #E69200;
    --geo-contact-white: #FFFFFF;

    --geo-contact-font:
        "Montserrat",
        "Inter",
        Arial,
        sans-serif;

    width: 100%;
    max-width: 100%;

    margin: 0;
    padding: 80px 0;

    background-color: var(--geo-contact-bg);
}

/* Cálculo previsível somente dentro desta seção */

.geo-contact,
.geo-contact *,
.geo-contact *::before,
.geo-contact *::after {
    box-sizing: border-box;
}

/* =========================================================
   FORMULÁRIO
========================================================= */

.geo-contact .geo-contact-form {
    width: min(1200px, 90%);

    margin: 0 auto;
}

/* =========================================================
   LINHA SUPERIOR
========================================================= */

.geo-contact .geo-contact-row {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 60px;

    width: 100%;

    margin: 0 0 90px;
}

.geo-contact .geo-field {
    display: flex;
    flex-direction: column;

    min-width: 0;
}

/* =========================================================
   LABELS
========================================================= */

.geo-contact .geo-field label,
.geo-contact .geo-message label {
    display: inline-block;

    margin: 0 0 20px;

    color: var(--geo-contact-text);

    font-family: var(--geo-contact-font);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.3;
}

/* =========================================================
   INPUTS
========================================================= */

.geo-contact .geo-field input {
    width: 100%;
    min-width: 0;
    height: 45px;

    margin: 0;
    padding: 5px 2px;

    border: 0;
    border-bottom: 2px solid var(--geo-contact-border);
    border-radius: 0;

    outline: none;

    background-color: transparent;
    color: var(--geo-contact-text);

    font-family: var(--geo-contact-font);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.3;

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

/* Evita fundo automático indesejado em alguns navegadores */

.geo-contact .geo-field input:-webkit-autofill,
.geo-contact .geo-field input:-webkit-autofill:hover,
.geo-contact .geo-field input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--geo-contact-text);

    transition:
        background-color 9999s ease-in-out 0s;
}

/* =========================================================
   MENSAGEM
========================================================= */

.geo-contact .geo-message {
    display: flex;
    flex-direction: column;

    width: 100%;

    margin: 0 0 40px;
}

.geo-contact .geo-message textarea {
    display: block;

    width: 100%;
    min-height: 320px;

    margin: 0;
    padding: 24px;

    border: 2px solid var(--geo-contact-border);
    border-radius: 0;

    outline: none;

    background-color: transparent;
    color: var(--geo-contact-text);

    font-family: var(--geo-contact-font);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;

    resize: vertical;

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

/* =========================================================
   FOCO DOS CAMPOS
========================================================= */

.geo-contact .geo-field input:focus,
.geo-contact .geo-message textarea:focus {
    border-color: var(--geo-contact-orange);

    box-shadow:
        0 2px 0 var(--geo-contact-orange);
}

.geo-contact .geo-message textarea:focus {
    box-shadow:
        0 0 0 3px rgba(246, 165, 20, 0.22);
}

/* Foco acessível para navegação por teclado */

.geo-contact .geo-field input:focus-visible,
.geo-contact .geo-message textarea:focus-visible {
    outline: 3px solid rgba(246, 165, 20, 0.35);
    outline-offset: 4px;
}

/* =========================================================
   BOTÃO
========================================================= */

.geo-contact .geo-submit {
    display: flex;
    justify-content: flex-end;

    width: 100%;
}

.geo-contact .geo-submit button {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: min(230px, 100%);
    min-height: 60px;

    margin: 0;
    padding: 14px 30px;

    border: 2px solid transparent;
    border-radius: 999px;

    background-color: var(--geo-contact-orange);
    color: var(--geo-contact-white);

    font-family: var(--geo-contact-font);
    font-size: 18px;
    font-weight: 500;
    line-height: 1.2;

    text-align: center;

    cursor: pointer;

    transition:
        background-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

@media (hover: hover) and (pointer: fine) {
    .geo-contact .geo-submit button:hover {
        background-color: var(--geo-contact-orange-hover);

        transform: translateY(-2px);

        box-shadow:
            0 10px 24px rgba(0, 0, 0, 0.12);
    }
}

.geo-contact .geo-submit button:focus {
    outline: none;
}

.geo-contact .geo-submit button:focus-visible {
    outline: 3px solid var(--geo-contact-text);
    outline-offset: 4px;
}

.geo-contact .geo-submit button:active {
    transform: translateY(0);
}

/* Estado desabilitado, caso seja usado via JavaScript */

.geo-contact .geo-submit button:disabled {
    opacity: 0.6;

    cursor: not-allowed;
    transform: none;
}

/* =========================================================
   NOTEBOOK
========================================================= */

@media (min-width: 1025px) and (max-width: 1366px) {
    .geo-contact .geo-contact-row {
        gap: clamp(32px, 4vw, 60px);
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {
    .geo-contact {
        padding: 70px 0;
    }

    .geo-contact .geo-contact-form {
        width: min(720px, calc(100% - 64px));
    }

    .geo-contact .geo-contact-row {
        grid-template-columns: 1fr;

        gap: 35px;

        margin-bottom: 50px;
    }

    .geo-contact .geo-message textarea {
        min-height: 260px;
    }

    .geo-contact .geo-submit {
        justify-content: center;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
    .geo-contact {
        padding: 60px 0;
    }

    .geo-contact .geo-contact-form {
        width: calc(100% - 40px);
    }

    .geo-contact .geo-contact-row {
        gap: 30px;

        margin-bottom: 42px;
    }

    .geo-contact .geo-field label,
    .geo-contact .geo-message label {
        margin-bottom: 14px;

        font-size: 16px;
    }

    .geo-contact .geo-field input {
        height: 44px;

        font-size: 16px;
    }

    .geo-contact .geo-message {
        margin-bottom: 32px;
    }

    .geo-contact .geo-message textarea {
        min-height: 220px;

        padding: 18px;

        font-size: 16px;
        line-height: 1.5;
    }

    .geo-contact .geo-submit button {
        width: 100%;
        max-width: 280px;
        min-height: 56px;

        font-size: 17px;
    }
}

/* =========================================================
   CELULARES ESTREITOS
========================================================= */

@media (max-width: 360px) {
    .geo-contact .geo-contact-form {
        width: calc(100% - 32px);
    }

    .geo-contact .geo-message textarea {
        min-height: 200px;

        padding: 16px;
    }
}

/* =========================================================
   ACESSIBILIDADE — REDUÇÃO DE MOVIMENTO
========================================================= */

@media (prefers-reduced-motion: reduce) {
    .geo-contact .geo-field input,
    .geo-contact .geo-message textarea,
    .geo-contact .geo-submit button {
        transition: none;
    }

    .geo-contact .geo-submit button:hover,
    .geo-contact .geo-submit button:active {
        transform: none;
    }
}

/* =========================================================
   ACESSIBILIDADE — ALTO CONTRASTE
========================================================= */

@media (forced-colors: active) {
    .geo-contact {
        background-color: Canvas;
    }

    .geo-contact .geo-field label,
    .geo-contact .geo-message label,
    .geo-contact .geo-field input,
    .geo-contact .geo-message textarea {
        color: CanvasText;
    }

    .geo-contact .geo-field input {
        border-bottom-color: CanvasText;
    }

    .geo-contact .geo-message textarea {
        border-color: CanvasText;
    }

    .geo-contact .geo-submit button {
        border-color: ButtonText;

        background-color: ButtonFace;
        color: ButtonText;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ef486e0 *//* =========================================================
   CONTATO + NEWSLETTER — GEO HORIZONT
   CSS completo, isolado, responsivo e compatível com Elementor
========================================================= */

.geo-contact-footer {
    --geo-footer-brown: #936540;
    --geo-footer-orange: #F5A81C;

    --geo-footer-green: #C8DDBA;
    --geo-footer-green-input: #D9E4D0;

    --geo-footer-teal: #39B7A4;
    --geo-footer-teal-hover: #2FA392;

    --geo-footer-white: #FFFFFF;
    --geo-footer-black: #111111;

    --geo-footer-serif:
        "Cormorant Garamond",
        Georgia,
        serif;

    --geo-footer-sans:
        "Montserrat",
        Arial,
        sans-serif;

    width: 100%;
    max-width: 100%;

    margin: 0;
    padding: 0;

    overflow: hidden;

    isolation: isolate;
}

/* Box sizing isolado */

.geo-contact-footer,
.geo-contact-footer *,
.geo-contact-footer *::before,
.geo-contact-footer *::after {
    box-sizing: border-box;
}

/* =========================================================
   ÁREA SUPERIOR DE CONTATO
========================================================= */

.geo-contact-footer .geo-contact-top {
    display: grid;

    grid-template-columns:
        minmax(0, 1.2fr)
        minmax(0, 1fr);

    align-items: start;

    gap: 80px;

    width: 100%;

    margin: 0;
    padding: 80px 8%;

    background-color: var(--geo-footer-brown);
}

/* =========================================================
   TÍTULO PRINCIPAL
========================================================= */

.geo-contact-footer .geo-contact-title {
    min-width: 0;
}

.geo-contact-footer .geo-contact-title h2 {
    width: 100%;
    max-width: 500px;

    margin: 0;

    color: var(--geo-footer-orange);

    font-family: var(--geo-footer-serif);
    font-size: 56px;
    font-weight: 600;
    line-height: 1.1;

    text-wrap: balance;
    overflow-wrap: break-word;
}

/* =========================================================
   INFORMAÇÕES DE CONTATO
========================================================= */

.geo-contact-footer .geo-contact-info {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    align-items: start;

    gap: 50px;

    min-width: 0;
}

.geo-contact-footer .geo-contact-item {
    min-width: 0;

    margin: 0;

    font-style: normal;
}

.geo-contact-footer .geo-contact-item h3 {
    margin: 0 0 15px;

    color: var(--geo-footer-white);

    font-family: var(--geo-footer-sans);
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;

    overflow-wrap: break-word;
}

/* Linha decorativa */

.geo-contact-footer .geo-line {
    width: 40px;
    height: 4px;

    margin: 0 0 25px;

    background-color: var(--geo-footer-white);
}

/* =========================================================
   LINKS DE CONTATO
========================================================= */

.geo-contact-footer .geo-contact-item a {
    display: block;

    width: fit-content;
    max-width: 100%;

    margin: 0 0 20px;

    color: var(--geo-footer-white);

    font-family: var(--geo-footer-sans);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;

    text-decoration: none;

    overflow-wrap: anywhere;

    transition:
        color 0.25s ease,
        opacity 0.25s ease,
        transform 0.25s ease;
}

@media (hover: hover) and (pointer: fine) {
    .geo-contact-footer .geo-contact-item a:hover {
        color: var(--geo-footer-orange);

        transform: translateY(-1px);
    }
}

.geo-contact-footer .geo-contact-item a:focus {
    outline: none;
}

.geo-contact-footer .geo-contact-item a:focus-visible {
    outline: 3px solid var(--geo-footer-orange);
    outline-offset: 5px;

    border-radius: 2px;
}

/* =========================================================
   TEXTOS DE CONTATO
========================================================= */

.geo-contact-footer .geo-contact-item p {
    max-width: 100%;

    margin: 0;

    color: var(--geo-footer-white);

    font-family: var(--geo-footer-sans);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;

    text-wrap: pretty;
    overflow-wrap: break-word;
}

/* =========================================================
   NEWSLETTER
========================================================= */

.geo-contact-footer .geo-newsletter {
    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 1.3fr);

    align-items: center;

    gap: 60px;

    width: 100%;

    margin: 0;
    padding: 80px 8%;

    background-color: var(--geo-footer-green);
}

/* =========================================================
   TEXTO DA NEWSLETTER
========================================================= */

.geo-contact-footer .geo-news-left {
    min-width: 0;
}

.geo-contact-footer .geo-news-left h2 {
    max-width: 100%;

    margin: 0 0 20px;

    color: var(--geo-footer-teal);

    font-family: var(--geo-footer-serif);
    font-size: 56px;
    font-weight: 600;
    line-height: 1.1;

    text-wrap: balance;
    overflow-wrap: break-word;
}

.geo-contact-footer .geo-news-left p {
    max-width: 100%;

    margin: 0;

    color: var(--geo-footer-black);

    font-family: var(--geo-footer-sans);
    font-size: 20px;
    font-weight: 400;
    line-height: 1.5;

    text-wrap: pretty;
    overflow-wrap: break-word;
}

/* =========================================================
   FORMULÁRIO DA NEWSLETTER
========================================================= */

.geo-contact-footer .geo-news-right {
    min-width: 0;
}

.geo-contact-footer .geo-news-right form,
.geo-contact-footer .geo-news-form {
    display: flex;
    align-items: stretch;

    width: 100%;
    max-width: 650px;

    margin: 0 0 0 auto;
}

/* =========================================================
   LABEL VISUALMENTE OCULTO
========================================================= */

.geo-contact-footer .geo-sr-only {
    position: absolute !important;

    width: 1px !important;
    height: 1px !important;

    margin: -1px !important;
    padding: 0 !important;

    overflow: hidden !important;

    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;

    border: 0 !important;

    white-space: nowrap !important;
}

/* =========================================================
   CAMPO DE E-MAIL
========================================================= */

.geo-contact-footer .geo-news-right input {
    flex: 1 1 auto;

    width: 100%;
    min-width: 0;
    min-height: 78px;

    margin: 0;
    padding: 16px 30px;

    border: 2px solid transparent;
    border-right: 0;
    border-radius: 24px 0 0 24px;

    outline: none;

    appearance: none;
    -webkit-appearance: none;

    background-color: var(--geo-footer-green-input);
    color: var(--geo-footer-black);

    font-family: var(--geo-footer-sans);
    font-size: 18px;
    font-weight: 400;
    line-height: 1.3;

    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        background-color 0.25s ease;
}

.geo-contact-footer .geo-news-right input::placeholder {
    color: rgba(17, 17, 17, 0.7);

    opacity: 1;
}

.geo-contact-footer .geo-news-right input:focus {
    border-color: var(--geo-footer-teal);

    box-shadow:
        inset 0 0 0 1px var(--geo-footer-teal);
}

.geo-contact-footer .geo-news-right input:focus-visible {
    position: relative;
    z-index: 2;

    outline: 3px solid rgba(57, 183, 164, 0.35);
    outline-offset: 3px;
}

/* Autofill */

.geo-contact-footer .geo-news-right input:-webkit-autofill,
.geo-contact-footer .geo-news-right input:-webkit-autofill:hover,
.geo-contact-footer .geo-news-right input:-webkit-autofill:focus {
    -webkit-text-fill-color: var(--geo-footer-black);

    transition:
        background-color 9999s ease-in-out 0s;
}

/* =========================================================
   BOTÃO
========================================================= */

.geo-contact-footer .geo-news-right button {
    flex: 0 0 160px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-height: 78px;

    margin: 0;
    padding: 14px 24px;

    border: 2px solid transparent;
    border-radius: 0 24px 24px 0;

    background-color: var(--geo-footer-teal);
    color: var(--geo-footer-white);

    font-family: var(--geo-footer-sans) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.2;

    text-align: center;

    cursor: pointer;
    touch-action: manipulation;

    transition:
        background-color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

@media (hover: hover) and (pointer: fine) {
    .geo-contact-footer .geo-news-right button:hover {
        background-color: var(--geo-footer-teal-hover);

        transform: translateY(-2px);

        box-shadow:
            0 10px 22px rgba(0, 0, 0, 0.12);
    }
}

.geo-contact-footer .geo-news-right button:focus {
    outline: none;
}

.geo-contact-footer .geo-news-right button:focus-visible {
    position: relative;
    z-index: 3;

    outline: 3px solid var(--geo-footer-black);
    outline-offset: 4px;
}

.geo-contact-footer .geo-news-right button:active {
    transform: translateY(0);
}

.geo-contact-footer .geo-news-right button:disabled {
    opacity: 0.6;

    cursor: not-allowed;
    transform: none;
}

/* =========================================================
   NOTEBOOK
========================================================= */

@media (min-width: 1025px) and (max-width: 1366px) {
    .geo-contact-footer .geo-contact-top {
        gap: clamp(50px, 5vw, 80px);

        padding-right: 6%;
        padding-left: 6%;
    }

    .geo-contact-footer .geo-contact-title h2,
    .geo-contact-footer .geo-news-left h2 {
        font-size: 52px;
    }

    .geo-contact-footer .geo-newsletter {
        gap: clamp(40px, 4vw, 60px);

        padding-right: 6%;
        padding-left: 6%;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1024px) {
    .geo-contact-footer .geo-contact-top {
        grid-template-columns: 1fr;

        gap: 50px;

        padding: 70px 6%;
    }

    .geo-contact-footer .geo-contact-title h2 {
        max-width: 100%;

        font-size: 48px;
    }

    .geo-contact-footer .geo-contact-info {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 40px;
    }

    .geo-contact-footer .geo-newsletter {
        grid-template-columns: 1fr;

        gap: 40px;

        padding: 70px 6%;

        text-align: center;
    }

    .geo-contact-footer .geo-news-left h2 {
        font-size: 48px;
    }

    .geo-contact-footer .geo-news-right form,
    .geo-contact-footer .geo-news-form {
        margin: 0 auto;
    }
}

/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {
    .geo-contact-footer .geo-contact-top {
        gap: 45px;

        padding: 60px 30px;
    }

    .geo-contact-footer .geo-contact-title h2 {
        font-size: 42px;

        text-align: center;
    }

    .geo-contact-footer .geo-contact-info {
        grid-template-columns: 1fr;

        gap: 40px;

        text-align: center;
    }

    .geo-contact-footer .geo-line {
        margin: 0 auto 20px;
    }

    .geo-contact-footer .geo-contact-item a {
        width: fit-content;

        margin-right: auto;
        margin-left: auto;
    }

    .geo-contact-footer .geo-newsletter {
        gap: 36px;

        padding: 60px 30px;
    }

    .geo-contact-footer .geo-news-left {
        text-align: center;
    }

    .geo-contact-footer .geo-news-left h2 {
        margin-bottom: 18px;

        font-size: 42px;
    }

    .geo-contact-footer .geo-news-left p {
        font-size: 18px;
    }

    .geo-contact-footer .geo-news-right form,
    .geo-contact-footer .geo-news-form {
        flex-direction: column;

        gap: 15px;

        width: 100%;
        max-width: 480px;

        margin: 0 auto;
    }

    .geo-contact-footer .geo-news-right input {
        flex: none;

        width: 100%;
        min-height: 65px;

        padding: 14px 22px;

        border: 2px solid transparent;
        border-radius: 20px;

        font-size: 16px;

        text-align: left;
    }

    .geo-contact-footer .geo-news-right button {
        flex: none;

        width: 100%;
        min-height: 65px;

        border-radius: 20px;

        font-size: 17px !important;
    }
}

/* =========================================================
   CELULARES ESTREITOS
========================================================= */

@media (max-width: 360px) {
    .geo-contact-footer .geo-contact-top,
    .geo-contact-footer .geo-newsletter {
        padding-right: 20px;
        padding-left: 20px;
    }

    .geo-contact-footer .geo-contact-title h2,
    .geo-contact-footer .geo-news-left h2 {
        font-size: 38px;
    }

    .geo-contact-footer .geo-contact-item a {
        font-size: 16px;
    }

    .geo-contact-footer .geo-news-left p {
        font-size: 16px;
    }

    .geo-contact-footer .geo-news-right input,
    .geo-contact-footer .geo-news-right button {
        font-size: 16px !important;
    }
}

/* =========================================================
   ACESSIBILIDADE — REDUÇÃO DE MOVIMENTO
========================================================= */

@media (prefers-reduced-motion: reduce) {
    .geo-contact-footer .geo-contact-item a,
    .geo-contact-footer .geo-news-right input,
    .geo-contact-footer .geo-news-right button {
        transition: none;
    }

    .geo-contact-footer .geo-contact-item a:hover,
    .geo-contact-footer .geo-news-right button:hover,
    .geo-contact-footer .geo-news-right button:active {
        transform: none;
    }
}

/* =========================================================
   ACESSIBILIDADE — ALTO CONTRASTE
========================================================= */

@media (forced-colors: active) {
    .geo-contact-footer .geo-contact-top,
    .geo-contact-footer .geo-newsletter {
        background-color: Canvas;
    }

    .geo-contact-footer .geo-contact-title h2,
    .geo-contact-footer .geo-contact-item h3,
    .geo-contact-footer .geo-contact-item a,
    .geo-contact-footer .geo-contact-item p,
    .geo-contact-footer .geo-news-left h2,
    .geo-contact-footer .geo-news-left p {
        color: CanvasText;
    }

    .geo-contact-footer .geo-line {
        background-color: CanvasText;
    }

    .geo-contact-footer .geo-news-right input {
        border: 2px solid CanvasText;

        background-color: Field;
        color: FieldText;
    }

    .geo-contact-footer .geo-news-right button {
        border: 2px solid ButtonText;

        background-color: ButtonFace;
        color: ButtonText;
    }
}/* End custom CSS */
/* Start custom CSS */.geo-contact {
    width: 100%;
    background: #F3E7D1!important;
    padding: 80px 0;
}/* End custom CSS */