/*
===============================================================================
 VASOART - AJUSTE FINO DO LAYOUT
 Referência visual: home original enviada em 02/09/2026
 Objetivo: aproximar cabeçalho, seções, cards, notícias e rodapé da referência.
 Escopo: SOMENTE frontend. Não altera banco, usuários, sessões ou administrador.
===============================================================================
*/

/* ---------- Base ---------- */
html,
body.site {
    overflow-x: hidden;
}

body.site {
    background: #fff !important;
    color: #333;
    font-size: 13px;
    line-height: 1.6;
}

body.site #sp-main-body {
    padding: 0 !important;
}

body.site #sp-main-body > .container,
body.site #sp-main-body > .container-fluid {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.site #sp-page-builder .page-content {
    margin: 0 !important;
    padding: 0 !important;
}

body.site #sp-page-builder .page-content .sppb-section {
    margin-top: 0 !important;
}

body.site .sppb-container {
    max-width: 1170px;
}

/* ---------- Cabeçalho ---------- */
body.site #sp-header {
    background: #fff !important;
    color: #111 !important;
    box-shadow: none !important;
    border-top: 5px solid #0958ac !important;
    min-height: 95px !important;
    height: 95px !important;
    box-sizing: border-box;
}
header.flex .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
    background-color: #fff;
    background-color: #fff;
}
body.site #sp-header > .container {
    max-width: 1170px;
}

body.site #sp-header .logo {
    height: 90px !important;
    min-height: 90px !important;
}

body.site #sp-header .logo h1 {
    height: 90px;
    vertical-align: middle;
}

body.site #sp-header .logo img.sp-default-logo {
    width: auto !important;
    height: auto !important;
    max-width: 120px !important;
    max-height: 82px !important;
}

body.site #sp-header #sp-menu {
    max-height: 90px !important;
}

body.site #sp-header #sp-menu .sp-column .sp-megamenu-parent > li > a,
body.site .sp-megamenu-parent > li > a {
    line-height: 90px !important;
    padding: 0 13px !important;
    color: #111 !important;
    font-size: 14px !important;
    font-weight: 200 !important;
    text-transform: none;
}

body.site #sp-header .sp-megamenu-parent > li.active > a,
body.site #sp-header .sp-megamenu-parent > li.current-item > a,
body.site #sp-header .sp-megamenu-parent > li:hover > a {
    color: #0958ac !important;
}

body.site #sp-header .sp-megamenu-parent .sp-dropdown {
    margin-top: -1px;
}

/* Mantém o comportamento compacto original ao rolar. */
body.site .sticky-wrapper.is-sticky #sp-header {
    min-height: 56px !important;
    height: 56px !important;
    border-top-width: 3px !important;
}

body.site .sticky-wrapper.is-sticky #sp-header .logo {
    height: 53px !important;
    min-height: 53px !important;
}

body.site .sticky-wrapper.is-sticky #sp-header .logo h1 {
    height: 53px;
}

body.site .sticky-wrapper.is-sticky #sp-header .logo img.sp-default-logo {
    max-height: 48px !important;
}

body.site .sticky-wrapper.is-sticky #sp-header #sp-menu .sp-column .sp-megamenu-parent > li > a {
    line-height: 53px !important;
}

/* ---------- Slider ---------- */
body.site #sp-slider,
body.site #sp-slider .container,
body.site #sp-slider .container-fluid,
body.site #sp-slider .row,
body.site #sp-slider .sp-column,
body.site #sp-slider .sp-module {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: none !important;
}

body.site #sp-slider .slider-pro {
    margin: 0 auto !important;
}

body.site #sp-slider .sp-image {
    object-fit: cover;
}

body.site #sp-slider .vasoart-slide-title {
    width: 100% !important;
    max-width: 1050px !important;
    padding: 0 30px !important;
    color: #fff !important;
    font-size: 52px !important;
    line-height: 1.08 !important;
    font-weight: 600 !important;
    letter-spacing: -1.1px !important;
    text-align: center !important;
    text-shadow: 0 2px 4px rgba(0,0,0,.38) !important;
    white-space: normal !important;
}

/* ---------- A Vasoart (primeira seção da Home) ---------- */
body.site #sp-page-builder .page-content > .sppb-section:first-child {
    padding-top: 36px !important;
    padding-bottom: 36px !important;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-row {
    display: flex;
    align-items: center;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-single-image {
    margin: 0;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-single-image img,
body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-image img {
    width: 100%;
    max-width: 555px;
    height: auto;
    display: block;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-text-block {
    padding-left: 8px;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-title {
    margin: 0 0 15px !important;
    padding: 0 0 9px !important;
    font-size: 19px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    color: #333 !important;
    position: relative;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-title:after {
    content: "";
    display: block;
    width: 62px;
    height: 1px;
    background: #8d8d8d;
    margin-top: 8px;
}

body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-text-block .sppb-addon-content {
    font-size: 13px;
    line-height: 1.65;
    color: #444;
}

/* ---------- Seções fotográficas ---------- */
body.site #sp-page-builder .sppb-section.elegancia,
body.site #sp-page-builder .sppb-section.vasoart-vietnamitas {
    background-size: cover !important;
    background-repeat: no-repeat !important;
    background-position: center center !important;
}

body.site #sp-page-builder .sppb-section.elegancia {
    padding-top: 112px !important;
    padding-bottom: 112px !important;
}

body.site #sp-page-builder .sppb-section.vasoart-vietnamitas {
    padding-top: 108px !important;
    padding-bottom: 108px !important;
}

body.site #sp-page-builder .sppb-section.elegancia .sppb-row,
body.site #sp-page-builder .sppb-section.vasoart-vietnamitas .sppb-row {
    max-width: 1170px;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.site #sp-page-builder .sppb-section.elegancia .sppb-addon-text-block.elegancia,
body.site #sp-page-builder .sppb-section.vasoart-vietnamitas .sppb-addon-text-block.elegancia {
    max-width: 1040px;
    margin: 0 auto !important;
    padding: 31px 42px 37px !important;
    background: rgba(0,0,0,.48) !important;
    color: #fff !important;
    text-align: center;
}

body.site #sp-page-builder .sppb-section.elegancia .sppb-addon-title,
body.site #sp-page-builder .sppb-section.vasoart-vietnamitas .sppb-addon-title {
    margin: 0 0 19px !important;
    color: #fff !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
}

body.site #sp-page-builder .sppb-section.elegancia .sppb-addon-content,
body.site #sp-page-builder .sppb-section.vasoart-vietnamitas .sppb-addon-content {
    color: #fff !important;
    font-size: 12.5px;
    line-height: 1.6;
}

body.site #sp-page-builder .vasoart-conheca {
    min-width: 82px;
    margin-top: 4px;
    padding: 8px 22px !important;
    border: 1px solid #0958ac !important;
    border-radius: 2px !important;
    background: #0958ac !important;
    color: #fff !important;
    font-size: 12px;
    line-height: 1.3;
    box-shadow: none !important;
}

body.site #sp-page-builder .vasoart-conheca:hover {
    background: #064987 !important;
    border-color: #064987 !important;
}

/* ---------- Títulos das áreas claras ---------- */
body.site #sp-page-builder .destaque .sppb-addon-title,
body.site #sp-page-builder .noticias .sppb-addon-title,
body.site #sp-page-builder .page-content > .sppb-section:last-child .sppb-addon-title {
    margin: 0 auto 28px !important;
    padding: 0 0 10px !important;
    color: #333 !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 400 !important;
    text-align: center !important;
    position: relative;
}

body.site #sp-page-builder .destaque .sppb-addon-title:after,
body.site #sp-page-builder .noticias .sppb-addon-title:after,
body.site #sp-page-builder .page-content > .sppb-section:last-child .sppb-addon-title:after {
    content: "";
    display: block;
    width: 0px;
    height: 1px;
    margin: 9px auto 0;
    background: #777;
}

/* ---------- Produtos em destaque ---------- */
body.site #sp-page-builder .destaque {
    padding: 28px 20px 36px !important;
    background: #fff !important;
}

body.site #sp-page-builder .destaque .nspArts {
    max-width: 1170px;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible;
}

body.site #sp-page-builder .destaque .nspArt {
    width: calc(20% - 10px) !important;
    margin: 0 5px !important;
    padding: 0 !important;
    border: 1px solid #0958ac !important;
    background: #fff !important;
    box-sizing: border-box;
    overflow: hidden;
}

body.site #sp-page-builder .destaque .nspArt .nspImageWrapper {
    width: 100% !important;
    height: 205px !important;
    margin: 0 !important;
    padding: 6px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #fff;
    box-sizing: border-box;
}

body.site #sp-page-builder .destaque .nspArt img.nspImage {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 193px !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

body.site #sp-page-builder .destaque .nspArt h4.nspHeader {
    min-height: 39px;
    margin: 0 !important;
    padding: 10px 6px 8px !important;
    background: #f6f6f6 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box;
}

body.site #sp-page-builder .destaque .nspArt h4.nspHeader a {
    color: #222 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
}

body.site #sp-page-builder .destaque .nspArt .readon,
body.site #sp-page-builder .destaque .nspArt .fright {
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-height: 34px;
    margin: 0 !important;
    padding: 9px 5px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #0958ac !important;
    color: #fff !important;
    font-size: 11px !important;
    line-height: 16px !important;
    text-align: center !important;
    box-sizing: border-box;
}

/* ---------- Lançamentos ---------- */
body.site #sp-page-builder .noticias {
    padding: 28px 15px 8px !important;
    background: #fff;
}

body.site #sp-page-builder .noticias .nspArts {
    max-width: 1110px;
    margin: 0 auto !important;
    padding: 0 !important;
    overflow: visible;
}

body.site #sp-page-builder .noticias .nspArt {
    width: calc(25% - 12px) !important;
    margin: 0 6px !important;
    padding: 0 !important;
    border: 1px solid #0958ac !important;
    background: #fff !important;
    box-sizing: border-box;
    overflow: hidden;
}

body.site #sp-page-builder .noticias .nspArt .nspImageWrapper {
    width: 100% !important;
    height: 218px !important;
    margin: 0 !important;
    padding: 7px !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #fff;
    box-sizing: border-box;
}

body.site #sp-page-builder .noticias .nspArt img.nspImage {
    width: 100% !important;
    max-width: 100% !important;
    height: 204px !important;
    object-fit: contain !important;
    margin: 0 auto !important;
}

body.site #sp-page-builder .noticias .nspArt h4.nspHeader {
    min-height: 39px;
    margin: 0 !important;
    padding: 10px 6px 8px !important;
    background: #f6f6f6 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    box-sizing: border-box;
}

body.site #sp-page-builder .noticias .nspArt h4.nspHeader a {
    color: #222 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
}

body.site #sp-page-builder .noticias .nspArt .readon,
body.site #sp-page-builder .noticias .nspArt .fright {
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-height: 34px;
    margin: 0 !important;
    padding: 9px 5px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #0958ac !important;
    color: #fff !important;
    font-size: 11px !important;
    line-height: 16px !important;
    text-align: center !important;
    box-sizing: border-box;
}

body.site #sp-page-builder .noticias .sppb-divider {
    margin-top: 27px !important;
}

/* ---------- Últimas News ---------- */
body.site #sp-page-builder .page-content > .sppb-section:last-child {
    padding: 26px 0 30px !important;
    background: #fff;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog {
    max-width: 1140px;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post {
    margin-bottom: 0 !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .latest-post-inner,
body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .latest-post-item {
    height: 100%;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .latest-post-inner {
    min-height: 380px;
    padding: 8px 8px 16px !important;
    border: 1px solid #0958ac !important;
    background: #fff !important;
    box-shadow: none !important;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .img-wrapper {
    height: 220px;
    margin: 0 0 12px !important;
    overflow: hidden;
    background: #f5f5f5;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .img-wrapper img.post-img {
    width: 100% !important;
    height: 220px !important;
    object-fit: cover !important;
    transform: none !important;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .img-wrapper:hover img.post-img {
    transform: none !important;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post h2.entry-title {
    min-height: 35px;
    margin: 4px 4px 10px !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    font-weight: 400 !important;
    text-align: center;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post h2.entry-title a {
    color: #0958ac !important;
}

body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post p.intro-text {
    margin: 0 5px !important;
    color: #555;
    font-size: 12px !important;
    line-height: 1.55 !important;
}

/* ---------- Rodapé principal ---------- */
body.site #sp-bottom,
body.site .vasoart-footer-main {
    background: #bdbdbd !important;
    color: #333 !important;
}

body.site #sp-bottom {
    padding: 43px 0 34px !important;
}

body.site #sp-bottom > .container {
    max-width: 1170px;
}

body.site #sp-bottom .sp-module {
    margin-bottom: 0;
}

body.site #sp-bottom .sp-module .sp-module-title {
    margin: 0 0 14px !important;
    padding: 0 0 8px !important;
    color: #222 !important;
    font-size: 14px !important;
    line-height: 1.25;
    font-weight: 500 !important;
    text-transform: none !important;
    position: relative;
}

body.site #sp-bottom .sp-module .sp-module-title:after {
    content: "";
    display: block;
    width: 58px;
    height: 1px;
    margin-top: 8px;
    background: #777;
}

body.site #sp-bottom p,
body.site #sp-bottom li,
body.site #sp-bottom a {
    color: #333 !important;
    font-size: 12px;
    line-height: 1.55;
}

body.site #sp-bottom a:hover {
    color: #0958ac !important;
}

body.site #sp-bottom1 ul.nav {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.site #sp-bottom1 ul.nav > li {
    border-bottom: 1px solid rgba(255,255,255,.30);
}

body.site #sp-bottom1 ul.nav > li > a {
    padding: 6px 0 !important;
    background: transparent !important;
}

body.site #sp-bottom1 ul.nav > li:first-child > a {
    padding-top: 0 !important;
}

body.site #sp-bottom2 .ba-form,
body.site #sp-bottom2 form {
    width: 100%;
}

body.site #sp-bottom2 input[type="text"],
body.site #sp-bottom2 input[type="email"],
body.site #sp-bottom2 .ba-form input {
    width: 100% !important;
    min-height: 34px !important;
    margin-bottom: 7px !important;
    padding: 7px 10px !important;
    border: 1px solid #d6d6d6 !important;
    border-radius: 0 !important;
    background: #fff !important;
    color: #555 !important;
    box-shadow: none !important;
    box-sizing: border-box;
}

body.site #sp-bottom2 button,
body.site #sp-bottom2 input[type="submit"],
body.site #sp-bottom2 .ba-btn-submit {
    width: 100% !important;
    min-height: 34px !important;
    padding: 7px 10px !important;
    border: 1px solid #0958ac !important;
    border-radius: 0 !important;
    background: #0958ac !important;
    color: #fff !important;
    font-size: 12px !important;
    box-shadow: none !important;
}

body.site #sp-bottom2 img[src*="facebook"] {
    width: 27px !important;
    height: 27px !important;
    margin: 0 !important;
}

body.site #sp-bottom3 .sp-module + .sp-module {
    margin-top: 14px;
}

body.site #sp-bottom3 p {
    margin: 0 0 6px;
}

/* ---------- Faixa azul inferior ---------- */
body.site #sp-footer,
body.site .vasoart-footer-bottom {
    background: #0958ac !important;
    color: #fff !important;
}

body.site #sp-footer {
    min-height: 44px;
    padding: 13px 0 !important;
    text-align: left !important;
    font-size: 11px !important;
    line-height: 18px;
}

body.site #sp-footer > .container {
    max-width: 1170px;
}

body.site #sp-footer p,
body.site #sp-footer a {
    margin: 0 !important;
    color: #fff !important;
    font-size: 11px !important;
}

body.site #sp-footer #sp-footer1 {
    text-align: left !important;
}

body.site #sp-footer #sp-footer2 {
    text-align: right !important;
}

/* ---------- Ajustes para notebook / tablet ---------- */
@media (max-width: 1199px) {
    body.site #sp-header .sp-megamenu-parent > li > a {
        padding-left: 10px !important;
        padding-right: 10px !important;
        font-size: 11px !important;
    }

    body.site #sp-slider .vasoart-slide-title {
        font-size: 45px !important;
    }

    body.site #sp-page-builder .destaque .nspArt .nspImageWrapper {
        height: 185px !important;
    }

    body.site #sp-page-builder .destaque .nspArt img.nspImage {
        height: 173px !important;
    }

    body.site #sp-page-builder .noticias .nspArt .nspImageWrapper {
        height: 195px !important;
    }

    body.site #sp-page-builder .noticias .nspArt img.nspImage {
        height: 181px !important;
    }
}

/* ---------- Tablet ---------- */
@media (max-width: 991px) {
    body.site #sp-slider .vasoart-slide-title {
        font-size: 36px !important;
        letter-spacing: -.5px !important;
    }

    body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-row {
        display: block;
    }

    body.site #sp-page-builder .page-content > .sppb-section:first-child .sppb-addon-text-block {
        padding: 22px 0 0;
    }

    body.site #sp-page-builder .destaque .nspArt,
    body.site #sp-page-builder .noticias .nspArt {
        width: calc(50% - 12px) !important;
        margin: 6px !important;
    }

    body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post {
        margin-bottom: 16px !important;
    }

    body.site #sp-bottom1,
    body.site #sp-bottom2,
    body.site #sp-bottom3 {
        margin-bottom: 28px;
    }
}

/* ---------- Celular ---------- */
@media (max-width: 767px) {
    body.site #sp-header {
        min-height: 70px !important;
        height: 70px !important;
        border-top-width: 4px !important;
    }

    body.site #sp-header .logo {
        height: 66px !important;
        min-height: 66px !important;
    }

    body.site #sp-header .logo h1 {
        height: 66px;
    }

    body.site #sp-header .logo img.sp-default-logo {
        max-height: 58px !important;
        max-width: 92px !important;
    }

    body.site #sp-slider .vasoart-slide-title {
        max-width: 100% !important;
        padding: 0 24px !important;
        font-size: 27px !important;
        line-height: 1.12 !important;
        letter-spacing: -.3px !important;
    }

    body.site #sp-page-builder .page-content > .sppb-section:first-child {
        padding: 24px 15px !important;
    }

    body.site #sp-page-builder .sppb-section.elegancia,
    body.site #sp-page-builder .sppb-section.vasoart-vietnamitas {
        padding-top: 55px !important;
        padding-bottom: 55px !important;
    }

    body.site #sp-page-builder .sppb-section.elegancia .sppb-addon-text-block.elegancia,
    body.site #sp-page-builder .sppb-section.vasoart-vietnamitas .sppb-addon-text-block.elegancia {
        margin: 0 14px !important;
        padding: 24px 18px 28px !important;
    }

    body.site #sp-page-builder .destaque,
    body.site #sp-page-builder .noticias {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    body.site #sp-page-builder .destaque .nspArt,
    body.site #sp-page-builder .noticias .nspArt {
        width: calc(100% - 10px) !important;
        max-width: 330px;
        margin: 8px auto !important;
        float: none !important;
    }

    body.site #sp-page-builder .destaque .nspArt .nspImageWrapper,
    body.site #sp-page-builder .noticias .nspArt .nspImageWrapper {
        height: 235px !important;
    }

    body.site #sp-page-builder .destaque .nspArt img.nspImage,
    body.site #sp-page-builder .noticias .nspArt img.nspImage {
        height: 221px !important;
    }

    body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post {
        width: 100% !important;
        padding: 0 15px !important;
    }

    body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .latest-post-inner {
        min-height: 0;
    }

    body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .img-wrapper,
    body.site #sp-page-builder .sppb-addon-latest-posts.blog .latest-post .img-wrapper img.post-img {
        height: auto !important;
    }

    body.site #sp-bottom {
        padding: 32px 20px 18px !important;
    }

    body.site #sp-footer,
    body.site #sp-footer #sp-footer1,
    body.site #sp-footer #sp-footer2 {
        text-align: center !important;
    }

    body.site #sp-footer #sp-footer2 {
        margin-top: 4px;
    }
}


/* ==========================================================================
   VASOART - CORREÇÃO DA BORDA PRETA AO CLICAR
   Remove o outline preto criado por foco do navegador em links, menus,
   botões e elementos clicáveis. Mantém indicação discreta para teclado.
   ========================================================================== */

body.site a:focus,
body.site button:focus,
body.site input:focus,
body.site select:focus,
body.site textarea:focus,
body.site [tabindex]:focus,
body.site .sp-megamenu-parent a:focus,
body.site .sp-megamenu-parent li:focus,
body.site .sppb-btn:focus,
body.site .btn:focus,
body.site .readon:focus {
    outline: none !important;
    box-shadow: none !important;
}

body.site a:active,
body.site button:active,
body.site .sp-megamenu-parent a:active,
body.site .sppb-btn:active,
body.site .btn:active,
body.site .readon:active {
    outline: none !important;
    box-shadow: none !important;
}

/* Firefox antigo */
body.site button::-moz-focus-inner,
body.site input[type="button"]::-moz-focus-inner,
body.site input[type="submit"]::-moz-focus-inner {
    border: 0 !important;
    padding: 0;
}

/* Acessibilidade: ao navegar pelo teclado, usa destaque azul discreto
   em navegadores que suportam :focus-visible, em vez da borda preta. */
@supports selector(:focus-visible) {
    body.site a:focus-visible,
    body.site button:focus-visible,
    body.site input:focus-visible,
    body.site select:focus-visible,
    body.site textarea:focus-visible,
    body.site [tabindex]:focus-visible {
        outline: 2px solid rgba(9, 88, 172, .55) !important;
        outline-offset: 2px !important;
        box-shadow: none !important;
    }

    body.site a:focus:not(:focus-visible),
    body.site button:focus:not(:focus-visible),
    body.site input:focus:not(:focus-visible),
    body.site select:focus:not(:focus-visible),
    body.site textarea:focus:not(:focus-visible),
    body.site [tabindex]:focus:not(:focus-visible) {
        outline: none !important;
        box-shadow: none !important;
    }
}
