/* === Global mobile typography & layout === */

/* Scale base font on small screens (≈ half size on tiny phones) */
@media (max-width: 720px){ html{ font-size:87.5%; } }  /* ~14px */
@media (max-width: 560px){ html{ font-size:62.5%; } }  /* ~10px */
@media (max-width: 420px){ html{ font-size:50%; } }    /* ~8px */

/* Comfortable page width on all pages */
.main-content{ max-width:900px; margin:0 auto; padding:0 1rem; line-height:1.65; }

/* Prevent ugly mid-word breaks globally */
.main-content, .main-content *{ overflow-wrap:normal; word-break:normal; hyphens:auto; }

/* Rem-sized headings so they downscale with the base */
.main-content h1{ font-size:1.35rem; margin:.9rem 0 .4rem; }
.main-content h2{ font-size:1.20rem; margin:.85rem 0 .4rem; }
.main-content h3{ font-size:1.05rem; margin:.8rem 0 .35rem; }
.main-content h4{ font-size:1.00rem; margin:.7rem 0 .30rem; }

/* ==== Contrast & Sharpness (global) ==== */

/* Use the system UI font stack and darker smoothing */
html, body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif;
  -webkit-font-smoothing:auto;  /* 'auto' is a hair darker than 'antialiased' */
  -moz-osx-font-smoothing:auto;
  text-rendering:optimizeLegibility;
}

/* Darker body text everywhere */
.main-content { color:#111; }
.main-content p,
.main-content li,
.main-content td,
.main-content th { color:#111; }

/* Headings: slightly heavier to look crisper */
.main-content h1,
.main-content h2,
.main-content h3,
.main-content h4 { font-weight:600; color:#0d1117; }

/* Nav: keep labels intact on wrap + darker tone */
.topnav a{
  white-space:nowrap; word-break:normal; overflow-wrap:normal;
  color:#0f1419; font-weight:600;
}

/* “Contact” box text slightly darker */
.contact{ color:#1f2328; }

/* Muted helper */
.muted{ color:#444; }

/* Hide Cayman's hero + footer globally; tighten top spacing */
.page-header{ display:none !important; }
footer.site-footer{ display:none !important; }
.main-content{ padding-top:0 !important; }
