/* Shared typography. Raster illustrations and their positions remain unchanged. */
body,body *{
 font-family:"Lexend","Fredoka",Arial,sans-serif!important;
 letter-spacing:0.05em!important;
 word-spacing:0.15em!important;
}
/* Main dashboard instructions: dark text on an opaque cream reading surface. */
.intro p,#subtitle.readable-instructions{
 font-size:18px!important;
 line-height:1.9!important;
 font-weight:500;
 color:#243e32!important;
 background:var(--reading-surface,#fef9e7);
 text-shadow:none!important;
 opacity:1;
 padding:12px 16px;
 border-radius:12px;
 margin:14px 0 0;
 width:fit-content;
 max-width:min(100%,68ch)!important;
 overflow-wrap:break-word;
}
.intro .eyebrow{
 font-size:16px!important;
 line-height:1.8;
 color:#fff4d5!important;
 font-weight:600;
 text-shadow:none!important;
}
.journey-banner,.journey-banner b,.journey-banner small,
.journey-counter,.jungle-progress b,.journey-footnote,
.journey-mission-copy p,.journey-mission .reward,.journey-mission .reward b,
.review-access-note,.review-access-note>span,
.practice-entry,.practice-entry>span,.ending-map-entry>span{
 font-size:18px!important;
 line-height:1.85!important;
 color:#243e32!important;
 text-shadow:none!important;
 opacity:1;
 overflow-wrap:break-word;
}
.journey-banner small{margin-top:6px}
.journey-counter{white-space:normal}
.journey-mission .eyebrow,.journey-mission .chip,.journey-mission .reward span,
.journey-footnote,.journey-scroll-hint,.world-guide-bar button,
.review-access-note button,.practice-entry button,.journey-mission button,
.clean-control,#clean-header-step{
 font-size:16px!important;
 line-height:1.75!important;
 text-shadow:none!important;
}
#clean-header-step{color:#fff4d5!important}
.journey-mission-copy p{margin-block:12px}
.journey-mission-copy,.journey-mission .reward,.journey-banner>span{min-width:0}
.review-access-note>div,.world-guide-bar{gap:12px;flex-wrap:wrap}
.review-access-note button,.world-guide-bar button,.journey-mission button{min-height:48px;white-space:normal}
.journey-footnote,.journey-scroll-hint{
 color:#243e32!important;
 background:var(--reading-surface,#fef9e7);
 padding:12px 16px;
 border-radius:12px;
}
.stop-name{font-size:16px!important;line-height:1.6!important;white-space:normal;overflow-wrap:break-word;color:#243e32!important;text-shadow:none!important}
.stop-name small{font-size:16px!important;line-height:1.6!important;color:#3c5039!important;text-shadow:none!important}
.tracker-step small{font-size:16px!important;line-height:1.65!important;white-space:normal;overflow-wrap:break-word}
.map-top,.map-bottom{font-size:16px!important;line-height:1.7!important;color:#243e32!important;text-shadow:none!important}
.journey-tracker{align-items:start}
/* Keep the existing larger-text setting useful as well. */
.text-large .intro p,.text-large #subtitle.readable-instructions{font-size:22px!important}
.text-large .journey-banner small,.text-large .journey-mission-copy p,
.text-large .review-access-note>span,.text-large .practice-entry>span{font-size:20px!important}
@media(max-width:650px){
 .intro p,#subtitle.readable-instructions{font-size:18px!important;padding:12px 14px}
 .journey-banner{grid-template-columns:minmax(0,1fr)}
 .journey-banner small{margin-left:0}
 .journey-mission{grid-template-columns:minmax(0,1fr)!important;gap:14px}
 .journey-mission>*{grid-column:1!important;grid-row:auto!important;min-width:0}
 .journey-mission .mission-picture{justify-self:start}
 .journey-mission #start-mission{width:100%}
 .journey-tracker{grid-template-columns:repeat(6,minmax(120px,1fr));overflow-x:auto}
 .clean-header-actions{gap:8px}
}
@media(min-width:651px){.journey-mission{grid-template-columns:90px minmax(0,1fr) minmax(170px,210px)}}
