/* Tammy's responsive welcome and chapter navigation. */
.tammy-welcome{background:#fff;padding:20px 0 65px}.tammy-hero-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:30px;padding-top:25px;padding-bottom:30px}.tammy-kicker{font-size:1rem;color:#697554;letter-spacing:.05em;margin:0 0 18px}.tammy-hello h1{font-family:TamikaSoft,sans-serif;font-size:clamp(2.4rem,4.4vw,4.2rem);line-height:1.5;letter-spacing:.01em;color:#324f41;margin:0 0 22px}.tammy-lead{font-size:1.2rem;line-height:2.05;margin-bottom:27px}.tammy-terms{font-size:.9375rem;margin-top:13px;color:#536457}.tammy-portrait{position:relative;margin:0;min-width:0;text-align:center}.tammy-portrait img{width:100%;height:auto;display:block}.tammy-portrait figcaption{display:inline-block;font-size:1rem;line-height:1.8;padding:12px 24px;background:#fff8ed;border:1px solid #efe3cf;border-radius:23px;margin-top:-28px;position:relative;color:#705c43}.tammy-paths{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}.tammy-paths a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 20px;min-height:56px;border-radius:16px;background:#f6f8f1;text-decoration:none;color:#365743;font-size:1rem}.tammy-paths a:hover{background:#eaf0e0}.tammy-film-row{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:55px;margin-top:62px;padding-top:40px;border-top:1px solid #e8ecdf}.tammy-film-row h2,.tammy-worlds h2{font-family:TamikaSoft,sans-serif;font-size:clamp(1.6rem,2.5vw,2.2rem);line-height:1.65;color:#3c5947;margin-bottom:18px}.tammy-film-row .welcome-film{width:100%;margin:0;max-width:none}.tammy-film-row .welcome-film video{border-radius:24px}.tammy-worlds{padding-top:62px;padding-bottom:65px}.tammy-worlds-heading{text-align:center;margin-bottom:35px}.tammy-world-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.tammy-world{display:block;min-width:0;overflow:hidden;border-radius:28px;background:#f0f5e8;text-decoration:none;color:#36543e}.tammy-world.ocean{background:#edf7fa;color:#315c6d}.tammy-world>img{display:block;width:100%;height:auto;aspect-ratio:3/2}.tammy-world>div{padding:28px 32px 34px}.tammy-world span{font-size:.9375rem}.tammy-world h3{font-family:TamikaSoft,sans-serif;font-size:1.8rem;line-height:1.7;margin:14px 0}.tammy-world p{font-size:1.0625rem;margin:0 0 20px}.tammy-world strong{font-size:1rem;font-weight:500;text-decoration:underline;text-underline-offset:6px}.mascot-message>img{border-radius:24px;object-fit:contain;box-shadow:none;background:#fff}.tammy-paths a:focus-visible,.tammy-world:focus-visible{outline:3px solid #397761;outline-offset:5px}.tammy-world:hover strong{color:#174c3a}
@media(max-width:760px){.tammy-welcome{padding-top:8px;padding-bottom:36px}.tammy-hero-grid{grid-template-columns:1fr;gap:0;padding-top:20px;text-align:center}.tammy-hello h1{font-size:clamp(2rem,7.5vw,3rem);line-height:1.55;margin-bottom:15px}.tammy-kicker{margin-bottom:12px}.tammy-lead{font-size:1.0625rem;line-height:1.95;margin-bottom:20px}.tammy-portrait{grid-row:2;max-width:340px;width:85%;margin:12px auto 0}.tammy-portrait figcaption{font-size:.9375rem;margin-top:-20px;padding:10px 20px}.tammy-paths{grid-template-columns:1fr 1fr;gap:10px;margin-top:0}.tammy-paths a{padding:14px;font-size:.9375rem}.tammy-film-row{grid-template-columns:1fr;gap:20px;margin-top:35px;padding-top:30px}.tammy-film-row>div:first-child{text-align:center}.tammy-film-row h2{font-size:1.6rem}.tammy-film-row p{font-size:1rem}.tammy-film-row .welcome-film{margin-left:0;width:100%}.tammy-worlds{padding-top:40px;padding-bottom:42px}.tammy-world-grid{grid-template-columns:1fr;gap:25px}.tammy-world>div{padding:25px}.tammy-world h3{font-size:1.65rem}.tammy-worlds-heading{text-align:left}.tammy-terms{font-size:.9375rem}.tammy-worlds h2{font-size:1.55rem}}
@media(min-width:761px) and (max-width:1000px){.tammy-paths{grid-template-columns:1fr 1fr}.tammy-film-row{gap:30px}.tammy-hello h1{font-size:2.6rem}}

.tammy-activities{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding-bottom:40px}.tammy-activities figure{margin:0;min-width:0}.tammy-activities img{display:block;width:100%;height:auto;border-radius:24px}.tammy-activities figcaption{padding-top:10px;font-size:1rem;color:#40594e}@media(max-width:760px){.tammy-activities{grid-template-columns:1fr;gap:24px;padding-bottom:28px}}

/* Give the landscape room; Tammy is a companion within each world. */
.tammy-world-grid{grid-template-columns:1fr;gap:32px}
.tammy-world{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);align-items:center;border-radius:28px}
.tammy-world>img{height:100%;object-fit:cover;min-height:320px}
.tammy-world>div{padding:32px}
.tammy-world h3{font-size:clamp(1.5rem,2.3vw,2rem)}
.tammy-world.ocean{grid-template-columns:minmax(0,1fr) minmax(0,1.65fr)}
.tammy-world.ocean>img{grid-column:2;grid-row:1}
.tammy-world.ocean>div{grid-column:1;grid-row:1}
.tammy-world p{line-height:1.9}
.tammy-activities{gap:32px}.tammy-activities figcaption{font-size:1.125rem;padding-top:16px}
@media(max-width:760px){
 .tammy-world,.tammy-world.ocean{display:flex;flex-direction:column;align-items:stretch}
 .tammy-world>img{height:auto;min-height:0;object-fit:contain}
 .tammy-world>div{padding:24px}
 .tammy-world h3{font-size:1.6rem;line-height:1.65}
 .tammy-paths a{font-size:1rem;min-height:60px}
 .tammy-lead{font-size:1.125rem}
}

/* App identity comes first in both languages, before the mascot or tagline. */
.tamika-app-identity{display:flex;align-items:center;gap:24px;margin-bottom:24px}
.tamika-hero-icon{display:block;width:112px;height:112px;flex:none;border-radius:25%;border:1px solid #eee5d8;box-shadow:0 8px 24px #493b2310}
.tammy-hello .tamika-app-identity h1{font-family:TamikaSoft,sans-serif;font-size:clamp(3.5rem,6.3vw,5.5rem);line-height:1.12;letter-spacing:-.035em;margin:0;color:#324f41}
.tamika-app-label{font-size:1rem;line-height:1.6;margin:10px 0 0;color:#526457}
.tamika-app-description{font-size:1.1875rem;line-height:1.9;margin:0 0 24px;color:#324f41;max-width:32em}
.tamika-tagline{font-family:TamikaSoft,sans-serif;font-size:1.5rem;line-height:1.6;margin:0 0 12px;color:#40594e}
.tammy-lead{font-size:1.125rem}
@media(max-width:760px){
 .tamika-app-identity{justify-content:center;gap:18px;margin-bottom:20px;text-align:left}
 .tamika-hero-icon{width:84px;height:84px}
 .tammy-hello .tamika-app-identity h1{font-size:clamp(2.9rem,12vw,4.2rem)}
 .tamika-app-label{font-size:.9375rem;margin-top:6px}
 .tamika-app-description{font-size:1.125rem;margin:0 auto 20px;max-width:25em}
 .tamika-tagline{font-size:1.25rem}
}
@media(max-width:360px){.tamika-app-identity{gap:12px}.tamika-hero-icon{width:68px;height:68px}}

/* Existing Rounded Mplus weights: use the actual faces, without faux bold. */
.tammy-hello .tamika-app-identity h1{font-family:Tamika,'Hiragino Maru Gothic ProN',sans-serif;font-weight:400;letter-spacing:-.025em;line-height:1.15}
.tamika-app-subtitle{font-family:TamikaSoft,'Hiragino Maru Gothic ProN',sans-serif;font-weight:400;font-size:clamp(1.25rem,2.2vw,1.65rem);letter-spacing:.025em;line-height:1.7;margin-bottom:28px;color:#324f41}
.tamika-tagline{font-weight:400;font-size:1.1875rem;letter-spacing:.015em}
.tammy-lead{font-size:1.0625rem;line-height:2}
.app-store-badge{display:inline-block;line-height:0;margin:14px;vertical-align:middle;border:0;background:none;text-decoration:none}
.app-store-badge img{height:56px;width:auto;max-width:100%;border-radius:0;box-shadow:none}
.app-store-badge:focus-visible{outline:3px solid #397761;outline-offset:8px;border-radius:8px}
.store-brand .app-store-badge img{height:56px;width:auto;border-radius:0;margin:0}
@media(max-width:760px){.tamika-app-subtitle{font-size:clamp(1.0625rem,4.8vw,1.4rem);line-height:1.7;margin-bottom:24px}.tamika-tagline{font-size:1.125rem}.app-store-badge img{height:52px}.store-brand .app-store-badge img{height:52px}}

/* Compact first view: identity, complete mascot, download; story follows. */
.tammy-hero-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:0 36px;padding-top:32px;padding-bottom:28px}
.tammy-hello{grid-column:1;grid-row:1;align-self:end}
.tammy-download{grid-column:1;grid-row:2;align-self:start}
.tammy-portrait{grid-column:2;grid-row:1 / 3}
.tamika-app-subtitle{margin-bottom:12px}
.tammy-download .app-store-badge{margin:14px 0}
.tammy-download .tammy-terms{margin:0;font-size:.9375rem;line-height:1.6}
.tammy-intro{text-align:center;padding-top:28px;padding-bottom:24px}
.tammy-intro .tamika-tagline{font-size:1.5rem;margin:0 0 12px}
.tammy-intro .tammy-lead{font-size:1.125rem;margin:0;line-height:1.9}
@media(max-width:760px){
 header{position:relative;min-height:56px;padding:8px 20px;gap:12px}
 header .logo{font-size:1.125rem;gap:8px}
 header .logo img{width:28px;height:28px}
 header nav>a:not(.language){display:none}
 header nav .language{min-width:44px;min-height:40px;display:flex;align-items:center;justify-content:center;padding:4px 10px;font-size:.9375rem}
 .tammy-welcome{padding-top:0}
 .tammy-hero-grid{display:flex;flex-direction:column;gap:0;padding-top:14px;padding-bottom:20px}
 .tammy-hello{align-self:stretch}
 .tamika-app-identity{gap:14px;margin-bottom:10px}
 .tamika-hero-icon{width:64px;height:64px}
 .tammy-hello .tamika-app-identity h1{font-size:clamp(2.65rem,11vw,3.4rem);line-height:1.1}
 .tamika-app-label{font-size:.875rem;line-height:1.2;margin-top:4px}
 .tamika-app-label:empty{display:none}
 .tamika-app-subtitle{font-size:1.125rem;line-height:1.5;margin:0 auto 4px;letter-spacing:.015em}
 .tammy-portrait{order:2;width:min(70vw,280px,38svh);max-width:280px;margin:0 auto}
 .tammy-portrait img{width:100%;height:auto}
 .tammy-download{order:3;align-self:center}
 .tammy-download .app-store-badge{margin:13px}
 .tammy-download .app-store-badge img{height:48px}
 .tammy-download .tammy-terms{font-size:.875rem;line-height:1.5;margin:0}
 .tammy-intro{padding-top:28px;padding-bottom:28px;border-top:1px solid #edf1e9}
 .tammy-intro .tamika-tagline{font-size:1.25rem}
 .tammy-intro .tammy-lead{font-size:1.0625rem}
}

/* A concise, visible introduction to the people behind Tamika. */
.founder-teaser { margin-top: 24px; margin-bottom: 64px; padding: 32px 40px; }
.founder-teaser h2 { font-size: clamp(1.4rem, 3vw, 2rem); }
.founder-teaser p { margin: 12px 0; }
@media(max-width:760px) {
 header nav>a.story-link { display: inline-flex; align-items:center; min-height:44px; font-size: 14px; white-space:nowrap; }
 header nav { gap:12px; }
 .founder-teaser { padding:24px; margin-top:16px; margin-bottom:40px; }
 .founder-teaser img { width:64px; height:64px; }
}

/* Coin rewards are a reading guide, without a daily calculator. */
.coin-layout { display:block; max-width:820px; margin:0 auto 32px; }

.fish-naming-demo { display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center; padding-top:32px; padding-bottom:72px; }
.fish-naming-demo h2 { font-size:clamp(1.5rem,3vw,2rem); line-height:1.6; }
.fish-naming-demo video { display:block; width:100%; height:auto; aspect-ratio:1; border-radius:24px; background:#d9eef3; }
@media(max-width:760px) { .fish-naming-demo { grid-template-columns:1fr; gap:20px; padding-bottom:40px; } }
