/* Base de todos os modelos de site. Cores vêm do tom (variáveis no <html>). */
@font-face { font-family: "Gloock"; src: url(fontes/gloock.woff) format("woff"); font-display: swap; }
@font-face { font-family: "Big Shoulders"; src: url(fontes/bigshoulders.woff) format("woff"); font-weight: 600 900; font-display: swap; }
@font-face { font-family: "Archivo"; src: url(fontes/archivo.woff) format("woff"); font-weight: 400 700; font-stretch: 75% 100%; font-display: swap; }
@font-face { font-family: "Bodoni"; src: url(fontes/bodoni.woff) format("woff"); font-weight: 400 600; font-display: swap; }
@font-face { font-family: "Bodoni"; src: url(fontes/bodoni-italico.woff) format("woff"); font-weight: 400 600; font-style: italic; font-display: swap; }
@font-face { font-family: "Jost"; src: url(fontes/jost.woff) format("woff"); font-weight: 300 600; font-display: swap; }
@font-face { font-family: "Marcellus"; src: url(fontes/marcellus.woff) format("woff"); font-display: swap; }
@font-face { font-family: "Hanken"; src: url(fontes/hanken.woff) format("woff"); font-weight: 300 600; font-display: swap; }
@font-face { font-family: "Instrument"; src: url(fontes/instrument.woff) format("woff"); font-weight: 400 600; font-display: swap; }

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: 72px; }
body { margin: 0; background: var(--fundo); color: var(--tinta); -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
img { display: block; max-width: 100%; }
a { color: inherit; }
h1, h2, h3, p, ul, ol, figure, blockquote, address { margin: 0; padding: 0; }
ul, ol { list-style: none; }
address { font-style: normal; }
:focus-visible { outline: 2px solid var(--acento); outline-offset: 3px; }
.estrelas { color: var(--acento); letter-spacing: 1px; white-space: nowrap; }
.previa-faixa { position: sticky; top: 0; z-index: 90; background: #141517; color: #C7F135; font: 600 12px/1.4 system-ui, sans-serif; text-align: center; padding: 7px 16px; }
.credito { font: 500 12px/1.4 system-ui, sans-serif; text-decoration: none; opacity: .6; }
.credito:hover { opacity: 1; }
.credito b { font-weight: 800; letter-spacing: -.02em; }
.credito i { font-style: normal; color: var(--acento); }

/* barra de agendar no celular */
.barra-agendar { position: fixed; z-index: 80; left: 0; right: 0; bottom: 0; display: none; gap: 8px; padding: 10px max(12px, env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
  background: color-mix(in srgb, var(--fundo) 86%, transparent); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); border-top: 1px solid color-mix(in srgb, var(--tinta) 14%, transparent); }
.barra-agendar a { display: grid; place-items: center; min-height: 50px; text-decoration: none; font: 700 16px/1 system-ui, sans-serif; border-radius: 12px; }
.ba-principal { flex: 1; background: var(--acento); color: var(--sobre-acento); }
.ba-whats { width: 54px; background: color-mix(in srgb, var(--tinta) 10%, transparent); color: var(--tinta); }
@media (max-width: 760px) { .barra-agendar { display: flex; } body { padding-bottom: 76px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation: none !important; transition: none !important; } }
