.elementor-95 .elementor-element.elementor-element-bec4433{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for container, class: .elementor-element-bec4433 */@import url('https://fonts.googleapis.com/css2?family=Bodoni+Moda:ital,opsz,wght@0,6..96,400;0,6..96,500&family=Jost:wght@300;400;500&display=swap');

/* ==================================================
   VARIÁVEIS
================================================== */

:root {
    --seguremar-footer-deep: #00131F;
    --seguremar-footer-ocean: #001C2E;
    --seguremar-footer-navy: #002E47;
    --seguremar-footer-blue: #004E67;
    --seguremar-footer-petrol: #008B8B;
    --seguremar-footer-cyan: #00CEC8;
    --seguremar-footer-aqua: #B3EBF2;
    --seguremar-footer-silver: #D9E2E6;
    --seguremar-footer-white: #FFFFFF;
    --seguremar-footer-muted: #82949D;

    --seguremar-footer-font-editorial:
        'Bodoni Moda', serif;

    --seguremar-footer-font-interface:
        'Jost', sans-serif;

    --seguremar-footer-content: 1320px;

    --seguremar-footer-transition:
        300ms ease;

    --seguremar-footer-premium-ease:
        cubic-bezier(0.16, 1, 0.3, 1);
}

/* ==================================================
   RESET DO COMPONENTE
================================================== */

.seguremar-footer,
.seguremar-footer *,
.seguremar-footer *::before,
.seguremar-footer *::after {
    box-sizing: border-box;
}

.seguremar-footer h2,
.seguremar-footer h3,
.seguremar-footer p,
.seguremar-footer ul,
.seguremar-footer li,
.seguremar-footer address {
    margin: 0;
    padding: 0;
}

.seguremar-footer ul {
    list-style: none;
}

.seguremar-footer address {
    font-style: normal;
}

.seguremar-footer a,
.seguremar-footer a:link,
.seguremar-footer a:visited,
.seguremar-footer a:hover,
.seguremar-footer a:focus,
.seguremar-footer a:active {
    text-decoration: none !important;
    box-shadow: none !important;
}

/* ==================================================
   FULL WIDTH — ELEMENTOR
================================================== */

.seguremar-footer-parent {
    width: 100vw !important;
    max-width: 100vw !important;

    margin-left:
        calc(50% - 50vw) !important;

    margin-right:
        calc(50% - 50vw) !important;

    padding: 0 !important;

    overflow: visible !important;

    background:
        transparent !important;
}

.seguremar-footer-parent > .e-con-inner,
.seguremar-footer-parent > .elementor-container,
.seguremar-footer-parent > .elementor-widget-wrap,
.seguremar-footer-parent .elementor-widget-html,
.seguremar-footer-parent
.elementor-widget-html
> .elementor-widget-container {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}

/* ==================================================
   RODAPÉ
================================================== */

.seguremar-footer {
    position: relative;

    width: 100%;

    overflow: hidden;

    color:
        var(--seguremar-footer-silver);

    background:
        radial-gradient(
            circle at 82% -15%,
            rgba(0, 206, 200, 0.13) 0%,
            rgba(0, 139, 139, 0.045) 28%,
            transparent 56%
        ),
        radial-gradient(
            circle at 8% 38%,
            rgba(0, 78, 103, 0.17) 0%,
            transparent 42%
        ),
        linear-gradient(
            180deg,
            var(--seguremar-footer-ocean) 0%,
            var(--seguremar-footer-deep) 100%
        );

    font-family:
        var(--seguremar-footer-font-interface);
}

.seguremar-footer::before {
    content: "";

    position: absolute;
    top: 0;
    right: 0;
    left: 0;

    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent 0%,
            rgba(179, 235, 242, 0.18) 22%,
            rgba(0, 206, 200, 0.76) 50%,
            rgba(179, 235, 242, 0.18) 78%,
            transparent 100%
        );
}

.seguremar-footer-atmosphere {
    position: absolute;
    top: -240px;
    right: -160px;

    width: 620px;
    height: 620px;

    pointer-events: none;

    border:
        1px solid
        rgba(179, 235, 242, 0.035);

    border-radius: 50%;

    opacity: 0.75;
}

.seguremar-footer-atmosphere::before,
.seguremar-footer-atmosphere::after {
    content: "";

    position: absolute;

    border:
        1px solid
        rgba(179, 235, 242, 0.035);

    border-radius: 50%;
}

.seguremar-footer-atmosphere::before {
    inset: 90px;
}

.seguremar-footer-atmosphere::after {
    inset: 180px;
}

/* ==================================================
   CONTAINER
================================================== */

.seguremar-footer-inner {
    position: relative;
    z-index: 2;

    width:
        min(
            var(--seguremar-footer-content),
            calc(100% - 120px)
        );

    margin: 0 auto;

    padding:
        96px 0 30px;
}

/* ==================================================
   APRESENTAÇÃO SUPERIOR
================================================== */

.seguremar-footer-top {
    display: grid;

    grid-template-columns:
        minmax(280px, 0.8fr)
        minmax(480px, 1.2fr);

    align-items: end;

    gap: 100px;

    padding-bottom: 72px;

    border-bottom:
        1px solid
        rgba(217, 226, 230, 0.09);
}

/* ==================================================
   MARCA
================================================== */

.seguremar-footer-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.seguremar-footer-logo {
    width: 190px;
    height: 76px;

    margin-bottom: 22px;

    display: inline-flex;
    align-items: center;
    justify-content: flex-start;

    overflow: visible;

    transition:
        opacity
        var(--seguremar-footer-transition),
        transform
        var(--seguremar-footer-transition);
}

.seguremar-footer-logo:hover,
.seguremar-footer-logo:focus {
    opacity: 0.84;

    transform:
        translateY(-2px);
}

.seguremar-footer-logo:focus-visible {
    outline:
        1px solid
        var(--seguremar-footer-cyan);

    outline-offset: 6px;
}

.seguremar-footer-logo img {
    width: 120px;
    max-width: none;
    height: 68px;

    display: block;

    object-fit: contain;

    transform:
        scale(2);

    transform-origin:
        left center;

    filter:
        drop-shadow(
            0 5px 18px
            rgba(0, 0, 0, 0.20)
        );
}

.seguremar-footer-slogan {
    max-width: 300px;

    color:
        var(--seguremar-footer-aqua);

    font-family:
        var(--seguremar-footer-font-editorial);

    font-size: 18px;
    font-style: italic;
    font-weight: 400;
    line-height: 1.55;
}

.seguremar-footer-origin {
    margin-top: 25px;

    display: inline-flex;
    align-items: center;

    gap: 10px;

    color:
        rgba(217, 226, 230, 0.56);

    font-size: 9px;
    font-weight: 400;
    line-height: 1.3;

    letter-spacing: 0.16em;

    text-transform: uppercase;
}

.seguremar-footer-origin-dot {
    width: 5px;
    height: 5px;

    flex:
        0 0 5px;

    border-radius: 50%;

    background:
        var(--seguremar-footer-cyan);

    box-shadow:
        0 0 12px
        rgba(0, 206, 200, 0.55);
}

/* ==================================================
   MENSAGEM PRINCIPAL
================================================== */

.seguremar-footer-message {
    max-width: 700px;
}

.seguremar-footer-eyebrow {
    margin-bottom: 20px;

    display: inline-flex;
    align-items: center;

    gap: 13px;

    color:
        var(--seguremar-footer-cyan);

    font-size: 9px;
    font-weight: 500;
    line-height: 1;

    letter-spacing: 0.25em;

    text-transform: uppercase;
}

.seguremar-footer-eyebrow::before {
    content: "";

    width: 28px;
    height: 1px;

    display: block;

    background:
        currentColor;
}

.seguremar-footer-message h2 {
    max-width: 680px;

    color:
        var(--seguremar-footer-white);

    font-family:
        var(--seguremar-footer-font-interface);

    font-size:
        clamp(34px, 4.25vw, 58px);

    font-weight: 300;
    line-height: 1.13;

    letter-spacing: 0.015em;

    text-transform: uppercase;
}

.seguremar-footer-message h2 em {
    display: inline-block;

    color:
        var(--seguremar-footer-cyan);

    font-family:
        var(--seguremar-footer-font-editorial);

    font-size: 1.12em;
    font-style: italic;
    font-weight: 400;
    line-height: 1;

    letter-spacing: -0.035em;

    text-transform: none;
}

.seguremar-footer-message > p {
    max-width: 530px;

    margin-top: 24px;

    color:
        rgba(217, 226, 230, 0.68);

    font-size: 15px;
    font-weight: 300;
    line-height: 1.8;

    letter-spacing: 0.012em;
}

/* ==================================================
   BOTÃO DE COTAÇÃO
================================================== */

.seguremar-footer-quote {
    margin-top: 32px;

    padding:
        13px 0 8px;

    display: inline-flex;
    align-items: center;

    gap: 16px;

    color:
        var(--seguremar-footer-white);

    border-bottom:
        1px solid
        rgba(179, 235, 242, 0.38);

    font-size: 10px;
    font-weight: 500;
    line-height: 1;

    letter-spacing: 0.19em;

    text-transform: uppercase;

    transition:
        color
        var(--seguremar-footer-transition),
        border-color
        var(--seguremar-footer-transition),
        gap
        var(--seguremar-footer-transition);
}

.seguremar-footer-quote svg {
    width: 17px;
    height: 17px;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.5;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.seguremar-footer-quote:hover,
.seguremar-footer-quote:focus {
    gap: 22px;

    color:
        var(--seguremar-footer-cyan) !important;

    border-color:
        var(--seguremar-footer-cyan);
}

.seguremar-footer-quote:focus-visible {
    outline:
        1px solid
        var(--seguremar-footer-cyan);

    outline-offset: 6px;
}

/* ==================================================
   COLUNAS PRINCIPAIS
================================================== */

.seguremar-footer-main {
    display: grid;

    grid-template-columns:
        0.78fr
        1fr
        1.2fr
        1.3fr;

    gap:
        clamp(42px, 5vw, 82px);

    padding:
        62px 0 64px;
}

/* ==================================================
   COLUNAS
================================================== */

.seguremar-footer-column h3 {
    margin-bottom: 25px;

    color:
        var(--seguremar-footer-cyan);

    font-size: 9px;
    font-weight: 500;
    line-height: 1.2;

    letter-spacing: 0.21em;

    text-transform: uppercase;
}

.seguremar-footer-column ul {
    display: flex;
    flex-direction: column;

    gap: 13px;
}

.seguremar-footer-column li,
.seguremar-footer-column li a {
    line-height: 1.5;
}

.seguremar-footer-column li a {
    position: relative;

    display: inline-flex;

    color:
        rgba(217, 226, 230, 0.67);

    font-size: 13px;
    font-weight: 300;

    transition:
        color
        var(--seguremar-footer-transition),
        transform
        var(--seguremar-footer-transition);
}

.seguremar-footer-column li a::before {
    content: "";

    position: absolute;
    top: 50%;
    left: -13px;

    width: 4px;
    height: 1px;

    background:
        var(--seguremar-footer-cyan);

    opacity: 0;

    transform:
        translateY(-50%)
        scaleX(0);

    transform-origin: right;

    transition:
        opacity
        var(--seguremar-footer-transition),
        transform
        var(--seguremar-footer-transition);
}

.seguremar-footer-column li a:hover,
.seguremar-footer-column li a:focus {
    color:
        var(--seguremar-footer-white) !important;

    transform:
        translateX(7px);
}

.seguremar-footer-column li a:hover::before,
.seguremar-footer-column li a:focus::before {
    opacity: 1;

    transform:
        translateY(-50%)
        scaleX(1);
}

/* ==================================================
   CONTATO
================================================== */

.seguremar-footer-contact {
    display: flex;
    flex-direction: column;

    gap: 22px;
}

.seguremar-footer-contact-link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 5px;

    color:
        rgba(217, 226, 230, 0.76);

    font-size: 13px;
    font-weight: 300;
    line-height: 1.55;

    transition:
        color
        var(--seguremar-footer-transition);
}

a.seguremar-footer-contact-link:hover,
a.seguremar-footer-contact-link:focus {
    color:
        var(--seguremar-footer-cyan) !important;
}

.seguremar-footer-contact-label {
    color:
        rgba(130, 148, 157, 0.82);

    font-size: 8px;
    font-weight: 500;
    line-height: 1;

    letter-spacing: 0.18em;

    text-transform: uppercase;
}

/* ==================================================
   REDES SOCIAIS
================================================== */

.seguremar-footer-social-copy {
    max-width: 250px;

    margin-top: 20px;
    margin-bottom: 0;

    color:
        rgba(217, 226, 230, 0.58);

    font-size: 13px;
    font-weight: 300;
    line-height: 1.7;
}

.seguremar-footer-socials {
    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 12px;
}

.seguremar-footer-socials
.seguremar-footer-social:first-child {
    margin-top:
        15px !important;
}

.seguremar-footer-social {
    display: inline-flex;
    align-items: center;

    gap: 12px;

    color:
        rgba(217, 226, 230, 0.72);

    font-size: 10px;
    font-weight: 400;
    line-height: 1;

    letter-spacing: 0.13em;

    text-transform: uppercase;

    transition:
        color
        var(--seguremar-footer-transition),
        transform
        var(--seguremar-footer-transition);
}

.seguremar-footer-social svg {
    width: 33px;
    height: 33px;

    padding: 8px;

    overflow: visible;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.25;
    stroke-linecap: round;
    stroke-linejoin: round;

    border:
        1px solid
        rgba(179, 235, 242, 0.18);

    border-radius: 50%;

    transition:
        color
        var(--seguremar-footer-transition),
        border-color
        var(--seguremar-footer-transition),
        background
        var(--seguremar-footer-transition),
        transform
        var(--seguremar-footer-transition),
        box-shadow
        var(--seguremar-footer-transition);
}

.seguremar-footer-social-fill {
    fill: currentColor;
    stroke: none;
}

.seguremar-footer-social:hover,
.seguremar-footer-social:focus {
    color:
        var(--seguremar-footer-cyan) !important;

    transform:
        translateX(4px);
}

.seguremar-footer-social:hover svg,
.seguremar-footer-social:focus svg {
    color:
        var(--seguremar-footer-deep);

    border-color:
        var(--seguremar-footer-cyan);

    background:
        var(--seguremar-footer-cyan);

    transform:
        scale(1.05);

    box-shadow:
        0 10px 25px
        rgba(0, 206, 200, 0.16);
}

.seguremar-footer-social:focus-visible {
    outline:
        1px solid
        var(--seguremar-footer-cyan);

    outline-offset: 5px;
}

/* ==================================================
   BASE DO RODAPÉ
================================================== */

.seguremar-footer-bottom {
    min-height: 66px;

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        auto
        minmax(0, 1fr);

    align-items: center;

    gap: 30px;

    color:
        rgba(130, 148, 157, 0.72);

    border-top:
        1px solid
        rgba(217, 226, 230, 0.075);

    font-size: 10px;
    font-weight: 300;
    line-height: 1.5;

    letter-spacing: 0.07em;
}

.seguremar-footer-copyright {
    justify-self: start;
}

.seguremar-footer-creator {
    justify-self: center;

    color:
        rgba(130, 148, 157, 0.76);

    white-space: nowrap;
}

.seguremar-footer-creator a {
    position: relative;

    margin-left: 4px;

    color:
        rgba(217, 226, 230, 0.86);

    font-weight: 400;

    transition:
        color
        var(--seguremar-footer-transition);
}

.seguremar-footer-creator a::after {
    content: "";

    position: absolute;
    right: 0;
    bottom: -4px;
    left: 0;

    height: 1px;

    background:
        var(--seguremar-footer-cyan);

    transform:
        scaleX(0);

    transform-origin: center;

    transition:
        transform
        var(--seguremar-footer-transition);
}

.seguremar-footer-creator a:hover,
.seguremar-footer-creator a:focus {
    color:
        var(--seguremar-footer-cyan) !important;
}

.seguremar-footer-creator a:hover::after,
.seguremar-footer-creator a:focus::after {
    transform:
        scaleX(1);
}

.seguremar-footer-legal {
    justify-self: end;

    display: flex;
    align-items: center;

    gap: 15px;
}

.seguremar-footer-legal > span {
    width: 3px;
    height: 3px;

    flex:
        0 0 3px;

    border-radius: 50%;

    background:
        rgba(179, 235, 242, 0.28);
}

.seguremar-footer-legal-button {
    position: relative;

    margin: 0;
    padding: 0;

    color:
        rgba(130, 148, 157, 0.72);

    background:
        transparent;

    border: 0;
    border-radius: 0;

    box-shadow: none;

    cursor: pointer;

    font-family:
        var(--seguremar-footer-font-interface);

    font-size: 10px;
    font-weight: 300;
    line-height: 1.5;

    letter-spacing: 0.07em;

    appearance: none;
    -webkit-appearance: none;

    transition:
        color
        var(--seguremar-footer-transition);
}

.seguremar-footer-legal-button::after {
    content: "";

    position: absolute;
    right: 0;
    bottom: -4px;
    left: 0;

    height: 1px;

    background:
        var(--seguremar-footer-cyan);

    transform:
        scaleX(0);

    transform-origin: center;

    transition:
        transform
        var(--seguremar-footer-transition);
}

.seguremar-footer-legal-button:hover,
.seguremar-footer-legal-button:focus {
    color:
        var(--seguremar-footer-cyan) !important;

    background:
        transparent;
}

.seguremar-footer-legal-button:hover::after,
.seguremar-footer-legal-button:focus::after {
    transform:
        scaleX(1);
}

.seguremar-footer-legal-button:focus-visible {
    outline:
        1px solid
        var(--seguremar-footer-cyan);

    outline-offset: 5px;
}

/* ==================================================
   MODAL — BLOQUEIO DO DOCUMENTO
================================================== */

body.seguremar-modal-open {
    overflow: hidden !important;
}

/* ==================================================
   MODAL — SOBREPOSIÇÃO
================================================== */

.seguremar-legal-modal,
.seguremar-legal-modal *,
.seguremar-legal-modal *::before,
.seguremar-legal-modal *::after {
    box-sizing: border-box;
}

.seguremar-legal-modal {
    position: fixed;
    inset: 0;
    z-index: 1000000;

    padding: 32px;

    display: grid;
    place-items: center;

    overflow: hidden;

    background:
        rgba(0, 13, 22, 0.78);

    backdrop-filter:
        blur(11px)
        saturate(108%);

    -webkit-backdrop-filter:
        blur(11px)
        saturate(108%);

    opacity: 0;
    visibility: hidden;

    transition:
        opacity 300ms ease,
        visibility 300ms ease;

    font-family:
        var(--seguremar-footer-font-interface);
}

.seguremar-legal-modal[hidden] {
    display: none !important;
}

.seguremar-legal-modal.is-open {
    opacity: 1;
    visibility: visible;
}

/* ==================================================
   MODAL — JANELA
================================================== */

.seguremar-legal-modal-dialog {
    position: relative;

    width:
        min(
            940px,
            100%
        );

    max-height:
        calc(100svh - 64px);

    display: grid;

    grid-template-rows:
        auto
        minmax(0, 1fr)
        auto;

    overflow: hidden;

    color:
        #15303D;

    background:
        linear-gradient(
            145deg,
            #FFFFFF 0%,
            #F1F8F8 100%
        );

    border:
        1px solid
        rgba(0, 206, 200, 0.38);

    border-radius: 3px;

    box-shadow:
        0 50px 110px
        rgba(0, 7, 12, 0.56);

    outline: none;

    opacity: 0;

    transform:
        translateY(38px)
        scale(0.975);

    transition:
        opacity 340ms ease,
        transform 440ms
        var(--seguremar-footer-premium-ease);
}

.seguremar-legal-modal.is-open
.seguremar-legal-modal-dialog {
    opacity: 1;

    transform:
        translateY(0)
        scale(1);
}

.seguremar-legal-modal-dialog::before {
    content: "";

    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    z-index: 8;

    height: 3px;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--seguremar-footer-petrol),
            var(--seguremar-footer-cyan),
            var(--seguremar-footer-aqua),
            var(--seguremar-footer-cyan),
            var(--seguremar-footer-petrol),
            transparent
        );
}

/* ==================================================
   MODAL — CABEÇALHO
================================================== */

.seguremar-legal-modal-header {
    position: relative;

    padding:
        42px 92px 34px 46px;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 86% -10%,
            rgba(0, 206, 200, 0.17),
            transparent 45%
        ),
        linear-gradient(
            145deg,
            var(--seguremar-footer-ocean),
            var(--seguremar-footer-deep)
        );

    border-bottom:
        1px solid
        rgba(179, 235, 242, 0.13);
}

.seguremar-legal-modal-header::after {
    content: "";

    position: absolute;
    top: -190px;
    right: -130px;

    width: 420px;
    height: 420px;

    pointer-events: none;

    border:
        1px solid
        rgba(179, 235, 242, 0.05);

    border-radius: 50%;

    box-shadow:
        inset 0 0 0 70px
        transparent;
}

.seguremar-legal-modal-heading {
    position: relative;
    z-index: 2;

    max-width: 700px;
}

.seguremar-legal-modal-eyebrow {
    display: block;

    margin-bottom: 14px;

    color:
        var(--seguremar-footer-cyan);

    font-size: 9px;
    font-weight: 500;
    line-height: 1;

    letter-spacing: 0.21em;

    text-transform: uppercase;
}

.seguremar-legal-modal-heading h2 {
    margin: 0;

    color:
        var(--seguremar-footer-white);

    font-family:
        var(--seguremar-footer-font-editorial);

    font-size:
        clamp(35px, 4vw, 50px);

    font-style: italic;
    font-weight: 400;
    line-height: 1.04;

    letter-spacing: -0.035em;
}

.seguremar-legal-modal-heading p {
    max-width: 660px;

    margin:
        17px 0 0;

    color:
        rgba(217, 226, 230, 0.67);

    font-size: 13px;
    font-weight: 300;
    line-height: 1.78;
}

/* ==================================================
   MODAL — BOTÃO FECHAR
================================================== */

.seguremar-legal-modal-close {
    position: absolute;
    top: 31px;
    right: 31px;
    z-index: 4;

    width: 44px;
    height: 44px;

    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    color:
        var(--seguremar-footer-aqua);

    background:
        rgba(179, 235, 242, 0.045);

    border:
        1px solid
        rgba(179, 235, 242, 0.19);

    border-radius: 50%;

    cursor: pointer;

    appearance: none;
    -webkit-appearance: none;

    transition:
        color 300ms ease,
        background 300ms ease,
        border-color 300ms ease,
        transform 450ms
        var(--seguremar-footer-premium-ease);
}

.seguremar-legal-modal-close span {
    position: absolute;

    width: 17px;
    height: 1px;

    background:
        currentColor;
}

.seguremar-legal-modal-close
span:first-child {
    transform:
        rotate(45deg);
}

.seguremar-legal-modal-close
span:last-child {
    transform:
        rotate(-45deg);
}

.seguremar-legal-modal-close:hover,
.seguremar-legal-modal-close:focus {
    color:
        var(--seguremar-footer-deep);

    background:
        var(--seguremar-footer-cyan);

    border-color:
        var(--seguremar-footer-cyan);

    transform:
        rotate(90deg);
}

.seguremar-legal-modal-close:focus-visible {
    outline:
        1px solid
        var(--seguremar-footer-white);

    outline-offset: 4px;
}

/* ==================================================
   MODAL — CONTEÚDO ROLÁVEL
================================================== */

.seguremar-legal-modal-content {
    padding:
        39px 46px 50px;

    overflow-x: hidden;
    overflow-y: auto;

    overscroll-behavior: contain;

    scrollbar-width: thin;

    scrollbar-color:
        var(--seguremar-footer-petrol)
        rgba(0, 46, 71, 0.08);
}

.seguremar-legal-modal-content::-webkit-scrollbar {
    width: 8px;
}

.seguremar-legal-modal-content::-webkit-scrollbar-track {
    background:
        rgba(0, 46, 71, 0.055);
}

.seguremar-legal-modal-content::-webkit-scrollbar-thumb {
    background:
        linear-gradient(
            180deg,
            var(--seguremar-footer-petrol),
            var(--seguremar-footer-cyan)
        );

    border-radius: 999px;
}

.seguremar-legal-modal-update {
    margin-bottom: 35px;

    padding:
        12px 16px;

    display: inline-flex;

    color:
        var(--seguremar-footer-blue);

    background:
        rgba(0, 139, 139, 0.075);

    border:
        1px solid
        rgba(0, 139, 139, 0.18);

    font-size: 9px;
    font-weight: 500;
    line-height: 1;

    letter-spacing: 0.10em;

    text-transform: uppercase;
}

.seguremar-legal-modal-content section {
    padding:
        0 0 30px;

    border-bottom:
        1px solid
        rgba(0, 46, 71, 0.10);
}

.seguremar-legal-modal-content
section + section {
    padding-top: 30px;
}

.seguremar-legal-modal-content
section:last-child {
    padding-bottom: 0;

    border-bottom: 0;
}

.seguremar-legal-modal-content h3 {
    margin:
        0 0 15px;

    color:
        var(--seguremar-footer-navy);

    font-family:
        var(--seguremar-footer-font-editorial);

    font-size: 24px;
    font-style: italic;
    font-weight: 500;
    line-height: 1.15;

    letter-spacing: -0.02em;
}

.seguremar-legal-modal-content p,
.seguremar-legal-modal-content li {
    color:
        rgba(21, 48, 61, 0.77);

    font-size: 13px;
    font-weight: 300;
    line-height: 1.86;
}

.seguremar-legal-modal-content p {
    margin: 0;
}

.seguremar-legal-modal-content
p + p {
    margin-top: 14px;
}

.seguremar-legal-modal-content ul {
    margin:
        16px 0;

    padding-left: 23px;
}

.seguremar-legal-modal-content
li + li {
    margin-top: 7px;
}

.seguremar-legal-modal-content
li::marker {
    color:
        var(--seguremar-footer-petrol);
}

.seguremar-legal-modal-content a {
    color:
        var(--seguremar-footer-petrol);

    font-weight: 500;

    text-decoration:
        underline !important;

    text-decoration-color:
        rgba(0, 139, 139, 0.34) !important;

    text-underline-offset: 4px;

    transition:
        color 300ms ease;
}

.seguremar-legal-modal-content a:hover,
.seguremar-legal-modal-content a:focus {
    color:
        var(--seguremar-footer-navy);
}

/* ==================================================
   MODAL — CONTATO
================================================== */

.seguremar-legal-modal-contact {
    margin-top: 19px;

    padding:
        22px 24px;

    display: flex;
    flex-direction: column;

    gap: 8px;

    color:
        rgba(21, 48, 61, 0.77);

    background:
        rgba(0, 139, 139, 0.045);

    border-left:
        3px solid
        var(--seguremar-footer-cyan);

    font-size: 13px;
    font-weight: 300;
    line-height: 1.7;
}

.seguremar-legal-modal-contact strong {
    color:
        var(--seguremar-footer-navy);

    font-family:
        var(--seguremar-footer-font-editorial);

    font-size: 20px;
    font-style: italic;
    font-weight: 500;
}

/* ==================================================
   MODAL — RODAPÉ
================================================== */

.seguremar-legal-modal-footer {
    padding:
        20px 46px;

    display: flex;
    align-items: center;
    justify-content: flex-end;

    background:
        #EAF4F5;

    border-top:
        1px solid
        rgba(0, 46, 71, 0.10);
}

.seguremar-legal-modal-confirm {
    min-height: 45px;

    margin: 0;

    padding:
        0 26px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color:
        var(--seguremar-footer-white);

    background:
        linear-gradient(
            145deg,
            var(--seguremar-footer-navy),
            var(--seguremar-footer-deep)
        );

    border:
        1px solid
        var(--seguremar-footer-navy);

    border-radius: 1px;

    cursor: pointer;

    font-family:
        var(--seguremar-footer-font-interface);

    font-size: 9px;
    font-weight: 500;
    line-height: 1;

    letter-spacing: 0.16em;

    text-transform: uppercase;

    appearance: none;
    -webkit-appearance: none;

    transition:
        color 300ms ease,
        background 300ms ease,
        border-color 300ms ease,
        transform 400ms
        var(--seguremar-footer-premium-ease);
}

.seguremar-legal-modal-confirm:hover,
.seguremar-legal-modal-confirm:focus {
    color:
        var(--seguremar-footer-deep);

    background:
        var(--seguremar-footer-cyan);

    border-color:
        var(--seguremar-footer-cyan);

    transform:
        translateY(-2px);
}

.seguremar-legal-modal-confirm:focus-visible {
    outline:
        2px solid
        var(--seguremar-footer-petrol);

    outline-offset: 4px;
}

/* ==================================================
   NOTEBOOK
================================================== */

@media (max-width: 1180px) {

    .seguremar-footer-inner {
        width:
            calc(100% - 80px);
    }

    .seguremar-footer-top {
        grid-template-columns:
            minmax(240px, 0.72fr)
            minmax(420px, 1.28fr);

        gap: 70px;
    }

    .seguremar-footer-main {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap:
            55px 90px;
    }

    .seguremar-footer-bottom {
        grid-template-columns:
            1fr
            auto;

        gap:
            14px 30px;

        padding:
            20px 0;
    }

    .seguremar-footer-copyright {
        grid-column: 1;
        grid-row: 1;
    }

    .seguremar-footer-creator {
        grid-column: 1;
        grid-row: 2;

        justify-self: start;
    }

    .seguremar-footer-legal {
        grid-column: 2;
        grid-row:
            1 / span 2;

        justify-self: end;
    }
}

/* ==================================================
   TABLET
================================================== */

@media (max-width: 900px) {

    .seguremar-footer-inner {
        width:
            calc(100% - 56px);

        padding-top: 82px;
    }

    .seguremar-footer-top {
        grid-template-columns: 1fr;

        gap: 54px;

        padding-bottom: 60px;
    }

    .seguremar-footer-brand {
        max-width: 400px;
    }

    .seguremar-footer-message {
        max-width: 680px;
    }

    .seguremar-footer-main {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap:
            50px 60px;

        padding-block: 54px;
    }

    .seguremar-footer-atmosphere {
        right: -300px;
    }

    .seguremar-legal-modal {
        padding: 24px;
    }

    .seguremar-legal-modal-dialog {
        max-height:
            calc(100svh - 48px);
    }
}

/* ==================================================
   MOBILE
================================================== */

@media (max-width: 620px) {

    .seguremar-footer-inner {
        width:
            calc(100% - 40px);

        padding:
            70px 0 24px;
    }

    .seguremar-footer-top {
        gap: 46px;

        padding-bottom: 50px;
    }

    /*
     * CENTRALIZAÇÃO DA MARCA NO MOBILE
     */

    .seguremar-footer-brand {
        width: 100%;
        max-width: none;

        align-items: center;

        text-align: center;
    }

    .seguremar-footer-logo {
        width: 210px;
        height: 76px;

        margin:
            0 auto 22px;

        justify-content: center;
    }

    .seguremar-footer-logo img {
        width: 120px;
        height: 68px;

        transform:
            scale(1.6);

        transform-origin:
            center;
    }

    .seguremar-footer-slogan {
        max-width: 330px;

        font-size: 17px;
    }

    .seguremar-footer-origin {
        justify-content: center;
    }

    .seguremar-footer-message h2 {
        font-size:
            clamp(29px, 10vw, 42px);
    }

    .seguremar-footer-message > p {
        font-size: 14px;
        line-height: 1.75;
    }

    .seguremar-footer-main {
        grid-template-columns: 1fr;

        gap: 45px;

        padding:
            50px 0 54px;
    }

    .seguremar-footer-bottom {
        min-height: auto;

        padding-top: 25px;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;

        gap: 13px;
    }

    .seguremar-footer-copyright,
    .seguremar-footer-creator,
    .seguremar-footer-legal {
        justify-self: auto;
    }

    .seguremar-footer-creator {
        white-space: normal;
    }

    .seguremar-footer-legal {
        flex-wrap: wrap;
    }

    .seguremar-footer-atmosphere {
        top: -310px;
        right: -370px;
    }

    /*
     * MODAL MOBILE — PAINEL INFERIOR
     */

    .seguremar-legal-modal {
        padding: 0;

        align-items: end;

        background:
            rgba(0, 13, 22, 0.84);

        backdrop-filter:
            blur(7px);

        -webkit-backdrop-filter:
            blur(7px);
    }

    .seguremar-legal-modal-dialog {
        width: 100%;
        max-height: 94svh;

        border-right: 0;
        border-bottom: 0;
        border-left: 0;

        border-radius:
            14px 14px 0 0;

        transform:
            translateY(55px);
    }

    .seguremar-legal-modal-header {
        padding:
            35px 68px 28px 24px;
    }

    .seguremar-legal-modal-heading h2 {
        font-size: 34px;
    }

    .seguremar-legal-modal-heading p {
        font-size: 12px;
        line-height: 1.68;
    }

    .seguremar-legal-modal-close {
        top: 24px;
        right: 20px;

        width: 39px;
        height: 39px;
    }

    .seguremar-legal-modal-content {
        padding:
            30px 24px 39px;
    }

    .seguremar-legal-modal-content h3 {
        font-size: 22px;
    }

    .seguremar-legal-modal-content p,
    .seguremar-legal-modal-content li {
        font-size: 12.5px;
        line-height: 1.8;
    }

    .seguremar-legal-modal-footer {
        padding:
            17px 24px;
    }

    .seguremar-legal-modal-confirm {
        width: 100%;
    }
}

/* ==================================================
   MOBILE PEQUENO
================================================== */

@media (max-width: 390px) {

    .seguremar-footer-inner {
        width:
            calc(100% - 30px);
    }

    .seguremar-footer-logo {
        width: 190px;
    }

    .seguremar-footer-logo img {
        width: 112px;

        transform:
            scale(1.55);
    }

    .seguremar-footer-message h2 {
        font-size: 28px;
    }

    .seguremar-footer-eyebrow {
        font-size: 8px;

        letter-spacing: 0.20em;
    }

    .seguremar-footer-legal {
        align-items: flex-start;
        flex-direction: column;

        gap: 10px;
    }

    .seguremar-footer-legal > span {
        display: none;
    }

    .seguremar-legal-modal-header {
        padding:
            31px 61px 24px 19px;
    }

    .seguremar-legal-modal-heading h2 {
        font-size: 30px;
    }

    .seguremar-legal-modal-content {
        padding:
            26px 19px 34px;
    }

    .seguremar-legal-modal-footer {
        padding:
            15px 19px;
    }
}

/* ==================================================
   OCULTAR BOTÃO PADRÃO DO ASTRA
================================================== */

#ast-scroll-top,
.ast-scroll-top-icon,
.ast-scroll-to-top-right,
.ast-scroll-to-top-left {
    display: none !important;
}

/* ==================================================
   VOLTAR AO TOPO — SEGUREMAR
================================================== */

.seguremar-scroll-top {
    --seguremar-scroll-progress: 0;

    position: fixed;
    right: 26px;
    bottom: 26px;
    z-index: 9998;

    width: 56px;
    height: 56px;

    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    overflow: visible;

    color: #B3EBF2;

    background: transparent;

    border: 0;
    border-radius: 50%;

    cursor: pointer;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;

    transform:
        translate3d(0, 18px, 0)
        scale(0.90);

    transition:
        opacity 450ms ease,
        visibility 450ms ease,
        transform 650ms
        cubic-bezier(0.16, 1, 0.3, 1);
}

.seguremar-scroll-top::before {
    content: "";

    position: absolute;
    inset: 0;

    border-radius: inherit;

    background:
        conic-gradient(
            from -90deg,
            #00CEC8
            calc(
                var(--seguremar-scroll-progress)
                * 1turn
            ),
            rgba(179, 235, 242, 0.14) 0
        );

    box-shadow:
        0 16px 38px -18px
        rgba(0, 19, 31, 0.82);

    transition:
        filter 450ms ease,
        transform 650ms
        cubic-bezier(0.16, 1, 0.3, 1);
}

.seguremar-scroll-top::after {
    content: "";

    position: absolute;
    inset: 3px;

    border-radius: inherit;

    background:
        linear-gradient(
            145deg,
            rgba(0, 46, 71, 0.96),
            rgba(0, 19, 31, 0.96)
        );

    border:
        1px solid
        rgba(179, 235, 242, 0.12);

    box-shadow:
        inset 0 0 24px
        rgba(0, 206, 200, 0.045);

    backdrop-filter:
        blur(12px);

    -webkit-backdrop-filter:
        blur(12px);
}

.seguremar-scroll-top-visible {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;

    transform:
        translate3d(0, 0, 0)
        scale(1);
}

.seguremar-scroll-top-orbit {
    position: absolute;
    inset: 8px;
    z-index: 2;

    border:
        1px solid
        rgba(179, 235, 242, 0.12);

    border-radius: 50%;

    transition:
        transform 900ms
        cubic-bezier(0.16, 1, 0.3, 1),
        border-color 450ms ease;
}

.seguremar-scroll-top-orbit::before {
    content: "";

    position: absolute;
    top: -2px;
    left: 50%;

    width: 4px;
    height: 4px;

    background: #00CEC8;

    border-radius: 50%;

    box-shadow:
        0 0 12px
        rgba(0, 206, 200, 0.70);

    transform:
        translateX(-50%);
}

.seguremar-scroll-top-icon {
    position: relative;
    z-index: 3;

    width: 28px;
    height: 28px;

    overflow: visible;

    fill: none;

    stroke: currentColor;
    stroke-width: 1.35;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.seguremar-scroll-top-arrow {
    transition:
        transform 550ms
        cubic-bezier(0.16, 1, 0.3, 1),
        stroke 400ms ease;
}

.seguremar-scroll-top-wave {
    opacity: 0.65;

    stroke: #00CEC8;

    transition:
        opacity 400ms ease,
        transform 650ms
        cubic-bezier(0.16, 1, 0.3, 1);
}

.seguremar-scroll-top:hover {
    color: #FFFFFF;

    transform:
        translate3d(0, -6px, 0)
        scale(1.04);
}

.seguremar-scroll-top:hover::before {
    filter:
        drop-shadow(
            0 0 8px
            rgba(0, 206, 200, 0.35)
        );

    transform:
        rotate(5deg);
}

.seguremar-scroll-top:hover
.seguremar-scroll-top-orbit {
    border-color:
        rgba(0, 206, 200, 0.42);

    transform:
        rotate(180deg);
}

.seguremar-scroll-top:hover
.seguremar-scroll-top-arrow {
    transform:
        translateY(-2px);
}

.seguremar-scroll-top:hover
.seguremar-scroll-top-wave {
    opacity: 1;

    transform:
        translateY(1px);
}

.seguremar-scroll-top:active {
    transform:
        translate3d(0, -2px, 0)
        scale(0.96);
}

.seguremar-scroll-top:focus {
    outline: none;
}

.seguremar-scroll-top:focus-visible {
    outline:
        1px solid #00CEC8;

    outline-offset: 6px;
}

@media (max-width: 980px) {

    .seguremar-scroll-top {
        right: 20px;
        bottom: 20px;

        width: 53px;
        height: 53px;
    }
}

@media (max-width: 680px) {

    .seguremar-scroll-top {
        right: 16px;
        bottom: 17px;

        width: 49px;
        height: 49px;
    }

    .seguremar-scroll-top-icon {
        width: 24px;
        height: 24px;
    }

    .seguremar-scroll-top-orbit {
        inset: 7px;
    }
}

/* ==================================================
   REDUÇÃO DE MOVIMENTO
================================================== */

@media (prefers-reduced-motion: reduce) {

    .seguremar-footer *,
    .seguremar-footer *::before,
    .seguremar-footer *::after,
    .seguremar-legal-modal,
    .seguremar-legal-modal *,
    .seguremar-legal-modal *::before,
    .seguremar-legal-modal *::after,
    .seguremar-scroll-top,
    .seguremar-scroll-top::before,
    .seguremar-scroll-top-orbit,
    .seguremar-scroll-top-arrow,
    .seguremar-scroll-top-wave {
        animation:
            none !important;

        transition-duration:
            0.01ms !important;

        scroll-behavior:
            auto !important;
    }

    .seguremar-scroll-top:hover,
    .seguremar-scroll-top:active {
        transform: none;
    }

    .seguremar-scroll-top:hover
    .seguremar-scroll-top-orbit {
        transform: none;
    }
}/* End custom CSS */