:root{--sun:#ffc21a;--roast:#111;--bg:#fffaf0;--muted:#6b655c;--line:#ece4d2;font-family:Instrument Sans,system-ui,sans-serif;color:var(--roast)}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:inherit}.wrap{max-width:960px;margin:0 auto;padding:0 20px}header.top{display:flex;justify-content:space-between;align-items:center;padding:20px 0}.logo{font-weight:700;font-size:24px;letter-spacing:1px}.logo i{display:inline-block;width:10px;height:10px;background:var(--sun);border-radius:50%;margin-left:4px}.hero{padding:48px 0 32px}.hero h1{font-size:clamp(36px,7vw,64px);line-height:1.02;margin:0 0 16px;letter-spacing:-1.5px}.hero h1 span{background:var(--sun);padding:0 .15em;border-radius:.15em}.hero p{font-size:19px;color:var(--muted);max-width:560px}.btn{display:inline-block;text-decoration:none;font:inherit;font-weight:600;padding:14px 22px;border-radius:99px;border:2px solid var(--roast);background:none;cursor:pointer;margin:6px 8px 6px 0}.btn.primary{background:var(--sun);border-color:var(--sun)}.btn.dark{background:var(--roast);color:#fff}.section{padding:36px 0;border-top:1px solid var(--line)}.section h2{font-size:30px;margin:0 0 8px;letter-spacing:-.5px}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:18px;counter-reset:s}.step{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.step b{display:grid;place-items:center;width:30px;height:30px;background:var(--sun);border-radius:50%;margin-bottom:10px}.muted{color:var(--muted)}footer{padding:32px 0 48px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;display:flex;gap:20px;flex-wrap:wrap}.center{min-height:100vh;display:grid;place-items:center;text-align:center;padding:20px}.legal{max-width:720px;padding:24px 20px 64px;line-height:1.6}.legal h2{margin-top:28px}.note{background:#fff6d6;border:1px solid #f0d46a;padding:12px 14px;border-radius:12px;margin:16px 0}.tools{display:flex;gap:10px;flex-wrap:wrap;padding:16px 20px;background:#fff;border-bottom:1px solid var(--line);align-items:center}.tools input{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;min-width:240px}.poster{width:min(100%,640px);aspect-ratio:210/297;margin:24px auto;background:var(--sun);border-radius:24px;padding:6%;display:flex;flex-direction:column;align-items:center;justify-content:space-between;text-align:center;box-shadow:0 10px 40px #0002}.poster h2{font-size:clamp(28px,7vw,52px);margin:0;line-height:1.05;letter-spacing:-1px}.poster .qr{background:#fff;padding:5%;border-radius:20px;width:62%}.poster .qr img{width:100%;display:block}.poster .cafe{font-weight:700;font-size:clamp(14px,3vw,22px)}.poster .small{font-size:clamp(11px,2.2vw,16px)}@media print{.tools,.noprint{display:none!important}body{background:#fff}.poster{box-shadow:none;margin:0;width:100%;border-radius:0;height:100vh;aspect-ratio:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact}@page{size:A4;margin:0}}
