*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--pss-surface); color: var(--pss-ink); font: 400 17px/1.5 var(--pss-font); }
a { color: inherit; text-underline-offset: 3px; }
:focus-visible { outline: 2.5px solid var(--pss-ink); outline-offset: 3px; }
.pss-wrap { max-width: var(--pss-max); margin: 0 auto; padding: 0 var(--pss-edge); }
.pss-skip { position: absolute; left: -999px; }
.pss-skip:focus { left: var(--pss-edge); top: 8px; background: var(--pss-surface2); padding: 8px 12px; border-radius: var(--pss-radius-inner); }
.pss-header__inner { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; flex-wrap: wrap; }
.pss-brand { display: inline-flex; align-items: center; gap: 8px; font: 800 20px/1 var(--pss-font-display); text-decoration: none; }
.pss-nav { display: flex; gap: 20px; flex-wrap: wrap; }
.pss-nav a { display: inline-flex; align-items: center; min-height: 48px; }
.pss-hero { background: var(--pss-lime); color: var(--pss-on-lime); padding: 64px 0; }
@media (prefers-color-scheme: dark) { .pss-hero { background: var(--pss-surface2); color: var(--pss-ink); } }
.pss-display { font: 800 clamp(40px, 7vw, 64px)/1.05 var(--pss-font-display); letter-spacing: -0.01em; margin: 0 0 24px; }
.pss-lead { font-size: 20px; max-width: 36em; margin: 0 0 12px; }
.pss-button { display: inline-flex; align-items: center; min-height: 56px; padding: 0 28px; border-radius: 999px; background: var(--pss-ink); color: var(--pss-surface); font-weight: 600; text-decoration: none; margin-top: 16px; }
.pss-soon { font-weight: 600; margin-top: 24px; }
.pss-section { padding: 48px 0; }
.pss-section h2, .pss-prose h1 { font: 800 32px/1.15 var(--pss-font-display); margin: 0 0 24px; }
.pss-steps { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.pss-steps li, .pss-card { background: var(--pss-surface2); border-radius: var(--pss-radius); padding: 24px; }
.pss-steps h3 { font: 700 20px/1.25 var(--pss-font-display); margin: 0 0 8px; }
.pss-cols { display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); }
.pss-card ul, .pss-facts { padding-left: 1.2em; margin: 0; }
.pss-page { padding: 48px var(--pss-edge); }
.pss-prose { max-width: 42em; }
.pss-prose h2 { font: 700 22px/1.3 var(--pss-font-display); margin: 32px 0 8px; }
.pss-eyebrow { color: var(--pss-ink-muted); font-weight: 600; margin: 0 0 8px; }
.pss-404 { padding: 96px var(--pss-edge); }
.pss-footer { border-top: 1px solid var(--pss-outline); padding: 32px 0 48px; margin-top: 48px; }
.pss-footer__inner { display: grid; gap: 16px; }
.pss-footer__links { display: flex; flex-wrap: wrap; gap: 4px 20px; }
.pss-footer__links a { display: inline-flex; align-items: center; min-height: 48px; }
.pss-footer__fine { color: var(--pss-ink-muted); font-size: 13px; line-height: 1.4; margin: 0; }
@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; } }
