@font-face{font-family:Slab;src:url(fonts/slab.woff) format("woff");font-weight:100 900;font-display:swap}
@font-face{font-family:DMSans;src:url(fonts/dmsans.woff) format("woff");font-weight:100 900;font-display:swap}
*{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}
body{background:#f6f1e7;color:#153f38;font:400 1.0625rem/1.6 DMSans,system-ui,-apple-system,"Segoe UI",sans-serif}
.wrap{max-width:760px;margin:0 auto;padding:0 20px}
a{color:#2e6b52;text-underline-offset:4px;text-decoration-thickness:2px}a:focus-visible,.btn:focus-visible{outline:3px solid #153f38;outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:#fff;padding:8px 12px;z-index:9}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
h1,h2,h3,.brand,.fb{font-family:Slab,Georgia,serif}
.hero{background:#1b3a57;color:#fff;padding:28px 0 44px}
.brand{font-weight:800;font-size:1.05rem;letter-spacing:.02em;opacity:.95}
.k{display:inline-block;margin-top:28px;background:#fff;color:#1b3a57;font-weight:800;font-size:.8rem;letter-spacing:.12em;padding:6px 12px;border-radius:8px}
h1{font-weight:800;font-size:clamp(2.4rem,9vw,4rem);line-height:1.04;margin-top:16px;letter-spacing:-.01em}
.lead{font-size:1.15rem;margin-top:16px;color:#e3ebf1;max-width:36em}
.st{margin-top:16px;font-size:.98rem;color:#fff;border-left:4px solid #fff;padding-left:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;margin-top:24px;background:#d4a648;color:#153f38;font-weight:800;font-size:1.15rem;text-decoration:none;padding:16px 26px;border-radius:14px;box-shadow:5px 5px 0 #0c2924;min-height:56px;transition:transform .12s,box-shadow .12s}
.btn:hover{transform:translate(2px,2px);box-shadow:3px 3px 0 #0c2924}.btn-note{margin-top:10px;font-size:.92rem;color:#e3ebf1}
.sec{font-size:1.5rem;margin:40px 0 18px}
.cards{list-style:none;padding:0;display:grid;gap:22px}
.card{background:#fff;border:2px solid #153f38;border-radius:18px;padding:22px 20px;box-shadow:6px 6px 0 #153f38}
.card.fut{box-shadow:6px 6px 0 #2e6b52}
.chip{display:inline-block;background:#2e6b52;color:#fff;font-weight:700;font-size:.88rem;padding:5px 12px;border-radius:8px}.fut .chip{background:#2e6b52;color:#fff}
h3{font-size:1.35rem;line-height:1.22;margin-top:14px;display:flex;gap:12px;align-items:baseline}.n{color:#2e6b52;font-size:1rem;font-weight:800}
.m{margin-top:14px;background:#e8f0ea;border-radius:12px;padding:14px 16px}.m p+p{margin-top:8px}
.lbl{font-weight:800;color:#153f38;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}
.src{margin-top:14px;font-size:.95rem;font-weight:600}.src a{font-weight:700}
.end{margin-top:44px;background:#153f38;color:#f6f1e7;border-radius:20px;padding:28px 22px;box-shadow:6px 6px 0 #2e6b52}
.end h2{font-size:1.6rem}.end p{margin-top:12px;color:#e6eee9}.btn.alt{background:#d4a648;color:#153f38;box-shadow:5px 5px 0 #0c2924}
.share{margin-top:32px;display:flex;gap:14px;align-items:center;font-family:Slab,Georgia,serif;font-weight:700;font-size:1.25rem;line-height:1.3}.share svg{width:40px;height:40px;flex:none;color:#2e6b52}
.guide{margin:40px 0 44px;font-size:.95rem;color:#3d5f58;border-top:1px solid #d9cfbd;padding-top:18px}
footer{background:#153f38;color:#f6f1e7;padding:26px 0;border-top:4px solid #2e6b52}.fb{font-weight:700;font-size:1.15rem}footer p+p{margin-top:6px;color:#c9d8d2;font-size:.95rem}
@media(min-width:900px){.wrap{max-width:1040px;padding:0 40px}.hero{padding:36px 0 64px}.cards{grid-template-columns:1fr 1fr;gap:28px}.lead{font-size:1.3rem}}
@media(prefers-reduced-motion:reduce){.btn{transition:none}}