@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Fraunces:opsz,wght@9..144,600&display=swap");:root{--ink:#1f2b2a;--muted:#68736f;--paper:#f5f1e9;--coral:#df7057;--mint:#c9ddd0;--line:rgba(31,43,42,0.16)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}.shell{max-width:1180px;margin:0 auto;padding:28px 6vw 72px}.nav{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:22px}.brand{font-weight:700;letter-spacing:.08em}.brand em{color:var(--coral);font-family:Fraunces,serif;font-size:1.25em;font-style:normal;letter-spacing:0}.eyebrow,.level{color:var(--muted);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.hero{min-height:530px;display:grid;grid-template-columns:1fr 1fr;align-items:center;grid-gap:3rem;gap:3rem}.hero-copy{max-width:520px;animation:rise .7s ease-out both}.eyebrow{margin:0 0 20px}h1,h2,h3,p{margin-top:0}h1{font-family:Fraunces,serif;font-size:clamp(4rem,8vw,7.5rem);font-weight:600;letter-spacing:-.04em;line-height:.9;margin-bottom:30px}h1 span{color:var(--coral)}.intro{color:var(--muted);font-size:1.05rem;line-height:1.7;max-width:390px}.start-button{background:var(--ink);border:0;color:var(--paper);cursor:pointer;font:inherit;margin-top:18px;padding:15px 20px;transition:transform .2s,background .2s;display:inline-block;text-decoration:none}.start-button:hover{background:var(--coral);transform:translateY(-2px)}.start-button span{margin-left:28px}.kanji{color:var(--mint);font-family:Fraunces,serif;font-size:clamp(16rem,32vw,28rem);line-height:.8;text-align:center;transform:rotate(-8deg);animation:drift 1s ease-out both}.modes{border-top:1px solid var(--line);padding-top:34px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:25px}h2{font-family:Fraunces,serif;font-size:clamp(2rem,4vw,3.4rem);line-height:1;margin-bottom:0}.mode-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px}.mode{align-items:center;border:1px solid var(--line);display:grid;grid-gap:16px;gap:16px;grid-template-columns:auto 1fr auto;padding:20px;transition:background .2s,transform .2s;text-decoration:none;color:inherit}.mode:hover{background:#fffaf1;transform:translateY(-3px)}.mode-mark{align-items:center;background:var(--coral);color:white;display:flex;font-family:Fraunces,serif;font-size:1.5rem;height:46px;justify-content:center;width:46px}.mode h3{font-size:1rem;margin-bottom:5px}.mode p{color:var(--muted);font-size:.82rem;margin-bottom:0}.arrow{color:var(--coral);font-size:1.2rem}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes drift{0%{opacity:0;transform:rotate(-8deg) translateY(20px)}to{opacity:1;transform:rotate(-8deg) translateY(0)}}@media (max-width:980px){.mode-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.shell{padding-top:20px}.level{display:none}.hero{grid-template-columns:1fr;min-height:auto;padding:90px 0 100px}.kanji{font-size:14rem;order:-1;text-align:right}.section-heading{align-items:start;flex-direction:column;gap:12px}.mode-grid{grid-template-columns:1fr}}.page-tabs{width:min(980px,100%);display:flex;gap:.5rem;padding:.25rem;background:#ffffff;border:1px solid var(--line);border-radius:12px;box-shadow:0 6px 16px rgba(15,23,42,.06);margin:0 auto 1.25rem}.page-tab{flex:1 1;text-align:center;padding:.55rem .8rem;border-radius:9px;text-decoration:none;font-weight:700;font-size:.92rem;color:#134e4a;background:#f0fdfa;border:1px solid #99f6e4;transition:background-color .15s ease,color .15s ease}.page-tab.active{background:linear-gradient(135deg,#0f766e,#0ea5a4);color:#ffffff;border-color:transparent}.page-tab:hover:not(.active){background:#ccfbf1}body.dark-mode .page-tabs{background:#111827;border-color:#334155;box-shadow:0 6px 16px rgba(2,6,23,.5)}body.dark-mode .page-tab{background:#172554;border-color:#1d4ed8;color:#dbeafe}