/* Desktop: "cartões de vidro". Mesma linguagem do celular (marinho com brilho cobalto, títulos leves em degradê,
   cartões de 32 px, CTA dividido, órbita com logos), reorganizada em grade de 12 colunas, conteúdo até 1200 px.
   Vale acima de 700 px (o link do index.html já carrega com essa media). Os blocos [data-mobile-block] que o desktop
   reaproveita são reabertos aqui, um a um; o resto do site antigo fica oculto. */
@media (min-width: 701px) and (not ((max-width: 1000px) and (hover: none) and (pointer: coarse) and (orientation: landscape))) {
  :root {
    --d-bg: #050b1a;
    --d-cobalt: #1f5bff;
    --d-ice: #8fb4ff;
    --d-text: rgba(235, 240, 255, .78);
    --d-glass: rgba(120, 160, 255, .14);
    --d-line: rgba(180, 205, 255, .22);
    --d-card: linear-gradient(165deg, #172a6e 0%, #0b1a4d 52%, #08133a 100%);
    --d-w: min(1200px, calc(100% - 96px));
  }
  html { scroll-padding-top: 96px; background: var(--d-bg); }
  body { background: var(--d-bg); color: #fff; }
  :focus-visible { outline-color: #cfe0ff; }
  [data-reveal].motion-enter { animation: editorial-enter .5s cubic-bezier(.22, 1, .36, 1) both; }

  .d-only[hidden] { display: block; }
  .search-hero, .channels, .field-note, .path-section, .care-section, .work-section { display: none; }
  main { display: flex; flex-direction: column; overflow-x: clip; }
  .m-hero { order: 1; } .trailer-section { order: 2; } .evidence { order: 3; } .m-band { order: 4; } .m-process { order: 5; } .faq { order: 6; } .conversion { order: 7; }

  /* Cabeçalho fixo: só o logo; o CTA em pílula entra depois que a abertura sai e some quando o fecho aparece (desktop.js) */
  .header.wrap { position: fixed; top: 0; left: 0; right: 0; z-index: 20; width: var(--d-w); height: 88px; margin: 0 auto; }
  .header::before { content: ''; position: fixed; left: 0; right: 0; top: 0; height: 112px; z-index: -1; background: linear-gradient(180deg, rgba(5, 11, 26, .96), rgba(5, 11, 26, .9) 60%, transparent); opacity: 0; transition: opacity .3s; pointer-events: none; }
  .header.is-scrolled::before { opacity: 1; }
  .header-note { display: none; }
  .brand { min-height: 44px; color: #fff; }
  .brand img { filter: brightness(0) invert(1); mix-blend-mode: normal; }
  .header .text-link { display: inline-flex; align-items: center; gap: 12px; min-height: 48px; padding: 0 8px 0 22px; border-radius: 999px; background: linear-gradient(180deg, rgba(255, 255, 255, .9) 0%, #e9eeff 100%); color: #0b0b1f; font-size: 15px; font-weight: 600; box-shadow: inset 0 1px 0 #fff, 0 6px 18px rgba(2, 8, 40, .4); opacity: 0; visibility: hidden; transform: translateY(-8px); pointer-events: none; transition: opacity .3s, transform .3s, visibility .3s, filter .2s; }
  .header.cta-on .text-link { opacity: 1; visibility: visible; transform: none; pointer-events: auto; }
  .header .text-link:hover { color: #0b0b1f; filter: brightness(1.06); }
  .header .text-link span { display: grid; place-items: center; width: 34px; height: 34px; margin: 0; border-radius: 50%; background: linear-gradient(180deg, rgba(40, 60, 255, .9) 0%, #0000ff 100%); color: #fff; font-size: 18px; line-height: 1; }

  /* CTA dividido: pílula branca + círculo azul com seta (rich button) */
  .m-split { display: flex; align-items: center; gap: 8px; width: 100%; color: #0b0b1f; text-decoration: none; }
  .m-split-pill { flex: 1; display: grid; place-items: center; min-height: 60px; padding: 0 28px; border-radius: 999px; background: linear-gradient(180deg, rgba(255, 255, 255, .88) 0%, #e9eeff 100%); border: 1px solid rgba(9, 9, 11, .35); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .95), 0 6px 14px rgba(9, 9, 11, .28); color: #0b0b1f; font-size: 17px; font-weight: 600; letter-spacing: -.01em; text-shadow: 0 1px 0 #fff; transition: filter .2s; }
  .m-split-go { flex: 0 0 60px; display: grid; place-items: center; width: 60px; height: 60px; border-radius: 50%; background: linear-gradient(180deg, rgba(40, 60, 255, .88) 0%, #0000ff 100%); border: 1px solid rgba(9, 9, 11, .35); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .25), 0 6px 14px rgba(9, 9, 11, .28), 0 10px 30px rgba(31, 91, 255, .45); color: #fff; font-size: 26px; line-height: 1; text-shadow: 0 1px 0 #00006b; transition: filter .2s, transform .2s; }
  .m-split:hover .m-split-pill, .m-split:hover .m-split-go { filter: brightness(1.08); }
  .m-split:hover .m-split-go { transform: translate(2px, -2px); }
  .m-split:active .m-split-pill, .m-split:active .m-split-go { filter: brightness(.95); }
  .m-split:focus-visible { outline: 2px solid #cfe0ff; outline-offset: 5px; border-radius: 999px; }
  .m-pill-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 32px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--d-line); background: rgba(120, 160, 255, .18); color: #dbe6ff; font-size: 13px; font-weight: 500; white-space: nowrap; }

  /* 1. Abertura em duas colunas */
  .m-hero { position: relative; overflow: hidden; background: radial-gradient(ellipse 52% 70% at 80% 48%, rgba(31, 91, 255, .5), transparent 72%), radial-gradient(ellipse 80% 40% at 50% 112%, rgba(42, 102, 255, .45), transparent 72%), var(--d-bg); display: grid; align-items: center; height: 100vh; height: 100dvh; min-height: 620px; padding: 88px 0 24px; }
  .m-hero > .wrap { --s: clamp(340px, 34vw, 480px); width: var(--d-w); display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; grid-template-rows: 1fr auto auto auto 1fr; align-items: center; width: var(--d-w); min-height: 0; height: 100%; max-height: 760px; text-align: left; }
  .m-hero h1, .m-lead, .m-cta { grid-column: 1 / 8; }
  .m-hero h1 { grid-row: 2; } .m-lead { grid-row: 3; } .m-cta { grid-row: 4; }
  .m-hero h1 { margin: 0; font-size: clamp(56px, 5.4vw, 80px); line-height: 1.03; letter-spacing: -.045em; font-weight: 300; color: #fff; align-self: end; }
  .m-hero h1 em { display: block; background: none; color: #fff; padding: 0; font-style: normal; }
  #m-hero-title .hero-word { background: linear-gradient(95deg, #8fb4ff 0%, #dbe8ff 100%); -webkit-background-clip: text; background-clip: text; color: transparent; padding: .1em .02em .2em; margin: -.1em -.02em -.2em; }
  #m-hero-title em .hero-word { background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #fff; padding: 0; margin: 0; }
  .m-lead { margin: 24px 0 0; font-size: 21px; line-height: 1.5; color: var(--d-text); align-self: start; }
  .m-cta { width: min(100%, 400px); margin-top: 32px; align-self: start; }
  .m-orbit { grid-column: 8 / 13; grid-row: 1 / -1; position: relative; justify-self: end; width: var(--s); height: var(--s); }
  .m-ring { position: absolute; left: 50%; top: 50%; border: 1px solid rgba(160, 195, 255, .26); border-radius: 50%; transform: translate(-50%, -50%); }
  .m-ring-1 { width: calc(var(--s) * .58); height: calc(var(--s) * .58); background: radial-gradient(circle, rgba(31, 91, 255, .22), transparent 70%); }
  .m-ring-2 { width: calc(var(--s) * .79); height: calc(var(--s) * .79); border-color: rgba(160, 195, 255, .18); }
  .m-ring-3 { width: var(--s); height: var(--s); border-color: rgba(160, 195, 255, .12); }
  .m-orb { overflow: hidden; position: absolute; left: 50%; top: 50%; width: calc(var(--s) * .46); height: calc(var(--s) * .46); border-radius: 50%; transform: translate(-50%, -50%); background: radial-gradient(circle at 34% 28%, #9cc0ff 0%, #2f6cff 34%, #0b2aa8 66%, #050b1a 100%); box-shadow: 0 0 0 1px rgba(170, 200, 255, .35), 0 0 100px rgba(31, 91, 255, .75), inset -16px -20px 40px rgba(3, 8, 40, .55); }
  .m-orb img { display: block; width: 100%; height: 100%; object-fit: cover; transform: scale(1.22); }
  .m-spin-lua { display: none; }
  .m-spin { position: absolute; left: 50%; top: 50%; width: 0; height: 0; animation: d-gira 48s linear infinite; }
  .m-sat { position: absolute; left: 0; top: 0; width: 60px; height: 60px; margin: -30px 0 0 -30px; transform: rotate(var(--a)) translateX(var(--r)) rotate(calc(-1 * var(--a))); }
  .m-sat-a, .m-sat-c { --r: calc(var(--s) * .5) !important; }
  .m-sat-b { --r: calc(var(--s) * .395) !important; }
  .m-sat-in { position: relative; overflow: visible; display: grid; place-items: center; width: 60px; height: 60px; border-radius: 50%; background: rgba(255, 255, 255, .14); animation: d-gira 48s linear infinite reverse; box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .5), 0 10px 30px rgba(31, 91, 255, .4); }
  .m-sat-in svg { display: block; width: 32px; height: 32px; }
  .m-sat-in svg path { fill: #fff; }
  .m-sat-nome { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); margin-top: 10px; font-style: normal; white-space: nowrap; color: #fff; font-size: 15px; line-height: 1; text-shadow: 0 1px 8px rgba(3, 8, 40, .9); }
  .m-nome-g { font-family: "Plus Jakarta Sans", Inter, system-ui, sans-serif; font-weight: 500; letter-spacing: -.01em; }
  .m-nome-c { font-family: Inter, system-ui, sans-serif; font-weight: 500; letter-spacing: -.005em; }
  .m-nome-w { font-family: -apple-system, "SF Pro Text", "Helvetica Neue", Inter, sans-serif; font-weight: 600; }
  @keyframes d-gira { to { transform: rotate(360deg); } }
  /* Lua: órbita própria entre o primeiro e o segundo anel, em sentido contrário aos logos (34 s), girando ao contrário para a luz ficar sempre do mesmo lado */
  .d-only[hidden].d-lua { display: block; position: absolute; left: 50%; top: 50%; width: 0; height: 0; animation: d-gira 34s linear infinite reverse; }
  .d-lua::before { content: ''; position: absolute; left: calc(var(--s) * -.33); top: calc(var(--s) * -.33); width: calc(var(--s) * .66); height: calc(var(--s) * .66); box-sizing: border-box; border: 1px dashed rgba(190, 215, 255, .45); border-radius: 50%; }
  .d-lua-pos { position: absolute; left: 0; top: 0; display: block; width: calc(var(--s) * .11); height: calc(var(--s) * .11); margin: calc(var(--s) * -.055) 0 0 calc(var(--s) * -.055); transform: translateX(calc(var(--s) * .33)); }
  .d-lua-pos img { display: block; width: 100%; height: 100%; animation: d-gira 34s linear infinite; filter: drop-shadow(0 6px 12px rgba(0, 0, 24, .65)); }

  /* 2. Trailer 16:9 em cartão grande */
  .trailer-section { position: relative; z-index: 2; overflow: visible; display: flex; flex-direction: column; justify-content: center; min-height: 100vh; min-height: 100dvh; padding: 96px 0 56px; border-radius: 48px 48px 0 0; border-top: 1px solid rgba(180, 205, 255, .28); background: radial-gradient(ellipse 60% 220px at 50% 0, rgba(31, 91, 255, .35), transparent 80%), #050b1a; color: #fff; }
  .trailer-section::before { display: none; }
  .trailer-section > .wrap { width: var(--d-w); }
  .trailer-head { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: 24px; align-items: end; max-width: none; width: 100%; margin: 0 0 36px; text-align: left; }
  .trailer-section h2 { grid-column: 1 / 10; margin: 0; padding-bottom: .1em; font-family: inherit; font-size: clamp(34px, 3.5vw, 54px); text-wrap: balance; line-height: 1.04; letter-spacing: -.045em; font-weight: 300; background: linear-gradient(95deg, #8fb4ff 0%, #dbe8ff 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
  .trailer-section h2 em { background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #fff; padding: 0; }
  .trailer-lead { grid-column: 10 / 13; margin: 0 0 .6em; max-width: none; font-size: 19px; line-height: 1.55; color: var(--d-text); text-align: left; text-wrap: pretty; }
  .trailer-section .trailer-player { width: min(100%, calc((100dvh - 340px) * 16 / 9)); max-width: none; margin: 0 auto; border-radius: 32px; border: 1px solid var(--d-line); background: #050b1a; box-shadow: 0 30px 90px rgba(31, 91, 255, .35), inset 0 1px 0 rgba(255, 255, 255, .14); }
  .trailer-section .trailer-player::before { content: ''; position: absolute; inset: 0 0 auto; height: 34%; z-index: 1; pointer-events: none; background: linear-gradient(180deg, rgba(5, 11, 26, .72), transparent); }
  .trailer-section .trailer-player.is-playing::before { display: none; }
  .trailer-section .trailer-play { z-index: 2; top: auto; bottom: 48px; width: 104px; height: 104px; transform: translateX(-50%); border: 1px solid rgba(190, 215, 255, .6); background: rgba(31, 91, 255, .5); box-shadow: 0 0 0 10px rgba(120, 160, 255, .14), 0 16px 50px rgba(31, 91, 255, .55); }
  .trailer-section .trailer-play:hover { transform: translateX(-50%) scale(1.06); background: rgba(31, 91, 255, .7); }
  .trailer-section .trailer-play-icon { margin-left: 8px; border-width: 16px 0 16px 26px; }
  .trailer-section .trailer-play:focus-visible { outline: 3px solid #cfe0ff; outline-offset: 5px; }
  .trailer-foot { display: none; }

  /* 3. Diagnóstico: a conversa do ChatGPT e a busca local com o mapa, no vidro escuro */
  .evidence { --blue: #8fb4ff; --ink: #fff; --muted: rgba(235, 240, 255, .74); --line: rgba(180, 205, 255, .22); --white: rgba(255, 255, 255, .08); --tint: rgba(31, 91, 255, .35); --page: transparent; display: grid; grid-template-columns: minmax(0, 1fr); gap: 40px; width: var(--d-w); margin: 0 auto; padding: 88px 0 24px; border: 0; }
  .evidence > div:first-child { grid-column: 1; max-width: none; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 24px; }
  .evidence .eyebrow, .evidence .diagnostic-stat { display: none; }
  .evidence h2 { max-width: 880px; margin: 0; padding-bottom: .1em; font-size: clamp(40px, 4.6vw, 68px); line-height: 1.05; letter-spacing: -.045em; font-weight: 300; background: linear-gradient(180deg, #8fb4ff, #fff 85%); -webkit-background-clip: text; background-clip: text; color: transparent; }
  .evidence h2 br { display: none; }
  .evidence h2 em { background: none; -webkit-background-clip: border-box; background-clip: border-box; color: #fff; padding: 0; -webkit-text-fill-color: #fff; }
  .d-only[hidden].d-tabs { display: flex; gap: 8px; margin: 0 0 12px; padding: 0; list-style: none; }
  .d-tabs li { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 20px; border-radius: 999px; border: 1px solid var(--d-line); background: var(--d-glass); color: rgba(235, 240, 255, .86); font-family: Inter, system-ui, sans-serif; font-size: 16px; font-weight: 500; transition: background .3s, color .3s, box-shadow .3s; }
  .d-tabs li svg { width: 20px; height: 20px; flex: none; }
  .d-tabs li img { display: block; height: 24px; width: auto; }
  .d-tabs li img { filter: brightness(0) invert(1); }
  .d-tabs li[data-on] img { filter: brightness(0); }
  .d-tabs li[data-on] { background: #fff; border-color: #fff; color: #0b0b1f; box-shadow: 0 0 0 4px rgba(143, 180, 255, .3); }
  .evidence .diagnostic { grid-column: 1; overflow: hidden; border: 1px solid var(--d-line); border-radius: 32px; background: var(--d-card); box-shadow: 0 30px 90px rgba(31, 91, 255, .28), inset 0 1px 0 rgba(255, 255, 255, .14); }
  .evidence .diagnostic-header { display: flex; justify-content: space-between; padding: 20px 36px; border-bottom: 1px solid var(--d-line); font-size: 12px; letter-spacing: .1em; color: rgba(235, 240, 255, .78); }
  .evidence .diagnostic-header span:last-child { font-size: 12px; }
  .evidence #diagnostic-panel { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: stretch; }
  .evidence #diagnostic-panel .diagnostic-visual.diagnostic-visual-motion { padding: 28px 40px 8px; background: none; min-height: 0; }
  .evidence #diagnostic-panel .diagnostic-content { display: flex; flex-direction: column; justify-content: center; min-height: 0; padding: 40px 48px; border-left: 1px solid var(--d-line); background: radial-gradient(ellipse 100% 80% at 50% 120%, rgba(31, 91, 255, .45), transparent 70%); }
  .evidence .small-label { font-size: 12px; letter-spacing: .12em; color: var(--d-ice); }
  .evidence .diagnostic-content h3 { margin: 14px 0 16px; font-size: clamp(28px, 2.8vw, 40px); line-height: 1.12; letter-spacing: -.035em; font-weight: 300; color: #fff; }
  .evidence .diagnostic-content > p { margin: 0; font-size: 18px; line-height: 1.6; color: var(--d-text); }
  .evidence .diagnostic-header > span:last-child { display: none; }
  /* Marcas: Google em geométrica (Plus Jakarta Sans 500), ChatGPT em Inter 500 (parente da Söhne) */
  .evidence .geo-label { display: flex; align-items: center; gap: 8px; font-size: 0; font-family: Inter, system-ui, sans-serif; font-weight: 500; letter-spacing: 0; }
  .evidence .geo-label::before { content: ''; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23fff%22 d=%22M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z%22/%3E%3C/svg%3E") center / contain no-repeat; }
  .evidence .geo-label::after { content: 'ChatGPT'; font-size: 15px; color: #fff; }
  .evidence .discovery-search::before { content: ''; flex: none; width: 64px; height: 22px; margin-right: 10px; background: url(/assets/mobile/google-logo.svg) left center / contain no-repeat; filter: brightness(0) invert(1); }
  .m-nome-g { font-size: 0 !important; width: 62px; height: 20px; background: url(/assets/mobile/google-logo.svg) center / contain no-repeat; text-shadow: none; filter: brightness(0) invert(1) drop-shadow(0 1px 6px rgba(3, 8, 40, .9)); }
  /* Conversa no padrão do ChatGPT: bolha cinza à direita, resposta sem balão à esquerda com a rosácea */
  .evidence .geo-user { max-width: 78%; padding: 12px 18px; border: 0; border-radius: 22px 22px 6px 22px; background: rgba(255, 255, 255, .14); font-size: 16px; color: #fff; }
  .evidence .geo-avatar { display: block; padding: 0; border-radius: 50%; font-size: 0; color: transparent; width: 28px; height: 28px; border: 1px solid var(--d-line); background: rgba(255, 255, 255, .08) url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22%3E%3Cpath fill=%22%23fff%22 d=%22M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9847 0 0 0-3.9977 2.9 6.0462 6.0462 0 0 0 .7427 7.0966 5.98 5.98 0 0 0 .511 4.9107 6.051 6.051 0 0 0 6.5146 2.9001A5.9847 5.9847 0 0 0 13.2599 24a6.0557 6.0557 0 0 0 5.7718-4.2058 5.9894 5.9894 0 0 0 3.9977-2.9001 6.0557 6.0557 0 0 0-.7475-7.0729zm-9.022 12.6081a4.4755 4.4755 0 0 1-2.8764-1.0408l.1419-.0804 4.7783-2.7582a.7948.7948 0 0 0 .3927-.6813v-6.7369l2.02 1.1686a.071.071 0 0 1 .038.052v5.5826a4.504 4.504 0 0 1-4.4945 4.4944zm-9.6607-4.1254a4.4708 4.4708 0 0 1-.5346-3.0137l.142.0852 4.783 2.7582a.7712.7712 0 0 0 .7806 0l5.8428-3.3685v2.3324a.0804.0804 0 0 1-.0332.0615L9.74 19.9502a4.4992 4.4992 0 0 1-6.1408-1.6464zM2.3408 7.8956a4.485 4.485 0 0 1 2.3655-1.9728V11.6a.7664.7664 0 0 0 .3879.6765l5.8144 3.3543-2.0201 1.1685a.0757.0757 0 0 1-.071 0l-4.8303-2.7865A4.504 4.504 0 0 1 2.3408 7.872zm16.5963 3.8558L13.1038 8.364 15.1192 7.2a.0757.0757 0 0 1 .071 0l4.8303 2.7913a4.4944 4.4944 0 0 1-.6765 8.1042v-5.6772a.79.79 0 0 0-.407-.667zm2.0107-3.0231l-.142-.0852-4.7735-2.7818a.7759.7759 0 0 0-.7854 0L9.409 9.2297V6.8974a.0662.0662 0 0 1 .0284-.0615l4.8303-2.7866a4.4992 4.4992 0 0 1 6.6802 4.66zM8.3065 12.863l-2.02-1.1638a.0804.0804 0 0 1-.038-.0567V6.0742a4.4992 4.4992 0 0 1 7.3757-3.4537l-.142.0805L8.704 5.459a.7948.7948 0 0 0-.3927.6813zm1.0976-2.3654l2.602-1.4998 2.6069 1.4998v2.9994l-2.5974 1.4997-2.6067-1.4997Z%22/%3E%3C/svg%3E") center / 16px 16px no-repeat; }
  /* Busca do Google: resultados em Arial/Roboto, com as cores do tema escuro do Google (o azul #1a0dab do tema claro não passa de 4,5:1 no marinho) */
  .evidence .discovery-search, .evidence .discovery-card-heading, .evidence .discovery-detail > p, .evidence .discovery-other, .evidence .discovery-message p { font-family: Arial, Roboto, sans-serif; }
  .evidence .discovery-search { color: #e8eaed; }
  .evidence .discovery-search > svg { stroke: #9aa0a6; }
  .evidence .discovery-card-heading strong, .evidence .discovery-other strong { color: #8ab4f8; font-weight: 400; letter-spacing: 0; }
  .evidence .discovery-card-heading > div > span, .evidence .discovery-detail > p, .evidence .discovery-other > div > span { color: #bdc1c6; }
  .evidence .discovery-other strong { color: #8ab4f8; opacity: .75; }
  .evidence .discovery-search { min-height: 64px; font-size: 16px; }
  .evidence .discovery-stage { height: 360px; }
  .evidence .geo-assistant { grid-template-columns: 28px minmax(0, 1fr); font-size: 16px; color: #fff; }
  .evidence .geo-answer-clinic strong { color: #fff; }
  .evidence .geo-citation { color: #dbe6ff; font-size: 11px; }
  .evidence .geo-source, .evidence .geo-working { font-size: 14px; }
  .evidence .geo-visit { border-bottom-color: rgba(143, 180, 255, .6); color: #cfe0ff; font-size: 16px; }
  .evidence .discovery-surface { border-color: var(--d-line); background: rgba(31, 91, 255, .18); border-radius: 20px; }
  .evidence .discovery-card-heading strong { font-size: 20px; color: #fff; }
  .evidence .discovery-card-heading > div > span, .evidence .discovery-detail > p { font-size: 15px; }
  .evidence .discovery-cta { border-radius: 14px; background: linear-gradient(180deg, rgba(40, 60, 255, .9), #0000ff); color: #fff; font-size: 15px; }
  .evidence .discovery-clinic-icon { background: rgba(255, 255, 255, .92); }
  .evidence .discovery-other strong { font-size: 16px; }
  .evidence .discovery-other > div > span { font-size: 15px; }
  .evidence .discovery-message { border-top-color: var(--d-line); }
  .evidence .discovery-message > span { font-size: 12px; color: var(--d-ice); }
  .evidence .discovery-message p { font-size: 16px; color: #fff; }
  .evidence .discovery-controls { border-top-color: var(--d-line); }
  .evidence .discovery-step { font-size: 13px; }
  .evidence .discovery-controls button { color: var(--d-ice); font-size: 14px; }
  .evidence .discovery-controls button:hover { background: var(--d-glass); }
  .evidence .discovery-controls button:focus-visible { outline-color: #cfe0ff; }
  .evidence .neighborhood { width: 100%; height: auto; max-height: 320px; }
  .evidence .neighborhood text { fill: rgba(235, 240, 255, .8); font-size: 12px; }
  .evidence .neighborhood .map-you { fill: #fff; font-weight: 600; }
  .evidence .neighborhood g[fill] { fill: rgba(235, 240, 255, .55); }

  /* 4. O dado dos 28%: cartão compacto com a cidade à noite */
  .m-band { display: block; padding: 40px 0 8px; }
  .m-band > .wrap { width: min(960px, var(--d-w)); }
  .m-event { position: relative; isolation: isolate; overflow: hidden; display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: clamp(24px, 4vw, 56px); align-items: center; min-height: 340px; padding: 28px 44px 36px; border-radius: 32px; border: 1px solid var(--d-line); background: radial-gradient(ellipse 90% 80% at 20% 120%, rgba(31, 91, 255, .6), transparent 70%), var(--d-card); box-shadow: 0 24px 70px rgba(2, 8, 40, .45), inset 0 1px 0 rgba(255, 255, 255, .14); }
  .m-photo { display: block; position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; object-fit: cover; pointer-events: none; }
  .m-event .m-photo { opacity: .55; object-position: 50% 45%; -webkit-mask-image: linear-gradient(270deg, #000 0%, rgba(0, 0, 0, .55) 38%, transparent 72%); mask-image: linear-gradient(270deg, #000 0%, rgba(0, 0, 0, .55) 38%, transparent 72%); }
  .m-chips { grid-column: 1 / -1; align-self: start; display: flex; gap: 8px; }
  .m-stat-row { grid-column: 1; grid-row: 2; display: flex; align-items: center; margin: 0; }
  .m-stat { margin: 0; }
  .m-stat strong { display: block; font-size: clamp(104px, 10vw, 148px); line-height: .95; letter-spacing: -.06em; font-weight: 300; background: linear-gradient(180deg, #8fb4ff 0%, #fff 90%); -webkit-background-clip: text; background-clip: text; color: transparent; padding: 0 .06em .08em 0; }
  .m-dots { display: none; }
  .m-event h2 { grid-column: 2; grid-row: 2; margin: 0; max-width: 440px; font-size: clamp(22px, 2.2vw, 30px); line-height: 1.25; letter-spacing: -.025em; font-weight: 300; color: #fff; text-shadow: 0 2px 20px rgba(3, 8, 40, .8); }
  .d-source { order: 4; width: min(960px, var(--d-w)); margin: 0 auto; padding: 4px 8px 0; text-align: right; font-size: 14px; }
  .d-source a { display: inline-flex; align-items: center; min-height: 44px; color: #dbe6ff; text-decoration: underline; text-underline-offset: 4px; }
  .d-source a:hover { color: #fff; }

  /* 5. Como funciona: trilha horizontal com fio de luz */
  .m-process { display: block; padding: 88px 0 40px; }
  .m-process > .wrap { width: var(--d-w); }
  .m-process h2 { margin: 0; padding-bottom: .1em; font-size: clamp(44px, 5vw, 72px); line-height: 1.05; letter-spacing: -.045em; font-weight: 300; background: linear-gradient(180deg, #8fb4ff, #fff 85%); -webkit-background-clip: text; background-clip: text; color: transparent; }
  .m-steps { --muted: #fff; --blue: #fff; position: relative; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 96px 0 0; padding: 0; list-style: none; }
  .m-steps::before, .m-steps::after { content: ''; position: absolute; left: 9px; right: calc((100% - 48px) / 3 - 9px); top: 17px; height: 2px; border-radius: 2px; }
  .m-steps::before { background: linear-gradient(90deg, rgba(143, 180, 255, .85), rgba(143, 180, 255, .3)); }
  .m-steps::after { background: linear-gradient(90deg, transparent 0%, #fff 50%, transparent 100%) 0 0 / 22% 100% no-repeat; filter: drop-shadow(0 0 6px #8fb4ff); animation: d-fio 4.2s ease-in-out infinite; }
  @keyframes d-fio { from { background-position: -30% 0; } to { background-position: 130% 0; } }
  .m-steps li { position: relative; display: block; margin-top: 44px; padding: 8px 0 0; }
  .m-steps .m-step-line { display: none; }
  .m-steps li::before { content: ''; position: absolute; left: 0; top: -35px; width: 18px; height: 18px; border-radius: 50%; background: #8fb4ff; box-shadow: 0 0 0 6px rgba(143, 180, 255, .16), 0 0 18px rgba(143, 180, 255, .9); }
  .m-steps li > span { display: block; font-size: clamp(72px, 7.4vw, 112px); line-height: 1; font-weight: 200; letter-spacing: -.05em; color: transparent; -webkit-text-stroke: 1.5px #8fb4ff; }
  .m-steps h3 { margin: 18px 0 0; max-width: 300px; font-size: clamp(24px, 2.2vw, 32px); line-height: 1.2; letter-spacing: -.03em; font-weight: 300; color: #fff; }

  /* Animação da trilha (desktop.js põe .d-anim no começo e .d-run quando entra na viewport): o fio cresce em 1,5 s e as bolinhas acendem 01, 02, 03 quando ele chega */
  .m-steps.d-anim::before { transform-origin: left center; animation: d-cresce 1.5s linear both; animation-play-state: paused; }
  .m-steps.d-anim::after { animation: d-fio 4.2s ease-in-out 1.7s infinite backwards; animation-play-state: paused; }
  .m-steps.d-anim li::before { animation: d-acende .55s cubic-bezier(.3, 1.6, .5, 1) both; animation-play-state: paused; }
  .m-steps.d-anim li > span { animation: d-num .5s ease-out both; animation-play-state: paused; }
  .m-steps.d-anim li > h3 { animation: d-titulo .5s ease-out both; animation-play-state: paused; }
  .m-steps.d-anim li:nth-child(2)::before, .m-steps.d-anim li:nth-child(2) > span { animation-delay: .75s; }
  .m-steps.d-anim li:nth-child(3)::before, .m-steps.d-anim li:nth-child(3) > span { animation-delay: 1.5s; }
  .m-steps.d-anim li:nth-child(1) > h3 { animation-delay: .15s; }
  .m-steps.d-anim li:nth-child(2) > h3 { animation-delay: .9s; }
  .m-steps.d-anim li:nth-child(3) > h3 { animation-delay: 1.65s; }
  .m-steps.d-anim.d-run::before, .m-steps.d-anim.d-run::after, .m-steps.d-anim.d-run li::before, .m-steps.d-anim.d-run li > span, .m-steps.d-anim.d-run li > h3 { animation-play-state: running; }
  @keyframes d-cresce { from { transform: scaleX(0); } to { transform: scaleX(1); } }
  @keyframes d-acende { 0% { background: transparent; box-shadow: none; transform: scale(.7); border: 2px solid #8fb4ff; } 55% { transform: scale(1.35); } 100% { transform: scale(1); } }
  @keyframes d-num { from { opacity: .35; } to { opacity: 1; } }
  @keyframes d-titulo { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }

  /* 6. FAQ em cartões de vidro, duas colunas */
  .faq { display: block; width: min(860px, var(--d-w)); margin: 0 auto; padding: 96px 0 40px; border: 0; }
  .faq .eyebrow { display: none; }
  .faq h2 { margin: 0; padding-bottom: .1em; font-size: clamp(44px, 5vw, 72px); line-height: 1.05; letter-spacing: -.045em; font-weight: 300; background: linear-gradient(180deg, #8fb4ff, #fff 85%); -webkit-background-clip: text; background-clip: text; color: transparent; }
  .faq .faq-lead { max-width: 520px; margin: 14px 0 0; font-size: 18px; line-height: 1.55; color: var(--d-text); }
  .faq-items { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; margin-top: 40px; }
  .faq-items details { padding: 0 28px; border: 1px solid var(--d-line); border-radius: 28px; background: var(--d-card); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
  .faq-items summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 80px; padding: 18px 0; font-size: 19px; line-height: 1.3; font-weight: 400; color: #fff; list-style: none; }
  .faq-items summary::-webkit-details-marker { display: none; }
  .faq-items summary:focus-visible { outline-offset: 6px; border-radius: 20px; }
  .faq-items summary > span[aria-hidden] { flex: 0 0 40px; display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--d-glass); border: 1px solid var(--d-line); color: #fff; font-size: 22px; line-height: 1; transition: transform .2s; }
  .faq-items details[open] summary > span[aria-hidden] { transform: rotate(45deg); }
  .faq-answer > p { margin: 0; padding: 0 0 26px; font-size: 17px; line-height: 1.6; color: var(--d-text); }
  /* A pergunta livre é mais um cartão da lista: mesmo fundo, altura e círculo do "+"; a resposta abre dentro dele. */
  .faq .faq-ask-slot { padding: 0 28px; border: 1px solid var(--d-line); border-radius: 28px; background: var(--d-card); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .12); }
  .faq .faq-ask { min-height: 80px; padding: 14px 0; gap: 0 16px; }
  .faq .faq-ask input { height: 48px; padding: 0; color: #fff; font-size: 19px; line-height: 1.3; }
  .faq .faq-ask input::placeholder { color: rgba(235, 240, 255, .66); opacity: 1; }
  .faq .faq-ask button[type="submit"] { width: 48px; height: 48px; margin-right: -4px; color: #fff; }
  .faq .faq-ask button[type="submit"] > span { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--d-glass); border: 1px solid var(--d-line); font-size: 20px; line-height: 1; }
  .faq .faq-ask button[type="submit"]:focus-visible { outline: 2px solid #cfe0ff; outline-offset: 3px; border-radius: 50%; }
  .faq .faq-ask-status { color: var(--d-text); padding: 0 0 14px; font-size: 14px; }
  .faq .faq-ask-status.is-error { color: #ffb4ae; }
  .faq .faq-live .faq-turn-q { display: flex; align-items: center; min-height: 80px; padding: 18px 0; color: #fff; font-size: 19px; line-height: 1.3; }
  .faq .faq-live .faq-turn-a { padding: 0 0 18px; color: var(--d-text); font-size: 17px; line-height: 1.6; }
  .faq .faq-cta, .faq .faq-ask-again, .faq .faq-ask-again span { color: var(--d-ice); }
  .faq .faq-ask-again { min-height: 44px; margin: 0 0 14px; font-size: 16px; }

  /* 7. Fecho centralizado: título sobre a recepção com véu azul e um cartão de vidro com o formulário em 2x2 */
  .conversion { position: relative; isolation: isolate; overflow: hidden; display: block; width: 100%; padding: 120px 0 112px; background: none; }
  .conversion::after { content: ''; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse 70% 55% at 50% 100%, rgba(42, 102, 255, .55), transparent 75%), linear-gradient(180deg, #050b1a 0%, rgba(8, 24, 92, .5) 40%, rgba(5, 11, 26, .9) 100%); pointer-events: none; }
  .conversion .m-photo { display: block; z-index: -2; opacity: .55; object-position: 50% 55%; -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 30%, #000 70%, transparent 100%); mask-image: linear-gradient(180deg, transparent 0%, #000 30%, #000 70%, transparent 100%); }
  .conversion-grid { display: flex; flex-direction: column; align-items: center; width: var(--d-w); gap: 0; }
  .conversion-grid > div:first-child { display: contents; }
  .conversion .eyebrow, .m-abrir-form, #lead-form .form-heading { display: none; }
  .conversion h2 { order: 1; max-width: 960px; margin: 0 0 48px; text-align: center; font-size: clamp(44px, 5.4vw, 80px); line-height: 1.04; letter-spacing: -.045em; font-weight: 300; color: #fff; text-wrap: balance; }
  section.conversion h2 em { display: inline; background: linear-gradient(95deg, #8fb4ff, #dbe8ff); -webkit-background-clip: text; background-clip: text; color: transparent; padding: .1em 0 .2em; font-style: normal; }
  #lead-form { order: 2; position: relative; width: min(760px, 100%); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 20px; padding: 40px 40px 76px; border-radius: 32px; border: 1px solid var(--d-line); background: linear-gradient(165deg, rgba(23, 42, 110, .86) 0%, rgba(11, 26, 77, .82) 55%, rgba(8, 19, 58, .86) 100%); box-shadow: 0 30px 90px rgba(2, 8, 40, .55), 0 0 0 1px rgba(255, 255, 255, .04), inset 0 1px 0 rgba(255, 255, 255, .16); }
  #lead-form .form-grid { display: contents; }
  #lead-form label[for="clinic"] { grid-area: 1 / 1; } #clinic { grid-area: 2 / 1; } #clinic-error { grid-area: 3 / 1; }
  #lead-form label[for="whatsapp"] { grid-area: 1 / 2; } #whatsapp { grid-area: 2 / 2; } #whatsapp-error { grid-area: 3 / 2; }
  #lead-form .form-grid > div:nth-child(1) { grid-area: 4 / 1 / 7 / 2; }
  #lead-form .form-grid > div:nth-child(2) { grid-area: 4 / 2 / 7 / 3; }
  #lead-form label[for="email"] { grid-area: 7 / 1 / 8 / 3; } #email { grid-area: 8 / 1 / 9 / 3; } #email-error { grid-area: 9 / 1 / 10 / 3; }
  #lead-form .lead-privacy { grid-column: 1 / -1; grid-row: 10; margin: 0 0 20px; text-align: center; }
  #lead-form noscript { grid-column: 1 / -1; grid-row: 11; }
  #lead-form .button { grid-column: 1 / -1; grid-row: 12; }
  #lead-form #form-status { grid-column: 1 / -1; grid-row: 13; margin: 12px 0 0; text-align: center; }
  #lead-form label { margin-bottom: 8px; font-size: 14px; font-weight: 500; color: #f4f4ff; }
  #lead-form input { height: auto; min-height: 52px; padding: 0 16px; border: 1px solid var(--d-line); border-radius: 18px; background: rgba(120, 160, 255, .1); color: #fff; font-size: 16px; }
  #lead-form input::placeholder { color: rgba(235, 240, 255, .62); opacity: 1; }
  #lead-form input:focus { outline: 2px solid var(--d-ice); outline-offset: 1px; }
  #lead-form input[aria-invalid="true"] { border-color: #ff8c84; }
  #lead-form .field-error { margin: 6px 0 14px; color: #ffb4ae; }
  #lead-form .field-error:empty { margin: 0 0 14px; }
  #lead-form .lead-privacy { font-size: 14px; color: var(--d-text); }
  #lead-form .button { width: 100%; justify-content: center; gap: 12px; min-height: 56px; margin: 0; padding: 0 28px; position: relative; overflow: hidden; border-radius: 999px; border: 1px solid rgba(255, 255, 255, .5); color: #fff; font-size: 17px; font-weight: 600; text-shadow: 0 1px 4px rgba(0, 20, 120, .6);
    background: radial-gradient(ellipse 60% 26% at 50% 8%, rgba(255, 255, 255, .32) 0%, rgba(255, 255, 255, 0) 100%), radial-gradient(circle at 50% 130%, rgba(120, 220, 255, .4) 0%, rgba(120, 220, 255, 0) 60%), linear-gradient(165deg, #3a5bff 0%, #1f3dff 50%, #0a2fc4 100%);
    box-shadow: inset 0 2px 5px rgba(255, 255, 255, .6), inset 0 -8px 14px rgba(0, 40, 190, .5), 0 8px 24px rgba(20, 90, 255, .55); transition: filter .2s, transform .2s; }
  #lead-form .button:hover:not(:disabled) { filter: brightness(1.08); }
  #lead-form .button:active:not(:disabled) { transform: translateY(1px); }
  #lead-form .button:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
  #lead-form .button:disabled { opacity: .6; }
  #lead-form .button > span { font-size: 20px; }
  #lead-form #form-status { color: #f4f4ff; }
  #lead-form #form-status.error { color: #ffb4ae; }
  .conversion .m-reassure { display: block; order: 3; position: relative; width: min(760px, 100%); margin: -52px 0 0; padding: 0; text-align: center; list-style: none; pointer-events: none; }
  .m-reassure li { display: inline-block; padding: 0; font-size: 14px; line-height: 1.5; color: var(--d-text); }

  footer.wrap { width: var(--d-w); flex-wrap: wrap; gap: 8px 28px; padding: 40px 0 56px; color: rgba(235, 240, 255, .7); }
  footer .footer-links { margin-left: auto; gap: 8px 24px; }
  footer > span:nth-of-type(2) { order: 5; width: 100%; padding-top: 16px; border-top: 1px solid rgba(180, 205, 255, .14); }
  footer > span { font-size: 13px; color: rgba(235, 240, 255, .7); }
  footer .brand { color: #fff; }
  footer .footer-links, footer .footer-links a { color: rgba(235, 240, 255, .82); font-size: 13px; }
  footer .footer-links a { display: inline-flex; align-items: center; min-height: 44px; }
  footer .footer-links a:hover { color: #fff; }
}

/* Larguras menores: tudo continua em grade, só mais apertado. */
@media (min-width: 701px) and (max-width: 1100px) and (not ((max-width: 1000px) and (hover: none) and (pointer: coarse) and (orientation: landscape))) {
  :root { --d-w: calc(100% - 64px); }
  .evidence #diagnostic-panel { grid-template-columns: minmax(0, 1fr); }
  .evidence #diagnostic-panel .diagnostic-content { border-left: 0; border-top: 1px solid var(--d-line); padding: 28px 32px; }
  .m-event { padding: 28px 32px 32px; }
  .m-steps { gap: 16px; }
  .m-steps::before, .m-steps::after { right: calc((100% - 32px) / 3 - 9px); }
  #lead-form { padding: 32px 28px 72px; }
}

/* Tablet: uma coluna. */
@media (min-width: 701px) and (max-width: 860px) and (not ((max-width: 1000px) and (hover: none) and (pointer: coarse) and (orientation: landscape))) {
  .m-hero > .wrap { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
  .m-orbit { align-self: center; margin-top: 32px; }
  .trailer-head { display: block; }
  .trailer-lead { margin-top: 16px; }
  .m-event { grid-template-columns: 1fr; row-gap: 12px; }
  .m-event h2, .m-event .m-stat-row { grid-column: 1; grid-row: auto; }
  .m-steps { grid-template-columns: 1fr; }
  .m-steps::before, .m-steps::after { display: none; }
  #lead-form { grid-template-columns: 1fr; }
  #lead-form > *, #lead-form .form-grid > div { grid-area: auto !important; }
}

/* Transição abertura -> segunda tela, em dois estados (html.hero-fora / html.hero-dentro), sem meio termo.
   desktop.js dispara por intenção de rolagem e executa por tempo (800 ms); aqui só ficam os estados e as transições
   (transform, opacity e visibility). Folha de vidro sobe e cobre; a abertura recua e escurece; Terra se aproxima;
   anéis e logos se dissolvem. Sem JS ou com movimento reduzido, a troca é instantânea. */
@media (min-width: 701px) and (not ((max-width: 1000px) and (hover: none) and (pointer: coarse) and (orientation: landscape))) {
  html.hero-fora, html.hero-dentro { --d-t: .8s; --d-ease: cubic-bezier(.65, 0, .35, 1); }
  html.hero-lock { overflow: hidden; scrollbar-gutter: stable; }
  html.hero-fora .m-hero, html.hero-dentro .m-hero { position: sticky; top: 0; z-index: 0; }
  .m-hero::after { content: ''; position: absolute; inset: 0; z-index: 5; background: #050b1a; opacity: 0; pointer-events: none; }
  html.hero-dentro .m-hero { visibility: hidden; }
  html.hero-dentro .m-hero::after { opacity: .82; }
  html.hero-dentro .m-hero > .wrap > :not(.m-orbit) { transform: translateY(-48px) scale(.94); opacity: .35; }
  html.hero-dentro .m-orbit .m-ring { opacity: 0; transform: translate(-50%, -50%) scale(1.5); }
  html.hero-dentro .m-orbit .m-orb { opacity: .25; transform: translate(-50%, -50%) scale(1.6); }
  html.hero-dentro .m-orbit .m-spin, html.hero-dentro .m-orbit .d-lua { opacity: 0; }
  html.hero-anim .m-hero, html.hero-anim .m-hero::after, html.hero-anim .m-hero > .wrap > :not(.m-orbit), html.hero-anim .m-orbit .m-ring, html.hero-anim .m-orbit .m-orb, html.hero-anim .m-orbit .m-spin, html.hero-anim .m-orbit .d-lua { transition: transform var(--d-t) var(--d-ease), opacity var(--d-t) var(--d-ease), visibility 0s linear 0s; }
  html.hero-anim.hero-dentro .m-hero { transition-delay: var(--d-t); }
  html.hero-anim .trailer-section { transition: transform var(--d-t) var(--d-ease); will-change: transform; }
  .trailer-section { box-shadow: 0 -30px 90px rgba(31, 91, 255, .38); }
}

@media (prefers-reduced-motion: reduce) {
  .m-spin, .m-sat-in, .m-steps::after, .d-lua, .d-lua-pos img { animation: none; }
  .m-split-go, .m-split:hover .m-split-go { transition: none; transform: none; }
  .trailer-section .trailer-play, .trailer-section .trailer-play:hover { transition: none; transform: translateX(-50%); }
  .header .text-link, .header::before { transition: none; }
  [data-reveal].motion-enter { animation: none; }
}

/* Sincronia com o mobile: os elementos da Lua do celular não aparecem no desktop (ele tem a sua própria, .d-lua). */
@media (min-width: 701px) { .m-spin-lua, .m-ring-lua { display: none !important; } }

/* Ângulos dos logos no desktop (o HTML traz os do celular): mantêm a disposição original. */
@media (min-width: 701px) { .m-sat-a { --a: -70deg !important; } .m-sat-b { --a: 40deg !important; } .m-sat-c { --a: 165deg !important; } }

/* Foco visível no campo de pergunta do FAQ (o campo em si não desenha anel): o anel vai no conjunto. */
@media (min-width: 701px) { .faq .faq-ask-slot:has(.faq-ask:focus-within) { outline: 2px solid #cfe0ff; outline-offset: 3px; } }

/* TEMPORÁRIO (04/10/2026): Lua fora da abertura a pedido do Estevão. A órbita tracejada (.d-lua::before) fica. Para voltar, apague este bloco. */
@media (min-width: 701px) { .d-lua-pos { display: none; } }
