:root{--bg:#fff;--card:#fff;--muted:#475569;--text:#0f172a;--brand:#190d6b;--brand2:#190d6b;--ring:rgba(25,13,107,.18)}
*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:#0ea5e9;text-decoration:none}a:hover{text-decoration:underline}
.container{max-width:1100px;margin-inline:auto;padding:0 20px}

/* Nav */
.nav{position:sticky;top:0;background:rgba(255,255,255,.9);border-bottom:1px solid #e2e8f0;backdrop-filter:saturate(160%) blur(8px);z-index:20}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}
.nav-links{display:none;gap:18px}
@media(min-width:860px){.nav-links{display:flex}}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent;border-radius:12px;padding:12px 16px;font-weight:600;cursor:pointer;transition:.2s}
.btn-primary{background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff}
.btn-outline{border:1px solid #cbd5e1;color:var(--text)}.btn-outline:hover{background:#f1f5f9}

/* Hero */
.hero{padding:40px 0;background:radial-gradient(800px 400px at 10% -50px, rgba(14,165,233,.12), transparent 60%),radial-gradient(700px 350px at 110% 0, rgba(34,197,94,.10), transparent 60%)}
.hero-inner{display:grid;grid-template-columns:1fr;gap:24px;align-items:center}
.hero-copy h1{font-size:clamp(24px,3vw,36px);line-height:1.2;margin:0 0 8px;text-align:left}
.hero-copy p{color:var(--muted);margin:0 0 10px}
.trust{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:8px 0 16px;color:var(--muted)}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero-top{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}
.hero-logo{width:300px;max-width:40vw;height:auto;object-fit:contain;filter:saturate(110%) contrast(105%)}
@media(max-width:640px){.hero-top{grid-template-columns:1fr 140px}.hero-logo{width:160px;max-width:45vw}}

/* Sections */
.section{padding:56px 0}
.section.alt{background:#f8fafc}
.card{background:var(--card);border:1px solid #e2e8f0;border-radius:16px;padding:24px}

/* Bandeaux image */
.image-band{padding:0;margin:0}
.image-band img{display:block;width:100%;height:44vh;object-fit:cover}
@media(max-width:640px){.image-band img{height:30vh}}

/* Atouts */
.features-list{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.features-list li{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;font-weight:600}

/* Contact 2 colonnes */
.contact-wrap{display:grid;grid-template-columns:1.3fr .7fr;gap:22px;align-items:start}
.contact-form{max-width:600px;display:grid;gap:12px}
.field label{display:block;margin-bottom:6px;font-weight:600}
input,select,textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid #cbd5e1;background:#fff;color:var(--text);outline:none}
input:focus,select:focus,textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--ring)}
.contact-card{text-align:left}
.contact-card .muted{color:#64748b;font-size:.9rem;margin-top:10px}
.contact-photo{width:120px;height:120px;border-radius:999px;object-fit:cover;border:2px solid #e2e8f0;margin:8px 0 6px}
@media(max-width:760px){.contact-wrap{grid-template-columns:1fr;gap:16px}.contact-form{max-width:100%}}

/* Footer */
.footer{padding:28px 0;border-top:1px solid #e2e8f0}
.legal{color:var(--muted);font-size:.95rem}
.copy{color:#64748b;font-size:.9rem}
