/* guide.css v1 — Aerogenesis guide design system (replicates the original live design).
   Self-contained: article pages load this + chrome.css only. */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');
.gd{font-family:'Inter',-apple-system,BlinkMacSystemFont,'Helvetica Neue',sans-serif;
  color:#1d1d1f;background:#fff;-webkit-font-smoothing:antialiased;line-height:1.6}
.gd-hero *,.gd-body *{box-sizing:border-box}
.gd h1,.gd h2,.gd h3,.gd h4,.gd p,.gd ul,.gd ol,.gd figure{margin:0;padding:0}
.gd-body a,.gd-hero a{color:#0071e3;text-decoration:none}
.gd-body a:hover{text-decoration:underline}
.gd-wrap{max-width:760px;margin:0 auto;padding:0 24px}
.gd-wrap-wide{max-width:980px;margin:0 auto;padding:0 24px}

/* ---------- HERO (black, badge, blue accent, author card) ---------- */
.gd-hero{background:#000;padding:96px 24px 72px;text-align:center;position:relative;overflow:hidden}
.gd-hero::before{content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 50% at 50% 40%,rgba(0,113,227,.10) 0%,transparent 70%)}
.gd-hero>*{position:relative}
.gd-badge{display:inline-block;border:1px solid rgba(0,113,227,.45);border-radius:980px;
  padding:9px 22px;color:#3c86ff;font-size:13px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;margin-bottom:34px}
.gd-hero h1{color:#fff;font-size:clamp(36px,5.6vw,64px);line-height:1.06;letter-spacing:-.025em;
  font-weight:800;max-width:860px;margin:0 auto}
.gd-hero h1 .b{color:#3c86ff}
.gd-lede{color:#a1a1a6;font-size:clamp(17px,2.2vw,21px);line-height:1.55;max-width:640px;margin:26px auto 0}
.gd-author{display:flex;gap:16px;align-items:center;text-align:left;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px 22px;max-width:560px;margin:40px auto 0}
.gd-avatar{width:52px;height:52px;border-radius:50%;background:#0b2a55;color:#3c86ff;flex:none;
  display:flex;align-items:center;justify-content:center;font-weight:800;font-size:17px}
.gd-author b{color:#fff;display:block;font-size:15.5px;margin-bottom:2px}
.gd-author span{color:#a1a1a6;font-size:13.5px;display:block;line-height:1.5}
.gd-stats{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin:38px auto 0;max-width:760px}
.gd-stat{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;
  padding:14px 20px;min-width:120px}
.gd-stat b{display:block;color:#fff;font-size:24px;font-weight:800;letter-spacing:-.02em}
.gd-stat span{color:#a1a1a6;font-size:12.5px}

/* ---------- BODY ---------- */
.gd-body{padding:64px 0 8px;background:#fff}
.gd-body h2{font-size:clamp(28px,4vw,40px);line-height:1.12;letter-spacing:-.02em;font-weight:800;
  margin:64px 0 22px;scroll-margin-top:70px}
.gd-body h2 .b{color:#0071e3}
.gd-body h2:first-child{margin-top:0}
.gd-body h3{font-size:clamp(20px,2.6vw,25px);font-weight:700;letter-spacing:-.012em;margin:40px 0 12px}
.gd-body h4{font-size:17px;font-weight:700;margin:28px 0 8px}
.gd-body p{color:#515154;font-size:17.5px;line-height:1.75;margin:0 0 18px}
.gd-body ul,.gd-body ol{margin:0 0 20px 22px;color:#515154}
.gd-body li{margin-bottom:10px;line-height:1.65;font-size:17px}
.gd-body li::marker{color:#0071e3;font-weight:700}
.gd-body strong{color:#1d1d1f}

/* section kicker (short label lines) */
.gd-kicker{color:#86868b;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  margin:44px 0 10px}

/* ---------- CALLOUTS ---------- */
.gd-call{border-radius:16px;padding:26px 30px;margin:30px 0;background:#f5f5f7;border-left:4px solid #0071e3}
.gd-call .t{color:#0071e3;font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:12px}
.gd-call p{margin:0;color:#3a3a3c}
.gd-call p+p{margin-top:12px}
.gd-call.warn{background:#fff5f4;border:1px solid #ffd6d1;border-left:1px solid #ffd6d1}
.gd-call.warn .t{color:#ff453a}

/* ---------- CARD GRIDS ---------- */
.gd-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:28px 0}
.gd-cards.two{grid-template-columns:repeat(2,1fr)}
@media(max-width:820px){.gd-cards,.gd-cards.two{grid-template-columns:1fr}}
.gd-card{background:#f5f5f7;border-radius:18px;padding:26px 24px}
.gd-card .dot{width:26px;height:26px;border-radius:50%;background:#34c759;margin-bottom:16px}
.gd-card .dot.red{background:#ff453a}
.gd-card .dot.amber{background:#ff9f0a}
.gd-card h4{font-size:18px;margin:0 0 10px}
.gd-card p{font-size:15.5px;margin:0;color:#515154;line-height:1.6}
.gd-tag{display:inline-block;margin-top:16px;background:#e4f7e9;color:#1d9440;border-radius:980px;
  padding:6px 14px;font-size:13.5px;font-weight:700}
.gd-tag.red{background:#ffe9e7;color:#e02d20}
.gd-tag.amber{background:#fff3e0;color:#c77700}

/* ---------- TIMELINE ---------- */
.gd-steps{position:relative;margin:32px 0;padding-left:0}
.gd-step{position:relative;display:grid;grid-template-columns:64px 1fr;gap:0 8px;padding-bottom:34px}
.gd-step::before{content:'';position:absolute;left:19px;top:44px;bottom:0;width:2px;background:#e5e5ea}
.gd-step:last-child::before{display:none}
.gd-num{width:40px;height:40px;border-radius:50%;background:#0071e3;color:#fff;display:flex;
  align-items:center;justify-content:center;font-weight:800;font-size:16px;position:relative;z-index:1}
.gd-step:nth-child(3n) .gd-num{background:#34c759}
.gd-step .meta{color:#86868b;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin:2px 0 4px}
.gd-step h3{margin:0 0 10px;font-size:clamp(19px,2.4vw,24px)}
.gd-step p{margin:0;font-size:16.5px}

/* ---------- FAQ ---------- */
.gd-faq{margin:28px 0}
.gd-faq details{border-bottom:1px solid #e5e5ea}
.gd-faq summary{cursor:pointer;padding:20px 4px;font-weight:700;font-size:17.5px;color:#1d1d1f;
  list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px}
.gd-faq summary::-webkit-details-marker{display:none}
.gd-faq summary::after{content:"+";color:#0071e3;font-size:24px;font-weight:400;flex:none}
.gd-faq details[open] summary::after{content:"–"}
.gd-faq .a{padding:0 4px 20px;color:#515154;font-size:16.5px;line-height:1.7}

/* ---------- TABLES ---------- */
.gd-body table{width:100%;border-collapse:separate;border-spacing:0;margin:28px 0;font-size:15px;
  border-radius:16px;overflow:hidden;box-shadow:0 4px 24px rgba(29,29,31,.07);display:block;overflow-x:auto;background:#fff}
.gd-body th{background:#1d1d1f;color:#fff;text-align:left;padding:14px 16px;font-weight:700;white-space:nowrap}
.gd-body td{padding:13px 16px;border-top:1px solid #ececf0;color:#3a3a3c;min-width:110px;vertical-align:top}
.gd-body tbody tr:nth-child(even) td{background:#fafafa}

/* references */
.gd-refs{background:#f5f5f7;border-radius:16px;padding:24px 28px;margin:40px 0;font-size:14.5px;color:#6e6e73}
.gd-refs .t{font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#86868b;margin-bottom:10px}
.gd-refs p{font-size:14.5px;margin:0 0 8px;color:#6e6e73}

@media(prefers-reduced-motion:no-preference){
  .gd-rv{opacity:0;transform:translateY(26px);transition:opacity .7s cubic-bezier(.25,.1,.25,1),transform .7s cubic-bezier(.25,.1,.25,1)}
  .gd-rv.visible{opacity:1;transform:none}
}

.gd-body>.gd-wrap>p:first-child{font-size:20px;line-height:1.65;color:#3a3a3c}
.gd-kicker+p{margin-top:0}
