:root{--ink:#26352c;--paper:#fbf6ed;--orange:#d86f3b;--sage:#dce7d5;--line:#e5d8c4;font-family:"Hiragino Sans",system-ui,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 90% 0,#f5d7bf88,transparent 28rem),var(--paper)}main{max-width:800px;margin:auto;padding:42px 22px 80px}.brand{font:700 34px Georgia,serif;margin:0}.brand i{color:var(--orange)}.badge{display:inline-block;margin:14px 0 30px;background:#f2e6d7;color:#895b43;border-radius:99px;padding:5px 10px;font-size:12px}.eyebrow{font-size:12px;color:#5e7563;font-weight:700;letter-spacing:.1em}.hero h1,.form h1{font:500 clamp(34px,6vw,57px)/1.15 Georgia,serif;margin:9px 0 14px;letter-spacing:-.06em}.hero p,.hint{color:#687269}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.card,.button{border:1px solid var(--line);border-radius:16px;background:#fffdf8;color:inherit}.card{text-align:left;padding:20px;min-height:166px}.card strong{font:500 22px Georgia,serif;display:block;margin:16px 0 7px}.icon{font-size:25px;color:var(--orange)}.free,.question,.step{padding:20px;background:#fffdf8;border:1px solid var(--line);border-radius:16px;margin:18px 0}.free{background:var(--sage)}textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fff}.button{padding:11px 16px;font-weight:750;cursor:pointer}.primary{background:var(--ink);color:#fff}.ghost,.exit{background:transparent}.exit{border:0;color:#647168;text-decoration:underline;cursor:pointer}.options,.actions{display:flex;flex-wrap:wrap;gap:8px}.options button{padding:8px 11px;border:1px solid var(--line);background:#fff;border-radius:99px}.options button.selected{background:var(--ink);color:#fff}.planhead{padding:28px;background:var(--ink);color:#fff;border-radius:20px;margin-bottom:18px}.planhead .eyebrow{color:#e1f0db}.planhead h1{font:500 34px Georgia,serif;margin:5px 0}.step h2{font-size:13px;color:#5b735f}.step p{font:500 19px/1.45 Georgia,serif}.calm{padding:35px 5px}.calm h1{font:500 36px Georgia,serif}h1:focus{outline:3px solid #e5a36e;outline-offset:5px}dialog{border:0;border-radius:18px;max-width:min(92vw,460px)}dialog form{padding:28px}#toast{position:fixed;left:50%;bottom:20px;transform:translateX(-50%);opacity:0;visibility:hidden;background:var(--ink);color:#fff;padding:10px 14px;border-radius:10px}#toast.show{opacity:1;visibility:visible}@media(max-width:600px){main{padding:28px 18px 55px}.choices{grid-template-columns:1fr}.card{min-height:0}}
