/* Público: os mesmos arquivos de campanha e a mesma foto azul do acesso.
 * O tratamento editorial troca a composição, não os materiais ou as promessas.
 */
body.lp-cobalto .hero.lp-wrap {
  display: grid; grid-template-columns: minmax(0, .88fr) minmax(0, 1.12fr);
  align-items: center; gap: var(--esp-6); padding: 64px 5% 56px; min-height: 660px;
}
body.lp-cobalto .hero .hero-copy { max-width: 560px; text-align: left; }
body.lp-cobalto .hero h1 { font-size: clamp(44px, 4.5vw, 64px); line-height: 1.04; letter-spacing: -.05em; font-weight: 650; }
body.lp-cobalto .hero-description { max-width: 35ch; font-size: 18px; line-height: 1.5; }
body.lp-cobalto .hero-actions { justify-content: flex-start; gap: var(--esp-4); }
body.lp-cobalto .hero-actions .lp-button { min-height: 52px; min-width: 168px; }
body.lp-cobalto .motion-scene {
  display: grid; grid-template-columns: .8fr 1.25fr .8fr; align-items: center;
  width: 100%; height: auto; min-height: 440px; margin: 0; gap: var(--esp-3);
  perspective: none; isolation: isolate; padding: 0;
}
/* Somente ornamentos aria-hidden. Nenhum controle desaparece. */
body.lp-cobalto .motion-scene :is(.scene-aura,.scene-guide,.motion-core,.insight-fragment,.campaign-ready) { display: none; }
body.lp-cobalto .motion-scene .campaign-piece {
  position: relative; inset: auto; width: 100%; height: 330px; margin: 0;
  transform: none; opacity: 1; border-radius: var(--raio-secao);
  border: 1px solid var(--cor-linha-forte); box-shadow: none;
  overflow: hidden; animation: none; transition: none;
}
body.lp-cobalto .motion-scene .piece-main { grid-column: 2; grid-row: 1; height: 440px; }
body.lp-cobalto .motion-scene .piece-story { grid-column: 1; grid-row: 1; }
body.lp-cobalto .motion-scene .piece-post { grid-column: 3; grid-row: 1; height: 290px; padding: 0; }
body.lp-cobalto .motion-scene .piece-post .piece-photo { width: 100%; height: 100%; margin: 0; border-radius: 0; }
body.lp-cobalto .motion-scene .piece-post :is(.mini-brand,.piece-copy) { display: none; }
body.lp-cobalto .motion-scene .campaign-piece > :is(img,video) { width: 100%; height: 100%; object-fit: cover; }
body.lp-cobalto .scene-footnote { grid-column: 1 / -1; position: static; inset: auto; width: auto; margin-top: var(--esp-3); text-align: left; }
/* Motion editorial: só transform/opacity. Texto e chamadas nunca aguardam entrada.
 * Paleta, fotografias e conteúdo continuam os mesmos; nenhum elemento flutua em loop.
 */
body.lp-cobalto .motion-scene[data-motion-style="estudio"] { aspect-ratio: auto; }
body.lp-cobalto .motion-scene[data-motion-style="estudio"] .campaign-piece { will-change: auto; transform-origin: center; }
body.lp-cobalto .motion-scene[data-intro="playing"] .motion-core {
  display: block; position: absolute; top: 42%; left: 50%; width: clamp(76px, 9vw, 112px);
  transform: translate(-50%,-50%); opacity: 0; z-index: 5; pointer-events: none;
  padding: 16px; border-radius: var(--raio-cartao); background: var(--cor-fundo);
  border: 1px solid var(--cor-linha-forte);
}
body.lp-cobalto .motion-scene[data-intro="playing"] .motion-core img { width: 100%; margin: 0; border-radius: 0; box-shadow: none; }
body.lp-cobalto .motion-scene[data-intro="playing"] .motion-wordmark { display: none; }
body.lp-cobalto .process-steps { position: relative; }
body.lp-cobalto .process-steps .step-mark { width: 40px; transform-origin: center; }
/* Reserva a amplitude da entrada: o último passo nunca cobre o aviso abaixo. */
body.lp-cobalto .lp-steps { padding-bottom: 40px; }
body.lp-cobalto :is(.lp-button,.lp-link,.lp-inline-link,.lp-nav a,.lp-tour-tabs button) {
  transition: transform 180ms var(--curva);
}
body.lp-cobalto .lp-tour-tabs button { position: relative; }
body.lp-cobalto .lp-tour-tabs button::after {
  content: ''; position: absolute; bottom: 3px; left: 24%; right: 24%; height: 2px;
  background: currentColor; transform: scaleX(0); transform-origin: center;
  transition: transform 200ms var(--curva); pointer-events: none;
}
body.lp-cobalto .lp-tour-tabs button[aria-selected="true"]::after { transform: scaleX(1); }
body.lp-cobalto .lp-questions summary { min-height: 48px; }
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  body.lp-cobalto :is(.lp-button,.lp-link,.lp-inline-link):hover { transform: translateY(-2px); }
  body.lp-cobalto .lp-button:active { transform: translateY(0) scale(.98); }
  body.lp-cobalto .lp-tour-tabs button:hover { transform: translateY(-1px); }
}
body.lp-cobalto .lp-showcase-copy h2, body.lp-cobalto .lp-section-head h2 { font-size: var(--texto-titulo-tela); }
body .ac-shell .ac-card { max-width: 440px; }
body .ac-shell .ac-intro :is(h1,h2) { font-size: var(--texto-titulo-tela); font-weight: var(--peso-forte); }
body .ac-shell .ac-field :is(input:not([type=radio]):not([type=checkbox]),textarea,select) { border-radius: var(--raio-campo); transition: none; }
body .ac-shell .ac-primary { font-weight: var(--peso-forte); transition: transform var(--dur-rapida) var(--curva); }
/* O tema público claro continua soberano sobre seus campos. A foto é intocada. */
body:not([data-op-tema="claro"]) .ac-shell .ac-main {
  --ac-bg: var(--cor-fundo); --ac-panel: var(--cor-cartao); --ac-input: var(--cor-campo);
  --ac-line: var(--cor-linha-forte); --ac-ink: var(--cor-tinta); --ac-muted: var(--cor-apoio);
}
@media (max-width: 900px) {
  body.lp-cobalto .hero.lp-wrap { grid-template-columns: minmax(0, 1fr); gap: var(--esp-5); padding: 32px 5%; }
  body.lp-cobalto .hero .hero-copy { align-items: flex-start; }
  body.lp-cobalto .hero h1 { font-size: clamp(40px, 7vw, 56px); }
  body.lp-cobalto .motion-scene { min-height: 0; max-width: 640px; }
  body.lp-cobalto .motion-scene .campaign-piece { height: 240px; }
  body.lp-cobalto .motion-scene .piece-main { height: 300px; }
  body.lp-cobalto .motion-scene .piece-post { height: 210px; }
}
@media (max-width: 500px) {
  body.lp-cobalto .hero.lp-wrap { padding-inline: var(--esp-4); }
  body.lp-cobalto .hero-actions { width: 100%; flex-direction: row; align-items: center; }
  body.lp-cobalto .hero-description { font-size: var(--texto-corpo); }
  body.lp-cobalto .motion-scene { gap: var(--esp-2); }
  body.lp-cobalto .motion-scene .campaign-piece { height: 190px; border-radius: var(--raio-item); }
  body.lp-cobalto .motion-scene .piece-main { height: 250px; }
  body.lp-cobalto .motion-scene .piece-post { height: 170px; }
}
@media (prefers-reduced-motion: reduce) {
  body.lp-cobalto :is(.lp-button,.lp-link,.lp-inline-link,.lp-nav a,.lp-tour-tabs button),
  body.lp-cobalto .lp-tour-tabs button::after { transition: none; }
  body.lp-cobalto .motion-scene[data-intro="playing"] .motion-core { display: none; }
  body .ac-shell .ac-primary { transition: none; }
  body .ac-shell .ac-primary:active { transform: none; }
}
