:root{--bg:#f6f3ec;--ink:#22303c;--muted:#5d6b78;--card:#fff;--line:#e3ddd0;--a:#2f6f8f;--b:#c2553a;--c:#4f8a4b}
*{box-sizing:border-box}
html{font-size:18px}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink);min-height:100vh;display:flex;flex-direction:column}
header{padding:2.2rem 1.2rem 1rem;text-align:center}
header h1{margin:0;font-size:clamp(2rem,5vw,3.2rem);letter-spacing:-.02em}
header p{margin:.5rem 0 0;color:var(--muted);font-size:1.05rem}
main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1rem 1.2rem 2rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.2rem}
.card{display:block;background:var(--card);border:1px solid var(--line);border-top:8px solid var(--a);border-radius:16px;padding:1.6rem 1.4rem;text-decoration:none;color:inherit;min-height:190px;transition:transform .12s,box-shadow .12s}
.card:hover,.card:focus-visible{transform:translateY(-3px);box-shadow:0 8px 22px rgba(34,48,60,.12);outline:none}
.card.b{border-top-color:var(--b)}.card.c{border-top-color:var(--c)}
.card h2{margin:0 0 .5rem;font-size:1.6rem}
.card p{margin:0;color:var(--muted);line-height:1.5}
.back{display:inline-block;margin-bottom:1rem;color:var(--a);text-decoration:none;font-weight:600}
.soon{background:var(--card);border:1px dashed var(--line);border-radius:16px;padding:2.5rem 1.4rem;text-align:center;color:var(--muted);font-size:1.15rem}
footer{text-align:center;padding:1rem;color:var(--muted);font-size:.8rem}
