/* Vipselect fixes 2026-10-24 - colar em Aparencia > Personalizar > CSS adicional */

/* 4. Fontes: o tema registra @font-face com family "DMSans" (sem espaco), mas .vs-home pedia "DM Sans" -> nunca casava.
   Usa o nome que existe. Texto minimo 14px. */
div.vs-home{font-family:DMSans,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:16px}
.vs-home .vs-kicker,.vs-home .vs-nav strong{font-size:14px}
.vs-home .vs-nav ul,.vs-home .vs-note{font-size:16px}

/* 1. P1 CTA: ".vs-home a{color:inherit}" (especificidade 0,1,1) vencia ".vs-btn" e pintava texto #2C2A29 sobre fundo #2C2A29.
   #fff sobre #2C2A29 = ~14.6:1; #fff sobre #000 = 21:1 (AAA). */
.vs-home a.vs-btn,.vs-home a.vs-btn:link,.vs-home a.vs-btn:visited{background:#2C2A29;color:#fff;border:1px solid #2C2A29;min-height:44px;display:inline-flex;align-items:center}
.vs-home a.vs-btn:hover,.vs-home a.vs-btn:active{background:#000;color:#fff;border-color:#000}
.vs-home a.vs-btn:focus-visible{background:#000;color:#fff;outline:3px solid #D4A373;outline-offset:3px}
/* botao secundario (contorno) */
.vs-home a.vs-btn.vs-ghost,.vs-home a.vs-btn.vs-ghost:visited{background:transparent;color:#2C2A29;border-color:#2C2A29}
.vs-home a.vs-btn.vs-ghost:hover,.vs-home a.vs-btn.vs-ghost:focus-visible{background:#2C2A29;color:#fff}

/* 3. Hero: o post-content e "is-layout-constrained" com --wp--style--global--content-size:700px. Libera o bloco .vs-home. */
.wp-block-post-content.is-layout-constrained > .vs-home{max-width:none!important;width:100%;margin-left:0!important;margin-right:0!important}
.wp-block-post-content.has-global-padding:has(> .vs-home){padding-left:0!important;padding-right:0!important}
.vs-home .vs-hero{width:100%;padding:clamp(28px,6vw,96px) 0 clamp(48px,7vw,112px)}
.vs-home .vs-hero h1{max-width:18ch}
.vs-home .vs-lead{max-width:52ch}
@media (min-width:782px){.vs-home .vs-grid{grid-template-columns:repeat(3,1fr)}}

/* 2. Menu mobile (com mobile-menu.js) - alvos de toque >= 44px */
.vs-home .vs-nav{position:relative;flex-wrap:nowrap}
.vs-home .vs-nav ul a{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:0 10px}
.vs-menu-toggle{display:none;align-items:center;justify-content:center;width:48px;height:48px;padding:0;background:transparent;border:1px solid rgba(44,42,41,.25);border-radius:8px;color:#2C2A29;cursor:pointer}
.vs-menu-toggle:focus-visible{outline:3px solid #D4A373;outline-offset:2px}
.vs-menu-toggle .vs-bars,.vs-menu-toggle .vs-bars::before,.vs-menu-toggle .vs-bars::after{display:block;width:22px;height:2px;background:currentColor;position:relative;transition:transform .2s}
.vs-menu-toggle .vs-bars::before,.vs-menu-toggle .vs-bars::after{content:"";position:absolute;left:0}
.vs-menu-toggle .vs-bars::before{top:-7px}.vs-menu-toggle .vs-bars::after{top:7px}
.vs-menu-toggle[aria-expanded="true"] .vs-bars{background:transparent}
.vs-menu-toggle[aria-expanded="true"] .vs-bars::before{transform:translateY(7px) rotate(45deg)}
.vs-menu-toggle[aria-expanded="true"] .vs-bars::after{transform:translateY(-7px) rotate(-45deg)}
.vs-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:781px){
  .vs-nav.vs-js .vs-menu-toggle{display:inline-flex}
  .vs-nav.vs-js ul{display:none;position:absolute;top:100%;left:0;right:0;z-index:50;flex-direction:column;gap:0;background:#F7F3EC;border:1px solid rgba(44,42,41,.12);border-radius:12px;padding:8px;box-shadow:0 8px 24px rgba(0,0,0,.08)}
  .vs-nav.vs-js.is-open ul{display:flex}
  .vs-nav.vs-js ul a{display:flex;width:100%;min-height:48px;padding:0 12px;color:#2C2A29}
}
@media (prefers-reduced-motion:reduce){.vs-menu-toggle .vs-bars,.vs-menu-toggle .vs-bars::before,.vs-menu-toggle .vs-bars::after{transition:none}}
.vs-menu-toggle .vs-sr{font-size:14px}
