:root{--ink:#153c36;--teal:#006a60;--muted:#60756e;--paper:#f8f7f1;--line:#d9e1d9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif;line-height:1.85}a{color:inherit;text-underline-offset:5px}a:focus-visible,button:focus-visible{outline:3px solid #d89a48;outline-offset:6px}.wrap{max-width:1140px;margin:auto;padding:0 32px}header{display:flex;align-items:center;justify-content:space-between;padding-top:26px;padding-bottom:26px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-weight:700;letter-spacing:.05em}.seal{background:var(--teal);color:white;border-radius:15px;display:grid;place-items:center;width:46px;height:46px;font-family:serif;font-size:27px}nav{display:flex;gap:28px;font-size:13px}nav a{text-decoration:none}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:700;text-transform:uppercase}.hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:64px;padding:76px 0 90px}.hero h1{font-family:serif;font-size:clamp(38px,5vw,62px);line-height:1.55;font-weight:500;letter-spacing:.035em;margin:20px 0}.hero .lead{font-size:15px;max-width:490px;color:var(--muted)}.status{display:inline-flex;align-items:center;gap:10px;background:#e5ece4;padding:12px 20px;margin-top:24px;font-size:13px;border-radius:5px}.dot{width:7px;height:7px;border-radius:50%;background:#bb8543}.small{font-size:11px;color:var(--muted)}.hero-note{margin-top:12px}.section{padding:72px 0;border-top:1px solid var(--line)}.section h2{font-family:serif;font-size:32px;font-weight:500;line-height:1.6;margin:10px 0 28px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.number{font-family:serif;font-style:italic;color:#779181;font-size:28px}.features h3{font-size:18px;font-weight:600;margin:8px 0 14px}.features p,.source p{font-size:14px;color:var(--muted)}.source{display:grid;grid-template-columns:1fr 1fr;gap:80px}.source h2{margin-bottom:0}.support{background:var(--teal);color:#f5f8ef;border-radius:12px;margin:10px 0 70px;padding:40px;display:flex;justify-content:space-between;align-items:center;gap:28px}.support h2{font-family:serif;font-size:27px;font-weight:500;margin:0 0 8px}.support p{margin:0;font-size:13px;color:#d0e2d8}.support a{font-size:13px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);padding:26px 0 34px;display:flex;justify-content:space-between;gap:20px;color:var(--muted);font-size:11px}footer .links{display:flex;gap:22px}.policy{max-width:780px;margin:65px auto 90px}.policy h1{font-family:serif;font-size:36px;line-height:1.6}.policy p{font-size:14px;margin:26px 0}.back{font-size:12px}.policy .updated{color:var(--muted);font-size:12px}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:white;z-index:2;padding:8px}@media(max-width:760px){.wrap{padding:0 22px}header{padding-top:20px;padding-bottom:20px}nav{gap:15px;font-size:11px}nav .desktop{display:none}.hero{grid-template-columns:1fr;gap:36px;padding:42px 0 50px}.hero h1{font-size:39px}.features{grid-template-columns:1fr;gap:26px}.section{padding:45px 0}.source{grid-template-columns:1fr;gap:20px}.support{padding:28px;display:block;margin-bottom:42px}.support a{display:block;margin-top:22px}footer{flex-direction:column;gap:10px}.policy{margin:40px auto 60px}.policy h1{font-size:28px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero-screen{display:block;width:min(100%,280px);justify-self:center;line-height:0;border:6px solid var(--ink);border-radius:24px;overflow:hidden;box-shadow:0 18px 45px #173c351a}.hero-screen img{display:block;width:100%;height:auto}.screenshots-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}.screenshots figure{margin:0;min-width:0}.screen-link{display:block;max-width:280px;margin:auto;border:1px solid var(--line);border-radius:14px;overflow:hidden;line-height:0;background:#faf8ff}.screen-link img{display:block;width:100%;height:auto}.screenshots figcaption{max-width:280px;margin:20px auto 0}.screenshots h3{font-size:17px;margin:0 0 6px}.screenshots p{font-size:13px;color:var(--muted);margin:0}@media(max-width:760px){.hero-screen{width:250px}.screenshots-grid{grid-template-columns:1fr;gap:36px}.screen-link,.screenshots figcaption{max-width:300px}}
