

@font-face { font-family: "Bricolage Grotesque"; src: url(/fonts/bricolage-latin.woff2) format("woff2"); font-weight: 300 800; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "Bricolage Grotesque"; src: url(/fonts/bricolage-latin-ext.woff2) format("woff2"); font-weight: 300 800; font-display: swap; unicode-range: U+0100-02BA, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0; }
@font-face { font-family: "Figtree"; src: url(/fonts/figtree-latin.woff2) format("woff2"); font-weight: 300 900; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+20AC, U+2122; }
@font-face { font-family: "Figtree"; src: url(/fonts/figtree-latin-ext.woff2) format("woff2"); font-weight: 300 900; font-display: swap; unicode-range: U+0100-02BA, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0; }

:root {
  --papel: #F6F6FA; --branco: #FFFFFF; --tinta: #12131F; --tinta-suave: #4C4F66; --cinza: #676B84;
  --borda: #E2E4EF; --roxo: #6D28D9; --roxo-claro: #B975F8; --roxo-fundo: #EDE6FB; --zap: #1CA85A;
  --palco: #0B0A14; --palco-2: #17132C; --palco-3: #2A1C63;
  --claro-no-palco: rgba(255,255,255,.78); --linha-no-palco: rgba(255,255,255,.14);
  --display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
  --texto: "Figtree", "Segoe UI", system-ui, sans-serif;
  --margem: 14px; --raio: 28px; --raio-md: 18px; --raio-sm: 12px;
  --capsula-alt: 58px; --barra-celular: 64px;
  --largura: 1240px; --lado: clamp(20px, 4vw, 56px);
  --ease: cubic-bezier(.2, .7, .1, 1);
  --sc-canvas: var(--papel); --sc-surface: var(--branco); --sc-ink: var(--tinta); --sc-ink-soft: var(--tinta-suave);
  --sc-accent: var(--roxo); --sc-accent-ink: #FFFFFF;
  --sc-font-display: var(--display); --sc-font-text: var(--texto);
}
@view-transition { navigation: auto; }
::view-transition-old(root) { animation: 160ms var(--ease) both sai; }
::view-transition-new(root) { animation: 260ms var(--ease) both entra; }
@keyframes sai { to { opacity: 0; } }
@keyframes entra { from { opacity: 0; transform: translateY(10px); } }

*, *::before, *::after { box-sizing: border-box; }
html { background: var(--papel); color: var(--tinta); font-family: var(--texto); -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body { margin: 0; line-height: 1.5; font-size: 17px; background: var(--papel); overflow-x: clip; }
img, video, svg { display: block; max-width: 100%; }
img { height: auto; }
a { color: inherit; }
h1, h2, h3, h4 { font-family: var(--display); font-weight: 500; letter-spacing: -.024em; line-height: 1.02; margin: 0; }
p { margin: 0; }
ul, ol { margin: 0; padding: 0; list-style: none; }
button { font: inherit; color: inherit; }
:focus-visible { outline: 3px solid var(--roxo); outline-offset: 3px; border-radius: 6px; }
.palco :focus-visible, .gaveta :focus-visible, .rodape :focus-visible { outline-color: #FFFFFF; }
[id] { scroll-margin-top: calc(var(--capsula-alt) + 34px); }


.titulo-xl { font-size: clamp(38px, 6.2vw, 84px); line-height: .98; letter-spacing: -.03em; }
.titulo-lg { font-size: clamp(30px, 4.4vw, 58px); letter-spacing: -.028em; }
.titulo-md { font-size: clamp(24px, 2.6vw, 36px); letter-spacing: -.02em; }
.titulo-sm { font-size: clamp(19px, 1.7vw, 23px); letter-spacing: -.012em; font-weight: 600; }
.lede { font-size: clamp(17px, 1.45vw, 20px); line-height: 1.5; color: var(--tinta-suave); max-width: 60ch; }
.palco .lede { color: var(--claro-no-palco); }
.corpo { max-width: 62ch; color: var(--tinta-suave); }
.rotulo { display: inline-flex; align-items: center; gap: 10px; font-size: 13px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; color: var(--roxo); }
.rotulo svg { width: 19px; height: 16px; flex: none; }
.palco .rotulo { color: var(--roxo-claro); }
.destaque { color: var(--roxo); font-style: normal; }
.palco .destaque { color: var(--roxo-claro); }
.miolo { width: min(100% - 2 * var(--lado), var(--largura)); margin-inline: auto; }
.acoes { display: flex; gap: 10px; flex-wrap: wrap; }


.botao { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 22px; border-radius: 999px; border: 0; text-decoration: none; font-weight: 600; font-size: 15.5px; cursor: pointer; transition: transform 180ms var(--ease), background-color 180ms var(--ease), box-shadow 180ms var(--ease); }
.botao:hover { transform: translateY(-1px); }
.botao:active { transform: none; }
.botao--roxo { background: var(--roxo); color: #fff; }
.botao--roxo:hover { background: #5B1FBF; }

.botao--zap { background: var(--zap); color: var(--tinta); }
.botao--zap:hover { background: #189A52; }
.botao--tinta { background: var(--tinta); color: #fff; }
.botao--tinta:hover { background: #24263A; }
.botao--claro { background: #fff; color: var(--tinta); }
.botao--claro:hover { background: #EDE6FB; }
.botao--vazado { background: transparent; color: var(--tinta); box-shadow: inset 0 0 0 1.5px var(--borda); }
.botao--vazado:hover { box-shadow: inset 0 0 0 1.5px var(--tinta); }
.palco .botao--vazado { color: #fff; box-shadow: inset 0 0 0 1.5px var(--linha-no-palco); }
.palco .botao--vazado:hover { box-shadow: inset 0 0 0 1.5px #fff; }
.botao--zap:focus-visible, .botao--roxo:focus-visible, .botao--tinta:focus-visible { outline-color: var(--tinta); box-shadow: 0 0 0 6px #fff; }
.botao--zap:focus-visible { outline-color: #fff; box-shadow: 0 0 0 6px var(--tinta); }
.palco .botao--zap:focus-visible, .palco .botao--roxo:focus-visible, .palco .botao--claro:focus-visible { outline-color: #fff; box-shadow: 0 0 0 6px var(--palco); }
.zap-icone { width: 18px; height: 18px; }
.ligacao { color: var(--roxo); font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; min-height: 48px; min-width: 48px; }
.ligacao:hover { text-decoration: underline; text-underline-offset: 4px; }
.palco .ligacao { color: var(--roxo-claro); }


.capsula { position: fixed; top: var(--margem); left: 50%; transform: translateX(-50%); z-index: 40; display: flex; align-items: center; gap: 4px; padding: 6px 6px 6px 16px; border-radius: 999px; background: rgba(255,255,255,.78); -webkit-backdrop-filter: blur(16px) saturate(1.3); backdrop-filter: blur(16px) saturate(1.3); border: 1px solid rgba(18,19,31,.08); box-shadow: 0 10px 30px rgba(18,19,31,.10); transition: padding 220ms var(--ease), transform 220ms var(--ease); max-width: calc(100% - 2 * var(--margem)); }
.capsula--encolhida { padding: 4px 4px 4px 14px; }
.capsula__marca { display: inline-flex; align-items: center; gap: 9px; white-space: nowrap; color: var(--tinta); text-decoration: none; font-weight: 700; font-size: 15px; margin-right: 12px; min-height: 44px; }
.capsula__marca svg { width: 24px; height: 20px; flex: none; color: var(--roxo); }
.capsula__nav { display: flex; gap: 2px; }
.capsula__nav a { display: inline-flex; align-items: center; min-height: 44px; white-space: nowrap; padding: 0 13px; border-radius: 999px; color: var(--tinta-suave); text-decoration: none; font-size: 15px; font-weight: 500; transition: background-color 160ms var(--ease), color 160ms var(--ease); }
.capsula__nav a:hover { background: rgba(18,19,31,.06); color: var(--tinta); }
.capsula__nav a[aria-current="page"] { color: var(--tinta); background: rgba(109,40,217,.10); }
.capsula__cta { margin-left: 8px; white-space: nowrap; min-height: 44px; padding: 10px 18px; font-size: 15px; }
.capsula__menu { display: none; min-width: 44px; min-height: 44px; padding: 0 14px; border: 0; background: var(--tinta); color: #fff; border-radius: 999px; font-weight: 600; font-size: 15px; }
@media (max-width: 860px) {
  .capsula { left: var(--margem); right: var(--margem); transform: none; justify-content: space-between; padding: 6px 6px 6px 14px; }
  .capsula__nav, .capsula__cta { display: none; }
  .capsula__menu { display: inline-flex; align-items: center; }
  .capsula__marca { margin-right: 0; }
}



.gaveta { position: fixed; inset: 0; z-index: 50; background-color: var(--palco); color: #fff; padding: calc(var(--margem) + 80px) 28px 40px; display: none; flex-direction: column; justify-content: space-between; }
.gaveta[data-aberta="sim"] { display: flex; animation: gaveta-entra 320ms var(--ease); }
@keyframes gaveta-entra { from { transform: translateY(-6%); opacity: 0; } }
.gaveta .botao--zap:focus-visible, .gaveta .botao--claro:focus-visible, .gaveta__fechar:focus-visible { outline-color: #fff; box-shadow: 0 0 0 6px var(--palco); }
.gaveta__fechar { position: absolute; top: calc(var(--margem) + 6px); right: calc(var(--margem) + 6px); min-width: 44px; min-height: 44px; border-radius: 999px; border: 0; background: rgba(255,255,255,.12); color: #fff; font-weight: 600; padding: 0 16px; }
.gaveta__nav a { display: flex; align-items: center; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--linha-no-palco); font-family: var(--display); font-size: clamp(28px, 7vw, 40px); font-weight: 500; letter-spacing: -.02em; text-decoration: none; color: #fff; }
.gaveta__nav a[aria-current="page"] { color: var(--roxo-claro); }
.gaveta__acoes { display: grid; gap: 10px; margin-top: 24px; }


.barra-celular { display: none; }
@media (max-width: 860px) {
  
  .barra-celular { display: grid; grid-template-columns: 1.16fr 1fr; gap: 8px; position: fixed; left: 0; right: 0; bottom: 0; z-index: 45; padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); background: rgba(246,246,250,.92); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-top: 1px solid var(--borda); }
  .barra-celular .botao { min-height: 48px; padding: 10px 8px; gap: 6px; font-size: clamp(12.5px, 3.7vw, 14.5px); white-space: nowrap; }
  
  .barra-celular { transition: transform 260ms var(--ease); }
  .barra-celular--some { transform: translateY(calc(100% + 2px)); }
  body { padding-bottom: var(--barra-celular); }
}


.palco { position: relative; margin: 0 var(--margem); border-radius: var(--raio); background-color: var(--palco); color: #fff; overflow: hidden; isolation: isolate; }

.palco__nevoa { position: absolute; inset: 0; pointer-events: none; z-index: 0; background: radial-gradient(60% 50% at 64% 80%, rgba(109,40,217,.32), transparent 70%), radial-gradient(120% 90% at 72% 108%, var(--palco-3) 0%, var(--palco-2) 36%, var(--palco) 70%); }
.palco > * { position: relative; z-index: 1; }
.palco > .palco__nevoa { position: absolute; z-index: 0; }   

.palco__fita { position: absolute; z-index: 0; right: -6%; bottom: -10%; width: min(70vw, 900px); opacity: .9; pointer-events: none; mix-blend-mode: screen; -webkit-mask-image: radial-gradient(closest-side, #000 50%, transparent 100%); mask-image: radial-gradient(closest-side, #000 50%, transparent 100%); }

.palco--baixo { min-height: min(58vh, 560px); display: flex; align-items: flex-start; padding: calc(var(--capsula-alt) + 70px) var(--lado) clamp(36px, 5vw, 64px); margin-top: var(--margem); }
.palco--baixo .palco__texto { max-width: 820px; display: grid; gap: 18px; }

.palco--baixo .palco__fita { width: min(56vw, 720px); opacity: .95; right: 0; bottom: auto; top: 50%; transform: translateY(-48%); }
.palco--baixo .lede { max-width: 56ch; }

@media (max-width: 860px) {
  .palco--baixo { flex-direction: column; align-items: stretch; min-height: 0; padding-bottom: 0; }
  .palco--baixo .palco__texto { order: 1; }
  .palco--baixo .palco__fita { order: 2; position: relative; width: min(100%, 440px); right: auto; top: auto; transform: none; margin: 4px auto 0; -webkit-mask-image: radial-gradient(closest-side, #000 68%, transparent 100%); mask-image: radial-gradient(closest-side, #000 68%, transparent 100%); }
}


.secao { padding: clamp(56px, 9vw, 120px) 0; }
.secao--apertada { padding: clamp(36px, 6vw, 72px) 0; }
.cabeca { display: grid; gap: 14px; max-width: 760px; margin-bottom: clamp(28px, 4vw, 52px); }
.cartao { background: var(--branco); border: 1px solid var(--borda); border-radius: var(--raio-md); padding: clamp(20px, 3vw, 32px); }
.chip { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; font-size: 13.5px; font-weight: 600; background: var(--roxo-fundo); color: var(--roxo); }
.chip--claro { background: rgba(255,255,255,.1); color: #fff; }
.chip--ar { background: #E6F4F1; color: #0E7266; }
.chip--ar::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }


.ficha { display: grid; grid-template-columns: max-content 1fr; gap: 10px 22px; align-content: start; font-size: 15.5px; }
.ficha dt { color: var(--cinza); font-weight: 500; }
.ficha dd { margin: 0; font-weight: 600; }
.palco .ficha dt { color: rgba(255,255,255,.55); }


.rodape { color: #fff; padding: clamp(40px, 6vw, 72px) var(--lado) clamp(28px, 4vw, 40px); border-top: 1px solid var(--linha-no-palco); }
.rodape__grade { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; width: min(100%, var(--largura)); margin-inline: auto; }
.rodape__marca { display: inline-flex; align-items: center; gap: 10px; font-weight: 700; text-decoration: none; margin-bottom: 14px; min-height: 44px; }
.rodape__marca svg { width: 26px; height: 22px; flex: none; color: var(--roxo-claro); }
.rodape__frase { color: var(--claro-no-palco); max-width: 34ch; }
.rodape h3 { font-family: var(--texto); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; color: rgba(255,255,255,.55); font-weight: 600; margin-bottom: 10px; letter-spacing: .06em; }
.rodape li a { display: inline-flex; align-items: center; min-height: 44px; min-width: 44px; color: #fff; text-decoration: none; }
.rodape li a:hover { text-decoration: underline; text-underline-offset: 4px; }
.rodape__legal { width: min(100%, var(--largura)); margin: 32px auto 0; padding-top: 20px; border-top: 1px solid var(--linha-no-palco); display: flex; flex-wrap: wrap; gap: 8px 24px; font-size: 13.5px; color: rgba(255,255,255,.6); }
.rodape__legal a { color: rgba(255,255,255,.75); display: inline-flex; align-items: center; min-height: 44px; margin: -12px 0; }
@media (max-width: 860px) { .rodape__grade { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .rodape__grade { grid-template-columns: 1fr; } }


[data-revela] { opacity: 0; transform: translateY(18px); transition: opacity 560ms var(--ease), transform 560ms var(--ease); }
[data-revela].revelado { opacity: 1; transform: none; }
[data-revela="foco"] { transform: scale(.97) translateY(24px); }
[data-revela="foco"].revelado { transform: none; }
.no-js [data-revela] { opacity: 1; transform: none; }


.campo { display: grid; gap: 6px; }
.campo label { font-weight: 600; font-size: 14.5px; }
.campo input, .campo textarea { width: 100%; min-height: 48px; padding: 12px 14px; border-radius: var(--raio-sm); border: 1.5px solid var(--borda); background: #fff; color: var(--tinta); font: inherit; }
.campo textarea { min-height: 120px; resize: vertical; }
.campo input:focus, .campo textarea:focus { outline: 3px solid var(--roxo); outline-offset: 1px; border-color: var(--roxo); }
.mel { display: none; }


.acordeao details { border-top: 1px solid var(--borda); }
.acordeao details:last-child { border-bottom: 1px solid var(--borda); }
.acordeao summary { cursor: pointer; list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 4px; font-family: var(--display); font-size: clamp(18px, 1.8vw, 22px); font-weight: 600; letter-spacing: -.012em; min-height: 44px; }
.acordeao summary::-webkit-details-marker { display: none; }
.acordeao summary::after { content: "+"; font-size: 24px; color: var(--roxo); flex: none; width: 32px; height: 32px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: var(--roxo-fundo); transition: transform 200ms var(--ease); }
.acordeao details[open] summary::after { transform: rotate(45deg); }
.acordeao details p { padding: 0 4px 20px; color: var(--tinta-suave); max-width: 64ch; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; scroll-behavior: auto !important; }
  [data-revela] { opacity: 1; transform: none; }
  ::view-transition-old(root), ::view-transition-new(root) { animation: none; }
}
