/* Family learning world styling. Assessment feedback and element category colours retain their original meanings. */
html[data-kp-module]{--kp-module-ink:#193f43;--kp-module-muted:#566d70;--kp-module-paper:#fffcf4;--kp-module-green:#17695c}
html[data-kp-module] body{background:var(--kp-module-paper)}
html[data-kp-module] .kp-module-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:28px;align-items:center;box-sizing:border-box;max-width:1180px;padding:30px 36px;margin:28px auto 32px;border:1px solid #d1e0cd;border-radius:30px;background:#edf3e5;color:var(--kp-module-ink);text-align:left}
html[data-kp-module] .kp-module-copy{min-width:0}
html[data-kp-module] .kp-module-intro h1,html[data-kp-module] .kp-module-intro h2{font-family:ui-rounded,"Avenir Next","Trebuchet MS",system-ui,sans-serif;font-size:clamp(32px,4vw,49px);line-height:1.1;letter-spacing:-.045em;font-weight:850;color:var(--kp-module-ink);margin:10px 0 18px}
html[data-kp-module] .kp-module-intro p{max-width:680px;font-size:16px;line-height:1.75;color:var(--kp-module-muted);margin:10px 0}
html[data-kp-module] .kp-module-intro .kp-module-eyebrow,html[data-kp-module] .kp-module-intro .eyebrow,html[data-kp-module] .kp-module-intro .htw-kicker,html[data-kp-module] .kp-module-intro .studio-eyebrow,html[data-kp-module] .kp-module-intro .family-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#4b7167}
.kp-module-scene{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;max-height:280px}
html[data-kp-module] .kp-module-welcome{width:calc(100% - 40px)}
html[data-kp-module] .kp-module-intro[hidden]{display:none!important}
.kp-module-scene{border-radius:20px;object-fit:cover}
html[data-kp-module=learn]{--ink:#193f43;--muted:#566d70;--line:#d6e0ce;--paper:#fffcf4;--navy:#194f46;--blue:#17695c;--blue-d:#125348;--r:22px}
html[data-kp-module=learn] .wrap{max-width:1000px}html[data-kp-module=learn] .lh{background:#194f46}html[data-kp-module=learn] .gbtn{border-radius:20px;background:#fff8e6;border-color:#dfd3b2;color:#193f43;box-shadow:0 4px 0 #e8e1cb}html[data-kp-module=learn] .gbtn[aria-current=true]{border-color:#17695c;background:#e7f1e8}
html[data-kp-module=olympix] .subjects-hero>.kp-module-intro{margin-top:0}html[data-kp-module=olympix] .subjects-subtitle{max-width:650px}html[data-kp-module=olympix] .subjects-title em{font-family:inherit;color:#17695c}html[data-kp-module=olympix] .subject-card{border-radius:24px;box-shadow:0 5px 0 #233e3d0d}html[data-kp-module=olympix] .subject-card.maths{background:#fff4d8;color:#193f43;border-color:#e9d6a9}html[data-kp-module=olympix] .subject-card.reading{background:#f0e9f8;color:#193f43;border-color:#d9cce7}html[data-kp-module=olympix] .subject-card.science{background:#e7f1e9;color:#193f43;border-color:#c6dbc9}
html[data-kp-module=discovery] .htw-library-hero{max-width:1180px;width:calc(100% - 40px);background:#f0eafa;border-color:#d9cce7}html[data-kp-module=discovery] .htw-browse,html[data-kp-module=discovery] .htw-collection-shelf,html[data-kp-module=discovery] .htw-journeys{border-radius:24px}html[data-kp-module=discovery] .htw-primary-nav a{border-radius:10px}
html[data-kp-module=communication] .studio-page{--studio-blue:#17695c;--blue:#17695c;--studio-line:#d1dece;--studio-muted:#566d70}html[data-kp-module=communication] .studio-intro{width:calc(100% - 40px);background:#fff0dc;border-color:#e8d1b4}html[data-kp-module=communication] .studio-intro-note{max-width:none;border-top:1px dashed #d9c9aa;padding-top:12px;margin-top:18px}html[data-kp-module=communication] .studio-intro-note p{font-size:14px}html[data-kp-module=communication] .studio-metrics{gap:16px}html[data-kp-module=communication] .studio-controls{border-radius:18px}html[data-kp-module=communication] .catalog-card,html[data-kp-module=communication] .studio-activity,html[data-kp-module=communication] .library-help{border-radius:20px}
html[data-kp-module=elements].kp-elements-home .atlas-intro{display:none}html[data-kp-module=elements] .kp-module-welcome{background:#e7f1e9}html[data-kp-module=elements][data-theme=dark]{--kp-module-ink:#eaf3e9;--kp-module-muted:#bdcec5;--kp-module-paper:#0b1015}html[data-kp-module=elements][data-theme=dark] .kp-module-intro{background:#19392f;border-color:#35584a}html[data-kp-module=elements][data-theme=dark] .kp-module-eyebrow{color:#b6d3bf}
html[data-kp-module=games] .kp-games-heading{max-width:none;background:#e7f0fa;border-color:#c9d7e7}html[data-kp-module=games] #kp-game-welcome{max-width:1180px;margin-top:6px}html[data-kp-module=games] #kp-game-welcome .kp-module-scene{max-height:210px}html[data-kp-module=games] .kp-game-card{border-radius:25px}html[data-kp-module=games] .kp-game-toolbar{padding:20px;border:1px solid #d2dfcf;border-radius:22px;background:#fffefa}
@media(max-width:760px){html[data-kp-module] .kp-module-intro{grid-template-columns:1fr;padding:24px;gap:12px;margin-top:20px;border-radius:24px}html[data-kp-module] .kp-module-intro h1,html[data-kp-module] .kp-module-intro h2{font-size:34px}html[data-kp-module] .kp-module-intro p{font-size:15px}.kp-module-scene{max-height:210px}html[data-kp-module] .kp-module-welcome,html[data-kp-module=discovery] .htw-library-hero,html[data-kp-module=communication] .studio-intro{width:calc(100% - 28px)}html[data-kp-module=games] #kp-game-welcome .kp-module-scene{max-height:165px}html[data-kp-module=olympix] .subjects-hero>.kp-module-intro{padding:22px;margin-inline:0}}

@media(prefers-color-scheme:dark){html[data-kp-module=elements]:not([data-theme=light]){--kp-module-ink:#eaf3e9;--kp-module-muted:#bdcec5;--kp-module-paper:#0b1015}html[data-kp-module=elements]:not([data-theme=light]) .kp-module-intro{background:#19392f;border-color:#35584a}html[data-kp-module=elements]:not([data-theme=light]) .kp-module-eyebrow{color:#b6d3bf}}

html[data-kp-module] #kp-web-tools{background:#194f46;color:#edf5eb}html[data-kp-module] #kp-web-tools summary{color:#edf5eb}html[data-kp-module] #kp-web-tools .kp-web-more>div{background:#194f46}html[data-kp-module] #kp-web-tools .kp-web-label{color:#c9e0d3}
html[data-kp-module=communication] .studio-free-label{color:#17695c}html[data-kp-module=communication] .studio-page:has(#view-library[hidden]) .studio-intro{padding:20px 28px}html[data-kp-module=communication] .studio-page:has(#view-library[hidden]) .studio-intro .kp-module-scene{max-height:155px}html[data-kp-module=communication] .studio-page:has(#view-library[hidden]) .studio-intro h1{font-size:36px}html[data-kp-module=communication] .studio-page:has(#view-library[hidden]) .studio-intro-note{display:none}
html[data-kp-module=learn] .grid-grades{grid-template-columns:repeat(5,minmax(0,1fr))}html[data-kp-module=olympix] .app-root{background:#fffcf4}
@media(max-width:600px){html[data-kp-module=learn] .grid-grades{gap:8px}html[data-kp-module=learn] .gbtn{padding:12px 5px;font-size:22px}html[data-kp-module=learn] .gbtn small{font-size:11px}}

html[data-kp-module=olympix] .subject-card.maths p,html[data-kp-module=olympix] .subject-card.reading p,html[data-kp-module=olympix] .subject-card.science p,html[data-kp-module=olympix] .subject-card.maths .subject-enter,html[data-kp-module=olympix] .subject-card.reading .subject-enter,html[data-kp-module=olympix] .subject-card.science .subject-enter{color:#46675f}html[data-kp-module=olympix] .subject-card.maths .subject-icon,html[data-kp-module=olympix] .subject-card.reading .subject-icon,html[data-kp-module=olympix] .subject-card.science .subject-icon{color:#193f43;background:#ffffff80}

/* Compact welcome banners retain every face in the landscape photograph. */
html[data-kp-module=communication] .studio-page:has(#view-library[hidden]) .studio-intro .kp-module-scene{max-height:none;max-width:300px;justify-self:center}
html[data-kp-module=games] #kp-game-welcome .kp-module-scene{max-height:none;max-width:315px;justify-self:center}
html[data-kp-module=olympix] .kp-subject-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;max-height:none;margin:0 0 14px}
html[data-kp-module=olympix] .coding-path-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);align-items:center;gap:28px;max-width:none}
html[data-kp-module=olympix] .coding-path-heading>div{min-width:0}html[data-kp-module=olympix] .kp-coding-scene{max-height:300px}
@media(max-width:760px){html[data-kp-module=olympix] .coding-path-heading{grid-template-columns:minmax(0,1fr);gap:12px}html[data-kp-module=olympix] .kp-coding-scene{max-width:480px;max-height:none;justify-self:center}}
