/* Page d'offre : création de site pour réparateur (creation-site-reparateur.php) */
.os{font-family:'DM Sans',system-ui,sans-serif;color:var(--texte);}
.os h1,.os h2,.os h3{font-family:'DM Sans',system-ui,sans-serif;font-weight:700;color:var(--titre,#0F1B3D);text-wrap:balance;}
.os img{max-width:100%;height:auto;display:block;}

/* ---------- Boutons ---------- */
.os-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:15.5px;text-decoration:none;padding:14px 24px;border-radius:12px;border:1.5px solid var(--bleu);cursor:pointer;font-family:inherit;transition:var(--transition);}
.os-btn-plein{background:linear-gradient(135deg,var(--bleu) 0%,var(--bleu-fonce) 100%);color:#fff;box-shadow:0 10px 22px -12px rgba(26,86,219,.8);}
.os-btn-plein:hover{transform:translateY(-1px);color:#fff;}
.os-btn-ligne{background:var(--blanc);color:var(--bleu);}
.os-btn-ligne:hover{background:var(--bleu);color:#fff;}
.os-btn-bloc{display:flex;width:100%;}

/* ---------- Hero ---------- */
.os-hero{background:linear-gradient(180deg,#F4F7FE 0%,#fff 100%);padding:48px 0 72px;overflow:hidden;}
.os-hero-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:44px;align-items:center;}
.os-kicker{font-size:12.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--bleu);margin-bottom:14px;}
.os-hero h1{font-size:clamp(32px,5vw,50px);line-height:1.08;margin-bottom:18px;}
.os-hero h1 span{color:var(--bleu);}
.os-lead{font-size:17px;line-height:1.65;color:var(--texte-sec);max-width:560px;margin-bottom:26px;}
.os-hero-prix{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-bottom:28px;}
.os-prix{display:flex;flex-direction:column;line-height:1;padding-right:22px;border-right:1px solid var(--bord);}
.os-prix strong{font-size:52px;font-weight:700;color:var(--bleu);letter-spacing:-1px;}
.os-prix span{font-size:13px;color:var(--texte-sec);margin-top:6px;}
.os-hero-points{list-style:none;display:grid;gap:7px;font-size:14.5px;font-weight:500;}
.os-hero-points li::before{content:"✓";color:var(--vert);font-weight:700;margin-right:8px;}
.os-cta-row{display:flex;gap:12px;flex-wrap:wrap;}

/* Cadre « navigateur » et « téléphone » autour des captures */
.os-navigateur{border:1px solid #D7DFEE;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 30px 60px -28px rgba(16,59,148,.45);}
.os-nav-barre{display:flex;align-items:center;gap:6px;padding:9px 12px;background:#EEF2FA;border-bottom:1px solid #D7DFEE;}
.os-nav-barre i{width:9px;height:9px;border-radius:50%;background:#C9D2E4;display:block;}
.os-nav-barre span{margin-left:10px;font-size:11.5px;color:#6B7692;background:#fff;border-radius:6px;padding:3px 12px;}
.os-hero-visuel{position:relative;padding-bottom:34px;}
.os-mobile{position:absolute;right:-6px;bottom:0;width:30%;max-width:170px;border:5px solid #16213E;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 24px 40px -16px rgba(0,0,0,.45);}
.os-mobile-statique{position:static;width:200px;max-width:100%;margin:0 auto;}

/* ---------- Bandeau ---------- */
.os-bandeau{background:var(--bleu);color:#fff;}
.os-bandeau-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding-block:22px;}
.os-bandeau-grid div{display:flex;flex-direction:column;gap:2px;}
.os-bandeau-grid strong{font-size:16px;}
.os-bandeau-grid span{font-size:13px;opacity:.82;}

/* ---------- Sections ---------- */
.os-section{padding:72px 0;}
.os-fond{background:#F6F8FD;}
.os-section h2{font-size:clamp(26px,3.6vw,38px);line-height:1.15;text-align:center;margin-bottom:12px;}
.os-intro{text-align:center;color:var(--texte-sec);font-size:16.5px;max-width:640px;margin:0 auto 38px;}
.os-centre{text-align:center;margin-top:34px;}

.os-ligne{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center;margin-top:56px;}
.os-ligne-txt h3{font-size:25px;line-height:1.2;margin-bottom:12px;}
.os-ligne-txt p{font-size:16px;line-height:1.7;color:var(--texte-sec);margin-bottom:16px;}
.os-liste{list-style:none;display:grid;gap:9px;font-size:15px;color:var(--texte);}
.os-liste li{padding-left:26px;position:relative;line-height:1.5;}
.os-liste li::before{content:"✓";position:absolute;left:0;top:0;color:var(--vert);font-weight:700;}
.os-fig{margin:0;}

.os-cartes{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;}
.os-carte{background:#fff;border:1px solid var(--bord);border-radius:16px;padding:24px;}
.os-ico{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:var(--bleu-clair);color:var(--bleu);margin-bottom:14px;}
.os-carte h3{font-size:18px;margin-bottom:6px;}
.os-carte p{font-size:14.5px;color:var(--texte-sec);line-height:1.6;}

.os-galerie{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center;}
.os-galerie figure{margin:0;}

/* ---------- Tarif ---------- */
.os-tarif-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:44px;align-items:start;}
.os-tarif-carte{background:#fff;border:2px solid var(--bleu);border-radius:22px;padding:32px;box-shadow:0 30px 60px -34px rgba(26,86,219,.55);}
.os-etiquette{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:var(--bleu-clair);color:var(--bleu);padding:6px 12px;border-radius:999px;margin-bottom:14px;}
.os-gros{display:flex;align-items:baseline;gap:12px;margin-bottom:20px;}
.os-gros strong{font-size:60px;line-height:1;color:var(--bleu);letter-spacing:-1.5px;}
.os-gros span{color:var(--texte-sec);font-size:15px;}
.os-coches{list-style:none;display:grid;gap:11px;margin-bottom:26px;font-size:15px;}
.os-coches li{padding-left:28px;position:relative;line-height:1.5;}
.os-coches li::before{content:"✓";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--vert-clair);color:var(--vert);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;}
.os-petit{font-size:13px;color:var(--texte-sec);margin-top:14px;line-height:1.55;}
.os-petit a{color:var(--bleu);}
.os-etapes h2{text-align:left;font-size:clamp(24px,3vw,32px);margin-bottom:22px;}
.os-etapes ol{list-style:none;counter-reset:etape;display:grid;gap:20px;}
.os-etapes li{counter-increment:etape;position:relative;padding-left:56px;display:flex;flex-direction:column;gap:3px;}
.os-etapes li::before{content:counter(etape);position:absolute;left:0;top:0;width:38px;height:38px;border-radius:50%;background:var(--bleu);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;}
.os-etapes li strong{font-size:16.5px;}
.os-etapes li span{font-size:14.5px;color:var(--texte-sec);line-height:1.55;}

/* ---------- FAQ ---------- */
.os-faq-wrap{max-width:780px;}
.os-faq{border-bottom:1px solid var(--bord);}
.os-faq summary{cursor:pointer;list-style:none;padding:20px 32px 20px 0;font-weight:700;font-size:17px;position:relative;}
.os-faq summary::-webkit-details-marker{display:none;}
.os-faq summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:24px;color:var(--bleu);font-weight:400;}
.os-faq[open] summary::after{content:"–";}
.os-faq p{padding:0 0 20px;color:var(--texte-sec);line-height:1.7;font-size:15.5px;}

/* ---------- Formulaire ---------- */
.os-form-wrap{max-width:760px;}
.os-form{background:#fff;border:1px solid var(--bord);border-radius:20px;padding:28px;display:grid;gap:18px;position:relative;box-shadow:0 20px 40px -30px rgba(16,59,148,.4);}
.os-champs{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;}
.os-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600;}
.os-lab{font-weight:600;font-size:14px;}
.os-lab span{font-weight:400;color:var(--texte-ter);}
.os-form input,.os-form textarea{font:inherit;font-size:15px;font-weight:400;padding:12px 14px;border:1.5px solid var(--bord);border-radius:10px;background:#fff;color:var(--texte);}
.os-form input:focus,.os-form textarea:focus{outline:none;border-color:var(--bleu);box-shadow:0 0 0 3px var(--bleu-glow);}
.os-alerte{border-radius:14px;padding:18px 20px;font-size:15px;line-height:1.6;margin-bottom:16px;}
.os-ok{background:var(--vert-clair);color:#0F5C33;border:1px solid #BFE6CC;}
.os-ko{background:var(--rouge-clair);color:#991B1B;border:1px solid #FCA5A5;}

/* ---------- Écrans larges ---------- */
@media (min-width:700px){
  .os-bandeau-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .os-cartes{grid-template-columns:repeat(2,minmax(0,1fr));}
  .os-champs{grid-template-columns:repeat(2,minmax(0,1fr));}
  .os-galerie{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
  .os-galerie .os-fig-tel{grid-column:1 / -1;}
}
@media (min-width:980px){
  .os-hero{padding:72px 0 92px;}
  .os-hero-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,1fr);gap:56px;}
  .os-ligne{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:56px;margin-top:84px;}
  .os-inverse .os-ligne-txt{order:2;}
  .os-cartes{grid-template-columns:repeat(3,minmax(0,1fr));}
  .os-galerie{grid-template-columns:minmax(0,1.5fr) minmax(0,1.5fr) minmax(0,.7fr);}
  .os-galerie .os-fig-tel{grid-column:auto;}
  .os-tarif-grid{grid-template-columns:minmax(0,480px) minmax(0,1fr);gap:72px;}
}
@media (max-width:520px){
  .os-section{padding:52px 0;}
  .os-prix{padding-right:0;border-right:0;}
  .os-prix strong{font-size:46px;}
  .os-tarif-carte{padding:24px 20px;}
  .os-gros strong{font-size:50px;}
  .os-btn{width:100%;}
  .os-mobile{width:34%;right:-2px;}
}
@media (prefers-reduced-motion:reduce){.os-btn-plein:hover{transform:none;}}
