/* ============================================================
   Classio — Mise en page des guides (pages de contenu SEO)
   Utilisée par /guides, /donner-des-cours-en-ligne-maroc, etc.
   Se charge après /assets/style.css (couleurs, header, footer, boutons).
   Propriétés « logiques » (inline-start…) : fonctionne aussi en arabe (RTL).
   ============================================================ */

/* Fil d'Ariane */
.g-crumbs{font-size:13px;color:var(--muted);margin-bottom:18px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.g-crumbs a{color:var(--green-800);font-weight:600}
.g-crumbs a:hover{color:var(--gold-dark)}
.g-crumbs span[aria-hidden]{opacity:.5}

/* Hero */
.g-hero{padding:56px 0 64px;overflow:hidden}
.g-hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:56px;align-items:start}
.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border-radius:999px;background:var(--green-100);color:var(--green-800);font-size:13px;font-weight:800;margin-bottom:20px}
.dot{width:8px;height:8px;border-radius:50%;background:#29a56c}
.g-hero h1{font-family:Manrope;font-size:clamp(36px,4.4vw,56px);line-height:1.07;letter-spacing:-1.8px;color:var(--green-950);margin-bottom:20px;max-width:680px}
.g-hero h1 .gold{color:var(--gold-dark)}
.hero-copy{font-size:18px;color:#536862;max-width:600px;margin-bottom:26px}
.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}
.g-meta{margin-top:20px;font-size:13px;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 16px}
.g-meta b{color:#345048;font-weight:700}

/* Encadré « En bref » (réponse directe, utile à Google) */
.g-brief{background:var(--green-950);color:#d7e3df;border-radius:var(--radius);padding:30px 30px 26px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.g-brief:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;border:1px solid rgba(255,255,255,.08);inset-inline-end:-110px;top:-120px}
.g-brief-title{font-family:Manrope;font-weight:800;color:#fff;font-size:15px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:16px}
.g-brief ul{list-style:none;display:grid;gap:13px;position:relative}
.g-brief li{display:flex;gap:12px;font-size:15px;line-height:1.5}
.g-brief li:before{content:"✓";flex:none;width:22px;height:22px;border-radius:50%;background:var(--gold);color:var(--green-950);display:grid;place-items:center;font-size:11px;font-weight:900;margin-top:1px}
.g-brief strong{color:#fff}

/* Corps : sommaire + article */
.g-body{padding:24px 0 40px}
.g-body-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:64px;align-items:start}
.g-toc{position:sticky;top:100px;font-size:14px}
.g-toc-title{font-weight:800;color:var(--green-950);margin-bottom:12px;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.g-toc ol{list-style:none;display:grid;gap:2px;border-inline-start:2px solid var(--border)}
.g-toc a{display:block;padding:7px 14px;color:var(--muted);margin-inline-start:-2px;border-inline-start:2px solid transparent;line-height:1.4}
.g-toc a:hover{color:var(--green-900);border-inline-start-color:var(--gold)}
.g-toc details summary{display:none}

.g-article{max-width:760px}
.g-article>section{padding:0;margin-bottom:56px;scroll-margin-top:100px}
.g-article h2{font-family:Manrope;font-size:clamp(26px,3vw,34px);line-height:1.15;letter-spacing:-.8px;color:var(--green-950);margin-bottom:18px}
.g-article h3{font-family:Manrope;font-size:20px;color:var(--green-950);margin:28px 0 10px}
.g-article p{font-size:17px;line-height:1.75;color:#2b3f39;margin-bottom:16px}
.g-article a:not(.btn){color:var(--green-800);font-weight:600;text-decoration:underline;text-decoration-color:var(--gold-soft);text-underline-offset:3px}
.g-article a:not(.btn):hover{color:var(--gold-dark)}
.g-article strong{color:var(--green-950)}

.g-list{list-style:none;display:grid;gap:10px;margin:4px 0 20px}
.g-list li{position:relative;padding-inline-start:26px;font-size:17px;line-height:1.65;color:#2b3f39}
.g-list li:before{content:"";position:absolute;inset-inline-start:4px;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--gold)}

.g-steps{list-style:none;counter-reset:etape;display:grid;gap:14px;margin:8px 0 22px}
.g-steps>li{counter-increment:etape;position:relative;padding:18px 20px;padding-inline-start:68px;background:#fff;border:1px solid var(--border);border-radius:18px;font-size:16px;line-height:1.6;color:#2b3f39}
.g-steps>li:before{content:counter(etape);position:absolute;inset-inline-start:18px;top:16px;width:34px;height:34px;border-radius:10px;background:var(--green-100);color:var(--green-900);display:grid;place-items:center;font-weight:900;font-family:Manrope}
.g-steps>li b{display:block;color:var(--green-950);font-size:17px;margin-bottom:2px}

/* Encadrés */
.g-tip{background:var(--green-100);border-inline-start:4px solid var(--green-700);border-radius:14px;padding:18px 20px;margin:6px 0 22px;font-size:16px;line-height:1.65;color:#21413a}
.g-tip b{color:var(--green-950)}
.g-classio{background:#fff;border:1px solid var(--gold-soft);border-radius:18px;padding:20px 22px;margin:8px 0 24px;box-shadow:0 10px 30px rgba(155,104,7,.06)}
.g-classio-tag{display:inline-block;font-size:11px;font-weight:900;letter-spacing:.1em;color:var(--gold-dark);margin-bottom:6px}
.g-classio p{margin-bottom:0;font-size:16px}

/* Tableaux */
.g-table-wrap{overflow-x:auto;margin:6px 0 24px;border:1px solid var(--border);border-radius:16px;background:#fff}
.g-table{width:100%;border-collapse:collapse;font-size:15px;min-width:560px}
/* Tableau de 3 colonnes ou moins : il tient dans l'écran du téléphone, sans défilement */
.g-table:not(:has(tr > :nth-child(4))){min-width:0}
.g-table th,.g-table td{padding:13px 16px;text-align:start;vertical-align:top;border-bottom:1px solid var(--border);line-height:1.5}
.g-table th{background:var(--cream-2);color:var(--green-950);font-weight:800;font-size:14px}
.g-table tr:last-child td{border-bottom:0}
.g-table td:first-child{font-weight:700;color:var(--green-950)}
.g-table .yes{color:#1f7a52;font-weight:700}
.g-table .no{color:#9a5b0b;font-weight:700}

/* FAQ */
.g-faq{display:grid;gap:10px;margin-top:8px}
.g-faq details{background:#fff;border:1px solid var(--border);border-radius:16px;padding:0 20px}
.g-faq summary{cursor:pointer;list-style:none;padding:18px 0;font-weight:700;color:var(--green-950);display:flex;justify-content:space-between;gap:16px;font-size:16px}
.g-faq summary::-webkit-details-marker{display:none}
.g-faq summary:after{content:"+";font-size:22px;line-height:1;color:var(--gold-dark);flex:none}
.g-faq details[open] summary:after{content:"−"}
.g-faq details p{font-size:16px;margin:0 0 18px;color:#2b3f39;line-height:1.7}

/* Pages liées */
.g-related{padding:70px 0;background:var(--cream-2)}
.g-related h2{font-family:Manrope;font-size:clamp(26px,3vw,34px);color:var(--green-950);margin-bottom:24px;letter-spacing:-.6px}
.g-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.g-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px;display:flex;flex-direction:column;gap:8px;transition:.2s}
.g-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--gold-soft)}
.g-card b{font-family:Manrope;color:var(--green-950);font-size:18px;line-height:1.3}
.g-card span{color:var(--muted);font-size:14px;line-height:1.55}
.g-card i{font-style:normal;color:var(--gold-dark);font-weight:800;font-size:14px;margin-top:auto}

/* Grille de la page /guides */
.g-hub{padding:20px 0 90px}
.g-hub .g-related-grid{grid-template-columns:repeat(3,1fr)}

/* Appel final */
.cta{padding:80px 0}
.cta-box{background:var(--gold);color:#fff;border-radius:30px;padding:56px;display:flex;align-items:center;justify-content:space-between;gap:35px;overflow:hidden;position:relative}
.cta-box:before{content:"";position:absolute;width:300px;height:300px;border:1px solid rgba(255,255,255,.22);border-radius:50%;inset-inline-end:-100px;top:-130px}
.cta-box h2{font-family:Manrope;font-size:clamp(28px,3.6vw,40px);line-height:1.14;max-width:650px;color:#fff;position:relative;z-index:1}
.cta-box p{margin-top:10px;color:#fff7df;max-width:600px;position:relative;z-index:1}
.cta-box .btn{background:#fff;color:var(--green-950);position:relative;z-index:1}

/* Arabe */
[dir="rtl"] .g-hero h1,[dir="rtl"] .g-article h2,[dir="rtl"] .g-article h3,[dir="rtl"] .g-card b,[dir="rtl"] .cta-box h2,[dir="rtl"] .g-related h2{font-family:Tajawal,Manrope,sans-serif;letter-spacing:0}
[dir="rtl"],[dir="rtl"] .g-article p,[dir="rtl"] .g-list li{font-family:Tajawal,"DM Sans",sans-serif}
[dir="rtl"] .g-article p,[dir="rtl"] .g-list li{font-size:18px}
.g-lang{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--green-800);margin-top:16px}
.g-lang:hover{color:var(--gold-dark)}

@media(max-width:980px){
  .g-hero-grid{grid-template-columns:minmax(0,1fr);gap:34px}
  .g-body-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .g-toc,.g-article{min-width:0}
  .g-toc{position:static}
  .g-toc details{background:#fff;border:1px solid var(--border);border-radius:14px;padding:4px 16px}
  .g-toc details summary{display:block;cursor:pointer;padding:12px 0;font-weight:800;color:var(--green-950)}
  .g-toc-title{display:none}
  .g-toc ol{margin-bottom:12px}
  .g-related-grid,.g-hub .g-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .g-hero{padding:36px 0 44px}
  .g-hero h1{letter-spacing:-1.2px}
  .hero-copy{font-size:16px}
  .g-brief{padding:24px 22px}
  .g-article p,.g-list li{font-size:16px}
  .g-table th,.g-table td{padding:11px 12px}
  .g-steps>li{padding-inline-start:60px}
  .g-related-grid,.g-hub .g-related-grid{grid-template-columns:1fr}
  .cta-box{padding:38px 25px;display:block}
  .cta-box .btn{margin-top:22px}
}
