/* ── LAMMER SOLUTION — Shared CSS ── */
@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@400;600;700;800;900&family=Barlow:wght@300;400;500;600&display=swap');

:root {
  /* Paleta corporativa clara — baseada na identidade Lammer Solution */
  --blue-dark:  #0d47a1;
  --blue-mid:   #1565c0;
  --blue:       #1976d2;
  --blue-light: #42a5f5;
  --blue-pale:  #dceefb;
  --blue-pale2: #eaf4fd;
  --amber:      #f5a623;
  --amber-dark: #d4891a;
  --white:      #ffffff;
  --bg:         #e6edf5;
  --bg-card:    #f4f8fc;
  --bg-section: #eef4f9;
  --gray:       #5a6a80;
  --gray-light: #b8cad8;
  --text:       #1a2a3a;
  --text-soft:  #4a5e72;
  --dark:       #0d1b2a;
  --border:     rgba(21, 101, 192, .18);
}

* { margin:0; padding:0; box-sizing:border-box }
html { scroll-behavior:smooth; scroll-padding-top:72px }
body {
  font-family:'Barlow',sans-serif;
  background:var(--bg);
  color:var(--text);
  overflow-x:hidden;
}

/* ══════════════════════════════════════
   NAV INLINE (#lmr-nav-bar) — azul escuro
   ══════════════════════════════════════ */
#lmr-nav-bar {
  background: linear-gradient(135deg, #0d2b5e 0%, #1252a3 60%, #1565c0 100%) !important;
  border-bottom: 2px solid rgba(66,165,245,.35) !important;
  box-shadow: 0 4px 24px rgba(10,30,80,.45), 0 1px 0 rgba(255,255,255,.06) inset !important;
  backdrop-filter: blur(16px) !important;
}
#lmr-nav-bar .lmr-logo-text { color: #fff !important; }
#lmr-nav-bar .lmr-logo-text span { color: var(--blue-light) !important; }
#lmr-nav-bar .lmr-logo img { filter: none !important; }
#lmr-nav-bar .lmr-links > li > a {
  color: rgba(220,235,255,.82) !important;
  font-size: .95rem !important;
}
#lmr-nav-bar .lmr-links > li > a:hover,
#lmr-nav-bar .lmr-links > li.lmr-active > a {
  color: #fff !important;
  background: rgba(255,255,255,.12) !important;
}
#lmr-nav-bar .lmr-drop {
  background: #0e3070 !important;
  border: 1px solid rgba(66,165,245,.25) !important;
  border-top: 2px solid var(--blue-light) !important;
  box-shadow: 0 16px 40px rgba(10,30,80,.55) !important;
}
#lmr-nav-bar .lmr-drop li a { color: rgba(210,230,255,.78) !important; }
#lmr-nav-bar .lmr-drop li a:hover {
  background: rgba(255,255,255,.1) !important;
  color: #fff !important;
}
#lmr-hamburger span { background: #fff !important; }

@media(max-width:768px) {
  #lmr-nav-bar .lmr-links {
    background: #0d2b5e !important;
    border-top: 2px solid rgba(66,165,245,.3) !important;
  }
  #lmr-nav-bar .lmr-links > li > a {
    font-size: 1.05rem !important;
    padding: .9rem 1.5rem !important;
    color: rgba(220,235,255,.88) !important;
  }
  #lmr-nav-bar .lmr-drop { background: rgba(255,255,255,.06) !important; }
  #lmr-nav-bar .lmr-drop li a {
    font-size: 1rem !important;
    color: rgba(200,220,255,.75) !important;
    padding-left: 2rem !important;
  }
}

/* ══════════════════════════════════════
   NAV CLASSE (.nav) — acesso / downloads
   ══════════════════════════════════════ */
nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  background:rgba(255,255,255,.98);
  backdrop-filter:blur(24px) saturate(180%);
  border-bottom:2px solid var(--blue-mid);
  padding:0 3vw; height:72px;
  display:flex; align-items:center; justify-content:space-between;
  min-width:0;
  box-shadow:0 2px 18px rgba(21,101,192,.13);
}
.nav-logo { display:flex; align-items:center; gap:.75rem; text-decoration:none; flex-shrink:0; }
.nav-logo img { height:42px; width:auto; object-fit:contain; }
.nav-logo-text {
  font-family:'Barlow Condensed',sans-serif;
  font-weight:900; font-size:1.5rem; color:var(--blue-mid);
  letter-spacing:.06em; text-transform:uppercase;
}
.nav-logo-text span { color:var(--blue-light) }
.nav-links { display:flex; gap:.2rem; list-style:none; align-items:center }
.nav-links > li { position:relative }
.nav-links > li > a {
  display:flex; align-items:center; gap:.35rem;
  color:var(--text-soft); text-decoration:none;
  font-family:'Barlow Condensed',sans-serif;
  font-size:.95rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
  padding:.5rem .9rem; border-radius:6px; transition:all .22s; white-space:nowrap;
  position:relative;
}
.nav-links > li > a::after {
  content:''; position:absolute; bottom:4px; left:50%; right:50%;
  height:2px; background:var(--blue-mid); border-radius:2px;
  transition:left .22s ease, right .22s ease; opacity:0;
}
.nav-links > li > a:hover::after,
.nav-links > li.active > a::after { left:12px; right:12px; opacity:1; }
.nav-links > li > a:hover,
.nav-links > li.active > a { color:var(--blue-mid); background:var(--blue-pale); }
.nav-links > li > a svg { width:12px; height:12px; fill:currentColor; transition:transform .22s; margin-top:1px; opacity:.7 }
.nav-links > li:hover > a svg { transform:rotate(180deg); opacity:1 }
.nav-sub {
  position:absolute; top:calc(100% + 8px); left:50%;
  background:#fff; border:1px solid var(--border); border-top:2px solid var(--blue-mid);
  border-radius:12px; padding:.5rem; min-width:210px;
  opacity:0; visibility:hidden; pointer-events:none;
  transform:translateX(-50%) translateY(-8px) scale(.97);
  transition:all .22s cubic-bezier(.175,.885,.32,1.1);
  box-shadow:0 12px 36px rgba(21,101,192,.15);
}
.nav-links > li:hover .nav-sub {
  opacity:1; visibility:visible; pointer-events:all;
  transform:translateX(-50%) translateY(0) scale(1);
}
.nav-sub a {
  display:flex; align-items:center; gap:.75rem;
  padding:.6rem .9rem; border-radius:8px;
  text-decoration:none; color:var(--text-soft);
  font-size:.9rem; font-weight:500; transition:all .15s; white-space:nowrap; letter-spacing:.02em;
}
.nav-sub a:hover { background:var(--blue-pale); color:var(--blue-mid); padding-left:1.1rem; }
.nav-sub a svg { width:15px; height:15px; fill:var(--blue-mid); flex-shrink:0; opacity:.8 }
.nav-sub a:hover svg { opacity:1 }
.nav-sub-divider { height:1px; background:var(--border); margin:.4rem .5rem }
.nav-btn {
  background:linear-gradient(135deg, var(--blue-mid), var(--blue-dark)) !important;
  color:#fff !important; padding:.45rem 1.2rem !important; border-radius:6px !important;
  font-family:'Barlow Condensed',sans-serif !important; font-weight:800 !important;
  font-size:.92rem !important; letter-spacing:.08em !important; text-transform:uppercase !important;
  box-shadow:0 4px 16px rgba(21,101,192,.25) !important; transition:all .22s !important;
}
.nav-btn:hover {
  background:linear-gradient(135deg, var(--blue), var(--blue-mid)) !important;
  box-shadow:0 6px 24px rgba(21,101,192,.4) !important; transform:translateY(-1px) !important;
}
.nav-btn::after { display:none !important }

/* ── STRIP ── */
.strip {
  background:var(--blue-mid); padding:.9rem 5vw;
  display:flex; align-items:center; justify-content:center; gap:3rem; flex-wrap:wrap;
}
.strip-item {
  display:flex; align-items:center; gap:.6rem;
  font-family:'Barlow Condensed',sans-serif; font-weight:700;
  font-size:1.05rem; letter-spacing:.05em; text-transform:uppercase;
  color:rgba(255,255,255,.95);
}
.strip-item svg { width:18px; height:18px; fill:var(--amber); flex-shrink:0 }

/* ── PAGE HERO ── */
.page-hero {
  padding:1rem 5vw 1.5rem;
  background:linear-gradient(135deg, var(--blue-dark) 0%, var(--blue-mid) 60%, #1e7fcf 100%);
  border-bottom:3px solid var(--blue-light);
  position:relative; overflow:hidden;
}
.page-hero::before {
  content:''; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size:48px 48px;
}
.page-hero-tag {
  display:inline-block; font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:.9rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--amber); margin-bottom:.75rem; position:relative;
}
.page-hero h1 {
  font-family:'Barlow Condensed',sans-serif; font-weight:900;
  font-size:clamp(2.5rem,5vw,4rem); line-height:1; letter-spacing:.02em; text-transform:uppercase;
  margin-bottom:.75rem; color:#fff; position:relative;
}
.page-hero h1 em { font-style:normal; color:var(--blue-light) }
.page-hero p { font-size:1.1rem; line-height:1.7; color:rgba(255,255,255,.78); max-width:560px; position:relative; }

/* ── SECTIONS ── */
section { padding:4rem 5vw }
.section-tag {
  display:inline-block; font-family:'Barlow Condensed',sans-serif;
  font-weight:700; font-size:.9rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--blue-mid); margin-bottom:.75rem;
}
.section-title {
  font-family:'Barlow Condensed',sans-serif; font-weight:900;
  font-size:clamp(2rem,4.5vw,3.2rem); line-height:1.05; letter-spacing:.02em; text-transform:uppercase;
  margin-bottom:.75rem; color:var(--text);
}
.section-title em { font-style:normal; color:var(--blue-mid) }
.section-sub { font-size:1.05rem; line-height:1.7; color:var(--text-soft); max-width:560px }

/* ── BUTTONS ── */
.btn-amber {
  background:var(--amber); color:var(--dark);
  padding:.85rem 2.2rem; border-radius:5px;
  font-family:'Barlow Condensed',sans-serif; font-weight:800;
  font-size:1.05rem; letter-spacing:.06em; text-transform:uppercase;
  text-decoration:none; transition:all .2s; border:2px solid var(--amber);
  display:inline-flex; align-items:center; gap:.5rem;
}
.btn-amber:hover { background:var(--amber-dark); border-color:var(--amber-dark); transform:translateY(-2px) }
.btn-outline {
  background:transparent; color:#fff;
  padding:.85rem 2.2rem; border-radius:5px;
  font-family:'Barlow Condensed',sans-serif; font-weight:800;
  font-size:1.05rem; letter-spacing:.06em; text-transform:uppercase;
  text-decoration:none; transition:all .2s; border:2px solid rgba(255,255,255,.55);
  display:inline-flex; align-items:center; gap:.5rem;
}
.btn-outline:hover { border-color:#fff; background:rgba(255,255,255,.12); transform:translateY(-2px) }

/* ── CARDS tema claro ── */
.produto-card { background:var(--bg-card) !important; border-color:var(--border) !important; }
.produto-card:hover { border-color:rgba(66,165,245,.5) !important; box-shadow:0 12px 36px rgba(21,101,192,.1) !important; }
.produto-card-header { border-bottom-color:var(--border) !important; }
.produto-features li { color:var(--text-soft) !important; }
.produto-name { color:var(--text) !important; }
.produto-tagline { color:var(--gray) !important; }

.dif-card { background:var(--bg-card) !important; border-color:var(--border) !important; }
.dif-card:hover { border-color:rgba(66,165,245,.5) !important; background:var(--blue-pale) !important; }
.dif-icon { background:var(--blue-pale) !important; }
.dif-icon svg { fill:var(--blue-mid) !important; }
.dif-title { color:var(--text) !important; }
.dif-desc { color:var(--text-soft) !important; }

.depo-card { background:var(--bg-card) !important; border-color:var(--border) !important; }
.depo-card:hover { border-color:rgba(66,165,245,.5) !important; }
.depo-text { color:var(--text-soft) !important; }
.depo-name { color:var(--text) !important; }

.acesso-card { background:var(--bg-card) !important; border-color:var(--border) !important; }
.acesso-card.gold { border-color:rgba(245,166,35,.25) !important; }
.acesso-card:hover { border-color:rgba(66,165,245,.5) !important; box-shadow:0 12px 36px rgba(21,101,192,.1) !important; }
.acesso-card-header { border-bottom-color:var(--border) !important; }
.acesso-card.gold .acesso-card-header { border-bottom-color:rgba(245,166,35,.2) !important; }
.acesso-card-title { color:var(--text) !important; }
.acesso-card-sub { color:var(--gray) !important; }

/* Links dentro de acesso */
.acesso-link { background:var(--bg-section) !important; border-color:var(--border) !important; }
.acesso-link:hover { background:var(--blue-pale) !important; border-color:var(--blue-light) !important; }
.acesso-link-label { color:var(--text) !important; }
.acesso-link-desc { color:var(--text-soft) !important; }

/* Download cards */
.dl-card { background:var(--bg-card) !important; border-color:var(--border) !important; }
.dl-card:hover { border-color:rgba(66,165,245,.5) !important; box-shadow:0 12px 36px rgba(21,101,192,.1) !important; }
.dl-title { color:var(--text) !important; }
.dl-desc { color:var(--text-soft) !important; }
.dl-meta { color:var(--gray) !important; }

/* Timeline */
.tl-year { background:var(--blue-pale) !important; border-color:var(--border) !important; color:var(--blue-mid) !important; }
.tl-item.now .tl-year { background:var(--amber) !important; border-color:var(--amber) !important; color:var(--dark) !important; }
.tl-desc { color:var(--text-soft) !important; }
.tl-item::before { background:var(--border) !important; }

/* Quem somos */
.quem-text p { color:var(--text-soft) !important; }
.quem-text strong { color:var(--blue-mid) !important; }
.qs-stat small { color:var(--gray) !important; }

/* Diferenciais e depoimentos bg */
.diferenciais { background:var(--bg-section) !important; }
.depo-bg { background:var(--bg-section) !important; }

/* CTA section — mantém escuro */
.cta-section {
  background:linear-gradient(135deg, var(--blue-dark) 0%, var(--blue-mid) 100%) !important;
  border-top:none !important;
}
.cta-section .section-tag { color:var(--amber) !important; }
.cta-section .section-title { color:#fff !important; }
.cta-section .section-title em { color:var(--blue-light) !important; }
.cta-section .section-sub { color:rgba(255,255,255,.75) !important; }

/* Suporte banner (tem imagem de fundo) — mantém texto branco */
.suporte-title { color:#fff }
.suporte-sub { color:rgba(255,255,255,.78) }
.suporte-stat-label { color:rgba(255,255,255,.65) }

/* ── FOOTER ── */
footer {
  padding:2.5rem 5vw;
  background:var(--blue-dark);
  border-top:3px solid var(--blue-mid);
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1.5rem;
}
.footer-brand { display:flex; align-items:center; gap:.65rem }
.footer-brand img { height:28px; opacity:.85; filter:brightness(10) }
.footer-brand-name { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:1rem; color:rgba(255,255,255,.55) }
.footer-contact { display:flex; flex-direction:column; gap:.3rem }
.footer-contact a {
  font-size:.88rem; color:rgba(255,255,255,.55); text-decoration:none;
  transition:color .2s; display:flex; align-items:center; gap:.4rem;
}
.footer-contact a svg { width:14px; height:14px; fill:var(--blue-light) }
.footer-contact a:hover { color:var(--blue-light) }
.footer-info { font-size:.82rem; color:rgba(255,255,255,.38); text-align:right; line-height:1.7 }
.footer-nav { display:flex; gap:1.5rem; flex-wrap:wrap }
.footer-nav a { font-size:.82rem; color:rgba(255,255,255,.45); text-decoration:none; transition:color .2s }
.footer-nav a:hover { color:var(--blue-light) }

/* ── WA FLOAT ── */
.wa-float {
  position:fixed; bottom:1.75rem; right:1.75rem; z-index:300;
  width:56px; height:56px; border-radius:50%; background:#25D366;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 24px rgba(37,211,102,.45); text-decoration:none; transition:all .3s;
}
.wa-float:hover { transform:scale(1.1); box-shadow:0 8px 36px rgba(37,211,102,.55) }
.wa-float svg { width:30px; height:30px; fill:white }

/* ── REVEAL ── */
.reveal { opacity:1; transform:none }

/* ══════════════════════════════════════
   RESPONSIVE — FONTES MAIORES NO MOBILE
   ══════════════════════════════════════ */
@media(max-width:900px) {
  .quem-grid { grid-template-columns:1fr }
  .suporte-banner { flex-direction:column }
}

@media(max-width:768px) {
  .nav-links { display:none }
  nav { height:64px; padding:0 4vw }
  .nav-logo-text { font-size:1.25rem }
  .nav-logo img { height:36px }

  .page-hero { padding:1rem 5vw 1.5rem }
  .page-hero h1 { font-size:clamp(2rem,8vw,3rem) }
  .page-hero p { font-size:1.05rem }
  .page-hero-tag { font-size:.95rem }

  section { padding:3rem 5vw }
  .section-title { font-size:clamp(1.9rem,7vw,2.5rem) }
  .section-sub { font-size:1.05rem }
  .section-tag { font-size:.95rem }

  .strip { gap:1.5rem; padding:.8rem 5vw }
  .strip-item { font-size:1.05rem }

  footer { flex-direction:column; align-items:flex-start }
  .footer-info { text-align:left }
  .footer-contact a { font-size:.95rem }
  .footer-nav a { font-size:.9rem }

  .btn-amber, .btn-outline { font-size:1rem; padding:.8rem 1.8rem }

  .produto-features li { font-size:.95rem !important }
  .dif-desc { font-size:.95rem !important }
  .depo-text { font-size:.95rem !important }
}

@media(max-width:480px) {
  .page-hero { padding:1rem 5vw 1.5rem }
  .page-hero h1 { font-size:clamp(1.9rem,9.5vw,2.6rem) }
  .page-hero p { font-size:1.08rem; line-height:1.65 }
  .page-hero-tag { font-size:1rem; letter-spacing:.1em }

  .section-title { font-size:clamp(1.8rem,9vw,2.3rem) }
  .section-sub { font-size:1.08rem; line-height:1.7 }
  .section-tag { font-size:1rem; letter-spacing:.1em }

  .strip { flex-direction:column; gap:.9rem; text-align:center }
  .strip-item { font-size:1.08rem }

  .nav-logo-text { font-size:1.15rem }
  .nav-logo img { height:32px }

  .btn-amber, .btn-outline {
    font-size:1.08rem; padding:.9rem 1.7rem; width:100%; justify-content:center;
  }

  .produto-name { font-size:1.15rem }
  .produto-features li { font-size:1rem !important }
  .dif-title { font-size:1.15rem !important }
  .dif-desc { font-size:1rem !important }
  .depo-text { font-size:1rem !important }
  .depo-name { font-size:1.05rem }
  .acesso-card-title { font-size:1.3rem }
  .acesso-card-sub { font-size:.95rem !important }

  .footer-brand-name { font-size:1rem }
  .footer-contact a { font-size:1rem }
  .footer-nav a { font-size:.95rem }
  .footer-info { font-size:.88rem }

  .suporte-stat-num { font-size:2.5rem }
  .suporte-stat-label { font-size:.85rem }
}
