/*! tailwindcss v4.1.11 | MIT License | https://tailwindcss.com */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@100..900&display=swap');

@layer properties;
@layer theme, base, components, utilities;

@layer theme {
    :root,
    :host {
        --font-sans: "Roboto";
        --font-mono: "Roboto";
        --default-transition-duration: 150ms;
        --default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
        --default-font-family: var(--font-sans);
        --default-mono-font-family: var(--font-mono);
        --text-color: #495057;
        --background-color: #FFF;
        --weight-default: 400;
        --weight-primary: 500;
        --weight-secondary: 700;
        --light-color: #DEE2E6;
        --dark-color: #212529;
        --color-main: #004ECC;
        --color-secondary: #7996B7;
        --color-highlight: #F39200;
        --color-emphasize: #E74011;
        --color-neutral-100: #FFF;
        --color-neutral-200: #F2F2F2;
        --color-neutral-400: #CED4DA;
        --color-neutral-500: #495057;
        --color-neutral-600: #868E96;
    }
}

@layer base {
    *,
    ::after,
    ::before,
    ::backdrop,
    ::file-selector-button {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
        border: 0 solid;
    }

    html,
    :host {
        line-height: 1.5;
        text-size-adjust: 100%;
        tab-size: 4;
        font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
        font-feature-settings: var(--default-font-feature-settings, normal);
        font-variation-settings: var(--default-font-variation-settings, normal);
        -webkit-tap-highlight-color: transparent;
    }

    hr {
        height: 0;
        color: inherit;
        border-top-width: 1px;
    }

    abbr:where([title]) {
        text-decoration: underline dotted;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: inherit;
        font-weight: inherit;
    }

    a {
        color: inherit;
        text-decoration: inherit;
    }

    b,
    strong {
        font-weight: bolder;
    }

    code,
    kbd,
    samp,
    pre {
        font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
        font-feature-settings: var(--default-mono-font-feature-settings, normal);
        font-variation-settings: var(--default-mono-font-variation-settings, normal);
        font-size: 1em;
    }

    small {
        font-size: 80%;
    }

    sub,
    sup {
        font-size: 75%;
        line-height: 0;
        position: relative;
        vertical-align: baseline;
    }

    table {
        text-indent: 0;
        border-color: inherit;
        border-collapse: collapse;
    }

    :-moz-focusring {
        outline: auto;
    }

    progress {
        vertical-align: baseline;
    }

    summary {
        display: list-item;
    }

    ol,
    ul,
    menu {
        list-style: none;
    }

    img,
    svg,
    video,
    canvas,
    audio,
    iframe,
    embed,
    object {
        display: block;
        vertical-align: middle;
    }

    img,
    video {
        max-width: 100%;
        height: auto;
    }

    button,
    input,
    select,
    optgroup,
    textarea,
    ::file-selector-button {
        font: inherit;
        font-feature-settings: inherit;
        font-variation-settings: inherit;
        letter-spacing: inherit;
        color: inherit;
        border-radius: 0;
        background-color: transparent;
        opacity: 1;
    }

    :where(select:is([multiple], [size])) optgroup {
        font-weight: bolder;
    }

    :where(select:is([multiple], [size])) optgroup option {
        padding-inline-start: 20px;
    }

    ::file-selector-button {
        margin-inline-end: 4px;
    }

    ::placeholder {
        opacity: 1;
    }

    @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
        ::placeholder {
            color: currentcolor;

            @supports (color: color-mix(in lab, red, red)) {
                color: color-mix(in oklab, currentcolor 50%, transparent);
            }
        }
    }

    textarea {
        resize: vertical;
    }

    ::-webkit-search-decoration {
        appearance: none;
    }

    ::-webkit-date-and-time-value {
        min-height: 1lh;
        text-align: inherit;
    }

    ::-webkit-datetime-edit {
        display: inline-flex;
    }

    ::-webkit-datetime-edit-fields-wrapper {
        padding: 0;
    }

    ::-webkit-datetime-edit,
    ::-webkit-datetime-edit-year-field,
    ::-webkit-datetime-edit-month-field,
    ::-webkit-datetime-edit-day-field,
    ::-webkit-datetime-edit-hour-field,
    ::-webkit-datetime-edit-minute-field,
    ::-webkit-datetime-edit-second-field,
    ::-webkit-datetime-edit-millisecond-field,
    ::-webkit-datetime-edit-meridiem-field {
        padding-block: 0;
    }

    :-moz-ui-invalid {
        box-shadow: none;
    }

    button,
    input:where([type="button"], [type="reset"], [type="submit"]),
    ::file-selector-button {
        appearance: auto;
    }

    ::-webkit-inner-spin-button,
    ::-webkit-outer-spin-button {
        height: auto;
    }

    [hidden]:where(:not([hidden="until-found"])) {
        display: none !important;
    }
}

@layer utilities {
    .collapse {
        visibility: collapse;
    }

    .container {
        width: 100%;

        @media (width >=40rem) {
            max-width: 40rem;
        }

        @media (width >=48rem) {
            max-width: 48rem;
        }

        @media (width >=64rem) {
            max-width: 64rem;
        }

        @media (width >=80rem) {
            max-width: 80rem;
        }

        @media (width >=96rem) {
            max-width: 96rem;
        }
    }

    .mx-auto {
        margin-inline: auto;
    }

    .block {
        display: block;
    }

    .contents {
        display: contents;
    }

    .hidden {
        display: none;
    }

    .inline {
        display: inline;
    }

    .table {
        display: table;
    }

    .transform {
        transform: var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, );
    }

    .resize {
        resize: both;
    }

    .border {
        border-style: var(--tw-border-style);
        border-width: 1px;
    }

    .underline {
        text-decoration-line: underline;
    }

    .shadow {
        --tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 10%)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 10%));

        box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
    }

    .outline {
        outline-style: var(--tw-outline-style);
        outline-width: 1px;
    }

    .filter {
        filter: var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, );
    }

    .transition {
        transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
        transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
        transition-duration: var(--tw-duration, var(--default-transition-duration));
    }
}

html {
    color: var(--text-color);
    font-size: 14px;
    scroll-behavior: smooth;
}

body {
    background-color: #FFF;
    padding: 20px;
}

@media (width >=764px) {
    html {
        font-size: 16px;
    }
}

main {
    display: flex;
    flex-direction: column;
    gap: 20px;

    >.section {
        width: 100%;
        max-width: 1400px;
        margin: 0 auto;
    }
}

.button-container em {
    font-style: normal;
}

.button,
a.button:any-link {
    color: var(--color-neutral-100);
    font-weight: 500;
    padding: 8px 40px;
    border-radius: 20px;
    display: inline-block;
    font-size: 16px;
}

.button.primary {
    background-color: var(--color-main);
}

.button.secondary {
    background-color: var(--color-neutral-600);
}

h1 {
    font-size: 30px;
    line-height: 1.2;
    font-weight: var(--weight-secondary);
}

h2 {
    font-size: 30px;
    line-height: 1.2;
    font-weight: var(--weight-secondary);
}

h4 {
    font-size: 18px;
    line-height: 150%;
    font-weight: var(--weight-default);
}

h6 {
    font-size: 16px;
    line-height: 1.14;
    font-weight: var(--weight-secondary);
}

p {
    font-size: 1rem;
}

@media (width >=764px) {
    h1 {
        font-size: 40px;
    }

    h2 {
        font-size: 32px;
    }
}

@media (width >=1200px) {
    h1 {
        font-size: 48px;
    }

    h2 {
        font-size: 40px;
    }
}

h2 u,
h3 u {
    text-decoration: none;
}

h2 u span,
h3 u span {
    display: inline-block;
    position: relative;
    z-index: 2;
}

h2 u span::after,
h3 u span::after {
    display: none;
    content: ' ';
    background-color: var(--color-secondary);
    width: calc(100% + 10px);
    height: 30%;
    position: absolute;
    bottom: 5%;
    z-index: -1;
    margin-left: -2px;
    opacity: 1;
    animation: fadeInUp;
    animation-duration: 0.7s;
    animation-delay: 0.3s;
    animation-fill-mode: backwards;
}

.viewed h2 u span::after,
.viewed h3 u span::after {
    display: block;
}

.section.banner {
    padding: 50px 30px;
    background-color: var(--color-main);
    color: #fff;
    text-align: center;
}

.section.banner .default-content-wrapper {
    max-width: 840px;
    margin: auto;
    width: 100%;
}

.section.banner h3 {
    font-size: 32px;
    line-height: 1.2;
    font-weight: 700;
    max-width: 840px;
    margin: auto;
}

.section.banner h3 u span::after {
    content: ' ';
    background-color: #7996B7;
    width: calc(100% + 12px);
    margin-left: -1px;
}

.section {
    &.variety-1,
    &.variety-2 {
        border-radius: 55px;
        overflow: hidden;
        display: flex;
        flex-direction: column;
        gap: 60px;
    }

    &.variety-2 {
        background-color: var(--color-neutral-200);

        .n-section-child-3 {
            border-top: 2px solid var(--color-neutral-400);
            padding-top: 60px;
        }
    }
}

@media (width >=764px) {
    .section.banner h3 {
        font-size: 40px;
    }
}

@media (width >=1200px) {
    .section.banner h3 {
        font-size: 48px;
    }
}

.section.faq {
    padding: 50px 30px;
    margin: auto;
    width: 100%;
    position: relative;
    display: block;
}

.section.faq .default-content-wrapper {
    max-width: 840px;
    margin: auto;
    width: 100%;
    margin-bottom: 30px;
}

.section.faq h6 {
    margin-bottom: 10px;
    color: #868E96;
}

.section.faq h2 {
    color: #212529;
    margin: auto;
    margin-bottom: 10px;
}

.modal {
    display: none;
    position: fixed;
    z-index: 9999;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgb(0 0 0);
    background-color: rgb(0 0 0 / 70%);
    animation: fadeIn;
    animation-duration: 0.6s;
}

.modal-content {
    margin: 0% auto;
    width: 90%;
    transform: translateY(-50%);
    position: relative;
    top: 50%;
}

@media (width >=768px) {
    .modal-content {
        width: 80%;
    }
}

.close {
    color: #fff;
    float: right;
    font-size: 28px;
    font-weight: bold;
    margin-top: 5px;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.modal video {
    width: 100%;
}

.click-video-2,
.click-video-3 {
    position: relative;
    padding-right: 45px !important;
}

.click-video-2::after,
.click-video-3::after {
    content: ' ';
    background: url('data:image/svg+xml,<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.0001 22C4.92849 22 6.10352e-05 17.0716 6.10352e-05 11C6.10352e-05 4.92843 4.92849 0 11.0001 0C17.0716 0 22.0001 4.92843 22.0001 11C22.0001 17.0716 17.0716 22 11.0001 22ZM11.0001 20.1667C16.0687 20.1667 20.1667 16.0686 20.1667 11C20.1667 5.93137 16.0687 1.83333 11.0001 1.83333C5.93143 1.83333 1.83339 5.93137 1.83339 11C1.83339 16.0686 5.93143 20.1667 11.0001 20.1667ZM8.98339 15.2167C8.47653 15.5186 7.90496 15.2706 7.90496 14.7529V7.25784C7.90496 6.72941 8.51967 6.52451 8.98339 6.79412L15.1197 10.4284C15.5618 10.698 15.5726 11.3235 15.1197 11.5824L8.98339 15.2167Z" fill="white"/></svg>');
    width: 22px;
    height: 22px;
    position: absolute;
    right: 14px;
    top: 14px;
}

.id-diferenciais picture {
    opacity: 0;
}

.id-modelo-de-avaliacao.viewed picture {
    opacity: 1;
    animation: fadeInUp;
    animation-duration: 1s;
    animation-delay: 0s;
    animation-fill-mode: backwards;
}

.id-diferenciais.viewed .columns-text-col p:first-child picture {
    opacity: 1;
    animation: fadeInUp;
    animation-duration: 1s;
    animation-delay: 0s;
    animation-fill-mode: backwards;
}

.id-diferenciais.viewed .columns-text-col p:last-child picture {
    opacity: 1;
    animation: fadeInUp;
    animation-duration: 1s;
    animation-delay: 0.3s;
    animation-fill-mode: backwards;
}

.video,
.video-thumb img,
.video-button,
.video-button>div,
.video-button .button-container,
.video-player video {
    object-fit: cover;
    width: 100%;
    min-height: calc(100vw / 2);
    max-height: calc(100vw / 2);
}

.video {
    position: relative;
    border-radius: 20px;
    overflow: hidden;

    .video-button {
        position: absolute;
        z-index: 10;

        .button-container {
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .button,
        a.button:any-link {
            background-image: url('data:image/svg+xml,  <svg width="57" height="57" viewBox="0 0 57 57" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M28.0801 0C43.5883 2.5784e-07 56.16 12.5783 56.1602 28.0947C56.1602 43.6113 43.5884 56.1904 28.0801 56.1904C12.5717 56.1904 0 43.6113 0 28.0947C0.000204765 12.5783 12.5719 0 28.0801 0ZM22.25 16.2852C21.3471 15.7652 20.2178 16.4146 20.2178 17.4551V37.6113C20.2178 38.6518 21.3471 39.3012 22.25 38.7812L39.7578 28.7041C40.6608 28.1838 40.6608 26.8855 39.7578 26.3652V26.3623L22.25 16.2852Z" fill="red"/></svg>');
            background-size: contain;
            background-repeat: no-repeat;
            background-color: #FFF;
            opacity: .9;
            font-size: 0;
            color: transparent;
            border-radius: 100%;
            padding: 0;
            min-height: 56px;
            max-height: 56px;
            min-width: 56px;
            max-width: 56px;
            transition: all 0.2s;

            &:hover {
                opacity: .7;
            }
        }
    }

    .video-player,
    .video-button {
        position: absolute;
        top: 0;
        left: 0;
    }
}

@media (width >=768px) {
    .video,
    .video-button .button-container,
    .video-thumb img,
    .video-player video {
        min-width: 630px;
        max-width: 630px;
        min-height: 355px;
        max-height: 355px;
    }
}