/* ═══════════════════════════════════════════════════════════════
   VerifQR — CSS partagé v1.1
   Header, Footer, Variables, Boutons, Pages légales
   Chargé par toutes les pages
   ═══════════════════════════════════════════════════════════════ */

/* ── VARIABLES ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:80px}
:root{
  --bg:#FAFBFD;--bg-alt:#F1F4F9;--bg-card:#FFF;
  --text:#0F172A;--t2:#475569;--t3:#94A3B8;
  --blue:#2563EB;--blue-lt:#3B82F6;--blue-bg:#DBEAFE;--blue-dk:#1D4ED8;
  --green:#059669;--green-bg:#D1FAE5;
  --red:#DC2626;--red-bg:#FEE2E2;
  --orange:#D97706;--orange-bg:#FEF3C7;
  --purple:#7C3AED;--purple-bg:#EDE9FE;
  --border:#E2E8F0;--border-lt:#F1F5F9;
  --r:16px;--rs:10px;
  --sh:0 4px 16px rgba(0,0,0,.06);
  --shl:0 12px 40px rgba(0,0,0,.08)
}
body{font-family:'Plus Jakarta Sans',-apple-system,sans-serif;background:var(--bg);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
.container{max-width:1120px;margin:0 auto;padding:0 24px}

/* ── BOUTONS COMMUNS ── */
.btn-primary{background:var(--blue);color:#fff;border:none;border-radius:12px;padding:15px 32px;font-size:16px;font-weight:700;cursor:pointer;font-family:inherit;transition:.25s;box-shadow:0 4px 16px rgba(37,99,235,.3);display:inline-block;text-align:center}
.btn-primary:hover{background:var(--blue-dk);transform:translateY(-2px)}
.btn-outline{background:transparent;color:var(--t2);border:1.5px solid var(--border);border-radius:12px;padding:15px 32px;font-size:16px;font-weight:600;cursor:pointer;font-family:inherit;transition:.25s;display:inline-block;text-align:center}
.btn-outline:hover{border-color:var(--blue);color:var(--blue)}

/* ── HEADER ── */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(250,251,253,.85);backdrop-filter:blur(16px);border-bottom:1px solid transparent;transition:.3s}
.site-header.scrolled{border-bottom-color:var(--border);box-shadow:0 1px 8px rgba(0,0,0,.04)}
.header-inner{display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:0 auto;padding:0 24px;height:64px}
.logo{display:flex;align-items:center;gap:9px}
.logo svg{width:26px;height:26px}
.logo-text{font-size:20px;font-weight:800;color:var(--text);letter-spacing:-.3px}
.logo-text em{font-style:normal;color:var(--blue)}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:14px;font-weight:500;color:var(--t2);transition:.2s}
.nav-links a:hover{color:var(--text)}
.nav-compte{font-size:14px;font-weight:500;color:var(--t2)}
.btn-nav{background:var(--blue);color:#fff;border:none;border-radius:8px;padding:9px 20px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:.2s;box-shadow:0 2px 8px rgba(37,99,235,.25);display:inline-block;text-align:center}
.btn-nav:hover{background:var(--blue-dk);transform:translateY(-1px)}
.mobile-toggle{display:none;background:none;border:none;cursor:pointer;padding:6px;flex-direction:column;gap:5px}
.mobile-toggle span{display:block;width:22px;height:2px;background:var(--t2);border-radius:2px}
.mobile-nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--bg-card);border-bottom:1px solid var(--border);padding:16px 24px;flex-direction:column;gap:12px;box-shadow:var(--sh)}
.mobile-nav.open{display:flex}
.mobile-nav a{font-size:15px;color:var(--t2);padding:10px 0;font-weight:500}

/* ── FOOTER ── */
.site-footer{background:var(--text);color:#94A3B8;padding:56px 0 28px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;margin-bottom:40px}
.footer-logo .logo-text{color:#fff}
.footer-logo p{font-size:14px;color:#64748B;margin-top:12px;line-height:1.7}
.footer-logo strong{color:#94A3B8}
.footer-col h4{font-size:12px;font-weight:700;color:#64748B;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:14px}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:9px}
.footer-col a{font-size:14px;color:#94A3B8;transition:.2s}
.footer-col a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid #1E293B;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:12px;color:#475569}
.footer-bottom a{color:#475569;transition:.2s}
.footer-bottom a:hover{color:#94A3B8}
.footer-legal{display:flex;gap:20px}
.footer-legal a{font-size:12px;color:#475569;transition:.2s}
.footer-legal a:hover{color:#94A3B8}

/* ── PAGES LÉGALES & CONTACT ── */
.legal-page{padding:120px 0 80px}
.legal-page h1{font-size:36px;font-weight:800;letter-spacing:-.8px;margin-bottom:8px}
.legal-page .legal-date{font-size:14px;color:var(--t3);margin-bottom:40px}
.legal-content{max-width:760px}
.legal-content h2{font-size:20px;font-weight:700;margin-top:40px;margin-bottom:12px;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border-lt)}
.legal-content h3{font-size:16px;font-weight:700;margin-top:24px;margin-bottom:8px;color:var(--text)}
.legal-content p{font-size:15px;color:var(--t2);line-height:1.8;margin-bottom:14px}
.legal-content ul{margin:12px 0 20px 24px;list-style:disc}
.legal-content li{font-size:15px;color:var(--t2);line-height:1.7;margin-bottom:6px}
.legal-content a{color:var(--blue);text-decoration:underline}
.legal-content strong{color:var(--text)}
.legal-content .legal-box{background:var(--bg-alt);border:1px solid var(--border-lt);border-radius:12px;padding:20px 24px;margin:20px 0}
.legal-content .legal-box p{margin-bottom:4px}

/* ── FORMULAIRE CONTACT ── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact-info{background:var(--bg-card);border:1px solid var(--border-lt);border-radius:var(--r);padding:32px}
.contact-info h3{font-size:18px;font-weight:700;margin-bottom:16px}
.contact-info-item{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}
.contact-info-item .ci-icon{font-size:20px;flex-shrink:0;margin-top:2px}
.contact-info-item .ci-text{font-size:14px;color:var(--t2);line-height:1.6}
.contact-info-item .ci-text strong{color:var(--text);display:block;margin-bottom:2px}
.contact-form{background:var(--bg-card);border:1px solid var(--border-lt);border-radius:var(--r);padding:32px}
.contact-form h3{font-size:18px;font-weight:700;margin-bottom:20px}
.form-group{margin-bottom:18px}
.form-label{display:block;font-size:14px;font-weight:600;color:var(--text);margin-bottom:6px}
.form-input,.form-select,.form-textarea{width:100%;padding:12px 14px;border:1.5px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;transition:.2s;outline:none;background:var(--bg)}
.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.1)}
.form-textarea{min-height:120px;resize:vertical}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-hint{font-size:12px;color:var(--t3);margin-top:4px}
.form-success{display:none;text-align:center;padding:40px;background:var(--green-bg);border-radius:12px}
.form-success h3{font-size:20px;font-weight:700;color:var(--green);margin-bottom:8px}
.form-success p{font-size:15px;color:var(--t2)}

/* ── RESPONSIVE ── */
@media(max-width:968px){
  .nav-links{display:none}
  .mobile-toggle{display:flex}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .form-row{grid-template-columns:1fr}
  .legal-page h1{font-size:28px}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr}
  .container{padding:0 16px}
  .legal-page{padding:100px 0 60px}
}
