:root {
    /* Cores */
    --color-white: #fff;
    --color-grey: #4b5560;
    --color-blue: #0f5371;
    --color-primary: #505a57;
    --color-text-contrast: #212529;
    --color-secondary: #d7d7d7;
    --color-highlight: #494b4c;
    --color-background: #ffffff;
    --color-background-active: #dddddd;
    --color-background-secondary: #eaf0f1;
    --color-background-button-cta: #a66b4e;
    --color-shadow-active: #949494;
    --color-link: #f39c12;
    --color-link-hover: #28a745;
    --color-block-bg: #e4e7e8;
    --color-table-header: #317ec1;
    --color-table-row-bg: #87a6d7;
    --color-table-row-bg-alt: #6390cb;
    --color-table-row-highlight: #6e85ad;
    --color-table-row-bg-alt-highlight: #426b9b;
    --color-footer-bg: #fff;
    --color-title: #00568a;
    --color-input-bg: #f1f1f2;
    --color-input-border: #495057;
    --color-disabled: #dfdfdf;
    --color-light: #ffffff;
    --color-gradient-start: #dedede;
    --color-gradient-end: #b5b5b5;
    --color-gradient-start-rgb: 222, 222, 222;
    --color-gradient-end-rgb: 181, 181, 181;
    --color-menu-bg: #133551;
    --color-menu-bg-scrolled: #ccdae8;
    --color-menu-text: #BED7E5;
    --color-submenu-text: #6d90e3;
    --color-gradient-footer-start: #005f8d;
    --color-gradient-footer-mid1: #0068b0;
    --color-gradient-footer-mid2: #0071d3;
    --color-gradient-footer-end: #0081ff;
    --color-button-send: #2ecc71;
    --color-button-send-bg-info: #43bbef;
    --color-button-send-text-info: #fff;
    --color-rgb-shadow: 0, 0, 0;


    --font-100: 1.1;
    --font-200: 1.2;

    /* Fontes */
    --font-family-primary: "ClanOT-Book", sans-serif;
    --font-family-bold: "ClanOT-Bold", sans-serif;
    --font-family-news: "ClanOT-News", sans-serif;
    --font-family-secondary: "Montserrat-Regular", sans-serif;
    --font-size-large: 2rem;
    --font-size-home-hero-cta: 1.3rem;
    /* 32px */
    --font-size-large-100: calc(var(--font-size-large) * var(--font-100));
    /* 35.2px */
    --font-size-large-200: calc(var(--font-size-large) * var(--font-200));
    /* 38.4px */
    --font-size-medium-large: 1.5rem;
    /* 24px */
    --font-size-medium-large-100: calc(var(--font-size-medium-large) * var(--font-100));
    /* 26.4px */
    --font-size-medium-large-200: calc(var(--font-size-medium-large) * var(--font-200));
    /* 28.8px */
    --font-size-medium: 1rem;
    /* 16px */
    --font-size-medium-100: calc(var(--font-size-medium) * var(--font-100));
    /* 17.6px */
    --font-size-medium-200: calc(var(--font-size-medium) * var(--font-200));
    /* 19.2px */
    --font-size-small: 0.875rem;
    /* 14px */
    --font-size-small-100: calc(var(--font-size-small) * var(--font-100));
    /* 15.4px */
    --font-size-small-200: calc(var(--font-size-small) * var(--font-200));
    /* 16.8px */
    --font-size-extra-small: 0.8125rem;
    /* 13px */
    --font-size-extra-small-100: calc(var(--font-size-extra-small) * var(--font-100));
    --font-size-extra-small-200: calc(var(--font-size-extra-small) * var(--font-200));
    --font-size-table-header: 1.575rem;
    --font-size-table-cell: 1.25rem;
    --line-height-default: 2rem;
    --line-height-large: 2.2rem;
    --font-size-heading-1: 2.25rem;
    --font-size-heading-2: 2rem;
    --font-size-heading-3: 1.75rem;
    --font-size-heading-4: 1.25rem;
    --font-size-heading-5: 1rem;

    /* Espaçamentos */
    --spacing-large: 4rem;
    --spacing-medium: 3rem;
    --spacing-small: 2rem;
    --spacing-extra-small: 1rem;
    --padding-body: 0.375rem 0;
    /* 6px 0 */
    --padding-block: 4%;
    --padding-button: 0.375rem 0;
    /* 6px */
    --margin-large: 3rem;
    --margin-medium: 1.5rem;
    --margin-small: 1rem;
    --margin-extra-small: 0.5rem;

    --mt-default-web: 6.2rem;
    --mt-default-subtitle: 1.2rem;
    --mt-default-divider: 5.4rem;

    --mt-default-web-mobile: 72px;
    --mt-default-subtitle-mobile: 40px;
    --mt-default-divider-mobile: 54px;

    /* dispositivos */
    --breakpoint-small: 576px;
    --breakpoint-medium: 768px;
    --breakpoint-large: 992px;
    --breakpoint-extra-large: 1200px;

    /* Botões */
    --btn-padding: 0.5rem 1rem;
    /* 8px 16px */
    --btn-border-radius: 0.1875rem;
    /* 3px */

    /* Tabelas */
    --table-padding: 0.9375rem 1.25rem;
    /* 15px 20px */
    --table-border: 0.0625rem solid var(--color-secondary);
    /* 1px */

    /* Outros */
    --gap-custom: 1rem;
    --input-height: 2.4375rem;
    /* 39px */
}

body.dark {
    --color-primary: #f5f5f5;
    --color-text-contrast: #e0e0e0;
    --color-secondary: #555555;
    --color-highlight: #b0b2b3;
    --color-background: #2d2d2d;
    --color-background-active: #2e2e2e;
    --color-background-secondary: #3a3a3a;
    --color-shadow-active: #111;
    --color-link: #ffdb58;
    --color-link-hover: #45d682;
    --color-block-bg: #383c44;
    --color-table-header: #f5f5f5;
    --color-table-row-bg: #2a2a2a;
    --color-table-row-bg-alt: #333;
    --color-table-row-highlight: #445566;
    --color-footer-bg: #2a2a2a;
    --color-title: #76c3ff;
    --color-input-bg: #444a50;
    --color-input-border: #c0c5cd;
    --color-disabled: #596067;
    --color-light: #313539;
    --color-gradient-start: #313539;
    --color-gradient-end: #2d2d2d;
    --color-gradient-start-rgb: 49, 53, 57;
    --color-gradient-end-rgb: 45, 45, 45;
    --color-menu-bg: #3d4249;
    --color-menu-text: #d8e8f2;
    --color-gradient-footer-start: #1e1e1e;
    --color-gradient-footer-mid1: #353535;
    --color-gradient-footer-mid2: #424242;
    --color-gradient-footer-end: #0a0a0a;
    --color-button-send: #1f8d4d;
    --color-button-send-bg-info: #4fc3f7;
    --color-button-send-text-info: #ffffff;
    --color-rgb-shadow: 255, 255, 255;
    --color-blue: #0f5371;
}

html,
body {
    color: var(--color-primary);
    background-color: var(--color-background);
    font-family: var(--font-family-primary);
    font-display: swap;
    max-width: 100%;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
p {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    &.strong {
        font-family: var(--font-family-bold);
    }

    font-family: var(--font-family-primary);
    color: var(--color-primary);
}

h1 {
    font-family: var(--font-family-bold);
    font-size: var(--font-size-heading-1);
}

h2 {
    font-size: var(--font-size-heading-2);
}

/* data-variant = percentual do tamanho base do heading (ex.: 90 → 0.9). Requer navegador com attr() tipado (Chrome 133+, Safari 17.4+). */
h2[data-variant] {
    font-size: calc(var(--font-size-heading-2) * attr(data-variant number, 100) / 100);
}

h3 {
    font-size: var(--font-size-heading-3);
}

h3[data-variant] {
    font-size: calc(var(--font-size-heading-3) * attr(data-variant number, 100) / 100);
}

h4 {
    font-size: var(--font-size-heading-4);
}

h5 {
    font-size: var(--font-size-heading-5);
}

.font-size {
    font-size: var(--computed-font-size, var(--font-size-medium));
}

.font-size[data-font="large"] {
    --base-font-size: var(--font-size-large);
}

.font-size[data-font="medium"] {
    --base-font-size: var(--font-size-medium);
}

.font-size[data-font="small"] {
    --base-font-size: var(--font-size-small);
}

.font-size[data-font="extra-small"] {
    --base-font-size: var(--font-size-extra-small);
}

/* Percentual no data-variant (70→0.7, 80→0.8, 90→0.9). attr() tipado: ver comentário em h2[data-variant]. */
.font-size[data-variant] {
    --computed-font-size: calc(var(--base-font-size) * attr(data-variant number, 100) / 100);
}

/* Não seguem N/100: 100 = ×1.1, 200 = ×1.2 */
.font-size[data-variant="100"] {
    --computed-font-size: calc(var(--base-font-size) * var(--font-100));
}

.font-size[data-variant="200"] {
    --computed-font-size: calc(var(--base-font-size) * var(--font-200));
}

.font-size:not([data-variant]) {
    --computed-font-size: var(--base-font-size);
}

.separator {
    display: flex;
    align-items: center;
}

.separator::after {
    content: '';
    flex: 1;
    border-top: 1px solid var(--color-secondary);
    margin-left: 1rem;
}

.text-primary {
    font-family: var(--font-family-primary);
}

.text-contrast {
    color: var(--color-text-contrast);
}

.text-bold {
    font-family: var(--font-family-bold);
}

.text-secondary {
    font-family: var(--font-family-secondary);
}

.text-icon {
    font-family: 'fiber-icons';
}

#conteudo {
    min-height: 100vh;
    color: var(--color-text-contrast);
}

/* -------------------------------------------------------------------------- */
/* Espaçamento vertical entre seções */
/* -------------------------------------------------------------------------- */
.mt-default-web {
    margin-top: var(--mt-default-web);
}

.mt-default-subtitle {
    margin-top: var(--mt-default-subtitle);
}

.mt-default-divider {
    margin-top: var(--mt-default-divider);
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .mt-default-web {
        margin-top: var(--mt-default-web-mobile);
    }

    .mt-default-subtitle {
        margin-top: var(--mt-default-subtitle-mobile);
    }

    .mt-default-divider {
        margin-top: var(--mt-default-divider-mobile);
    }
}

.mt-3rem {
    margin-top: 3rem;
}

.corPadraoStrong {
    color: var(--color-primary);
}

#iconWpp {
    /* background: rgb(30,98,34);
    background: linear-gradient(0deg, rgba(30,98,34,1) 10%, rgba(45,253,69,1) 100%); */
    position: fixed;
    display: block !important;
    z-index: 999;
    float: right;
    right: 2vw;
    bottom: 10vh;
    border-radius: 10px 10px 10px 0;
    /* padding: 7px 10px; */
    /* box-shadow: -4px 6px 11px darkgray;  */
}

#iconWpp a:hover {
    text-decoration: none;
}

#iconWpp .img {
    float: left;
    margin-right: 3px;
}

#iconWpp .texto {
    color: var(--color-light);
    font-family: "Open Sans";
    float: right;
    display: contents;
    font-weight: 700;
}

.px-sm-0 {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

a,
a:hover {
    text-decoration: none;
}

.mt-padrao {
    margin-top: var(--margin-large);
}

.mt-page {
    margin-top: var(--margin-medium);
}

form .custom-select {
    width: 100%;
    padding: .375rem .5rem;
}

.infoButtons a.btn-solicitar-orcamento,
.infoButtons .btn-baixar-catalogo {
    background-color: var(--color-link);
    border: 1px solid var(--color-link);
    color: var(--color-light);
    display: block;
    font-size: 16px;
    margin-top: 25px;
    padding-bottom: 6px;
    padding-top: 3px;
    width: 100%;
}

.infoButtons .btn-baixar-catalogo {
    background-color: var(--color-link-hover);
    border: 1px solid var(--color-link-hover);
    margin-top: 15px;
}

.title {
    color: var(--color-primary);
    line-height: inherit;
}

.form-control,
.form-control:focus,
.admin-form .select>select,
.admin-form .select>select:hover,
.admin-form .select>select:focus {
    border-radius: 0;
    border: none;
    background-color: var(--color-input-bg);
    box-shadow: none;
    color: var(--color-highlight);
    padding: 9px 10px;
    height: 39px;
}

.admin-form .switch {
    cursor: pointer;
    position: relative;
    padding-right: 10px;
    display: inline-block;
    margin-bottom: 5px;
    height: 26px;
}

.admin-form .switch>input {
    -webkit-appearance: none;
    appearance: none;
    position: absolute;
    width: inherit;
    height: inherit;
    opacity: 0;
    left: 0;
    top: 0;
}

.admin-form .switch>label::after {
    content: "";
    margin: 1px;
    width: 19px;
    height: 19px;
    display: block;
    background: #fff;
}

.admin-form .switch>label::before {
    content: attr(data-off);
    position: absolute;
    top: 1px;
    right: 13px;
    width: 33px;
}

.admin-form .switch>label {
    cursor: pointer;
    display: inline-block;
    position: relative;
    height: 25px;
    width: 110px;
    color: #fff;
    font-size: 10px;
    font-weight: bold;
    line-height: 20px;
    text-align: center;
    background: #D7D7D7;
    border: 2px solid #D7D7D7;
    text-transform: uppercase;
    font-family: Helvetica, Arial, sans-serif;
    -webkit-transition: 0.3s ease-out;
    -moz-transition: 0.3s ease-out;
    -o-transition: 0.3s ease-out;
    transition: 0.3s ease-out;
}

.admin-form .switch-primary>input:checked+label {
    background: var(--color-highlight) !important;
    border-color: var(--color-highlight) !important;
}

#phone {
    text-indent: 20px;
}

.icons8-whatsapp {
    display: inline-block;
    width: 20px;
    top: 9px;
    left: 20px;
    position: absolute;
    height: 20px;
    background: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHg9IjBweCIgeT0iMHB4Igp3aWR0aD0iMTYiIGhlaWdodD0iMTYiCnZpZXdCb3g9IjAgMCA0MCA0MCIKc3R5bGU9IiBmaWxsOiMwMDAwMDA7Ij48cGF0aCBmaWxsPSIjZjJmYWZmIiBkPSJNNC4yMjEsMjkuMjk4bC0wLjEwNC0wLjE4MWMtMS42MDgtMi43ODYtMi40NTktNS45NjktMi40NTgtOS4yMDUgQzEuNjYzLDkuNzYsOS45MjYsMS41LDIwLjA3OCwxLjVjNC45MjYsMC4wMDIsOS41NTMsMS45MTksMTMuMDMsNS4zOTljMy40NzcsMy40OCw1LjM5Miw4LjEwNyw1LjM5MiwxMy4wMjggYy0wLjAwNSwxMC4xNTMtOC4yNjgsMTguNDE0LTE4LjQyLDE4LjQxNGMtMy4wODItMC4wMDItNi4xMjYtMC43NzYtOC44MTEtMi4yNGwtMC4xNzQtMC4wOTZsLTkuMzg1LDIuNDZMNC4yMjEsMjkuMjk4eiI+PC9wYXRoPjxwYXRoIGZpbGw9IiM3ODhiOWMiIGQ9Ik0yMC4wNzgsMkwyMC4wNzgsMmM0Ljc5MSwwLjAwMSw5LjI5MywxLjg2NywxMi42NzYsNS4yNTNDMzYuMTM3LDEwLjYzOSwzOCwxNS4xNCwzOCwxOS45MjcgYy0wLjAwNSw5Ljg3OC04LjA0MywxNy45MTQtMTcuOTI3LDE3LjkxNGMtMi45OTEtMC4wMDEtNS45NTItMC43NTUtOC41NjQtMi4xOGwtMC4zNDktMC4xOWwtMC4zODQsMC4xMDFsLTguMzU0LDIuMTkgbDIuMjI2LTguMTMxbDAuMTEtMC40MDNMNC41NSwyOC44NjdjLTEuNTY2LTIuNzExLTIuMzkzLTUuODA4LTIuMzkxLTguOTU1QzIuMTYzLDEwLjAzNiwxMC4yMDIsMiwyMC4wNzgsMiBNMjAuMDc4LDEgQzkuNjUxLDEsMS4xNjMsOS40ODUsMS4xNTgsMTkuOTEyYy0wLjAwMiwzLjMzMywwLjg2OSw2LjU4OCwyLjUyNSw5LjQ1NUwxLDM5LjE2OWwxMC4wMy0yLjYzYzIuNzYzLDEuNTA3LDUuODc1LDIuMyw5LjA0MiwyLjMwMiBoMC4wMDhjMTAuNDI3LDAsMTguOTE1LTguNDg1LDE4LjkyLTE4LjkxNGMwLTUuMDU0LTEuOTY2LTkuODA3LTUuNTM4LTEzLjM4MkMyOS44OSwyLjk3MSwyNS4xNCwxLjAwMiwyMC4wNzgsMUwyMC4wNzgsMXoiPjwvcGF0aD48cGF0aCBmaWxsPSIjNzliYTdlIiBkPSJNMTkuOTk1LDM1Yy0yLjUwNC0wLjAwMS00Ljk4Mi0wLjYzMi03LjE2Ni0xLjgyM2wtMS40MzMtMC43ODJsLTEuNTc5LDAuNDE0bC0zLjI0MSwwLjg1bDAuODMtMy4wMwlsMC40NTMtMS42NTZMNywyNy40ODVjLTEuMzA5LTIuMjY3LTIuMDAxLTQuODU4LTItNy40OTJDNS4wMDQsMTEuNzI2LDExLjczMiw1LjAwMSwxOS45OTgsNWM0LjAxMSwwLjAwMSw3Ljc3OSwxLjU2MywxMC42MSw0LjM5NwlDMzMuNDQxLDEyLjIzMSwzNSwxNS45OTksMzUsMjAuMDA1QzM0Ljk5NiwyOC4yNzMsMjguMjY4LDM1LDE5Ljk5NSwzNXoiPjwvcGF0aD48cGF0aCBmaWxsPSIjZmZmIiBkPSJNMjguMjgsMjMuNjg4Yy0wLjQ1LTAuMjI0LTIuNjYtMS4zMTMtMy4wNzEtMS40NjJjLTAuNDEzLTAuMTUxLTAuNzEyLTAuMjI0LTEuMDEyLDAuMjI0CWMtMC4zLDAuNDUtMS4xNjEsMS40NjItMS40MjMsMS43NjFjLTAuMjYyLDAuMy0wLjUyNCwwLjMzNy0wLjk3NCwwLjExM2MtMC40NS0wLjIyNC0xLjg5OS0wLjctMy42MTUtMi4yMzEJYy0xLjMzNy0xLjE5MS0yLjIzOS0yLjY2My0yLjUwMS0zLjExM2MtMC4yNjItMC40NS0wLjAyOS0wLjY5MywwLjE5Ny0wLjkxN2MwLjIwMi0wLjIwMiwwLjQ1LTAuNTI1LDAuNjc0LTAuNzg3CWMwLjIyNC0wLjI2MiwwLjMtMC40NSwwLjQ1LTAuNzVjMC4xNTEtMC4zLDAuMDc1LTAuNTYzLTAuMDM4LTAuNzg3Yy0wLjExMy0wLjIyNC0xLjAxMi0yLjQzNy0xLjM4Ny0zLjMzNgljLTAuMzY0LTAuODc2LTAuNzM2LTAuNzU3LTEuMDEyLTAuNzcxYy0wLjI2Mi0wLjAxNC0wLjU2Mi0wLjAxNS0wLjg2MS0wLjAxNWMtMC4zLDAtMC43ODcsMC4xMTMtMS4xOTgsMC41NjMJYy0wLjQxMSwwLjQ1LTEuNTczLDEuNTM3LTEuNTczLDMuNzQ5czEuNjExLDQuMzUsMS44MzUsNC42NDljMC4yMjQsMC4zLDMuMTY5LDQuODM5LDcuNjgsNi43ODYJYzEuMDcyLDAuNDYyLDEuOTExLDAuNzM5LDIuNTYyLDAuOTQ3YzEuMDc2LDAuMzQyLDIuMDU3LDAuMjk0LDIuODMyLDAuMTc4YzAuODY0LTAuMTI5LDIuNjYtMS4wODcsMy4wMzQtMi4xMzYJYzAuMzc1LTEuMDQ5LDAuMzc1LTEuOTUsMC4yNjItMi4xMzZDMjkuMDMsMjQuMDI1LDI4LjczMSwyMy45MTIsMjguMjgsMjMuNjg4eiI+PC9wYXRoPjwvc3ZnPg==') 50% 50% no-repeat;
    background-size: 100%;
}

.titleCinza {
    color: #494b4c;
}

.titlePage h1 {
    color: var(--color-primary) !important;
    font-size: var(--font-size-heading-3) !important;
    font-family: var(--font-family-bold) !important;
    text-transform: uppercase;
}

.iti {
    width: 100%;
}

#form input,
#form select,
#form textarea {
    font-family: var(--font-family-primary);
    background-color: var(--color-input-bg);
    border: none;
    box-shadow: none;
    padding: 8px 10px;
    color: var(--color-primary);
    width: 100%;
}

#form select:invalid {
    color: var(--color-highlight);
}

#form input::placeholder,
#form select::placeholder,
#form textarea::placeholder {
    font-family: var(--font-family-primary);
    color: var(--color-highlight);
}

#form .disabled {
    background-color: var(--color-disabled);
}

#form button[type="submit"] {
    background-color: var(--color-button-send);
}

#form textarea {
    min-height: 120px;
}

#form .baixarCatalogo {
    border-color: #f39c12;
    background-color: #f39c12;
    color: #fff;
}

.title-poll {
    color: var(--color-primary);
}

.info-poll {
    font-size: 19px;
}

.text-justify {
    text-align: justify;
}

#carouselBanner .carousel-indicators {
    bottom: -15px;
}

#carouselBanner .carousel-indicators [data-bs-target] {
    border-radius: 50%;
    width: 10px;
    height: 10px;
}

.accordion-button:not(.collapsed) {
    background-color: inherit;
}

.accordion-button:focus {
    box-shadow: inherit;
    color: inherit;
}

.accordion-body {
    background-color: gray;
    color: white;
}

.obterCotacao {
    border: 1px solid var(--color-highlight);
    padding: 7px 20px;
    color: var(--color-highlight);
}

.cta_buttom {
    background-color: var(--color-background-button-cta);
    color: #fff !important;
    font-weight: 300;
    font-size: var(--font-size-home-hero-cta);
    line-height: var(--line-height-default);
    letter-spacing: 0.02em;
    transition: background-color 0.2s ease;
    padding: 0.3rem 1.5rem;
    border-radius: var(--bs-border-radius-pill) !important;
    font-family: 'InterTight-Light' !important;
    border: 0 !important;
    text-decoration: none !important;
    display: inline-block;
}

.cta_buttom:hover,
.cta_buttom:focus,
.cta_buttom:focus-visible {
    background-color: #8f5a42;
    color: #fff !important;
}

/* -------------------------------------------------------------------------- */
/* Breakpoints globais — min-width ↑, depois max-width ↓                      */
/* -------------------------------------------------------------------------- */
@media (min-width: 1400px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl,
    .container-xxl {
        max-width: 1140px;
    }

    body.container-large .container {
        max-width: 1440px;
    }
}

@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1280px;
    }
}
@media (min-width: 992px) {
    .container, .container-lg, .container-md, .container-sm {
        max-width: 992px;
    }
}

/*
 * Home: containers fluidos até 1440px (não força 992px em notebooks).
 * Demais páginas seguem o eixo Bootstrap padrão acima.
 */
@media (min-width: 992px) and (max-width: 1399.98px) {
    body.container-large .home .container,
    .home .container {
        width: 100%;
        max-width: var(--pf-container-max, 1440px);
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .cta_buttom {
        font-size: calc(var(--font-size-home-hero-cta) - 0.25rem);
        padding: 0.2rem .6rem;
    }
}

a.learn-more-default {
    color: var(--color-primary);
    border: 1px solid var(--color-primary);
    padding: 7px 20px;
    display: inline-block;
    text-align: center;
}

img.aspect-ratio-16-9 {
    aspect-ratio: 16/9;
}

img.aspect-ratio-4-3 {
    aspect-ratio: 4/3;
}

#faq h3 {
    font-family: var(--font-family-primary);
}

@media (max-width: 767.98px) {
    .contentInstallation p.title-step {
        margin-top: 1rem;
        text-align: left;
    }
}

@media (max-width: 480px) {

    body.container-large .container {
        padding-right: calc(var(--bs-gutter-x) * 1.5);
        padding-left: calc(var(--bs-gutter-x) * 1.5);
    }

    .container.cards {
        padding-right: 1rem !important;
        padding-left: 1rem !important;
    }

    .separator,
    .titlePage h1 {
        font-size: 20px !important;
        text-align: left;
    }

    .mt-default-web {
        margin-top: var(--mt-default-web-mobile);
    }

    .mt-default-subtitle {
        margin-top: var(--mt-default-subtitle-mobile);
    }

    .mt-default-divider {
        margin-top: var(--mt-default-divider-mobile);
    }

    h1 {
        font-size: 24px !important;
    }

    h2 {
        font-size: 22px !important;
    }

    h3 {
        font-size: 20px !important;
    }

    h4 {
        font-size: 18px !important;
    }

    h5 {
        font-size: 16px !important;
    }

    .obterCotacao {
        width: 100%;
        display: block;
        text-align: center;
    }

    a.learn-more-default {
        display: block;
        width: 100%;
        margin: 0 auto;
    }

    /* -------------------------------------------------------------------------- */
    /* Carrossel: linha arrastavel global                                         */
    /* -------------------------------------------------------------------------- */
    .carousel-line-track {
        position: relative;
        width: min(78vw, 520px);
        max-width: 100%;
        height: 3px;
        margin: 0 auto;
        background-color: #9ea5aa;
        border-radius: 999px;
        touch-action: none;
        cursor: pointer;
        margin-top: 4rem;
    }

    .carousel-line-track__active {
        position: absolute;
        top: 0;
        left: 0;
        height: 5px;
        width: 32%;
        border-radius: 999px;
        background-color: #b87a57;
        transform: translateX(0) translateY(-50%);
        cursor: grab;
    }

    .carousel-line-track__active:active {
        cursor: grabbing;
    }
}

/* -------------------------------------------------------------------------- */
/* New Learn More (:is(#new-learn-more, #saiba-mais)) — layout alinhado a Designed for Real Living */
/* Ref.: docs/layouts/learn-more.png. Mídia dos cards: .nlrm-media-img (paths em LearnMore.php). */
/* Depende das variáveis de tipografia/cores já definidas em :root / home.      */
/* -------------------------------------------------------------------------- */

:is(#new-learn-more, #saiba-mais) {
    background-color: var(--color-background);
    color: var(--color-highlight);
}

:is(#new-learn-more, #saiba-mais) .dfsrl-inner {
    position: relative;
    z-index: 1;
}

:is(#new-learn-more, #saiba-mais) .image-container {
    position: relative;
    z-index: 1;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-cards-wrap {
    isolation: isolate;
    margin-top: calc(var(--mt-default-web) / 2);
}

:is(#new-learn-more, #saiba-mais) .dfsrl-cards {
    z-index: 1;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-title {
    font-size: var(--font-size-home-hero-subtitle);
    color: var(--color-grey);
    letter-spacing: -0.02em;
    margin-bottom: 0;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-subtitle {
    font-weight: 300;
    font-size: var(--font-size-home-hero-description);
    line-height: 1.45;
    color: #6b7370;
    margin-left: auto;
    margin-right: auto;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card {
    border-radius: 18px;
    transition: box-shadow 0.25s ease, transform 0.25s ease;
    background-color: var(--color-background);
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card:focus-visible {
    outline: 3px solid var(--color-menu-text);
    outline-offset: 4px;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(15, 83, 113, 0.18) !important;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__media {
    position: relative;
    width: 100%;
    aspect-ratio: 3 / 4;
    max-height: 532px;
    isolation: isolate;
    background-color: #0a0a0a;
}

:is(#new-learn-more, #saiba-mais) .nlrm-media-img {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    background-color: #0a0a0a;
}

/* Imagens já trazem sombra no arquivo — sem degradê CSS na base */
:is(#new-learn-more, #saiba-mais) .dfsrl-card__media::after,
:is(#new-learn-more, #saiba-mais) .dfsrl-card__overlay {
    display: none;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__footer {
    position: absolute;
    z-index: 2;
    left: 1rem;
    right: 1rem;
    bottom: 1.1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__pill {
    --dfsrl-pill-height: 56px;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-height: var(--dfsrl-pill-height);
    width: 100%;
    padding: 0.5rem 1rem;
    border: 1px solid rgba(255, 255, 255, 0.9);
    border-radius: 999px;
    height: 5rem;
}

:is(:is(#new-learn-more, #saiba-mais) .dfsrl-card__pill) .dfsrl-card__copy {
    padding-left: 0.5rem !important;
    display: flex;
    justify-content: center;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__icon-wrap {
    width: 5rem;
    height: 5rem;
    flex-shrink: 0;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__icon-wrap img {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    object-fit: contain;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap {
    width: 32px;
    height: 32px;
    margin-left: auto;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap img {
    width: 100%;
    height: 1.2rem;
    display: block;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__heading {
    color: var(--color-white);
    line-height: 1.2;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
    font-size: 1.8rem;
}

:is(#new-learn-more, #saiba-mais) .why-fiber-title {
    font-size: 2rem;
}

:is(#new-learn-more, #saiba-mais) .installation-title {
    font-size: 2.2rem;
}

:is(#new-learn-more, #saiba-mais) .dfsrl-card__tagline {
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-weight: 300;
    font-size: 1.1rem;
    line-height: 1.45;
    opacity: 0.95;
}

@media only screen and (min-width: 1024px) {
    :is(#new-learn-more, #saiba-mais) .dfsrl-card__icon-wrap {
        width: 4rem;
        height: 4rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__pill {
        height: 4rem;
    }

    :is(#new-learn-more, #saiba-mais) .why-fiber-title,
    :is(#new-learn-more, #saiba-mais) .installation-title,
    :is(#new-learn-more, #saiba-mais) .dfsrl-card__heading {
        font-size: 1.5rem !important;
    }

    .fiberglassPoolsAndSpas #pool-models-intro .pool-models-intro__title,
    .fiberglassPoolsAndSpas #text-cta .pool-models-intro__title {
        font-size: 3.2rem !important;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-title {
        font-size: 2.5rem !important;
    }
}

/* New Learn More — breakpoints (max-width ↓, min-width ↑) */
@media only screen and (max-width: 767.98px) {

    :is(#new-learn-more, #saiba-mais) .dfsrl-inner,
    :is(#new-learn-more, #saiba-mais) .image-container {
        padding-right: calc(var(--bs-gutter-x) * 0.8);
        padding-left: calc(var(--bs-gutter-x) * 0.8);
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-title {
        font-size: 2rem !important;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-subtitle {
        max-width: 18.5rem;
        margin-left: auto;
        margin-right: auto;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-cards-wrap {
        overflow: visible;
        padding-bottom: 1rem;
    }

    :is(#new-learn-more, #saiba-mais) :is(#nlrmCarouselRow, #gtLearnMoreCarouselRow, #gpLearnMoreCarouselRow, #ecLearnMoreCarouselRow, #pcLearnMoreCarouselRow, #igLearnMoreCarouselRow, #auLearnMoreCarouselRow).dfsrl-cards.row {
        flex-direction: column;
        flex-wrap: nowrap;
        justify-content: flex-start !important;
        overflow: visible;
        row-gap: 1rem;
    }

    :is(#new-learn-more, #saiba-mais) :is(#nlrmCarouselRow, #gtLearnMoreCarouselRow, #gpLearnMoreCarouselRow, #ecLearnMoreCarouselRow, #pcLearnMoreCarouselRow, #igLearnMoreCarouselRow, #auLearnMoreCarouselRow)>[class*="col-"]>.dfsrl-card {
        width: 100%;
        border-radius: clamp(1.25rem, 4.5vw, 1.75rem);
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__media {
        aspect-ratio: 3 / 4;
        min-height: 200px;
        max-height: min(52vh, 420px);
        height: auto;
        overflow: hidden;
    }

    :is(#new-learn-more, #saiba-mais) .nlrm-media-img {
        position: absolute;
        inset: 0;
        z-index: 0;
        display: block;
        width: 100%;
        height: 100%;
        min-height: 0;
        max-height: none;
        object-fit: cover;
        object-position: center;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card:hover {
        transform: none;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__footer {
        left: 0.7rem;
        right: 0.7rem;
        bottom: 0.8rem;
        gap: 0.55rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__icon-wrap {
        width: 3.75rem;
        height: 3.75rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__pill {
        --dfsrl-pill-height: 54px;
        height: auto;
        min-height: var(--dfsrl-pill-height);
        padding: 0.45rem 0.85rem;
        gap: 0.55rem;
        border-width: 2px;
    }

    :is(:is(#new-learn-more, #saiba-mais) .dfsrl-card__pill) .dfsrl-card__copy {
        padding-left: 0.4rem !important;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap {
        width: 28px;
        height: 28px;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap img {
        height: 1.2rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__heading,
    :is(#new-learn-more, #saiba-mais) .why-fiber-title,
    :is(#new-learn-more, #saiba-mais) .installation-title,
    :is(#new-learn-more, #saiba-mais) .how-to-clean-your-pool-title {
        font-size: 1.35rem !important;
        line-height: 1.2;
    }
}

@media only screen and (max-width: 480px) {

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__heading,
    :is(#new-learn-more, #saiba-mais) .why-fiber-title,
    :is(#new-learn-more, #saiba-mais) .installation-title,
    :is(#new-learn-more, #saiba-mais) .how-to-clean-your-pool-title {
        font-size: 1.25rem !important;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__tagline {
        font-size: 0.9rem !important;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__icon-wrap {
        width: 3.5rem;
        height: 3.3rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__pill {
        --dfsrl-pill-height: 50px;
        padding: 0.4rem 0.75rem;
        gap: 0.5rem;
        border-width: 2px;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap {
        width: 26px;
        height: 26px;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap img {
        height: 1.1rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__footer {
        left: 0.6rem;
        right: 0.6rem;
        bottom: 0.7rem;
        gap: 0.5rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-subtitle {
        font-size: var(--font-size-home-hero-description-mobile) !important;
        margin-top: 30px !important;
    }
}

@media only screen and (min-width: 768px) {
    :is(#new-learn-more, #saiba-mais) .dfsrl-cards-wrap {
        padding-bottom: 90px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    :is(#new-learn-more, #saiba-mais) .dfsrl-cards-wrap {
        overflow: visible;
        padding-bottom: 2.5rem;
    }

    :is(#new-learn-more, #saiba-mais) :is(#nlrmCarouselRow, #gtLearnMoreCarouselRow, #gpLearnMoreCarouselRow, #ecLearnMoreCarouselRow, #pcLearnMoreCarouselRow, #igLearnMoreCarouselRow, #auLearnMoreCarouselRow).dfsrl-cards.row {
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between !important;
        align-items: stretch;
        overflow: visible;
        margin-left: 0;
        margin-right: 0;
        column-gap: 0.65rem;
    }

    :is(#new-learn-more, #saiba-mais) :is(#nlrmCarouselRow, #gtLearnMoreCarouselRow, #gpLearnMoreCarouselRow, #ecLearnMoreCarouselRow, #pcLearnMoreCarouselRow, #igLearnMoreCarouselRow, #auLearnMoreCarouselRow)>[class*="col-"] {
        flex: 1 1 0;
        min-width: 0;
        max-width: none;
        width: auto;
        padding-left: 0;
        padding-right: 0;
    }

    :is(#new-learn-more, #saiba-mais) :is(#nlrmCarouselRow, #gtLearnMoreCarouselRow, #gpLearnMoreCarouselRow, #ecLearnMoreCarouselRow, #pcLearnMoreCarouselRow, #igLearnMoreCarouselRow, #auLearnMoreCarouselRow)>[class*="col-"]>.dfsrl-card {
        width: 100%;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__media {
        aspect-ratio: 4 / 5;
        max-height: 240px;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__pill {
        --dfsrl-pill-height: 44px;
        height: auto;
        min-height: var(--dfsrl-pill-height);
        padding: 0.35rem 0.65rem;
        gap: 0.45rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__icon-wrap {
        width: 2.75rem;
        height: 2.75rem;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__arrow-wrap {
        width: 22px;
        height: 22px;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__heading,
    :is(#new-learn-more, #saiba-mais) .why-fiber-title,
    :is(#new-learn-more, #saiba-mais) .installation-title {
        font-size: clamp(0.95rem, 1.55vw, 1.35rem) !important;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__tagline {
        font-size: clamp(0.68rem, 1.1vw, 0.85rem);
        line-height: 1.35;
    }

    :is(#new-learn-more, #saiba-mais) .dfsrl-card__footer {
        left: 0.55rem;
        right: 0.55rem;
        bottom: 0.65rem;
        gap: 0.4rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    :is(#new-learn-more, #saiba-mais) .dfsrl-card:hover {
        transform: none;
    }
}

/* -------------------------------------------------------------------------- */
/* FAQ + formulário (home/faq-form + pool-models/faq) — global */
/* Escopo: .faq-form-section (evita colisão com outros .cta_buttom / .accordion) */
/* -------------------------------------------------------------------------- */

.faq-form-section {
    background-color: #ececec;
    padding: clamp(2.8rem, 6vw, 5rem) 0;
}

.faq-form-section .faq-form-inner {
    max-width: 760px !important;
}

.faq-form-section .faq-form-title {
    color: #5f6d72;
    font-size: 2.5rem;
    line-height: 1.1;
}

.faq-form-section .faq-form-subtitle {
    color: #6b757b;
    font-size: var(--font-size-home-hero-description);
}

.faq-form-section .faq-form-accordion {
    border: 1px solid #d2d6d8;
    background: transparent;
    padding: 0.35rem 0.85rem;
}

.faq-form-section .faq-form-accordion .accordion-item {
    border: 0;
    border-bottom: 1px solid #b9c0c4;
    background: transparent;
}

.faq-form-section .faq-form-accordion .accordion-item:last-child {
    border-bottom: 0;
}

.faq-form-section .faq-form-accordion .accordion-button {
    background: transparent;
    box-shadow: none;
    color: #6d757b;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: clamp(0.95rem, 1.35vw, 1.35rem);
    padding: 0.85rem 0.4rem;
}

.faq-form-section .faq-form-accordion .accordion-button:not(.collapsed) {
    color: #4e5960;
}

.faq-form-section .faq-form-accordion .accordion-button::after {
    width: 16px;
    height: 16px;
    background-size: 16px;
    opacity: 0.6;
}

.faq-form-section .faq-form-accordion .accordion-body {
    color: #687278;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: 0.97rem;
    line-height: 1.45;
    padding: 0 0.4rem 1rem;
}

.faq-form-section .faq-form-accordion .accordion-body .faq-body-link {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    margin-top: 0.75rem;
    padding: 0.42rem 0.9rem;
    border: 1px solid rgba(95, 109, 114, 0.28);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.62);
    color: #4a6570;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: 0.9rem;
    line-height: 1.35;
    text-decoration: none;
    transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.faq-form-section .faq-form-accordion .accordion-body .faq-body-link:hover,
.faq-form-section .faq-form-accordion .accordion-body .faq-body-link:focus-visible {
    background: rgba(255, 255, 255, 0.92);
    border-color: rgba(74, 101, 112, 0.42);
    color: #35525d;
    box-shadow: 0 2px 8px rgba(74, 101, 112, 0.1);
}

.faq-form-section .faq-form-accordion .accordion-body .faq-body-link:focus-visible {
    outline: 2px solid rgba(74, 101, 112, 0.35);
    outline-offset: 2px;
}

.faq-form-section .faq-form-contact-title {
    color: #6d757b;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: clamp(1.05rem, 1.45vw, 1.45rem);
}

.faq-form-section .faq-form-actions {
    gap: 0.75rem;
}

.faq-form-section .faq-form-btn {
    border-radius: 999px;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: clamp(1rem, 1.1vw, 1.2rem);
    line-height: 1;
    padding: 0.72rem 1.45rem;
}

.faq-form-section .faq-form-btn--ghost {
    border: 1px solid #b7bec2;
    background: transparent;
    color: #6a7379;
}

.faq-form-section .faq-form-btn--solid {
    border: 1px solid #ae7451;
    background: var(--color-background-button-cta);
    color: #fff !important;
}

.faq-form-section .faq-form-helper {
    color: #7c8489;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: 0.98rem;
    line-height: 1.45;
}

.faq-form-section .faq-form-reveal {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transform: translateY(8px);
    transition: max-height 0.55s ease, opacity 0.35s ease, transform 0.35s ease;
}

.faq-form-section .faq-form-reveal.is-visible {
    max-height: 920px;
    opacity: 1;
    transform: translateY(0);
}

.faq-form-section .faq-form-field {
    border: 1px solid #b9c0c4;
    border-radius: 999px;
    background-color: var(--color-white);
    color: #6b757b;
    font-size: 1.02rem;
    height: 46px;
    padding: 0.45rem 1rem;
}

.faq-form-section .faq-form-field::placeholder {
    color: #6b757b;
}

.faq-form-section .faq-form-field:focus {
    background-color: transparent;
    border-color: #a8b1b6;
    box-shadow: none;
    color: #5e666b;
}

.faq-form-section .faq-form-field--textarea {
    border-radius: 18px;
    height: auto;
    min-height: 66px;
    resize: vertical;
}

.faq-form-section .cta_buttom {
    border: 0;
    border-radius: 999px;
    font-size: clamp(1rem, 1.15vw, 1.22rem);
    line-height: 1;
    padding: 0.78rem 1.45rem;
}

.faq-form-section .faq-form-btn--ghost[aria-expanded="true"] {
    background: #f4f5f6;
}

.faq-form-section .faq-form-success {
    color: #7c8489;
    font-family: 'InterTight-Light', 'Inter', system-ui, sans-serif;
    font-size: 0.96rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767.98px) {
    .faq-form-section {
        padding-bottom: var(--mt-default-web-mobile);
    }

    .faq-form-section .faq-form-inner {
        max-width: 100%;
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .faq-form-section .faq-form-header {
        text-align: center;
        padding: 0 0.15rem;
    }

    .faq-form-section .faq-form-title {
        font-size: clamp(1.85rem, 8.5vw, 2.65rem) !important;
        line-height: 1.12;
    }

    .faq-form-section .faq-form-subtitle {
        font-size: 0.98rem;
        line-height: 1.4;
        margin-top: 0.35rem;
    }

    .faq-form-section .faq-form-faq {
        margin-top: 1.25rem !important;
    }

    .faq-form-section .faq-form-accordion {
        padding: 0.28rem 0.55rem 0.35rem;
        border-radius: 2px;
    }

    .faq-form-section .faq-form-accordion .accordion-button {
        padding: 0.72rem 0.3rem;
        font-size: 0.96rem;
        line-height: 1.35;
        text-align: left;
        white-space: normal;
    }

    .faq-form-section .faq-form-accordion .accordion-button::after {
        flex-shrink: 0;
        margin-left: 0.5rem;
    }

    .faq-form-section .faq-form-accordion .accordion-body {
        padding: 0 0.3rem 0.85rem;
        font-size: 0.94rem;
        line-height: 1.42;
    }

    .faq-form-section .faq-form-accordion .accordion-body .faq-body-link {
        margin-top: 0.65rem;
        font-size: 0.86rem;
        padding: 0.38rem 0.8rem;
    }

    .faq-form-section .faq-form-contact {
        margin-top: 1.5rem !important;
    }

    .faq-form-section .faq-form-contact-title {
        text-align: center;
        font-size: 1.04rem;
        line-height: 1.35;
        margin-bottom: 0.85rem !important;
    }

    .faq-form-section .faq-form-actions {
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 0.45rem;
        width: 100%;
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .faq-form-section .faq-form-btn {
        flex: 1 1 calc(45% - 0.225rem);
        min-width: 0;
        max-width: calc(50% - 0.225rem);
        justify-content: center;
        text-align: center;
        box-sizing: border-box;
        padding: 0.58rem 0.45rem;
        font-size: clamp(0.72rem, 2.8vw, 0.82rem);
        line-height: 1.15;
        white-space: normal;
        hyphens: auto;
        font-size: 1.02rem;
    }

    .faq-form-section .faq-form-btn--solid {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .faq-form-section .faq-form-helper {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        max-width: 22rem;
        font-size: 0.95rem;
        line-height: 1.42;
    }

    .faq-form-section .faq-form-form-wrap {
        margin-top: 1rem !important;
    }

    .faq-form-section .faq-form-field {
        font-size: 1rem;
        height: 48px;
        background-color: #fff !important;
    }

    .faq-form-section .faq-form-field:focus {
        background-color: #fff !important;
    }

    .faq-form-section .faq-form-field--textarea {
        min-height: 72px;
    }

    .faq-form-section .cta_buttom {
        width: auto;
        max-width: 13.5rem;
        min-width: 0;
        margin-left: auto;
        margin-right: auto;
        display: block;
        padding: 0.78rem 1.35rem;
        font-size: 1.02rem;
    }

    .faq-form-section .faq-form-success {
        text-align: center;
        font-size: 0.94rem;
        max-width: 22rem;
        margin-left: auto;
        margin-right: auto;
    }

    .faq-form-section .faq-form-reveal.is-visible {
        max-height: 1100px;
    }
}