/*
 * Jiedu compact + mobile responsive overrides
 * Purpose: shrink oversized titles/subtitles, reduce vertical gaps, and fix mobile layouts across all child-theme templates.
 * Loaded after the existing theme styles from functions.php.
 */

:root {
  --jd-container: 1120px;
  --jd-content: 760px;
  --jd-shadow: 0 8px 24px rgba(15, 23, 42, 0.055);
  --jd-radius-md: 16px;
  --jd-radius-lg: 22px;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

body {
  font-size: 16px !important;
  line-height: 1.72 !important;
}

body * {
  box-sizing: border-box;
}

img,
svg,
video,
iframe {
  max-width: 100%;
}

.jiedu-container,
.jiedu-narrow,
.jf-container,
.jt-wrap,
.jw-container,
.jw-wrap,
.jw-narrow,
.jws-container,
.jws-narrow,
.jd-container {
  width: min(100% - 28px, 1120px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Header: lower height, tighter logo/menu, safer mobile menu. */
.jiedu-site-header {
  background: rgba(250, 250, 248, 0.98) !important;
}

.jiedu-header-main {
  min-height: 56px !important;
  padding: 6px 0 !important;
  gap: 12px !important;
}

.jiedu-branding {
  min-width: 0 !important;
  flex-basis: 330px !important;
}

.jiedu-branding__link {
  gap: 8px !important;
}

.jiedu-branding__logo,
.jiedu-branding__mark {
  width: 38px !important;
  height: 38px !important;
  flex-basis: 38px !important;
  border-radius: 11px !important;
}

.jiedu-branding__text strong {
  font-size: 16px !important;
  line-height: 1.12 !important;
}

.jiedu-branding__text small {
  font-size: 11px !important;
  line-height: 1.22 !important;
  max-width: 280px !important;
}

.jiedu-menu {
  gap: 2px !important;
}

.jiedu-menu a {
  padding: 6px 7px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.jiedu-header-cta .jiedu-button,
.jiedu-button,
.wp-block-button__link,
button,
input[type="submit"] {
  min-height: 38px !important;
  padding: 8px 14px !important;
  font-size: 14px !important;
}

/* Footer: remove large blank areas. */
.jiedu-site-footer {
  margin-top: 0 !important;
}

.jiedu-footer-grid {
  gap: 18px !important;
  padding: 22px 0 16px !important;
}

.jiedu-site-footer h3 {
  margin-bottom: 8px !important;
  font-size: 16px !important;
}

.jiedu-site-footer p,
.jiedu-site-footer li,
.jiedu-site-footer a {
  font-size: 14px !important;
  line-height: 1.62 !important;
}

.jiedu-site-footer li {
  margin: 5px 0 !important;
}

.jiedu-footer-bottom {
  padding: 10px 0 14px !important;
  gap: 10px !important;
  font-size: 13px !important;
}

/* Generic page/article title and content spacing. */
.jiedu-section {
  padding: 34px 0 !important;
}

.jiedu-single {
  padding: 12px 0 34px !important;
}

.jiedu-single__hero {
  margin-bottom: 16px !important;
}

.jiedu-single__header {
  padding: 18px 20px !important;
  border-radius: 16px !important;
  box-shadow: var(--jd-shadow) !important;
}

.jiedu-single__title {
  font-size: clamp(23px, 2.6vw, 32px) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.018em !important;
  margin: 0 0 8px !important;
}

.jiedu-single__summary {
  font-size: 15.5px !important;
  line-height: 1.62 !important;
}

.jiedu-single__meta {
  margin-top: 10px !important;
  gap: 6px !important;
}

.jiedu-meta-pill,
.jiedu-kicker,
.real-story-badge {
  font-size: 12px !important;
  padding: 5px 9px !important;
}

.jiedu-single__help,
.medical-disclaimer,
.expert-tip,
.jiedu-author-box,
.jiedu-inline-note {
  margin: 16px 0 !important;
  padding: 14px 16px !important;
  border-radius: 14px !important;
}

.jiedu-prose,
.entry-content {
  font-size: 16px !important;
  line-height: 1.76 !important;
}

.jiedu-prose p,
.entry-content p,
.wp-block-paragraph {
  margin-bottom: 0.9em !important;
}

.jiedu-prose ul,
.jiedu-prose ol,
.entry-content ul,
.entry-content ol {
  margin-bottom: 1em !important;
}

.jiedu-prose h1,
.entry-content h1 {
  font-size: clamp(23px, 2.6vw, 30px) !important;
  line-height: 1.28 !important;
  margin: 1.1em 0 0.45em !important;
}

.jiedu-prose h2,
.entry-content h2,
.jiedu-section-title {
  font-size: clamp(20px, 2.1vw, 25px) !important;
  line-height: 1.32 !important;
  margin: 1.05em 0 0.45em !important;
}

.jiedu-prose h3,
.entry-content h3 {
  font-size: clamp(18px, 1.8vw, 21px) !important;
  line-height: 1.38 !important;
  margin: 0.95em 0 0.38em !important;
}

.jiedu-prose h4,
.entry-content h4 {
  font-size: 17px !important;
  line-height: 1.42 !important;
}

.jiedu-quick-card,
.jiedu-related-card,
.jiedu-nav-card,
.jiedu-selftest,
.jiedu-calculator,
.jiedu-pledge {
  padding: 16px !important;
  border-radius: 16px !important;
}

.jiedu-related-grid,
.jiedu-quick-links,
.jiedu-single__nav,
.jiedu-tools-shell,
.jiedu-form-grid,
.jiedu-calculator-form,
.jiedu-pledge-form {
  gap: 14px !important;
}

/* Homepage: smaller hero title/subtitle and compact sections. */
.jd-page-home .jd-hero {
  padding: 18px 0 16px !important;
}

.jd-page-home .jd-hero__grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(280px, 0.52fr) !important;
  gap: 18px !important;
  align-items: center !important;
}

.jd-page-home .jd-hero__heading {
  max-width: 620px !important;
  font-size: clamp(28px, 3.4vw, 40px) !important;
  line-height: 1.18 !important;
  letter-spacing: -0.025em !important;
}

.jd-page-home .jd-hero__subheading {
  margin-top: 8px !important;
  font-size: clamp(17px, 2vw, 22px) !important;
  line-height: 1.34 !important;
}

.jd-page-home .jd-hero__body {
  max-width: 600px !important;
  margin-top: 8px !important;
  font-size: 15.5px !important;
  line-height: 1.62 !important;
}

.jd-page-home .jd-hero__actions,
.jd-page-home .jd-final-cta__actions,
.jd-page-home .jd-family__actions {
  margin-top: 14px !important;
  gap: 8px !important;
}

.jd-page-home .jd-btn {
  min-height: 38px !important;
  padding: 8px 13px !important;
  font-size: 14px !important;
}

.jd-page-home .jd-hero-card,
.jd-page-home .jd-emergency__copy,
.jd-page-home .jd-crisis-card,
.jd-page-home .jd-bento__card,
.jd-page-home .jd-path-card,
.jd-page-home .jd-family-tip,
.jd-page-home .jd-faq-item,
.jd-page-home .jd-post-card,
.jd-page-home .jd-standard-card {
  padding: 16px !important;
  border-radius: 16px !important;
  box-shadow: 0 7px 18px rgba(15, 36, 55, 0.045) !important;
}

.jd-page-home .jd-hero-card h2 {
  font-size: clamp(18px, 1.8vw, 22px) !important;
  line-height: 1.32 !important;
  margin: 0 0 8px !important;
}

.jd-page-home .jd-hero-card p,
.jd-page-home .jd-mini-steps span,
.jd-page-home .jd-emergency__copy > p,
.jd-page-home .jd-crisis-card p,
.jd-page-home .jd-bento__card p,
.jd-page-home .jd-path-card p,
.jd-page-home .jd-family-tip p,
.jd-page-home .jd-faq-item p,
.jd-page-home .jd-post-card p,
.jd-page-home .jd-section-head p {
  font-size: 14.5px !important;
  line-height: 1.6 !important;
}

.jd-page-home .jd-mini-steps,
.jd-page-home .jd-steps,
.jd-page-home .jd-bento,
.jd-page-home .jd-path-grid,
.jd-page-home .jd-standard-grid,
.jd-page-home .jd-post-grid,
.jd-page-home .jd-faq-grid,
.jd-page-home .jd-family__cards,
.jd-page-home .jd-trust-bar {
  gap: 12px !important;
}

.jd-page-home .jd-mini-steps li,
.jd-page-home .jd-steps__item,
.jd-page-home .jd-trust-bar__item {
  padding: 10px !important;
  border-radius: 12px !important;
}

.jd-page-home .jd-trust-bar {
  margin-top: 14px !important;
}

.jd-page-home .jd-trust-bar__item strong {
  font-size: 17px !important;
}

.jd-page-home .jd-steps__item {
  grid-template-columns: 38px minmax(0, 1fr) !important;
}

.jd-page-home .jd-steps__num,
.jd-page-home .jd-path-card__icon {
  width: 38px !important;
  height: 38px !important;
  font-size: 13px !important;
  border-radius: 12px !important;
}

.jd-page-home .jd-emergency,
.jd-page-home .jd-standards,
.jd-page-home .jd-tools,
.jd-page-home .jd-paths,
.jd-page-home .jd-family,
.jd-page-home .jd-latest,
.jd-page-home .jd-stories,
.jd-page-home .jd-faq,
.jd-page-home .jd-final-cta {
  padding: 24px 0 !important;
}

.jd-page-home .jd-section-head {
  margin-bottom: 14px !important;
  max-width: 600px !important;
}

.jd-page-home .jd-section-head h2,
.jd-page-home .jd-emergency__copy h2,
.jd-page-home .jd-family__header h2,
.jd-page-home .jd-final-cta__inner h2 {
  font-size: clamp(20px, 2.2vw, 27px) !important;
  line-height: 1.3 !important;
  letter-spacing: -0.015em !important;
  margin-bottom: 7px !important;
}

.jd-page-home .jd-crisis-card h3,
.jd-page-home .jd-bento__card h3,
.jd-page-home .jd-path-card h3,
.jd-page-home .jd-family-tip h3,
.jd-page-home .jd-faq-item h3,
.jd-page-home .jd-post-card h3,
.jd-page-home .jd-standard-card h3 {
  font-size: 18px !important;
  line-height: 1.34 !important;
  margin: 0 0 7px !important;
}

.jd-page-home .jd-bento__card {
  min-height: 190px !important;
}

.jd-page-home .jd-bento__visual {
  height: 92px !important;
}

.jd-page-home .jd-path-card {
  grid-template-columns: 48px minmax(0, 1fr) !important;
}

.jd-page-home .jd-family__grid {
  gap: 16px !important;
}

.jd-page-home .jd-family__header,
.jd-page-home .jd-final-cta__inner {
  padding: 20px !important;
  border-radius: 18px !important;
}

.jd-page-home .jd-final-cta__inner p {
  margin-top: 6px !important;
  font-size: 15.5px !important;
}

.jd-page-home .jd-disclaimer {
  margin-top: 12px !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

/* Shared foundation templates: jf-* pages. */
.jiedu-foundation .jf-hero {
  padding: 24px 0 14px !important;
}

.jiedu-foundation .jf-hero-grid,
.jiedu-foundation .jf-grid,
.jiedu-foundation .jf-grid-2,
.jiedu-foundation .jf-final {
  gap: 14px !important;
}

.jiedu-foundation .jf-card,
.jiedu-foundation .jf-faq details,
.jiedu-foundation .jf-final,
.jiedu-foundation .jf-note,
.jiedu-foundation .jf-table-wrap {
  padding: 16px !important;
  border-radius: 16px !important;
  box-shadow: 0 7px 20px rgba(17, 34, 51, 0.045) !important;
}

.jiedu-foundation .jf-kicker,
.jiedu-foundation .jf-pill {
  margin-bottom: 8px !important;
  padding: 5px 9px !important;
  font-size: 12px !important;
  letter-spacing: 0.035em !important;
}

.jiedu-foundation .jf-breadcrumb {
  margin-bottom: 8px !important;
  font-size: 12.5px !important;
}

.jiedu-foundation .jf-hero h1 {
  font-size: clamp(24px, 3vw, 36px) !important;
  line-height: 1.22 !important;
  letter-spacing: -0.018em !important;
  margin: 0 0 10px !important;
}

.jiedu-foundation .jf-lead {
  font-size: 15.5px !important;
  line-height: 1.64 !important;
  margin-bottom: 12px !important;
}

.jiedu-foundation .jf-actions {
  gap: 8px !important;
  margin-top: 14px !important;
}

.jiedu-foundation .jf-btn {
  min-height: 38px !important;
  padding: 8px 13px !important;
  font-size: 14px !important;
}

.jiedu-foundation .jf-nav {
  top: 56px !important;
  padding: 7px 0 !important;
}

.jiedu-foundation .jf-nav .jf-container {
  gap: 8px !important;
}

.jiedu-foundation .jf-nav a {
  padding: 6px 10px !important;
  font-size: 13px !important;
}

.jiedu-foundation .jf-section {
  padding: 22px 0 !important;
}

.jiedu-foundation .jf-section h2,
.jiedu-foundation .jf-card h2,
.jiedu-foundation .jf-final h2 {
  font-size: clamp(20px, 2.25vw, 27px) !important;
  line-height: 1.32 !important;
  margin: 0 0 10px !important;
}

.jiedu-foundation .jf-section h3,
.jiedu-foundation .jf-card h3 {
  font-size: 18px !important;
  line-height: 1.38 !important;
  margin: 14px 0 7px !important;
}

.jiedu-foundation .jf-prose p,
.jiedu-foundation .jf-prose li,
.jiedu-foundation .jf-card p,
.jiedu-foundation .jf-card li,
.jiedu-foundation .jf-final p {
  font-size: 15.5px !important;
  line-height: 1.68 !important;
}

.jiedu-foundation .jf-prose p {
  margin-bottom: 10px !important;
}

.jiedu-foundation .jf-table th,
.jiedu-foundation .jf-table td {
  padding: 10px !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

/* Tool templates: jt-* pages. */
.jiedu-tool-page .jt-hero {
  padding: 26px 0 16px !important;
}

.jiedu-tool-page .jt-hero h1 {
  font-size: clamp(24px, 3.1vw, 36px) !important;
  line-height: 1.22 !important;
  margin: 10px 0 !important;
}

.jiedu-tool-page .jt-lead {
  font-size: 15.5px !important;
  line-height: 1.65 !important;
}

.jiedu-tool-page .jt-actions {
  gap: 8px !important;
  margin-top: 14px !important;
}

.jiedu-tool-page .jt-btn {
  min-height: 38px !important;
  padding: 8px 13px !important;
  font-size: 14px !important;
}

.jiedu-tool-page .jt-section {
  padding: 22px 0 !important;
}

.jiedu-tool-page .jt-card,
.jiedu-tool-page .jt-final,
.jiedu-tool-page .jt-note {
  padding: 16px !important;
  border-radius: 16px !important;
  box-shadow: 0 7px 20px rgba(15, 35, 66, 0.045) !important;
}

.jiedu-tool-page .jt-grid {
  gap: 14px !important;
}

.jiedu-tool-page .jt-card h2,
.jiedu-tool-page .jt-card h3,
.jiedu-tool-page .jt-final h2 {
  font-size: clamp(19px, 2vw, 24px) !important;
  line-height: 1.32 !important;
  margin-bottom: 8px !important;
}

.jiedu-tool-page .jt-card p,
.jiedu-tool-page .jt-card li,
.jiedu-tool-page .jt-final p {
  font-size: 15px !important;
  line-height: 1.65 !important;
}

/* World Cup templates: jw-* and jws-* pages. */
.jw-page .jw-hero,
.jiedu-worldcup-complete .jw-hero,
.jws-page .jws-hero {
  padding: 28px 0 18px !important;
}

.jw-page .jw-hero-grid,
.jiedu-worldcup-complete .jw-hero-grid,
.jws-page .jws-hero-grid,
.jw-page .jw-grid,
.jiedu-worldcup-complete .jw-grid,
.jws-page .jws-grid,
.jw-page .jw-link-grid,
.jw-page .jw-grid-2,
.jws-page .jws-two,
.jws-page .jws-three,
.jws-page .jws-four,
.jw-page .jw-three,
.jw-page .jw-four,
.jw-page .jw-two {
  gap: 14px !important;
}

.jw-page .jw-title,
.jw-page .jw-hero h1,
.jiedu-worldcup-complete .jw-title,
.jiedu-worldcup-complete .jw-hero h1,
.jws-page .jws-title {
  font-size: clamp(24px, 3vw, 36px) !important;
  line-height: 1.22 !important;
  letter-spacing: -0.018em !important;
  margin: 10px 0 10px !important;
}

.jw-page .jw-lead,
.jiedu-worldcup-complete .jw-lead,
.jws-page .jws-lead,
.jws-page .jws-text,
.jw-page .jw-text {
  font-size: 15.5px !important;
  line-height: 1.64 !important;
  margin-bottom: 12px !important;
}

.jw-page .jw-actions,
.jiedu-worldcup-complete .jw-actions,
.jws-page .jws-actions,
.jw-page .jw-meta,
.jws-page .jws-meta {
  gap: 8px !important;
  margin-top: 12px !important;
}

.jw-page .jw-btn,
.jiedu-worldcup-complete .jw-btn,
.jws-page .jws-btn {
  min-height: 38px !important;
  padding: 8px 13px !important;
  font-size: 14px !important;
}

.jw-page .jw-kicker,
.jiedu-worldcup-complete .jw-kicker,
.jws-page .jws-kicker,
.jw-page .jw-badge,
.jiedu-worldcup-complete .jw-badge,
.jws-page .jws-badge {
  padding: 5px 9px !important;
  font-size: 12px !important;
}

.jw-page .jw-breadcrumb,
.jiedu-worldcup-complete .jw-breadcrumb,
.jws-page .jws-breadcrumb,
.jw-page .jw-crumb {
  margin-bottom: 8px !important;
  font-size: 12.5px !important;
}

.jw-page .jw-section,
.jiedu-worldcup-complete .jw-section,
.jws-page .jws-section {
  padding: 24px 0 !important;
}

.jw-page .jw-card,
.jw-page .jw-hero-card,
.jw-page .jw-side-card,
.jw-page .jw-mini-card,
.jw-page .jw-prose,
.jw-page .jw-note,
.jw-page .jw-alert,
.jw-page .jw-danger,
.jw-page .jw-safe,
.jw-page .jw-danger-box,
.jw-page .jw-tool-strip,
.jw-page .jw-footer-cta,
.jw-page .jw-cta,
.jiedu-worldcup-complete .jw-card,
.jiedu-worldcup-complete .jw-prose,
.jiedu-worldcup-complete .jw-tool-strip,
.jiedu-worldcup-complete .jw-danger-box,
.jiedu-worldcup-complete .jw-footer-cta,
.jws-page .jws-card,
.jws-page .jws-prose,
.jws-page .jws-alert,
.jws-page .jws-tool-strip,
.jws-page .jws-footer-cta,
.jws-page .jws-faq details,
.jw-page .jw-faq details,
.jiedu-worldcup-complete .jw-faq details {
  padding: 16px !important;
  border-radius: 16px !important;
  box-shadow: 0 7px 20px rgba(16, 32, 51, 0.045) !important;
}

.jw-page .jw-section-head,
.jiedu-worldcup-complete .jw-section-head,
.jws-page .jws-section-head {
  margin-bottom: 14px !important;
}

.jw-page .jw-section-head h2,
.jiedu-worldcup-complete .jw-section-head h2,
.jws-page .jws-section-head h2,
.jw-page .jw-content h2,
.jw-page .jw-prose h2,
.jiedu-worldcup-complete .jw-prose h2,
.jws-page .jws-prose h2,
.jw-page .jw-card h2,
.jiedu-worldcup-complete .jw-card h2,
.jws-page .jws-card h2,
.jw-page .jw-footer-cta h2,
.jiedu-worldcup-complete .jw-footer-cta h2,
.jws-page .jws-footer-cta h2,
.jw-page .jw-cta h2,
.jw-page .jw-tool-strip h2,
.jws-page .jws-tool-strip h2 {
  font-size: clamp(20px, 2.25vw, 27px) !important;
  line-height: 1.32 !important;
  margin: 0 0 10px !important;
}

.jw-page .jw-content h3,
.jw-page .jw-prose h3,
.jiedu-worldcup-complete .jw-prose h3,
.jws-page .jws-prose h3,
.jw-page .jw-card h3,
.jiedu-worldcup-complete .jw-card h3,
.jws-page .jws-card h3,
.jw-page .jw-mini-card h3 {
  font-size: 18px !important;
  line-height: 1.38 !important;
  margin: 14px 0 7px !important;
}

.jw-page .jw-content p,
.jw-page .jw-content li,
.jw-page .jw-card p,
.jw-page .jw-card li,
.jw-page .jw-prose p,
.jw-page .jw-prose li,
.jiedu-worldcup-complete .jw-card p,
.jiedu-worldcup-complete .jw-card li,
.jiedu-worldcup-complete .jw-prose p,
.jiedu-worldcup-complete .jw-prose li,
.jws-page .jws-card p,
.jws-page .jws-card li,
.jws-page .jws-prose p,
.jws-page .jws-prose li,
.jws-page .jws-section-head p,
.jw-page .jw-section-head p,
.jiedu-worldcup-complete .jw-section-head p,
.jw-page .jw-footer-cta p,
.jiedu-worldcup-complete .jw-footer-cta p,
.jws-page .jws-footer-cta p {
  font-size: 15.5px !important;
  line-height: 1.68 !important;
}

.jw-page .jw-nav,
.jiedu-worldcup-complete .jw-mini-nav,
.jw-page .jw-mini-nav,
.jws-page .jws-mini-nav {
  top: 56px !important;
}

.jw-page .jw-nav a,
.jiedu-worldcup-complete .jw-mini-nav a,
.jw-page .jw-mini-nav a,
.jws-page .jws-mini-nav a {
  padding: 6px 10px !important;
  font-size: 13px !important;
}

.jw-page .jw-nav .jw-wrap,
.jw-page .jw-nav-inner,
.jiedu-worldcup-complete .jw-mini-nav .jw-container,
.jws-page .jws-mini-nav .jws-container {
  gap: 8px !important;
  padding-top: 7px !important;
  padding-bottom: 7px !important;
}

.jw-page table,
.jws-page table,
.jiedu-worldcup-complete table,
.jiedu-prose table,
.entry-content table {
  font-size: 14px !important;
}

.jw-page th,
.jw-page td,
.jws-page th,
.jws-page td,
.jiedu-worldcup-complete th,
.jiedu-worldcup-complete td,
.jiedu-prose th,
.jiedu-prose td,
.entry-content th,
.entry-content td {
  padding: 10px !important;
  line-height: 1.55 !important;
}

/* Tablet layout: keep cards readable instead of squeezing four columns. */
@media (max-width: 1100px) {
  .jiedu-header-cta {
    display: none !important;
  }

  .jd-page-home .jd-bento,
  .jd-page-home .jd-path-grid,
  .jd-page-home .jd-standard-grid,
  .jd-page-home .jd-post-grid,
  .jd-page-home .jd-faq-grid,
  .jiedu-foundation .jf-grid,
  .jiedu-tool-page .jt-grid,
  .jw-page .jw-four,
  .jiedu-worldcup-complete .jw-four,
  .jws-page .jws-four {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .jd-page-home .jd-bento__card--wide,
  .jd-page-home .jd-bento__card--navy {
    grid-column: span 2 !important;
  }
}

/* Mobile: one column, smaller titles, tighter gaps, no horizontal overflow. */
@media (max-width: 820px) {
  .jiedu-container,
  .jiedu-narrow,
  .jf-container,
  .jt-wrap,
  .jw-container,
  .jw-wrap,
  .jw-narrow,
  .jws-container,
  .jws-narrow,
  .jd-container {
    width: min(100% - 22px, 1120px) !important;
  }

  .jiedu-header-main {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas: "brand toggle" "nav nav" !important;
    align-items: center !important;
    min-height: 52px !important;
    padding: 7px 0 !important;
  }

  .jiedu-branding {
    grid-area: brand !important;
    min-width: 0 !important;
    flex-basis: auto !important;
  }

  .jiedu-menu-toggle {
    display: inline-flex !important;
    grid-area: toggle !important;
    justify-self: end !important;
    min-height: 34px !important;
    padding: 7px 11px !important;
    font-size: 13px !important;
  }

  .jiedu-main-nav {
    grid-area: nav !important;
    display: none !important;
    width: 100% !important;
    padding-top: 6px !important;
  }

  .jiedu-main-nav.is-open {
    display: block !important;
  }

  .jiedu-menu {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 4px !important;
    padding: 8px !important;
    border-radius: 14px !important;
  }

  .jiedu-menu a {
    padding: 10px 12px !important;
    font-size: 14px !important;
  }

  .jiedu-branding__text small {
    display: none !important;
  }

  .jiedu-branding__text strong {
    white-space: normal !important;
    font-size: 15px !important;
  }

  .jiedu-branding__logo,
  .jiedu-branding__mark {
    width: 34px !important;
    height: 34px !important;
    flex-basis: 34px !important;
  }

  .jd-page-home .jd-hero__grid,
  .jd-page-home .jd-emergency__grid,
  .jd-page-home .jd-family__grid,
  .jiedu-foundation .jf-hero-grid,
  .jiedu-foundation .jf-grid,
  .jiedu-foundation .jf-grid-2,
  .jiedu-foundation .jf-final,
  .jiedu-tool-page .jt-grid,
  .jw-page .jw-hero-grid,
  .jw-page .jw-grid,
  .jw-page .jw-grid-2,
  .jw-page .jw-link-grid,
  .jw-page .jw-cta,
  .jw-page .jw-footer-cta,
  .jw-page .jw-four,
  .jw-page .jw-three,
  .jw-page .jw-two,
  .jiedu-worldcup-complete .jw-hero-grid,
  .jiedu-worldcup-complete .jw-four,
  .jiedu-worldcup-complete .jw-three,
  .jiedu-worldcup-complete .jw-two,
  .jiedu-worldcup-complete .jw-footer-cta,
  .jws-page .jws-hero-grid,
  .jws-page .jws-four,
  .jws-page .jws-three,
  .jws-page .jws-two,
  .jws-page .jws-footer-cta,
  .jiedu-related-grid,
  .jiedu-quick-links,
  .jiedu-single__nav,
  .jiedu-form-grid {
    grid-template-columns: 1fr !important;
  }

  .jd-page-home .jd-bento,
  .jd-page-home .jd-path-grid,
  .jd-page-home .jd-standard-grid,
  .jd-page-home .jd-post-grid,
  .jd-page-home .jd-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .jd-page-home .jd-bento__card--wide,
  .jd-page-home .jd-bento__card--navy {
    grid-column: auto !important;
  }

  .jd-page-home .jd-bento__card--wide {
    grid-template-columns: 1fr !important;
  }

  .jd-page-home .jd-hero__heading {
    font-size: 28px !important;
    line-height: 1.24 !important;
  }

  .jd-page-home .jd-hero__subheading {
    font-size: 17px !important;
  }

  .jd-page-home .jd-hero__body,
  .jiedu-foundation .jf-lead,
  .jiedu-tool-page .jt-lead,
  .jw-page .jw-lead,
  .jiedu-worldcup-complete .jw-lead,
  .jws-page .jws-lead {
    font-size: 15px !important;
  }

  .jiedu-single__title,
  .jiedu-prose h1,
  .entry-content h1,
  .jiedu-foundation .jf-hero h1,
  .jiedu-tool-page .jt-hero h1,
  .jw-page .jw-title,
  .jw-page .jw-hero h1,
  .jiedu-worldcup-complete .jw-title,
  .jiedu-worldcup-complete .jw-hero h1,
  .jws-page .jws-title {
    font-size: 25px !important;
    line-height: 1.28 !important;
  }

  .jiedu-prose h2,
  .entry-content h2,
  .jd-page-home .jd-section-head h2,
  .jd-page-home .jd-emergency__copy h2,
  .jd-page-home .jd-family__header h2,
  .jd-page-home .jd-final-cta__inner h2,
  .jiedu-foundation .jf-section h2,
  .jiedu-foundation .jf-card h2,
  .jiedu-tool-page .jt-card h2,
  .jw-page .jw-section-head h2,
  .jw-page .jw-content h2,
  .jw-page .jw-prose h2,
  .jiedu-worldcup-complete .jw-section-head h2,
  .jiedu-worldcup-complete .jw-prose h2,
  .jws-page .jws-section-head h2,
  .jws-page .jws-prose h2 {
    font-size: 20px !important;
    line-height: 1.34 !important;
  }

  .jd-page-home .jd-hero,
  .jiedu-foundation .jf-hero,
  .jiedu-tool-page .jt-hero,
  .jw-page .jw-hero,
  .jiedu-worldcup-complete .jw-hero,
  .jws-page .jws-hero {
    padding-top: 18px !important;
    padding-bottom: 14px !important;
  }

  .jd-page-home .jd-emergency,
  .jd-page-home .jd-standards,
  .jd-page-home .jd-tools,
  .jd-page-home .jd-paths,
  .jd-page-home .jd-family,
  .jd-page-home .jd-latest,
  .jd-page-home .jd-stories,
  .jd-page-home .jd-faq,
  .jd-page-home .jd-final-cta,
  .jiedu-section,
  .jiedu-foundation .jf-section,
  .jiedu-tool-page .jt-section,
  .jw-page .jw-section,
  .jiedu-worldcup-complete .jw-section,
  .jws-page .jws-section {
    padding: 18px 0 !important;
  }

  .jd-page-home .jd-hero-card,
  .jd-page-home .jd-emergency__copy,
  .jd-page-home .jd-crisis-card,
  .jd-page-home .jd-bento__card,
  .jd-page-home .jd-path-card,
  .jd-page-home .jd-family-tip,
  .jd-page-home .jd-faq-item,
  .jiedu-single__header,
  .jiedu-foundation .jf-card,
  .jiedu-tool-page .jt-card,
  .jw-page .jw-card,
  .jw-page .jw-hero-card,
  .jw-page .jw-side-card,
  .jw-page .jw-prose,
  .jiedu-worldcup-complete .jw-card,
  .jiedu-worldcup-complete .jw-prose,
  .jws-page .jws-card,
  .jws-page .jws-prose {
    padding: 14px !important;
    border-radius: 14px !important;
  }

  .jd-page-home .jd-path-card,
  .jd-page-home .jd-steps__item {
    grid-template-columns: 1fr !important;
  }

  .jd-page-home .jd-bento__visual {
    display: none !important;
  }

  .jiedu-foundation .jf-nav,
  .jw-page .jw-nav,
  .jw-page .jw-mini-nav,
  .jiedu-worldcup-complete .jw-mini-nav,
  .jws-page .jws-mini-nav {
    position: relative !important;
    top: auto !important;
  }

  .jiedu-floating-help,
  .jd-float-help {
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    justify-content: center !important;
  }

  .jd-float-help__btn strong {
    display: none !important;
  }

  .jiedu-footer-grid,
  .jiedu-footer-bottom {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 560px) {
  body {
    font-size: 15.5px !important;
    line-height: 1.68 !important;
  }

  .jiedu-container,
  .jiedu-narrow,
  .jf-container,
  .jt-wrap,
  .jw-container,
  .jw-wrap,
  .jw-narrow,
  .jws-container,
  .jws-narrow,
  .jd-container {
    width: min(100% - 20px, 1120px) !important;
  }

  .jiedu-single__title,
  .jiedu-foundation .jf-hero h1,
  .jiedu-tool-page .jt-hero h1,
  .jw-page .jw-title,
  .jw-page .jw-hero h1,
  .jiedu-worldcup-complete .jw-title,
  .jiedu-worldcup-complete .jw-hero h1,
  .jws-page .jws-title {
    font-size: 23px !important;
  }

  .jd-page-home .jd-hero__heading {
    font-size: 26px !important;
  }

  .jiedu-button,
  .wp-block-button__link,
  .jd-page-home .jd-btn,
  .jiedu-foundation .jf-btn,
  .jiedu-tool-page .jt-btn,
  .jw-page .jw-btn,
  .jiedu-worldcup-complete .jw-btn,
  .jws-page .jws-btn {
    width: 100% !important;
  }

  .jiedu-foundation .jf-actions,
  .jiedu-tool-page .jt-actions,
  .jw-page .jw-actions,
  .jiedu-worldcup-complete .jw-actions,
  .jws-page .jws-actions,
  .jd-page-home .jd-hero__actions,
  .jd-page-home .jd-final-cta__actions,
  .jd-page-home .jd-family__actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .jiedu-prose table,
  .entry-content table,
  .jw-page table,
  .jws-page table,
  .jiedu-worldcup-complete table {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    white-space: normal !important;
  }
}
