/* Maná Mercado Natural · estilos (sem dependências). Feito pela GoEasy IT. */

:root {
  --papel: #f6f1e4;
  --papel-2: #efe6d1;
  --papel-3: #e4d8bd;
  --kraft: #c9a878;
  --tinta: #1b2a22;
  --tinta-2: #46574c;
  --tinta-3: #6c7a70;
  --mata: #1c3a2d;
  --mata-2: #244a3a;
  --mata-3: #2f5a48;
  --musgo: #3f7459;
  --folha: #49a184;
  --broto: #d3e8da;
  --mostarda: #d4b12a;
  --mostarda-2: #e8c84a;
  --madeira: #8a5d3b;
  --barro: #c2673d;
  --branco: #fffdf6;

  --f-display: "Fraunces", Georgia, "Times New Roman", serif;
  --f-texto: "DM Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --f-mao: "Caveat", "Segoe Print", "Comic Sans MS", cursive;

  --raio: 22px;
  --raio-g: 34px;
  --sombra: 0 1px 2px rgba(27, 42, 34, .06), 0 10px 28px -12px rgba(27, 42, 34, .28);
  --sombra-g: 0 2px 6px rgba(27, 42, 34, .06), 0 30px 70px -28px rgba(27, 42, 34, .45);
  --ease: cubic-bezier(.22, 1, .36, 1);
  --mola: cubic-bezier(.34, 1.56, .64, 1);
  --nav-h: 74px;
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--nav-h) + 16px); }
body {
  margin: 0; background: var(--papel); color: var(--tinta);
  font: 400 17px/1.62 var(--f-texto); overflow-x: hidden;
  -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility;
}
img, svg, video, canvas { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; }
input { font: inherit; color: inherit; }
h1, h2, h3, h4 { margin: 0; font-weight: 500; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
::selection { background: var(--mostarda-2); color: var(--tinta); }
:focus-visible { outline: 3px solid var(--mostarda); outline-offset: 3px; border-radius: 8px; }
.ic { width: 1.25em; height: 1.25em; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: fixed; left: 16px; top: -60px; z-index: 300; background: var(--mata); color: var(--papel); padding: 10px 16px; border-radius: 12px; transition: top .2s; }
.skip:focus { top: 12px; }
.wrap { width: min(1200px, 100% - 40px); margin-inline: auto; }

/* papel com textura (grão) */
body::after {
  content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 400; opacity: .085; mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .28 0 0 0 0 .18 0 0 0 1.1 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- Tipografia ---------- */
.display { font-family: var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: -.02em; }
.titulo {
  font: 400 clamp(2.1rem, 4.6vw, 3.7rem)/1.04 var(--f-display);
  font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: -.025em; text-wrap: balance;
}
.titulo em, .hero__title em { font-style: italic; color: var(--musgo); font-weight: 400; }
.chapeu {
  display: inline-flex; align-items: center; gap: .5em; font: 600 .78rem/1 var(--f-texto);
  letter-spacing: .16em; text-transform: uppercase; color: var(--musgo); margin-bottom: 18px;
}
.chapeu svg { width: 18px; height: 18px; }
.lead { font-size: clamp(1.02rem, 1.4vw, 1.16rem); color: var(--tinta-2); max-width: 60ch; text-wrap: pretty; }
.mao { font-family: var(--f-mao); font-weight: 600; }
.cab { margin-bottom: clamp(36px, 5vw, 64px); }
.cab .lead { margin-top: 18px; }
.cab--centro { text-align: center; }
.cab--centro .lead { margin-inline: auto; }
.cab--linha { display: flex; justify-content: space-between; align-items: end; gap: 24px; flex-wrap: wrap; }

/* sublinhado desenhado à mão */
.risco { position: relative; white-space: nowrap; }
.risco svg { position: absolute; left: -2%; bottom: -.18em; width: 104%; height: .42em; overflow: visible; }
.risco path { fill: none; stroke: var(--mostarda); stroke-width: 6; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; transition: stroke-dashoffset 1.1s var(--ease) .35s; }
.is-in .risco path, .risco.is-in path { stroke-dashoffset: 0; }

/* ---------- Botões ---------- */
.btn {
  --bg: var(--mata); --fg: var(--papel); --bd: transparent;
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: .6em;
  padding: 15px 26px; border-radius: 999px; background: var(--bg); color: var(--fg); border: 1.5px solid var(--bd);
  font-weight: 600; font-size: 1rem; line-height: 1.1; overflow: hidden; isolation: isolate;
  transition: transform .35s var(--ease), box-shadow .35s var(--ease), color .35s;
  will-change: transform;
}
.btn::before {
  content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; background: var(--mostarda-2);
  transform: translateY(101%); transition: transform .45s var(--ease);
}
.btn:hover::before { transform: translateY(0); }
.btn:hover { color: var(--tinta); box-shadow: 0 12px 30px -12px rgba(27, 42, 34, .5); }
.btn .ic { transition: transform .35s var(--ease); }
.btn:hover .ic--seta { transform: translateX(4px); }
.btn--verde { --bg: var(--musgo); }
.btn--wa { --bg: #1f8a52; }
.btn--claro { --bg: transparent; --fg: var(--tinta); --bd: rgba(27, 42, 34, .22); }
.btn--claro::before { background: var(--mata); }
.btn--claro:hover { color: var(--papel); }
.btn--papel { --bg: var(--papel); --fg: var(--tinta); }
.btn--contorno-claro { --bg: transparent; --fg: var(--papel); --bd: rgba(246, 241, 228, .35); }
.btn--sm { padding: 11px 18px; font-size: .93rem; }
.link-seta { display: inline-flex; align-items: center; gap: .45em; font-weight: 600; color: var(--musgo); border-bottom: 1.5px solid currentColor; padding-bottom: 2px; }
.link-seta .ic { transition: transform .3s var(--ease); }
.link-seta:hover .ic { transform: translateX(4px); }

/* ---------- Abertura (brotar) ---------- */
.brotar {
  position: fixed; inset: 0; z-index: 500; display: grid; place-items: center; background: var(--papel);
  transition: clip-path 1s var(--ease), visibility 0s 1s;
  clip-path: ellipse(150% 150% at 50% 0%);
}
.brotar.is-done { clip-path: ellipse(150% 0% at 50% 0%); visibility: hidden; }
.brotar__logo { width: min(320px, 70vw); clip-path: inset(0 100% 0 0); animation: brotarLogo 1s var(--ease) .15s forwards; }
.brotar__ramo { width: min(220px, 50vw); margin: 14px auto 0; }
.brotar__ramo path { fill: none; stroke: var(--folha); stroke-width: 2.2; stroke-linecap: round; stroke-dasharray: 1; stroke-dashoffset: 1; animation: tracar 1.1s var(--ease) .25s forwards; }
.brotar__ramo .f { fill: var(--folha); stroke: none; opacity: 0; transform-box: fill-box; transform-origin: 0 100%; transform: scale(0); animation: folhaNasce .5s var(--mola) forwards; }
@keyframes brotarLogo { to { clip-path: inset(0 0 0 0); } }
@keyframes tracar { to { stroke-dashoffset: 0; } }
@keyframes folhaNasce { to { opacity: 1; transform: scale(1); } }
html:not(.js) .brotar { display: none; }

/* ---------- Navegação ---------- */
.nav {
  position: fixed; inset: 0 0 auto; z-index: 100; height: var(--nav-h);
  transition: background .4s, box-shadow .4s, transform .45s var(--ease);
}
.nav.is-solid { background: rgba(246, 241, 228, .86); backdrop-filter: blur(14px) saturate(1.3); -webkit-backdrop-filter: blur(14px) saturate(1.3); box-shadow: 0 1px 0 rgba(27, 42, 34, .08); }
.nav.is-hidden { transform: translateY(-100%); }
.nav__in { height: 100%; display: flex; align-items: center; gap: 28px; }
.nav__logo img { width: 116px; height: auto; }
.nav__links { display: flex; gap: 6px; margin-left: auto; }
.nav__links a { position: relative; padding: 8px 14px; border-radius: 999px; font-weight: 500; font-size: .97rem; color: var(--tinta-2); transition: color .25s, background .25s; }
.nav__links a:hover, .nav__links a.is-active { color: var(--tinta); background: rgba(63, 116, 89, .1); }
.nav__cta { margin-left: 8px; }
.nav__burger { display: none; margin-left: auto; width: 46px; height: 46px; border-radius: 50%; background: var(--mata); color: var(--papel); place-items: center; }
.nav__burger .ic { width: 22px; height: 22px; }
.progresso { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; transform-origin: 0 50%; transform: scaleX(0); background: linear-gradient(90deg, var(--folha), var(--mostarda)); }

.menu {
  position: fixed; inset: 0; z-index: 150; background: var(--mata); color: var(--papel);
  display: flex; flex-direction: column; padding: calc(var(--nav-h) + 24px) 28px 32px;
  clip-path: circle(0 at calc(100% - 43px) 37px); transition: clip-path .7s var(--ease); visibility: hidden;
}
.menu.is-open { clip-path: circle(150% at calc(100% - 43px) 37px); visibility: visible; }
.menu a.menu__item { font: 400 2.3rem/1.15 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; padding: 10px 0; border-bottom: 1px solid rgba(246, 241, 228, .12); display: flex; justify-content: space-between; align-items: center; opacity: 0; transform: translateY(18px); transition: opacity .5s, transform .5s var(--ease); }
.menu.is-open a.menu__item { opacity: 1; transform: none; }
.menu.is-open a.menu__item:nth-child(2) { transition-delay: .06s; }
.menu.is-open a.menu__item:nth-child(3) { transition-delay: .12s; }
.menu.is-open a.menu__item:nth-child(4) { transition-delay: .18s; }
.menu.is-open a.menu__item:nth-child(5) { transition-delay: .24s; }
.menu__pe { margin-top: auto; display: grid; gap: 12px; }
.menu__pe .btn { width: 100%; }
.menu__folhas { position: absolute; right: -40px; bottom: 90px; width: 260px; opacity: .14; pointer-events: none; }
.nav.menu-aberto .nav__logo img { filter: brightness(0) invert(1) sepia(.2); }
.nav.menu-aberto { background: transparent; box-shadow: none; backdrop-filter: none; }

@media (max-width: 980px) {
  .nav__links, .nav__cta { display: none; }
  .nav__burger { display: grid; }
}

/* ---------- Hero ---------- */
.hero {
  position: relative; min-height: 100svh; display: flex; align-items: center; overflow: hidden;
  padding: calc(var(--nav-h) + 36px) 0 130px;
  background:
    radial-gradient(900px 560px at 88% 8%, rgba(73, 161, 132, .2), transparent 62%),
    radial-gradient(760px 520px at -6% 96%, rgba(212, 177, 42, .2), transparent 60%),
    var(--papel);
}
.hero__folhas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.hero__grid { position: relative; display: grid; grid-template-columns: 1.06fr .94fr; gap: clamp(32px, 5vw, 72px); align-items: center; }
.status {
  display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px 8px 12px; border-radius: 999px;
  background: rgba(255, 253, 246, .75); border: 1px solid rgba(27, 42, 34, .1); font-size: .9rem; color: var(--tinta-2);
  backdrop-filter: blur(6px);
}
.status b { color: var(--tinta); font-weight: 600; }
.status i { width: 9px; height: 9px; border-radius: 50%; background: var(--tinta-3); position: relative; }
.status.is-aberto i { background: #2fa565; }
.status.is-aberto i::after { content: ""; position: absolute; inset: -5px; border-radius: 50%; border: 2px solid #2fa565; animation: pulso 2s infinite; }
@keyframes pulso { from { transform: scale(.5); opacity: 1; } to { transform: scale(1.6); opacity: 0; } }
.hero__title {
  font: 400 clamp(2.75rem, 6.5vw, 5.5rem)/.98 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1;
  letter-spacing: -.03em; margin: 22px 0 18px;
}
.linha { display: block; overflow: hidden; padding-bottom: .06em; margin-bottom: -.06em; }
.linha > span { display: inline-block; transition: transform 1.1s var(--ease); }
.js .linha > span { transform: translateY(105%); }
.js .is-pronto .linha > span { transform: none; }
.is-pronto .linha:nth-child(2) > span { transition-delay: .09s; }
.is-pronto .linha:nth-child(3) > span { transition-delay: .18s; }
.hero__rot { font: 400 clamp(1.25rem, 2.3vw, 1.75rem)/1.3 var(--f-display); font-variation-settings: "SOFT" 100; color: var(--tinta-2); margin-bottom: 20px; }
.rot { display: inline-flex; color: var(--madeira); font-style: italic; position: relative; }
.rot .l { display: inline-block; white-space: pre; transition: transform .6s var(--mola), opacity .45s, filter .45s; }
.rot .l.sai { transform: translateY(-.7em) rotate(-8deg); opacity: 0; filter: blur(4px); }
.rot .l.entra { transform: translateY(.8em) scale(.6); opacity: 0; filter: blur(4px); }
.hero__lead { font-size: clamp(1.02rem, 1.35vw, 1.15rem); color: var(--tinta-2); max-width: 46ch; }
.hero__ctas { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.nota-google { display: inline-flex; align-items: center; gap: 12px; margin-top: 30px; font-size: .92rem; color: var(--tinta-2); }
.nota-google b { font: 600 1.35rem/1 var(--f-display); color: var(--tinta); }
.estrelas { display: inline-flex; gap: 2px; color: var(--mostarda); }
.estrelas svg { width: 16px; height: 16px; fill: currentColor; }

.hero__media { position: relative; height: min(640px, 72vh); min-height: 460px; }
.arco { position: absolute; margin: 0; overflow: hidden; border-radius: 999px 999px 30px 30px; box-shadow: var(--sombra-g); background: var(--papel-3); }
.arco img { width: 100%; height: 118%; object-fit: cover; will-change: transform; }
.arco--g { right: 4%; top: 0; width: 66%; height: 92%; border: 8px solid var(--branco); }
.arco--p { left: 0; bottom: 0; width: 40%; height: 50%; border: 7px solid var(--branco); border-radius: 30px 30px 999px 999px; }
.arco--p img { object-position: 50% 30%; }
.arco--g img { object-position: 50% 40%; }
.selo { position: absolute; left: 14%; top: 6%; width: 150px; height: 150px; z-index: 2; }
.selo img { position: absolute; inset: 26px; width: calc(100% - 52px); height: calc(100% - 52px); border-radius: 50%; box-shadow: 0 10px 30px -10px rgba(0, 0, 0, .45); }
.selo svg { position: absolute; inset: 0; width: 100%; height: 100%; animation: girar 22s linear infinite; }
.selo text { font: 600 12.2px var(--f-texto); letter-spacing: .26em; text-transform: uppercase; fill: var(--mata); }
@keyframes girar { to { transform: rotate(360deg); } }
.adesivo {
  position: absolute; z-index: 3; background: var(--branco); border-radius: 18px; padding: 12px 16px; box-shadow: var(--sombra);
  display: flex; align-items: center; gap: 12px; font-size: .88rem; line-height: 1.25; color: var(--tinta-2);
  animation: flutuar 6s ease-in-out infinite;
}
.adesivo b { display: block; font: 600 1.15rem/1.1 var(--f-display); color: var(--tinta); }
.adesivo__ic { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; background: var(--broto); color: var(--musgo); }
.adesivo--1 { right: 0; bottom: 14%; }
.adesivo--2 { left: 34%; bottom: -2%; animation-delay: -3s; background: var(--mostarda-2); color: var(--tinta); }
.adesivo--2 .adesivo__ic { background: rgba(255, 255, 255, .5); color: var(--tinta); }
@keyframes flutuar { 50% { transform: translateY(-10px) rotate(-1.5deg); } }
.hero__onda { position: absolute; left: 0; right: 0; bottom: -1px; width: 100%; height: 70px; color: var(--mostarda); }
.rolar { position: absolute; left: 50%; bottom: 92px; transform: translateX(-50%); display: grid; justify-items: center; gap: 6px; font: 600 .7rem/1 var(--f-texto); letter-spacing: .2em; text-transform: uppercase; color: var(--tinta-3); }
.rolar span { width: 22px; height: 34px; border: 1.5px solid currentColor; border-radius: 12px; position: relative; }
.rolar span::after { content: ""; position: absolute; left: 50%; top: 7px; width: 3px; height: 7px; margin-left: -1.5px; border-radius: 2px; background: currentColor; animation: rolar 1.8s infinite; }
@keyframes rolar { 60% { transform: translateY(9px); opacity: 0; } 100% { opacity: 0; } }

@media (max-width: 900px) {
  .hero { min-height: auto; padding-bottom: 110px; }
  .hero__grid { grid-template-columns: 1fr; }
  .hero__media { height: 480px; min-height: 0; max-width: 520px; width: 100%; margin-inline: auto; }
  .rolar { display: none; }
}
@media (max-width: 520px) {
  .hero__media { height: 420px; }
  .selo { width: 116px; height: 116px; left: 2%; top: 2%; }
  .selo img { inset: 20px; width: calc(100% - 40px); height: calc(100% - 40px); }
  .selo text { font-size: 15px; letter-spacing: .2em; }
  .arco--g { width: 72%; right: 0; }
  .arco--p { width: 44%; }
  .adesivo { padding: 10px 12px; font-size: .8rem; }
  .adesivo__ic { width: 34px; height: 34px; }
  .adesivo--2 { left: 30%; }
  .hero__ctas .btn { flex: 1 1 100%; }
}

/* ---------- Faixa (letreiro) ---------- */
.faixa { position: relative; background: var(--mostarda); color: var(--tinta); overflow: hidden; padding: 18px 0; transform: skewY(var(--incl, 0deg)); transition: transform .5s var(--ease); }
.faixa__trilho { display: flex; width: max-content; animation: letreiro 38s linear infinite; }
.faixa__trilho > div { display: flex; align-items: center; gap: 28px; padding-right: 28px; }
.faixa span { font: 400 clamp(1.4rem, 2.6vw, 2.1rem)/1 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; font-style: italic; white-space: nowrap; }
.faixa svg { width: 26px; height: 26px; color: var(--mata); flex: none; }
.faixa:hover .faixa__trilho { animation-play-state: paused; }
@keyframes letreiro { to { transform: translateX(-50%); } }

/* ---------- Seções ---------- */
.sec { position: relative; padding: clamp(84px, 11vw, 150px) 0; }
.sec--linho { background: var(--papel-2); }
.sec--escura { background: var(--mata); color: var(--papel); }
.sec--escura .chapeu { color: var(--mostarda-2); }
.sec--escura .lead { color: rgba(246, 241, 228, .74); }
.sec--escura .titulo em { color: var(--mostarda-2); }

/* revelar ao rolar */
.js [data-reveal] { opacity: 0; transform: translateY(34px); transition: opacity .9s var(--ease) var(--d, 0s), transform .9s var(--ease) var(--d, 0s); }
.js [data-reveal].is-in { opacity: 1; transform: none; }
.js [data-reveal="esq"] { transform: translateX(-34px); }
.js [data-reveal="zoom"] { transform: scale(.94); }

/* ---------- Sobre / M.A.N.Á ---------- */
.sobre__grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(36px, 6vw, 90px); align-items: center; }
.sigla { display: grid; gap: 4px; }
.sigla__item { display: flex; align-items: baseline; gap: 0; font: 400 clamp(3rem, 8vw, 6.4rem)/.95 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: -.03em; }
.sigla__item b { font-weight: 500; color: var(--musgo); width: 1.05em; flex: none; }
.sigla__item:nth-child(2) b, .sigla__item:nth-child(4) b { color: var(--mostarda); }
.sigla__item span { display: inline-block; color: var(--tinta); font-style: italic; font-size: .5em; clip-path: inset(0 100% 0 0); transition: clip-path 1s var(--ease); white-space: nowrap; }
.sigla.is-in .sigla__item span { clip-path: inset(0 -5% 0 0); }
.sigla.is-in .sigla__item:nth-child(2) span { transition-delay: .25s; }
.sigla.is-in .sigla__item:nth-child(3) span { transition-delay: .5s; }
.sigla.is-in .sigla__item:nth-child(4) span { transition-delay: .75s; }
.sobre__txt .lead + .lead { margin-top: 16px; }
.sobre__txt .mao { display: block; font-size: 1.7rem; color: var(--madeira); margin-top: 22px; transform: rotate(-2deg); }
@media (max-width: 860px) { .sobre__grid { grid-template-columns: 1fr; } }

/* ---------- Dietas (bento) ---------- */
.dietas { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; }
.dieta {
  --c: var(--broto); --c2: var(--musgo); --mx: 50%; --my: 50%;
  grid-column: span 2; position: relative; display: flex; flex-direction: column; gap: 12px; min-height: 290px;
  padding: 28px; border-radius: var(--raio-g); background: var(--c); overflow: hidden; isolation: isolate;
  transform-style: preserve-3d; transition: transform .5s var(--ease), box-shadow .5s var(--ease);
}
.dieta:nth-child(4), .dieta:nth-child(5) { grid-column: span 3; }
.dieta::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(420px circle at var(--mx) var(--my), rgba(255, 255, 255, .55), transparent 45%); opacity: 0; transition: opacity .4s; }
.dieta:hover { box-shadow: var(--sombra-g); }
.dieta:hover::before { opacity: 1; }
.dieta__ic { width: 62px; height: 62px; border-radius: 20px; display: grid; place-items: center; background: rgba(255, 255, 255, .6); color: var(--c2); }
.dieta__ic .ic { width: 32px; height: 32px; stroke-width: 1.6; }
.dieta h3 { font: 400 2rem/1.05 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; margin-top: auto; }
.dieta p { color: var(--tinta-2); font-size: .98rem; max-width: 36ch; }
.dieta__n { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; font-size: .92rem; color: var(--c2); }
.dieta__n b { font: 600 1.2rem/1 var(--f-display); }
.dieta__seta { position: absolute; right: 24px; top: 24px; width: 46px; height: 46px; border-radius: 50%; background: var(--tinta); color: var(--papel); display: grid; place-items: center; transform: rotate(-45deg) scale(.85); transition: transform .45s var(--mola); }
.dieta:hover .dieta__seta { transform: rotate(0) scale(1); }
.dieta__folha { position: absolute; right: -30px; bottom: -40px; width: 190px; opacity: .14; color: var(--c2); z-index: -1; transition: transform .8s var(--ease); }
.dieta:hover .dieta__folha { transform: rotate(-12deg) scale(1.08); }
.dieta--vegano { --c: #d6eadb; --c2: #2f7a55; }
.dieta--gluten { --c: #f3e3a8; --c2: #8a6a0c; }
.dieta--lactose { --c: #e0ebe8; --c2: #3d6b77; }
.dieta--acucar { --c: #f2d7c4; --c2: #a24f2a; }
.dieta--organico { --c: #e2e7c8; --c2: #5b6b1f; }
@media (max-width: 980px) { .dieta, .dieta:nth-child(4), .dieta:nth-child(5) { grid-column: span 3; } .dieta:nth-child(5) { grid-column: span 6; } }
@media (max-width: 600px) { .dietas { grid-template-columns: 1fr; } .dieta, .dieta:nth-child(4), .dieta:nth-child(5) { grid-column: auto; min-height: 240px; } }

/* ---------- Missão (lousa) ---------- */
.missao { position: relative; height: 230vh; background: var(--mata); color: var(--papel); }
.missao__fixo { position: sticky; top: 0; height: 100vh; height: 100svh; display: grid; place-items: center; overflow: hidden; }
.missao__fixo::before {
  content: ""; position: absolute; inset: 0; opacity: .5;
  background: radial-gradient(800px 500px at 50% 50%, rgba(73, 161, 132, .22), transparent 70%);
}
.missao .wrap { position: relative; max-width: 1050px; }
.missao__txt { font: 400 clamp(1.9rem, 4.4vw, 3.6rem)/1.15 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: -.02em; text-wrap: balance; }
.missao__txt .p { opacity: .16; transition: opacity .35s, color .35s; }
.missao__txt .p.is-on { opacity: 1; }
.missao__txt .p.dest.is-on { color: var(--mostarda-2); font-style: italic; }
.missao__ass { font-family: var(--f-mao); font-size: clamp(1.5rem, 2.6vw, 2.1rem); color: rgba(246, 241, 228, .8); margin-top: 28px; transform: rotate(-1.5deg); }
.ramos { position: absolute; color: rgba(246, 241, 228, .55); pointer-events: none; }
.ramos path { fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.ramos--a { left: 3%; top: 10%; width: clamp(110px, 16vw, 220px); transform: rotate(-18deg); }
.ramos--b { right: 4%; bottom: 9%; width: clamp(120px, 18vw, 240px); transform: rotate(160deg); }
.ramos--c { right: 12%; top: 12%; width: clamp(70px, 9vw, 120px); transform: rotate(40deg); opacity: .6; }
.ramos--d { left: 10%; bottom: 14%; width: clamp(70px, 9vw, 120px); transform: rotate(-120deg); opacity: .6; }
.ramos .tr { stroke-dasharray: 1; stroke-dashoffset: calc(1 - var(--p, 0)); }
@media (prefers-reduced-motion: reduce) { .missao { height: auto; } .missao__fixo { position: relative; height: auto; padding: 120px 0; } .missao__txt .p { opacity: 1; } }

/* ---------- Corredores (rolagem horizontal) ---------- */
.corredores { position: relative; background: var(--papel); }
.corredores__fixo { padding: clamp(84px, 10vw, 130px) 0 60px; }
.is-hscroll .corredores__fixo { position: sticky; top: 0; height: 100vh; height: 100svh; padding: calc(var(--nav-h) + 20px) 0 40px; display: flex; flex-direction: column; justify-content: center; overflow: hidden; }
.is-hscroll .corredores .cab { margin-bottom: 34px; }
.corredores__trilho {
  display: flex; gap: 20px; padding: 10px max(20px, calc((100% - 1200px) / 2)) 30px; overflow-x: auto; scroll-snap-type: x mandatory;
  scrollbar-width: none; overscroll-behavior-x: contain;
}
.corredores__trilho::-webkit-scrollbar { display: none; }
.is-hscroll .corredores__trilho { overflow: visible; will-change: transform; }
.corredor {
  --cor: var(--broto);
  flex: none; width: 300px; scroll-snap-align: start; position: relative; display: flex; flex-direction: column;
  padding: 22px 22px 24px; border-radius: var(--raio-g); background: var(--branco); border: 1px solid rgba(27, 42, 34, .08);
  box-shadow: var(--sombra); transition: transform .5s var(--ease), box-shadow .5s var(--ease);
}
.corredor:hover { transform: translateY(-8px) rotate(-.6deg); box-shadow: var(--sombra-g); }
.corredor__n { font: 400 .95rem/1 var(--f-display); color: var(--tinta-3); }
.corredor__fotos { position: relative; height: 200px; margin: 14px 0 18px; border-radius: 24px; background: var(--cor); }
.corredor__fotos img {
  position: absolute; bottom: 14px; width: 46%; aspect-ratio: 1; object-fit: contain; mix-blend-mode: multiply;
  border-radius: 14px; transition: transform .6s var(--mola);
}
.corredor__fotos img:nth-child(1) { left: 6%; transform: rotate(-8deg); }
.corredor__fotos img:nth-child(2) { left: 27%; bottom: 34px; width: 50%; z-index: 1; }
.corredor__fotos img:nth-child(3) { right: 6%; transform: rotate(8deg); }
.corredor:hover .corredor__fotos img:nth-child(1) { transform: rotate(-14deg) translate(-10px, -6px); }
.corredor:hover .corredor__fotos img:nth-child(2) { transform: translateY(-12px) scale(1.06); }
.corredor:hover .corredor__fotos img:nth-child(3) { transform: rotate(14deg) translate(10px, -6px); }
.corredor h3 { font: 400 1.55rem/1.1 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; }
.corredor p { color: var(--tinta-3); font-size: .93rem; margin-top: 6px; display: flex; justify-content: space-between; align-items: center; }
.corredor p .ic { color: var(--musgo); transition: transform .35s var(--ease); }
.corredor:hover p .ic { transform: translateX(5px); }
.corredor--fim { justify-content: center; align-items: flex-start; gap: 18px; background: var(--mata); color: var(--papel); border: 0; }
.corredor--fim h3 { font-size: 2.1rem; }
.corredor--fim p { color: rgba(246, 241, 228, .75); }
.corredor--fim .btn { margin-top: 6px; }
.corredores__barra { width: 160px; height: 4px; border-radius: 4px; background: rgba(27, 42, 34, .1); overflow: hidden; }
.corredores__barra i { display: block; height: 100%; width: 100%; background: var(--musgo); transform-origin: 0 50%; transform: scaleX(0); }
.corredores__dica { display: flex; align-items: center; gap: 12px; font-size: .9rem; color: var(--tinta-3); }

/* ---------- Vitrine (esteira de produtos) ---------- */
.vitrine { position: relative; overflow: hidden; padding: 6px 0 10px; cursor: grab; -webkit-mask: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.vitrine.is-arrastando { cursor: grabbing; }
.vitrine__trilho { display: flex; gap: 16px; width: max-content; will-change: transform; }
.prod-mini {
  flex: none; width: 210px; border-radius: 24px; background: var(--branco); padding: 14px; border: 1px solid rgba(27, 42, 34, .07);
  transition: transform .4s var(--ease), box-shadow .4s var(--ease); user-select: none; -webkit-user-drag: none;
}
.prod-mini:hover { transform: translateY(-6px); box-shadow: var(--sombra); }
.prod-mini img { width: 100%; aspect-ratio: 1; object-fit: contain; border-radius: 16px; background: #fff; pointer-events: none; }
.prod-mini b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-weight: 500; font-size: .92rem; line-height: 1.3; margin-top: 10px; min-height: 2.6em; }

/* ---------- Granel / rótulos ---------- */
.granel { overflow: hidden; }
.granel__grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(36px, 6vw, 80px); align-items: center; }
.rotulos { position: relative; display: flex; flex-wrap: wrap; gap: 14px 12px; justify-content: center; padding: 20px 0; }
.rotulo {
  --r: 0deg; position: relative; display: inline-flex; align-items: center; gap: 10px; padding: 12px 20px 12px 30px;
  background: linear-gradient(180deg, #d9bc8c, #c9a674); color: #3b2a17; border-radius: 10px 999px 999px 10px;
  font: 700 1.65rem/1 var(--f-mao); transform: rotate(var(--r)) translate(var(--tx, 0), var(--ty, 0));
  box-shadow: 0 10px 24px -12px rgba(0, 0, 0, .55), inset 0 0 0 1px rgba(59, 42, 23, .12);
  transition: transform .5s var(--mola), background .3s;
}
.rotulo::before { content: ""; position: absolute; left: 11px; top: 50%; width: 9px; height: 9px; margin-top: -4.5px; border-radius: 50%; background: var(--mata); box-shadow: inset 0 1px 2px rgba(0, 0, 0, .5); }
.rotulo:hover { transform: rotate(0deg) translate(var(--tx, 0), var(--ty, 0)) scale(1.08); background: linear-gradient(180deg, var(--mostarda-2), var(--mostarda)); }
.granel__nota { display: flex; gap: 14px; align-items: flex-start; margin-top: 28px; padding: 18px 20px; border-radius: 20px; background: rgba(246, 241, 228, .07); border: 1px solid rgba(246, 241, 228, .12); font-size: .95rem; color: rgba(246, 241, 228, .8); }
.granel__nota .ic { color: var(--mostarda-2); width: 24px; height: 24px; margin-top: 2px; }
@media (max-width: 860px) { .granel__grid { grid-template-columns: 1fr; } .rotulo { font-size: 1.4rem; } }

/* ---------- A loja ---------- */
.panorama { position: relative; margin: 0 auto; width: min(1400px, 100% - 24px); border-radius: var(--raio-g); overflow: hidden; clip-path: inset(var(--ci, 0%) var(--cx, 0%) round var(--cr, 34px)); }
.panorama img { width: 100%; aspect-ratio: 1600 / 1010; max-height: 82vh; object-fit: cover; transform: scale(var(--cs, 1)); transform-origin: 50% 60%; }
.panorama figcaption { position: absolute; left: 24px; bottom: 24px; right: 24px; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.pilula { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 999px; background: rgba(255, 253, 246, .92); backdrop-filter: blur(8px); font-weight: 500; font-size: .92rem; box-shadow: var(--sombra); }
.pilula .ic { color: var(--musgo); }
.loja__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(36px, 6vw, 90px); align-items: center; margin-top: clamp(60px, 8vw, 110px); }
.loja__fotos { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.loja__fotos figure { margin: 0; border-radius: 26px; overflow: hidden; box-shadow: var(--sombra); background: var(--papel-3); aspect-ratio: 9 / 15; }
.loja__fotos img { width: 100%; height: 114%; margin-top: -7%; object-fit: cover; }
.loja__fotos figure:nth-child(2) { margin-top: 70px; }
.loja__fotos .mao { position: absolute; left: -6px; bottom: -34px; font-size: 1.6rem; color: var(--madeira); transform: rotate(-4deg); display: flex; align-items: center; gap: 8px; }
.loja__fotos .mao svg { width: 46px; height: 32px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.feitos { display: grid; gap: 18px; margin-top: 30px; }
.feito { display: flex; gap: 16px; align-items: flex-start; }
.feito__ic { flex: none; width: 50px; height: 50px; border-radius: 16px; display: grid; place-items: center; background: var(--broto); color: var(--musgo); transition: transform .4s var(--mola); }
.feito:hover .feito__ic { transform: rotate(-10deg) scale(1.08); }
.feito h3 { font: 600 1.06rem/1.3 var(--f-texto); }
.feito p { font-size: .95rem; color: var(--tinta-2); margin-top: 2px; }
@media (max-width: 860px) { .loja__grid { grid-template-columns: 1fr; } .loja__fotos { max-width: 520px; } }

/* números */
.numeros { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: clamp(70px, 9vw, 120px); }
.numero { padding: 26px 24px; border-radius: 26px; background: var(--branco); border: 1px solid rgba(27, 42, 34, .07); }
.numero b { display: flex; align-items: baseline; gap: 4px; font: 400 clamp(2.4rem, 4.4vw, 3.4rem)/1 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; color: var(--musgo); letter-spacing: -.02em; }
.numero b small { font-size: .5em; color: var(--mostarda); }
.numero > span { display: block; margin-top: 10px; font-size: .93rem; color: var(--tinta-2); }
@media (max-width: 860px) { .numeros { grid-template-columns: 1fr 1fr; } }

/* ---------- Como comprar (linha do tempo) ---------- */
.passos { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.passos__linha { position: absolute; left: 32px; right: 32px; top: 31px; height: 3px; background: rgba(27, 42, 34, .1); border-radius: 3px; overflow: hidden; }
.passos__linha i { display: block; height: 100%; background: linear-gradient(90deg, var(--folha), var(--mostarda)); transform-origin: 0 50%; transform: scaleX(0); }
.passo { position: relative; }
.passo__n { position: relative; z-index: 1; width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; background: var(--papel-2); border: 2px solid rgba(27, 42, 34, .12); font: 500 1.5rem/1 var(--f-display); color: var(--tinta-3); transition: background .5s, color .5s, border-color .5s, transform .5s var(--mola); }
.passo.is-lit .passo__n { background: var(--mata); color: var(--mostarda-2); border-color: var(--mata); transform: scale(1.06); }
.passo h3 { font: 400 1.7rem/1.1 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; margin: 22px 0 10px; }
.passo p { color: var(--tinta-2); max-width: 32ch; }
@media (max-width: 860px) {
  .passos { grid-template-columns: 1fr; gap: 34px; padding-left: 4px; }
  .passos__linha { left: 34px; right: auto; top: 30px; bottom: 30px; width: 3px; height: auto; }
  .passos__linha i { transform-origin: 50% 0; transform: scaleY(0); }
  .passo { display: grid; grid-template-columns: 64px 1fr; column-gap: 20px; }
  .passo h3 { margin-top: 14px; }
  .passo p { grid-column: 2; }
}

.chamada {
  position: relative; margin-top: clamp(60px, 8vw, 100px); padding: clamp(36px, 6vw, 70px); border-radius: var(--raio-g);
  background: var(--mata); color: var(--papel); overflow: hidden; display: grid; grid-template-columns: 1.2fr .8fr; gap: 30px; align-items: center;
}
.chamada h2 { font: 400 clamp(2rem, 4vw, 3.2rem)/1.05 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: -.02em; }
.chamada h2 em { color: var(--mostarda-2); }
.chamada p { color: rgba(246, 241, 228, .75); margin-top: 14px; max-width: 48ch; }
.chamada__acoes { display: grid; gap: 12px; justify-items: stretch; }
.chamada__folha { position: absolute; right: -60px; top: -60px; width: 300px; color: rgba(246, 241, 228, .07); pointer-events: none; }
@media (max-width: 860px) { .chamada { grid-template-columns: 1fr; } }

/* ---------- Avaliações ---------- */
.aval__grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(30px, 5vw, 70px); align-items: start; }
.aval__nota b { display: block; font: 400 clamp(5rem, 11vw, 8.5rem)/.9 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; color: var(--musgo); letter-spacing: -.04em; }
.aval__nota .estrelas svg { width: 26px; height: 26px; }
.aval__nota p { color: var(--tinta-2); margin: 14px 0 22px; }
.depos { display: grid; gap: 16px; }
.depo { position: relative; padding: 26px 28px 24px; border-radius: 26px; background: var(--branco); border: 1px solid rgba(27, 42, 34, .07); box-shadow: var(--sombra); }
.depo:nth-child(2) { margin-left: clamp(0px, 4vw, 50px); }
.depo blockquote { margin: 0; font: 400 1.18rem/1.45 var(--f-display); font-variation-settings: "SOFT" 100; }
.depo footer { display: flex; align-items: center; gap: 10px; margin-top: 14px; font-size: .9rem; color: var(--tinta-3); }
.depo footer .estrelas svg { width: 13px; height: 13px; }
.depo__aspas { position: absolute; right: 22px; top: 8px; font: 400 4.5rem/1 var(--f-display); color: var(--broto); }
@media (max-width: 860px) { .aval__grid { grid-template-columns: 1fr; } }

/* ---------- Visite ---------- */
.visite__grid { display: grid; grid-template-columns: .95fr 1.05fr; gap: 22px; align-items: stretch; }
.cartao { padding: clamp(26px, 4vw, 40px); border-radius: var(--raio-g); background: var(--branco); border: 1px solid rgba(27, 42, 34, .07); box-shadow: var(--sombra); }
.cartao h3 { font: 400 1.7rem/1.1 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; margin-bottom: 6px; }
.end { font-size: 1.04rem; color: var(--tinta-2); }
.end small { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; font-size: .9rem; color: var(--madeira); font-weight: 500; }
.horarios { margin: 24px 0; border-top: 1px dashed rgba(27, 42, 34, .2); }
.horarios li { display: flex; justify-content: space-between; padding: 11px 4px; border-bottom: 1px dashed rgba(27, 42, 34, .2); font-size: .97rem; color: var(--tinta-2); }
.horarios li.is-hoje { color: var(--tinta); font-weight: 600; background: linear-gradient(90deg, rgba(212, 177, 42, .2), transparent); border-radius: 8px; padding-inline: 10px; }
.horarios li.is-hoje span:first-child::after { content: " · hoje"; color: var(--musgo); font-weight: 500; }
.contatos { display: flex; flex-wrap: wrap; gap: 10px; }
.mapa { position: relative; min-height: 460px; border-radius: var(--raio-g); overflow: hidden; background: var(--papel-3); box-shadow: var(--sombra); }
.mapa iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; filter: saturate(.75) sepia(.12) hue-rotate(-6deg); }
.mapa__capa { position: absolute; inset: 0; display: grid; place-items: center; text-align: center; padding: 24px; background: radial-gradient(circle at 50% 45%, rgba(246, 241, 228, .2), rgba(28, 58, 45, .6)), url("/assets/img/mapa-capa.webp") center / cover; color: var(--papel); }
.mapa__capa .btn { margin-top: 12px; }
.mapa__pino { position: absolute; left: 50%; top: 50%; width: 54px; height: 54px; margin: -54px 0 0 -27px; pointer-events: none; z-index: 2; }
@media (max-width: 860px) { .visite__grid { grid-template-columns: 1fr; } .mapa { min-height: 360px; } }

/* ---------- Instagram ---------- */
.insta { position: relative; display: grid; grid-template-columns: 1fr auto; gap: 30px; align-items: center; padding: clamp(32px, 5vw, 56px); border-radius: var(--raio-g); background: linear-gradient(120deg, #f3e3a8, #f2d7c4 55%, #d6eadb); overflow: hidden; }
.insta h2 { font: 400 clamp(1.9rem, 3.6vw, 2.9rem)/1.05 var(--f-display); font-variation-settings: "SOFT" 100, "WONK" 1; letter-spacing: -.02em; }
.insta p { color: var(--tinta-2); margin-top: 10px; }
.insta__acoes { display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 760px) { .insta { grid-template-columns: 1fr; } }

/* ---------- Rodapé ---------- */
.rodape { position: relative; background: var(--mata); color: rgba(246, 241, 228, .78); padding: 90px 0 30px; margin-top: clamp(80px, 10vw, 130px); }
.rodape__onda { position: absolute; left: 0; right: 0; top: -59px; width: 100%; height: 60px; color: var(--mata); }
.rodape__grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 36px; }
.rodape__logo { width: 170px; }
.rodape h4 { font: 600 .78rem/1 var(--f-texto); letter-spacing: .16em; text-transform: uppercase; color: var(--mostarda-2); margin-bottom: 16px; }
.rodape li { margin-bottom: 9px; font-size: .95rem; }
.rodape a:hover { color: var(--papel); }
.rodape p { font-size: .95rem; margin-top: 16px; max-width: 34ch; }
.redes { display: flex; gap: 10px; margin-top: 20px; }
.redes a { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; border: 1px solid rgba(246, 241, 228, .2); transition: background .3s, color .3s, transform .3s var(--mola); }
.redes a:hover { background: var(--mostarda-2); color: var(--tinta); transform: translateY(-3px); }
.rodape__base { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-top: 60px; padding-top: 22px; border-top: 1px solid rgba(246, 241, 228, .12); font-size: .86rem; color: rgba(246, 241, 228, .55); }
.rodape__base a { color: rgba(246, 241, 228, .8); }
.rodape__base a:hover { color: var(--mostarda-2); }
@media (max-width: 860px) { .rodape__grid { grid-template-columns: 1fr 1fr; } .rodape__marca { grid-column: 1 / -1; } }
@media (max-width: 480px) { .rodape__grid { grid-template-columns: 1fr; } }

/* ---------- WhatsApp flutuante ---------- */
.wa-flut {
  position: fixed; right: 18px; bottom: 18px; z-index: 90; display: flex; align-items: center; gap: 10px;
  padding: 10px; border-radius: 999px; background: #1f8a52; color: #fff; box-shadow: 0 14px 30px -10px rgba(31, 138, 82, .7);
  transform: translateY(120px); transition: transform .6s var(--mola), padding .4s var(--ease);
}
.wa-flut.is-on { transform: none; }
.wa-flut .ic { width: 30px; height: 30px; stroke-width: 1.6; }
.wa-flut span { max-width: 0; overflow: hidden; white-space: nowrap; font-weight: 600; font-size: .95rem; transition: max-width .5s var(--ease), padding .5s; }
.wa-flut:hover span { max-width: 160px; padding-right: 8px; }
.wa-flut::after { content: ""; position: absolute; inset: 0; border-radius: inherit; border: 2px solid #1f8a52; animation: onda 2.4s infinite; pointer-events: none; }
@keyframes onda { from { transform: scale(1); opacity: .8; } to { transform: scale(1.5); opacity: 0; } }

/* ---------- Cursor ---------- */
.cursor { position: fixed; left: 0; top: 0; z-index: 450; pointer-events: none; opacity: 0; transition: opacity .3s; }
.cursor.is-vivo { opacity: 1; }
.cursor__ponto { position: fixed; width: 8px; height: 8px; margin: -4px 0 0 -4px; border-radius: 50%; background: var(--musgo); }
.cursor__anel {
  position: fixed; width: 38px; height: 38px; margin: -19px 0 0 -19px; border-radius: 50%; border: 1.5px solid rgba(63, 116, 89, .55);
  display: grid; place-items: center; font: 700 .68rem/1 var(--f-texto); letter-spacing: .12em; text-transform: uppercase; color: var(--papel);
  transition: width .35s var(--ease), height .35s var(--ease), margin .35s var(--ease), background .35s, border-color .35s;
}
.cursor.is-link .cursor__anel { width: 58px; height: 58px; margin: -29px 0 0 -29px; background: rgba(212, 177, 42, .22); border-color: transparent; }
.cursor.is-ver .cursor__anel { width: 76px; height: 76px; margin: -38px 0 0 -38px; background: var(--mata); border-color: var(--mata); }
.cursor.is-ver .cursor__ponto { opacity: 0; }
.cursor:not(.is-ver) .cursor__anel b { display: none; }
@media (pointer: coarse) { .cursor { display: none; } }

/* ---------- Movimento reduzido ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .linha > span { transform: none; }
  .js [data-reveal] { opacity: 1; transform: none; }
  .sigla__item span { clip-path: none; }
}
