/* Fontes servidas pelo próprio site (subconjunto latino, suficiente para o português). Sora nos títulos, DM Sans no texto. */
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url('/inicio/fonts/dm-sans-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Sora';
  font-style: normal;
  font-weight: 500 800;
  font-display: swap;
  src: url('/inicio/fonts/sora-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* FênixFood: site institucional. Preto profundo, grafite e dourado; Sora nos títulos, DM Sans no texto. */
:root {
  --ink: #050505;
  --graphite: #101010;
  --graphite-2: #171512;
  --gold: #D4AF37;
  --gold-hi: #FFD66B;
  --bronze: #A96816;
  --ivory: #F8F5EE;
  --muted: rgba(248, 245, 238, .70);
  --line: rgba(212, 175, 55, .20);
  --line-hi: rgba(255, 214, 107, .42);
  --gold-grad: linear-gradient(115deg, #A96816 0%, #D4AF37 38%, #FFD66B 58%, #D4AF37 78%, #A96816 100%);
  --text-grad: linear-gradient(100deg, #FFD66B 0%, #D4AF37 55%, #C98A22 100%);
  --f-title: 'Sora', 'Segoe UI', system-ui, sans-serif;
  --f-body: 'DM Sans', 'Segoe UI', system-ui, sans-serif;
  --gut: clamp(16px, 4vw, 40px);
  --r-card: 26px;
  --ease: cubic-bezier(.2, .7, .2, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 84px; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--ink); color: var(--ivory); font-family: var(--f-body); font-size: 1.0625rem; line-height: 1.6; overflow-x: hidden; -webkit-font-smoothing: antialiased; }
body::before { /* textura discreta de granulação */
  content: ''; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .05; mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
}
img { max-width: 100%; height: auto; }
a { color: inherit; }
h1, h2, h3 { font-family: var(--f-title); margin: 0; line-height: 1.08; letter-spacing: -.025em; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 3px; border-radius: 6px; }
.skip { position: fixed; left: 12px; top: -60px; z-index: 300; background: var(--gold); color: #1a1205; padding: 10px 16px; border-radius: 10px; font-weight: 700; transition: top .2s; }
.skip:focus { top: 12px; }
.wrap { width: min(1220px, 100% - var(--gut) * 2); margin-inline: auto; position: relative; z-index: 1; }
.ic { width: 1.5rem; height: 1.5rem; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.gold-text { background: var(--text-grad); -webkit-background-clip: text; background-clip: text; color: transparent; -webkit-text-fill-color: transparent; }

/* ---------- Botões ---------- */
.btn { position: relative; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 54px; padding: 0 30px; border-radius: 999px; font-family: var(--f-title); font-weight: 600; font-size: .98rem; letter-spacing: -.005em; text-decoration: none; border: 1px solid transparent; cursor: pointer; overflow: hidden; isolation: isolate; transition: transform .25s var(--ease), box-shadow .3s, border-color .3s, background .3s; }
.btn-sm { min-height: 44px; padding: 0 22px; font-size: .9rem; }
.btn-bloco { width: 100%; }
.btn-gold { color: #1b1204; background: var(--gold-grad); background-size: 220% 100%; background-position: 0 0; box-shadow: 0 10px 34px -10px rgba(212, 175, 55, .65), inset 0 1px 0 rgba(255, 255, 255, .55), inset 0 -2px 0 rgba(120, 70, 5, .35); }
.btn-gold::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, .55) 50%, transparent 65%); transform: translateX(-120%); transition: transform .7s var(--ease); }
.btn-gold:hover { transform: translateY(-2px); background-position: 100% 0; box-shadow: 0 16px 40px -10px rgba(255, 214, 107, .7), inset 0 1px 0 rgba(255, 255, 255, .6), inset 0 -2px 0 rgba(120, 70, 5, .35); }
.btn-gold:hover::after { transform: translateX(120%); }
.btn-gold:active { transform: translateY(0); }
.btn-ghost { color: var(--ivory); background: rgba(255, 255, 255, .03); border-color: var(--line-hi); backdrop-filter: blur(8px); }
.btn-ghost:hover { transform: translateY(-2px); border-color: var(--gold-hi); background: rgba(212, 175, 55, .1); }
.btn[disabled] { opacity: .65; cursor: progress; transform: none; }

/* ---------- Vidro ---------- */
.glass { background: linear-gradient(180deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .02)); border: 1px solid var(--line); backdrop-filter: blur(16px) saturate(1.2); -webkit-backdrop-filter: blur(16px) saturate(1.2); box-shadow: 0 30px 80px -30px rgba(0, 0, 0, .9), inset 0 1px 0 rgba(255, 214, 107, .14); }

/* ---------- Entrada cinematográfica ---------- */
.intro { display: none; }
.js .intro { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; background: radial-gradient(70% 60% at 50% 50%, #17120a 0%, #050505 70%); animation: introOut .9s ease 2.6s forwards; }
.intro-logo { width: min(360px, 62vw); height: auto; opacity: 0; transform: scale(.82); filter: drop-shadow(0 0 0 rgba(255, 214, 107, 0)); animation: introLogo 2.2s var(--ease) .15s forwards; }
.intro-glow { position: absolute; width: 70vmin; height: 70vmin; border-radius: 50%; background: radial-gradient(circle, rgba(255, 214, 107, .34), rgba(169, 104, 22, .12) 45%, transparent 70%); opacity: 0; animation: introGlow 2.4s ease .1s forwards; }
.intro-sweep { position: absolute; inset: 0; background: linear-gradient(105deg, transparent 42%, rgba(255, 233, 170, .16) 50%, transparent 58%); transform: translateX(-100%); animation: introSweep 1.6s ease .9s forwards; }
.intro.is-out { animation: none; opacity: 0; visibility: hidden; transition: opacity .6s ease, visibility 0s .6s; }
@keyframes introLogo { 0% { opacity: 0; transform: scale(.82); } 45% { opacity: 1; } 100% { opacity: 1; transform: scale(1); filter: drop-shadow(0 0 38px rgba(255, 190, 70, .55)); } }
@keyframes introGlow { to { opacity: 1; } }
@keyframes introSweep { to { transform: translateX(100%); } }
@keyframes introOut { to { opacity: 0; visibility: hidden; } }

/* ---------- Cabeçalho ---------- */
.topo { position: fixed; inset: 0 0 auto 0; z-index: 100; transition: background .35s, backdrop-filter .35s, box-shadow .35s, padding .35s; padding: 14px 0; }
.topo.is-scrolled { background: rgba(5, 5, 5, .78); backdrop-filter: blur(18px) saturate(1.3); -webkit-backdrop-filter: blur(18px) saturate(1.3); box-shadow: 0 1px 0 var(--line), 0 20px 50px -30px #000; padding: 8px 0; }
.topo-in { display: flex; align-items: center; gap: 18px; }
.marca { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; margin-right: auto; }
.marca img { display: block; filter: drop-shadow(0 0 12px rgba(255, 190, 70, .35)); }
.marca-nome { font-family: var(--f-title); font-weight: 600; font-size: 1.28rem; letter-spacing: -.03em; }
.marca-nome b { font-weight: 800; background: var(--text-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.menu { display: flex; align-items: center; gap: 4px; }
.menu a:not(.btn) { position: relative; text-decoration: none; padding: 10px 14px; font-size: .95rem; font-weight: 500; color: var(--muted); transition: color .25s; }
.menu a:not(.btn)::after { content: ''; position: absolute; left: 14px; right: 14px; bottom: 4px; height: 1px; background: var(--gold-hi); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease); }
.menu a:not(.btn):hover, .menu a:not(.btn).is-on { color: var(--ivory); }
.menu a:not(.btn):hover::after, .menu a:not(.btn).is-on::after { transform: scaleX(1); }
.menu-cta { margin-left: 10px; }
.entrar { font-size: .92rem; font-weight: 600; text-decoration: none; padding: 9px 16px; border-radius: 999px; border: 1px solid var(--line); color: var(--gold-hi); transition: background .25s, border-color .25s; }
.entrar:hover { background: rgba(212, 175, 55, .12); border-color: var(--gold-hi); }
.burger { display: none; width: 46px; height: 46px; border-radius: 14px; border: 1px solid var(--line); background: rgba(255, 255, 255, .04); cursor: pointer; place-items: center; }

/* ---------- Seções ---------- */
.sec { position: relative; padding: clamp(76px, 10vw, 150px) 0; }
.sec-cab { max-width: 820px; margin-bottom: clamp(36px, 5vw, 64px); }
h2 { font-size: clamp(2rem, 4.3vw, 3.5rem); font-weight: 700; }
.lead { font-size: clamp(1.05rem, 1.5vw, 1.22rem); color: var(--muted); max-width: 60ch; margin-top: 20px; }

/* ---------- Hero ---------- */
.hero { position: relative; min-height: 100svh; display: flex; align-items: center; padding: 128px 0 72px; overflow: hidden; background: radial-gradient(80% 70% at 78% 40%, #1a140a 0%, #0b0a08 48%, #050505 80%); }
.hero::after { content: ''; position: absolute; inset: auto 0 0 0; height: 160px; background: linear-gradient(180deg, transparent, var(--ink)); pointer-events: none; }
.hero-bg { position: absolute; inset: 0; pointer-events: none; }
.hero-emblema { position: absolute; right: -6%; top: 50%; width: min(760px, 62vw); transform: translateY(-52%); opacity: .13; filter: blur(1.5px) saturate(1.2); }
.embers { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; z-index: 0; }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr); gap: clamp(28px, 4vw, 64px); align-items: center; }
h1 { font-size: clamp(2.3rem, 4.5vw, 4rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.04; text-wrap: balance; }
h2 { text-wrap: balance; }
.hero-txt .lead { margin-top: 26px; }
.hero-cta { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 34px; }
.hero-frase { margin-top: 38px; font-family: var(--f-title); font-weight: 500; font-size: 1.05rem; color: var(--gold-hi); display: flex; align-items: center; gap: 16px; }
.hero-frase::before { content: ''; width: 56px; height: 1px; background: var(--gold-grad); }

.stage { position: relative; aspect-ratio: 560 / 520; width: 100%; max-width: 620px; margin-inline: auto; }
.stage-lines { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.stage-lines path, .fc-linhas path { fill: none; stroke: url(#ln); stroke-width: 1.4; stroke-dasharray: 5 7; animation: fluir 2.4s linear infinite; }
.pulso { fill: var(--gold-hi); filter: drop-shadow(0 0 6px var(--gold-hi)); }
@keyframes fluir { to { stroke-dashoffset: -24; } }
.canal { position: absolute; display: inline-flex; align-items: center; gap: 9px; padding: 11px 18px 11px 14px; border-radius: 999px; font-family: var(--f-title); font-weight: 600; font-size: .92rem; background: linear-gradient(180deg, rgba(40, 32, 18, .85), rgba(14, 12, 9, .85)); border: 1px solid var(--line-hi); box-shadow: 0 14px 34px -14px rgba(0, 0, 0, .9), 0 0 24px -8px rgba(212, 175, 55, .35); transition: transform .25s ease-out; z-index: 2; }
.canal .ic { color: var(--gold-hi); width: 1.2rem; height: 1.2rem; }
.canal-tl { left: 1%; top: 6%; } .canal-tr { right: 1%; top: 6%; } .canal-bl { left: 1%; bottom: 6%; } .canal-br { right: 1%; bottom: 6%; }
.painel { position: absolute; left: 19%; right: 19%; top: 19%; bottom: 19%; border-radius: 22px; padding: 14px 15px; display: flex; flex-direction: column; gap: 10px; z-index: 1; transition: transform .25s ease-out; }
.painel-top { display: flex; align-items: center; gap: 9px; font-size: .78rem; }
.painel-top strong { font-family: var(--f-title); font-weight: 600; font-size: .8rem; margin-right: auto; }
.aberta { display: inline-flex; align-items: center; gap: 6px; font-size: .68rem; color: #b9e4c3; }
.aberta i { width: 7px; height: 7px; border-radius: 50%; background: #5fd48a; box-shadow: 0 0 10px #5fd48a; animation: respira 2s ease-in-out infinite; }
@keyframes respira { 50% { opacity: .35; } }
.pedidos { display: grid; gap: 7px; flex: 1; align-content: start; overflow: hidden; }
.ped { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 9px; padding: 8px 10px; border-radius: 12px; background: rgba(255, 255, 255, .045); border: 1px solid rgba(212, 175, 55, .12); font-size: .74rem; }
.ped.enter { animation: entra .7s var(--ease); }
@keyframes entra { 0% { opacity: 0; transform: translateY(-14px) scale(.97); box-shadow: 0 0 0 0 rgba(255, 214, 107, .6); } 60% { box-shadow: 0 0 0 6px rgba(255, 214, 107, 0); } 100% { opacity: 1; transform: none; } }
.ped b { font-family: var(--f-title); font-weight: 600; }
.ped small { color: var(--muted); display: block; font-size: .66rem; line-height: 1.2; }
.canal-tag { padding: 3px 8px; border-radius: 999px; font-size: .62rem; font-weight: 700; background: rgba(212, 175, 55, .16); color: var(--gold-hi); white-space: nowrap; }
.st { padding: 3px 9px; border-radius: 999px; font-size: .62rem; font-weight: 700; white-space: nowrap; }
.st-novo { background: rgba(255, 214, 107, .2); color: var(--gold-hi); }
.st-preparo { background: rgba(255, 150, 60, .2); color: #ffb26b; }
.st-pronto { background: rgba(95, 212, 138, .18); color: #8fe3ab; }
.st-entrega { background: rgba(120, 170, 255, .18); color: #a9c6ff; }
.kpis { display: grid; grid-template-columns: auto auto 1fr; gap: 14px; align-items: end; padding-top: 4px; border-top: 1px solid rgba(212, 175, 55, .12); }
.kpis > div { display: flex; flex-direction: column; }
.k-n { font-family: var(--f-title); font-weight: 700; font-size: 1.25rem; line-height: 1.1; color: var(--gold-hi); }
.k-l { font-size: .62rem; color: var(--muted); }
.k-barras { flex-direction: row !important; align-items: flex-end; gap: 4px; height: 34px; justify-self: end; }
.k-barras i { width: 7px; height: var(--h); border-radius: 3px 3px 1px 1px; background: linear-gradient(180deg, var(--gold-hi), var(--bronze)); transform-origin: bottom; animation: barra 3.2s ease-in-out infinite; }
.k-barras i:nth-child(2n) { animation-delay: .4s; } .k-barras i:nth-child(3n) { animation-delay: .9s; }
@keyframes barra { 50% { transform: scaleY(.72); } }
.stage-nota { position: absolute; left: 0; right: 0; bottom: -26px; text-align: center; font-size: .74rem; color: rgba(248, 245, 238, .45); }

/* ---------- Faixa ---------- */
.faixa { position: relative; z-index: 2; border-block: 1px solid var(--line); background: linear-gradient(180deg, #0d0b08, #080706); overflow: hidden; }
.faixa-trilho { display: flex; width: max-content; animation: corre 38s linear infinite; }
.faixa:hover .faixa-trilho { animation-play-state: paused; }
.faixa-lista { display: flex; flex: none; }
.faixa-lista li { display: inline-flex; align-items: center; padding: 20px 0; font-family: var(--f-title); font-weight: 600; font-size: 1.02rem; color: var(--ivory); white-space: nowrap; }
.faixa-lista li::after { content: ''; width: 7px; height: 7px; margin: 0 34px; border-radius: 50%; background: var(--gold-grad); box-shadow: 0 0 12px rgba(212, 175, 55, .8); }
@keyframes corre { to { transform: translateX(-50%); } }

/* ---------- Problema ---------- */
.problema { background: radial-gradient(60% 60% at 15% 30%, rgba(169, 104, 22, .09), transparent 70%), var(--ink); }
.problema-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(32px, 5vw, 80px); align-items: center; }
.desafios { margin-top: 30px; display: grid; gap: 4px; }
.desafios li { position: relative; padding: 13px 0 13px 34px; border-bottom: 1px solid rgba(248, 245, 238, .08); color: var(--muted); }
.desafios li::before { content: ''; position: absolute; left: 4px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 4px; border: 1.5px solid #8a5a2a; transform: rotate(18deg); transition: all .6s var(--ease); }
.problema.is-org .desafios li::before { border-color: var(--gold-hi); background: var(--gold-hi); transform: none; border-radius: 50%; box-shadow: 0 0 14px rgba(255, 214, 107, .6); }
.problema.is-org .desafios li { color: var(--ivory); transition: color .6s; }
.transforma { margin: 28px 0 24px; font-family: var(--f-title); font-weight: 600; font-size: 1.2rem; color: var(--gold-hi); }
.caos { position: relative; height: clamp(380px, 46vw, 500px); border-radius: 32px; border: 1px dashed rgba(212, 175, 55, .22); background: radial-gradient(60% 60% at 50% 50%, rgba(212, 175, 55, .05), transparent 70%); overflow: hidden; }
.caos-painel { position: absolute; right: 5%; top: 8%; bottom: 8%; width: 42%; border-radius: 22px; padding: 18px; display: flex; flex-direction: column; gap: 4px; opacity: .25; transform: scale(.94); transition: opacity .7s var(--ease), transform .7s var(--ease), border-color .7s; }
.caos-painel img { margin-bottom: 6px; } .caos-painel strong { font-family: var(--f-title); font-size: .98rem; } .caos-painel span { font-size: .8rem; color: var(--muted); }
.nota { position: absolute; left: var(--x0); top: var(--y0); transform: rotate(var(--r0)); padding: 11px 16px; border-radius: 14px; font-size: .86rem; font-weight: 600; white-space: nowrap; background: linear-gradient(180deg, #2a2418, #16120b); border: 1px solid rgba(212, 175, 55, .3); box-shadow: 0 12px 30px -14px #000; transition: left .9s var(--ease), top .9s var(--ease), transform .9s var(--ease), background .6s, border-color .6s, color .6s; }
.nota.papel { background: linear-gradient(180deg, #d9cdb0, #bfb190); color: #2b2415; border-color: transparent; }
.problema.is-org .caos-painel { opacity: 1; transform: none; border-color: var(--line-hi); }
.problema.is-org .nota { left: var(--x1); top: var(--y1); transform: none; background: linear-gradient(180deg, rgba(255, 214, 107, .16), rgba(212, 175, 55, .06)); border-color: var(--line-hi); color: var(--gold-hi); }
.problema.is-org .nota.papel { color: var(--gold-hi); }

/* ---------- Ecossistema ---------- */
.eco { background: linear-gradient(180deg, var(--ink), #0a0907 50%, var(--ink)); }
.eco-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .85fr); gap: clamp(28px, 5vw, 72px); align-items: center; }
.eco-mapa { position: relative; width: min(100%, 520px); aspect-ratio: 1; margin-inline: auto; }
.eco-linhas { position: absolute; inset: 0; width: 100%; height: 100%; }
.eco-linhas path { fill: none; stroke: var(--line-hi); stroke-width: 1.2; stroke-dasharray: 4 7; animation: fluir 3s linear infinite; }
.eco-centro { position: absolute; left: 50%; top: 50%; width: 31%; aspect-ratio: 1; transform: translate(-50%, -50%); border-radius: 50%; display: grid; place-items: center; background: radial-gradient(circle, rgba(255, 214, 107, .22), rgba(212, 175, 55, .04) 62%, transparent 70%); border: 1px solid var(--line-hi); box-shadow: 0 0 70px -10px rgba(255, 190, 70, .4); }
.eco-centro img { width: 64%; filter: drop-shadow(0 0 16px rgba(255, 190, 70, .5)); }
.eco-no { position: absolute; display: inline-flex; align-items: center; gap: 10px; padding: 14px 20px 14px 16px; border-radius: 20px; font-family: var(--f-title); font-weight: 600; font-size: .98rem; cursor: pointer; color: var(--ivory); background: linear-gradient(180deg, rgba(40, 32, 18, .9), rgba(14, 12, 9, .9)); border: 1px solid var(--line); transition: transform .35s var(--ease), border-color .3s, box-shadow .3s, background .3s; }
.eco-no .ic { color: var(--gold-hi); }
.eco-no:hover, .eco-no.is-on { border-color: var(--gold-hi); box-shadow: 0 0 36px -6px rgba(255, 214, 107, .5); transform: translateY(-3px); }
.eco-no.is-on { background: linear-gradient(180deg, rgba(90, 66, 20, .85), rgba(30, 22, 8, .9)); }
.eco-no { translate: -50% -50%; white-space: nowrap; }
.no-tl { left: 21%; top: 13%; } .no-tr { left: 79%; top: 13%; } .no-bl { left: 21%; top: 87%; } .no-br { left: 79%; top: 87%; }
.eco-painel { border-radius: 30px; padding: clamp(24px, 3.2vw, 40px); min-height: 280px; }
.eco-painel h3 { font-size: 1.7rem; margin-bottom: 20px; background: var(--text-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.eco-painel li { position: relative; padding: 12px 0 12px 30px; border-top: 1px solid rgba(248, 245, 238, .08); }
.eco-painel li::before { content: ''; position: absolute; left: 2px; top: 1.25em; width: 14px; height: 8px; border-left: 2px solid var(--gold-hi); border-bottom: 2px solid var(--gold-hi); transform: rotate(-48deg); }
.eco-painel.troca { animation: troca .5s var(--ease); }
@keyframes troca { from { opacity: .2; transform: translateY(10px); } }

/* ---------- Demonstração ---------- */
.demo { background: radial-gradient(70% 50% at 50% 30%, rgba(212, 175, 55, .08), transparent 70%), var(--ink); }
.abas { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 38px; }
.aba { padding: 12px 22px; border-radius: 999px; border: 1px solid var(--line); background: rgba(255, 255, 255, .03); cursor: pointer; font-family: var(--f-title); font-weight: 600; font-size: .92rem; color: var(--muted); transition: all .3s var(--ease); }
.aba:hover { color: var(--ivory); border-color: var(--line-hi); }
.aba.is-on { color: #1b1204; background: var(--gold-grad); border-color: transparent; box-shadow: 0 10px 30px -12px rgba(212, 175, 55, .7); }
.aparelhos { position: relative; padding-bottom: 40px; }
.notebook { width: min(100%, 940px); margin-inline: auto; }
.nb-tela { position: relative; aspect-ratio: 16 / 10; border-radius: 18px 18px 8px 8px; padding: clamp(10px, 1.6vw, 18px); background: #0c0b09; border: 7px solid #1b1914; outline: 1px solid var(--line); box-shadow: 0 50px 100px -30px rgba(0, 0, 0, .95), 0 0 90px -30px rgba(212, 175, 55, .35); overflow: hidden; font-size: clamp(.64rem, 1.3vw, .95rem); }
.nb-tela .ped { padding: 12px 14px; font-size: .95em; } .nb-tela .ped small { font-size: .8em; } .nb-tela .st, .nb-tela .canal-tag { font-size: .8em; }
.nb-tela .lista-box { gap: 9px; } .nb-tela .tile { padding: 14px 16px; } .nb-tela .tela-grade { gap: 14px; }
.nb-tela .prod { padding: 16px 12px; } .nb-tela .carrinho { padding: 16px; gap: 10px; } .nb-tela .col { padding: 12px; gap: 9px; } .nb-tela .integ-lin { padding: 16px; }
.nb-base { height: 14px; margin-inline: -2.5%; border-radius: 0 0 22px 22px; background: linear-gradient(180deg, #34302a, #1a1814); box-shadow: 0 20px 40px -14px #000; }
.tela-grade { display: grid; gap: 10px; height: 100%; }
.tela-tit { display: flex; align-items: center; gap: 10px; font-family: var(--f-title); font-weight: 600; font-size: 1.05em; }
.tela-tit small { margin-left: auto; font-weight: 500; color: var(--muted); font-size: .8em; }
.tiles { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.tile { padding: 10px 12px; border-radius: 12px; background: rgba(255, 255, 255, .04); border: 1px solid rgba(212, 175, 55, .13); }
.tile b { display: block; font-family: var(--f-title); font-size: 1.7em; line-height: 1.1; color: var(--gold-hi); }
.tile span { color: var(--muted); font-size: .85em; }
.duas { display: grid; grid-template-columns: 1.3fr 1fr; gap: 10px; min-height: 0; }
.lista-box { display: grid; gap: 6px; align-content: start; min-height: 0; overflow: hidden; }
.barras-box { padding: 12px; border-radius: 12px; background: rgba(255, 255, 255, .04); border: 1px solid rgba(212, 175, 55, .13); display: grid; gap: 9px; align-content: center; }
.bar { display: grid; grid-template-columns: 5.5em 1fr; gap: 8px; align-items: center; color: var(--muted); }
.bar i { display: block; height: 8px; border-radius: 6px; background: linear-gradient(90deg, var(--bronze), var(--gold-hi)); width: var(--w); transition: width 1s var(--ease); }
.pdv-grade { display: grid; grid-template-columns: 1.5fr 1fr; gap: 10px; min-height: 0; height: 100%; }
.cats { display: flex; gap: 6px; flex-wrap: wrap; margin-bottom: 8px; }
.cat { padding: 4px 11px; border-radius: 999px; border: 1px solid var(--line); font-size: .82em; color: var(--muted); }
.cat.on { background: rgba(212, 175, 55, .18); color: var(--gold-hi); border-color: var(--line-hi); }
.prods { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.prod { padding: 10px; border-radius: 12px; background: rgba(255, 255, 255, .04); border: 1px solid rgba(212, 175, 55, .13); display: grid; gap: 14px; transition: border-color .3s, transform .3s; }
.prod.pulse { border-color: var(--gold-hi); transform: scale(1.03); }
.prod b { font-size: 1em; } .prod small { color: var(--gold-hi); }
.carrinho { padding: 12px; border-radius: 14px; background: rgba(255, 255, 255, .05); border: 1px solid var(--line); display: flex; flex-direction: column; gap: 7px; }
.carrinho h4 { margin: 0 0 2px; font-family: var(--f-title); font-size: 1em; }
.item { display: flex; justify-content: space-between; color: var(--muted); }
.item.enter { animation: entra .6s var(--ease); color: var(--ivory); }
.total { margin-top: auto; display: flex; justify-content: space-between; padding-top: 8px; border-top: 1px solid var(--line); font-family: var(--f-title); font-weight: 700; color: var(--gold-hi); }
.fake-btn { text-align: center; padding: 9px; border-radius: 10px; font-weight: 700; color: #1b1204; background: var(--gold-grad); }
.kanban { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; height: 100%; min-height: 0; }
.col { padding: 10px; border-radius: 14px; background: rgba(255, 255, 255, .035); border: 1px solid rgba(212, 175, 55, .12); display: flex; flex-direction: column; gap: 7px; min-height: 0; overflow: hidden; }
.col h4 { margin: 0 0 3px; font-family: var(--f-title); font-size: .95em; display: flex; justify-content: space-between; }
.col h4 span { color: var(--gold-hi); }
.integ-lista { display: grid; gap: 8px; }
.integ-lin { display: grid; grid-template-columns: auto 1fr auto; gap: 12px; align-items: center; padding: 12px 14px; border-radius: 14px; background: rgba(255, 255, 255, .04); border: 1px solid rgba(212, 175, 55, .13); }
.integ-lin .ic { color: var(--gold-hi); }
.ok-ponto { display: inline-flex; align-items: center; gap: 6px; color: #9fe3b6; font-size: .85em; }
.ok-ponto::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: #5fd48a; box-shadow: 0 0 10px #5fd48a; }

.tablet { position: absolute; right: -1%; bottom: 0; width: clamp(150px, 22vw, 250px); padding: 12px; border-radius: 20px; background: #0c0b09; border: 5px solid #1b1914; outline: 1px solid var(--line); box-shadow: 0 40px 80px -24px #000, 0 0 60px -20px rgba(212, 175, 55, .4); font-size: clamp(.58rem, 1vw, .78rem); animation: flutua 7s ease-in-out infinite; }
.tb-tit { font-family: var(--f-title); font-weight: 600; margin-bottom: 8px; color: var(--gold-hi); }
.tablet ul { display: grid; gap: 6px; }
.tablet li { display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 7px 9px; border-radius: 10px; background: rgba(255, 255, 255, .05); }
.celular { position: absolute; left: -1%; bottom: -4px; width: clamp(110px, 15vw, 170px); padding: 11px; border-radius: 26px; background: #0c0b09; border: 5px solid #1b1914; outline: 1px solid var(--line); box-shadow: 0 40px 80px -24px #000, 0 0 60px -20px rgba(212, 175, 55, .4); font-size: clamp(.55rem, .95vw, .74rem); display: grid; gap: 8px; animation: flutua 8s ease-in-out -2s infinite; }
.cel-topo { display: flex; align-items: center; gap: 6px; font-family: var(--f-title); font-weight: 600; }
.cel-item { display: flex; gap: 8px; align-items: center; padding: 8px; border-radius: 10px; background: rgba(255, 255, 255, .05); }
.cel-item i { width: 26px; height: 26px; border-radius: 8px; background: linear-gradient(135deg, var(--bronze), var(--gold-hi)); flex: none; }
.cel-item small { display: block; color: var(--muted); font-size: .85em; line-height: 1.25; }
.cel-btn { text-align: center; padding: 8px; border-radius: 10px; font-weight: 700; color: #1b1204; background: var(--gold-grad); }
@keyframes flutua { 50% { transform: translateY(-10px); } }
.nota-demo { margin-top: 18px; text-align: center; font-size: .78rem; color: rgba(248, 245, 238, .45); }

/* ---------- Benefícios ---------- */
.benef { background: radial-gradient(60% 50% at 85% 20%, rgba(169, 104, 22, .1), transparent 70%), var(--ink); }
.bento { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.card { position: relative; padding: 28px 26px 30px; border-radius: var(--r-card); background: linear-gradient(165deg, #1a1710 0%, #0f0e0b 70%); border: 1px solid rgba(212, 175, 55, .14); overflow: hidden; isolation: isolate; transition: transform .45s var(--ease), border-color .3s; }
.card:nth-child(3n+2) { border-radius: 34px 18px 34px 18px; }
.card:nth-child(3n) { border-radius: 18px 34px 18px 34px; }
.card .ic { width: 2rem; height: 2rem; color: var(--gold-hi); margin-bottom: 22px; }
.card h3 { font-size: 1.18rem; margin-bottom: 8px; letter-spacing: -.02em; }
.card p { color: var(--muted); font-size: .98rem; line-height: 1.5; }
.b-grande { grid-column: span 2; grid-row: span 2; display: flex; flex-direction: column; justify-content: flex-end; min-height: 320px; background: radial-gradient(90% 80% at 80% 0%, rgba(212, 175, 55, .22), transparent 60%), linear-gradient(165deg, #1d1810, #0c0b08); }
.b-grande h3 { font-size: 1.7rem; } .b-grande .ic { width: 2.6rem; height: 2.6rem; }
.b-largo { grid-column: span 2; }
.b-grande::after { content: ''; position: absolute; right: -24px; top: -14px; width: 340px; aspect-ratio: 720 / 700; z-index: -1; background: url('/inicio/fenix-emblema.webp') center / contain no-repeat; opacity: .3; filter: saturate(1.15) drop-shadow(0 0 40px rgba(255, 190, 70, .35)); }
.glow::before { content: ''; position: absolute; inset: 0; z-index: -1; opacity: 0; transition: opacity .35s; background: radial-gradient(260px circle at var(--mx, 50%) var(--my, 50%), rgba(255, 214, 107, .2), transparent 65%); }
.glow:hover { transform: translateY(-5px); border-color: var(--line-hi); }
.glow:hover::before { opacity: 1; }

/* ---------- Confiança ---------- */
.conf { background: radial-gradient(55% 60% at 15% 80%, rgba(169, 104, 22, .1), transparent 70%), var(--ink); }
.conf-grade { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
@media (max-width: 900px) { .conf-grade { grid-template-columns: 1fr; } }

/* ---------- Fluxo ---------- */
.fluxo { background: linear-gradient(180deg, var(--ink), #0a0907 60%, var(--ink)); }
.linha { position: relative; display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; counter-reset: etapa; }
.linha::before { content: ''; position: absolute; left: 8%; right: 8%; top: 35px; height: 2px; background: rgba(212, 175, 55, .16); }
.linha::after { content: ''; position: absolute; left: 8%; top: 35px; height: 2px; width: 0; background: var(--gold-grad); box-shadow: 0 0 16px rgba(255, 214, 107, .7); transition: width 2.6s var(--ease); }
.linha.in::after { width: 84%; }
.linha li { position: relative; text-align: center; padding: 0 8px; }
.no { position: relative; z-index: 1; display: grid; place-items: center; width: 72px; height: 72px; margin: 0 auto 18px; border-radius: 50%; background: #13110d; border: 1px solid rgba(212, 175, 55, .22); color: var(--muted); transition: all .6s var(--ease); }
.no .ic { width: 1.7rem; height: 1.7rem; }
.linha.in li:nth-child(1) .no { transition-delay: .0s; } .linha.in li:nth-child(2) .no { transition-delay: .45s; } .linha.in li:nth-child(3) .no { transition-delay: .9s; }
.linha.in li:nth-child(4) .no { transition-delay: 1.35s; } .linha.in li:nth-child(5) .no { transition-delay: 1.8s; } .linha.in li:nth-child(6) .no { transition-delay: 2.25s; }
.linha.in .no { color: #1b1204; background: var(--gold-grad); border-color: transparent; box-shadow: 0 0 34px -4px rgba(255, 214, 107, .65); }
.linha h3 { font-size: 1rem; font-weight: 600; letter-spacing: -.01em; line-height: 1.3; }

/* ---------- Segmentos ---------- */
.segm { background: radial-gradient(60% 50% at 10% 80%, rgba(169, 104, 22, .1), transparent 70%), var(--ink); }
.segm-grade { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.seg { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 230px; padding: 24px; border-radius: 30px; background: radial-gradient(90% 80% at 50% 0%, rgba(212, 175, 55, .13), transparent 65%), linear-gradient(170deg, #17140d, #0b0a08); border: 1px solid rgba(212, 175, 55, .14); overflow: hidden; isolation: isolate; transition: transform .45s var(--ease), border-color .3s; }
.seg:nth-child(4n+1) { border-radius: 30px 12px 30px 12px; } .seg:nth-child(4n+3) { border-radius: 12px 30px 12px 30px; }
.seg svg { position: absolute; right: 14px; top: 14px; width: 58%; max-width: 190px; fill: none; stroke: url(#gold-g); stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 600; stroke-dashoffset: 0; opacity: .92; transition: transform .6s var(--ease), filter .4s; }
.seg h3 { position: relative; font-size: 1.28rem; max-width: 70%; }
.seg:hover { transform: translateY(-6px); border-color: var(--line-hi); }
.seg:hover svg { transform: scale(1.07) rotate(-2deg); filter: drop-shadow(0 0 14px rgba(255, 214, 107, .55)); animation: traca 1.4s var(--ease); }
@keyframes traca { from { stroke-dashoffset: 600; } to { stroke-dashoffset: 0; } }

/* ---------- Integrações ---------- */
.integ { background: linear-gradient(180deg, var(--ink), #0a0907 50%, var(--ink)); }
.integ-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, .65fr); gap: clamp(28px, 4vw, 56px); align-items: center; }
.fluxo-canais { position: relative; aspect-ratio: 640 / 420; width: 100%; }
.fc-linhas { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.fc-linhas path { stroke: url(#ln); }
.fc-nos li { position: absolute; left: 0; top: var(--t); transform: translateY(-50%); width: min(168px, 24%); text-align: center; padding: 11px 10px; border-radius: 999px; font-family: var(--f-title); font-weight: 600; font-size: .95rem; background: linear-gradient(180deg, rgba(40, 32, 18, .9), rgba(14, 12, 9, .9)); border: 1px solid var(--line-hi); box-shadow: 0 0 26px -10px rgba(212, 175, 55, .5); }
.fc-centro { position: absolute; left: 67%; right: 0; top: 50%; transform: translateY(-50%); padding: 20px 14px; border-radius: 26px; display: grid; justify-items: center; gap: 4px; text-align: center; }
.fc-centro img { filter: drop-shadow(0 0 18px rgba(255, 190, 70, .5)); }
.fc-centro strong { font-family: var(--f-title); font-size: 1rem; margin-top: 6px; } .fc-centro span { color: var(--muted); font-size: .8rem; }
.contadores { display: grid; gap: 14px; }
.cont { padding: 22px 24px; border-radius: 22px; border: 1px solid var(--line); background: linear-gradient(165deg, #1a1710, #0e0d0a); }
.cont-n { display: block; font-family: var(--f-title); font-weight: 800; font-size: clamp(2.6rem, 4.4vw, 3.6rem); line-height: 1; background: var(--text-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.cont-l { color: var(--muted); font-size: .95rem; }
.aviso-marcas { margin-top: 30px; font-size: .78rem; color: rgba(248, 245, 238, .42); }

/* ---------- Diferencial ---------- */
.dif { overflow: hidden; background: radial-gradient(70% 70% at 30% 50%, #1a1309, #070605 70%); }
.dif-luz { position: absolute; left: 4%; top: 50%; width: 64vmin; height: 64vmin; transform: translateY(-50%); border-radius: 50%; background: radial-gradient(circle, rgba(255, 190, 70, .3), rgba(169, 104, 22, .1) 45%, transparent 70%); animation: luz 6s ease-in-out infinite; pointer-events: none; }
@keyframes luz { 50% { opacity: .65; transform: translateY(-50%) scale(1.06); } }
.dif-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(24px, 5vw, 80px); align-items: center; }
.dif-fenix img { width: min(100%, 520px); margin-inline: auto; display: block; filter: drop-shadow(0 0 50px rgba(255, 170, 50, .35)); animation: flutua 9s ease-in-out infinite; }

/* ---------- Chamada final e formulário ---------- */
.final { background: radial-gradient(60% 60% at 20% 30%, rgba(212, 175, 55, .1), transparent 70%), var(--ink); }
.final-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.final-txt { position: relative; min-height: 560px; }
.final-txt::after { content: ''; position: absolute; left: 0; bottom: 0; width: min(270px, 70%); aspect-ratio: 720 / 700; background: url('/inicio/fenix-emblema.webp') center / contain no-repeat; opacity: .12; z-index: -1; pointer-events: none; }
.form { border-radius: 30px; padding: clamp(22px, 3vw, 38px); display: grid; gap: 14px; }
.form h3 { font-size: 1.5rem; } .form-sub { color: var(--muted); font-size: .96rem; margin-top: -6px; }
.campo { display: grid; gap: 6px; }
.campo label { font-size: .86rem; font-weight: 500; color: var(--ivory); }
.opc { color: rgba(248, 245, 238, .45); font-weight: 400; }
.campo input, .campo select, .campo textarea { width: 100%; padding: 14px 16px; border-radius: 14px; border: 1px solid rgba(212, 175, 55, .22); background: rgba(5, 5, 5, .55); color: var(--ivory); font: inherit; transition: border-color .25s, box-shadow .25s; }
.campo select { appearance: none; background-image: linear-gradient(45deg, transparent 50%, var(--gold-hi) 50%), linear-gradient(135deg, var(--gold-hi) 50%, transparent 50%); background-position: calc(100% - 20px) 54%, calc(100% - 14px) 54%; background-size: 6px 6px; background-repeat: no-repeat; }
.campo select option { background: #14120e; color: var(--ivory); }
.campo input:focus, .campo select:focus, .campo textarea:focus { outline: none; border-color: var(--gold-hi); box-shadow: 0 0 0 3px rgba(255, 214, 107, .18); }
.campo.invalido input, .campo.invalido select { border-color: #ff8a7a; }
.erro { min-height: 0; color: #ffa99d; font-size: .8rem; }
.isca { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.aceite { display: flex; gap: 12px; align-items: flex-start; font-size: .86rem; color: var(--muted); cursor: pointer; }
.aceite input { appearance: none; -webkit-appearance: none; margin-top: 2px; width: 20px; height: 20px; flex: none; border-radius: 6px; border: 1.5px solid var(--line-hi); background: rgba(5, 5, 5, .55); display: grid; place-content: center; cursor: pointer; transition: all .2s; }
.aceite input::after { content: ''; width: 10px; height: 5px; border-left: 2px solid #1b1204; border-bottom: 2px solid #1b1204; transform: rotate(-48deg) scale(0); margin-top: -2px; transition: transform .2s var(--ease); }
.aceite input:checked { background: var(--gold-grad); border-color: transparent; }
.aceite input:checked::after { transform: rotate(-48deg) scale(1); }
.aceite a { color: var(--gold-hi); }
.form-status { font-size: .92rem; min-height: 1.4em; }
.form-status.ok { color: #9fe3b6; } .form-status.falha { color: #ffa99d; }

/* ---------- Rodapé ---------- */
.rodape { border-top: 1px solid var(--line); background: #040404; padding: 64px 0 28px; position: relative; z-index: 1; }
.rodape-grid { display: grid; grid-template-columns: 1.6fr repeat(4, 1fr); gap: 32px; }
.rodape-marca p { color: var(--muted); font-size: .92rem; margin-top: 14px; max-width: 34ch; }
.rodape h3 { font-size: .98rem; margin-bottom: 14px; letter-spacing: -.01em; }
.rodape li { margin-bottom: 9px; }
.rodape a, .link-btn { color: var(--muted); text-decoration: none; font-size: .92rem; transition: color .2s; }
.link-btn { background: none; border: 0; padding: 0; cursor: pointer; text-align: left; }
.rodape a:hover, .link-btn:hover { color: var(--gold-hi); }
.redes { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; }
.rodape-base { display: flex; flex-wrap: wrap; gap: 12px 24px; justify-content: space-between; margin-top: 44px; padding-top: 22px; border-top: 1px solid rgba(248, 245, 238, .08); font-size: .86rem; color: rgba(248, 245, 238, .55); }
.rodape-frase { font-family: var(--f-title); color: var(--gold-hi); }

/* ---------- Flutuantes ---------- */
.flutuante { position: fixed; right: 18px; bottom: 18px; z-index: 90; display: inline-flex; align-items: center; gap: 10px; height: 56px; padding: 0 22px 0 18px; border-radius: 999px; text-decoration: none; font-family: var(--f-title); font-weight: 600; font-size: .92rem; color: #1b1204; background: var(--gold-grad); box-shadow: 0 16px 40px -10px rgba(212, 175, 55, .7), inset 0 1px 0 rgba(255, 255, 255, .5); transition: transform .25s var(--ease), opacity .3s; }
.flutuante:hover { transform: translateY(-3px); }
.flutuante.some { opacity: 0; pointer-events: none; transform: translateY(12px); }
.cookies { position: fixed; left: 50%; translate: -50% 0; bottom: 18px; z-index: 95; width: min(900px, calc(100% - 36px)); display: flex; align-items: center; gap: 12px 22px; flex-wrap: wrap; padding: 16px 22px; border-radius: 22px; background: rgba(14, 12, 9, .94); border: 1px solid var(--line-hi); backdrop-filter: blur(16px); box-shadow: 0 30px 70px -20px #000; }
.cookies[hidden] { display: none; }
.cookies h2 { font-size: 1rem; letter-spacing: -.01em; }
.cookies p { font-size: .85rem; color: var(--muted); flex: 1 1 340px; } .cookies a { color: var(--gold-hi); }
.cookies-acoes { display: flex; gap: 10px; margin-left: auto; }

/* ---------- Revelação ao rolar ---------- */
.js .reveal { opacity: 0; transform: translateY(26px); transition: opacity .9s var(--ease), transform .9s var(--ease); transition-delay: var(--d, 0s); }
.js .reveal.in { opacity: 1; transform: none; }
.js .reveal:not(.in) { animation: forcaMostrar .01s linear 5s forwards; }
@keyframes forcaMostrar { to { opacity: 1; transform: none; } }

/* ---------- Responsivo ---------- */
@media (max-width: 1280px) and (min-width: 621px) { .cookies { bottom: 86px; } }
@media (max-width: 1080px) {
  .menu { gap: 0; } .menu a:not(.btn) { padding: 10px 9px; font-size: .9rem; }
  .bento { grid-template-columns: repeat(2, 1fr); } .b-grande { grid-column: span 2; grid-row: auto; min-height: 240px; } .b-largo { grid-column: span 2; }
  .segm-grade { grid-template-columns: repeat(2, 1fr); }
  .rodape-grid { grid-template-columns: repeat(3, 1fr); } .rodape-marca { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  .burger { display: grid; }
  .entrar { display: none; }
  .menu { position: fixed; inset: 0 0 auto 0; top: 0; flex-direction: column; align-items: stretch; gap: 2px; padding: 86px var(--gut) 26px; background: rgba(5, 5, 5, .97); backdrop-filter: blur(18px); transform: translateY(-105%); transition: transform .45s var(--ease); border-bottom: 1px solid var(--line); z-index: -1; }
  .menu.is-open { transform: none; }
  .menu a:not(.btn) { padding: 15px 6px; font-size: 1.05rem; border-bottom: 1px solid rgba(248, 245, 238, .06); }
  .menu a:not(.btn)::after { display: none; }
  .menu-cta { margin: 14px 0 0; }
  .hero { padding-top: 110px; min-height: 0; }
  .hero-grid, .problema-grid, .eco-grid, .integ-grid, .dif-grid, .final-grid { grid-template-columns: 1fr; }
  .stage { max-width: 560px; margin-bottom: 18px; }
  .dif-fenix { order: -1; } .dif-fenix img { width: min(70%, 340px); }
  .linha { grid-template-columns: 1fr; gap: 6px; padding-left: 6px; }
  .linha::before { left: 41px; right: auto; top: 36px; bottom: 36px; width: 2px; height: auto; }
  .linha::after { left: 41px; top: 36px; width: 2px; height: 0; transition: height 2.6s var(--ease); }
  .linha.in::after { width: 2px; height: calc(100% - 72px); }
  .linha li { display: flex; align-items: center; gap: 18px; text-align: left; padding: 8px 0; }
  .no { margin: 0; flex: none; }
  .tablet { display: none; } .celular { display: none; } .aparelhos { padding-bottom: 0; }
}
@media (max-width: 620px) {
  .hero-cta .btn { width: 100%; }
  .final-txt { min-height: 0; padding-bottom: 20px; } .final-txt::after { display: none; }
  .canal { font-size: .76rem; padding: 8px 12px 8px 10px; gap: 6px; } .canal .ic { width: 1rem; height: 1rem; }
  .painel { left: 16%; right: 16%; top: 20%; bottom: 20%; padding: 10px; } .ped small { display: none; } .kpis { gap: 8px; }
  .bento, .segm-grade { grid-template-columns: 1fr; } .b-grande, .b-largo { grid-column: auto; }
  .seg { min-height: 190px; }
  .rodape-grid { grid-template-columns: 1fr 1fr; }
  .eco-no { padding: 10px 14px 10px 12px; font-size: .84rem; } .eco-centro { width: 36%; }
  .abas { flex-wrap: nowrap; overflow-x: auto; margin-inline: calc(var(--gut) * -1); padding-inline: var(--gut); scrollbar-width: none; } .aba { flex: none; }
  .nb-tela { aspect-ratio: 4 / 5; } .tiles { grid-template-columns: repeat(2, 1fr); } .duas { grid-template-columns: 1fr; } .pdv-grade { grid-template-columns: 1fr; } .kanban { grid-template-columns: 1fr; }
  .flutuante span { display: none; } .flutuante { width: 56px; padding: 0; justify-content: center; }
  .cookies { bottom: 12px; padding: 14px 16px; gap: 8px 14px; } .cookies h2 { font-size: .95rem; } .cookies p { font-size: .8rem; flex-basis: 100%; } .cookies-acoes { margin-left: 0; width: 100%; } .cookies-acoes .btn { flex: 1; min-height: 42px; }
  body:has(.cookies:not([hidden])) .flutuante { display: none; }
  .caos-painel { left: 36%; right: 3%; top: 4%; bottom: 2%; width: auto; padding: 14px; } .caos-painel span { display: none; } .problema.is-org .nota { margin-top: 12px; } .nota { font-size: .76rem; padding: 9px 12px; } .problema.is-org .nota { left: 39%; }
  .no-tl, .no-bl { left: 28%; } .no-tr, .no-br { left: 72%; }
  .fc-centro { padding: 12px 8px; } .fc-centro span { display: none; } .fc-nos li { font-size: .76rem; padding: 8px 12px; }
}

/* ---------- Movimento reduzido ---------- */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; animation-iteration-count: 1 !important; transition-duration: .001ms !important; transition-delay: 0s !important; }
  .js .intro { display: none; }
  .faixa-trilho { animation: none; width: auto; flex-wrap: wrap; } .faixa-lista[aria-hidden] { display: none; }
  .embers, .pulso { display: none; }
  .js .reveal { opacity: 1; transform: none; }
  .problema .nota, .problema .caos-painel { transition: none; }
}
