/*
 * MasterMind LINCE — "Jornada / Painel do Líder"
 * HUD grafite com grade fina, marcas de mira, rótulos em mono e sinais em vermelho.
 * Fontes: Space Grotesk (texto/títulos) + JetBrains Mono (rótulos, números, coordenadas).
 */
:root {
	--preto: #0a0a0c;
	--grafite: #121115;
	--grafite-2: #1a181c;
	--grafite-3: #2a2526;
	--branco: #f4f2ef;
	--branco-2: rgba(244, 242, 239, 0.7);
	--branco-3: rgba(244, 242, 239, 0.5);
	--linha: rgba(255, 255, 255, 0.09);
	--linha-2: rgba(255, 255, 255, 0.16);
	--vermelho: #d7192d;
	--brilho: #ff3347;
	--vermelho-2: #b3121f;
	--vermelho-3: #8f0f1d;
	--vermelho-4: #5a0811;
	--f-disp: 'Space Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--f-mono: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Consolas, monospace;
	--raio: 6px;
	--topo-h: 68px;
	--gutter: clamp(16px, 4vw, 40px);
	--max: 1240px;
	--ease: cubic-bezier(0.2, 0.8, 0.2, 1);

	/* barra de rolagem e seleção (base.css) */
	--mm-acento: #d7192d;
	--mm-sb-trilho: #141215;
	--mm-sb-a: #ff3347;
	--mm-sb-b: #7a0c18;
	--mm-sel-fundo: #d7192d;
	--mm-sel-texto: #ffffff;
}

*, *::before, *::after { box-sizing: border-box; }
html, body { overflow-x: clip; }
html { -webkit-text-size-adjust: 100%; scroll-padding-top: calc(var(--topo-h) + 12px); }
body {
	margin: 0; background: var(--preto); color: var(--branco);
	font: 400 17px/1.6 var(--f-disp); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}
img, video, svg { display: block; max-width: 100%; }
img, video { height: auto; }
a { color: inherit; }
button { font: inherit; color: inherit; }
h1, h2, h3, p, ul, ol, dl, dd, figure, blockquote { margin: 0; }
ul, ol { padding: 0; list-style: none; }
strong, b { font-weight: 600; }
.mono { font-family: var(--f-mono); }
.v { color: var(--brilho); }
.sr {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0);
	clip-path: inset(50%); white-space: nowrap; margin: -1px; padding: 0; border: 0;
}
:focus-visible { outline: 2px solid var(--brilho); outline-offset: 3px; }
.pular {
	position: fixed; top: 10px; left: 10px; z-index: 10060; padding: 10px 16px; border-radius: 4px;
	background: var(--branco); color: #000; font-weight: 600; text-decoration: none; transform: translateY(-160%);
	transition: transform 0.3s;
}
.pular:focus { transform: none; }

/* Lenis */
html.lenis, html.lenis body { height: auto; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }

/* ---------- fundo HUD ---------- */
.fundo-hud { position: fixed; inset: 0; z-index: -1; pointer-events: none; }
.fundo-hud__grade {
	position: absolute; inset: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.034) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.034) 1px, transparent 1px),
		linear-gradient(rgba(215, 25, 45, 0.075) 1px, transparent 1px),
		linear-gradient(90deg, rgba(215, 25, 45, 0.075) 1px, transparent 1px);
	background-size: 40px 40px, 40px 40px, 200px 200px, 200px 200px;
	background-position: center -1px;
	-webkit-mask-image: radial-gradient(130% 100% at 50% 0%, #000 30%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.15) 100%);
	mask-image: radial-gradient(130% 100% at 50% 0%, #000 30%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0.15) 100%);
}
.fundo-hud__brilho {
	position: absolute; inset: 0;
	background:
		radial-gradient(50% 45% at 88% 4%, rgba(215, 25, 45, 0.17), transparent 70%),
		radial-gradient(45% 40% at 0% 100%, rgba(90, 8, 17, 0.28), transparent 70%),
		radial-gradient(120% 80% at 50% 50%, transparent 55%, rgba(0, 0, 0, 0.55));
}

/* ---------- utilidades ---------- */
.container { width: min(var(--max), 100% - 2 * var(--gutter)); margin-inline: auto; }
.vidro {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.016));
	border: 1px solid var(--linha); border-radius: var(--raio);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 40px 90px -50px rgba(0, 0, 0, 0.9);
}
/* marcas de mira nos cantos */
.cantos { position: relative; }
.cantos::after {
	content: ''; position: absolute; inset: -5px; pointer-events: none; z-index: 3;
	--c: rgba(255, 255, 255, 0.55); --t: 12px;
	background:
		linear-gradient(var(--c), var(--c)) left top / var(--t) 1px,
		linear-gradient(var(--c), var(--c)) left top / 1px var(--t),
		linear-gradient(var(--c), var(--c)) right top / var(--t) 1px,
		linear-gradient(var(--c), var(--c)) right top / 1px var(--t),
		linear-gradient(var(--c), var(--c)) left bottom / var(--t) 1px,
		linear-gradient(var(--c), var(--c)) left bottom / 1px var(--t),
		linear-gradient(var(--c), var(--c)) right bottom / var(--t) 1px,
		linear-gradient(var(--c), var(--c)) right bottom / 1px var(--t);
	background-repeat: no-repeat;
	transition: inset 0.45s var(--ease);
}
.cantos:hover::after { inset: -9px; }

.ponto {
	display: inline-block; flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--brilho);
	box-shadow: 0 0 0 3px rgba(255, 51, 71, 0.18), 0 0 12px var(--brilho); animation: pulsa 1.6s ease-in-out infinite;
}
@keyframes pulsa { 50% { opacity: 0.3; } }
@keyframes pisca { 50% { opacity: 0; } }

.rotulo {
	display: block; font-size: 12px; font-weight: 500; line-height: 1.6;
	letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-2);
}
.rotulo__n { margin-right: 8px; color: var(--brilho); }
.titulo-2 {
	font-size: clamp(34px, 4.6vw, 64px); font-weight: 500; line-height: 1.03; letter-spacing: -0.035em;
	text-wrap: balance;
}
.titulo-2 em, .compromisso__titulo em { font-style: normal; color: var(--brilho); }
.texto-suave { color: var(--branco-2); font-size: clamp(16px, 1.25vw, 18.5px); line-height: 1.65; max-width: 62ch; }
.texto-suave strong { color: var(--branco); font-weight: 600; }
.secao { position: relative; padding: clamp(80px, 9vw, 128px) 0; }
.secao__cab { display: flex; align-items: center; gap: 18px; margin-bottom: clamp(36px, 5vw, 64px); }
.secao__linha {
	flex: 1; height: 1px; min-width: 24px; transform-origin: left;
	background: linear-gradient(90deg, rgba(255, 51, 71, 0.7), var(--linha) 30%, var(--linha));
}
.secao__meta { font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); white-space: nowrap; }
.secao__meta b { color: var(--branco); font-weight: 500; }

/* sublinhado que corre */
.link-corre {
	text-decoration: none; padding-bottom: 3px;
	background:
		linear-gradient(var(--brilho), var(--brilho)) 0 100% / 0 1px no-repeat,
		linear-gradient(rgba(255, 255, 255, 0.25), rgba(255, 255, 255, 0.25)) 0 100% / 100% 1px no-repeat;
	transition: background-size 0.5s var(--ease), color 0.3s;
}
.link-corre:hover { background-size: 100% 1px, 100% 1px; color: #fff; }

/* ---------- botões ---------- */
.btn {
	--h: 52px; position: relative; isolation: isolate; display: inline-flex; align-items: center; justify-content: center;
	gap: 12px; min-height: var(--h); padding: 0 24px; border: 0; border-radius: 4px; cursor: pointer;
	font: 600 15px/1.15 var(--f-disp); letter-spacing: 0.005em; text-decoration: none; white-space: nowrap;
	transition: box-shadow 0.35s, background-color 0.35s, color 0.35s;
}
.btn--p { --h: 42px; padding: 0 16px; font-size: 13.5px; }
.btn--g { --h: 58px; padding: 0 28px; font-size: 16px; }
.btn--xg { --h: 68px; padding: 0 34px; font-size: 17.5px; }
.btn__txt { position: relative; display: inline-flex; align-items: center; gap: 6px; }
.btn--primario {
	overflow: hidden; color: #fff;
	background: linear-gradient(135deg, var(--brilho) 0%, var(--vermelho) 52%, var(--vermelho-3) 100%);
	box-shadow: 0 0 0 1px rgba(255, 51, 71, 0.55), 0 18px 44px -16px rgba(215, 25, 45, 0.85), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}
.btn--primario::before {
	content: ''; position: absolute; inset: 0; z-index: -1; transform: translateX(-110%);
	background: linear-gradient(100deg, transparent 35%, rgba(255, 255, 255, 0.34) 50%, transparent 65%);
	transition: transform 0.85s var(--ease);
}
.btn--primario:hover::before { transform: translateX(110%); }
.btn--primario:hover {
	box-shadow: 0 0 0 1px rgba(255, 90, 105, 0.95), 0 22px 54px -14px rgba(255, 51, 71, 0.9), 0 0 34px rgba(255, 51, 71, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.3);
}
.btn--fantasma { color: var(--branco); background: rgba(255, 255, 255, 0.035); box-shadow: inset 0 0 0 1px var(--linha-2); }
.btn--fantasma:hover { background: rgba(255, 255, 255, 0.07); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.42); }
.btn--wa { color: var(--branco); background: rgba(255, 255, 255, 0.04); box-shadow: inset 0 0 0 1px rgba(255, 51, 71, 0.6); }
.btn--wa:hover { background: rgba(215, 25, 45, 0.16); box-shadow: inset 0 0 0 1px var(--brilho); }
.btn__seta { flex: none; transition: transform 0.35s var(--ease); }
.btn:hover .btn__seta { transform: translateX(5px); }
.btn__play {
	display: grid; place-items: center; width: 30px; height: 30px; border-radius: 50%; background: var(--vermelho); color: #fff;
	box-shadow: 0 0 0 4px rgba(215, 25, 45, 0.2); transition: box-shadow 0.35s;
}
.btn:hover .btn__play { box-shadow: 0 0 0 7px rgba(215, 25, 45, 0.25); }
.btn__play svg { margin-left: 2px; }
.btn__tempo { margin-left: 4px; font-size: 12px; font-weight: 400; color: var(--branco-3); }
.btn:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }

/* ---------- topo ---------- */
.topo {
	position: fixed; inset: 0 0 auto; z-index: 50; border-bottom: 1px solid transparent;
	transition: background-color 0.45s, border-color 0.45s;
}
.topo::before {
	content: ''; position: absolute; inset: 0; z-index: -1; opacity: 0; transition: opacity 0.45s;
	background: rgba(10, 10, 12, 0.74); -webkit-backdrop-filter: blur(14px) saturate(1.2); backdrop-filter: blur(14px) saturate(1.2);
}
.topo.rolou { border-bottom-color: var(--linha); }
.topo.rolou::before { opacity: 1; }
.topo__in {
	display: flex; align-items: center; gap: 22px; height: var(--topo-h);
	width: min(1320px, 100% - 2 * var(--gutter)); margin: 0 auto;
}
.marca { display: flex; align-items: center; gap: 10px; text-decoration: none; flex: none; }
.marca__simbolo { width: 34px; height: auto; }
.marca__nome { width: 116px; height: auto; }
.marca__tag {
	padding: 4px 6px 3px; border: 1px solid rgba(255, 51, 71, 0.55); border-radius: 2px; color: var(--brilho);
	font-size: 10.5px; font-weight: 700; letter-spacing: 0.22em; line-height: 1;
}
.topo__nav { display: flex; gap: 26px; margin-left: auto; }
.topo__nav a {
	position: relative; padding: 8px 0; color: var(--branco-2); text-decoration: none;
	font: 500 12.5px/1 var(--f-mono); letter-spacing: 0.1em; text-transform: uppercase; transition: color 0.3s;
}
.topo__nav a::after {
	content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 1px; background: var(--brilho);
	transform: scaleX(0); transform-origin: right; transition: transform 0.45s var(--ease);
}
.topo__nav a:hover { color: #fff; }
.topo__nav a:hover::after { transform: scaleX(1); transform-origin: left; }
.topo__status {
	display: flex; align-items: center; gap: 5px; padding: 6px 10px; border: 1px solid var(--linha); border-radius: 3px;
	font-size: 11.5px; color: var(--branco-3); letter-spacing: 0.04em; font-variant-numeric: tabular-nums;
}
.topo__status .ponto { margin-right: 4px; width: 6px; height: 6px; }
.topo__status b { color: var(--branco); font-weight: 500; }
.topo__status.encerrada { display: none; }
.topo__carga { position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; overflow: hidden; }
.topo__carga i {
	display: block; height: 100%; transform: scaleX(0); transform-origin: left;
	background: linear-gradient(90deg, var(--vermelho-3), var(--brilho));
}

/* trilho lateral */
.trilho-lateral {
	position: fixed; right: 20px; top: 50%; z-index: 40; display: none; flex-direction: column; align-items: center; gap: 14px;
	transform: translateY(-50%); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--branco-3);
	pointer-events: none;
}
.trilho-lateral__sec { writing-mode: vertical-rl; transform: rotate(180deg); white-space: nowrap; color: var(--branco-2); min-height: 9em; }
.trilho-lateral__barra { position: relative; width: 1px; height: 110px; background: rgba(255, 255, 255, 0.14); }
.trilho-lateral__barra i { position: absolute; inset: 0; background: var(--brilho); transform: scaleY(0); transform-origin: top; box-shadow: 0 0 8px var(--brilho); }
.trilho-lateral__pct b { color: #fff; font-weight: 500; }

/* ---------- [00] hero ---------- */
.hero {
	position: relative; display: flex; flex-direction: column; justify-content: center; gap: clamp(36px, 6vh, 64px);
	min-height: 100svh; padding: calc(var(--topo-h) + clamp(28px, 6vh, 64px)) 0 clamp(40px, 6vh, 64px); overflow: hidden;
}
.hero__varredura { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: 0; }
.hero__varredura::before {
	content: ''; position: absolute; left: 0; right: 0; top: 0; height: 100%; transform: translateY(-100%);
	background: linear-gradient(180deg, transparent calc(100% - 160px), rgba(215, 25, 45, 0.07) calc(100% - 2px), rgba(255, 51, 71, 0.75) calc(100% - 1px), transparent 100%);
	animation: varre 8s cubic-bezier(0.55, 0, 0.45, 1) infinite;
}
@keyframes varre {
	0% { transform: translateY(-100%); opacity: 0; }
	6% { opacity: 1; }
	62% { transform: translateY(0); opacity: 0.9; }
	68%, 100% { transform: translateY(0); opacity: 0; }
}
.hero__grade {
	position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
	gap: clamp(32px, 5vw, 80px); align-items: center;
}
.hero__boot { margin-bottom: 16px; font-size: 12px; letter-spacing: 0.06em; color: var(--branco-3); }
.hero__prompt { color: var(--brilho); }
.hero__titulo {
	margin: 22px 0 26px; font-size: clamp(40px, 5.1vw, 84px); font-weight: 600; line-height: 0.95; letter-spacing: -0.045em;
}
.hero__linha { display: block; }
.hero__linha--v { color: var(--brilho); text-shadow: 0 0 44px rgba(255, 51, 71, 0.35); }
.mm-l.cifra { color: var(--brilho); }
.anim-ok [data-palavras] .mm-p { overflow: hidden; vertical-align: top; padding: 0.1em 0 0.16em; margin: -0.1em 0 -0.16em; }
.hero__linha--v .mm-l.cifra { color: #fff; }
.pilares { display: flex; flex-wrap: wrap; gap: 8px; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; }
.pilares li {
	display: inline-flex; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid var(--linha-2); border-radius: 3px;
	background: rgba(255, 255, 255, 0.03); color: var(--branco);
}
.pilares__n { color: var(--brilho); }
.hero__sub { margin-top: 26px; max-width: 54ch; color: var(--branco-2); font-size: clamp(16px, 1.3vw, 19px); }
.hero__sub strong { color: var(--branco); font-weight: 500; }
.hero__acoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.hero__turma { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-top: 26px; }
.hero__turma-t {
	display: flex; align-items: baseline; gap: 9px; font-size: 12px; line-height: 1.5; letter-spacing: 0.06em; text-transform: uppercase; color: var(--branco-2);
}
.hero__turma-t .ponto { position: relative; top: -1px; }
.hero__turma-t strong { color: var(--branco); font-weight: 700; }
.contagem--hero {
	display: flex; align-items: center; gap: 8px; padding: 7px 12px; border: 1px solid rgba(255, 51, 71, 0.38); border-radius: 3px;
	background: rgba(215, 25, 45, 0.08); font-size: 13px; font-variant-numeric: tabular-nums;
}
.contagem--hero .contagem__t { color: var(--brilho); font-weight: 700; }
.contagem--hero b { color: #fff; font-size: 15px; font-weight: 700; }
.contagem--hero i { margin-left: 1px; font-style: normal; color: var(--branco-3); }
.contagem--hero [data-contagem-fim] { font-size: 12px; color: var(--branco-2); }
.contagem.encerrada .contagem__seg, .contagem.encerrada .contagem__t, .contagem.encerrada .contagem__bloco { display: none; }

/* radar */
.hero__radar { display: flex; justify-content: center; }
.radar { width: min(100%, 500px); padding: 14px; }
.radar__cab, .radar__base {
	display: flex; justify-content: space-between; gap: 10px; font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--branco-3);
}
.radar__cab { margin-bottom: 12px; }
.radar__base { margin-top: 12px; }
.radar__rec { display: inline-flex; align-items: center; gap: 6px; color: var(--brilho); }
.radar__rec i { width: 6px; height: 6px; border-radius: 50%; background: var(--brilho); animation: pisca 1.2s steps(1) infinite; }
.radar__disco {
	position: relative; isolation: isolate; aspect-ratio: 1; border-radius: 50%; overflow: hidden;
	background: radial-gradient(circle, rgba(215, 25, 45, 0.14), rgba(10, 10, 12, 0.7) 70%);
	box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1), 0 0 80px -20px rgba(215, 25, 45, 0.45);
}
.radar__video {
	position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0.62;
	filter: grayscale(1) contrast(1.25) brightness(0.8);
}
.radar__disco::before {
	content: ''; position: absolute; inset: 0; z-index: 1; background: var(--vermelho); mix-blend-mode: color; pointer-events: none;
}
.radar__disco::after {
	content: ''; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background:
		repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.22) 0 1px, transparent 1px 3px),
		radial-gradient(circle, transparent 28%, rgba(10, 10, 12, 0.6) 58%, rgba(10, 10, 12, 0.95) 72%);
}
.radar__svg { position: absolute; inset: 0; z-index: 2; width: 100%; height: 100%; overflow: visible; }
.radar__aneis circle { fill: none; stroke: rgba(255, 255, 255, 0.16); stroke-width: 1; vector-effect: non-scaling-stroke; }
.radar__aneis circle.forte { stroke: rgba(255, 255, 255, 0.34); }
.radar__eixos path { fill: none; stroke: rgba(255, 255, 255, 0.16); stroke-dasharray: 2 5; vector-effect: non-scaling-stroke; }
.radar__eixos path.fraco { stroke: rgba(255, 255, 255, 0.08); }
.radar__ticks line { stroke: rgba(255, 255, 255, 0.32); stroke-width: 1; vector-effect: non-scaling-stroke; }
.radar__ticks line.longo { stroke: var(--brilho); }
.radar__graus text { font: 500 10px var(--f-mono); fill: rgba(255, 255, 255, 0.55); text-anchor: middle; letter-spacing: 0.1em; }
.radar__feixe {
	position: absolute; inset: 0; z-index: 3; border-radius: 50%; pointer-events: none; mix-blend-mode: screen;
	background: conic-gradient(from 0deg, transparent 0deg 285deg, rgba(255, 51, 71, 0.05) 300deg, rgba(255, 51, 71, 0.34) 357deg, rgba(255, 120, 132, 0.95) 359.6deg, transparent 360deg);
	animation: gira 6s linear infinite;
}
@keyframes gira { to { transform: rotate(360deg); } }
.blip { position: absolute; z-index: 4; left: var(--x); top: var(--y); }
.blip i {
	display: block; width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: var(--brilho);
	box-shadow: 0 0 14px var(--brilho); opacity: 0.4; animation: ping 6s linear infinite; animation-delay: var(--d, 0s);
}
@keyframes ping {
	0% { opacity: 1; transform: scale(1.9); }
	5% { opacity: 1; transform: scale(1); }
	45% { opacity: 0.4; }
	100% { opacity: 0.4; transform: scale(1); }
}
.blip em {
	position: absolute; left: 12px; top: -10px; padding: 4px 7px; border-left: 1px solid var(--brilho);
	background: rgba(10, 10, 12, 0.78); color: #fff; font: 500 10px/1 var(--f-mono); font-style: normal;
	letter-spacing: 0.1em; text-transform: uppercase; white-space: nowrap;
}
.blip--esq em { left: auto; right: 12px; border-left: 0; border-right: 1px solid var(--brilho); }

/* números */
.stats { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.stat {
	display: flex; flex-direction: column; gap: 8px; padding: 18px 20px 16px; border: 1px solid var(--linha); border-radius: var(--raio);
	background: rgba(255, 255, 255, 0.02);
}
.stat dd { order: -1; font: 600 clamp(40px, 4.2vw, 62px)/1 var(--f-disp); letter-spacing: -0.04em; font-variant-numeric: tabular-nums; }
.stat sup { margin-left: 2px; font-size: 0.5em; color: var(--brilho); vertical-align: top; position: relative; top: 0.1em; }
.stat dt { font-size: 10.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--branco-3); line-height: 1.4; }

/* faixa correndo */
.ticker {
	position: relative; overflow: hidden; padding: 15px 0; border-block: 1px solid var(--linha); background: rgba(255, 255, 255, 0.02);
	font-size: 12.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--branco-2);
}
.ticker__trilho { display: flex; align-items: center; width: max-content; animation: corre 46s linear infinite; }
.ticker__trilho > * { margin-right: 22px; white-space: nowrap; }
.ticker__trilho i { font-style: normal; color: var(--vermelho); }
.ticker:hover .ticker__trilho { animation-play-state: paused; }
@keyframes corre { to { transform: translateX(-50%); } }

/* ---------- [01] diagnóstico ---------- */
.diag__grade { display: grid; grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr); gap: clamp(32px, 5vw, 80px); align-items: start; }
.diag__intro .texto-suave { margin-top: 20px; }
.terminal { overflow: visible; }
.terminal__barra {
	display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 18px; border-bottom: 1px solid var(--linha);
	font-size: 11px; letter-spacing: 0.08em; color: var(--branco-3);
}
.terminal__luz { display: inline-block; width: 7px; height: 7px; margin-right: 5px; border-radius: 50%; background: rgba(255, 255, 255, 0.18); }
.terminal__luz:first-child { background: var(--vermelho); }
.terminal__sessao { display: inline-flex; align-items: center; gap: 8px; text-transform: uppercase; letter-spacing: 0.14em; }
.terminal__sessao .ponto { width: 6px; height: 6px; }
.perguntas { padding: 6px 0; }
.pergunta {
	display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 12px; padding: 22px 24px;
	border-bottom: 1px dashed rgba(255, 255, 255, 0.08); transition: background-color 0.5s;
}
.pergunta__n { padding-top: 0.6em; font-size: 12px; letter-spacing: 0.08em; color: var(--branco-3); transition: color 0.4s; }
.pergunta.ativa .pergunta__n { color: var(--brilho); }
.pergunta.digitando { background: linear-gradient(90deg, rgba(215, 25, 45, 0.08), transparent 70%); }
.pergunta__txt { position: relative; font-size: clamp(20px, 2.05vw, 29px); font-weight: 500; line-height: 1.28; letter-spacing: -0.02em; }
.tw-fantasma { visibility: hidden; }
.tw { position: absolute; inset: 0; }
.pergunta.digitando .tw::after, .terminal.concluido .pergunta:last-child .tw::after {
	content: ''; display: inline-block; width: 0.48em; height: 0.95em; margin-left: 3px; vertical-align: -0.12em;
	background: var(--brilho); box-shadow: 0 0 10px var(--brilho); animation: pisca 1s steps(1) infinite;
}
.terminal__rodape { display: flex; align-items: center; gap: 6px; padding: 14px 24px 18px; font-size: 12px; color: var(--branco-3); }
.terminal__cursor { width: 8px; height: 14px; background: var(--brilho); animation: pisca 1s steps(1) infinite; }
.principio { margin-top: clamp(80px, 11vw, 150px); }
.principio__txt {
	margin-top: 22px; max-width: 21ch; font-size: clamp(30px, 4.7vw, 72px); font-weight: 500; line-height: 1.07; letter-spacing: -0.038em;
	text-wrap: balance;
}

/* ---------- [02] jornada ---------- */
.jornada { padding-bottom: 0; }
.jornada__intro {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 24px clamp(28px, 5vw, 80px); align-items: end;
	margin-bottom: clamp(36px, 5vw, 72px);
}
.jornada__palco { position: relative; }
.jornada__grade { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: clamp(28px, 4vw, 64px); }
.jornada__painel { align-self: center; padding: 26px; }
.jornada__painel-t { font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--branco-3); }
.jornada__num { margin-top: 8px; font: 600 108px/1 var(--f-disp); letter-spacing: -0.06em; font-variant-numeric: tabular-nums; }
.jornada__num small { margin-left: 8px; font: 500 18px var(--f-mono); letter-spacing: 0; color: var(--branco-3); }
.jornada__nome { min-height: 2.6em; margin-top: 6px; font-size: 19px; font-weight: 500; line-height: 1.3; color: var(--brilho); }
.jornada__seq { display: grid; gap: 4px; margin-top: 18px; font-size: 11.5px; letter-spacing: 0.05em; text-transform: uppercase; }
.jornada__seq li {
	display: flex; gap: 10px; padding: 10px 12px; border: 1px solid transparent; border-radius: 3px; color: var(--branco-3);
	transition: color 0.4s, border-color 0.4s, background-color 0.4s;
}
.jornada__seq li span { color: var(--brilho); }
.jornada__seq li.on { color: var(--branco); background: rgba(255, 255, 255, 0.03); border-color: var(--linha); }
.jornada__seq li.atual { color: #fff; border-color: rgba(255, 51, 71, 0.55); background: rgba(215, 25, 45, 0.1); }
.jornada__prog { margin-top: 20px; height: 4px; background: rgba(255, 255, 255, 0.08); overflow: hidden; }
.jornada__prog i { display: block; height: 100%; transform: scaleX(0); transform-origin: left; background: linear-gradient(90deg, var(--vermelho-3), var(--brilho)); }
.jornada__pct { display: flex; justify-content: space-between; margin-top: 10px; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--branco-3); }
.jornada__pct b { color: #fff; font-weight: 500; font-variant-numeric: tabular-nums; }
.jornada__janela { --col: 96px; position: relative; }
.jornada__leitura { display: none; }
.jornada__trilha { position: relative; z-index: 1; }
.jornada__svg { position: absolute; left: 0; top: 0; overflow: visible; pointer-events: none; }
.j-fantasma { fill: none; stroke: rgba(255, 255, 255, 0.16); stroke-width: 1.5; stroke-dasharray: 3 7; }
.j-traco { fill: none; stroke-width: 3; stroke-linecap: round; filter: drop-shadow(0 0 6px rgba(255, 51, 71, 0.8)); }
.j-no__anel { fill: var(--preto); stroke: rgba(255, 255, 255, 0.4); stroke-width: 1.5; transition: stroke 0.4s, fill 0.4s; }
.j-no__miolo { fill: rgba(255, 255, 255, 0.35); transition: fill 0.4s; }
.j-no__pulso { fill: none; stroke: var(--brilho); stroke-width: 1; opacity: 0; transform-box: fill-box; transform-origin: center; }
.j-no.on .j-no__anel { stroke: var(--brilho); fill: #1a0a0d; }
.j-no.on .j-no__miolo { fill: var(--brilho); }
.j-no.on .j-no__pulso { animation: pulsoNo 2s ease-out infinite; }
@keyframes pulsoNo { 0% { opacity: 0.9; transform: scale(0.6); } 100% { opacity: 0; transform: scale(1.8); } }
.j-cabeca__anel { fill: rgba(255, 51, 71, 0.16); stroke: var(--brilho); stroke-width: 1; }
.j-cabeca__ponto { fill: #fff; }
.j-marco {
	position: absolute; left: calc(var(--col) - 6px); top: 0; transform: translateY(-50%); font-size: 10.5px; letter-spacing: 0.16em;
	text-transform: uppercase; color: var(--branco-3); white-space: nowrap;
}
.etapa { position: relative; padding-left: var(--col); margin-bottom: clamp(110px, 20vh, 200px); }
.etapa:last-child { margin-bottom: 0; }
.etapa__card { max-width: 660px; padding: clamp(22px, 2.6vw, 36px); transition: opacity 0.6s, transform 0.6s var(--ease), border-color 0.6s, box-shadow 0.6s; }
.etapa.ativa .etapa__card { border-color: rgba(255, 51, 71, 0.45); box-shadow: 0 0 0 1px rgba(255, 51, 71, 0.12), 0 30px 80px -40px rgba(215, 25, 45, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.06); }
.anim-ok .etapa:not(.ativa) .etapa__card { opacity: 0.36; transform: translateX(16px); }
.etapa__rotulo { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-2); }
.etapa__ordem { margin-left: auto; padding: 4px 8px; border: 1px solid rgba(255, 51, 71, 0.5); border-radius: 2px; color: var(--brilho); }
.etapa__titulo { margin-top: 18px; font-size: clamp(28px, 3vw, 44px); font-weight: 500; line-height: 1.05; letter-spacing: -0.03em; }
.etapa__lead { margin-top: 10px; color: var(--branco-2); }
.etapa__lista { margin-top: 22px; border-top: 1px solid var(--linha); }
.etapa__lista li { display: flex; align-items: baseline; gap: 14px; padding: 11px 0; border-bottom: 1px solid var(--linha); font-size: 16.5px; }
.etapa__lista li span { min-width: 2.4em; font-size: 11px; color: var(--brilho); }
.etapa__card--destino {
	border: 1px solid rgba(255, 51, 71, 0.42); border-radius: var(--raio);
	background: linear-gradient(135deg, rgba(215, 25, 45, 0.24), rgba(90, 8, 17, 0.16) 60%, rgba(10, 10, 12, 0.4));
}
.etapa__destino { margin-top: 14px; font-size: clamp(32px, 3.6vw, 54px); font-weight: 600; line-height: 1; letter-spacing: -0.04em; }
.etapa__meta { margin-top: 16px; font-size: 11.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-2); }

@media (min-width: 900px) {
	.jornada__palco { height: 100vh; padding: calc(var(--topo-h) + 18px) 0 22px; }
	.jornada__grade { height: 100%; }
	.jornada__janela {
		height: 100%; overflow: hidden;
		-webkit-mask-image: linear-gradient(180deg, transparent 0, #000 13%, #000 87%, transparent 100%);
		mask-image: linear-gradient(180deg, transparent 0, #000 13%, #000 87%, transparent 100%);
	}
	.jornada__trilha { padding: calc((100vh - var(--topo-h) - 40px) / 2) 0; will-change: transform; }
	.jornada__leitura {
		display: block; position: absolute; left: 0; top: 50%; z-index: 0; width: calc(var(--col) + 2px); height: 1px; pointer-events: none;
		background: linear-gradient(90deg, transparent, rgba(255, 51, 71, 0.8) 30%, rgba(255, 51, 71, 0.8) 70%, transparent);
	}
}

/* faixa de chamada */
.faixa-cta { padding: clamp(48px, 5vw, 64px) 0 0; }
.faixa-cta__in {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px 24px; padding: 22px 26px;
	background: linear-gradient(90deg, rgba(215, 25, 45, 0.18), rgba(255, 255, 255, 0.02) 70%);
	border-color: rgba(255, 51, 71, 0.28);
}
.faixa-cta__t { font-size: clamp(18px, 1.8vw, 24px); line-height: 1.3; letter-spacing: -0.01em; }
.faixa-cta__t .mono { display: block; margin-bottom: 4px; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }

/* ---------- [03] inteligência interpessoal ---------- */
.inter__titulo { max-width: 19ch; }
.inter__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: clamp(40px, 6vw, 72px); }
.cartao { display: flex; flex-direction: column; gap: 14px; min-height: 400px; padding: 26px 26px 22px; will-change: transform; }
.cartao__topo {
	display: flex; justify-content: space-between; align-items: center; font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase;
	color: var(--branco-3);
}
.cartao__n {
	font: 700 46px/1 var(--f-mono); letter-spacing: -0.04em; color: transparent; -webkit-text-stroke: 1px rgba(255, 255, 255, 0.5);
	transition: color 0.4s, -webkit-text-stroke-color 0.4s;
}
.cartao:hover .cartao__n { color: var(--brilho); -webkit-text-stroke-color: var(--brilho); }
.cartao__icone { width: 48px; height: 48px; margin-top: 10px; fill: none; stroke: rgba(255, 255, 255, 0.72); stroke-width: 1.4; }
.cartao__icone .tr { stroke-dasharray: 3 3; }
.cartao__icone .ch { stroke: var(--brilho); fill: rgba(255, 51, 71, 0.16); }
.cartao__titulo { margin-top: 10px; font-size: clamp(21px, 1.8vw, 26px); font-weight: 500; line-height: 1.15; letter-spacing: -0.02em; }
.cartao p { color: var(--branco-2); font-size: 16px; }
.cartao .cartao__rodape {
	margin-top: auto; padding-top: 16px; border-top: 1px dashed var(--linha-2); font-size: 11px; letter-spacing: 0.12em;
	text-transform: uppercase; color: var(--brilho);
}
.cartao__brilho {
	position: absolute; inset: 0; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity 0.4s;
	background: radial-gradient(440px circle at var(--gx, 50%) var(--gy, 0%), rgba(255, 255, 255, 0.13), rgba(255, 51, 71, 0.06) 32%, transparent 62%);
}
.cartao::before {
	content: ''; position: absolute; inset: -1px; padding: 1px; border-radius: inherit; pointer-events: none; opacity: 0; transition: opacity 0.4s;
	background: radial-gradient(260px circle at var(--gx, 50%) var(--gy, 0%), rgba(255, 51, 71, 0.95), transparent 70%);
	-webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
	-webkit-mask-composite: xor; mask-composite: exclude;
}
.cartao:hover::before, .cartao:hover .cartao__brilho { opacity: 1; }
.inter__fecho { max-width: 70ch; margin-top: clamp(36px, 5vw, 56px); color: var(--branco-2); font-size: clamp(16px, 1.3vw, 19px); }
.inter__fecho .mono { margin-right: 6px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); }

/* ---------- [04] comunicação ---------- */
.com__grade { display: grid; grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr); gap: clamp(32px, 5vw, 80px); align-items: start; }
.com__verbos {
	display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 20px; font-size: 13px; letter-spacing: 0.16em;
	text-transform: uppercase; color: var(--branco);
}
.com__verbos i { font-style: normal; color: var(--brilho); }
.com__porque { margin-top: 38px; padding-left: 18px; border-left: 2px solid var(--vermelho); }
.com__porque-t { margin-bottom: 8px; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }
.com__porque p:last-child { color: var(--branco-2); }
.com__medidores { display: grid; gap: 30px; padding: clamp(20px, 2.6vw, 34px); }
.medidor__cab { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; }
.medidor__canal { padding-bottom: 6px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); }
.medidor__valor { font-size: clamp(42px, 4.4vw, 64px); font-weight: 700; line-height: 0.9; letter-spacing: -0.05em; color: #fff; font-variant-numeric: tabular-nums; }
.medidor__valor small { margin-left: 2px; font-size: 0.45em; color: var(--brilho); letter-spacing: 0; }
.medidor__titulo { margin-top: 4px; font-size: 22px; font-weight: 500; letter-spacing: -0.01em; }
.medidor__barra {
	position: relative; height: 18px; margin-top: 12px;
	background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.09) 0 6px, transparent 6px 9px);
}
.medidor__fill {
	position: absolute; left: 0; top: 0; bottom: 0; width: var(--v);
	background: linear-gradient(90deg, var(--vermelho-3), var(--brilho));
	-webkit-mask: repeating-linear-gradient(90deg, #000 0 6px, transparent 6px 9px);
	mask: repeating-linear-gradient(90deg, #000 0 6px, transparent 6px 9px);
}
.medidor__desc { margin-top: 10px; font-size: 15.5px; color: var(--branco-2); }
.com__soma { padding-top: 22px; border-top: 1px dashed var(--linha-2); }
.com__soma-barra { display: flex; gap: 3px; height: 8px; }
.com__soma-barra i { transform-origin: left; }
.com__soma-barra i:nth-child(1) { flex: 7; background: #fff; }
.com__soma-barra i:nth-child(2) { flex: 38; background: var(--brilho); }
.com__soma-barra i:nth-child(3) { flex: 55; background: var(--vermelho-3); }
.com__soma p { display: flex; justify-content: space-between; gap: 12px; margin-top: 10px; font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--branco-3); }
.com__frase { max-width: 32ch; margin-top: clamp(56px, 8vw, 100px); font-size: clamp(24px, 2.8vw, 40px); font-weight: 500; line-height: 1.2; letter-spacing: -0.025em; }

/* ---------- [05] roda da vida ---------- */
.roda__intro { display: grid; grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr); gap: 20px clamp(24px, 5vw, 80px); align-items: end; }
.roda__passos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: clamp(32px, 5vw, 56px); }
.passo {
	position: relative; padding: 16px 18px; border: 1px solid var(--linha); border-radius: var(--raio); background: rgba(255, 255, 255, 0.02);
	transition: border-color 0.5s, background-color 0.5s;
}
.passo__n { font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); transition: color 0.4s; }
.passo p { margin-top: 6px; font-size: 15px; line-height: 1.5; color: var(--branco-2); }
.passo.on { border-color: rgba(255, 51, 71, 0.5); background: rgba(215, 25, 45, 0.08); }
.passo.on .passo__n { color: var(--brilho); }
.roda__app {
	display: grid; grid-template-columns: minmax(0, 330px) minmax(0, 1fr) minmax(0, 300px); grid-template-areas: 'ctrl visor anal';
	gap: 18px; align-items: start; margin-top: 18px;
}
.roda__painel { display: contents; }
.roda__visor { grid-area: visor; align-self: stretch; display: flex; flex-direction: column; padding: 16px; }
.roda__controles { grid-area: ctrl; }
.roda__analise { grid-area: anal; padding: 22px; }
.roda__visor-cab { display: flex; justify-content: space-between; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); }
.roda__visor-cab b { color: #fff; font-weight: 700; }
.roda__svg { display: block; width: 100%; height: auto; margin: auto; padding: 10px 0 4px; overflow: visible; }
.r-anel { fill: none; stroke: rgba(255, 255, 255, 0.07); stroke-width: 1; }
.r-anel.par { stroke: rgba(255, 255, 255, 0.15); }
.r-anel.max { stroke: rgba(255, 255, 255, 0.32); }
.r-eixo { stroke: rgba(255, 255, 255, 0.13); stroke-dasharray: 2 4; transition: stroke 0.3s; }
.r-eixo.foco { stroke: var(--brilho); stroke-dasharray: none; }
.r-escala text { font: 400 10px var(--f-mono); fill: rgba(255, 255, 255, 0.38); }
.r-area { fill: rgba(215, 25, 45, 0.3); stroke: var(--brilho); stroke-width: 2; stroke-linejoin: round; filter: drop-shadow(0 0 12px rgba(255, 51, 71, 0.55)); }
.r-vert { fill: #fff; stroke: var(--brilho); stroke-width: 2; }
.r-vert.baixo { fill: var(--brilho); stroke: #fff; }
.r-alvo { fill: none; stroke: var(--brilho); stroke-width: 1.5; transform-box: fill-box; transform-origin: center; animation: alvo 1.6s ease-out infinite; }
@keyframes alvo { from { transform: scale(0.6); opacity: 1; } to { transform: scale(2.4); opacity: 0; } }
.r-rot { font: 500 12.5px var(--f-mono); fill: rgba(255, 255, 255, 0.62); letter-spacing: 0.06em; transition: fill 0.3s; }
.r-rot .r-rot__v { fill: #fff; font-weight: 700; }
.r-rot.baixo, .r-rot.baixo .r-rot__v { fill: var(--brilho); }
.r-rot.foco { fill: #fff; }
.roda__svg.compacto .r-rot { font-size: 18px; }
.roda__svg.compacto .r-escala text { font-size: 13px; }
.roda__controles { display: grid; gap: 6px; min-width: 0; margin: 0; padding: 0; border: 0; }
.roda__legenda { padding: 0 0 10px; font-size: 11px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); }
.roda__legenda span { font-weight: 400; letter-spacing: 0.02em; text-transform: none; color: var(--branco-3); }
.controle {
	display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 0 12px; padding: 9px 14px 4px;
	border: 1px solid var(--linha); border-radius: 4px; background: rgba(255, 255, 255, 0.02);
	transition: border-color 0.3s, background-color 0.3s;
}
.controle.foco, .controle:focus-within { border-color: rgba(255, 51, 71, 0.55); background: rgba(215, 25, 45, 0.07); }
.controle label { font-size: 15px; font-weight: 500; line-height: 1.3; cursor: pointer; }
.controle label span { margin-right: 6px; font-size: 11px; color: var(--brilho); }
.controle output { font-size: 13px; font-weight: 700; color: #fff; font-variant-numeric: tabular-nums; }
.controle output::after { content: '/10'; font-weight: 400; color: var(--branco-3); }
.controle input { grid-column: 1 / -1; }

/* controle deslizante (range) no estilo HUD */
input[type='range'] {
	--p: 50%; -webkit-appearance: none; appearance: none; width: 100%; height: 34px; margin: 0; background: transparent; cursor: pointer;
	touch-action: pan-y;
}
input[type='range']::-webkit-slider-runnable-track {
	height: 6px; border-radius: 0;
	background:
		repeating-linear-gradient(90deg, transparent 0 calc(10% - 2px), #0d0c0f calc(10% - 2px) 10%),
		linear-gradient(90deg, var(--vermelho-3), var(--brilho) var(--p), rgba(255, 255, 255, 0.12) var(--p));
}
input[type='range']::-webkit-slider-thumb {
	-webkit-appearance: none; appearance: none; width: 20px; height: 20px; margin-top: -7px; border: 2px solid var(--brilho); border-radius: 3px;
	background: #0d0c0f; transform: rotate(45deg); box-shadow: 0 0 0 4px rgba(215, 25, 45, 0.22), 0 0 16px rgba(255, 51, 71, 0.6);
	transition: box-shadow 0.25s;
}
input[type='range']:active::-webkit-slider-thumb { box-shadow: 0 0 0 8px rgba(215, 25, 45, 0.25), 0 0 22px rgba(255, 51, 71, 0.8); }
input[type='range']::-moz-range-track { height: 6px; background: rgba(255, 255, 255, 0.12); }
input[type='range']::-moz-range-progress { height: 6px; background: linear-gradient(90deg, var(--vermelho-3), var(--brilho)); }
input[type='range']::-moz-range-thumb {
	width: 16px; height: 16px; border: 2px solid var(--brilho); border-radius: 3px; background: #0d0c0f; transform: rotate(45deg);
	box-shadow: 0 0 0 4px rgba(215, 25, 45, 0.22), 0 0 16px rgba(255, 51, 71, 0.6);
}
input[type='range']:focus { outline: none; }
input[type='range']:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

.roda__etapa { font-size: 11px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }
.roda__media { display: flex; justify-content: space-between; align-items: flex-end; gap: 10px; margin-top: 14px; }
.roda__media > .mono { padding-bottom: 8px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); }
.roda__media strong { font: 700 56px/1 var(--f-mono); letter-spacing: -0.05em; font-variant-numeric: tabular-nums; }
.roda__media p span { font: 500 14px var(--f-mono); color: var(--branco-3); }
.roda__media-barra { height: 6px; margin-top: 10px; background: rgba(255, 255, 255, 0.08); }
.roda__media-barra i { display: block; width: 50%; height: 100%; background: linear-gradient(90deg, var(--vermelho-3), var(--brilho)); transition: width 0.45s var(--ease); }
.roda__sub { margin-top: 22px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); }
.prioridades { display: grid; gap: 8px; margin-top: 10px; }
.prioridades li {
	display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 12px;
	border: 1px solid rgba(255, 51, 71, 0.42); border-radius: 3px; background: rgba(215, 25, 45, 0.09); font-weight: 500; line-height: 1.3;
}
.prioridades li .mono { font-size: 11px; color: var(--brilho); }
.prioridades li b { font-family: var(--f-mono); font-size: 14px; }
.prioridades li.prioridades__vazio { display: block; border: 1px dashed var(--linha-2); background: none; color: var(--branco-3); font-size: 14px; font-weight: 400; }
.roda__etapa--aja { margin-top: 22px; }
.roda__aja { margin-top: 6px; font-size: 15px; line-height: 1.55; color: var(--branco-2); }
.roda__botoes { display: grid; gap: 10px; margin-top: 16px; }
.roda__botoes .btn { width: 100%; padding: 13px 18px; white-space: normal; text-align: center; }
.roda__zerar { margin-top: 12px; padding: 6px 0; border: 0; background: none; color: var(--branco-3); font-size: 12px; letter-spacing: 0.06em; cursor: pointer; transition: color 0.3s; }
.roda__zerar:hover { color: #fff; }
.roda__nota { margin-top: 8px; font-size: 12.5px; line-height: 1.5; color: var(--branco-3); }
.citacao { display: grid; justify-items: center; gap: 18px; margin-top: clamp(72px, 10vw, 130px); text-align: center; }
.citacao__txt { max-width: 24ch; font-size: clamp(26px, 3.6vw, 52px); font-weight: 500; line-height: 1.12; letter-spacing: -0.03em; text-wrap: balance; }
.citacao figcaption { font-size: 12px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }
.citacao__retrato { width: clamp(112px, 10vw, 144px); aspect-ratio: 1; margin-bottom: 26px; }
.citacao__retrato img { display: block; width: 100%; height: 100%; object-fit: cover; border: 1px solid var(--linha-2); filter: grayscale(1) contrast(1.08); transition: filter 0.6s; }
.citacao__retrato::before {
	content: ''; position: absolute; inset: 1px; z-index: 2; pointer-events: none;
	background: linear-gradient(rgba(255, 51, 71, 0.1) 50%, transparent 50%) 0 0 / 100% 4px;
}
.citacao__retrato:hover img { filter: grayscale(0.3) sepia(0.25) contrast(1.08); }
.citacao__id { position: absolute; left: 50%; bottom: -24px; translate: -50% 0; white-space: nowrap; font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); }

/* ---------- [06] método ---------- */
.metodo__grade { display: grid; grid-template-columns: minmax(0, 420px) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: center; }
.feed {
	position: relative; display: block; width: 100%; aspect-ratio: 720 / 840; padding: 0; border: 1px solid var(--linha-2);
	border-radius: var(--raio); background: #000; cursor: pointer; text-align: left; color: #fff;
}
.feed img, .feed video {
	position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: inherit;
	filter: grayscale(1) contrast(1.1) brightness(0.78); transition: filter 0.6s, opacity 0.6s;
}
.feed video { opacity: 0; }
.feed:hover video { opacity: 1; }
.feed:hover img, .feed:hover video { filter: grayscale(0.1) contrast(1.05) brightness(0.92); }
.feed::before {
	content: ''; position: absolute; inset: 0; z-index: 1; border-radius: inherit; pointer-events: none;
	background:
		linear-gradient(180deg, rgba(10, 10, 12, 0.35), transparent 30%, transparent 50%, rgba(10, 10, 12, 0.92)),
		repeating-linear-gradient(0deg, rgba(0, 0, 0, 0.16) 0 1px, transparent 1px 3px);
}
.feed__hud {
	position: absolute; z-index: 2; top: 14px; left: 14px; right: 14px; display: flex; justify-content: space-between; gap: 8px;
	font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase;
}
.feed__hud > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.feed__hud .ponto { width: 6px; height: 6px; }
.feed__mira { position: absolute; z-index: 2; left: 50%; top: 64%; width: 128px; height: 128px; margin: -64px 0 0 -64px; border: 1px solid rgba(255, 255, 255, 0.3); border-radius: 50%; transition: transform 0.6s var(--ease); }
.feed__mira::before, .feed__mira::after { content: ''; position: absolute; background: rgba(255, 255, 255, 0.45); }
.feed__mira::before { left: -14px; right: -14px; top: 50%; height: 1px; -webkit-mask: linear-gradient(90deg, #000 0 12px, transparent 12px calc(100% - 12px), #000 calc(100% - 12px)); mask: linear-gradient(90deg, #000 0 12px, transparent 12px calc(100% - 12px), #000 calc(100% - 12px)); }
.feed__mira::after { top: -14px; bottom: -14px; left: 50%; width: 1px; -webkit-mask: linear-gradient(180deg, #000 0 12px, transparent 12px calc(100% - 12px), #000 calc(100% - 12px)); mask: linear-gradient(180deg, #000 0 12px, transparent 12px calc(100% - 12px), #000 calc(100% - 12px)); }
.feed:hover .feed__mira { transform: scale(1.25) rotate(45deg); }
.feed__play {
	position: absolute; z-index: 3; left: 50%; top: 64%; display: grid; place-items: center; width: 70px; height: 70px; margin: -35px 0 0 -35px;
	border-radius: 50%; background: var(--vermelho); color: #fff; box-shadow: 0 0 0 8px rgba(215, 25, 45, 0.24), 0 0 44px rgba(255, 51, 71, 0.6);
	transition: transform 0.45s var(--ease);
}
.feed__play svg { margin-left: 3px; }
.feed:hover .feed__play { transform: scale(1.1); }
.feed__legenda { position: absolute; z-index: 4; left: 18px; right: 18px; bottom: 18px; font-size: 19px; font-weight: 500; line-height: 1.22; letter-spacing: -0.01em; }
.feed__legenda .mono { display: block; margin-bottom: 6px; font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }
.metodo__cargo { margin-top: 10px; font-size: 12px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); }
.metodo__texto .titulo-2 { margin-top: 14px; }
.metodo__texto .texto-suave { margin-top: 16px; }
.metodo__sub { margin-top: 38px; font-size: 24px; font-weight: 500; letter-spacing: -0.02em; }
.base { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 22px; }
.base__item { padding: 20px; }
.base__t { font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); }
.base__num { margin-top: 10px; font: 600 46px/1 var(--f-disp); letter-spacing: -0.045em; }
.base__num small { font: 500 14px var(--f-disp); letter-spacing: 0; color: var(--branco-2); }
.base__num--txt { font-size: 25px; letter-spacing: -0.02em; color: var(--brilho); line-height: 1.2; }
.base__item p:last-child { margin-top: 10px; font-size: 15px; line-height: 1.5; color: var(--branco-2); }
.metodo__texto .link-corre { display: inline-block; margin-top: 26px; font-size: 13px; letter-spacing: 0.06em; color: var(--branco-2); }
.filme { margin-top: clamp(64px, 9vw, 120px); overflow: hidden; }
html:not(.anim-ok) .filme { overflow-x: auto; }
.filme__trilho { display: flex; gap: 14px; width: max-content; padding-inline: var(--gutter); }
.filme__quadro { position: relative; width: clamp(196px, 22vw, 300px); aspect-ratio: 720 / 840; overflow: hidden; border: 1px solid var(--linha); border-radius: 4px; }
.filme__quadro img { width: 100%; height: 100%; object-fit: cover; filter: grayscale(1) contrast(1.1) brightness(0.72); transition: filter 0.6s, transform 0.9s var(--ease); }
.filme__quadro:hover img { filter: grayscale(0.1) brightness(0.95); transform: scale(1.05); }
.filme__quadro figcaption {
	position: absolute; left: 10px; bottom: 10px; padding: 5px 7px; border-left: 2px solid var(--brilho); background: rgba(10, 10, 12, 0.78);
	font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase;
}

/* ---------- [07] depoimentos ---------- */
.depo__topo { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr); gap: 20px 64px; align-items: end; margin-bottom: clamp(36px, 5vw, 60px); }
.depo__rolo { width: min(var(--max), 100% - 2 * var(--gutter)); margin-inline: auto; }
.depo__grade { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.depo__tile {
	position: relative; display: block; width: 100%; aspect-ratio: 9 / 16; padding: 0; border: 1px solid var(--linha-2); border-radius: var(--raio);
	background: #000; color: #fff; text-align: left; cursor: pointer; will-change: transform;
}
.depo__tile img, .depo__tile video {
	position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: inherit;
	filter: grayscale(0.9) contrast(1.06) brightness(0.8); transition: filter 0.6s, opacity 0.6s;
}
.depo__tile video { opacity: 0; }
.depo__tile:hover video { opacity: 1; }
.depo__tile:hover img, .depo__tile:hover video { filter: none; }
.depo__tile::before {
	content: ''; position: absolute; inset: 0; z-index: 1; border-radius: inherit; pointer-events: none;
	background: linear-gradient(180deg, rgba(10, 10, 12, 0.5), transparent 22%, transparent 55%, rgba(10, 10, 12, 0.94));
}
.depo__hud {
	position: absolute; z-index: 2; top: 14px; left: 14px; right: 14px; display: flex; justify-content: space-between;
	font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase;
}
.depo__hud > span:first-child { display: inline-flex; align-items: center; gap: 8px; }
.depo__hud .ponto { width: 6px; height: 6px; }
.depo__play {
	position: absolute; z-index: 2; left: 50%; top: 50%; display: grid; place-items: center; width: 60px; height: 60px; margin: -30px 0 0 -30px;
	border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 50%; background: rgba(10, 10, 12, 0.35); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
	transition: background-color 0.4s, transform 0.4s var(--ease), border-color 0.4s;
}
.depo__play svg { margin-left: 3px; }
.depo__tile:hover .depo__play { background: var(--vermelho); border-color: var(--brilho); transform: scale(1.08); }
.depo__nome { position: absolute; z-index: 2; left: 18px; right: 18px; bottom: 18px; display: grid; gap: 4px; }
.depo__nome strong { font-size: 22px; font-weight: 600; letter-spacing: -0.02em; }
.depo__nome .mono { font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); }
.depo__dica { display: none; }

/* ---------- [08] para quem é ---------- */
.alvos__grade { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.alvos__intro .texto-suave { margin-top: 20px; }
.alvos__lista { border-top: 1px solid var(--linha); }
.alvo {
	position: relative; isolation: isolate; display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; align-items: center; gap: 16px;
	padding: 19px 10px; border-bottom: 1px solid var(--linha); overflow: hidden;
}
.alvo::before {
	content: ''; position: absolute; inset: 0; z-index: -1; transform: scaleX(0); transform-origin: left;
	background: linear-gradient(90deg, rgba(215, 25, 45, 0.24), rgba(215, 25, 45, 0.02)); transition: transform 0.55s var(--ease);
}
.alvo:hover::before { transform: scaleX(1); }
.alvo__n { font-size: 12px; color: var(--branco-3); transition: color 0.3s; }
.alvo:hover .alvo__n { color: var(--brilho); }
.alvo__nome { font-size: clamp(22px, 2.4vw, 34px); font-weight: 500; line-height: 1.12; letter-spacing: -0.025em; transition: transform 0.55s var(--ease); }
.alvo:hover .alvo__nome { transform: translateX(10px); }
.alvo__ok {
	font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); opacity: 0; transform: translateX(10px);
	transition: opacity 0.4s, transform 0.4s var(--ease);
}
.alvo:hover .alvo__ok { opacity: 1; transform: none; }
.alvo-foto { position: fixed; left: 0; top: 0; z-index: 45; pointer-events: none; will-change: transform; }
.alvo-foto__in {
	position: relative; width: 230px; aspect-ratio: 720 / 840; margin: -150px 0 0 28px; overflow: hidden; border: 1px solid rgba(255, 51, 71, 0.55);
	border-radius: 4px; background: #000; opacity: 0; transform: scale(0.85) rotate(-3deg);
	transition: opacity 0.35s, transform 0.5s var(--ease); box-shadow: 0 30px 70px -20px rgba(0, 0, 0, 0.8);
}
.alvo-foto.vis .alvo-foto__in { opacity: 1; transform: none; }
.alvo-foto img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; filter: grayscale(1) contrast(1.15) brightness(0.8); transition: opacity 0.35s; }
.alvo-foto img.on { opacity: 1; }
.alvo-foto__in::after { content: ''; position: absolute; inset: 0; background: var(--vermelho); mix-blend-mode: color; opacity: 0.55; }
.alvo-foto__hud {
	position: absolute; z-index: 2; left: 8px; right: 8px; bottom: 8px; padding: 4px 6px; border-left: 2px solid var(--brilho); background: rgba(10, 10, 12, 0.8);
	font-size: 9.5px; line-height: 1.45; letter-spacing: 0.14em; text-transform: uppercase;
}

/* ---------- [09] resultados + compromisso ---------- */
.result__grade { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.result__intro .texto-suave { margin-top: 20px; }
.checklist { display: grid; gap: 10px; }
.check {
	display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 16px; padding: 18px 20px;
	border: 1px solid var(--linha); border-radius: var(--raio); background: rgba(255, 255, 255, 0.02); transition: border-color 0.5s, background-color 0.5s;
}
.check__caixa {
	display: grid; place-items: center; width: 34px; height: 34px; border: 1.5px solid rgba(255, 255, 255, 0.3); border-radius: 3px;
	transition: background-color 0.4s, border-color 0.4s, box-shadow 0.4s;
}
.check__caixa svg { width: 22px; height: 22px; fill: none; stroke: #fff; stroke-width: 2.6; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 24; stroke-dashoffset: 0; transition: stroke-dashoffset 0.55s 0.15s cubic-bezier(0.6, 0, 0.2, 1); }
.check__txt { font-size: clamp(18px, 1.7vw, 24px); font-weight: 500; letter-spacing: -0.015em; transition: color 0.5s; }
.check__ok { font-size: 11px; font-weight: 700; letter-spacing: 0.16em; color: var(--brilho); transition: opacity 0.4s 0.3s; }
.check.feito { border-color: rgba(255, 51, 71, 0.4); background: rgba(215, 25, 45, 0.07); }
.check.feito .check__caixa { border-color: var(--brilho); background: var(--vermelho); box-shadow: 0 0 18px rgba(255, 51, 71, 0.5); }
.anim-ok .check:not(.feito) .check__caixa svg { stroke-dashoffset: 24; }
.anim-ok .check:not(.feito) .check__txt { color: var(--branco-3); }
.anim-ok .check:not(.feito) .check__ok { opacity: 0; }
.compromisso {
	display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr); gap: 36px; align-items: center;
	margin-top: clamp(56px, 8vw, 100px); padding: clamp(24px, 3.4vw, 48px);
}
.compromisso__titulo { margin-top: 14px; font-size: clamp(24px, 2.6vw, 36px); font-weight: 500; line-height: 1.16; letter-spacing: -0.025em; }
.ciclo { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.ciclo::before {
	content: ''; position: absolute; left: 0; right: 0; top: 17px; height: 1px; transform: scaleX(var(--linha, 1)); transform-origin: left;
	background: linear-gradient(90deg, var(--brilho), rgba(255, 51, 71, 0.15));
}
.ciclo li { position: relative; padding-right: 12px; }
.ciclo li span {
	position: relative; z-index: 1; display: grid; place-items: center; width: 34px; height: 34px; border: 1px solid var(--brilho); border-radius: 50%;
	background: var(--preto); color: var(--brilho); font-size: 11px; font-weight: 700;
}
.ciclo li p { margin-top: 14px; font-size: 16.5px; font-weight: 500; line-height: 1.3; }

/* ---------- [10] oferta ---------- */
.oferta__painel {
	display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr); border-color: rgba(255, 51, 71, 0.32);
	background:
		radial-gradient(80% 60% at 0% 0%, rgba(215, 25, 45, 0.22), transparent 62%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.015));
}
.oferta__principal { padding: clamp(26px, 4vw, 56px); }
.oferta__ficha { padding: clamp(26px, 3vw, 44px); border-left: 1px solid var(--linha); background: rgba(0, 0, 0, 0.22); border-radius: 0 var(--raio) var(--raio) 0; }
.status {
	display: inline-flex; align-items: center; gap: 10px; padding: 7px 12px; border: 1px solid rgba(255, 51, 71, 0.45); border-radius: 3px;
	background: rgba(215, 25, 45, 0.08); font-size: 11.5px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--brilho);
}
.oferta__titulo { margin-top: 20px; font-size: clamp(30px, 3.6vw, 52px); font-weight: 500; line-height: 1.04; letter-spacing: -0.035em; text-wrap: balance; }
.oferta__preco {
	display: block; margin-top: 8px; font: 700 clamp(68px, 9vw, 132px)/0.9 var(--f-disp); letter-spacing: -0.055em; color: var(--brilho);
	text-shadow: 0 0 60px rgba(255, 51, 71, 0.35); white-space: nowrap; font-variant-numeric: tabular-nums;
}
.oferta__rs { margin-right: 0.12em; font-size: 0.34em; letter-spacing: -0.02em; color: #fff; vertical-align: 1.05em; }
.oferta__cent { font-size: 0.3em; letter-spacing: 0; color: var(--branco-2); }
.oferta__principal > .texto-suave { margin-top: 18px; }
.contagem--grande { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; max-width: 520px; margin-top: 26px; }
.contagem__bloco { padding: 14px 6px 10px; border: 1px solid var(--linha-2); border-radius: 4px; background: rgba(0, 0, 0, 0.35); text-align: center; }
.contagem__bloco b { display: block; font-size: clamp(30px, 3.6vw, 48px); font-weight: 700; line-height: 1; letter-spacing: -0.02em; color: #fff; font-variant-numeric: tabular-nums; }
.contagem__bloco span { display: block; margin-top: 6px; font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--branco-3); }
.contagem--grande [data-contagem-fim] { grid-column: 1 / -1; font-size: 14px; color: var(--branco-2); }
.oferta__nota-hora { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 10px; font-size: 11px; letter-spacing: 0.06em; color: var(--branco-3); }
.oferta__principal .btn--xg { width: 100%; max-width: 520px; margin-top: 26px; }
.oferta__alt { margin-top: 16px; font-size: 15px; color: var(--branco-2); }
.oferta__ficha-t, .invest__t { font-size: 11px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }
.ficha { display: grid; margin-top: 12px; }
.ficha > div { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 12px; padding: 12px 0; border-bottom: 1px dashed var(--linha-2); }
.ficha dt { padding-top: 3px; font-size: 10.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--branco-3); }
.ficha dd { font-size: 15.5px; line-height: 1.45; }
.provisorio { margin-left: 4px; color: #ff6b7a; }
.invest { margin-top: 26px; padding: 18px; border: 1px solid var(--linha); border-radius: 4px; background: rgba(255, 255, 255, 0.02); }
.invest__lista { display: grid; gap: 12px; margin-top: 12px; }
.invest__lista > div { display: grid; gap: 2px; }
.invest__lista dt { font-size: 13.5px; color: var(--branco-2); }
.invest__lista dd b { font-size: 20px; font-weight: 600; letter-spacing: -0.01em; }
.invest__lista dd small { font-size: 12.5px; color: var(--branco-3); }
.invest__parc, .invest__empresas { margin-top: 12px; font-size: 14.5px; color: var(--branco-2); }

/* ---------- rodapé ---------- */
.rodape { position: relative; overflow: hidden; padding: 72px 0 0; border-top: 1px solid var(--linha); background: linear-gradient(180deg, transparent, rgba(90, 8, 17, 0.2)); }
.rodape__in { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 32px 64px; }
.rodape__marca { display: grid; justify-items: start; gap: 14px; }
.rodape__simbolo { width: 52px; height: auto; }
.rodape__nome { width: 170px; height: auto; }
.rodape__marca p { color: var(--branco-2); }
.rodape__links { display: grid; align-content: start; gap: 10px; font-size: 15px; }
.rodape__fim { grid-column: 1 / -1; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 24px; padding-top: 24px; border-top: 1px solid var(--linha); color: var(--branco-3); }
.rodape__fim .mono { font-size: 11.5px; letter-spacing: 0.06em; }
.rodape__gigante {
	margin-top: 36px; font: 700 clamp(120px, 29vw, 440px)/0.78 var(--f-disp); letter-spacing: -0.06em; text-align: center; user-select: none;
	color: transparent; -webkit-text-stroke: 1px rgba(255, 51, 71, 0.4); transform: translateY(14%);
	background: linear-gradient(180deg, rgba(255, 51, 71, 0.28), transparent 75%); -webkit-background-clip: text; background-clip: text;
}

/* ---------- barra fixa no celular ---------- */
.barra-movel {
	position: fixed; left: 10px; right: 10px; bottom: calc(10px + env(safe-area-inset-bottom)); z-index: 60; display: none; align-items: center;
	justify-content: space-between; gap: 10px; padding: 8px 8px 8px 14px; border: 1px solid rgba(255, 51, 71, 0.42); border-radius: 6px;
	background: rgba(13, 12, 15, 0.9); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.85);
	transition: transform 0.55s var(--ease);
}
.barra-ok .barra-movel:not(.visivel) { transform: translateY(150%); }
.barra-movel__info { display: grid; gap: 3px; min-width: 0; font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--branco-2); }
.barra-movel__t { display: inline-flex; align-items: center; gap: 7px; }
.barra-movel__t .ponto { width: 6px; height: 6px; }
.barra-movel__c { font-variant-numeric: tabular-nums; white-space: nowrap; }
.barra-movel__c b { color: #fff; font-size: 13px; font-weight: 700; }
.barra-movel__info.encerrada .barra-movel__c { display: none; }
.barra-movel .btn { --h: 46px; flex: none; padding: 0 16px; font-size: 14px; }

/* ---------- cursor em mira (só com mouse) ---------- */
html.mira-on, html.mira-on * { cursor: none !important; }
.mira { position: fixed; inset: 0; z-index: 10050; overflow: hidden; pointer-events: none; opacity: 0; transition: opacity 0.3s; }
.mira.vis { opacity: 1; }
.mira i, .mira span { position: absolute; left: 0; top: 0; will-change: transform; }
.mira__h { right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(255, 51, 71, 0.13) 30%, rgba(255, 51, 71, 0.13) 70%, transparent); }
.mira__v { bottom: 0; width: 1px; background: linear-gradient(180deg, transparent, rgba(255, 51, 71, 0.13) 30%, rgba(255, 51, 71, 0.13) 70%, transparent); }
.mira__anel {
	width: 34px; height: 34px; margin: -17px 0 0 -17px; border: 1px solid rgba(255, 255, 255, 0.6); border-radius: 50%;
	transition: width 0.35s var(--ease), height 0.35s var(--ease), margin 0.35s var(--ease), border-color 0.3s, background-color 0.3s;
}
.mira__anel::before, .mira__anel::after { content: ''; position: absolute; background: rgba(255, 255, 255, 0.85); }
.mira__anel::before { left: -9px; right: -9px; top: 50%; height: 1px; -webkit-mask: linear-gradient(90deg, #000 0 6px, transparent 6px calc(100% - 6px), #000 calc(100% - 6px)); mask: linear-gradient(90deg, #000 0 6px, transparent 6px calc(100% - 6px), #000 calc(100% - 6px)); }
.mira__anel::after { top: -9px; bottom: -9px; left: 50%; width: 1px; -webkit-mask: linear-gradient(180deg, #000 0 6px, transparent 6px calc(100% - 6px), #000 calc(100% - 6px)); mask: linear-gradient(180deg, #000 0 6px, transparent 6px calc(100% - 6px), #000 calc(100% - 6px)); }
.mira__ponto { width: 4px; height: 4px; margin: -2px 0 0 -2px; border-radius: 50%; background: var(--brilho); box-shadow: 0 0 8px var(--brilho); }
.mira__coord {
	padding: 3px 6px; background: rgba(10, 10, 12, 0.66); font-size: 10px; letter-spacing: 0.08em; color: rgba(255, 255, 255, 0.78);
	white-space: nowrap; font-variant-numeric: tabular-nums; transition: color 0.3s;
}
.mira.ativa .mira__anel { width: 62px; height: 62px; margin: -31px 0 0 -31px; border-color: var(--brilho); background: rgba(215, 25, 45, 0.12); }
.mira.ativa .mira__coord { color: var(--brilho); }

/* ---------- pop-up de reserva e vídeo no estilo HUD ---------- */
.mm-reserva {
	--rv-fundo: #0e0d10; --rv-texto: #f4f2ef; --rv-suave: rgba(244, 242, 239, 0.66); --rv-acento: #d7192d; --rv-acento-2: #ff3347;
	--rv-borda: rgba(255, 255, 255, 0.15); --rv-campo: rgba(255, 255, 255, 0.035); --rv-erro: #ff7685;
}
.mm-reserva__painel {
	border-radius: var(--raio); border-color: rgba(255, 51, 71, 0.4);
	background:
		linear-gradient(rgba(255, 255, 255, 0.03) 1px, transparent 1px) 0 0 / 24px 24px,
		linear-gradient(90deg, rgba(255, 255, 255, 0.03) 1px, transparent 1px) 0 0 / 24px 24px,
		radial-gradient(120% 70% at 100% 0%, rgba(215, 25, 45, 0.3), transparent 60%),
		var(--rv-fundo);
	box-shadow: 0 50px 120px -30px rgba(0, 0, 0, 0.8), 0 0 60px -20px rgba(215, 25, 45, 0.5);
}
.mm-reserva__selo { border: 1px solid rgba(255, 51, 71, 0.55); border-radius: 2px; background: rgba(215, 25, 45, 0.14); color: var(--brilho); font-family: var(--f-mono); font-weight: 700; }
.mm-reserva__titulo { font-weight: 600; letter-spacing: -0.025em; }
.mm-reserva__turma { font-family: var(--f-mono); font-size: 12.5px; letter-spacing: 0.06em; text-transform: uppercase; }
.mm-reserva__preco strong { font-weight: 700; letter-spacing: -0.04em; }
.mm-reserva__campo span { font-family: var(--f-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; }
.mm-reserva__campo input, .mm-reserva__enviar, .mm-reserva__x { border-radius: 4px; }
.mm-caixa video { border-radius: var(--raio); }
.mm-caixa figcaption { font-family: var(--f-mono); font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; }

/* ---------- responsivo ---------- */
@media (max-width: 1359px) { .topo__status { display: none; } }
@media (min-width: 1360px) { .trilho-lateral { display: flex; } }
@media (max-width: 1199px) {
	.roda__app { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: 'visor ctrl' 'anal anal'; }
	.roda__botoes { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
}
@media (max-width: 1023px) {
	.topo__nav { display: none; }
	.topo .btn { margin-left: auto; }
	.inter__cards { grid-template-columns: minmax(0, 1fr); }
	.cartao { min-height: 0; }
	.metodo__grade { grid-template-columns: minmax(0, 360px) minmax(0, 1fr); }
}
@media (max-width: 899px) {
	.hero { min-height: 0; justify-content: flex-start; }
	.hero__grade { grid-template-columns: minmax(0, 1fr); }
	.radar { width: min(100%, 420px); }
	.diag__grade, .jornada__intro, .com__grade, .roda__intro, .depo__topo, .alvos__grade, .result__grade, .compromisso { grid-template-columns: minmax(0, 1fr); }
	.jornada__grade { display: block; }
	.jornada__painel { display: none; }
	.jornada__janela { --col: 52px; }
	.jornada__trilha { padding: 64px 0 8px; }
	.etapa { margin-bottom: 64px; }
	.etapa__card { padding: 22px 20px; }
	.anim-ok .etapa:not(.ativa) .etapa__card { opacity: 0.45; transform: translateX(10px); }
	.metodo__grade { grid-template-columns: minmax(0, 1fr); }
	.feed { max-width: 460px; }
	.oferta__painel { grid-template-columns: minmax(0, 1fr); }
	.oferta__ficha { border-left: 0; border-top: 1px solid var(--linha); border-radius: 0 0 var(--raio) var(--raio); }
	.depo__rolo { width: 100%; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; padding: 0 var(--gutter) 6px; scroll-padding-inline: var(--gutter); }
	.depo__rolo::-webkit-scrollbar { display: none; }
	.depo__grade { grid-template-columns: repeat(3, min(72vw, 320px)); width: max-content; gap: 14px; }
	.depo__tile { scroll-snap-align: start; }
	.depo__dica { display: block; margin-top: 4px; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--brilho); }
	.rodape { padding-bottom: 88px; }
	.rodape__in { grid-template-columns: minmax(0, 1fr); }
	.alvos__intro { position: static; }
	.barra-movel { display: flex; }
	.alvo__ok { opacity: 0.85; transform: none; }
}
@media (min-width: 900px) {
	.alvos__intro { position: sticky; top: calc(var(--topo-h) + 40px); }
}
@media (max-width: 759px) {
	.stats { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
	.stat { padding: 14px 14px 12px; }
	.roda__passos { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.passo { display: grid; grid-template-columns: 108px minmax(0, 1fr); gap: 8px; align-items: baseline; padding: 12px 14px; }
	.passo__n { font-size: 11px; letter-spacing: 0.1em; }
	.passo p { margin-top: 0; font-size: 14px; }
	.roda__app { grid-template-columns: minmax(0, 1fr); grid-template-areas: 'painel' 'anal'; }
	.roda__painel { display: block; grid-area: painel; }
	.roda__controles { margin-top: 14px; }
	.roda__analise { display: block; }
	.roda__visor {
		position: sticky; top: calc(var(--topo-h) + 6px); z-index: 5; padding: 10px 12px 6px;
		background: rgba(14, 13, 16, 0.95); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
	}
	.roda__svg { width: auto; max-width: 100%; max-height: 34svh; margin-top: 4px; }
	.base { grid-template-columns: minmax(0, 1fr); }
	.ciclo { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.ciclo::before { left: 17px; right: auto; top: 0; bottom: 0; width: 1px; height: auto; transform: scaleY(var(--linha, 1)); transform-origin: top; background: linear-gradient(180deg, var(--brilho), rgba(255, 51, 71, 0.15)); }
	.ciclo li { display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; gap: 14px; padding: 0; }
	.ciclo li p { margin-top: 0; }
	.ficha > div { grid-template-columns: 74px minmax(0, 1fr); }
}
@media (max-width: 600px) {
	:root { --topo-h: 60px; }
	body { font-size: 16px; }
	.secao__meta { display: none; }
	.so-largo { display: none; }
	.marca__nome { width: 96px; }
	.marca__simbolo { width: 28px; }
	.hero__acoes .btn { flex: 1 1 100%; }
	.hero__turma { gap: 10px; }
	.pergunta { grid-template-columns: minmax(0, 1fr); gap: 6px; padding: 18px; }
	.pergunta__n { padding-top: 0; }
	.terminal__barra { padding: 10px 14px; }
	.terminal__rodape { padding: 12px 18px 16px; }
	.faixa-cta__in { padding: 20px; }
	.faixa-cta__in .btn { width: 100%; }
	.alvo { grid-template-columns: 30px minmax(0, 1fr); padding: 16px 4px; gap: 10px; }
	.alvo__ok { display: none; }
	.check { padding: 14px; gap: 12px; grid-template-columns: 30px minmax(0, 1fr) auto; }
	.check__caixa { width: 30px; height: 30px; }
	.oferta__principal .btn--xg { padding: 0 18px; font-size: 16px; }
	.contagem--grande { gap: 6px; }
	.rodape__fim { flex-direction: column; }
}
@media (max-width: 399px) { .marca__tag { display: none; } }

/* ---------- movimento reduzido ---------- */
@media (prefers-reduced-motion: reduce) {
	.radar__feixe, .ticker__trilho, .hero__varredura::before, .ponto, .blip i, .terminal__cursor, .r-alvo, .j-no.on .j-no__pulso, .radar__rec i { animation: none !important; }
	.ticker { overflow-x: auto; }
	.cantos::after, .etapa__card, .alvo__nome, .feed__mira, .filme__quadro img { transition: none !important; }
}

/* ============ CHAMADA NO MEIO DA PÁGINA ============ */
.chamada { position: relative; padding: clamp(36px, 6vw, 80px) 0; }
.chamada__painel {
	display: grid; justify-items: center; gap: 18px; padding: clamp(32px, 6vw, 72px) clamp(20px, 4vw, 56px); text-align: center;
	border: 1px solid var(--linha-2); border-radius: var(--raio);
	background:
		linear-gradient(var(--linha) 1px, transparent 1px) 0 0 / 100% 32px,
		radial-gradient(60% 120% at 50% 0%, rgba(215, 25, 45, 0.22), transparent 70%), var(--grafite);
}
.chamada__status { display: inline-flex; align-items: center; gap: 10px; font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--brilho); }
.chamada__titulo { max-width: 22ch; font-family: var(--f-disp); font-weight: 500; font-size: clamp(30px, 4.4vw, 60px); line-height: 1.04; letter-spacing: -0.035em; text-wrap: balance; }
.chamada__titulo span { color: var(--brilho); }
.chamada__sub { max-width: 52ch; color: var(--branco-2); }
.chamada__acoes { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 10px; }
