/* Supplied LONDI assets, with bright orange/yellow/turquoise UI accents.
   Accent hex values are implementation choices, not a new brand standard. */
:root {
  --ink:#153b66; --muted:#415675; --red:#d71920; --red-dark:#9d1118;
  --turquoise:#22bfd0; --turquoise-light:#e3faff; --yellow:#ffcf32;
  --orange:#ff9d2b; --blue:#245ca4; --white:#fff; --line:#b7dce6;
  --cream:#fff; --teal:#006a7b;
}
html{background:#f5fcff}
body{background:linear-gradient(180deg,#fff 0,#fff 120px,#effcff 560px,#fff 100%)}
.wrap{width:min(1180px,calc(100% - 72px))}
.site-header{min-height:106px;border-bottom:1px solid #d8ecf0}
.wordmark{display:flex;align-items:center;gap:12px;letter-spacing:normal}
.wordmark img{width:64px;height:64px;flex:none}
.wordmark .brand-name{font-size:1.9rem;color:var(--red);letter-spacing:-.045em;margin:0;line-height:1;font-weight:900}
.wordmark .brand-name span{color:var(--ink);font-size:.65rem;letter-spacing:.02em;margin-top:8px}
.prototype-label{background:var(--yellow);border:0;border-radius:20px;padding:8px 12px;font-size:.7rem}
.home-link{min-width:48px;min-height:48px}
.screen{padding-top:35px;padding-bottom:26px}
.home-grid{grid-template-columns:.84fr 1.16fr;gap:45px}
.home-copy h1{font-size:clamp(2.55rem,4.7vw,4.25rem);line-height:1.02;letter-spacing:-.045em}
.home-copy>.eyebrow{margin-bottom:17px}
.little-sun{color:#a33c08}
.londi-title{color:var(--red);text-shadow:0 3px 0 #facacc}
.kindness-title{color:var(--blue);text-shadow:0 3px 0 #bedfeb}
.adventures-title{color:var(--ink)}
.tagline{margin-top:21px;font-size:1.16rem}
.welcome{font-size:1.03rem;margin:14px 0 23px}
.button{min-height:60px;border-radius:18px;font-size:1.05rem;padding:15px 24px}
.primary{background:var(--red);box-shadow:0 5px 0 var(--red-dark)}
.primary:hover{background:#be131c}
.secondary{background:white;border-color:#90bdcb}
.secondary:hover{background:var(--turquoise-light)}
.read-together{font-size:.84rem;margin-top:18px}
.art-panel{display:block;min-height:0;padding:0;margin:0 10px 0 0;background:white;border:5px solid var(--turquoise);border-radius:32px;box-shadow:10px 12px 0 var(--yellow);overflow:hidden}
.art-panel:after{content:none}
.world-image{display:block;width:100%;height:auto}
.art-panel figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--yellow);padding:19px 24px;font-size:1.2rem;line-height:1.35}
.art-panel figcaption strong{display:block;font-size:1.7rem;letter-spacing:-.03em}
.world-heart{font-size:2.5rem;color:#a31623}
.grownup-route{background:white;border:2px solid #c6e9f0;border-left:8px solid var(--orange);border-radius:21px;padding:20px 24px;margin-top:36px}
.round-arrow{width:46px;height:46px;background:var(--turquoise-light);border:0}
.site-footer{font-size:.74rem;padding-block:23px}
.story-top{margin-bottom:25px}
.text-link{min-height:48px;font-size:.95rem}
.story-layout{grid-template-columns:1fr 1.05fr;gap:42px}
.story-intro h1{font-size:clamp(2.3rem,3.9vw,3.3rem)}
.chapter-mark{color:var(--red);font-size:2.25rem;margin-bottom:15px}
/* One intact quarter of the approved sheet is displayed at its original ratio.
   The source is unchanged. No mirroring, redrawing or stretching. */
.character-pose{flex:none;background-image:url('./assets/londi-approved-poses.png');background-repeat:no-repeat;background-size:400% 100%;background-color:white;aspect-ratio:344 / 768}
.waving{background-position:0% 0}
.thinking{background-position:33.333333% 0}
.story-scene{display:flex;align-items:center;gap:18px;background:white;border-radius:24px;padding:10px 18px 10px 4px;margin-top:23px;border:2px solid #d5eef4}
.story-character{width:128px}
.scene-card{margin:0;background:var(--yellow);border-radius:23px 23px 23px 4px;padding:23px}
.scene-card p{font-size:1.25rem}
.choice-panel{border:3px solid var(--turquoise);border-radius:29px;padding:31px;box-shadow:0 9px 0 #d2f1f6}
.choices{gap:15px}
.choice{min-height:94px;padding:18px;border:2px solid #89c9d5;border-radius:20px;background:#effcff;font-size:1.13rem;line-height:1.45;box-shadow:0 3px 0 #c3e8ef}
.choice:nth-child(2){background:#fff6cc;border-color:#ddb846;box-shadow:0 3px 0 #f2d67f}
.choice:nth-child(3){background:#fff0de;border-color:#e4ae6c;box-shadow:0 3px 0 #f7d7b0}
.choice:hover{border-color:var(--ink)}
.choice-number{width:32px;height:32px;border-color:#8ca1b2;font-size:.9rem}
.choice-footer{font-size:.83rem}
.choice-footer span{color:var(--red)}
.feedback-card{display:grid;grid-template-columns:168px 1fr;gap:30px;align-items:center;max-width:980px;padding:39px;border:3px solid var(--turquoise);border-radius:33px;box-shadow:9px 10px 0 var(--yellow);text-align:left}
.feedback-character{width:168px}
.feedback-card h1{font-size:clamp(2rem,3.5vw,3rem)}
.chosen-idea{font-size:1.05rem;margin:10px 0 22px}
.feedback-copy{font-size:1.2rem;margin:20px 0 28px}
.button-row{justify-content:flex-start}
.completion-card{display:grid;grid-template-columns:210px 1fr;align-items:center;gap:35px;max-width:980px;padding:28px;background:white;border:3px solid var(--turquoise);border-radius:33px;text-align:left}
.completion-character{width:210px}
.completion-card h1{font-size:clamp(2.3rem,3.7vw,3.5rem);margin-top:15px}
.completion-card .eyebrow{margin:0}
.completion-copy{margin:19px 0 23px;font-size:1.08rem;max-width:none}
.mission{background:var(--yellow);padding:25px;margin:0 0 25px}
.mission h2{font-size:1.5rem}
.grownups-intro{max-width:790px}
.book-world{max-width:970px;margin:29px 0 0;border:4px solid var(--turquoise);border-radius:26px;overflow:hidden;background:white}
.book-world img{width:100%;height:auto;display:block}
.book-world figcaption{padding:15px 22px;font-size:.92rem;background:var(--yellow);line-height:1.5}
.together-note{max-width:970px;background:var(--turquoise-light);border-left:7px solid var(--turquoise);margin-top:29px}
.together-note>span{color:var(--red)}
.support-card{border:2px solid #c7e2ec;border-top:8px solid var(--orange)}
.support-card:nth-child(2){border-top-color:var(--yellow)}
.support-card:nth-child(3){border-top-color:var(--turquoise)}
.support-number{background:var(--yellow)}
.website-link{min-height:48px;color:#135a96}
@media(max-width:1000px){
 .wrap{width:calc(100% - 48px)}
 .home-grid{gap:29px;grid-template-columns:.85fr 1.15fr}
 .home-copy h1{font-size:3.1rem}
 .art-panel figcaption{font-size:1rem;padding:16px 20px}
 .art-panel figcaption strong{font-size:1.5rem}
 .story-layout{gap:25px}.story-character{width:95px}
 .story-scene{gap:12px;padding-right:10px}.scene-card{padding:18px}.scene-card p{font-size:1.13rem}
 .choice-panel{padding:25px}.choice{padding:15px;gap:12px;font-size:1.04rem}
 .feedback-card{padding:28px;grid-template-columns:135px 1fr;gap:24px}.feedback-character{width:135px}
 .completion-card{grid-template-columns:160px 1fr;gap:25px}.completion-character{width:160px}
}
@media(max-width:720px){
 .wrap{width:calc(100% - 32px)}.site-header{min-height:91px;gap:10px}
 .wordmark{gap:8px}.wordmark img{width:48px;height:48px}.wordmark .brand-name{font-size:1.5rem}.wordmark .brand-name span{font-size:.55rem;margin-top:6px}
 .header-right{gap:9px}.prototype-label{font-size:.56rem;padding:7px 8px}.home-link{font-size:.8rem}.home-link span{display:none}
 .screen{padding-top:23px}.home-grid{grid-template-columns:1fr;gap:24px}
 .art-panel{order:-1;border-width:4px;border-radius:22px;margin-right:6px;box-shadow:6px 7px 0 var(--yellow)}
 .art-panel figcaption{padding:12px 17px;font-size:.9rem}.art-panel figcaption strong{display:inline;font-size:1.1rem}.world-heart{font-size:1.6rem}
 .home-copy>.eyebrow{font-size:.65rem;margin-bottom:13px}.home-copy h1{font-size:clamp(2.65rem,8.8vw,3.9rem)}.londi-title{font-size:.72em}
 .tagline{margin-top:17px;font-size:1.09rem}.welcome{font-size:1rem;margin:11px 0 20px}
 .start-button{display:flex;width:100%;justify-content:space-between}.read-together{font-size:.82rem;text-align:center;line-height:1.5}
 .grownup-route{margin-top:25px;padding:18px;gap:12px}.grownup-route span span{font-size:.82rem}
 .site-footer{flex-direction:column;align-items:flex-start;gap:8px}
 .story-top{gap:12px;margin-bottom:17px}.story-top>.eyebrow{font-size:.61rem;text-align:right;max-width:175px}
 .story-layout{grid-template-columns:1fr;gap:24px}.story-intro h1{font-size:clamp(2rem,7.5vw,2.9rem)}
 .chapter-mark{font-size:1.9rem;margin-bottom:13px}.story-character{width:91px}
 .story-scene{margin-top:19px;padding:4px 13px 4px 2px;gap:12px}.scene-card{padding:18px}.scene-card p{font-size:1.13rem}
 .choice-panel{border-width:2px;padding:25px 19px}.choice-panel h2{font-size:1.55rem}
 .choice{min-height:90px;font-size:1.05rem;gap:12px;padding:17px 13px}.choice-footer{font-size:.8rem}
 .feedback-card{display:block;padding:24px 21px 30px;border-width:2px;border-radius:25px;margin-right:6px;box-shadow:6px 7px 0 var(--yellow)}
 .feedback-character{float:right;width:64px;margin:0 0 10px 12px}.feedback-card h1{font-size:2rem}
 .chosen-idea{font-size:1rem;margin:10px 0 19px}.feedback-copy{clear:both;font-size:1.1rem;margin-top:20px}
 .button-row{flex-direction:column;gap:14px}.button-row .button{width:100%}
 .completion-card{display:block;border-width:2px;padding:24px 19px;border-radius:25px}
 .completion-character{float:right;width:70px;margin:0 0 10px 10px}.completion-card h1{font-size:2rem}
 .completion-copy{clear:both;font-size:1.05rem}.mission{padding:23px}.mission h2{font-size:1.45rem}
 .grownups-intro h1{font-size:2.5rem}.book-world{border-width:3px;border-radius:20px}.book-world figcaption{padding:14px;font-size:.84rem}
 .together-note{padding:23px 19px;gap:15px}.together-note>span{font-size:2.3rem}
 .support-grid{grid-template-columns:1fr;gap:18px}.support-card{padding:25px}.return-play{width:100%;font-size:.94rem}
}
@media(max-width:359px){
 .prototype-label{display:none}.story-character{width:74px}.scene-card{padding:15px}.scene-card p{font-size:1.08rem}
 .feedback-character,.completion-character{float:none;width:60px;margin:0 auto 15px}.button{padding-inline:17px;font-size:.98rem}
}
@media(forced-colors:active){
 .teal-text,.londi-title,.kindness-title{color:CanvasText;text-shadow:none}
 .character-pose{forced-color-adjust:none}
}

/* A complete character and title replace the clipped classroom strip. */
.world-banner{display:flex;align-items:center;gap:24px;min-height:136px;margin-bottom:24px;padding:8px 30px;background:var(--yellow);border:3px solid var(--turquoise);border-radius:24px;box-shadow:0 5px 0 #b5edf2}
.banner-character{width:53px;border-radius:12px}
.banner-copy{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 17px;min-width:0}
.banner-londi{font-size:2rem;font-weight:900;letter-spacing:-.05em;color:var(--red)}
.banner-copy strong{font-size:1.65rem;letter-spacing:-.035em;line-height:1.2}
.banner-copy>span:last-child{width:100%;font-size:1rem;line-height:1.5;margin-top:3px}
.choose-adventure{display:flex;width:fit-content;gap:12px;margin-top:13px}
.collection-intro{font-size:1.15rem;margin-top:18px;max-width:650px}
.adventure-group{margin-top:36px}
.adventure-group h2{margin-bottom:18px;font-size:1.6rem}
.adventure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;list-style:none;padding:0;margin:0}
.adventure-card{display:flex;flex-direction:column;align-items:flex-start;gap:16px;height:100%;min-height:196px;padding:23px;background:white;border:2px solid #9bd9e3;border-radius:24px;text-decoration:none;box-shadow:0 5px 0 #d5f0f5}
.adventure-card:hover{border-color:var(--ink);background:#effcff}
.adventure-number{display:grid;place-items:center;min-width:44px;min-height:40px;padding:6px;background:var(--yellow);border-radius:12px;font-weight:800}
.adventure-card strong{font-size:1.2rem;line-height:1.35}
.adventure-status{font-size:1rem;margin-top:auto;color:var(--blue)}
.adventure-group:nth-child(2) .adventure-number{background:#ceeff7}
.adventure-group:nth-child(3) .adventure-number{background:#ffdeb4}
.adventure-group:nth-child(4) .adventure-number{background:#e5edff}
.chapter-mark b{font-weight:inherit}.chapter-mark span{font-size:.95rem}
#story-title{color:var(--teal);overflow-wrap:break-word}
#story-progress,#feedback-progress{font-size:.875rem}
.next-story-title{font-size:1rem;margin-top:24px;color:var(--muted)}
.break-link{margin-top:8px;text-decoration:underline;text-underline-offset:4px}
@media(max-width:850px){.adventure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
 .world-banner{gap:15px;min-height:126px;padding:8px 16px;border-width:2px;border-radius:18px}
 .banner-character{width:47px}
 .banner-copy{display:block}.banner-londi{font-size:1.5rem;display:block}
 .banner-copy strong{font-size:1.2rem;display:block}.banner-copy>span:last-child{display:block;font-size:.875rem;margin-top:6px}
 .choose-adventure{margin-inline:auto}.adventure-card{padding:19px;min-height:190px}.adventure-card strong{font-size:1.1rem}
 .adventure-grid{gap:15px}.adventure-group{margin-top:29px}
 #story-progress,#feedback-progress{font-size:.875rem}.chapter-mark span{font-size:.875rem}
}
@media(max-width:450px){.adventure-grid{grid-template-columns:1fr}.adventure-card{min-height:0;display:grid;grid-template-columns:44px 1fr;gap:8px 14px}.adventure-number{grid-row:1/3;align-self:start}.adventure-status{font-size:.95rem}.banner-copy strong{font-size:1.1rem}}
@media(forced-colors:active){.adventure-card,.world-banner{border:2px solid CanvasText}.banner-londi{color:CanvasText}}
