/* Home 1a "Painel de partidas" (aprovado em 04/10/2026, preview Claude Design "Home fly.deals rebranding").
   Tudo escopado em body.home-1a: o ds.css é compartilhado com outras páginas e não muda.
   Marca: creme/tinta/bronze do ds.css, títulos em Cormorant Garamond, DM Mono só no painel e rótulos. */

html:has(body.home-1a) { background: var(--bg); }
body.home-1a { --mono: "DM Mono", ui-monospace, monospace; --serif: "Cormorant Garamond", Georgia, serif; }
.home-1a .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

/* ── tipografia ─────────────────────────────────────────────────────────── */
.home-1a h1, .home-1a h2 { font-family: var(--serif); font-weight: 500; letter-spacing: -0.02em; line-height: 1; text-wrap: balance; }
.home-1a h1 { font-size: clamp(46px, 5.6vw, 72px); line-height: .98; }
.home-1a h2 { font-size: clamp(34px, 4.2vw, 56px); }
.home-1a h1 em, .home-1a .deep-panel h2 em { font-style: italic; color: var(--bronze-600); }
.home-1a h2 .dim { color: var(--ink-mute); }
.home-1a .wrap > h2[style*="max-width"] { max-width: 30ch !important; }

/* ── hero ───────────────────────────────────────────────────────────────── */
.home-1a .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 560px); gap: clamp(32px, 4vw, 56px); align-items: center; }
.home-1a .hero h1 { max-width: none; margin-bottom: 24px; }
.home-1a .hero-sub { font-size: 17px; line-height: 1.65; max-width: 470px; }
.home-1a .app-btn-a { background: var(--ink); box-shadow: none; padding: 14px 24px; font-size: 15px; }
.home-1a .hero-ctas .btn-ghost { padding: 13px 22px; font-size: 15px; }
.home-1a .nav .pill-dark { min-height: 44px; display: inline-flex; align-items: center; }

/* painel de partidas (split-flap) */
.home-1a .board { background: #17130D; color: #F3E6C8; border-radius: 18px; padding: 20px 24px 16px; box-shadow: 0 40px 80px rgba(33,28,21,.35), inset 0 1px 0 rgba(255,255,255,.06); }
.home-1a .bhead { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; font: 500 11px/1 var(--mono); letter-spacing: 2.4px; }
.home-1a .btitle { color: #D3B88C; display: flex; align-items: center; gap: 10px; }
.home-1a .btitle i { width: 7px; height: 7px; border-radius: 50%; background: #C9A867; box-shadow: 0 0 10px rgba(201,168,103,.8); display: block; }
.home-1a .bclock { color: #8a7c63; letter-spacing: 1.4px; }
.home-1a .bcols, .home-1a .brow { display: grid; grid-template-columns: 55px 22px 55px 74px 74px minmax(0, 1fr); align-items: center; column-gap: 12px; }
.home-1a .bcols { font: 500 10px/1 var(--mono); letter-spacing: 1.6px; color: #6d6252; padding-bottom: 8px; border-bottom: 1px solid #2a2219; margin-bottom: 8px; }
.home-1a .bcols .c-prog { text-align: right; }
.home-1a .brow { padding-top: 8px; padding-bottom: 8px; border-bottom: 1px solid #221c14; color: inherit; text-decoration: none; border-radius: 6px; transition: background .15s; }
.home-1a .brow:last-child { border-bottom: 0; }
.home-1a a.brow:hover { background: rgba(243,230,200,.04); }
.home-1a a.brow:focus-visible { outline: 2px solid #C9A867; outline-offset: 2px; }
.home-1a .brow.sk { height: 41px; background: linear-gradient(90deg, #1d1810, #241d14, #1d1810); background-size: 200% 100%; animation: home1a-sk 1.4s linear infinite; }
@keyframes home1a-sk { to { background-position: -200% 0; } }
.home-1a .flap { display: flex; gap: 2px; }
.home-1a .flap b { position: relative; width: 17px; height: 25px; border-radius: 3px; background: linear-gradient(180deg, #2a2219 0 50%, #231c14 50% 100%); display: flex; align-items: center; justify-content: center; font: 500 15px/1 var(--mono); color: #F3E6C8; box-shadow: inset 0 -1px 0 rgba(0,0,0,.4); }
.home-1a .flap b::after { content: ""; position: absolute; left: 0; right: 0; top: 50%; height: 1px; background: rgba(0,0,0,.55); }
.home-1a .flap.g b { color: #E4C98F; }
.home-1a .flap.d b { color: #B9D49A; }
.home-1a .arrow { width: 16px; height: 1px; background: #6d6252; position: relative; }
.home-1a .arrow::after { content: ""; position: absolute; right: 0; top: -3px; width: 6px; height: 6px; border-top: 1px solid #6d6252; border-right: 1px solid #6d6252; transform: rotate(45deg); }
.home-1a .bprog { font: 500 11px var(--mono); color: #a89a80; letter-spacing: .6px; text-align: right; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.home-1a .bfoot { display: flex; justify-content: space-between; gap: 12px; margin-top: 12px; font: 500 10px var(--mono); color: #6d6252; letter-spacing: 1px; }
.home-1a .bfoot a { color: #C9A867; text-decoration: none; white-space: nowrap; }
.home-1a .bfoot a:hover { color: #E4C98F; }
@media (prefers-reduced-motion: reduce) { .home-1a .brow.sk { animation: none; } }

/* ── garimpo/curadoria/alerta/economia ─────────────────────────────────── */
.home-1a #como .wrap.center { text-align: left; }
.home-1a #como h2 { max-width: 24ch; }
.home-1a .stage { background: transparent; border: 0; border-top: 1px solid var(--ink); border-radius: 0; padding: 28px 0 0; margin-top: 32px; box-shadow: none; min-height: 0; }
.home-1a .fn-head { font: 500 11px/1.3 var(--mono); letter-spacing: 1.6px; text-transform: uppercase; color: var(--ink-mute); }
.home-1a .fn-head b { color: var(--accent-ink); font-weight: 500; }
.home-1a .fn-economia[data-on="1"] { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); column-gap: 56px; row-gap: 0; align-items: end; }
.home-1a .fn-economia .fn-head { grid-column: 1 / -1; margin-bottom: 14px; }
.home-1a .fn-economia .fn-big { grid-column: 1; grid-row: 2; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding-bottom: 0; border: 0; }
.home-1a .fn-economia .fn-big b { font: 500 clamp(72px, 10vw, 128px)/.9 var(--serif); letter-spacing: -0.03em; color: var(--ink); }
.home-1a .fn-economia .fn-big span { font-size: 15px; line-height: 1.6; color: var(--text); max-width: 46ch; }
.home-1a .fn-economia .fn-progs { grid-column: 2; grid-row: 2; margin-top: 0; padding-top: 0; border-top: 0; gap: 0; }
.home-1a .fn-progs .fn-row { grid-template-columns: 112px 1fr 72px; gap: 16px; padding-top: 8px; padding-bottom: 8px; border-bottom: 1px solid var(--line); }
.home-1a .fn-lab { font-size: 14px; }
.home-1a .fn-track { height: 6px; background: var(--panel); }
.home-1a .fn-n { font-size: 14px; }
.home-1a .fn-economia .fn-grid { grid-column: 1 / -1; grid-row: 3; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin-top: 40px; border-top: 1px solid var(--ink); background: none; }
.home-1a .fn-economia .fn-grid > div { background: none; border-radius: 0; padding: 16px 16px 0 0; display: flex; flex-direction: column; gap: 28px; }
.home-1a .fn-economia .fn-grid > div + div { padding-left: 16px; border-left: 1px solid var(--line); }
.home-1a .fn-economia .fn-grid b { font: 500 clamp(36px, 4vw, 52px)/1 var(--serif); letter-spacing: -0.02em; }
.home-1a .fn-economia .fn-grid span { font-size: 13px; color: var(--text); }
.home-1a .fn-economia .fn-note { grid-column: 1 / -1; grid-row: 4; margin-top: 20px; }
.home-1a .tabs { counter-reset: etapa; margin-top: 56px; gap: 0; border-top: 1px solid var(--line); }
.home-1a .tab { counter-increment: etapa; border-top: 0; padding: 24px 24px 0 0; }
.home-1a .tab + .tab { padding-left: 24px; border-left: 1px solid var(--line); }
.home-1a .tab::before { content: counter(etapa, decimal-leading-zero); display: block; font: 500 clamp(56px, 7vw, 92px)/.85 var(--serif); color: transparent; -webkit-text-stroke: 1px var(--accent); letter-spacing: -0.03em; margin-bottom: 12px; }
.home-1a .tab[data-on="1"]::before { color: var(--accent); -webkit-text-stroke: 0; }
.home-1a .tab h4 { font-size: 16px; color: var(--ink); }
.home-1a .tab p { font-size: 14px; line-height: 1.6; }
.home-1a .tab[data-on="1"] h4 { color: var(--ink); }

/* ── ofertas: cards de rota ─────────────────────────────────────────────── */
.home-1a .band-accent { background: var(--panel); }
.home-1a .deal-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.home-1a .deal-card { position: relative; display: flex; flex-direction: column; gap: 16px; background: var(--panel-soft); border: 1px solid var(--line); border-radius: 20px; padding: 20px 20px 16px; }
.home-1a .deal-card .off { position: absolute; top: 16px; right: 16px; font: 600 12px var(--mono); padding: 4px 8px; border-radius: 999px; background: var(--accent-soft); color: var(--accent-ink); }
.home-1a .deal-top { margin-bottom: 0; padding-right: 64px; }
.home-1a .deal-top .cia-name { font-size: 13px; font-weight: 600; color: var(--ink); }
.home-1a .deal-route { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 16px; font-weight: 400; }
.home-1a .deal-route .iata { font: 500 clamp(36px, 3.4vw, 44px)/1 var(--serif); letter-spacing: -0.01em; color: var(--ink); }
.home-1a .deal-route .path { position: relative; height: 1px; background: repeating-linear-gradient(90deg, #c9bda6 0 5px, transparent 5px 9px); }
.home-1a .deal-route .path::after { content: ""; position: absolute; left: 50%; top: -4px; width: 8px; height: 8px; border-radius: 50%; background: var(--accent); transform: translateX(-50%); box-shadow: 0 0 0 4px var(--panel-soft); }
.home-1a .deal-bot { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; padding-top: 16px; border-top: 1px dashed var(--line); }
.home-1a .deal-meta { margin-top: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 2px; font-size: 13px; color: var(--text); text-align: left; }
.home-1a .deal-cls { margin-left: 0; font: 500 10px var(--mono); letter-spacing: 1.6px; text-transform: uppercase; color: var(--ink-mute); }
.home-1a .deal-cash { text-align: right; white-space: nowrap; }
.home-1a .deal-cash s { display: block; font-size: 12px; color: var(--ink-mute); }
.home-1a .deal-cash b { font-size: 20px; font-weight: 600; letter-spacing: -0.02em; color: var(--ink); }

/* ── programas: faixa escura corrida ───────────────────────────────────── */
.home-1a .band-programs { background: var(--ink); padding-top: 24px; padding-bottom: 28px; overflow: hidden; }
.home-1a .band-programs .wrap { max-width: none; padding: 0; }
.home-1a .band-programs .logos-lead { font: 500 10px var(--mono); letter-spacing: 1.8px; text-transform: uppercase; color: #a6977c; text-align: center; margin: 0 0 16px; }
.home-1a .band-programs .logos { display: flex; flex-wrap: nowrap; justify-content: flex-start; width: max-content; gap: 0; animation: home1a-faixa 48s linear infinite; }
.home-1a .band-programs .logos:hover { animation-play-state: paused; }
.home-1a .logos-run { display: flex; flex: none; align-items: center; }
.home-1a .band-programs .logos span { font: 500 clamp(22px, 2.4vw, 30px)/1.3 var(--serif); color: #F3E6C8; box-shadow: none !important; padding: 0; opacity: 1; display: inline-flex; align-items: center; white-space: nowrap; }
.home-1a .band-programs .logos span::after { content: ""; width: 7px; height: 7px; margin: 0 32px; transform: rotate(45deg); background: var(--accent); display: block; }
@keyframes home1a-faixa { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .home-1a .band-programs .logos { animation: none; width: auto; flex-wrap: wrap; justify-content: center; padding: 0 var(--pad); }
  .home-1a .logos-run { flex-wrap: wrap; justify-content: center; }
  .home-1a .logos-run[aria-hidden] { display: none; }
}

/* ── números das ofertas abertas ────────────────────────────────────────── */
.home-1a .stat-grid .card-soft { background: none; border-radius: 0; border-top: 1px solid var(--ink); padding: 16px 0 0; }
.home-1a .stat-num { font: 500 clamp(44px, 5vw, 64px)/1 var(--serif); letter-spacing: -0.02em; }
.home-1a .stat-cap { font-size: 14px; color: var(--text); margin-top: 12px; }
.home-1a .donut-card { align-items: center; }

/* ── confiança ──────────────────────────────────────────────────────────── */
.home-1a .deep-panel { text-align: left; border-radius: 28px; padding: clamp(40px, 5vw, 56px); }
.home-1a .deep-panel .deep-deco { display: none; }
.home-1a .deep-panel::after { content: ""; position: absolute; right: -120px; top: -120px; width: 380px; height: 380px; border-radius: 50%; border: 1px solid rgba(211,184,140,.25); box-shadow: 0 0 0 40px rgba(211,184,140,.05), 0 0 0 80px rgba(211,184,140,.03); pointer-events: none; }
.home-1a .deep-panel h2 { max-width: 14ch; position: relative; z-index: 1; }
.home-1a .deep-panel h2 em { color: #D3B88C; }
.home-1a .deep-panel p { max-width: 52ch; margin-left: 0; color: #d9cdb6; font-size: 16px; line-height: 1.7; position: relative; z-index: 1; }
.home-1a .deep-panel .deep-cta { position: relative; z-index: 1; }

/* ── cobertura: grade de linhas ─────────────────────────────────────────── */
.home-1a .grid-6 { counter-reset: cob; gap: 0; border-top: 1px solid var(--ink); }
.home-1a .card-6 { counter-increment: cob; background: none; border-radius: 0; padding: 24px 24px 24px 0; border-bottom: 1px solid var(--line); }
.home-1a .card-6:not(:nth-child(3n+1)) { padding-left: 24px; border-left: 1px solid var(--line); }
.home-1a .card-6 .ico-card { display: none; }
.home-1a .card-6::before { content: counter(cob, decimal-leading-zero); display: block; font: 500 10px var(--mono); letter-spacing: 1.4px; color: var(--accent); margin-bottom: 12px; }
.home-1a .card-6 h3 { font-size: 16px; }
.home-1a .card-6 p { font-size: 14px; line-height: 1.6; }

/* ── FAQ, app, rodapé ───────────────────────────────────────────────────── */
.home-1a .faq-item { border-color: var(--line); }
.home-1a .faq > div:last-child { border-top: 1px solid var(--ink); }
.home-1a .news { background: var(--panel-soft); border: 1px solid var(--line); border-radius: 28px; }
.home-1a .news h3 { font: 500 clamp(30px, 3.4vw, 44px)/1.05 var(--serif); letter-spacing: -0.02em; }
.home-1a .news-form button { background: var(--ink); color: var(--bg); }
.home-1a .footer { margin-top: var(--gap-sec); }
.home-1a .footer .wrap { max-width: none; padding: 0; }
.home-1a .footer-box { background: var(--ink); border: 0; border-radius: 0; color: #cfc3ad; padding: 56px max(var(--pad), calc((100% - var(--maxw)) / 2 + var(--pad))) 0; overflow: hidden; }
.home-1a .footer-box .brand b { color: #F5F1E9; }
.home-1a .footer-legal { color: #a6977c; }
.home-1a .footer-col h5 { font: 500 11px var(--mono); letter-spacing: 1.6px; text-transform: uppercase; color: #8a7c63; }
.home-1a .footer-col a { color: #e8dcc4; }
.home-1a .footer-col a:hover { color: #fff; }
.home-1a .socials span { color: #cfc3ad; }
.home-1a .footer-box .rainbow { display: none; }
.home-1a .footer-box::after { content: "FlyDeals"; display: block; font: 500 clamp(80px, 13vw, 150px)/.8 var(--serif); letter-spacing: -0.04em; color: #2e271d; margin-top: 40px; margin-bottom: -16px; white-space: nowrap; }

/* painel de 520px: gap e espaçamento menores pro "milhas · programa" caber inteiro (LATAM Pass, AAdvantage) */
.home-1a .bcols, .home-1a .brow { column-gap: 10px; }
.home-1a .bprog { letter-spacing: .1px; }

/* ── celular e tablet ───────────────────────────────────────────────────── */
@media (max-width: 1000px) {
  .home-1a .hero-grid { grid-template-columns: 1fr; }
  .home-1a .hero h1 { max-width: 14ch; }
  .home-1a .deal-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .home-1a .hero-board { margin-top: 32px; }
  .home-1a .board { padding: 16px 14px 12px; }
  .home-1a .bcols .c-cls, .home-1a .flap.c-cls, .home-1a .bprog .c-prog, .home-1a .bcols .c-prog { display: none; }
  .home-1a .bcols, .home-1a .brow { grid-template-columns: 46px 18px 46px 62px minmax(0, 1fr); column-gap: 8px; }
  .home-1a .flap b { width: 14px; height: 21px; font-size: 13px; }
  .home-1a .bfoot span { display: none; }
  .home-1a .fn-economia[data-on="1"] { grid-template-columns: 1fr; }
  .home-1a .fn-economia .fn-progs { grid-column: 1; grid-row: 3; margin-top: 24px; }
  .home-1a .fn-economia .fn-grid { grid-row: 4; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-1a .fn-economia .fn-grid > div:nth-child(3) { padding-left: 0; border-left: 0; }
  .home-1a .fn-economia .fn-note { grid-row: 5; }
  .home-1a .tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-1a .tab:nth-child(3) { padding-left: 0; border-left: 0; }
  .home-1a .deal-grid { grid-template-columns: 1fr; }
  .home-1a .card-6, .home-1a .card-6:not(:nth-child(3n+1)) { padding-left: 0; border-left: 0; }
}

/* sem dado ao vivo o painel some: o hero vira uma coluna em vez de deixar um buraco à direita */
.home-1a .hero-grid:has(.hero-board[hidden]) { grid-template-columns: 1fr; }

/* ── ajuste tipográfico (04/10) ─────────────────────────────────────────── */
/* Cormorant usa algarismos de texto (3 e 9 descem, 1 vira "I"): em número de dado eles dançam na linha */
.home-1a h1, .home-1a h2, .home-1a .fn-big b, .home-1a .fn-grid b, .home-1a .stat-num,
.home-1a .deal-route .iata, .home-1a .tab::before, .home-1a .card-6::before { font-variant-numeric: lining-nums tabular-nums !important; font-feature-settings: "lnum" 1, "tnum" 1 !important; }
/* promessa em 3 linhas: coluna de texto mais larga, painel um pouco mais estreito */
@media (min-width: 1001px) {
  .home-1a .hero-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 520px); gap: clamp(32px, 3.6vw, 48px); }
}
.home-1a .hero h1 { font-size: clamp(46px, 5.2vw, 66px); line-height: 1; }
/* itálico no peso 600: o acento circunflexo desenha mais baixo e não fica solto em tamanho grande */
.home-1a h1 em, .home-1a .deep-panel h2 em { font-weight: 600; }
