/* Homepage (/) only.
   Loaded after /staticfiles/mainfiles/platform/style.css (shared). */
/* ================= Homepage ================= */
.jd-home { font-family: "Segoe UI", "Helvetica Neue", Arial, system-ui, sans-serif; color: var(--sd-ink); }
.jd-home-hero { background: linear-gradient(135deg, #1d2559 0%, #2b3990 55%, #3b82f6 100%); color: #fff; padding: 64px 16px 92px; text-align: center; }
.jd-home-hero h1 { font-weight: 800; font-size: clamp(2rem, 4.6vw, 3.2rem); line-height: 1.15; margin: 0 auto 16px; max-width: 820px; }
.jd-home-hero p { font-size: 1.12rem; max-width: 680px; margin: 0 auto 26px; opacity: 0.95; }
.jd-home-hero .jd-cta-row { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.jd-home-hero .sd-btn { padding: 14px 26px; font-size: 1.05rem; }
.jd-home-hero .jd-hero-note { font-size: 0.86rem; opacity: 0.8; margin-top: 16px; }
.jd-home-block { padding: 40px 0 8px; }
.jd-home-block:first-of-type { padding-top: 0; }
.jd-home-head { display: flex; justify-content: space-between; align-items: flex-end; gap: 12px; flex-wrap: wrap; margin-bottom: 18px; }
.jd-home-head h2 { font-weight: 800; color: var(--sd-navy); font-size: 1.6rem; margin: 0 0 4px; }
.jd-home-head p { color: var(--sd-muted); margin: 0; }
.jd-home-head a.jd-see-all { font-weight: 700; color: var(--sd-brand); text-decoration: none; white-space: nowrap; }
.jd-home-head a.jd-see-all:hover { text-decoration: underline; }
.jd-home-bottom { padding: 44px 0 56px; }
