:root{--paper:#fffaf1;--card:#fff;--ink:#243c38;--muted:#52655e;--pond:#195d75;--leaf:#316642;--gold:#f3c861;--line:#dddcd0;--sky:#eaf5fa;--soft-leaf:#edf4e8;font:100%/1.65 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}body{margin:0}img{display:block;max-width:100%;height:auto}a{color:var(--pond);text-underline-offset:4px}button,a{touch-action:manipulation}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--pond);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.25;text-wrap:balance}h1{font-size:clamp(1.8rem,3.6vw,2.9rem);letter-spacing:-.035em;color:var(--pond);margin-bottom:16px}h2{font-size:clamp(1.35rem,2.6vw,1.85rem);letter-spacing:-.02em}h3{font-size:1.15rem}p{margin-bottom:16px}.skip{position:absolute;top:-100px;left:16px;background:#fff;padding:12px;z-index:10}.skip:focus{top:12px}.wrap{max-width:1160px;margin:auto;padding:0 24px}.site-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;padding-bottom:18px;border-bottom:1px solid var(--line)}.brand{font-weight:800;text-decoration:none;letter-spacing:.04em}.brand small{display:block;font-weight:400;font-size:.8rem;letter-spacing:0;color:var(--muted)}.site-top nav{display:flex;flex-wrap:wrap;gap:8px 20px}.site-top nav a{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem}.eyebrow{font-size:.75rem;letter-spacing:.14em;font-weight:800;text-transform:uppercase;color:var(--leaf);margin-bottom:12px}.welcome{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:36px;padding-top:32px;padding-bottom:28px}.welcome img{width:100%;border-radius:24px;box-shadow:0 10px 30px #26453815}.welcome-copy p{color:var(--muted)}.welcome-copy .intro{font-size:1.1rem}.actions{display:flex;flex-wrap:wrap;gap:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 18px;border:1px solid transparent;border-radius:14px;background:var(--pond);color:white;text-decoration:none;font-weight:750;cursor:pointer;transition:background .15s,transform .15s}.button:hover{background:#124a5d;transform:translateY(-1px)}.button.secondary{background:var(--soft-leaf);color:var(--leaf);border-color:#bfd1b8}.button.gold{background:var(--gold);color:var(--ink)}.section{padding-top:32px;padding-bottom:16px;scroll-margin-top:16px}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px}.section-heading h2{margin:0}.section-heading p{margin:0;color:var(--muted);font-size:.95rem}.featured{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);background:#fff;border-radius:22px;overflow:hidden}.featured img{width:100%;height:100%;object-fit:contain;background:#f2f5e8}.feature-copy{padding:28px;align-self:center}.feature-copy h3{font-size:1.55rem;color:var(--pond);margin-bottom:12px}.feature-copy p{color:var(--muted)}.meta{font-size:.85rem;color:var(--muted)}.story-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px}.story-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card)}.story-card img{width:100%;aspect-ratio:4/3;object-fit:contain;background:#f1f4e8}.card-copy{padding:18px;display:flex;flex-direction:column;flex:1}.card-copy h3{margin-bottom:10px}.card-copy p{font-size:.95rem;color:var(--muted)}.card-copy a{margin-top:auto;min-height:44px;display:inline-flex;align-items:center;font-weight:750}.play-card{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;background:var(--sky);border:1px solid #c7dde4;border-radius:22px;padding:28px}.play-card .activity{font-size:1.1rem;color:var(--pond);font-weight:700}.play-card ol{margin:0;padding-left:24px;color:var(--muted)}.play-card li{margin:10px 0}.friend-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.friend{border-radius:20px;padding:24px;border:1px solid #c7dde4;background:var(--sky);min-width:0}.friend.taboshi{background:var(--soft-leaf);border-color:#c8d8bd}.friend.patience{background:#fff0e8;border-color:#e8c9b8}.friend h3{font-size:1.3rem;margin-bottom:10px}.friend p{margin:0;color:var(--muted)}.friend-label{font-size:.75rem;letter-spacing:.12em;font-weight:750;text-transform:uppercase;margin-bottom:12px}.family{background:#f0f3e7;border:1px solid #d4dcc5;border-radius:22px;padding:28px}.family-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:24px}.family-links h3{margin-bottom:8px}.family-links a{display:inline-flex;align-items:center;min-height:44px;padding:4px 0}.family details{margin-top:16px}.family summary{cursor:pointer;min-height:44px;padding:8px 0;font-weight:700}.family p{color:var(--muted)}footer{margin-top:36px;border-top:1px solid var(--line);padding:24px 0 32px;color:var(--muted);font-size:.85rem}footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px}footer a{display:inline-flex;align-items:center;min-height:44px;margin-right:16px}.reader{max-width:820px;margin:auto;padding:32px 24px}.reader .cover{border-radius:20px;width:100%;margin:24px 0}.reader-header{text-align:center}.reading-note{font-size:.9rem;color:var(--muted)}.story-part{padding:24px;border:1px solid var(--line);border-radius:18px;margin:18px 0;background:white}.story-part h2{font-size:1.25rem;color:var(--pond);margin-bottom:12px}.story-part p:last-child{margin-bottom:0}.parent-notes{padding:24px;border-radius:18px;background:var(--soft-leaf);margin-top:24px}.parent-notes summary{font-weight:750;min-height:44px;cursor:pointer}.parent-notes li{margin:10px 0}.parent-notes a{overflow-wrap:anywhere}.quiet-stage{border-radius:24px;border:1px solid #c7dde4;overflow:hidden;background:var(--sky);margin-top:24px}.quiet-stage img{width:100%;height:auto}.quiet-copy{padding:24px}.quiet-copy h2{color:var(--pond)}.quiet-progress{display:flex;gap:8px;margin:18px 0;padding:0;list-style:none}.quiet-progress li{height:8px;flex:1;border-radius:99px;background:#cadbdf}.quiet-progress li.done{background:var(--pond)}.activity-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.activity-controls button:disabled{opacity:.55;cursor:default;transform:none}.step-count{font-size:.85rem;color:var(--muted);margin-bottom:8px}[hidden]{display:none!important}
.lands-intro{max-width:680px;color:var(--muted)}.land-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.land-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card)}.land-card img{width:100%;height:auto}.land-card .eyebrow{font-size:.7rem;margin-bottom:10px}.land-note{margin-top:16px}.land-adventure{scroll-margin-top:20px;padding-top:28px}.land-adventure+.land-adventure{margin-top:36px;border-top:1px solid var(--line)}.land-adventure h2{color:var(--pond)}.land-adventure .cover{margin-top:18px}.notice-box{padding:20px 24px;border-radius:18px;background:var(--sky);border:1px solid #c7dde4}.notice-box h3{color:var(--pond);margin-bottom:10px}.notice-box p:last-child{margin-bottom:0}.land-choices{margin-top:20px}.land-choices a{font-size:.9rem}
@media(max-width:900px){.story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.land-grid{grid-template-columns:1fr}.land-card{display:grid;grid-template-columns:1fr 1fr;align-items:center}.welcome{gap:24px;grid-template-columns:1fr 1fr}.site-top{flex-wrap:wrap}.feature-copy{padding:22px}}
@media(max-width:640px){.land-card{display:flex}.land-card .card-copy{padding:20px}.notice-box{padding:20px}}
@media(max-width:640px){.wrap{padding-left:16px;padding-right:16px}.site-top{padding-top:12px;padding-bottom:12px}.site-top nav{gap:4px 16px}.welcome{grid-template-columns:1fr;gap:22px;padding-top:20px;padding-bottom:8px}.welcome img{border-radius:18px}.welcome-copy .intro{font-size:1rem}.welcome-copy h1{font-size:1.8rem}.section{padding-top:28px}.section-heading{display:block}.section-heading p{margin-top:8px}.featured{grid-template-columns:1fr}.feature-copy{padding:20px}.story-grid{gap:12px}.card-copy{padding:14px}.card-copy h3{font-size:1rem}.card-copy p{font-size:.9rem}.play-card{grid-template-columns:1fr;gap:16px;padding:22px}.friend-grid,.family-links{grid-template-columns:1fr}.friend,.family{padding:22px}.family-links{gap:12px}.reader{padding:24px 16px}.story-part,.parent-notes,.quiet-copy{padding:20px}.actions .button{flex:1 1 auto}.activity-controls .button{flex:1 1 auto}}
@media(max-width:360px){.story-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
