/* Suporte v5.4.0 — reprodução do HTML aprovado, isolada do tema do WordPress. */
.bksg-v53-view-suporte {
    --bksg-v54-blue: #086bf2;
    --bksg-v54-blue-2: #149ce8;
    --bksg-v54-ink: #11213d;
    --bksg-v54-muted: #687791;
    --bksg-v54-line: #dfe8f3;
    --bksg-v54-red: #ec4257;
    --bksg-v54-shadow: 0 14px 40px rgba(33,82,139,.09);
    background: radial-gradient(circle at 88% 3%,rgba(38,162,255,.09),transparent 27%),linear-gradient(180deg,#f8fbff 0%,#f1f7fc 100%) !important;
    color: var(--bksg-v54-ink);
    font-family: Inter,"Segoe UI",Roboto,Arial,sans-serif !important;
}

.bksg-v53-view-suporte,
.bksg-v53-view-suporte * { box-sizing: border-box; }

.bksg-v53-view-suporte h1,
.bksg-v53-view-suporte h2,
.bksg-v53-view-suporte h3,
.bksg-v53-view-suporte p,
.bksg-v53-view-suporte a,
.bksg-v53-view-suporte button,
.bksg-v53-view-suporte input,
.bksg-v53-view-suporte select,
.bksg-v53-view-suporte textarea,
.bksg-v53-view-suporte span,
.bksg-v53-view-suporte small,
.bksg-v53-view-suporte strong { font-family: inherit !important; }

/* Cabeçalho e conteúdo usam a malha de 1.600 px do protótipo. */
.bksg-v53-view-suporte .bksg-v54-support-page-head {
    align-items: flex-end !important;
    background: transparent !important;
    border: 0 !important;
    gap: 24px !important;
    margin: 0 auto 22px !important;
    max-width: 1600px;
    min-height: 0 !important;
    padding: 30px 28px 0 !important;
    width: 100%;
}
.bksg-v54-support-page-head > div { flex: 1; max-width: 760px; min-width: 0; }
.bksg-v53-view-suporte .bksg-v54-support-page-head > div:first-of-type > span {
    color: var(--bksg-v54-blue) !important;
    display: inline-block !important;
    font-size: 11px !important;
    font-weight: 850 !important;
    letter-spacing: 1.25px !important;
    line-height: 1.2 !important;
    margin: 0 0 8px !important;
    text-transform: uppercase;
}
.bksg-v53-view-suporte .bksg-v54-support-page-head h1 {
    color: var(--bksg-v54-ink) !important;
    font-size: clamp(30px,3vw,43px) !important;
    font-weight: 800 !important;
    letter-spacing: -1.6px !important;
    line-height: 1.06 !important;
    margin: 0 !important;
}
.bksg-v53-view-suporte .bksg-v54-support-page-head p {
    color: var(--bksg-v54-muted) !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
    margin: 9px 0 0 !important;
    max-width: 760px;
}
.bksg-v53-view-suporte .bksg-v5-app-content {
    flex: 1 0 auto;
    margin: 0 auto;
    max-width: 1600px;
    padding: 0 28px 38px !important;
    width: 100%;
}

.bksg-v54-support .bksg-v5-card {
    background: #fff !important;
    border: 1px solid var(--bksg-v54-line) !important;
    border-radius: 20px !important;
    box-shadow: var(--bksg-v54-shadow) !important;
}
.bksg-v54-section-title {
    align-items: flex-start;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 17px;
}
.bksg-v53-view-suporte .bksg-v54-section-title h2 {
    color: var(--bksg-v54-ink) !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    letter-spacing: -.5px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
}
.bksg-v53-view-suporte .bksg-v54-section-title p {
    color: var(--bksg-v54-muted) !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    margin: 5px 0 0 !important;
}

.bksg-v54-support-notice {
    border: 1px solid;
    border-radius: 13px;
    font-size: 12px;
    font-weight: 650;
    margin-bottom: 18px;
    padding: 13px 16px;
}
.bksg-v54-support-notice.is-success { background: #eaf9f2; border-color: #bdebd5; color: #087c53; }
.bksg-v54-support-notice.is-error { background: #fff0f2; border-color: #f2c0c7; color: #b3293e; }

/* Faixa azul de atendimento. */
.bksg-v54-support .bksg-v54-support-hero {
    align-items: center;
    background: linear-gradient(120deg,#062d70,#086bf2 62%,#18a8e7) !important;
    color: #fff;
    display: grid;
    gap: 28px;
    grid-template-columns: minmax(0,1.2fr) minmax(260px,.8fr);
    margin-bottom: 18px;
    overflow: hidden;
    padding: 26px 28px !important;
    position: relative;
}
.bksg-v54-support-hero::after {
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 50%;
    box-shadow: 0 0 0 44px rgba(255,255,255,.05),0 0 0 90px rgba(255,255,255,.035);
    content: "";
    height: 280px;
    position: absolute;
    right: -55px;
    top: -85px;
    width: 280px;
}
.bksg-v53-view-suporte .bksg-v54-support-hero h2 {
    color: #fff !important;
    font-size: 27px !important;
    font-weight: 800 !important;
    letter-spacing: -.7px !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    position: relative;
    z-index: 1;
}
.bksg-v53-view-suporte .bksg-v54-support-hero > div:first-child > p {
    color: #d7eaff !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    margin: 8px 0 0 !important;
    max-width: 650px;
    position: relative;
    z-index: 1;
}
.bksg-v54-whatsapp-card {
    align-items: center;
    backdrop-filter: blur(9px);
    background: rgba(4,34,80,.28);
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 16px;
    display: flex;
    gap: 15px;
    justify-content: space-between;
    padding: 16px;
    position: relative;
    z-index: 1;
}
.bksg-v54-whatsapp-card strong { color: #fff; display: block; font-size: 13px; }
.bksg-v54-whatsapp-card span { color: #d6eaff; display: block; font-size: 10px; margin-top: 4px; }

.bksg-v54-button {
    -webkit-appearance: none !important;
    align-items: center;
    appearance: none !important;
    background-clip: padding-box !important;
    border: 0 !important;
    border-radius: 11px;
    box-sizing: border-box !important;
    cursor: pointer;
    display: inline-flex;
    font-size: 16px;
    font-weight: 700;
    gap: 9px;
    justify-content: center;
    min-height: 46px;
    outline: 0 !important;
    overflow: hidden;
    padding: 0 18px;
    position: relative;
    text-shadow: none !important;
    text-decoration: none !important;
    transition: transform .18s ease,box-shadow .18s ease;
}
.bksg-v54-button::before,
.bksg-v54-button::after {
    content: none !important;
    display: none !important;
}
.bksg-v54-whatsapp-card .bksg-v54-button { background: #fff; color: #075638 !important; white-space: nowrap; }
.bksg-v54-button.is-primary,
.bksg-v54-button.is-primary:hover,
.bksg-v54-button.is-primary:focus,
.bksg-v54-button.is-primary:active {
    -webkit-text-fill-color: #fff !important;
    background: linear-gradient(100deg,var(--bksg-v54-blue),var(--bksg-v54-blue-2)) !important;
    border: 0 !important;
    box-shadow: 0 10px 23px rgba(8,107,242,.18) !important;
    color: #fff !important;
    outline: 0 !important;
}
.bksg-v54-button:hover { transform: translateY(-1px); }
.bksg-v54-button:disabled { cursor: wait; opacity: .68; transform: none; }
.bksg-v54-button:focus-visible { box-shadow: 0 0 0 3px rgba(8,107,242,.22),0 10px 23px rgba(8,107,242,.18) !important; outline: 0 !important; }

/* Formulário principal e coluna lateral. */
.bksg-v54-support-layout { align-items: start; display: grid; gap: 18px; grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr); }
.bksg-v54-support-form-card { min-width: 0; overflow: hidden; padding: 22px !important; }
.bksg-v54-support-form-card form { background: transparent !important; border: 0 !important; box-shadow: none !important; margin: 0 !important; padding: 0 !important; }
.bksg-v54-form-grid { display: grid; gap: 15px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.bksg-v54-form-grid .is-wide { grid-column: 1 / -1; }
.bksg-v54-field { display: grid !important; gap: 7px; margin: 0 !important; min-width: 0; padding: 0 !important; width: 100%; }
.bksg-v53-view-suporte .bksg-v54-field > span {
    color: #3e4e68 !important;
    display: block;
    font-size: 12px !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    margin: 0 !important;
}
.bksg-v54-field > span b { color: var(--bksg-v54-red); }
.bksg-v54-field small { color: #7a879c; display: block; font-size: 10px; line-height: 1.45; margin: 0; }
.bksg-v54-support .bksg-v54-field input,
.bksg-v54-support .bksg-v54-field select,
.bksg-v54-support .bksg-v54-field textarea {
    background: #fbfdff !important;
    border: 1px solid #d7e3ef !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    color: #1a2944 !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    letter-spacing: normal !important;
    max-width: none !important;
    margin: 0 !important;
    opacity: 1 !important;
    outline: 0 !important;
    text-transform: none !important;
    transition: border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
    vertical-align: middle;
    width: 100% !important;
}
.bksg-v54-support .bksg-v54-field input,
.bksg-v54-support .bksg-v54-field select { height: 50px !important; min-height: 50px !important; padding: 0 14px !important; }
.bksg-v54-support .bksg-v54-field select {
    appearance: none;
    background-image: linear-gradient(45deg,transparent 50%,#77859a 50%),linear-gradient(135deg,#77859a 50%,transparent 50%) !important;
    background-position: calc(100% - 18px) 22px,calc(100% - 14px) 22px !important;
    background-repeat: no-repeat !important;
    background-size: 4px 4px,4px 4px !important;
    padding-right: 36px !important;
}
.bksg-v54-support .bksg-v54-field textarea { height: 142px; line-height: 1.55 !important; min-height: 142px !important; padding: 13px 14px !important; resize: vertical; }
.bksg-v54-support .bksg-v54-field input:focus,
.bksg-v54-support .bksg-v54-field select:focus,
.bksg-v54-support .bksg-v54-field textarea:focus { background-color: #fff !important; border-color: #7bb5ff !important; box-shadow: 0 0 0 4px rgba(8,107,242,.08) !important; }
.bksg-v54-support .bksg-v54-field input::placeholder,
.bksg-v54-support .bksg-v54-field textarea::placeholder { color: #7d8ba2; opacity: 1; }
.bksg-v54-support .bksg-v54-field input[readonly] { background: #f1f6fb !important; color: #50617b !important; cursor: default; }
.bksg-v54-privacy-check { align-items: center; background: transparent !important; color: #5f6d84; display: flex !important; font-size: 11px; font-weight: 400; gap: 9px; line-height: 1.5; margin: 0 !important; padding: 0 !important; text-transform: none; }
.bksg-v53-view-suporte .bksg-v54-support .bksg-v54-privacy-check input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    background-color: #fff !important;
    background-image: none !important;
    border: 1px solid #9aa8ba !important;
    border-radius: 4px !important;
    box-shadow: none !important;
    cursor: pointer;
    display: inline-block !important;
    flex: 0 0 17px;
    height: 17px !important;
    margin: 0 !important;
    min-height: 17px !important;
    min-width: 17px !important;
    padding: 0 !important;
    vertical-align: middle;
    width: 17px !important;
}
.bksg-v53-view-suporte .bksg-v54-support .bksg-v54-privacy-check input[type="checkbox"]:checked {
    background-color: var(--bksg-v54-blue) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.4' d='M3.2 8.2l3 3.1 6.6-7'/%3E%3C/svg%3E") !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 13px 13px !important;
    border-color: var(--bksg-v54-blue) !important;
}
.bksg-v53-view-suporte .bksg-v54-support .bksg-v54-privacy-check input[type="checkbox"]:focus-visible {
    box-shadow: 0 0 0 3px rgba(8,107,242,.16) !important;
    outline: 0 !important;
}
.bksg-v53-view-suporte .bksg-v54-support-form-card label.bksg-v54-privacy-check > span {
    color: #5f6d84 !important;
    display: inline !important;
    font-family: inherit !important;
    font-size: 11px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    text-transform: none !important;
}
.bksg-v53-view-suporte .bksg-v54-support-form-card .bksg-v54-button.is-primary {
    flex: 0 0 166px;
    font-family: inherit !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 700 !important;
    height: 46px !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    margin: 0 !important;
    max-height: 46px !important;
    max-width: 166px !important;
    min-height: 46px !important;
    min-width: 166px !important;
    padding: 0 18px !important;
    text-transform: none !important;
    width: 166px !important;
}

.bksg-v54-support-aside { display: grid; gap: 16px; }
.bksg-v54-contact-card,
.bksg-v54-faq-card { padding: 20px !important; }
.bksg-v54-contact-method { display: flex; gap: 12px; padding: 13px 0; }
.bksg-v54-contact-method + .bksg-v54-contact-method { border-top: 1px solid #e7eef5; }
.bksg-v54-contact-method i { align-items: center; background: #edf6ff; border-radius: 12px; color: var(--bksg-v54-blue); display: flex; flex: 0 0 39px; height: 39px; justify-content: center; }
.bksg-v54-contact-method svg { fill: none; height: 19px; stroke: currentColor; stroke-width: 1.9; width: 19px; }
.bksg-v54-contact-method strong { color: #26344c; display: block; font-size: 12px; }
.bksg-v54-contact-method span { color: var(--bksg-v54-muted); display: block; font-size: 10px; line-height: 1.45; margin-top: 4px; }

.bksg-v54-faq { border-top: 1px solid #e7eef5; }
.bksg-v54-faq button {
    align-items: center;
    background: transparent !important;
    border: 0 !important;
    color: #34445f !important;
    display: flex;
    font-size: 12px !important;
    font-weight: 750 !important;
    gap: 15px;
    justify-content: space-between;
    line-height: 1.35;
    margin: 0 !important;
    min-height: 0 !important;
    padding: 14px 0 !important;
    text-align: left;
    width: 100%;
}
.bksg-v54-faq button span:last-child { color: var(--bksg-v54-blue); font-size: 18px; transition: transform .18s ease; }
.bksg-v53-view-suporte .bksg-v54-faq > p { color: var(--bksg-v54-muted) !important; display: none; font-size: 11px !important; line-height: 1.55 !important; margin: 0 0 14px !important; }
.bksg-v54-faq.is-open > p { display: block; }
.bksg-v54-faq.is-open button span:last-child { transform: rotate(45deg); }
.bksg-v54-faq button:focus-visible { outline: 2px solid #9ccaff; outline-offset: 2px; }

@media (max-width: 1260px) {
    .bksg-v53-view-suporte .bksg-v54-support-page-head,
    .bksg-v53-view-suporte .bksg-v5-app-content { padding-left: 20px !important; padding-right: 20px !important; }
}

@media (max-width: 1080px) {
    .bksg-v54-support-layout { grid-template-columns: 1fr; }
    .bksg-v54-support-aside { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 820px) {
    .bksg-v53-view-suporte .bksg-v54-support-page-head { align-items: flex-start !important; padding-top: 76px !important; }
    .bksg-v53-view-suporte .bksg-v54-support-page-head .bksg-v5-menu-button { display: grid; flex: 0 0 42px; margin: 0; place-items: center; }
    .bksg-v53-view-suporte .bksg-v54-support-page-head .bksg-v5-menu-button svg { height: 21px; width: 21px; }
    .bksg-v53-view-suporte .bksg-v5-app-content { padding-bottom: 30px !important; }
}

@media (max-width: 720px) {
    .bksg-v54-support .bksg-v54-support-hero { grid-template-columns: 1fr; padding: 23px 20px !important; }
    .bksg-v54-whatsapp-card { align-items: flex-start; flex-direction: column; }
    .bksg-v54-whatsapp-card .bksg-v54-button { width: 100%; }
    .bksg-v54-form-grid,
    .bksg-v54-support-aside { grid-template-columns: 1fr; }
    .bksg-v54-form-grid .is-wide { grid-column: auto; }
}

@media (max-width: 620px) {
    .bksg-v53-view-suporte .bksg-v54-support-page-head { gap: 12px !important; padding-left: 14px !important; padding-right: 14px !important; }
    .bksg-v53-view-suporte .bksg-v54-support-page-head h1 { font-size: 31px !important; }
    .bksg-v53-view-suporte .bksg-v54-support-page-head p { font-size: 13px !important; }
    .bksg-v53-view-suporte .bksg-v5-app-content { padding-left: 14px !important; padding-right: 14px !important; }
    .bksg-v54-support-form-card,
    .bksg-v54-contact-card,
    .bksg-v54-faq-card { padding: 18px !important; }
    .bksg-v54-button { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .bksg-v53-view-suporte *,
    .bksg-v53-view-suporte *::before,
    .bksg-v53-view-suporte *::after { scroll-behavior: auto !important; transition: none !important; }
}
