:root {
  color-scheme: light;
  --ink: #173042;
  --muted: #5f7481;
  --blue: #176b87;
  --blue-dark: #0d4d67;
  --soft: #edf7f9;
  --line: #d6e5e9;
  --white: #fff;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: linear-gradient(145deg, #f9fcfd 0%, #eaf4f6 100%);
}

.shell { width: min(1080px, calc(100% - 36px)); margin: 0 auto; padding: 72px 0 36px; }
.hero { max-width: 780px; }
.eyebrow { margin: 0 0 12px; color: var(--blue); font-size: .82rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(2.2rem, 6vw, 4.2rem); line-height: 1.02; letter-spacing: -.045em; }
.intro { margin: 24px 0 0; color: var(--muted); font-size: 1.08rem; line-height: 1.7; }
.apps { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 22px; margin-top: 52px; }
.card { min-height: 270px; padding: 28px; border: 1px solid var(--line); border-radius: 22px; background: rgba(255,255,255,.88); box-shadow: 0 18px 45px rgba(37,75,91,.08); }
.card h2 { margin: 20px 0 12px; font-size: 1.45rem; }
.card p { margin: 0; color: var(--muted); line-height: 1.65; }
.status { display: inline-flex; padding: 7px 11px; border-radius: 999px; background: var(--soft); color: var(--blue-dark); font-size: .75rem; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.card a { display: inline-flex; gap: 8px; margin-top: 26px; color: var(--white); background: var(--blue); padding: 12px 17px; border-radius: 11px; text-decoration: none; font-weight: 750; }
.card a:hover, .card a:focus-visible { background: var(--blue-dark); }
.upcoming { opacity: .76; }
footer { margin-top: 48px; padding-top: 22px; border-top: 1px solid var(--line); color: var(--muted); font-size: .88rem; }

@media (max-width: 600px) {
  .shell { padding-top: 42px; }
  .card { min-height: 0; }
}
