:root {
    --wp--preset--aspect-ratio--square: 1;
    --wp--preset--aspect-ratio--4-3: 4/3;
    --wp--preset--aspect-ratio--3-4: 3/4;
    --wp--preset--aspect-ratio--3-2: 3/2;
    --wp--preset--aspect-ratio--2-3: 2/3;
    --wp--preset--aspect-ratio--16-9: 16/9;
    --wp--preset--aspect-ratio--9-16: 9/16;
    --wp--preset--color--black: #000000;
    --wp--preset--color--cyan-bluish-gray: #abb8c3;
    --wp--preset--color--white: #ffffff;
    --wp--preset--color--pale-pink: #f78da7;
    --wp--preset--color--vivid-red: #cf2e2e;
    --wp--preset--color--luminous-vivid-orange: #ff6900;
    --wp--preset--color--luminous-vivid-amber: #fcb900;
    --wp--preset--color--light-green-cyan: #7bdcb5;
    --wp--preset--color--vivid-green-cyan: #00d084;
    --wp--preset--color--pale-cyan-blue: #8ed1fc;
    --wp--preset--color--vivid-cyan-blue: #0693e3;
    --wp--preset--color--vivid-purple: #9b51e0;
    --wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg, rgba(6, 147, 227, 1) 0%, rgb(155, 81, 224) 100%);
    --wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg, rgb(122, 220, 180) 0%, rgb(0, 208, 130) 100%);
    --wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg, rgba(252, 185, 0, 1) 0%, rgba(255, 105, 0, 1) 100%);
    --wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg, rgba(255, 105, 0, 1) 0%, rgb(207, 46, 46) 100%);
    --wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg, rgb(238, 238, 238) 0%, rgb(169, 184, 195) 100%);
    --wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg, rgb(74, 234, 220) 0%, rgb(151, 120, 209) 20%, rgb(207, 42, 186) 40%, rgb(238, 44, 130) 60%, rgb(251, 105, 98) 80%, rgb(254, 248, 76) 100%);
    --wp--preset--gradient--blush-light-purple: linear-gradient(135deg, rgb(255, 206, 236) 0%, rgb(152, 150, 240) 100%);
    --wp--preset--gradient--blush-bordeaux: linear-gradient(135deg, rgb(254, 205, 165) 0%, rgb(254, 45, 45) 50%, rgb(107, 0, 62) 100%);
    --wp--preset--gradient--luminous-dusk: linear-gradient(135deg, rgb(255, 203, 112) 0%, rgb(199, 81, 192) 50%, rgb(65, 88, 208) 100%);
    --wp--preset--gradient--pale-ocean: linear-gradient(135deg, rgb(255, 245, 203) 0%, rgb(182, 227, 212) 50%, rgb(51, 167, 181) 100%);
    --wp--preset--gradient--electric-grass: linear-gradient(135deg, rgb(202, 248, 128) 0%, rgb(113, 206, 126) 100%);
    --wp--preset--gradient--midnight: linear-gradient(135deg, rgb(2, 3, 129) 0%, rgb(40, 116, 252) 100%);
    --wp--preset--font-size--small: 13px;
    --wp--preset--font-size--medium: 20px;
    --wp--preset--font-size--large: 36px;
    --wp--preset--font-size--x-large: 42px;
    --wp--preset--spacing--20: 0.44rem;
    --wp--preset--spacing--30: 0.67rem;
    --wp--preset--spacing--40: 1rem;
    --wp--preset--spacing--50: 1.5rem;
    --wp--preset--spacing--60: 2.25rem;
    --wp--preset--spacing--70: 3.38rem;
    --wp--preset--spacing--80: 5.06rem;
    --wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);
    --wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);
    --wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);
    --wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);
    --wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);
}

:root {
    --wp--style--global--content-size: 800px;
    --wp--style--global--wide-size: 1200px;
}

:where(body) {
    margin: 0;
}

.wp-site-blocks>.alignleft {
    float: left;
    margin-right: 2em;
}

.wp-site-blocks>.alignright {
    float: right;
    margin-left: 2em;
}

.wp-site-blocks>.aligncenter {
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
}

:where(.wp-site-blocks)>* {
    margin-block-start: 24px;
    margin-block-end: 0;
}

:where(.wp-site-blocks)> :first-child {
    margin-block-start: 0;
}

:where(.wp-site-blocks)> :last-child {
    margin-block-end: 0;
}

:root {
    --wp--style--block-gap: 24px;
}

:root :where(.is-layout-flow)> :first-child {
    margin-block-start: 0;
}

:root :where(.is-layout-flow)> :last-child {
    margin-block-end: 0;
}

:root :where(.is-layout-flow)>* {
    margin-block-start: 24px;
    margin-block-end: 0;
}

:root :where(.is-layout-constrained)> :first-child {
    margin-block-start: 0;
}

:root :where(.is-layout-constrained)> :last-child {
    margin-block-end: 0;
}

:root :where(.is-layout-constrained)>* {
    margin-block-start: 24px;
    margin-block-end: 0;
}

:root :where(.is-layout-flex) {
    gap: 24px;
}

:root :where(.is-layout-grid) {
    gap: 24px;
}

.is-layout-flow>.alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end: 2em;
}

.is-layout-flow>.alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end: 0;
}

.is-layout-flow>.aligncenter {
    margin-left: auto !important;
    margin-right: auto !important;
}

.is-layout-constrained>.alignleft {
    float: left;
    margin-inline-start: 0;
    margin-inline-end: 2em;
}

.is-layout-constrained>.alignright {
    float: right;
    margin-inline-start: 2em;
    margin-inline-end: 0;
}

.is-layout-constrained>.aligncenter {
    margin-left: auto !important;
    margin-right: auto !important;
}

.is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: var(--wp--style--global--content-size);
    margin-left: auto !important;
    margin-right: auto !important;
}

.is-layout-constrained>.alignwide {
    max-width: var(--wp--style--global--wide-size);
}

body .is-layout-flex {
    display: flex;
}

.is-layout-flex {
    flex-wrap: wrap;
    align-items: center;
}

.is-layout-flex> :is(*, div) {
    margin: 0;
}

body .is-layout-grid {
    display: grid;
}

.is-layout-grid> :is(*, div) {
    margin: 0;
}

body {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}

a:where(:not(.wp-element-button)) {
    text-decoration: underline;
}

:root :where(.wp-element-button, .wp-block-button__link) {
    background-color: #32373c;
    border-width: 0;
    color: #fff;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    padding: calc(0.667em + 2px) calc(1.333em + 2px);
    text-decoration: none;
}

.has-black-color {
    color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-color {
    color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-color {
    color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-color {
    color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-color {
    color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-color {
    color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-color {
    color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-color {
    color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-color {
    color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-color {
    color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-color {
    color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-color {
    color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-background-color {
    background-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-background-color {
    background-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-background-color {
    background-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-background-color {
    background-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-background-color {
    background-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-background-color {
    background-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-background-color {
    background-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-background-color {
    background-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-background-color {
    background-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-background-color {
    background-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-background-color {
    background-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-background-color {
    background-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-black-border-color {
    border-color: var(--wp--preset--color--black) !important;
}

.has-cyan-bluish-gray-border-color {
    border-color: var(--wp--preset--color--cyan-bluish-gray) !important;
}

.has-white-border-color {
    border-color: var(--wp--preset--color--white) !important;
}

.has-pale-pink-border-color {
    border-color: var(--wp--preset--color--pale-pink) !important;
}

.has-vivid-red-border-color {
    border-color: var(--wp--preset--color--vivid-red) !important;
}

.has-luminous-vivid-orange-border-color {
    border-color: var(--wp--preset--color--luminous-vivid-orange) !important;
}

.has-luminous-vivid-amber-border-color {
    border-color: var(--wp--preset--color--luminous-vivid-amber) !important;
}

.has-light-green-cyan-border-color {
    border-color: var(--wp--preset--color--light-green-cyan) !important;
}

.has-vivid-green-cyan-border-color {
    border-color: var(--wp--preset--color--vivid-green-cyan) !important;
}

.has-pale-cyan-blue-border-color {
    border-color: var(--wp--preset--color--pale-cyan-blue) !important;
}

.has-vivid-cyan-blue-border-color {
    border-color: var(--wp--preset--color--vivid-cyan-blue) !important;
}

.has-vivid-purple-border-color {
    border-color: var(--wp--preset--color--vivid-purple) !important;
}

.has-vivid-cyan-blue-to-vivid-purple-gradient-background {
    background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;
}

.has-light-green-cyan-to-vivid-green-cyan-gradient-background {
    background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;
}

.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background {
    background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;
}

.has-luminous-vivid-orange-to-vivid-red-gradient-background {
    background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;
}

.has-very-light-gray-to-cyan-bluish-gray-gradient-background {
    background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;
}

.has-cool-to-warm-spectrum-gradient-background {
    background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;
}

.has-blush-light-purple-gradient-background {
    background: var(--wp--preset--gradient--blush-light-purple) !important;
}

.has-blush-bordeaux-gradient-background {
    background: var(--wp--preset--gradient--blush-bordeaux) !important;
}

.has-luminous-dusk-gradient-background {
    background: var(--wp--preset--gradient--luminous-dusk) !important;
}

.has-pale-ocean-gradient-background {
    background: var(--wp--preset--gradient--pale-ocean) !important;
}

.has-electric-grass-gradient-background {
    background: var(--wp--preset--gradient--electric-grass) !important;
}

.has-midnight-gradient-background {
    background: var(--wp--preset--gradient--midnight) !important;
}

.has-small-font-size {
    font-size: var(--wp--preset--font-size--small) !important;
}

.has-medium-font-size {
    font-size: var(--wp--preset--font-size--medium) !important;
}

.has-large-font-size {
    font-size: var(--wp--preset--font-size--large) !important;
}

.has-x-large-font-size {
    font-size: var(--wp--preset--font-size--x-large) !important;
}

:root :where(.wp-block-pullquote) {
    font-size: 1.5em;
    line-height: 1.6;
}

img.wp-smiley,
img.emoji {
    display: inline !important;
    border: none !important;
    box-shadow: none !important;
    height: 1em !important;
    width: 1em !important;
    margin: 0 0.07em !important;
    vertical-align: -0.1em !important;
    background: none !important;
    padding: 0 !important;
}

.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload),
.e-con.e-parent:nth-of-type(n+4):not(.e-lazyloaded):not(.e-no-lazyload) * {
    background-image: none !important;
}

@media screen and (max-height: 1024px) {

    .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload),
    .e-con.e-parent:nth-of-type(n+3):not(.e-lazyloaded):not(.e-no-lazyload) * {
        background-image: none !important;
    }
}

@media screen and (max-height: 640px) {

    .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload),
    .e-con.e-parent:nth-of-type(n+2):not(.e-lazyloaded):not(.e-no-lazyload) * {
        background-image: none !important;
    }
}

/* Inline Form Section Styling (Dobra 5) */
#inscricao {
    background: linear-gradient(135deg, #002566 0%, #06183a 100%) !important;
    border: 2px solid rgba(247, 147, 30, 0.3) !important;
    /* border-radius: 24px !important; */
    width: 100% !important;
    
    padding: 60px 45px !important;
    box-shadow: 0 20px 40px rgba(0, 37, 102, 0.15) !important;
    /* margin: 60px auto !important; */
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
}

@media (max-width: 767px) {
    #inscricao {
        padding: 40px 20px !important;
        margin: 40px auto !important;
        border-radius: 16px !important;
    }
}

/* Explicit high-contrast overrides for ALL elements inside the form container */
#inscricao,
#inscricao * {
    color: #ffffff !important;
}

#inscricao label,
#inscricao .elementor-field-label {
    color: #f1f5f9 !important;
    font-weight: 600 !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.95rem !important;
    margin-bottom: 8px !important;
    display: inline-block !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) !important;
}

#inscricao input.elementor-field,
#inscricao select.elementor-field {
    background: #0f172a !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 12px 16px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.95rem !important;
    transition: all 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

#inscricao input.elementor-field:focus,
#inscricao select.elementor-field:focus {
    border-color: #3b82f6 !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.3) !important;
    outline: none !important;
    background: #1e293b !important;
}

#inscricao input::placeholder {
    color: #94a3b8 !important;
    opacity: 1 !important;
}

#inscricao option {
    background-color: #0f172a !important;
    color: #ffffff !important;
}

#inscricao .ha-gradient-heading h2 {
    color: #ffffff !important;
    font-weight: 700 !important;
    margin-bottom: 2rem !important;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.4) !important;
}

#inscricao .elementor-button {
    background: #2563eb !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    transition: all 0.2s ease !important;
    text-shadow: none !important;
}

#inscricao .elementor-button:hover {
    background: #1d4ed8 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(37, 99, 235, 0.3) !important;
}

/*elementor-frontend-inline-css*/
@-webkit-keyframes ha_fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes ha_fadeIn {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes ha_zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

@keyframes ha_zoomIn {
    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    50% {
        opacity: 1
    }
}

@-webkit-keyframes ha_rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    to {
        opacity: 1
    }
}

@keyframes ha_rollIn {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
        transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg)
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes ha_bounce {

    0%,
    20%,
    53%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    40%,
    43% {
        -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
        transform: translate3d(0, -30px, 0) scaleY(1.1);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06)
    }

    70% {
        -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
        transform: translate3d(0, -15px, 0) scaleY(1.05);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06)
    }

    80% {
        -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-transform: translate3d(0, 0, 0) scaleY(.95);
        transform: translate3d(0, 0, 0) scaleY(.95)
    }

    90% {
        -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
        transform: translate3d(0, -4px, 0) scaleY(1.02)
    }
}

@keyframes ha_bounce {

    0%,
    20%,
    53%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    40%,
    43% {
        -webkit-transform: translate3d(0, -30px, 0) scaleY(1.1);
        transform: translate3d(0, -30px, 0) scaleY(1.1);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06)
    }

    70% {
        -webkit-transform: translate3d(0, -15px, 0) scaleY(1.05);
        transform: translate3d(0, -15px, 0) scaleY(1.05);
        -webkit-animation-timing-function: cubic-bezier(.755, .05, .855, .06);
        animation-timing-function: cubic-bezier(.755, .05, .855, .06)
    }

    80% {
        -webkit-transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        transition-timing-function: cubic-bezier(.215, .61, .355, 1);
        -webkit-transform: translate3d(0, 0, 0) scaleY(.95);
        transform: translate3d(0, 0, 0) scaleY(.95)
    }

    90% {
        -webkit-transform: translate3d(0, -4px, 0) scaleY(1.02);
        transform: translate3d(0, -4px, 0) scaleY(1.02)
    }
}

@-webkit-keyframes ha_bounceIn {

    0%,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        -webkit-transform: scale3d(.97, .97, .97);
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1
    }
}

@keyframes ha_bounceIn {

    0%,
    20%,
    40%,
    60%,
    80%,
    to {
        -webkit-animation-timing-function: cubic-bezier(.215, .61, .355, 1);
        animation-timing-function: cubic-bezier(.215, .61, .355, 1)
    }

    0% {
        opacity: 0;
        -webkit-transform: scale3d(.3, .3, .3);
        transform: scale3d(.3, .3, .3)
    }

    20% {
        -webkit-transform: scale3d(1.1, 1.1, 1.1);
        transform: scale3d(1.1, 1.1, 1.1)
    }

    40% {
        -webkit-transform: scale3d(.9, .9, .9);
        transform: scale3d(.9, .9, .9)
    }

    60% {
        opacity: 1;
        -webkit-transform: scale3d(1.03, 1.03, 1.03);
        transform: scale3d(1.03, 1.03, 1.03)
    }

    80% {
        -webkit-transform: scale3d(.97, .97, .97);
        transform: scale3d(.97, .97, .97)
    }

    to {
        opacity: 1
    }
}

@-webkit-keyframes ha_flipInX {
    0% {
        opacity: 0;
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        opacity: 1;
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg)
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }
}

@keyframes ha_flipInX {
    0% {
        opacity: 0;
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        opacity: 1;
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
        transform: perspective(400px) rotate3d(1, 0, 0, 10deg)
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
        transform: perspective(400px) rotate3d(1, 0, 0, -5deg)
    }
}

@-webkit-keyframes ha_flipInY {
    0% {
        opacity: 0;
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        opacity: 1;
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg)
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }
}

@keyframes ha_flipInY {
    0% {
        opacity: 0;
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    40% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
        -webkit-animation-timing-function: ease-in;
        animation-timing-function: ease-in
    }

    60% {
        opacity: 1;
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
        transform: perspective(400px) rotate3d(0, 1, 0, 10deg)
    }

    80% {
        -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
        transform: perspective(400px) rotate3d(0, 1, 0, -5deg)
    }
}

@-webkit-keyframes ha_swing {
    20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg)
    }
}

@keyframes ha_swing {
    20% {
        -webkit-transform: rotate3d(0, 0, 1, 15deg);
        transform: rotate3d(0, 0, 1, 15deg)
    }

    40% {
        -webkit-transform: rotate3d(0, 0, 1, -10deg);
        transform: rotate3d(0, 0, 1, -10deg)
    }

    60% {
        -webkit-transform: rotate3d(0, 0, 1, 5deg);
        transform: rotate3d(0, 0, 1, 5deg)
    }

    80% {
        -webkit-transform: rotate3d(0, 0, 1, -5deg);
        transform: rotate3d(0, 0, 1, -5deg)
    }
}

@-webkit-keyframes ha_slideInDown {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

@keyframes ha_slideInDown {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(0, -100%, 0);
        transform: translate3d(0, -100%, 0)
    }
}

@-webkit-keyframes ha_slideInUp {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

@keyframes ha_slideInUp {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(0, 100%, 0);
        transform: translate3d(0, 100%, 0)
    }
}

@-webkit-keyframes ha_slideInLeft {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

@keyframes ha_slideInLeft {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0)
    }
}

@-webkit-keyframes ha_slideInRight {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

@keyframes ha_slideInRight {
    0% {
        visibility: visible;
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0)
    }
}

.ha_fadeIn {
    -webkit-animation-name: ha_fadeIn;
    animation-name: ha_fadeIn
}

.ha_zoomIn {
    -webkit-animation-name: ha_zoomIn;
    animation-name: ha_zoomIn
}

.ha_rollIn {
    -webkit-animation-name: ha_rollIn;
    animation-name: ha_rollIn
}

.ha_bounce {
    -webkit-transform-origin: center bottom;
    -ms-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-name: ha_bounce;
    animation-name: ha_bounce
}

.ha_bounceIn {
    -webkit-animation-name: ha_bounceIn;
    animation-name: ha_bounceIn;
    -webkit-animation-duration: .75s;
    -webkit-animation-duration: calc(var(--animate-duration)*.75);
    animation-duration: .75s;
    animation-duration: calc(var(--animate-duration)*.75)
}

.ha_flipInX,
.ha_flipInY {
    -webkit-animation-name: ha_flipInX;
    animation-name: ha_flipInX;
    -webkit-backface-visibility: visible !important;
    backface-visibility: visible !important
}

.ha_flipInY {
    -webkit-animation-name: ha_flipInY;
    animation-name: ha_flipInY
}

.ha_swing {
    -webkit-transform-origin: top center;
    -ms-transform-origin: top center;
    transform-origin: top center;
    -webkit-animation-name: ha_swing;
    animation-name: ha_swing
}

.ha_slideInDown {
    -webkit-animation-name: ha_slideInDown;
    animation-name: ha_slideInDown
}

.ha_slideInUp {
    -webkit-animation-name: ha_slideInUp;
    animation-name: ha_slideInUp
}

.ha_slideInLeft {
    -webkit-animation-name: ha_slideInLeft;
    animation-name: ha_slideInLeft
}

.ha_slideInRight {
    -webkit-animation-name: ha_slideInRight;
    animation-name: ha_slideInRight
}

.ha-css-transform-yes {
    -webkit-transition-duration: var(--ha-tfx-transition-duration, .2s);
    transition-duration: var(--ha-tfx-transition-duration, .2s);
    -webkit-transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transform: translate(var(--ha-tfx-translate-x, 0), var(--ha-tfx-translate-y, 0)) scale(var(--ha-tfx-scale-x, 1), var(--ha-tfx-scale-y, 1)) skew(var(--ha-tfx-skew-x, 0), var(--ha-tfx-skew-y, 0)) rotateX(var(--ha-tfx-rotate-x, 0)) rotateY(var(--ha-tfx-rotate-y, 0)) rotateZ(var(--ha-tfx-rotate-z, 0));
    transform: translate(var(--ha-tfx-translate-x, 0), var(--ha-tfx-translate-y, 0)) scale(var(--ha-tfx-scale-x, 1), var(--ha-tfx-scale-y, 1)) skew(var(--ha-tfx-skew-x, 0), var(--ha-tfx-skew-y, 0)) rotateX(var(--ha-tfx-rotate-x, 0)) rotateY(var(--ha-tfx-rotate-y, 0)) rotateZ(var(--ha-tfx-rotate-z, 0))
}

.ha-css-transform-yes:hover {
    -webkit-transform: translate(var(--ha-tfx-translate-x-hover, var(--ha-tfx-translate-x, 0)), var(--ha-tfx-translate-y-hover, var(--ha-tfx-translate-y, 0))) scale(var(--ha-tfx-scale-x-hover, var(--ha-tfx-scale-x, 1)), var(--ha-tfx-scale-y-hover, var(--ha-tfx-scale-y, 1))) skew(var(--ha-tfx-skew-x-hover, var(--ha-tfx-skew-x, 0)), var(--ha-tfx-skew-y-hover, var(--ha-tfx-skew-y, 0))) rotateX(var(--ha-tfx-rotate-x-hover, var(--ha-tfx-rotate-x, 0))) rotateY(var(--ha-tfx-rotate-y-hover, var(--ha-tfx-rotate-y, 0))) rotateZ(var(--ha-tfx-rotate-z-hover, var(--ha-tfx-rotate-z, 0)));
    transform: translate(var(--ha-tfx-translate-x-hover, var(--ha-tfx-translate-x, 0)), var(--ha-tfx-translate-y-hover, var(--ha-tfx-translate-y, 0))) scale(var(--ha-tfx-scale-x-hover, var(--ha-tfx-scale-x, 1)), var(--ha-tfx-scale-y-hover, var(--ha-tfx-scale-y, 1))) skew(var(--ha-tfx-skew-x-hover, var(--ha-tfx-skew-x, 0)), var(--ha-tfx-skew-y-hover, var(--ha-tfx-skew-y, 0))) rotateX(var(--ha-tfx-rotate-x-hover, var(--ha-tfx-rotate-x, 0))) rotateY(var(--ha-tfx-rotate-y-hover, var(--ha-tfx-rotate-y, 0))) rotateZ(var(--ha-tfx-rotate-z-hover, var(--ha-tfx-rotate-z, 0)))
}

.happy-addon>.elementor-widget-container {
    word-wrap: break-word;
    overflow-wrap: break-word
}

.happy-addon>.elementor-widget-container,
.happy-addon>.elementor-widget-container * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.happy-addon:not(:has(.elementor-widget-container)),
.happy-addon:not(:has(.elementor-widget-container)) * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    word-wrap: break-word;
    overflow-wrap: break-word
}

.happy-addon p:empty {
    display: none
}

.happy-addon .elementor-inline-editing {
    min-height: auto !important
}

.happy-addon-pro img {
    max-width: 100%;
    height: auto;
    -o-object-fit: cover;
    object-fit: cover
}

.ha-screen-reader-text {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
    word-wrap: normal !important;
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%)
}

.ha-has-bg-overlay>.elementor-widget-container {
    position: relative;
    z-index: 1
}

.ha-has-bg-overlay>.elementor-widget-container:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: ""
}

.ha-has-bg-overlay:not(:has(.elementor-widget-container)) {
    position: relative;
    z-index: 1
}

.ha-has-bg-overlay:not(:has(.elementor-widget-container)):before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    content: ""
}

.ha-popup--is-enabled .ha-js-popup,
.ha-popup--is-enabled .ha-js-popup img {
    cursor: -webkit-zoom-in !important;
    cursor: zoom-in !important
}

.mfp-wrap .mfp-arrow,
.mfp-wrap .mfp-close {
    background-color: transparent
}

.mfp-wrap .mfp-arrow:focus,
.mfp-wrap .mfp-close:focus {
    outline-width: thin
}

.ha-advanced-tooltip-enable {
    position: relative;
    cursor: pointer;
    --ha-tooltip-arrow-color: black;
    --ha-tooltip-arrow-distance: 0
}

.ha-advanced-tooltip-enable .ha-advanced-tooltip-content {
    position: absolute;
    z-index: 999;
    display: none;
    padding: 5px 0;
    width: 120px;
    height: auto;
    border-radius: 6px;
    background-color: #000;
    color: #fff;
    text-align: center;
    opacity: 0
}

.ha-advanced-tooltip-enable .ha-advanced-tooltip-content::after {
    position: absolute;
    border-width: 5px;
    border-style: solid;
    content: ""
}

.ha-advanced-tooltip-enable .ha-advanced-tooltip-content.no-arrow::after {
    visibility: hidden
}

.ha-advanced-tooltip-enable .ha-advanced-tooltip-content.show {
    display: inline-block;
    opacity: 1
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-top .ha-advanced-tooltip-content,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-top .ha-advanced-tooltip-content {
    top: unset;
    right: 0;
    bottom: calc(101% + var(--ha-tooltip-arrow-distance));
    left: 0;
    margin: 0 auto
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-top .ha-advanced-tooltip-content::after,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-top .ha-advanced-tooltip-content::after {
    top: 100%;
    right: unset;
    bottom: unset;
    left: 50%;
    border-color: var(--ha-tooltip-arrow-color) transparent transparent transparent;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-bottom .ha-advanced-tooltip-content,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-bottom .ha-advanced-tooltip-content {
    top: calc(101% + var(--ha-tooltip-arrow-distance));
    right: 0;
    bottom: unset;
    left: 0;
    margin: 0 auto
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-bottom .ha-advanced-tooltip-content::after,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-bottom .ha-advanced-tooltip-content::after {
    top: unset;
    right: unset;
    bottom: 100%;
    left: 50%;
    border-color: transparent transparent var(--ha-tooltip-arrow-color) transparent;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-left .ha-advanced-tooltip-content,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-left .ha-advanced-tooltip-content {
    top: 50%;
    right: calc(101% + var(--ha-tooltip-arrow-distance));
    bottom: unset;
    left: unset;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-left .ha-advanced-tooltip-content::after,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-left .ha-advanced-tooltip-content::after {
    top: 50%;
    right: unset;
    bottom: unset;
    left: 100%;
    border-color: transparent transparent transparent var(--ha-tooltip-arrow-color);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-right .ha-advanced-tooltip-content,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-right .ha-advanced-tooltip-content {
    top: 50%;
    right: unset;
    bottom: unset;
    left: calc(101% + var(--ha-tooltip-arrow-distance));
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

.ha-advanced-tooltip-enable.ha-advanced-tooltip-right .ha-advanced-tooltip-content::after,
body[data-elementor-device-mode=tablet] .ha-advanced-tooltip-enable.ha-advanced-tooltip-tablet-right .ha-advanced-tooltip-content::after {
    top: 50%;
    right: 100%;
    bottom: unset;
    left: unset;
    border-color: transparent var(--ha-tooltip-arrow-color) transparent transparent;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-top .ha-advanced-tooltip-content {
    top: unset;
    right: 0;
    bottom: calc(101% + var(--ha-tooltip-arrow-distance));
    left: 0;
    margin: 0 auto
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-top .ha-advanced-tooltip-content::after {
    top: 100%;
    right: unset;
    bottom: unset;
    left: 50%;
    border-color: var(--ha-tooltip-arrow-color) transparent transparent transparent;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-bottom .ha-advanced-tooltip-content {
    top: calc(101% + var(--ha-tooltip-arrow-distance));
    right: 0;
    bottom: unset;
    left: 0;
    margin: 0 auto
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-bottom .ha-advanced-tooltip-content::after {
    top: unset;
    right: unset;
    bottom: 100%;
    left: 50%;
    border-color: transparent transparent var(--ha-tooltip-arrow-color) transparent;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%)
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-left .ha-advanced-tooltip-content {
    top: 50%;
    right: calc(101% + var(--ha-tooltip-arrow-distance));
    bottom: unset;
    left: unset;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-left .ha-advanced-tooltip-content::after {
    top: 50%;
    right: unset;
    bottom: unset;
    left: 100%;
    border-color: transparent transparent transparent var(--ha-tooltip-arrow-color);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-right .ha-advanced-tooltip-content {
    top: 50%;
    right: unset;
    bottom: unset;
    left: calc(101% + var(--ha-tooltip-arrow-distance));
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

body[data-elementor-device-mode=mobile] .ha-advanced-tooltip-enable.ha-advanced-tooltip-mobile-right .ha-advanced-tooltip-content::after {
    top: 50%;
    right: 100%;
    bottom: unset;
    left: unset;
    border-color: transparent var(--ha-tooltip-arrow-color) transparent transparent;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%)
}

body.elementor-editor-active .happy-addon.ha-gravityforms .gform_wrapper {
    display: block !important
}

.ha-scroll-to-top-wrap.ha-scroll-to-top-hide {
    display: none
}

.ha-scroll-to-top-wrap.edit-mode,
.ha-scroll-to-top-wrap.single-page-off {
    display: none !important
}

.ha-scroll-to-top-button {
    position: fixed;
    right: 15px;
    bottom: 15px;
    z-index: 9999;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50px;
    background-color: #5636d1;
    color: #fff;
    text-align: center;
    opacity: 1;
    cursor: pointer;
    -webkit-transition: all .3s;
    transition: all .3s
}

.ha-scroll-to-top-button i {
    color: #fff;
    font-size: 16px
}

.ha-scroll-to-top-button:hover {
    background-color: #e2498a
}

/* ==========================================================================
   NATIVE BRAND VISUAL IDENTITY OVERRIDES - COMSEFAZ & CONFAZ (Nuance Theme)
   ========================================================================== */

/* 1. Typography Imports & Core Definitions */
@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&family=Paytone+One&family=Archivo+Black&display=swap');

:root {
    /* Brand Color Tokens */
    --brand-navy: #002566;
    --brand-orange: #f7931e;
    --brand-yellow: #fed061;
    --brand-green: #49b170;
    --brand-light-blue: #83d0f5;
    --brand-grey: #cccccc;
    --brand-dark-bg: #001233;

    /* Typography Tokens */
    --font-heading: "FatFrank Heavy", "Paytone One", "Archivo Black", "Poppins", sans-serif;
    --font-body: "Outfit", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;

    /* Elementor Globals Overrides */
    --e-global-color-primary: var(--brand-navy) !important;
    --e-global-color-secondary: var(--brand-orange) !important;
    --e-global-color-text: #334155 !important;
    --e-global-color-accent: var(--brand-orange) !important;
}

/* Global Font Assignment */
body,
body *,
p,
span,
a:not([class*="heading"]),
li,
div:not([class*="heading"]):not([class*="title"]) {
    font-family: var(--font-body) !important;
}

/* Global Heading Assignment */
h1,
h2,
h3,
h4,
h5,
h6,
.elementor-heading-title,
.ha-gradient-heading,
.ha-gradient-heading h2,
.ha-gradient-heading h3,
.elementor-nav-menu a {
    font-family: var(--font-heading) !important;
    letter-spacing: -0.02em;
}

/* 2. Color Palette & Background System */

/* Dark Blue Navy Backgrounds / Sections */
.elementor-element-81c8121,
.elementor-element-e599c2c,
.elementor-element-d7892a6,
.elementor-element-24e533e {
    background: linear-gradient(135deg, var(--brand-navy) 0%, var(--brand-dark-bg) 100%) !important;
}

/* Sticky Header styling (White Background) */
.elementor-element-59ba381 {
    background-color: #ffffff !important;
    background: #ffffff !important;
    backdrop-filter: blur(12px) !important;
    border-bottom: 2px solid var(--brand-orange) !important;
    box-shadow: 0 4px 20px rgba(0, 37, 102, 0.08) !important;
}

.elementor-element-59ba381 .elementor-item {
    color: var(--brand-navy) !important;
    transition: color 0.3s ease !important;
}

.elementor-element-59ba381 .elementor-item:hover,
.elementor-element-59ba381 .elementor-item.elementor-item-active {
    color: var(--brand-orange) !important;
}

/* Also style the mobile toggle burger icon and mobile dropdown to match */
.elementor-element-59ba381 .elementor-menu-toggle {
    color: var(--brand-navy) !important;
}

.elementor-element-59ba381 .elementor-nav-menu--dropdown {
    background-color: #ffffff !important;
    border-top: 1px solid rgba(0, 37, 102, 0.08) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.1) !important;
}

.elementor-element-59ba381 .elementor-nav-menu--dropdown .elementor-item {
    color: var(--brand-navy) !important;
}

.elementor-element-59ba381 .elementor-nav-menu--dropdown .elementor-item:hover {
    color: var(--brand-orange) !important;
}

/* Main Hero Section Background & Overlay */
.elementor-element-1017095 {
    background-image: url("/wp-content/uploads/slideshow/e9987c7e-ee7b-4303-bef6-6e6bc297f01b.webp") !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    position: relative !important;
}

.elementor-element-1017095::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(180deg, rgba(0, 37, 102, 0.8) 0%, rgba(0, 18, 51, 0.95) 100%) !important;
    z-index: 1 !important;
}

.elementor-element-1017095 * {
    position: relative;
    z-index: 2;
}

/* Light Sections (Sobre o Evento, Programação, etc.) */
.elementor-element-4acbad2 {
    background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%) !important;
}

/* 3. Cards & Containers Overrides */

/* About Section Cards ("O que é o CONFAZ?" & "O que é o COMSEFAZ?") */
.elementor-element-faa5e9c,
.elementor-element-e73fe1b {
    background: #ffffff !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px rgba(0, 37, 102, 0.06) !important;
    border-left: 6px solid var(--brand-orange) !important;
    padding: 30px !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.elementor-element-faa5e9c:hover,
.elementor-element-e73fe1b:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 15px 35px rgba(0, 37, 102, 0.12) !important;
}

.elementor-element-faa5e9c .elementor-heading-title,
.elementor-element-e73fe1b .elementor-heading-title {
    color: var(--brand-navy) !important;
    margin-bottom: 15px !important;
}

/* 4. Component Styles (Tabs, Countdown, Buttons) */

/* Programação Nesting Tabs Override */
.e-n-tabs {
    background: transparent !important;
}

.e-n-tab-title {
    background: #ffffff !important;
    border: 1px solid rgba(0, 37, 102, 0.1) !important;
    border-radius: 12px !important;
    padding: 14px 28px !important;
    margin-right: 10px !important;
    color: var(--brand-navy) !important;
    font-weight: 700 !important;
    font-family: var(--font-body) !important;
    font-size: 1.05rem !important;
    box-shadow: 0 4px 10px rgba(0, 37, 102, 0.03) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.e-n-tab-title:hover {
    background: rgba(0, 37, 102, 0.05) !important;
    color: var(--brand-navy) !important;
}

.e-n-tab-title[aria-selected="true"] {
    background: var(--brand-navy) !important;
    color: #ffffff !important;
    border-color: var(--brand-navy) !important;
    box-shadow: 0 6px 15px rgba(0, 37, 102, 0.2) !important;
}

/* Active schedule timeline items */
.elementor-element-e92bc0b,
.elementor-element-0d15326,
.elementor-element-34dba7b,
.elementor-element-d58a13c,
.elementor-element-23a7363,
.elementor-element-6a7b19b,
.elementor-element-d26a126 {
    background: #ffffff !important;
    border-left: 5px solid var(--brand-yellow) !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04) !important;
    transition: all 0.3s ease !important;
    margin-bottom: 15px !important;
}

.elementor-element-e92bc0b:hover,
.elementor-element-0d15326:hover,
.elementor-element-34dba7b:hover,
.elementor-element-d58a13c:hover,
.elementor-element-23a7363:hover,
.elementor-element-6a7b19b:hover,
.elementor-element-d26a126:hover {
    border-left-color: var(--brand-orange) !important;
    transform: translateX(4px) !important;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08) !important;
}

.elementor-element-e92bc0b h2,
.elementor-element-0d15326 h2,
.elementor-element-34dba7b h2,
.elementor-element-d58a13c h2,
.elementor-element-23a7363 h2,
.elementor-element-6a7b19b h2,
.elementor-element-d26a126 h2 {
    color: var(--brand-navy) !important;
}

/* Button Overrides */
.elementor-button,
.elementor-button-link,
.wp-element-button {
    background: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-yellow) 100%) !important;
    color: #ffffff !important;
    font-family: var(--font-heading) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    border-radius: 50px !important;
    padding: 16px 36px !important;
    box-shadow: 0 6px 20px rgba(247, 147, 30, 0.35) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    border: none !important;
}

.elementor-button:hover,
.elementor-button-link:hover,
.wp-element-button:hover {
    transform: translateY(-2px) scale(1.03) !important;
    box-shadow: 0 10px 25px rgba(247, 147, 30, 0.5) !important;
    color: #ffffff !important;
}

/* Countdown Styling Override */
.elementor-countdown-wrapper {
    display: flex !important;
    justify-content: center !important;
    gap: 15px !important;
}

.elementor-countdown-item {
    background: rgba(0, 37, 102, 0.85) !important;
    border: 2px solid var(--brand-orange) !important;
    border-radius: 16px !important;
    padding: 20px 25px !important;
    min-width: 100px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;
    backdrop-filter: blur(8px) !important;
}

.elementor-countdown-digits {
    font-family: var(--font-heading) !important;
    color: var(--brand-yellow) !important;
    font-size: 2.8rem !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

.elementor-countdown-label {
    font-family: var(--font-body) !important;
    color: var(--brand-light-blue) !important;
    text-transform: uppercase !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.1em !important;
    margin-top: 5px !important;
}

/* Scroll to Top Custom Button */
.ha-scroll-to-top-button {
    background-color: var(--brand-orange) !important;
    box-shadow: 0 6px 15px rgba(247, 147, 30, 0.4) !important;
}

.ha-scroll-to-top-button:hover {
    background-color: var(--brand-navy) !important;
    box-shadow: 0 6px 15px rgba(0, 37, 102, 0.4) !important;
}

/* Custom modal button override to fit design */
.elementor-location-popup .elementor-button {
    background: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-yellow) 100%) !important;
    box-shadow: 0 6px 20px rgba(247, 147, 30, 0.35) !important;
}

.elementor-location-popup .elementor-button:hover {
    box-shadow: 0 10px 25px rgba(247, 147, 30, 0.5) !important;
}

/* ==========================================================================
   FURTHER PURPLE & PINK REMOVAL AND BRAND CLEANUP OVERRIDES
   ========================================================================== */

/* 1. Reset all Happy Addons Gradient Headings to Solid Brand Navy Blue */
.ha-gradient-heading,
.ha-gradient-heading .ha-gradient-heading-title,
.ha-gradient-heading h2,
.ha-gradient-heading h3,
.ha-gradient-heading-title {
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: unset !important;
    /* -webkit-text-fill-color: var(--brand-navy) !important; */
    color: var(--brand-navy) !important;
}

/* For gradient headings that are specifically inside dark sections (like Hero), make them White/Yellow */
.elementor-element-1017095 .ha-gradient-heading,
.elementor-element-1017095 .ha-gradient-heading .ha-gradient-heading-title,
.elementor-element-1017095 .ha-gradient-heading h2,
.elementor-element-1017095 .ha-gradient-heading h3,
.elementor-element-1017095 .ha-gradient-heading-title {
    background: none !important;
    background-image: none !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: #ffffff !important;
    color: #ffffff !important;
}

/* 2. Remove Pink Dots/Shapes/Dividers and transform to Brand Orange */
.elementor-icon,
.elementor-icon i,
.elementor-icon svg,
.ha-icon,
.ha-icon i,
.ha-icon svg,
.ha-icon-container,
.ha-icon-container i,
.ha-icon-container svg,
.elementor-icon-list-icon,
.elementor-icon-list-icon i,
.elementor-icon-list-icon svg,
.elementor-divider-separator,
.ha-dot,
.ha-dot-shape,
.elementor-shape,
[class*="dot"]::before,
[class*="dot"]::after {
    color: var(--brand-orange) !important;
    fill: var(--brand-orange) !important;
    border-color: var(--brand-orange) !important;
}

/* Stacked/Framed Icons should have Orange Background / Border */
.elementor-icon.elementor-view-stacked,
.elementor-view-stacked .elementor-icon,
.ha-icon.ha-view-stacked,
.ha-view-stacked .ha-icon {
    background-color: var(--brand-orange) !important;
    color: #ffffff !important;
}

.elementor-icon.elementor-view-framed,
.elementor-view-framed .elementor-icon,
.ha-icon.ha-view-framed,
.ha-view-framed .ha-icon {
    border-color: var(--brand-orange) !important;
    color: var(--brand-orange) !important;
}

/* 3. Contato/Footer Background Override (Remove Purple background) */
#contato,
[id*="contato"],
[class*="contato"],
.elementor-element-326,
footer,
.elementor-location-footer {
    background: linear-gradient(135deg, var(--brand-navy) 0%, var(--brand-dark-bg) 100%) !important;
    background-color: var(--brand-navy) !important;
    border-top: 3px solid var(--brand-orange) !important;
}

/* Ensure headings/texts in Contato/Footer section are white/light blue instead of purple */
#contato h1,
#contato h2,
#contato h3,
#contato h4,
#contato h5,
#contato h6,
#contato .elementor-heading-title,
#contato .ha-gradient-heading-title,
[id*="contato"] h1,
[id*="contato"] h2,
[id*="contato"] h3,
[class*="contato"] h1,
[class*="contato"] h2,
[class*="contato"] h3 {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: none !important;
    background-image: none !important;
}

#contato p,
#contato span,
#contato a,
[id*="contato"] p,
[id*="contato"] span,
[id*="contato"] a,
[class*="contato"] p,
[class*="contato"] span,
[class*="contato"] a {
    color: #f1f5f9 !important;
}

/* Ensure contact cards inside the footer remain white, beautiful and have high-contrast text */
#contato .elementor-element-cac2608,
#contato .elementor-element-1dddf49 {
    background-color: #ffffff !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 30px rgba(0, 37, 102, 0.05) !important;
    padding: 30px !important;
    border: 1px solid rgba(0, 37, 102, 0.08) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

#contato .elementor-element-cac2608:hover,
#contato .elementor-element-1dddf49:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 15px 35px rgba(0, 37, 102, 0.12) !important;
}

/* Force dark Navy Blue color for all text inside the cards so they are readable on white background */
#contato .elementor-element-cac2608,
#contato .elementor-element-cac2608 *,
#contato .elementor-element-1dddf49,
#contato .elementor-element-1dddf49 * {
    color: var(--brand-navy) !important;
    -webkit-text-fill-color: var(--brand-navy) !important;
}

/* Override stacked circle background from pink to elegant soft orange */
#contato .elementor-element-cac2608 .elementor-icon,
#contato .elementor-element-1dddf49 .elementor-icon {
    background-color: rgba(247, 147, 30, 0.15) !important;
    color: var(--brand-orange) !important;
    fill: var(--brand-orange) !important;
}

/* Ensure the icons inside the contact cards remain brand orange and high-fidelity */
#contato .elementor-element-cac2608 .elementor-icon i,
#contato .elementor-element-cac2608 .elementor-icon svg,
#contato .elementor-element-1dddf49 .elementor-icon i,
#contato .elementor-element-1dddf49 .elementor-icon svg {
    color: var(--brand-orange) !important;
    -webkit-text-fill-color: var(--brand-orange) !important;
    fill: var(--brand-orange) !important;
}

#contato .elementor-element-cac2608 a:hover,
#contato .elementor-element-cac2608 a:hover *,
#contato .elementor-element-1dddf49 a:hover,
#contato .elementor-element-1dddf49 a:hover * {
    color: var(--brand-orange) !important;
    -webkit-text-fill-color: var(--brand-orange) !important;
}

/* Prevent global body * font-family rule from breaking Font Awesome icons */
i.fa-solid,
i.fa-brands,
i.fa-regular,
i.fab,
i.fas,
i.far,
i.fa,
[class^="fa-"],
[class*=" fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "Font Awesome 5 Free", "Font Awesome 5 Brands", "Font Awesome", sans-serif !important;
    font-weight: 900 !important;
}

/* ==========================================================================
   REGISTRATION MODAL - PREMIUM BRAND VISUAL IDENTITY
   ========================================================================== */

/* 1. Modal Overlay & Container */
.elementor-location-popup {
    background-color: rgba(0, 37, 102, 0.85) !important;
    /* Premium dark navy overlay */
    backdrop-filter: blur(8px) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 2. Modal Card Wrapper */
.elementor-location-popup .elementor-element-217db41 {
    background: linear-gradient(135deg, #002566 0%, #06183a 100%) !important;
    border-radius: 20px !important;
    box-shadow: 0 20px 60px rgba(0, 37, 102, 0.25) !important;
    border: 1px solid rgba(0, 37, 102, 0.1) !important;
    padding: 40px !important;
    position: relative !important;
}

/* 3. Close Button */
.custom-modal-close-btn {
    color: var(--brand-navy) !important;
    font-size: 2.5rem !important;
    top: 15px !important;
    right: 20px !important;
    background: none !important;
    border: none !important;
    transition: color 0.2s ease, transform 0.2s ease !important;
    cursor: pointer !important;
    opacity: 0.8 !important;
    position: absolute !important;
    z-index: 9999 !important;
}

.custom-modal-close-btn:hover {
    color: var(--brand-orange) !important;
    transform: rotate(90deg) !important;
    opacity: 1 !important;
}

/* 4. Modal Header (Remove pink/purple gradient and style navy) */
.elementor-location-popup .ha-gradient-heading,
.elementor-location-popup .ha-gradient-heading-title {
    background: none !important;
    background-image: none !important;
    -webkit-text-fill-color: var(--brand-navy) !important;
    color: var(--brand-navy) !important;
    font-family: var(--font-heading) !important;
    font-size: 2.2rem !important;
    margin-bottom: 25px !important;
    text-align: center !important;
    font-weight: bold !important;
}

/* 5. Form Fields (Outfit Typography, light border, navy focus) */
.elementor-location-popup .elementor-field-group {
    margin-bottom: 18px !important;
}

.elementor-location-popup .elementor-field-label {
    color: var(--brand-navy) !important;
    font-family: var(--font-body) !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    margin-bottom: 6px !important;
    display: block !important;
}

.elementor-location-popup .elementor-field-textual,
.elementor-location-popup select.elementor-field-textual {
    background-color: #f8fafc !important;
    border: 1px solid rgba(0, 37, 102, 0.12) !important;
    border-radius: 8px !important;
    color: var(--brand-navy) !important;
    font-family: var(--font-body) !important;
    font-size: 0.95rem !important;
    padding: 12px 16px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.elementor-location-popup .elementor-field-textual:focus,
.elementor-location-popup select.elementor-field-textual:focus {
    border-color: var(--brand-orange) !important;
    box-shadow: 0 0 0 3px rgba(247, 147, 30, 0.15) !important;
    outline: none !important;
    background-color: #ffffff !important;
}

/* 6. Submit Button Style */
.elementor-location-popup button[type="submit"] {
    background: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-yellow) 100%) !important;
    border: none !important;
    border-radius: 50px !important;
    color: #ffffff !important;
    font-family: var(--font-heading) !important;
    font-size: 1.1rem !important;
    font-weight: bold !important;
    padding: 14px 35px !important;
    box-shadow: 0 8px 25px rgba(247, 147, 30, 0.35) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    cursor: pointer !important;
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 10px !important;
}

.elementor-location-popup button[type="submit"]:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 30px rgba(247, 147, 30, 0.45) !important;
}

.elementor-location-popup button[type="submit"]:active {
    transform: translateY(0) !important;
}

/* ==========================================================================
   HERO COUNTDOWN TIMER OVERRIDES - SINGLE ROW ON LARGE SCREENS
   ========================================================================== */

/* Centering and stretching the widget container absolutely positioned */
.elementor-element-a269d1e {
    display: flex !important;
}

/* Large Screens (Desktop and Tablet): Force single row & Align Right */
@media (min-width: 768px) {
    .elementor-element-a269d1e {
        width: auto !important;
        left: auto !important;
        right: 8% !important;
        /* Position elegantly on the right side of the Hero section */
        justify-content: flex-end !important;
    }

    .elementor-countdown-wrapper {
        flex-wrap: nowrap !important;
        flex-direction: row !important;
        max-width: 650px !important;
    }
}

/* Mobile Screens: wrap responsively and center horizontally */
@media (max-width: 767px) {
    .elementor-element-a269d1e {
        width: 100% !important;
        left: 0 !important;
        right: 0 !important;
        justify-content: center !important;
    }

    .elementor-countdown-wrapper {
        flex-wrap: wrap !important;
        gap: 10px !important;
        max-width: 100% !important;
        margin: 0 auto !important;
    }

    .elementor-countdown-item {
        min-width: 65px !important;
        /* Fit 2x2 perfectly on mobile */
        padding: 10px 5px !important;
    }

    .elementor-countdown-digits {
        font-size: 1.8rem !important;
    }

    .elementor-countdown-label {
        font-size: 0.65rem !important;
    }
}

/* Base wrapper styling */
.elementor-countdown-wrapper {
    display: flex !important;
    justify-content: center !important;
    gap: 15px !important;
    /* Spacing between cards */
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Card item defaults */
.elementor-countdown-item {
    background-color: var(--brand-navy) !important;
    background: var(--brand-navy) !important;
    border: 2px solid var(--brand-orange) !important;
    border-radius: 12px !important;
    padding: 15px 10px !important;
    min-width: 115px !important;
    /* Perfect desktop width */
    max-width: 130px !important;
    flex: 1 1 auto !important;
    box-shadow: 0 8px 24px rgba(0, 37, 102, 0.2) !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

.elementor-countdown-digits {
    color: var(--brand-yellow) !important;
    font-family: var(--font-heading) !important;
    font-size: 2.5rem !important;
    font-weight: bold !important;
    display: block !important;
    line-height: 1.1 !important;
    margin-bottom: 5px !important;
}

.elementor-countdown-label {
    color: #83d0f5 !important;
    font-family: var(--font-body) !important;
    font-weight: 700 !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    display: block !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* ==========================================
   SEÇÃO SOBRE MACAPÁ OVERRIDES
   ========================================== */
#sobre-macapa .elementor-button {
    background: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-yellow) 100%) !important;
    border-radius: 50px !important;
    color: #ffffff !important;
    font-family: var(--font-heading) !important;
    font-weight: bold !important;
    font-size: 1.05rem !important;
    padding: 15px 35px !important;
    box-shadow: 0 8px 25px rgba(247, 147, 30, 0.3) !important;
    transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.25s ease !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-decoration: none !important;
}

#sobre-macapa .elementor-button:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 15px 35px rgba(247, 147, 30, 0.5) !important;
    color: #ffffff !important;
}

#sobre-macapa .elementor-button .elementor-button-icon {
    font-size: 1.2rem !important;
    transition: transform 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

#sobre-macapa .elementor-button:hover .elementor-button-icon {
    transform: translateX(4px) !important;
}

/* Neutralize Elementor solid background rules so dynamic glassmorphism works */
#sobre-macapa,
.elementor-element-a4c6bf2 {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
}

#sobre-macapa::before,
.elementor-element-a4c6bf2::before {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    display: none !important;
}

/* ==========================================
   GLOBAL SCHEDULE ICON MAP OVERRIDES (FA6)
   ========================================== */
.elementor-icon-list-icon i.icon-clock2::before,
i.icon.icon-clock2::before,
.icon-clock2::before {
    display: inline-block !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    -webkit-font-smoothing: antialiased !important;
    content: "\f017" !important;
    /* Font Awesome 6 Solid Clock */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    color: var(--brand-orange) !important;
    font-size: 1.1rem !important;
}

.elementor-icon-list-icon i.hm-map-pointer2::before,
i.hm.hm-map-pointer2::before,
.hm-map-pointer2::before {
    display: inline-block !important;
    font-style: normal !important;
    font-variant: normal !important;
    text-rendering: auto !important;
    -webkit-font-smoothing: antialiased !important;
    content: "\f3c5" !important;
    /* Font Awesome 6 Solid Map Pin */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    color: var(--brand-orange) !important;
    font-size: 1.1rem !important;
}

/* Fix all Font Awesome icons placed inside Elementor's custom icon widgets */
.elementor-icon i.fa-solid,
.elementor-icon i.fa-regular,
.elementor-icon i[class^="fa-"],
.elementor-icon i[class*=" fa-"] {
    font-family: "Font Awesome 6 Free" !important;
    font-style: normal !important;
    color: #ffffff !important;
    /* Force white color so it displays inside colored circular backgrounds! */
    display: inline-block !important;
}

.elementor-icon i.fa-solid {
    font-weight: 900 !important;
}

.elementor-icon i.fa-regular {
    font-weight: 400 !important;
}

/* Force the location dot content inside the widget circle */
.elementor-icon i.fa-location-dot::before {
    content: "\f3c5" !important;
    /* fa-location-dot glyph code */
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    color: #ffffff !important;
}

/* ==========================================
   ELEGANT REGISTRATION MODAL FORM STYLING (PREMIUM BRAND DARK IDENTITY)
   ========================================== */

/* Force Elementor Dialog Lightbox wrappers to be transparent so our visual identity light theme shows */
.elementor-popup-modal,
.dialog-widget,
.dialog-widget-container,
.dialog-widget-content,
.dialog-widget-content .dialog-message,
.dialog-lightbox-widget,
.dialog-lightbox-widget-content,
#elementor-popup-modal-465 {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
}

/* Popup Container Styling */
.elementor-465,
.elementor-location-popup {
    background: radial-gradient(circle at top right, rgba(131, 208, 245, 0.15), transparent 45%),
        radial-gradient(circle at bottom left, rgba(247, 147, 30, 0.15), transparent 45%),
        #001b44 !important;
    /* Premium brand navy base restored */
    /* Premium clean white */
    border: 1.5px solid rgba(0, 37, 102, 0.08) !important;
    box-shadow: 0 30px 60px -15px rgba(0, 37, 102, 0.15),
        0 0 50px rgba(0, 0, 0, 0.02) !important;
    padding: 40px 35px !important;
    overflow: hidden !important;
}

/* Elegant glowing top-bar representing the brand color band */
.elementor-465::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 4px !important;
    background: linear-gradient(90deg, #f7931e 0%, #ffd041 33%, #41b170 66%, #83d0f5 100%) !important;
    z-index: 5 !important;
}

/* Modal Title (Solid Premium Navy - no gradient or glowing effects) */
.elementor-465 h2.ha-gradient-heading {
    font-family: 'Outfit', 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    text-align: center !important;
    font-size: 2.0rem !important;
    margin-bottom: 30px !important;
    text-shadow: none !important;
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: #002566 !important;
    color: #002566 !important;
}

/* Form Layout & Spacing - Responsive Grid for Desktop, Single Column for Mobile */
@media (min-width: 768px) {
    #inscricao-form .elementor-form-fields-wrapper {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 20px 24px !important;
    }

    #inscricao-form .elementor-col-100 {
        grid-column: span 2 !important;
    }

    #inscricao-form .elementor-col-50 {
        grid-column: span 1 !important;
    }

    #inscricao-form .e-form__buttons {
        grid-column: span 2 !important;
    }
}

@media (max-width: 767px) {

    /* Shrink modal internal padding */
    .elementor-465,
    .elementor-location-popup {
        padding: 25px 18px !important;
    }

    /* Keep the modal box perfectly centered with neat side margins */
    .elementor-popup-modal .dialog-widget-content,
    .dialog-lightbox-widget-content {
        margin: 0 10px !important;
        max-width: calc(100vw - 20px) !important;
        width: auto !important;
    }

    /* Scale down modal title to fit elegantly */
    .elementor-465 h2.ha-gradient-heading {
        font-size: 1.45rem !important;
        margin-bottom: 20px !important;
        padding: 0 5px !important;
    }

    #inscricao-form .elementor-form-fields-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    #inscricao-form .elementor-field-group {
        width: 100% !important;
    }
}

/* Form Labels (Uppercase Slate-Chic vibe in dark gray) */
#inscricao-form .elementor-field-label {
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.2px !important;
    color: #7188a7 !important;
    /* Beautiful highly legible dark slate gray */
    text-shadow: none !important;
    margin-bottom: 8px !important;
    display: block !important;
}

/* Form Inputs & Selects Cohesive light premium styling */
#inscricao-form .elementor-field {
    width: 100% !important;
    background-color: #f8fafc !important;
    /* Soft neutral slate background */
    border: 1.5px solid #cbd5e1 !important;
    /* Crisp darkish gray border */
    border-radius: 8px !important;
    padding: 13px 16px !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 0.95rem !important;
    color: #1e293b !important;
    /* Dark text inside input */
    outline: none !important;
    box-shadow: none !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}

/* Select specific styles (custom SVG arrow in brand navy #002566) */
#inscricao-form select.elementor-field {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23002566' stroke-width='2.5'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M19.5 8.25l-7.5 7.5-7.5-7.5'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 16px center !important;
    background-size: 14px !important;
    padding-right: 40px !important;
    cursor: pointer !important;
}

/* Dropdown options list style */
#inscricao-form select.elementor-field option {
    background-color: #ffffff !important;
    color: #1e293b !important;
}

/* Input Placeholder styles */
#inscricao-form .elementor-field::placeholder {
    color: #94a3b8 !important;
    /* Slate gray placeholder */
    opacity: 1 !important;
}

/* Input Hover States */
#inscricao-form .elementor-field:hover:not(:focus) {
    border-color: #94a3b8 !important;
    background-color: #f1f5f9 !important;
}

/* Input Focus States */
#inscricao-form .elementor-field:focus {
    background-color: #ffffff !important;
    border-color: #f7931e !important;
    /* Brand orange highlight */
    box-shadow: 0 0 0 4px rgba(247, 147, 30, 0.15) !important;
}

/* Enviar Inscrição Button Styling (Stunning brand orange-to-yellow gradient) */
#inscricao-form #submit-btn {
    width: 100% !important;
    background: linear-gradient(135deg, #f7931e 0%, #ffd041 100%) !important;
    /* Visual Identity colors */
    color: #ffffff !important;
    font-family: 'Outfit', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    border: none !important;
    border-radius: 10px !important;
    padding: 15px 30px !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 4px 20px rgba(247, 147, 30, 0.3) !important;
}

/* Button Hover State */
#inscricao-form #submit-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 25px rgba(247, 147, 30, 0.45) !important;
    filter: brightness(1.05) !important;
}

/* Button Active State */
#inscricao-form #submit-btn:active {
    transform: translateY(1px) !important;
    box-shadow: 0 2px 10px rgba(247, 147, 30, 0.2) !important;
}

/* Close Button Styling (Translucent floating circle in dark blue) */
.elementor-465 button.custom-modal-close-btn {
    position: absolute !important;
    top: 22px !important;
    right: 22px !important;
    background: rgba(0, 37, 102, 0.05) !important;
    border: 1px solid rgba(0, 37, 102, 0.08) !important;
    color: #002566 !important;
    /* Close icon matches identity brand navy */
    font-size: 18px !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 10 !important;
}

.elementor-465 button.custom-modal-close-btn:hover {
    background: rgba(247, 147, 30, 0.15) !important;
    border-color: rgba(247, 147, 30, 0.3) !important;
    color: #f7931e !important;
    /* Turns orange on hover */
    transform: rotate(90deg) !important;
}

/* Force original countdown row to break out of boxed parent and glue to the screen edge */
#home {
    position: relative !important;
}

/* Desktop layout: break out of the boxed inner container and glue to far right */
@media (min-width: 1025px) {
    #home>.e-con-inner {
        position: static !important;
    }

    #home div.elementor-element-a269d1e {
        position: absolute !important;
        right: 0 !important;
        left: auto !important;
        bottom: 20px !important;
        top: auto !important;
        transform: none !important;
        margin: 0 !important;
    }
}

/* Tablet & Mobile layout: flow naturally below the button in a single horizontal row */
@media (max-width: 1024px) {

    /* Collapse huge hero padding and height on mobile viewports */
    #home.elementor-element-1017095 {
        min-height: auto !important;
        height: auto !important;
        padding-bottom: 40px !important;
        /* Perfect tight bottom padding */
    }

    #home.elementor-element-1017095>.e-con-inner {
        min-height: auto !important;
        height: auto !important;
        padding-bottom: 0 !important;
    }

    #home>.e-con-inner {
        position: relative !important;
        /* Restore default for mobile flow */
    }

    #home div.elementor-element-a269d1e {
        position: relative !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        top: auto !important;
        transform: none !important;
        margin: 35px auto 15px auto !important;
        /* Perfect spacing below button */
        width: 100% !important;
        max-width: 360px !important;
        /* Compact container fit */
        display: block !important;
    }

    /* Force all 4 items to stay in one single row */
    #home div.elementor-element-a269d1e .elementor-countdown-wrapper {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        /* Force single line! */
        justify-content: center !important;
        gap: 6px !important;
        width: 100% !important;
    }

    /* Equal column shrink distribution */
    #home div.elementor-element-a269d1e .elementor-countdown-item {
        flex: 1 1 0% !important;
        min-width: 0 !important;
        padding: 8px 4px !important;
        /* Compact padding */
    }

    /* Scale down typography to fit small screens */
    #home div.elementor-element-a269d1e .elementor-countdown-digits {
        font-size: 1.25rem !important;
        line-height: 1.1 !important;
    }

    #home div.elementor-element-a269d1e .elementor-countdown-label {
        font-size: 0.55rem !important;
        letter-spacing: 0.5px !important;
        margin-top: 2px !important;
    }
}

/* ==========================================
   CUSTOM PREMIUM STICKY HEADER & NAV MENU
   ========================================== */

/* Custom Premium Header Layout (Navbar Desktop) */
.elementor-element-59ba381 {
    height: 66px !important;
    /* Spacious premium height on desktop */
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    transition: height 0.3s ease !important;
}

.elementor-element-59ba381>.e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    /* Align links to the left */
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
    height: 100% !important;
}

/* Adjust the navbar widget container to align left on desktop */
.elementor-element-59ba381 .elementor-element-af55ec3 {
    flex: 1 !important;
    display: flex !important;
    justify-content: flex-start !important;
    /* align-items: center !important; */
    height: 100% !important;
    margin-left: 0 !important;
    margin-right: auto !important;
}

/* Desktop horizontal menu adjustments - Align left, vertical center & remove proportional spacing */
.elementor-element-59ba381 .elementor-widget-nav-menu,
.elementor-element-59ba381 .elementor-widget-container,
.elementor-element-59ba381 .elementor-nav-menu--main {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    /* Pack to far left */
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    max-width: 100% !important;
    flex-grow: 0 !important;
    /* Do not stretch container */
}

/* Explicitly override Elementor Pro's horizontal menu stretch rules */
.elementor-element-59ba381 .elementor-nav-menu--layout-horizontal .elementor-nav-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    /* Pack left, no proportional stretch */
    flex-wrap: nowrap !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    gap: 8px !important;
    /* Exact uniform spacing between links */
}

.elementor-element-59ba381 .elementor-nav-menu--layout-horizontal .elementor-nav-menu>li {
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    /* Prevent list items from growing */
    width: auto !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-59ba381 .elementor-nav-menu--layout-horizontal .elementor-nav-menu a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-grow: 0 !important;
    /* Kill the flex-grow: 1! */
    flex-shrink: 0 !important;
    flex-basis: auto !important;
    width: auto !important;
    height: 100% !important;
    white-space: nowrap !important;
    padding: 10px 15px !important;
    /* Constant, premium spacing padding */
    margin: 0 !important;
}

/* Mobile & Tablet Specific Responsive Overrides */
@media (max-width: 1024px) {

    /* Sticky header parent container styling for mobile */
    .elementor-element-59ba381 {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: 70px !important;
        /* Sleek mobile height */
        z-index: 9999 !important;
        background-color: #ffffff !important;
        border-bottom: 2px solid var(--brand-orange) !important;
        box-shadow: 0 4px 20px rgba(0, 37, 102, 0.08) !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    .elementor-element-59ba381>.e-con-inner {
        height: 100% !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 15px !important;
    }

    /* Force the navbar wrapper to be visible even if elementor-hidden-mobile is in HTML */
    .elementor-element-af55ec3.elementor-hidden-mobile {
        display: flex !important;
        flex: 0 0 auto !important;
        justify-content: flex-end !important;
        height: 100% !important;
        align-items: center !important;
    }

    .elementor-element-36bae63 {
        display: flex !important;
        height: 100% !important;
        align-items: center !important;
        justify-content: flex-end !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Ensure hamburger toggle is beautifully centered and sized */
    .elementor-element-59ba381 .elementor-menu-toggle {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 24px !important;
        width: 44px !important;
        height: 44px !important;
        border-radius: 8px !important;
        background-color: rgba(0, 37, 102, 0.04) !important;
        border: 1px solid rgba(0, 37, 102, 0.06) !important;
        cursor: pointer !important;
        transition: all 0.25s ease !important;
        position: static !important;
        /* Lock inside the flex bar! */
        margin: 0 !important;
        padding: 0 !important;
    }

    .elementor-element-59ba381 .elementor-menu-toggle:hover {
        background-color: rgba(247, 147, 30, 0.1) !important;
        border-color: rgba(247, 147, 30, 0.2) !important;
        color: var(--brand-orange) !important;
    }

    /* Premium mobile dropdown overlay */
    .elementor-element-59ba381 .elementor-nav-menu--dropdown {
        position: fixed !important;
        top: 60px !important;
        left: 0 !important;
        width: 100vw !important;
        height: calc(100vh - 70px) !important;
        background-color: rgba(255, 255, 255, 0.98) !important;
        backdrop-filter: blur(15px) !important;
        z-index: 9998 !important;
        border-top: 1px solid rgba(0, 37, 102, 0.08) !important;
        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15) !important;
        padding: 30px 20px !important;
        display: none;
        /* Controlled dynamically by JS toggle class '.elementor-active' */
        overflow-y: auto !important;
    }

    /* Show mobile dropdown overlay cleanly with scale-up fade-in transition */
    .elementor-element-59ba381 .elementor-nav-menu--dropdown.elementor-active {
        display: block !important;
        animation: premiumDropdownFadeIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
    }

    @keyframes premiumDropdownFadeIn {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    /* Mobile menu list items styled like a premium portal */
    .elementor-element-59ba381 .elementor-nav-menu--dropdown ul.elementor-nav-menu {
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;
        padding: 0 !important;
        margin: 0 !important;
        list-style: none !important;
        width: 100% !important;
    }

    .elementor-element-59ba381 .elementor-nav-menu--dropdown .menu-item {
        width: 100% !important;
        border-bottom: 1px solid rgba(0, 37, 102, 0.05) !important;
        padding-bottom: 10px !important;
    }

    .elementor-element-59ba381 .elementor-nav-menu--dropdown .menu-item:last-child {
        border-bottom: none !important;
    }

    .elementor-element-59ba381 .elementor-nav-menu--dropdown .elementor-item {
        font-family: 'Outfit', sans-serif !important;
        font-size: 1.3rem !important;
        font-weight: 600 !important;
        color: var(--brand-navy) !important;
        display: block !important;
        width: 100% !important;
        padding: 8px 12px !important;
        border-radius: 8px !important;
        transition: all 0.25s ease !important;
    }

    /* Hover/Active states on mobile items */
    .elementor-element-59ba381 .elementor-nav-menu--dropdown .elementor-item:hover,
    .elementor-element-59ba381 .elementor-nav-menu--dropdown .elementor-item:active {
        color: var(--brand-orange) !important;
        background-color: rgba(247, 147, 30, 0.08) !important;
        padding-left: 20px !important;
        /* Micro animation: shift right on hover */
    }

    /* Hide horizontal main menu on mobile explicitly */
    .elementor-element-59ba381 .elementor-nav-menu--main {
        display: none !important;
    }
}

/* ==========================================
   HERO BACKGROUND SLIDESHOW STYLING
   ========================================== */
#home {
    position: relative !important;
    overflow: hidden !important;
}

.hero-slideshow {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

.hero-slide {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    opacity: 0;
    transition: opacity 2000ms ease-in-out !important;
    /* Suavidade de 2 segundos */
}

.hero-slide.active {
    opacity: 1 !important;
}

/* Garantir gradiente azul de overlay por cima das imagens e por baixo do texto */
#home::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, #002566e2 49%, #195C8FDE 100%) !important;
    z-index: 1 !important;
    pointer-events: none !important;
}

/* Trazer conteúdo textual e botões para o topo */
#home>.e-con-inner {
    position: relative !important;
    z-index: 2 !important;
}

/* ==========================================
   CENTERED CTA BUTTON IDENTITY STYLING
   ========================================== */
.cta-centered-container {
    text-align: center !important;
    /* margin: 45px auto 10px auto !important; */
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

.custom-cta-btn {
    background: linear-gradient(135deg, var(--brand-orange) 0%, var(--brand-yellow) 100%) !important;
    border-radius: 50px !important;
    color: #ffffff !important;
    font-family: 'Outfit', 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    font-size: 1.15rem !important;
    padding: 16px 40px !important;
    box-shadow: 0 8px 25px rgba(247, 147, 30, 0.3) !important;
    transition: transform 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.25s ease !important;
    border: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.custom-cta-btn:hover {
    transform: translateY(-3px) scale(1.02) !important;
    box-shadow: 0 15px 35px rgba(247, 147, 30, 0.5) !important;
    color: #ffffff !important;
}

.custom-cta-btn .elementor-button-icon {
    font-size: 1.2rem !important;
    transition: transform 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.custom-cta-btn:hover .elementor-button-icon {
    transform: translateX(4px) !important;
}

/* Hover style for Localizacao Image Card */
.elementor-element-e0f8bc3:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 25px 45px rgba(0, 0, 0, 0.25) !important;
}

/* Gallery Disabled Button Premium Styling */
.gallery-btn-disabled {
    background: rgba(255, 255, 255, 0.05) !important;
    border: 1px dashed rgba(247, 147, 30, 0.3) !important;
    color: #f7931e !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
    box-shadow: none !important;
    transform: none !important;
    transition: none !important;
    opacity: 0.9 !important;
}

.gallery-btn-disabled * {
    color: #f7931e !important;
}

.gallery-btn-disabled:hover {
    transform: none !important;
    box-shadow: none !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

/* ===== COMPORTAMENTO NO DESKTOP ===== */
.botoes-container {
    display: flex !important;
    flex-direction: row !important;
    gap: 15px !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    width: 100% !important;
}

/* Força os botões a ocuparem apenas o espaço necessário no desktop para ficarem lado a lado */
.botoes-container .elementor-widget-button {
    width: auto !important;
    flex: 0 1 auto !important;
    margin: 0 !important;
}

/* ===== COMPORTAMENTO NO MOBILE (até 767px) ===== */
@media (max-width: 767px) {
    .botoes-container {
        flex-direction: column !important;
    }
    
    /* Faz os botões ocuparem 100% da largura da tela */
    .botoes-container .elementor-widget-button {
        width: 100% !important;
    }
    
    .botoes-container .elementor-button {
        width: 100% !important;
        justify-content: center !important; /* Centraliza o ícone e o texto dentro do botão */
    }
}

/* ===== ESTILO OUTLINE (Botão Ver Orçamento) ===== */
.btn-outline .elementor-button {
    background: transparent !important; /* Remove qualquer cor ou gradiente padrão */
    border: 2px solid #002566 !important; /* Cor principal (azul) */
    color: #002566 !important; /* Cor do texto */
    box-shadow: none !important; /* Remove sombras indesejadas */
}

.btn-outline .elementor-button .elementor-button-icon i {
    color: #002566 !important; /* Cor do ícone */
}

/* Efeito Hover (inverte as cores ao passar o mouse) */
.btn-outline .elementor-button:hover {
    background: #002566 !important; /* Cor de fundo no hover */
    color: #ffffff !important; /* Cor do texto no hover */
}

.btn-outline .elementor-button:hover .elementor-button-icon i {
    color: #ffffff !important;
}