/* Recriação estática da referência fornecida. Nenhum texto principal está em imagem. */
:root {
  color-scheme: dark;
  --black: #020404;
  --navy: #061221;
  --navy-card: #09192b;
  --gold: #dfad22;
  --gold-light: #f4ce65;
  --warm: #f1eee8;
  --muted: #c2c9d2;
  --ink: #11131a;
  --rule: rgb(233 205 140 / 24%);
  --font: 'Inter', Arial, Helvetica, sans-serif;
  --gutter: clamp(20px, 10.5vw, 190px);
  --max-width: 1420px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--black); }
body { margin: 0; font-family: var(--font); font-size: 16px; color: var(--warm); -webkit-font-smoothing: antialiased; line-height: 1.5; }
body, main { min-width: 0; }
h1,h2,h3,p,figure { margin: 0; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font: inherit; }
button,a,summary { -webkit-tap-highlight-color: transparent; }
[hidden] { display: none !important; }
:focus-visible { outline: 3px solid var(--gold-light); outline-offset: 5px; }
::selection { color: var(--black); background: var(--gold-light); }
section { position: relative; scroll-margin-top: 20px; }
.container { width: calc(100% - var(--gutter) * 2); max-width: var(--max-width); margin-inline: auto; min-width: 0; }
.narrow { max-width: 1000px; }
.h1,.h2,.h3 { font-weight: 800; letter-spacing: -.035em; text-wrap: balance; }
.h1 { font-size: clamp(30px, 3vw, 50px); line-height: 1.14; }
.h2 { font-size: clamp(24px, 2vw, 34px); line-height: 1.25; }
.h3 { font-size: clamp(19px, 1.45vw, 25px); line-height: 1.35; letter-spacing: -.02em; }
.t1 { font-size: clamp(15px, 1.05vw, 18px); font-weight: 650; line-height: 1.4; }
.t2 { font-size: clamp(15px, 1.05vw, 18px); line-height: 1.6; }
.t3 { font-size: 12px; line-height: 1.5; }
.upper { text-transform: uppercase; }
.gold-text { color: var(--gold-light); }
.icon { width: 24px; height: 24px; flex: 0 0 auto; }
.icon-fill { fill: currentColor; stroke-width: .6; }
.fineprint { font-size: 12px; line-height: 1.6; color: #b6bec8; max-width: 850px; margin-inline: auto; }
.skip-link { position: fixed; top: 12px; left: 12px; transform: translateY(-170%); z-index: 50; padding: 14px 18px; color: var(--black); background: var(--gold-light); border-radius: 4px; }
.skip-link:focus { transform: translateY(0); }
.mobile-break { display: none; }
.announcement { position: relative; z-index: 2; min-height: 34px; padding: 8px 20px; display: flex; align-items: center; justify-content: center; gap: 10px; color: #191a1d; background: linear-gradient(105deg,var(--gold-light),#e4b431,var(--gold-light)); font-size: 11px; line-height: 1.5; font-weight: 800; text-align: center; text-transform: uppercase; }
.announcement .icon { width: 14px; height: 14px; }
.brand { display: inline-flex; align-items: center; justify-content: center; gap: 10px; }
.brand img { width: 48px; height: 48px; object-fit: contain; }
.brand>span { font-size: 17px; letter-spacing: .025em; line-height: 1.02; text-align: left; font-weight: 800; }
.btn { position: relative; z-index: 0; display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-height: 52px; padding: 15px 32px; border: 2px solid #c8ffda; border-radius: 100px; color: #031209; background: linear-gradient(110deg,transparent 35%,rgb(248 255 250 / 25%) 50%,transparent 65%) -140% 0 / 220% 100% no-repeat, linear-gradient(115deg,#62f29a 0%,#32df78 46%,#0eaa55 100%); box-shadow: 0 0 0 5px rgb(37 220 113 / 12%), 0 16px 34px rgb(25 202 105 / 36%), inset 0 2px 0 rgb(248 255 250 / 55%), inset 0 -4px 0 rgb(0 80 36 / 24%); font-weight: 800; font-size: 13px; line-height: 1.4; text-align: center; text-transform: uppercase; cursor: pointer; animation: cta-sheen 4.8s ease-in-out infinite; transition: filter .18s ease, transform .18s ease, box-shadow .18s ease; }
.btn::before { content: ''; position: absolute; inset: -8px; z-index: -1; border: 1px solid rgb(98 242 154 / 48%); border-radius: inherit; pointer-events: none; animation: cta-ring 3.6s ease-out infinite; }
.btn:hover { filter: brightness(1.06) saturate(1.08); transform: translateY(-2px); box-shadow: 0 16px 32px rgb(25 202 105 / 36%), inset 0 1px 0 rgb(248 255 250 / 58%), inset 0 -3px 0 rgb(0 80 36 / 22%); }
.btn:active { transform: translateY(0); }
.btn .icon { width: 18px; height: 18px; }
.btn .cta-arrow { display: inline-flex; transition: transform .18s ease; }
.btn:hover .cta-arrow { transform: translateX(3px); }
@keyframes cta-sheen {
  0%, 18% { background-position: -140% 0, 0 0; }
  48%, 100% { background-position: 140% 0, 0 0; }
}
@keyframes cta-ring {
  0%, 22% { opacity: .65; transform: scale(.96); }
  62%, 100% { opacity: 0; transform: scale(1.08); }
}
/* 01 · Fundo contínuo, composição central igual ao mock. */
.hero { isolation: isolate; text-align: center; padding: 24px 0 36px; background: radial-gradient(ellipse at 80% 7%,#0b223a 0,transparent 42%), radial-gradient(ellipse at 15% 85%,#071b28 0,transparent 42%),linear-gradient(130deg,#02070e,var(--navy) 62%,#02070d); }
.hero:before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: linear-gradient(52deg,transparent 0 25%,rgb(237 185 62 / 13%) 27%,transparent 31%),linear-gradient(132deg,transparent 0 80%,rgb(237 185 62 / 16%) 85%,transparent 90%); }
.hero-waves { position: absolute; inset: 0; pointer-events: none; z-index: -1; background: repeating-linear-gradient(54deg,transparent 0 4px,rgb(230 198 131 / 4%) 5px,transparent 6px); mask-image: linear-gradient(95deg,#000,transparent 30%,transparent 76%,#000); }
.hero-symbol { position: absolute; width: clamp(260px, 28vw, 560px); height: auto; right: -3%; top: 10%; opacity: .70; z-index: -1; pointer-events: none; filter: brightness(.8); }
.hero-content { position: relative; }
.hero-brand { margin-bottom: 24px; }
.hero .h1 { max-width: 1060px; margin-inline: auto; }
.hero .h1 span { color: var(--gold-light); }
.hero-lead { max-width: 850px; margin: 18px auto 20px; color: #e1e5ed; font-size: clamp(14px,1.03vw,17px); }
.video-panel { position: relative; width: min(100%, 580px); aspect-ratio: 16/9; margin: 0 auto 22px; border: 1px solid #445571; border-radius: 6px; background: linear-gradient(125deg,#141d36,#091b30); box-shadow: inset 0 0 0 2px rgb(208 221 239 / 3%),0 15px 35px rgb(0 0 0 / 15%); overflow: hidden; }
.video-slot { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; padding: 20px; }
.play-mark { width: 68px; height: 68px; border: 1px solid #e0e2e9; border-radius: 50%; display: grid; place-items: center; background: rgb(4 11 22 / 18%); }
.play-mark .icon { width: 38px; height: 38px; margin-left: -3px; }
.video-helper { color: #afbacd; }
.video-features { display: flex; justify-content: center; gap: 20px; margin-top: 6px; color: #d1d8e4; }
.video-features span { display: inline-flex; align-items: center; gap: 6px; font-size: 11px; line-height: 1.4; }
.video-features .icon { width: 19px; height: 19px; }
.video-trigger { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: transparent; cursor: pointer; }
.video-trigger:focus-visible { outline-offset: -5px; }
.video-speed-control { position: absolute; right: 12px; bottom: 12px; z-index: 5; display: none; }
.video-panel[data-video-state="playing"] .video-speed-control { display: block; }
.video-speed-button { min-width: 40px; min-height: 28px; padding: 4px 8px; border: 1px solid rgb(245 240 230 / 36%); border-radius: 4px; color: rgb(245 240 230 / 84%); background: rgb(2 7 14 / 62%); box-shadow: 0 3px 10px rgb(0 0 0 / 22%); font-size: 11px; font-weight: 700; line-height: 1; cursor: pointer; transition: background .18s ease, border-color .18s ease, color .18s ease; }
.video-speed-button:hover, .video-speed-control.is-open .video-speed-button { border-color: rgb(244 206 101 / 74%); color: var(--gold-light); background: rgb(2 7 14 / 86%); }
.video-speed-menu { position: absolute; right: 0; bottom: calc(100% + 7px); display: none; min-width: 75px; padding: 4px; border: 1px solid rgb(245 240 230 / 20%); border-radius: 5px; background: rgb(2 7 14 / 94%); box-shadow: 0 7px 20px rgb(0 0 0 / 30%); }
.video-speed-control.is-open .video-speed-menu { display: grid; gap: 2px; }
.video-speed-menu button { border: 0; border-radius: 3px; padding: 6px 8px; color: #d8dee8; background: transparent; font-size: 11px; line-height: 1; text-align: center; cursor: pointer; }
.video-speed-menu button:hover, .video-speed-menu button[aria-checked="true"] { color: #111; background: var(--gold-light); }
.video-speed-button:focus-visible, .video-speed-menu button:focus-visible { outline: 2px solid var(--gold-light); outline-offset: 2px; }
.video-mount,.video-mount iframe,.video-mount video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; background: #000; }
.video-poster { position: absolute; inset: 0; height: 100%; width: 100%; object-fit: cover; }
.video-slot.has-poster:before { content: ''; position: absolute; inset: 0; z-index: 1; background: rgb(0 0 0 / 45%); }
.video-slot.has-poster> :not(.video-poster) { position: relative; z-index: 2; }
.hero .btn { min-width: 350px; }
.human-note { display: flex; justify-content: center; align-items: center; gap: 8px; margin-top: 18px; color: #d6dbe2; }
.human-note .icon { width: 18px; height: 18px; color: var(--gold-light); }
/* 02 · Benefícios em seis cards, três colunas no desktop. */
.benefits { background: #020303; padding: 40px 0 42px; }
.benefits .h2 { text-align: center; margin-bottom: 26px; }
.benefits-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px 20px; max-width: 1150px; margin-inline: auto; }
.card { border: 1px solid #635229; border-radius: 5px; background: linear-gradient(112deg,rgb(226 172 42 / 8%),rgb(29 31 25 / 25%)); box-shadow: inset 0 0 0 2px rgb(214 178 73 / 3%); }
.benefit { display: flex; align-items: center; gap: 22px; min-height: 116px; padding: 22px 26px; }
.benefit>.icon { width: 44px; height: 44px; color: var(--gold-light); }
.benefit .t1 { font-size: 16px; font-weight: 600; letter-spacing: -.015em; }
/* 03 · Duas etapas brancas. */
.steps { padding: 40px 0 36px; text-align: center; background: radial-gradient(ellipse at 50% 80%,#232626,transparent 58%),#121718; }
.eyebrow { text-transform: uppercase; font-size: 11px; letter-spacing: .02em; color: #e2e4e6; margin-bottom: 5px; }
.steps .h2 { font-size: clamp(20px,1.65vw,29px); letter-spacing: -.025em; }
.steps-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px; max-width: 1000px; margin: 26px auto; }
.step { color: #11151b; background: #f5f5f3; border: 1px solid #dbdde0; border-radius: 5px; min-height: 140px; text-align: left; padding: 28px 28px 24px 80px; position: relative; }
.step-number { position: absolute; left: 20px; top: -18px; font-size: 85px; line-height: 1.1; letter-spacing: -.065em; font-weight: 800; color: #dfb441; text-shadow: -3px -4px 0 #fff6df; }
.step .t1 { font-weight: 800; margin-bottom: 8px; }
.step .t2 { font-size: 14px; line-height: 1.5; }
/* 04 · Roda nativa + situações expansíveis. */
.diagnosis { background: radial-gradient(ellipse at 15% 70%,#0a201f,transparent 46%),linear-gradient(120deg,#03111c,#061628 75%,#030d18); padding: 36px 0 42px; }
.diagnosis-grid { display: grid; grid-template-columns:minmax(0,1.13fr) minmax(0,1fr); gap: clamp(34px,4vw,85px); align-items: center; }
.diagnosis-visual { text-align: center; }
.diagnosis .h2 { font-size: clamp(21px,1.7vw,30px); line-height: 1.24; }
.diagnosis-visual>.t2 { margin-top: 10px; font-size: 15px; line-height: 1.4; color: #d0d7de; }
.wheel { position: relative; aspect-ratio: 1; width: min(100%, 500px); margin: 22px auto 0; border-radius: 50%; container-type: inline-size; }
.wheel-ring { position:absolute; inset: 0; border: 2px solid var(--gold-light); border-radius:50%; background:radial-gradient(circle, rgb(223 173 34 / 24%),transparent 52%),#080e0f; box-shadow: 0 0 32px rgb(231 183 36 / 12%),inset 0 0 25px rgb(218 167 29 / 10%); }
.wheel-spokes { position:absolute; inset: 0; border-radius:50%; background:repeating-conic-gradient(from 0deg, var(--gold-light) 0deg .4deg, transparent .7deg 60deg); filter: drop-shadow(0 0 4px rgb(223 173 34 / 38%)); }
.wheel-center { position:absolute; left:34%; top:34%; width:32%; height:32%; display:grid; align-content:center; border-radius:50%; border:2px solid var(--gold-light); box-shadow:0 0 30px rgb(234 186 39 / 46%); background:#070d10; text-align:center; color:#fff; text-transform:uppercase; font-size:clamp(15px,4.7cqi,25px); font-weight:750; line-height:1.12; }
.wheel-label { position:absolute; width:32%; transform:translate(-50%,-50%); font-size:clamp(9px,2.8cqi,15px); line-height:1.4; text-transform:uppercase; font-weight:550; text-align:center; }
.label-1 { left:31%; top:19%; }.label-2 { left:69%; top:19%; }.label-3 { left:81%; top:50%; }.label-4 { left:69%; top:81%; }.label-5 { left:31%; top:81%; }.label-6 { left:19%; top:50%; }
.scenarios .h3 { margin:0 0 24px; }
.scenarios-list { display:grid; gap:9px; }
.scenario { border:1px solid #405366; border-radius:4px; background:linear-gradient(90deg,#0a1a2a,#071625); box-shadow:inset 0 0 0 2px rgb(212 223 237 / 2%); }
.scenario summary { display:flex; align-items:center; gap:12px; padding:14px 15px; list-style:none; cursor:pointer; color:#e5e9ee; font-size:15px; line-height:1.45; min-height:58px; }
.scenario summary>.icon:first-child { color:var(--gold-light); width:18px; }
.scenario .disclosure { width:13px; height:13px; margin-left:auto; opacity:.4; }
.scenario[open] .disclosure { transform:rotate(180deg); }
.scenario p { font-size:14px; color:#bcc7d4; padding:0 18px 18px 44px; }
summary::-webkit-details-marker { display:none; }
/* 05 · Prova. Gráfico de linha com dois marcos documentados. */
.proof { color:var(--ink); background:#faf9f6; text-align:center; padding:42px 0 46px; }
.proof .h2 { max-width:920px; margin-inline:auto; font-size:clamp(28px,3.3vw,48px); line-height:1.06; }
.proof-accent { color:var(--gold); }
.proof-intro { max-width:800px; font-size:clamp(16px,1.5vw,21px); line-height:1.45; color:#53585e; margin:16px auto 32px; }
.line-chart-panel { max-width:900px; margin:0 auto 24px; padding:28px 34px 30px; text-align:left; border:1px solid rgb(244 206 101 / 19%); border-radius:14px; background:radial-gradient(circle at 88% 12%,rgb(244 206 101 / 8%),transparent 26%),linear-gradient(135deg,#252525 0%,#1b1d1c 100%); box-shadow:0 24px 60px rgb(23 20 11 / 18%),inset 0 1px 0 rgb(255 255 255 / 5%); color:#eee; }
.line-chart-header { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding-bottom:18px; }
.line-chart-meta { display:grid; gap:5px; }
.line-chart-kicker { color:#c8a34d; font-size:10px; font-weight:750; letter-spacing:.13em; line-height:1.3; text-transform:uppercase; }
.line-chart-label { color:#a9aeaa; font-size:12px; line-height:1.4; }
.line-chart-total { display:grid; justify-items:end; gap:1px; text-align:right; }
.line-chart-total strong { color:#f3f1eb; font-size:clamp(28px,3.4vw,43px); font-weight:800; letter-spacing:-.045em; line-height:1; font-variant-numeric:tabular-nums; }
.line-chart-total span { color:#d0b261; font-size:11px; line-height:1.3; }
.line-chart-plot { position:relative; min-height:320px; height:clamp(320px,35vw,380px); }
.line-chart-svg { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.line-chart-grid line { stroke:rgb(255 255 255 / 8%); stroke-width:1; vector-effect:non-scaling-stroke; }
.line-chart-grid .line-chart-axis { stroke:rgb(255 255 255 / 34%); stroke-width:1.15; }
.line-chart-line { fill:none; stroke:url(#line-chart-gradient); stroke-width:2.7; stroke-linecap:round; stroke-linejoin:round; vector-effect:non-scaling-stroke; }
.line-chart-dot { stroke:#202121; stroke-width:2.7; vector-effect:non-scaling-stroke; }
.line-chart-dot--start { fill:#777b77; }
.line-chart-dot--end { fill:#f4ce65; }
.line-chart-y-labels { position:absolute; z-index:1; top:7.5%; bottom:8.5%; left:0; display:flex; width:7%; flex-direction:column; align-items:flex-end; justify-content:space-between; color:#b7bbb6; font-size:clamp(10px,1.1vw,14px); line-height:1; font-variant-numeric:tabular-nums; }
.line-chart-x-labels { position:absolute; z-index:1; right:5.5%; bottom:1.5%; left:9.25%; display:flex; justify-content:space-between; color:#d0d0ca; font-size:clamp(11px,1.15vw,15px); font-weight:600; letter-spacing:.025em; line-height:1; }
.line-chart-value { position:absolute; z-index:1; color:#f1f0eb; font-size:clamp(16px,1.8vw,23px); font-weight:800; letter-spacing:-.035em; line-height:1; font-variant-numeric:tabular-nums; }
.line-chart-value--start { bottom:13%; left:10.5%; }
.line-chart-axis-title { position:absolute; z-index:1; color:#a8873b; font-size:9px; font-weight:750; letter-spacing:.11em; line-height:1; text-transform:uppercase; }
.line-chart-axis-title--y { top:0; left:0; }
.line-chart-axis-title--x { right:0; bottom:1.5%; }
.proof .fineprint { max-width:850px; color:#5d615f; }
/* 06 · Marcas e casos. */
.brands { text-align:center; background:#000; padding:28px 0 32px; }
.brands .h3,.cases>.container>.h3 { font-size:18px; letter-spacing:-.015em; }
.brand-strip { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; margin:30px auto 0; }
.brand-wordmark { font-weight:750; color:#bcbebd; font-size:clamp(16px,1.6vw,26px); letter-spacing:-.055em; line-height:1.1; }
.cases { padding:28px 0 26px; text-align:center; background:linear-gradient(90deg,#101313,#070a0c,#111717); }
.case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:24px 0 16px; }
.case-card { text-align:left; position:relative; overflow:hidden; min-height:252px; border:1px solid #75623c; border-radius:4px; isolation:isolate; background:#080b0a; }
.case-card:after { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,#17120bd9 0,#0a0b0ee6 32%,rgb(5 10 10 / 20%) 70%),linear-gradient(0deg,#020607 0,transparent 90%); pointer-events:none; }
.case-portrait { position:absolute; z-index:-2; right:0; width:65%; height:100%; object-fit:cover; object-position:center top; filter:saturate(.45); }
.illustration-label { display:block; color:#c6ced4; font-size:9px; line-height:1.3; letter-spacing:.035em; }
.case-card>.illustration-label { position:absolute; top:10px; right:10px; padding:4px 7px; border-radius:3px; color:#f2ecd9; background:rgb(0 0 0 / 68%); }
.case-copy { position:relative; z-index:2; display:flex; flex-direction:column; align-items:flex-start; padding:58px 22px 18px; min-height:252px; }
.case-copy h3 { max-width:60%; text-transform:uppercase; font-size:16px; line-height:1.22; font-weight:800; margin-bottom:14px; }
.case-copy p { font-size:13px; line-height:1.35; font-weight:450; }
.case-number { font-size:28px; line-height:1.15; color:var(--gold-light); }
.case-handle { display:flex; align-items:center; gap:6px; margin-top:18px; font-size:10px; color:#d5c391; overflow-wrap:anywhere; }
.case-handle .icon { width:14px; height:14px; }
/* 07 · Institucional, com fotos reais em um carrossel editorial. */
.about { overflow:hidden; background:radial-gradient(ellipse at 65% 40%,#123158,transparent 64%),linear-gradient(110deg,#041320,#061426,#020a13); text-align:center; padding:clamp(46px,6vw,78px) 0 36px; }
.about-carousel { position:relative; max-width:1260px; margin:28px auto 0; }
.about-track { display:flex; gap:18px; overflow-x:auto; padding:6px 2px 22px; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain; cursor:grab; }
.about-track::-webkit-scrollbar { display:none; }
.about-track.is-dragging { cursor:grabbing; scroll-behavior:auto; scroll-snap-type:none; }
.about-slide { position:relative; display:flex; flex:0 0 calc((100% - 36px) / 3); min-width:280px; flex-direction:column; overflow:hidden; scroll-snap-align:start; border:1px solid rgb(201 170 95 / 20%); border-radius:16px; text-align:left; background:linear-gradient(145deg,rgb(19 32 43 / 96%),rgb(7 15 23 / 98%)); box-shadow:0 18px 45px rgb(0 0 0 / 22%),inset 0 1px 0 rgb(255 255 255 / 4%); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.about-slide:hover { transform:translateY(-5px); border-color:rgb(244 206 101 / 42%); box-shadow:0 24px 50px rgb(0 0 0 / 30%),inset 0 1px 0 rgb(255 255 255 / 5%); }
.about-slide-media { position:relative; aspect-ratio:4 / 3; overflow:hidden; background:#0a0f15; }
.about-slide-media::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 58%,rgb(3 8 13 / 38%) 100%); pointer-events:none; }
.about-slide-media img { width:100%; height:100%; object-fit:cover; filter:saturate(.88) contrast(1.04); transition:transform .45s ease,filter .45s ease; }
.about-slide:nth-child(3) .about-slide-media img { object-position:center 38%; }
.about-slide:hover .about-slide-media img { transform:scale(1.035); filter:saturate(1) contrast(1.04); }
.about-carousel .carousel-arrow { top:43%; }
.about-copy { max-width:980px; margin:0 auto; display:grid; gap:10px; }
.about-copy .t2 { font-size:15px; line-height:1.55; color:#e1e5ec; }
.metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:36px 0 30px; }
.metrics>div { padding:0 20px; border-right:1px solid #445771; }
.metrics>div:last-child { border:0; }
.metrics span,.metrics p { font-size:13px; color:#d5dce6; }
.metrics strong { display:block; font-size:44px; font-weight:800; letter-spacing:-.06em; line-height:1.08; color:var(--gold-light); margin:2px 0 4px; }
.founders { max-width:1180px; margin:46px auto 0; }
.founders-heading { max-width:720px; margin:0 auto 24px; }
.founders-heading .eyebrow { color:var(--gold-light); letter-spacing:.1em; }
.founders-heading .h3 { margin-top:7px; }
.founders-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; max-width:1180px; margin:0 auto; text-align:left; }
.founder-card { position:relative; overflow:hidden; border:1px solid rgb(201 170 95 / 28%); border-radius:18px; background:#061322; box-shadow:0 22px 48px rgb(0 0 0 / 24%),inset 0 1px 0 rgb(255 255 255 / 5%); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease; }
.founder-card::before { content:''; position:absolute; z-index:3; inset:0 18% auto; height:2px; background:linear-gradient(90deg,transparent,var(--gold-light),transparent); opacity:.72; pointer-events:none; }
.founder-card:hover { transform:translateY(-6px); border-color:rgb(244 206 101 / 58%); box-shadow:0 30px 60px rgb(0 0 0 / 32%),inset 0 1px 0 rgb(255 255 255 / 7%); }
.founder-photo { position:relative; aspect-ratio:4 / 5; overflow:hidden; background:#9aa0a7; }
.founder-photo::after { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,transparent 38%,rgb(4 13 26 / 8%) 49%,rgb(4 13 26 / 72%) 74%,#061322 100%); pointer-events:none; }
.founder-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; filter:saturate(.9) contrast(1.03); transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .45s ease; }
.founder-card:hover .founder-photo img { transform:scale(1.045); filter:saturate(1) contrast(1.05); }
.founder-meta { position:absolute; z-index:2; inset:auto 18px 18px; display:grid; gap:4px; text-align:left; }
.founder-meta h4 { margin:0; color:var(--gold-light); font-size:clamp(20px,1.75vw,28px); line-height:1.05; letter-spacing:-.025em; font-weight:850; text-transform:uppercase; }
.founder-meta p { margin:0; color:#f2f4f6; font-size:clamp(12px,1vw,14px); font-weight:750; letter-spacing:.01em; line-height:1.25; }
.founder-bio { display:flex; align-items:center; min-height:158px; padding:21px 20px 23px; background:linear-gradient(180deg,#061322,#071827); }
.founder-bio p { color:#e1e6ec; font-size:13px; line-height:1.5; text-align:center; font-style:italic; }
.about-notice { font-size:11px; margin-top:18px; color:#adb9c8; }
/* 08 · FAQ e final. */
.faq { background:radial-gradient(ellipse at 40% 100%,#02131e,transparent 70%),#010506; padding:36px 0 38px; text-align:center; }
.faq .h2 { font-size:25px; }
.faq-list { max-width:750px; display:grid; gap:7px; margin:22px auto 28px; text-align:left; }
.faq-item { border:1px solid #32404a; border-radius:4px; background:#06131e; }
.faq-item summary { display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:44px; padding:11px 16px; list-style:none; cursor:pointer; font-size:14px; line-height:1.4; }
.faq-item summary .icon { width:16px; height:16px; color:#e8dbc1; transition:transform .18s ease; }
.faq-item[open] summary .icon { transform:rotate(180deg); }
.faq-item[open] summary { color:var(--gold-light); }
.faq-answer { padding:0 17px 18px; }
.faq-answer p { font-size:14px; line-height:1.6; color:#bfcad6; }
.footer { padding:26px 20px 22px; background:#000; display:flex; flex-direction:column; align-items:center; text-align:center; }
.footer .brand { margin-bottom:9px; }
.footer .brand img { width:50px; height:50px; }
.footer p { color:#b7babd; font-size:11px; }
.back-top { margin-top:15px; color:#969f9f; font-size:10px; }
/* Reflow por necessidade de espaço; sem escalar o canvas ou esconder overflow. */
@media (min-width:1800px) {
  .hero { padding-top:36px; padding-bottom:44px; }
  .video-panel { width:660px; }
  .benefit { min-height:124px; }
}
@media (max-width:1100px) {
  :root { --gutter:clamp(24px,6vw,64px); }
  .benefit { padding:18px; gap:15px; }
  .benefit .t1 { font-size:14px; }
  .benefit>.icon { width:36px; height:36px; }
  .diagnosis-grid { gap:30px; }
  .scenario summary { font-size:14px; padding:12px; }
  .case-copy h3 { font-size:14px; }
  .brand-strip { justify-content:center; gap:26px; }
  .about-slide { flex-basis:calc((100% - 18px) / 2); }
}
@media (max-width:760px) {
  :root { --gutter:24px; }
  .btn { width:100%; }
  .announcement { font-size:9px; }
  .hero { padding-top:28px; padding-bottom:30px; }
  .hero-brand { margin-bottom:24px; }
  .hero-symbol { width:300px; right:-100px; top:85px; opacity:.22; }
  .h1 { font-size:clamp(27px,4.7vw,36px); }
  .desktop-break { display:none; }
  .hero-lead { font-size:15px; margin-block:16px 22px; }
  .benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .benefits { padding-block:32px; }
  .benefit { min-height:108px; }
  .steps-grid { gap:15px; }
  .step { padding:26px 20px 22px 65px; }
  .step-number { left:15px; font-size:68px; top:-12px; }
  .diagnosis-grid { grid-template-columns:1fr; gap:34px; }
  .diagnosis { padding-block:36px; }
  .diagnosis .h2 { max-width:500px; margin:auto; font-size:25px; }
  .wheel { max-width:420px; }
  .scenarios { max-width:540px; width:100%; margin:auto; }
  .scenarios .h3 { text-align:center; font-size:22px; }
  .line-chart-panel { padding:24px 26px 26px; }
  .line-chart-header { gap:18px; }
  .line-chart-plot { min-height:290px; height:330px; }
  .brand-wordmark { font-size:21px; }
  .case-grid { grid-template-columns:1fr; max-width:530px; margin-inline:auto; gap:16px; }
  .case-card { min-height:250px; }
  .case-copy { padding:50px 26px 22px; }
  .case-copy h3 { font-size:20px; max-width:55%; }
  .case-copy p { font-size:15px; }
  .case-number { font-size:32px; }
  .case-handle { font-size:12px; }
  .case-portrait { width:58%; object-position:center 24%; }
  .about-track { gap:14px; padding-bottom:17px; }
  .about-slide { flex-basis:min(82vw,400px); min-width:min(82vw,400px); }
  .about-carousel .carousel-arrow { top:40%; }
  .metrics>div { padding:0 10px; }
  .metrics p,.metrics span { font-size:11px; }
  .founders-grid { grid-template-columns:repeat(2,minmax(0,1fr)); max-width:680px; gap:14px; }
  .founder-meta { inset:auto 14px 14px; }
  .founder-meta h4 { font-size:clamp(18px,3vw,25px); }
  .founder-meta p { font-size:clamp(11px,1.7vw,14px); }
  .founder-bio { min-height:190px; padding:18px 15px 20px; }
  .founder-bio p { font-size:12px; line-height:1.45; }
  .founder-card:last-child { grid-column:1 / -1; justify-self:center; width:100%; max-width:333px; }
}
@media (max-width:520px) {
  :root { --gutter:20px; }
  .announcement { min-height:36px; font-size:8px; line-height:1.5; padding-inline:14px; }
  .announcement .icon { display:none; }
  .brand img { width:42px; height:42px; }
  .brand>span { font-size:15px; }
  .hero .h1 { font-size:clamp(26px,6.9vw,35px); line-height:1.17; letter-spacing:-.035em; }
  .hero-lead { font-size:14px; }
  .hero .btn { min-width:0; width:100%; }
  .btn { max-width:100%; font-size:11px; padding:15px 24px; min-height:49px; }
  .video-slot { padding:12px; gap:8px; }
  .play-mark { width:44px; height:44px; }
  .play-mark .icon { width:27px; height:27px; }
  .video-slot strong { font-size:12px; }
  .video-helper { font-size:10px; }
  .video-features { gap:10px; margin:0; }
  .video-features span { font-size:8px; gap:3px; }
  .video-features .icon { width:14px; height:14px; }
  .human-note { font-size:11px; }
  .benefits .h2 { margin-bottom:22px; font-size:25px; }
  .benefits-grid { gap:10px; }
  .benefit { display:flex; flex-direction:column; align-items:flex-start; min-height:132px; padding:18px 15px; gap:13px; }
  .benefit>.icon { width:30px; height:30px; }
  .benefit .t1 { font-size:13px; line-height:1.45; }
  .benefit br { display:none; }
  .steps { padding-block:30px; }
  .steps .eyebrow { font-size:9px; }
  .steps .h2 { font-size:23px; line-height:1.22; margin-top:7px; }
  .steps-grid { grid-template-columns:1fr; gap:24px; margin-block:28px 22px; }
  .step { min-height:117px; padding:24px 22px 24px 74px; }
  .step-number { left:19px; font-size:74px; top:-14px; }
  .step .t1 { font-size:15px; }
  .step .t2 { font-size:14px; }
  .diagnosis .h2 { font-size:25px; }
  .diagnosis-visual>.t2 { font-size:14px; }
  .wheel { width:100%; margin-top:24px; }
  .wheel-label { font-size:clamp(8px,2.8cqi,14px); }
  .scenarios .h3 { font-size:22px; }
  .scenario summary { min-height:56px; font-size:13px; }
  .scenario p { font-size:13px; padding-left:41px; }
  .proof { padding-block:42px 36px; }
  .proof .h2 { font-size:25px; }
  .proof-intro { font-size:14px; margin:13px auto 24px; }
  .line-chart-panel { padding:18px 14px 16px; margin-bottom:17px; border-radius:11px; }
  .line-chart-header { flex-direction:column; gap:10px; padding-bottom:11px; }
  .line-chart-kicker { font-size:8px; }
  .line-chart-label { font-size:10px; }
  .line-chart-total { display:flex; align-items:baseline; justify-content:flex-start; gap:6px; text-align:left; }
  .line-chart-total strong { font-size:29px; }
  .line-chart-total span { font-size:10px; }
  .line-chart-plot { min-height:235px; height:250px; }
  .line-chart-y-labels { width:9%; font-size:9px; }
  .line-chart-x-labels { font-size:10px; }
  .line-chart-value { font-size:16px; }
  .line-chart-axis-title { font-size:7px; }
  .line-chart-axis-title--x { display:none; }
  .fineprint { font-size:11px; }
  .brand-strip { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 24px; margin-top:28px; align-items:center; }
  .brand-wordmark { font-size:22px; }
  .brands .h3 { font-size:15px; }
  .cases .h3 { font-size:16px; }
  .case-copy h3 { font-size:18px; }
  .case-card { min-height:232px; }
  .case-copy { min-height:232px; padding:48px 20px 20px; }
  .case-copy p { font-size:14px; }
  .case-number { font-size:31px; }
  .case-handle { font-size:10px; }
  .about { padding-block:38px 32px; }
  .about-slide { border-radius:13px; }
  .about-copy .t2 { font-size:14px; }
  .metrics { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:26px; margin-block:28px; }
  .metrics>div:nth-child(2) { border:0; }
  .metrics strong { font-size:42px; }
  .metrics span,.metrics p { font-size:12px; }
  .founders { margin-top:34px; }
  .founders-heading { margin-bottom:17px; }
  .founders-heading .h3 { font-size:22px; }
  .founders-grid { grid-template-columns:1fr; max-width:100%; gap:18px; }
  .founder-card { width:100%; }
  .founder-card:last-child { grid-column:auto; max-width:none; }
  .founder-meta { inset: auto 16px 16px; }
  .founder-bio { padding:20px 17px 22px; }
  .founder-bio p { font-size:12.5px; }
  .about-notice { font-size:10px; }
  .faq { padding-block:30px; }
  .faq .h2 { font-size:23px; }
  .faq-item summary { font-size:13px; gap:10px; }
  .faq-answer p { font-size:13px; }
}
@media (max-width:350px) {
  :root { --gutter:16px; }
  .hero .h1 { font-size:26px; }
  .video-features { display:none; }
  .video-slot { gap:8px; }
  .video-slot .t1 { max-width:210px; font-size:12px; }
  .btn { padding-inline:17px; font-size:10px; }
  .benefit { padding:15px 11px; }
  .benefit .t1 { font-size:12px; }
  .case-handle { font-size:9px; }
  .mobile-break { display:block; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*:before,*:after { transition:none !important; }
  .btn,.btn::before { animation:none; }
  .btn { background-position: 0 0, 0 0; }
}
@media print {
  :root { color-scheme:light; }
  .announcement,.btn,.video-panel,.skip-link,.back-top { display:none; }
  section { break-inside:avoid; }
  .hero-symbol,.hero-waves { display:none; }
  body,section,.hero,.about,.diagnosis,.faq { background:#fff; color:#111; }
  .h1 span,.gold-text { color:#7f5b00; }
  .container { width:90%; }
}
/* Somente o ornamento do hero ultrapassa o viewport; o conteúdo segue no fluxo. */
.hero { overflow:clip; }
/* Identificações demonstrativas precisam continuar legíveis, mesmo nas fotos. */
.case-card>.illustration-label { font-size:10px; }
/* Link de salto: visível apenas com foco de teclado, inclusive em capturas longas. */
.skip-link { transform:none; width:1px; height:1px; padding:0; opacity:0; overflow:hidden; clip-path:inset(50%); }
.skip-link:focus { width:auto; height:auto; padding:14px 18px; opacity:1; overflow:visible; clip-path:none; }
@media (max-width:520px) { .wheel-label { font-size:clamp(9px,2.8cqi,14px); } }
/* Cases: composição editorial compacta, sem moldura de imagem colada */
.cases {
  overflow: hidden;
  padding: clamp(44px, 6vw, 82px) 0 clamp(38px, 5vw, 70px);
  text-align: center;
  background:
    radial-gradient(circle at 18% 35%, rgb(244 206 101 / 7%), transparent 34%),
    linear-gradient(180deg, #050c12 0%, #071018 100%);
}
.cases .container { max-width: 1240px; }
.cases-heading { max-width: 760px; margin: 0 auto; }
.cases-heading .eyebrow { color: var(--gold-light); }
.cases-intro { max-width: 680px; margin: 10px auto 0; color: #adb9c4; font-size: 14px; line-height: 1.6; }
.cases .case-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.38fr) minmax(300px, .82fr);
  grid-template-rows: repeat(2, minmax(220px, auto));
  gap: 18px;
  margin: 32px 0 22px;
  text-align: left;
}
.cases .case-card {
  min-height: 230px;
  border: 1px solid rgb(181 198 210 / 16%);
  border-radius: 16px;
  background: #0a131b;
  box-shadow: 0 22px 52px rgb(0 0 0 / 22%);
  isolation: isolate;
}
.cases .case-card::after { display: none; }
.cases .case-card--featured { grid-row: 1 / span 2; min-height: 490px; }
.cases .case-art { position: absolute; z-index: -2; inset: 0; overflow: hidden; }
.cases .case-art::after {
  position: absolute;
  inset: 0;
  content: "";
  background:
    linear-gradient(90deg, #071018 0%, rgb(7 16 24 / 95%) 34%, rgb(7 16 24 / 40%) 64%, transparent 100%),
    linear-gradient(0deg, rgb(0 0 0 / 52%), transparent 42%);
}
.cases .case-art img { width: 100%; height: 100%; object-fit: cover; }
.cases .case-card-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 100%;
  max-width: 64%;
  padding: 32px;
}
.cases .case-card--featured .case-card-body { max-width: 62%; padding: 38px; }
.cases .case-card--support .case-card-body { max-width: 78%; padding: 25px 27px; }
.cases .case-kicker { color: var(--gold-light); font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.cases .case-card h3 { margin-top: 10px; font-size: clamp(23px, 2.6vw, 39px); line-height: 1.05; letter-spacing: -.035em; text-wrap: balance; }
.cases .case-card--support h3 { font-size: clamp(20px, 1.75vw, 29px); }
.cases .case-summary { max-width: 480px; margin-top: 12px; color: #b8c5d0; font-size: 13px; line-height: 1.55; }
.cases .case-stats { display: flex; flex-wrap: wrap; gap: 18px; margin-top: auto; padding-top: 22px; }
.cases .case-stat { display: flex; flex-direction: column; gap: 3px; padding-left: 11px; border-left: 1px solid rgb(244 206 101 / 40%); }
.cases .case-stat strong { color: #f3d27a; font-size: clamp(20px, 2vw, 29px); line-height: 1; }
.cases .case-stat span { color: #8f9da8; font-size: 10px; line-height: 1.3; }
.cases .case-handle { display: inline-flex; align-items: center; gap: 7px; margin-top: 18px; color: #e8ce82; font-size: 11px; font-weight: 750; }
.cases .case-handle .icon { width: 14px; height: 14px; }
.cases .case-link-arrow { margin-left: 3px; font-size: 16px; transition: transform .18s ease; }
.cases .case-handle:hover .case-link-arrow { transform: translate(2px, -2px); }
.cases > .container > .fineprint { max-width: 900px; color: #86929d; }
@media (max-width: 900px) {
  .cases .case-grid { grid-template-columns: 1fr; grid-template-rows: none; }
  .cases .case-card--featured { grid-row: auto; min-height: 430px; }
  .cases .case-card--support { min-height: 320px; }
}
@media (max-width: 520px) {
  .cases { padding-block: 40px 44px; }
  .cases .case-grid { gap: 14px; margin-top: 24px; }
  .cases .case-card { min-height: 350px; border-radius: 13px; }
  .cases .case-card--featured { min-height: 470px; }
  .cases .case-card-body,
  .cases .case-card--featured .case-card-body,
  .cases .case-card--support .case-card-body { max-width: 80%; padding: 24px 20px; }
  .cases .case-card h3,
  .cases .case-card--support h3 { font-size: 25px; }
  .cases .case-summary { font-size: 12.5px; }
  .cases .case-stats { gap: 12px; }
  .cases .case-stat strong { font-size: 22px; }
}

/* Depoimentos: trilho editorial com prova visual real, sem transformar a seção em uma lista de métricas de seguidores. */
.testimonials {
  overflow: hidden;
  padding: clamp(54px, 7vw, 94px) 0 clamp(46px, 6vw, 76px);
  background:
    radial-gradient(ellipse at 82% 18%, rgb(211 169 61 / 11%), transparent 30%),
    radial-gradient(ellipse at 12% 90%, rgb(15 52 75 / 30%), transparent 42%),
    linear-gradient(145deg, #04080d 0%, #07131d 55%, #050a0f 100%);
}
.testimonials .container { max-width: 1320px; }
.testimonials-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, .72fr);
  gap: clamp(28px, 6vw, 100px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 42px);
}
.testimonials-heading .eyebrow { color: var(--gold-light); letter-spacing: .1em; }
.testimonials-heading .h2 {
  max-width: 760px;
  font-size: clamp(28px, 3.45vw, 54px);
  line-height: 1.03;
  text-transform: uppercase;
}
.testimonials-intro { max-width: 450px; color: #b4c0cb; font-size: 15px; line-height: 1.65; }
.testimonial-carousel { position: relative; }
.testimonial-track {
  display: flex;
  gap: 18px;
  overflow-x: auto;
  padding: 5px 2px 22px;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
  cursor: grab;
}
.testimonial-track::-webkit-scrollbar { display: none; }
.testimonial-track.is-dragging { cursor: grabbing; scroll-behavior: auto; scroll-snap-type: none; }
.testimonial-card {
  position: relative;
  display: flex;
  flex: 0 0 calc((100% - 36px) / 3);
  min-width: 300px;
  min-height: 492px;
  flex-direction: column;
  overflow: hidden;
  scroll-snap-align: start;
  border: 1px solid rgb(201 170 95 / 19%);
  border-radius: 16px;
  background: linear-gradient(145deg, rgb(19 32 43 / 96%), rgb(7 15 23 / 98%));
  box-shadow: 0 18px 45px rgb(0 0 0 / 25%), inset 0 1px 0 rgb(255 255 255 / 4%);
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.testimonial-card:hover { transform: translateY(-5px); border-color: rgb(244 206 101 / 42%); box-shadow: 0 24px 50px rgb(0 0 0 / 33%), inset 0 1px 0 rgb(255 255 255 / 5%); }
.testimonial-media { position: relative; display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #0a0f15; }
.testimonial-media::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 52%, rgb(3 8 13 / 64%) 100%); pointer-events: none; }
.testimonial-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.testimonial-card:hover .testimonial-media img { transform: scale(1.035); }
.testimonial-play {
  position: absolute;
  right: 14px;
  bottom: 13px;
  z-index: 1;
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 1px solid rgb(255 235 169 / 75%);
  border-radius: 50%;
  color: #121719;
  background: var(--gold-light);
  box-shadow: 0 8px 20px rgb(0 0 0 / 28%);
}
.testimonial-play svg { width: 16px; height: 16px; margin-left: 2px; fill: currentColor; }
.testimonial-copy { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 22px 22px 21px; }
.testimonial-tag { color: var(--gold-light); font-size: 10px; font-weight: 800; letter-spacing: .11em; line-height: 1.3; text-transform: uppercase; }
.testimonial-copy h3 { max-width: 330px; margin-top: 10px; font-size: clamp(19px, 1.55vw, 24px); font-weight: 750; letter-spacing: -.03em; line-height: 1.12; text-wrap: balance; }
.testimonial-copy p { margin-top: 11px; color: #b9c4ce; font-size: 13px; line-height: 1.55; }
.testimonial-person { display: flex; flex-direction: column; gap: 2px; margin-top: auto; padding-top: 18px; color: #edf0f0; }
.testimonial-person strong { font-size: 13px; font-weight: 750; }
.testimonial-person span { color: #8e9ba7; font-size: 11px; line-height: 1.35; }
.testimonial-link { display: inline-flex; align-items: center; gap: 7px; margin-top: 15px; color: var(--gold-light); font-size: 11px; font-weight: 750; }
.testimonial-link span { font-size: 15px; line-height: 1; transition: transform .18s ease; }
.testimonial-link:hover span { transform: translate(2px, -2px); }
.carousel-arrow {
  position: absolute;
  top: 45%;
  z-index: 3;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid rgb(244 206 101 / 45%);
  border-radius: 50%;
  color: #0b1013;
  background: var(--gold-light);
  box-shadow: 0 10px 24px rgb(0 0 0 / 28%);
  cursor: pointer;
  transform: translateY(-50%);
  transition: filter .18s ease, transform .18s ease;
}
.carousel-arrow:hover { filter: brightness(1.08); transform: translateY(-50%) scale(1.05); }
.carousel-arrow .icon { width: 20px; height: 20px; }
.carousel-arrow--prev { left: -22px; }
.carousel-arrow--next { right: -22px; }
.carousel-meta { display: flex; align-items: center; justify-content: space-between; gap: 18px; color: #7f8d99; font-size: 11px; }
.carousel-dots { display: flex; align-items: center; gap: 6px; min-height: 10px; }
.carousel-dots span { display: block; width: 5px; height: 5px; border-radius: 50%; background: #52616c; transition: width .2s ease, background .2s ease; }
.carousel-dots span.is-active { width: 20px; border-radius: 99px; background: var(--gold-light); }

@media (max-width: 1100px) {
  .testimonials-heading { grid-template-columns: minmax(0, 1fr) minmax(240px, .8fr); }
  .testimonial-card { flex-basis: calc((100% - 18px) / 2); }
}
@media (max-width: 760px) {
  .testimonials-heading { grid-template-columns: 1fr; gap: 14px; }
  .testimonials-heading .h2 { font-size: clamp(27px, 7.8vw, 42px); }
  .testimonials-intro { max-width: 590px; font-size: 14px; }
  .testimonial-track { gap: 14px; padding-bottom: 17px; }
  .testimonial-card { flex-basis: min(82vw, 350px); min-width: min(82vw, 350px); min-height: 470px; }
  .carousel-arrow { width: 38px; height: 38px; }
  .carousel-arrow--prev { left: 5px; }
  .carousel-arrow--next { right: 5px; }
  .carousel-meta { font-size: 10px; }
}
@media (max-width: 520px) {
  .testimonials { padding-block: 42px 48px; }
  .testimonial-card { border-radius: 13px; }
  .testimonial-copy { padding: 19px 18px 18px; }
  .testimonial-copy h3 { font-size: 20px; }
  .testimonial-copy p { font-size: 12.5px; }
  .carousel-arrow { top: 34%; }
  .carousel-meta { align-items: flex-start; flex-direction: column; gap: 8px; }
}

/* VSL: o vídeo inteiro funciona como área de pausa/retomada, sem controles fixos. */
.video-panel[data-video-state="playing"] { background:#020406; border-color:#263449; }
.video-mount iframe { pointer-events:none; }

/* Logos section: a arte entra como composição contínua, não como um card. */
.brands { overflow:hidden; text-align:center; background:#000; padding:36px 0 40px; }
.brands-intro{max-width:760px;margin:10px auto 0;color:var(--muted);font-size:15px;line-height:1.55;}
.brands-art{
  width:min(100vw,1680px);
  max-width:none;
  margin:clamp(18px,2.4vw,32px) 0 0;
  margin-left:50%;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
  transform:translateX(-50%);
}
.brands-art picture{display:block;width:100%;aspect-ratio:1642 / 543;}
.brands-art img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:screen;opacity:.96;}
.brand-strip,.brand-wordmark{display:none !important;}
@media (max-width: 1023px){
  .brands{padding:32px 0 36px;}
  .brands-intro{font-size:14px;max-width:620px;}
  .brands-art{margin-top:24px;border-radius:0;}
}
@media (max-width: 1099px){
  .brands-art picture{aspect-ratio:1377 / 606;}
}
@media (max-width: 699px){
  .brands{padding:28px 0 32px;}
  .brands .h3{font-size:15px;}
  .brands-intro{font-size:13px;line-height:1.5;max-width:320px;}
  .brands-art{margin-top:18px;border-radius:0;}
  .brands-art picture{aspect-ratio:900 / 1282;}
}

/* VSL autoplay preview: vídeo roda mudo até o primeiro clique, quando o áudio é liberado. */
.video-panel{background:#020406;border-color:#263449;}
.video-mount{z-index:1;overflow:hidden;background:#000;}
.video-mount iframe,.video-mount video{z-index:1;object-fit:cover;}
.video-slot{z-index:3;background:linear-gradient(180deg,rgba(2,7,14,.34),rgba(2,7,14,.52));text-shadow:0 2px 14px rgba(0,0,0,.55);}
.video-trigger{z-index:4;}
.video-panel[data-video-state="previewing"] .video-slot{display:flex;}
.video-panel[data-video-state="previewing"] .video-mount{display:block;}
.vsl-listen-badge{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;color:#101212;background:linear-gradient(135deg,#f7d36c,#e3ad27);border:2px solid rgba(255,255,255,.7);box-shadow:0 10px 28px rgba(0,0,0,.34),0 0 0 8px rgba(242,199,85,.12);}
.vsl-listen-badge .icon{width:34px;height:34px;}
.vsl-listen-title{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:999px;background:linear-gradient(115deg,#f2c755 0%,#f4ce65 43%,#e4b330 100%);color:#111;font-size:14px;line-height:1;font-weight:900;letter-spacing:.035em;box-shadow:0 10px 28px rgba(0,0,0,.28);}
.video-panel[data-video-state="previewing"] .video-helper{max-width:360px;color:#f5f0e6;font-size:12px;line-height:1.45;}
.video-panel[data-video-state="playing"] .video-mount{display:block;}
.video-panel[data-video-state="playing"] .video-slot{display:none!important;}
.video-panel[data-video-state="playing"] .video-trigger{display:block;opacity:1;visibility:visible;pointer-events:auto;cursor:pointer;}
.video-mount iframe{pointer-events:none;}
@media (max-width:560px){
  .vsl-listen-badge{width:58px;height:58px;box-shadow:0 8px 22px rgba(0,0,0,.34),0 0 0 6px rgba(242,199,85,.10)}
  .vsl-listen-badge .icon{width:28px;height:28px}
  .vsl-listen-title{min-height:40px;padding:0 18px;font-size:11px}
  .video-panel[data-video-state="previewing"] .video-helper{max-width:270px;font-size:10px}
  .video-speed-control { right: 8px; bottom: 8px; }
  .video-speed-button { min-width: 36px; min-height: 26px; font-size: 10px; }
  .video-speed-menu { min-width: 69px; }
  .video-speed-menu button { padding: 6px 5px; font-size: 10px; }
}

/* Depois de ativar o áudio, apenas a área transparente de interação permanece. */
.video-panel[data-video-state="playing"] .video-slot{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
.video-panel[data-video-state="playing"] .video-mount{z-index:2;}
.video-panel[data-video-state="playing"] .video-trigger{z-index:4;}

/* Cases de sucesso: modelagem visual da referência enviada pelo usuário. */
.cases { display: none !important; }
.testimonials {
  overflow: hidden;
  padding: clamp(44px, 5vw, 70px) 0 clamp(44px, 5vw, 66px);
  background: #000;
}
.testimonials .container { max-width: 1140px; }
.testimonials-heading {
  display: block;
  margin: 0 0 clamp(28px, 4vw, 48px);
  text-align: center;
}
.testimonials-heading .h2 {
  max-width: none;
  margin: 0;
  color: #f7f7f7;
  font-size: clamp(23px, 3.05vw, 42px);
  font-weight: 850;
  letter-spacing: -.045em;
  line-height: 1.06;
  text-transform: uppercase;
}
.success-accent,
.case-accent { color: var(--gold-light); }
.testimonial-carousel { position: relative; }
.testimonial-track {
  gap: 26px;
  padding: 0 0 10px;
  scroll-padding-inline: 0;
}
.testimonial-card {
  flex: 0 0 calc((100% - 52px) / 3);
  min-width: 0;
  height: 460px;
  min-height: 460px;
  overflow: hidden;
  border: 0;
  border-radius: 0;
  background: #101d2d;
  box-shadow: none;
  transform: none;
}
.testimonial-card:hover {
  border-color: transparent;
  box-shadow: none;
  transform: none;
}
.testimonial-card::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 4;
  height: 10px;
  content: "";
  background: var(--gold-light);
}
.testimonial-media {
  position: absolute;
  inset: 90px 0 0;
  z-index: 0;
  aspect-ratio: auto;
  background: #101d2d;
}
.testimonial-media::after {
  background:
    linear-gradient(180deg, transparent 62%, rgb(3 9 17 / 42%) 100%);
}
.testimonial-media img {
  object-fit: cover;
  object-position: center top;
  filter: saturate(1.03) contrast(1.01) brightness(1.04);
}
.testimonial-play { display: none; }
.testimonial-copy {
  position: relative;
  z-index: 2;
  display: flex;
  height: 100%;
  padding: 25px 25px 24px;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  background: linear-gradient(180deg, #101d2d 0, #101d2d 105px, rgb(16 29 45 / 80%) 135px, transparent 175px, transparent 77%, rgb(3 8 14 / 62%) 100%);
  pointer-events: none;
}
.testimonial-tag {
  max-width: 100%;
  color: #f4f4f4;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .2em;
  line-height: 1.35;
  text-transform: uppercase;
}
.testimonial-copy h3 {
  width: 100%;
  max-width: 330px;
  min-height: 4.24em;
  margin: 0;
  color: #fff;
  font-size: clamp(19px, 1.55vw, 22px);
  font-weight: 850;
  letter-spacing: -.04em;
  line-height: 1.06;
  text-transform: uppercase;
  text-wrap: balance;
}
.testimonial-copy p,
.testimonial-link { display: none; }
.testimonial-person {
  position: absolute;
  right: 25px;
  bottom: 27px;
  left: 25px;
  display: flex;
  margin: 0;
  padding: 0;
  gap: 2px;
  color: #fff;
  text-shadow: 0 1px 7px rgb(0 0 0 / 80%);
}
.testimonial-person strong { font-size: 13px; font-weight: 750; }
.testimonial-person span { color: #eef1f3; font-size: 10px; line-height: 1.3; }
.carousel-arrow {
  top: 50%;
  width: 28px;
  height: 52px;
  border: 0;
  border-radius: 0;
  color: var(--gold-light);
  background: transparent;
  box-shadow: none;
}
.carousel-arrow:hover {
  filter: brightness(1.15);
  transform: translateY(-50%) scale(1.08);
}
.carousel-arrow .icon { width: 26px; height: 26px; }
.carousel-arrow--prev { left: -33px; }
.carousel-arrow--next { right: -33px; }
.carousel-meta { display: none; }
@media (max-width: 1100px) {
  .testimonials .container { max-width: 960px; }
  .testimonial-card { flex-basis: calc((100% - 26px) / 2); }
  .carousel-arrow--prev { left: -21px; }
  .carousel-arrow--next { right: -21px; }
}
@media (max-width: 760px) {
  .testimonials { padding-block: 38px 46px; }
  .testimonials .container { padding-inline: 22px; }
  .testimonials-heading { margin-bottom: 28px; }
  .testimonials-heading .h2 { font-size: clamp(22px, 6.1vw, 34px); }
  .testimonial-track { gap: 16px; padding-bottom: 8px; }
  .testimonial-card {
    flex-basis: min(82vw, 350px);
    min-width: min(82vw, 350px);
    height: 500px;
    min-height: 500px;
  }
  .testimonial-copy {
    padding: 25px 23px 22px;
    background: linear-gradient(180deg, #101d2d 0, #101d2d 115px, rgb(16 29 45 / 80%) 150px, transparent 195px, transparent 77%, rgb(3 8 14 / 62%) 100%);
  }
  .testimonial-copy h3 { max-width: 300px; font-size: clamp(20px, 5.4vw, 23px); }
  .testimonial-person { right: 23px; bottom: 25px; left: 23px; }
  .carousel-arrow--prev { left: -4px; }
  .carousel-arrow--next { right: -4px; }
}
@media (max-width: 520px) {
  .testimonials .container { padding-inline: 17px; }
  .testimonial-card { flex-basis: min(86vw, 350px); min-width: min(86vw, 350px); }
  .carousel-arrow { width: 24px; height: 46px; }
  .carousel-arrow .icon { width: 22px; height: 22px; }
}
