/* ============ BASE ============ */
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;min-width:0}
html{overflow-x:hidden;-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15.5px;line-height:1.6;
  overflow-x:hidden;-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;
  min-height:100svh;transition:background var(--t) var(--ease),color var(--t) var(--ease);
}
img,svg,video{max-width:100%;display:block}
button,input,select,textarea{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
::selection{background:var(--ac);color:var(--ac-ink)}
::-webkit-scrollbar{width:9px;height:9px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:var(--line2);border-radius:9px;border:2px solid var(--bg)}
:focus-visible{outline:2px solid var(--ac);outline-offset:2px;border-radius:var(--r-xs)}
[hidden]{display:none!important}

h1,h2,h3,h4{letter-spacing:-.022em;line-height:1.22;font-weight:600}
h1{font-size:clamp(23px,5vw,30px)}
h2{font-size:clamp(19px,4vw,23px)}
h3{font-size:17px}
h4{font-size:15.5px}
.mut{color:var(--ink3)}
.mut2{color:var(--ink4)}
.tit-sec{font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--ink4)}
.num-g{font-size:clamp(28px,7vw,38px);font-weight:700;letter-spacing:-.035em;line-height:1}

/* utilidades curtas */
.row{display:flex;align-items:center;gap:var(--s3)}
.row-w{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}
.col{display:flex;flex-direction:column}
.sp{flex:1}
.gap1{gap:var(--s1)}.gap2{gap:var(--s2)}.gap4{gap:var(--s4)}.gap5{gap:var(--s5)}
.mt2{margin-top:var(--s2)}.mt3{margin-top:var(--s3)}.mt4{margin-top:var(--s4)}
.mt5{margin-top:var(--s5)}.mt6{margin-top:var(--s6)}.mt7{margin-top:var(--s7)}
.mb3{margin-bottom:var(--s3)}.mb4{margin-bottom:var(--s4)}.mb5{margin-bottom:var(--s5)}.mb6{margin-bottom:var(--s6)}
.ctr{text-align:center}
.tr{text-align:right}
.trunc{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.fs12{font-size:12.5px}.fs13{font-size:13.5px}.fs14{font-size:14.5px}.fs17{font-size:17px}
.w100{width:100%}
.grid{display:grid;gap:var(--s3)}
.g2{grid-template-columns:1fr}
.g3{grid-template-columns:repeat(2,1fr)}
.g4{grid-template-columns:repeat(2,1fr)}
@media(min-width:700px){ .g2{grid-template-columns:1fr 1fr} .g3{grid-template-columns:repeat(3,1fr)} }
@media(min-width:1000px){ .g4{grid-template-columns:repeat(4,1fr)} }

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
