/* =============================
   ALMIRA CONSEILS — Styles brandés (responsive)
   ============================= */
:root{
  --bg:#0B0F17; --surface:#0F1626; --text:#E5E7EB; --muted:#97A0AE;
  --brand:#1E7BFF; --accent:#4AA3FF; --card:#0D1424; --border:rgba(255,255,255,0.08);
}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:radial-gradient(1200px 900px at 70% 20%, rgba(30,123,255,0.12), transparent 60%), linear-gradient(180deg,#0B0F17,#0A0E15);color:var(--text);}
a{color:var(--accent);text-decoration:none}
img{max-width:100%;display:block}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid var(--border);background:rgba(10,14,22,0.7);backdrop-filter:blur(8px)}
.brand{display:flex;align-items:center;gap:12px}
.logo{width:38px;height:38px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(30,123,255,.35))}
.brand-title{font-weight:800;letter-spacing:0.6px}
.nav{display:flex;gap:18px}
.nav a{padding:8px 10px;border-radius:10px}
.nav a:hover{background:rgba(255,255,255,0.06)}
.nav-toggle{display:none;background:none;border:none;font-size:22px;color:var(--text)}
.section{padding:72px 22px;max-width:1200px;margin:0 auto}
.section-header{text-align:center;margin-bottom:34px}
.section-header h2{font-size:32px;margin:0 0 6px}
.section-header p{color:var(--muted);margin:0}
.hero{display:grid;gap:24px;grid-template-columns:1.05fr 0.95fr;align-items:center}
.hero-content h1{font-size:44px;line-height:1.05;margin:0 0 12px;text-shadow:0 0 24px rgba(30,123,255,.22)}
.lead{color:var(--muted);font-size:18px;max-width:60ch}
.accent{color:var(--accent)}
.cta-row{display:flex;gap:12px;margin-top:18px}
.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border-radius:14px;border:1px solid var(--border);cursor:pointer;transition:transform .06s ease, background .2s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:linear-gradient(135deg,var(--brand),var(--accent));color:#001022;border:none;box-shadow:0 8px 28px rgba(30,123,255,.25)}
.btn.ghost{background:transparent}
.hero-visual{position:relative;min-height:320px;display:grid;place-items:center}
.hero-logo{width:85%;max-width:460px;opacity:.95;filter:drop-shadow(0 0 40px rgba(30,123,255,.35))}
.grid{position:absolute;inset:0;border-radius:24px;box-shadow:inset 0 0 0 1px var(--border)}
.offer .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:linear-gradient(180deg,rgba(20,28,44,.7),rgba(13,20,36,.9));border:1px solid var(--border);border-radius:18px;padding:18px;box-shadow:0 10px 24px rgba(0,0,0,.25)}
.card-icon{font-size:28px}
.card h3{margin:8px 0 4px}
.card .tagline{color:var(--muted);margin:0 0 10px}
.card ul{margin:0;padding:0 0 0 18px;display:grid;gap:8px}
.contact-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px}
.field{display:grid;gap:6px;margin-bottom:12px}
input[type="text"],input[type="email"],input[type="tel"],textarea{background:#0a1220;border:1px solid var(--border);color:var(--text);padding:12px;border-radius:12px;outline:none}
input:focus,textarea:focus{border-color:#2e6fff;box-shadow:0 0 0 3px rgba(46,111,255,.15)}
.error{color:#ff8b8b;font-size:13px;min-height:1em}
.privacy{color:var(--muted);font-size:12px}
.card.info p{margin:6px 0}
.contact-form .btn{width:100%}
.site-footer{border-top:1px solid var(--border);padding:18px 22px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.footer-nav{display:flex;gap:12px}
@media (max-width: 980px){
  .hero{grid-template-columns:1fr}
  .offer .cards{grid-template-columns:repeat(2,1fr)}
  .contact-grid{grid-template-columns:1fr}
  .nav{display:none}
  .nav.open{display:flex;flex-direction:column;position:absolute;right:12px;top:60px;background:var(--surface);padding:10px;border:1px solid var(--border);border-radius:12px}
  .nav-toggle{display:block}
}
@media (max-width: 640px){
  .hero-content h1{font-size:34px}
  .offer .cards{grid-template-columns:1fr}
}
