/*
Theme Name:   Embarque Oficial
Theme URI:    https://embarqueoficial.com.br
Description:  Plataforma digital HTML5-first da Embarque Oficial — aviação executiva global. Tema customizado sem page builder: mega menu nativo, homepage com formulário de reservas, rodapé nativo, CPTs (aeronaves, destinos, serviços), camada de integração com o sistema Embarque Oficial, SEO/GEO, Schema.org e hreflang.
Author:       Embarque Oficial
Version:      1.1.1
Requires PHP: 8.0
Requires at least: 6.0
Text Domain:  embarque-oficial
License:      Proprietary
*/

/* ============================================================
   DESIGN SYSTEM — TOKENS GLOBAIS (extraídos do padrão validado
   do site: homepage, mega menu, rodapé e 151 páginas)
   ============================================================ */
:root {
  /* Cores */
  --eo-black:      #0a0a0a;
  --eo-ink:        #0b1420;
  --eo-panel:      #10161f;
  --eo-line:       #1e2a3a;
  --eo-cyan:       #00b4d8;
  --eo-blue:       #0077ff;
  --eo-gold:       #d3a94f;
  --eo-white:      #ffffff;
  --eo-grey-bg:    #f4f4f4;
  --eo-card-line:  #e8e8e8;
  --eo-txt:        #dbe6f1;
  --eo-txt-dim:    #7d93a9;

  /* Tipografia */
  --eo-font-base:  'Open Sans', system-ui, -apple-system, sans-serif;
  --eo-font-alt:   'Raleway', var(--eo-font-base);

  /* Espaçamento / raio / sombra */
  --eo-radius-card: 16px;
  --eo-radius-btn:  50px;
  --eo-container:   1200px;
  --eo-shadow:      0 12px 40px rgba(0,0,0,.25);

  /* Breakpoints (referência): 480 / 768 / 1024 / 1280 */
}

/* Base mínima — cada módulo (menu, homepage, rodapé, páginas
   importadas) carrega seu próprio CSS desacoplado. */
html { scroll-behavior: smooth; }
body { margin: 0; font-family: var(--eo-font-base); background: var(--eo-white); color: #16202b; }
img { max-width: 100%; height: auto; }

.eo-container { max-width: var(--eo-container); margin: 0 auto; padding: 0 24px; }

.eo-btn {
  display: inline-block; background: var(--eo-blue); color: #fff;
  border-radius: var(--eo-radius-btn); padding: 14px 32px;
  font-weight: 700; text-decoration: none; border: 0; cursor: pointer;
  transition: filter .2s ease, transform .2s ease;
}
.eo-btn:hover { filter: brightness(1.1); transform: translateY(-1px); }

.eo-section-label {
  color: var(--eo-cyan); font-size: 13px; letter-spacing: 3px;
  text-transform: uppercase; font-weight: 700;
}

.eo-card {
  background: #fff; border: 1px solid var(--eo-card-line);
  border-top: 4px solid var(--eo-cyan); border-radius: var(--eo-radius-card);
  padding: 28px;
}

/* Conteúdo editorial padrão (single/page sem canvas) */
.eo-entry { max-width: 820px; margin: 0 auto; padding: 56px 24px 96px; line-height: 1.75; }
.eo-entry h1 { font-size: clamp(2rem, 4vw, 2.8rem); font-weight: 800; letter-spacing: -.5px; line-height: 1.15; }
.eo-entry h2 { text-transform: uppercase; font-weight: 800; margin-top: 2.2em; }
.eo-entry a { color: var(--eo-blue); }

/* Acessibilidade */
:focus-visible { outline: 2px solid var(--eo-cyan); outline-offset: 2px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
