/* ============================================================
   PASM.AI GLOBAL STYLES
   Shared across all pages — nav, footer, sticky bar, mobile
   To update sitewide: edit this file only.
   ============================================================ */

/* ── CSS VARIABLES ── */
:root {
  --bg: #080c1a;
  --bg2: #0d1225;
  --accent: #6366f1;
  --accent2: #818cf8;
  --gold: #fbbf24;
  --red: #ef4444;
  --white: #f0f2ff;
  --muted: #64748b;
  --muted2: #94a3b8;
  --border: rgba(99,102,241,0.15);
}

/* ── BASE ── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html, body { overflow-x:hidden; max-width:100%; }
body { background:var(--bg); color:var(--white); font-family:'DM Sans',sans-serif; }

/* ── NAV ── */
nav {
  background:#000;
  border-bottom:1px solid rgba(99,102,241,0.2);
  position:sticky; top:0; z-index:100;
  padding:0 5%;
}
.nav-inner {
  max-width:1200px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  height:270px;
}
.nav-logo img { height:250px; width:auto; display:block; }
.nav-links { display:flex; align-items:center; gap:28px; }
.nav-links a { color:var(--muted2); font-size:0.88rem; font-weight:500; text-decoration:none; transition:color 0.2s; }
.nav-links a:hover { color:var(--white); }
.nav-phone {
  display:flex; align-items:center; gap:8px;
  color:var(--gold); font-size:0.82rem; font-weight:700;
  background:rgba(251,191,36,0.08); border:1px solid rgba(251,191,36,0.2);
  padding:6px 14px; border-radius:50px; text-decoration:none;
  white-space:nowrap;
}
.nav-phone:hover { background:rgba(251,191,36,0.15); }
.nav-cta {
  background:var(--accent); color:#fff;
  padding:10px 22px; border-radius:50px;
  font-size:0.85rem; font-weight:700; text-decoration:none;
  transition:background 0.2s, transform 0.2s;
}
.nav-cta:hover { background:#4f46e5; transform:translateY(-1px); }
.nav-actions { display:flex; align-items:center; gap:12px; }

/* ── HAMBURGER ── */
.ham-btn {
  display:none;
  flex-direction:column; justify-content:center; align-items:center; gap:5px;
  width:40px; height:40px;
  background:none; border:none; cursor:pointer; z-index:200; flex-shrink:0;
}
.ham-btn span { display:block; width:24px; height:2px; background:var(--white); border-radius:2px; transition:all 0.3s; }
.ham-btn.open span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.ham-btn.open span:nth-child(2) { opacity:0; }
.ham-btn.open span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }

/* ── MOBILE DRAWER ── */
.mobile-nav {
  display:none;
  position:fixed; top:0; left:0; right:0; bottom:0;
  background:rgba(0,0,0,0.97); z-index:150;
  flex-direction:column; align-items:center; justify-content:center;
  gap:28px; padding:20px;
}
.mobile-nav.open { display:flex; }
.mobile-nav a { color:var(--white); font-size:1.3rem; font-weight:700; text-decoration:none; font-family:'Syne',sans-serif; }
.mobile-nav a.mobile-cta { background:var(--accent); color:#fff; padding:14px 36px; border-radius:50px; font-size:1rem; margin-top:8px; }
.mobile-nav .mobile-divider { width:100%; height:1px; background:var(--border); margin:8px 0; }
.mobile-nav .mobile-ai-line { color:var(--gold); font-size:0.9rem; font-weight:700; text-align:center; }
.mobile-nav .mobile-ai-label { font-size:0.7rem; color:var(--muted2); font-family:'DM Sans',sans-serif; font-weight:400; letter-spacing:1px; text-transform:uppercase; text-align:center; margin-top:-20px; }
.mobile-nav .mobile-human-line { color:var(--accent2); font-size:0.9rem; font-weight:700; text-align:center; }
.mobile-nav .mobile-human-label { font-size:0.7rem; color:var(--muted2); font-family:'DM Sans',sans-serif; font-weight:400; letter-spacing:1px; text-transform:uppercase; text-align:center; margin-top:-20px; }

/* ── STICKY PHONE BAR ── */
.sticky-phone {
  position:fixed; bottom:0; left:0; right:0; z-index:90;
  background:linear-gradient(90deg,#000,#0d1225);
  border-top:1px solid rgba(251,191,36,0.3);
  padding:12px 5%; display:flex; align-items:center; justify-content:center; gap:20px; flex-wrap:wrap;
}
.sticky-phone-text { font-size:0.82rem; color:var(--muted2); }
.sticky-phone-text strong { color:var(--white); }
.sticky-phone-number { display:flex; align-items:center; gap:8px; color:var(--gold); font-family:'Syne',sans-serif; font-weight:800; font-size:1rem; text-decoration:none; }
.sticky-phone-cta { background:var(--accent); color:#fff; padding:8px 20px; border-radius:50px; font-family:'Syne',sans-serif; font-weight:700; font-size:0.8rem; text-decoration:none; white-space:nowrap; }

/* ── FOOTER ── */
footer { background:#000; border-top:1px solid rgba(99,102,241,0.15); padding:60px 5% 100px; }
.footer-inner { max-width:1200px; margin:0 auto; }
.footer-top { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.footer-brand img { height:240px; margin-bottom:16px; }
.footer-brand p { font-size:0.82rem; color:var(--muted2); line-height:1.7; max-width:280px; }
.footer-geo { font-size:0.78rem; color:var(--muted); margin-top:12px; line-height:1.8; }
.footer-col h4 { font-family:'Syne',sans-serif; font-size:0.82rem; font-weight:700; color:var(--white); margin-bottom:16px; letter-spacing:1px; text-transform:uppercase; }
.footer-col a { display:block; font-size:0.82rem; color:var(--muted2); text-decoration:none; margin-bottom:10px; transition:color 0.2s; }
.footer-col a:hover { color:var(--accent2); }
.footer-phone-block { margin-top:12px; }
.footer-phone-item { margin-bottom:12px; }
.footer-phone-item .fp-label { font-size:0.68rem; color:var(--muted); letter-spacing:1px; text-transform:uppercase; margin-bottom:3px; }
.footer-phone-item a { color:var(--gold); font-weight:700; font-size:0.88rem; text-decoration:none; }
.footer-phone-item a.human-line { color:var(--accent2); }
.footer-bottom { border-top:1px solid var(--border); padding-top:24px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; }
.footer-bottom p { font-size:0.78rem; color:var(--muted); }
.footer-usd-note { font-size:0.72rem; color:var(--muted); margin-top:6px; }
.trust-badges { display:flex; gap:12px; flex-wrap:wrap; }
.trust-badge { background:var(--bg2); border:1px solid var(--border); border-radius:8px; padding:6px 12px; font-size:0.7rem; color:var(--muted2); }

/* ── RESPONSIVE ── */
@media(max-width:900px) {
  .footer-top { grid-template-columns:1fr 1fr; }
  .nav-links, .nav-actions { display:none; }
  .ham-btn { display:flex !important; }
  .nav-inner { height:180px; }
  .nav-logo img { height:160px; }
}
@media(max-width:600px) {
  .sticky-phone { padding:10px 12px; gap:10px; justify-content:center; }
  .sticky-phone-text { display:none; }
  .footer-top { grid-template-columns:1fr !important; }
  .trust-badges { justify-content:center; }
}
