/* Atimailing – site vitrine */
@font-face{font-family:"Inter";src:url("fonts/inter.woff2") format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Space Grotesk";src:url("fonts/space-grotesk.woff2") format("woff2");font-weight:300 700;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("fonts/jetbrains-mono.woff2") format("woff2");font-weight:100 800;font-display:swap}

:root{
  --ink:#12161C; --night:#10141B; --night-2:#181D26; --night-line:#2A313C;
  --paper:#F6F6F3; --white:#FFFFFF; --line:#E3E4DE; --line-2:#D6D8D0;
  --muted:#4A5260; --muted-dark:#C9CED6; --muted-dark-2:#9AA3AF;
  --accent:#1E46C8; --accent-hover:#15338F; --accent-on-dark:#9AACE6; --accent-soft:#E4E9F8;
  --display:"Space Grotesk",system-ui,sans-serif; --body:"Inter",system-ui,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,monospace;
  --wrap:1200px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:16px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;font-family:var(--body);font-size:17px;line-height:1.6;color:var(--ink);background:var(--paper)}
a{color:var(--accent)} a:hover{color:var(--accent-hover)}
:focus-visible{outline:3px solid var(--accent-on-dark);outline-offset:3px;border-radius:4px}
img,svg{max-width:100%}
h1,h2,h3{font-family:var(--display);margin:0}
p{margin:0}

.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:32px}
@media (max-width:560px){.wrap{padding-inline:20px}}

.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:12px;
  font-weight:600;font-size:17px;text-decoration:none;border:1px solid transparent}
.btn-primary{background:var(--accent);color:#fff}
.btn-primary:hover{background:var(--accent-hover);color:#fff}
.btn-ghost{border-color:#3A414D;color:#fff}
.btn-ghost:hover{border-color:#6B7380;color:#fff}
.btn-sm{min-height:44px;padding:0 20px;font-size:15px;border-radius:10px}

/* En-tête + hero */
.top{background:var(--night);color:#F3F4F6}
.header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding-block:24px}
.logo{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:-.01em}
.logo:hover{color:#fff}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px 28px;font-size:15px}
.nav a:not(.btn){color:var(--muted-dark);text-decoration:none}
.nav a:not(.btn):hover{color:#fff}
@media (max-width:720px){.nav a:not(.btn){display:none}}

.hero{display:flex;flex-wrap:wrap;align-items:center;gap:56px;padding-block:72px 104px}
.hero-text{flex:1 1 480px;min-width:0;display:flex;flex-direction:column;gap:24px}
.hero-kicker{font-size:15px;font-weight:600;color:var(--accent-on-dark)}
.hero h1{font-weight:700;font-size:clamp(2.5rem,5vw,4rem);line-height:1.05;letter-spacing:-.025em;color:#fff}
.hero-lead{font-size:19px;color:var(--muted-dark);max-width:34rem}
.actions{display:flex;flex-wrap:wrap;gap:12px;padding-top:8px}

.code{flex:1 1 440px;min-width:0;background:var(--night-2);border:1px solid var(--night-line);border-radius:16px;overflow:hidden}
.code-head{display:flex;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid var(--night-line);font-family:var(--mono);font-size:13px;color:var(--muted-dark-2)}
.code-head .verb{color:var(--accent-on-dark)}
.code pre{margin:0;padding:22px 24px;font-family:var(--mono);font-size:14px;line-height:1.75;color:#E5E7EB;overflow-x:auto}
.code-foot{padding:16px 24px 22px;border-top:1px solid var(--night-line);font-family:var(--mono);font-size:14px;color:var(--muted-dark-2)}
.code-foot .ok{color:#6EE7A8}

/* Sections */
.section{padding-block:96px}
.section-head{display:flex;flex-direction:column;gap:14px;max-width:46rem;margin-bottom:48px}
.section h2,.faq h2{font-weight:700;font-size:clamp(2rem,3.4vw,2.75rem);line-height:1.1;letter-spacing:-.02em}
.section-head p{color:var(--muted)}

.pillars{display:flex;flex-wrap:wrap;gap:24px}
.pillar{flex:1 1 300px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px}
.pillar-icon{width:48px;height:48px;border-radius:12px;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;color:var(--accent)}
.pillar h3,.step h3,.plan h3{font-size:22px;font-weight:600}
.pillar p,.step p{color:var(--muted)}

.steps{display:flex;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.step{flex:1 1 300px;min-width:0;border-top:2px solid var(--ink);padding:24px 32px 32px 0;display:flex;flex-direction:column;gap:12px}
.step-num{font-family:var(--display);font-weight:700;font-size:15px;color:var(--accent)}

/* Forfaits */
.pricing{background:#fff;border-block:1px solid var(--line)}
.plans{display:flex;flex-wrap:wrap;gap:20px;align-items:stretch}
.plan{flex:1 1 250px;min-width:0;border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:20px;
  background:var(--paper);border:1px solid var(--line)}
.plan-top{display:flex;flex-direction:column;gap:6px}
.plan-name{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}
.badge{font-size:13px;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--accent);color:#fff}
.plan .muted{font-size:15px;color:var(--muted)}
.price{display:flex;align-items:baseline;gap:6px}
.price strong{font-family:var(--display);font-weight:700;font-size:44px;line-height:1;letter-spacing:-.02em}
.volume{font-weight:600}
.features{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px;font-size:15px;flex-grow:1}
.features li{display:flex;gap:10px;align-items:flex-start}
.features svg{flex:0 0 18px;margin-top:4px}
.overage{font-size:14px;color:var(--muted)}
.plan .btn{min-height:48px;background:#fff;border-color:var(--ink);color:var(--ink)}
.plan .btn:hover{background:var(--ink);color:#fff}
.plan-featured{background:var(--night);border-color:var(--night);color:#fff}
.plan-featured .muted,.plan-featured .overage{color:#B8BFC9}
.plan-featured .btn{background:var(--accent);border-color:var(--accent);color:#fff}
.plan-featured .btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.pricing-note{margin-top:48px;font-size:15px;color:var(--muted)}

/* Développeurs */
.dev{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.dev-text{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:18px}
.dev-text p{color:var(--muted)}
.endpoints{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}
.endpoints li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}
.endpoints code{font-family:var(--mono);font-size:14px;padding:3px 8px;border-radius:6px;background:#ECEDE8;white-space:nowrap}
.dev .code{background:var(--night);border-color:var(--night)}

/* FAQ */
.faq{max-width:860px;margin:0 auto;padding:40px 32px 96px}
.faq h2{margin-bottom:32px}
.faq-list{border-top:1px solid var(--line-2)}
.faq details{border-bottom:1px solid var(--line-2);padding:20px 0}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:44px;font-weight:600;font-size:18px;cursor:pointer;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq-plus{font-size:26px;line-height:1;color:var(--accent);transition:transform .2s}
@media (prefers-reduced-motion:reduce){.faq-plus{transition:none}}
.faq details[open] .faq-plus{transform:rotate(45deg)}
.faq details p{margin-top:12px;color:var(--muted)}

/* Contact + pied de page */
.contact{background:var(--night);color:#F3F4F6}
.contact-inner{display:flex;flex-wrap:wrap;gap:48px;align-items:flex-start;justify-content:space-between;padding-block:96px}
.contact-text{flex:1 1 460px;min-width:0;display:flex;flex-direction:column;gap:16px}
.contact h2{font-weight:700;font-size:clamp(2rem,3.4vw,2.75rem);line-height:1.1;letter-spacing:-.02em;color:#fff}
.contact-text p{color:var(--muted-dark);max-width:34rem}
.footer{border-top:1px solid #262C36}
.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-block:28px;font-size:14px;color:var(--muted-dark-2)}
.footer a{color:#E5E7EB}
.footer-links{display:flex;flex-wrap:wrap;gap:6px 20px}

/* Pages de texte (mentions légales) */
.doc{max-width:760px;margin:0 auto;padding:64px 32px 96px}
.doc h1{font-size:clamp(2rem,4vw,2.75rem);letter-spacing:-.02em;margin-bottom:32px}
.doc h2{font-size:22px;margin:40px 0 12px}
.doc p,.doc li{color:var(--muted)}
.doc p+p{margin-top:12px}

/* Formulaire « Demander une démo » (section contact, fond sombre) */
.contact-direct{font-size:15px}
.contact-direct a{color:#fff}
.demo{flex:1 1 520px;min-width:0}
.demo-form{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;background:var(--night-2);border:1px solid var(--night-line);border-radius:16px;padding:28px}
@media (max-width:640px){.demo-form{grid-template-columns:1fr;padding:22px}}
.demo-field{display:flex;flex-direction:column;gap:6px;min-width:0}
.demo-field--wide{grid-column:1/-1}
.demo-field label{font-size:15px;font-weight:600;color:#F3F4F6}
.demo-optional{font-weight:400;color:var(--muted-dark-2)}
.demo-field input,.demo-field select,.demo-field textarea{width:100%;min-height:48px;padding:10px 14px;border-radius:10px;border:1px solid #3A414D;
  background:var(--night);color:#fff;font:inherit;font-size:16px}
.demo-field textarea{min-height:110px;resize:vertical}
.demo-field select{appearance:auto}
.demo-field input::placeholder,.demo-field textarea::placeholder{color:#7D8693}
.demo-field input:focus,.demo-field select:focus,.demo-field textarea:focus{outline:none;border-color:var(--accent-on-dark);box-shadow:0 0 0 3px rgba(154,172,230,.35)}
.demo-field.has-error input,.demo-field.has-error select,.demo-field.has-error textarea{border-color:#F08A8A}
.demo-error{font-size:14px;color:#F6A9A9}
.demo-alert{margin-bottom:16px;padding:12px 16px;border-radius:10px;background:#3A1F24;color:#FBD5D5;font-size:15px}
.demo-alert a{color:#fff}
.demo-submit{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px}
.demo-legal{flex:1 1 220px;font-size:13px;color:var(--muted-dark-2)}
.demo-legal a{color:var(--muted-dark)}
.demo-done{background:var(--night-2);border:1px solid var(--night-line);border-left:4px solid #5BC08A;border-radius:16px;padding:28px;display:flex;flex-direction:column;gap:8px}
.demo-done h3{font-size:22px;color:#fff}
.demo-done p{color:var(--muted-dark)}
/* Champ piège anti-spam : hors écran, ignoré par les lecteurs d'écran */
.demo-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
