/* The Skool of Life — site styles. Ported from the baseline stylesheet (commit 52dfda4), dead
   selectors removed, plus additions at the end of this file (search "Additions"). */
:root{--navy:#0B2D66;--blue:#2563FF;--green:#4FD1A4;--yellow:#FFD12E;--ivory:#FFF9EF;--line:#cad2cf;--muted:#415774}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--navy);font-family:'Trebuchet MS',Arial,sans-serif;font-size:1.0625rem;line-height:1.65}
a{color:inherit;text-underline-offset:5px}
button,input,select,textarea{font:inherit;color:inherit}
button,a,input,select,textarea{touch-action:manipulation}
button{cursor:pointer}
img{display:block;max-width:100%;height:auto}
button,a{-webkit-tap-highlight-color:transparent}
h1,h2,h3,p{margin:0}
h1,h2,h3{line-height:1.06;letter-spacing:-.055em;font-weight:900}
h1{font-size:clamp(3.125rem,6vw,5.375rem)}
h2{font-size:clamp(2.375rem,4.5vw,4rem)}
h3{font-size:1.75rem;letter-spacing:-.035em}
p{max-width:65ch}
.eyebrow{display:block;font-size:0.75rem;letter-spacing:.13em;text-transform:uppercase;font-weight:800;margin-bottom:23px}
.micro{font-size:0.75rem;display:block;margin-top:20px;color:var(--muted)}
.text-link{font-weight:700;text-decoration-thickness:1px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;background:var(--navy);color:var(--ivory);padding:15px 24px;border:2px solid var(--navy);border-radius:13px;text-decoration:none;font-weight:700;line-height:1.4;box-shadow:3px 3px 0 transparent;transition:transform .15s,box-shadow .15s}
.button:hover{transform:rotate(-1deg);box-shadow:3px 3px 0 var(--green)}
.button.small{font-size:0.875rem;padding:12px 18px;gap:12px}
.button.light{background:var(--ivory);color:var(--navy);border-color:var(--ivory)}
.button.outline{background:transparent;color:var(--navy)}
.skip{position:fixed;left:15px;top:-90px;z-index:100;background:var(--ivory);padding:15px}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
main:focus{outline:none}
header{padding:22px 5%;display:flex;align-items:center;justify-content:space-between;gap:28px;background:var(--ivory)}
.brand{width:180px;flex-shrink:0}
.brand img{mix-blend-mode:multiply}
.site-nav{display:flex;gap:30px;align-items:center}
.site-nav a{font-weight:700;font-size:0.9375rem;text-decoration:none}
.site-nav a:hover,.site-nav a[aria-current]{text-decoration:underline}
main{min-height:65vh}
.playful-hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:10px;padding:75px 4% 100px 7%;position:relative;overflow:hidden}
.hero-copy{position:relative;z-index:2}
.hero-copy h1{font-size:clamp(3rem,5.45vw,5.1875rem);line-height:1.15;letter-spacing:-.06em;margin:20px 0 26px}
.headline-paper{display:table;width:max-content;max-width:100%;padding:4px 16px 8px;transform:rotate(-3deg)}
.green-paper{background:var(--green)}
.blue-paper{background:var(--blue);color:var(--ivory);transform:rotate(2deg);margin:10px 0 0 35px}
.hero-copy p{font-size:1.1875rem;max-width:430px;margin:30px 0}
.hero-scribble{position:absolute;width:85px;bottom:0;right:50px;transform:rotate(-7deg)}
.hero-illustration{position:relative;margin-left:-20px}
.hero-illustration>picture>img{width:100%;min-height:330px;object-fit:contain}
.illustration-note{display:block;background:var(--yellow);padding:18px 24px;width:max-content;font-size:1.1875rem;font-weight:900;line-height:1.2;transform:rotate(4deg);margin:-5px 0 0 40%;border-radius:3px;box-shadow:3px 4px 0 #0b2d6610}
.section{padding:85px 7%}
.section-title{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}
.section-title>p{font-size:1.0625rem}
.section-title h2{font-size:clamp(2.625rem,5vw,4.375rem)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{border:1px solid var(--line);background:#fffdf7;overflow:hidden;display:flex;flex-direction:column;border-radius:3px}
.card>a{display:block;text-decoration:none;flex:1}
.card img{width:100%;height:240px;object-fit:cover}
.card-body{padding:25px}
.card .eyebrow{font-size:0.625rem;margin-bottom:16px}
.card h3{font-size:1.875rem;margin-bottom:16px}
.card p{font-size:0.9375rem}
.card-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:28px;font-size:0.75rem}
.round-arrow{font-size:1.5rem;width:35px;height:35px;display:grid;place-items:center}
.status{display:block;font-size:0.6875rem;color:var(--muted);margin-top:14px}
.card>a:hover h3{text-decoration:underline}
.discovery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}
.discovery-grid>.lesson-post{display:flex}
.lesson-post>.card{width:100%;border:0}
.discovery-grid .card{background:#eaf1fc}
.discovery-grid .card img{height:235px}
.discovery-grid .card h3{font-size:2.125rem}
.editorial-card{min-height:420px;position:relative;border-radius:3px}
.editorial-card.green{background:var(--green)}
.editorial-card.yellow{background:var(--yellow)}
.editorial-card a{padding:30px;height:100%;display:flex;flex-direction:column;text-decoration:none}
.post-label{font-size:0.75rem;font-weight:700;border-bottom:1px solid currentColor;align-self:start;padding-bottom:4px;margin-bottom:42px}
.editorial-card h3{font-size:clamp(2.125rem,3.4vw,3.125rem);margin-bottom:25px}
.editorial-card p{font-family:Georgia,serif;font-size:1.375rem;line-height:1.4}
.post-bottom{margin-top:auto;padding-top:38px;display:flex;justify-content:space-between;gap:20px;font-size:0.75rem}
.post-bottom>span:last-child{font-size:1.625rem;line-height:1}
.editorial-card a:hover h3{text-decoration:underline}
.wide-lesson{grid-column:span 2}
.wide-lesson .card>a{display:grid;grid-template-columns:1fr 1fr;align-items:stretch}
.wide-lesson .card img{height:100%;min-height:380px}
.wide-lesson .card-body{display:flex;flex-direction:column;justify-content:center;padding:38px}
.wide-lesson .card{background:var(--blue);color:var(--ivory)}
.wide-lesson .status{color:var(--ivory)}
.shape-discover{width:70px;height:36px;border-radius:0 0 50px 50px;background:var(--green);display:block;transform:rotate(-15deg);margin-top:35px}
.shape-do{display:block;width:70px;height:70px;border-radius:40px 40px 0 0;border:20px solid var(--blue);border-bottom:0}
.shape-build{display:block;width:65px;height:65px;border-radius:13px;background:var(--yellow);transform:rotate(10deg);margin-top:6px}
.learn-together-band{background:#eaf1fc;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:80px 8%;align-items:center;border-radius:28% 42% 0 0 / 25px 45px 0 0}
.learn-together-band h2{font-size:clamp(2.5rem,4.5vw,4.0625rem)}
.learn-together-band p{font-size:1.125rem;margin:25px 0}
.together-photo{position:relative;padding-bottom:40px}
.together-photo img{border-radius:110px 15px 15px 15px;transform:rotate(3deg);width:100%}
.together-photo span{position:absolute;bottom:5px;left:-25px;background:var(--yellow);transform:rotate(-5deg);padding:23px;font-weight:900;font-size:1.375rem;line-height:1.2}
.page-head{background:var(--green);padding:60px 7% 55px;margin-bottom:35px;border-radius:0 0 35% 22% / 0 0 25px 40px}
.page-head h1{font-size:clamp(2.875rem,6vw,5.3125rem)}
.page-head p{font-size:1.25rem;max-width:650px;margin-top:25px}
.page-head .notice{background:var(--ivory);max-width:750px}
.browse{padding:0 7% 75px}
.search-row{display:grid;grid-template-columns:1fr 220px;gap:20px;margin:25px 0}
.field label{display:block;font-size:0.8125rem;font-weight:700;margin-bottom:6px}
input,textarea,select{width:100%;border:1px solid #8190a5;border-radius:10px;background:white;padding:14px}
textarea{min-height:120px}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.chip{font-size:0.875rem;padding:9px 16px;border:1px solid #8190a5;border-radius:99px;background:transparent}
.chip[aria-pressed=true]{background:var(--navy);color:white;border-color:var(--navy)}
.results-count{font-size:0.875rem;margin-bottom:27px}
.empty{padding:40px;border:1px dashed #8190a5;border-radius:12px;grid-column:1/-1}
.empty p{margin-top:20px}
.future{padding:27px;border:1px dashed #8190a5;border-radius:12px;margin-top:35px}
.future p{font-size:1rem;margin-top:15px}
.lesson-head{display:grid;grid-template-columns:1fr .7fr;gap:60px;padding:40px 7%;align-items:center}
.lesson-head h1{font-size:clamp(3rem,5.5vw,4.875rem);margin:20px 0}
.lesson-head p{margin-bottom:20px}
.lesson-head>picture>img{width:100%;height:330px;object-fit:cover;border-radius:65px 10px 10px 10px}
.notice{background:#eaf1fc;border-left:4px solid var(--blue);padding:16px 20px;border-radius:4px;font-size:0.875rem;margin:22px 0}
.lesson-layout{display:grid;grid-template-columns:210px 1fr;gap:55px;padding:25px 7% 75px}
.lesson-aside{position:sticky;top:25px;align-self:start}
.lesson-aside a{display:block;padding:9px 0;font-size:0.875rem}
.lesson-aside .button{display:flex;margin-top:25px}
.lesson-aside .chip{margin-top:12px}
.lesson-content{max-width:850px}
.lesson-content h2{font-size:2.25rem;margin-bottom:20px}
.lesson-content section{margin-bottom:55px;scroll-margin-top:25px}
.materials{display:grid;grid-template-columns:1fr 1fr;gap:35px;background:white;border:1px solid var(--line);border-radius:14px;padding:28px}
.materials h3{font-size:1.4375rem;margin-bottom:15px}
.materials ul{padding-left:22px}
.demo{background:var(--navy);color:var(--ivory);padding:32px;border-radius:14px}
.demo p{margin:18px 0}
.demo small{display:block;font-size:0.8125rem;line-height:1.6;margin-top:15px}
.step{display:grid;grid-template-columns:45px 1fr;gap:20px;padding:28px 0;border-top:1px solid var(--line);margin:22px 0}
.number{background:var(--yellow);border-radius:10px;width:40px;height:40px;display:grid;place-items:center;font-weight:900}
.step h3{font-size:1.75rem;margin-bottom:16px}
.step p{margin-bottom:15px}
.why{font-size:0.9375rem;color:var(--muted)}
details{padding:18px 0;border-bottom:1px solid var(--line)}
summary{cursor:pointer;font-weight:700}
details p{font-size:1rem;margin-top:18px}
.practice{background:var(--green);padding:30px;border-radius:12px}
.practice p{margin:15px 0}
.sources{font-size:0.875rem}
.sources a{display:block;margin:13px 0}
.prose{max-width:950px;margin:auto;padding:20px 7% 70px}
.prose h2{font-size:2.375rem;margin:38px 0 22px}
.prose p{margin-bottom:24px}
.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;padding:20px 7% 65px}
.program{padding:32px;background:white;border:1px solid var(--line);border-radius:12px}
.program p{margin:20px 0;font-size:1rem}
.program .eyebrow{font-size:0.6875rem;color:var(--muted)}
.navy-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:65px 7%;background:var(--navy);color:var(--ivory);border-radius:20px;margin:0 7%}
.navy-section .eyebrow{color:var(--green)}
.involve-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:0 7% 75px}
.involve-copy{display:grid;gap:22px}
.involve-copy article{background:white;border:1px solid var(--line);padding:27px;border-radius:13px}
.involve-copy p{font-size:1rem;margin:15px 0}
.involve-copy .chip{margin-top:10px}
.form-box{align-self:start;padding:32px;border:1px solid var(--line);border-radius:15px;background:white}
.form-box h2{font-size:2rem}
.form-box .field{margin:18px 0}
.form-box p{font-size:0.875rem;margin:15px 0}
.check{display:flex;gap:12px;font-size:0.875rem;align-items:start;margin:22px 0}
.check input{width:20px;min-height:20px;flex-shrink:0}
.form-result{white-space:pre-wrap;background:#eaf1fc;font-size:0.875rem;border-radius:10px;padding:20px;overflow-wrap:anywhere}
.form-result:empty{display:none}
.print-button{border:0}
body.large-type .lesson-content{font-size:1.3125rem}
.posts-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}
.post-head .eyebrow{margin-top:35px}
.post-head.yellow{background:var(--yellow)}
.post-head h1{max-width:950px}
.post-prose{max-width:900px}
.post-prose p{font-size:1.1875rem}
.post-prose .micro{font-size:0.8125rem}
.post-prose .practice{margin:45px 0}
.woset-footer{padding:70px 5% 25px;background:var(--ivory);border-top:1px solid var(--line)}
.footer-columns{display:grid;grid-template-columns:1fr 1fr 1.15fr;gap:7%;padding:0 2% 60px;align-items:start}
.footer-mission p{font-size:1.125rem;margin-bottom:25px}
.footer-mission>span{font-size:0.75rem}
.footer-links{display:grid;gap:12px}
.footer-links a{font-size:1.0625rem;text-decoration:none}
.footer-links a:hover{text-decoration:underline}
.footer-invitation h2{font-size:1.75rem;margin-bottom:15px}
.footer-invitation p{font-size:1rem;margin-bottom:20px}
.footer-invitation .button{font-size:0.875rem}
.footer-invitation small{display:block;font-size:0.6875rem;color:var(--muted);line-height:1.5;margin-top:17px}
.footer-logo{display:block;width:100%;margin:30px auto 50px;max-width:1350px}
.footer-logo img{width:100%;mix-blend-mode:multiply}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding:25px 2% 0;border-top:1px solid var(--line);font-size:0.75rem}

@media(max-width:1050px){.header-cta{display:none}
.playful-hero{padding-top:55px;grid-template-columns:1fr 1fr}
.hero-copy h1{font-size:calc(1.5rem + 3.2vw)}
.hero-illustration{margin-left:0}
.hero-copy p{font-size:1.0625rem}
.hero-scribble{display:none}
.discovery-grid{grid-template-columns:repeat(2,1fr)}
.wide-lesson{grid-column:span 2}
.editorial-card{min-height:360px}
.editorial-card h3{font-size:2.75rem}
.lesson-layout{grid-template-columns:170px 1fr;gap:30px}
.footer-columns{gap:35px}
.footer-invitation .button{padding:12px 15px}
.cards .card h3{font-size:1.625rem}
.card img{height:200px}
.program-grid{gap:18px}
.program{padding:24px}
}

@media(max-width:700px){header{flex-direction:column;padding:17px 6%;gap:15px}
.brand{width:150px}
.site-nav{width:100%;justify-content:space-between;gap:8px}
.site-nav a{font-size:0.8125rem}
.playful-hero{grid-template-columns:1fr;padding:40px 6% 70px;gap:30px}
.hero-copy h1{font-size:clamp(2.4375rem,10vw,4.25rem);margin-top:25px}
.headline-paper{padding:5px 12px}
.blue-paper{margin-left:20px}
.hero-copy p{font-size:1.125rem}
.hero-copy .eyebrow{font-size:0.6875rem}
.hero-illustration>picture>img{min-height:0}
.illustration-note{font-size:1.0625rem;padding:15px 18px;margin-left:30%}
.section{padding:55px 6%}
.section-title{flex-direction:column;align-items:start;gap:23px}
.section-title h2{font-size:3rem}
.cards,.discovery-grid,.posts-grid{grid-template-columns:1fr}
.discovery-grid{gap:20px}
.editorial-card{min-height:330px}
.editorial-card h3{font-size:2.8125rem}
.editorial-card p{font-size:1.3125rem}
.post-label{margin-bottom:30px}
.card img,.discovery-grid .card img{height:235px}
.card h3,.discovery-grid .card h3{font-size:2rem}
.wide-lesson{grid-column:auto}
.wide-lesson .card>a{display:block}
.wide-lesson .card img{height:235px;min-height:0}
.wide-lesson .card-body{padding:25px}
.learn-together-band{grid-template-columns:1fr;gap:45px;padding:60px 7%}
.learn-together-band h2{font-size:3rem}
.together-photo{padding-left:12px}
.together-photo span{left:0;font-size:1.25rem}
.page-head{padding:45px 6% 40px}
.page-head h1{font-size:clamp(2.6875rem,10vw,4.125rem)}
.page-head p{font-size:1.125rem}
.browse{padding:0 6% 50px}
.search-row{grid-template-columns:1fr}
.chip{font-size:0.8125rem}
.lesson-head{grid-template-columns:1fr;gap:22px;padding:30px 6%}
.lesson-head h1{font-size:clamp(2.6875rem,10vw,4.0625rem)}
.lesson-head>picture>img{height:240px}
.lesson-layout{grid-template-columns:1fr;padding:10px 6% 45px;gap:25px}
.lesson-aside{position:static;display:flex;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:25px}
.lesson-aside .eyebrow{width:100%;margin-bottom:0}
.lesson-aside .button{margin:0;padding:9px 16px;font-size:0.8125rem}
.lesson-aside .chip{margin:0}
.materials{grid-template-columns:1fr;gap:20px;padding:23px}
.lesson-content h2{font-size:2rem}
.demo{padding:25px}
.step{grid-template-columns:34px 1fr;gap:14px}
.number{width:34px;height:34px}
.step h3{font-size:1.5625rem}
.involve-layout{grid-template-columns:1fr;gap:28px;padding:0 6% 45px}
.form-box{padding:25px}
.program-grid{grid-template-columns:1fr;padding:5px 6% 50px;gap:20px}
.program{padding:28px}
.navy-section{grid-template-columns:1fr;gap:35px;padding:35px 7%;margin:0 6%}
.prose{padding:10px 6% 50px}
.prose h2{font-size:2.0625rem}
.post-prose p{font-size:1.125rem}
.woset-footer{padding:50px 6% 25px}
.footer-columns{grid-template-columns:1fr 1fr;gap:35px;padding:0 0 30px}
.footer-invitation{grid-column:span 2}
.footer-invitation h2{font-size:2rem}
.footer-logo{margin:20px auto 35px}
.footer-bottom{flex-direction:column;gap:8px;padding:20px 0 0}
.footer-mission p,.footer-links a{font-size:0.9375rem}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
.button:hover{transform:none}
}
@media print{header,footer,.lesson-aside,.demo,.skip,.print-button{display:none}
.lesson-head{display:block}
.lesson-head>picture>img{display:none}
.lesson-layout{display:block}
.lesson-content{max-width:none}
.step,.materials,details{break-inside:avoid}
body{background:white;font-size:12pt}
.lesson-content h2{font-size:23pt}
details p{display:block}
}

/* Complete the selected design across collection, mission and pilot pages. */
.site-nav{gap:20px}
.page-stamp{display:inline-block;border:1px solid currentColor;border-radius:99px;padding:7px 13px;font-size:0.75rem;margin-top:25px}
.browse-help{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;margin-top:65px;padding-top:40px;border-top:1px solid var(--line)}
.browse-help h2{font-size:2.375rem}
.browse-help p{font-size:1.0625rem;margin-bottom:22px}
.program{position:relative;padding-top:120px}
.program-shape{position:absolute;left:32px;top:25px;margin:0!important}
.program .shape-discover{top:43px}
.program .shape-build{top:28px}
.pilot-plan{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:65px 7% 75px;background:#eaf1fc;border-radius:30% 38% 0 0 / 25px 30px 0 0}
.pilot-plan h2{font-size:clamp(2.1875rem,4.3vw,3.75rem)}
.pilot-plan>div>p{font-size:1.125rem;margin:27px 0}
.pilot-plan aside{background:var(--ivory);padding:32px;border-radius:15px;transform:rotate(1deg);align-self:center}
.pilot-plan aside h3{font-size:1.875rem}
.pilot-plan dl{margin:25px 0}
.pilot-plan dl>div{display:grid;grid-template-columns:110px 1fr;gap:20px;border-top:1px solid var(--line);padding:15px 0}
.pilot-plan dt{font-size:0.8125rem;font-weight:800}
.pilot-plan dd{font-size:0.9375rem;margin:0}
.session-flow h2{font-size:clamp(2.3125rem,4.5vw,3.875rem)}
.session-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:40px}
.session-grid article>span,.principles-grid article>span{display:inline-block;font-size:0.875rem;border:1px solid var(--navy);border-radius:50%;width:36px;height:36px;text-align:center;line-height:35px;margin-bottom:24px}
.session-grid h3{font-size:1.75rem;margin-bottom:19px}
.session-grid p{font-size:1rem}
.workshop-access h2{font-size:2.75rem}
.about-head{background:var(--yellow)}
.about-mission{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:45px 7% 75px;align-items:center}
.about-mission h2{font-size:clamp(2.5rem,4.8vw,4.1875rem)}
.about-mission p{font-size:1.25rem;margin-top:27px}
.about-mission img{width:100%}
.about-principles{background:#eaf1fc;border-radius:32% 24% 0 0 / 25px 35px 0 0}
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:48px}
.principles-grid h3{font-size:1.875rem;margin-bottom:22px}
.principles-grid p{font-size:1rem}
.symbol-story{display:grid;grid-template-columns:260px 1fr;gap:12%;max-width:1000px;margin:auto;align-items:center;padding:85px 7%}
.symbol-story>img{width:100%;mix-blend-mode:multiply}
.symbol-story h2{font-size:4rem}
.symbol-story p{margin-top:25px;font-size:1.125rem}
.path-tip{padding:15px;background:#eaf1fc;border-left:3px solid var(--blue);border-radius:3px}
.step-view-intro{font-size:1rem;color:var(--muted)}
.step-view-controls{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0}
.step-view-controls .chip{font-size:0.875rem}
#step-focus{background:#eaf1fc;padding:32px;border-radius:15px;min-height:325px}
#step-focus h3{font-size:1.9375rem;margin-bottom:20px}
#step-focus>p{margin-bottom:20px}
#focus-title:focus{outline:none}
.step-navigation{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0 20px}
.step-navigation button:disabled{opacity:.4;cursor:default;transform:none;box-shadow:none}
.text-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;padding:8px 0;font-weight:700;font-size:0.875rem}
.related-lessons h2{font-size:2.125rem}
.related-lessons>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}
.related-lessons>div>a{background:var(--yellow);padding:24px;text-decoration:none;display:grid;grid-template-columns:1fr 25px;gap:13px;border-radius:12px}
.related-lessons>div>a:nth-child(2){background:var(--green)}
.related-lessons span{font-size:0.6875rem;grid-column:span 2}
.related-lessons strong{font-size:1.4375rem;line-height:1.2;letter-spacing:-.03em}
.related-lessons b{font-size:1.5rem}
.related-lessons>div>a:hover strong{text-decoration:underline}

@media(max-width:1050px){.site-nav{gap:23px}
.pilot-plan{gap:35px}
.pilot-plan aside{padding:25px}
.pilot-plan dl>div{grid-template-columns:85px 1fr;gap:15px}
.principles-grid,.session-grid{gap:28px}
.symbol-story{gap:70px}
.workshop-access h2{font-size:2.375rem}
}

@media(max-width:700px){.site-nav{gap:9px;flex-wrap:wrap;justify-content:center}
.site-nav a{font-size:0.75rem;padding:3px 0}
.browse-help{grid-template-columns:1fr;gap:23px;margin-top:45px}
.browse-help h2{font-size:2.125rem}
.program{padding-top:115px}
.program-shape{left:28px}
.pilot-plan{grid-template-columns:1fr;gap:38px;padding:55px 6%}
.pilot-plan h2{font-size:2.625rem}
.pilot-plan>div>p{font-size:1.0625rem}
.pilot-plan aside{padding:25px}
.pilot-plan dl>div{grid-template-columns:85px 1fr;gap:16px}
.session-grid{grid-template-columns:1fr;gap:35px}
.session-flow h2{font-size:2.6875rem}
.session-grid article>span{margin-bottom:18px}
.workshop-access h2{font-size:2.125rem}
.about-mission{grid-template-columns:1fr;gap:25px;padding:20px 6% 50px}
.about-mission h2{font-size:3rem}
.about-mission p{font-size:1.125rem}
.principles-grid{grid-template-columns:1fr;gap:36px}
.about-principles h2{font-size:2.6875rem}
.principles-grid article>span{margin-bottom:18px}
.symbol-story{grid-template-columns:1fr;gap:35px;padding:55px 7%}
.symbol-story>img{width:145px}
.symbol-story h2{font-size:3.25rem}
.symbol-story p{font-size:1.0625rem}
#step-focus{padding:25px;min-height:360px}
#step-focus h3{font-size:1.6875rem}
.step-navigation{gap:10px}
.step-navigation .chip{padding:10px 12px;font-size:0.75rem}
.step-navigation .button{padding:12px;font-size:0.75rem}
.related-lessons>div{grid-template-columns:1fr}
.related-lessons strong{font-size:1.5625rem}
}

@media print{#step-focus,.step-view-controls,.step-view-intro,.related-lessons{display:none!important}
#all-steps{display:block!important}
}

/* A dedicated family space, within the all-ages learning home. */
header{gap:20px}
.site-nav{gap:16px}
.site-nav a{font-size:0.875rem}
.header-cta{padding:11px 15px!important;font-size:0.8125rem!important}
.kids-home-band{background:var(--yellow);display:grid;grid-template-columns:1fr 1.35fr;gap:55px;padding:75px 7%;align-items:center;position:relative}
.kids-home-band h2{font-size:clamp(2.5rem,4.7vw,4.0625rem)}
.kids-home-band>div>p{font-size:1.125rem;margin:23px 0}
.home-kids-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.kids-hero{display:grid;grid-template-columns:1fr 1.05fr;gap:45px;align-items:center;padding:70px 7% 100px;overflow:hidden}
.kids-hero h1{font-size:clamp(3.375rem,6.8vw,6.25rem)}
.kids-hero h1 span{display:block;color:var(--blue)}
.kids-hero p{font-size:1.25rem;margin:27px 0;max-width:440px}
.kids-family-link{display:block;font-size:0.875rem;margin-top:20px}
.kids-hero-art{position:relative}
.kids-hero-art>picture>img{width:100%}
.floating-block{position:absolute;pointer-events:none}
.block-green{width:75px;height:38px;border-radius:0 0 60px 60px;background:var(--green);top:-35px;right:22%;transform:rotate(-20deg)}
.block-yellow{width:55px;height:55px;border-radius:12px;background:var(--yellow);left:7%;bottom:-45px;transform:rotate(15deg)}
.development-section{background:#eaf1fc;position:relative}
.development-intro{font-size:1.1875rem;max-width:750px;margin-top:28px}
.development-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:48px}
.development-grid article{padding:0 15px 0 0}
.development-grid h3{font-size:1.625rem;margin:24px 0 17px}
.development-grid p{font-size:1rem}
.development-symbol{display:grid;place-items:center;font-size:2.1875rem;width:65px;height:65px;border-radius:15px;background:var(--green)}
.development-grid article:nth-child(2) .development-symbol{background:var(--yellow)}
.development-grid article:nth-child(3) .development-symbol{background:var(--blue);color:var(--ivory)}
.development-grid article:nth-child(4) .development-symbol{background:var(--navy);color:var(--ivory)}
.kids-filters{display:grid;grid-template-columns:1fr 1fr;gap:23px;max-width:850px}
.kids-guidance{margin:24px 0;font-size:1rem;max-width:850px;background:#eaf1fc;border-radius:10px;padding:16px 20px}
.kids-activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.activity-card{border-radius:18px;overflow:hidden;background:var(--ivory);border:1px solid var(--navy)}
.activity-card>a{display:block;text-decoration:none;height:100%}
.activity-art{position:relative;display:grid;place-items:center;height:165px;background:var(--green)}
.activity-art>svg{width:95px;height:95px;transition:transform .25s}
.activity-art>span{position:absolute;right:20px;top:15px;font-size:1.6875rem}
.activity-card.yellow .activity-art{background:var(--yellow)}
.activity-card.blue .activity-art{background:var(--blue);color:var(--ivory)}
.activity-copy{padding:26px}
.activity-copy .eyebrow{font-size:0.625rem;margin-bottom:17px;line-height:1.5}
.activity-copy h3{font-size:1.8125rem;margin-bottom:15px}
.activity-copy p{font-size:1rem;margin-bottom:20px}
.activity-focus{display:block;font-size:0.75rem;color:var(--muted);line-height:1.5;margin-bottom:15px}
.activity-copy small{font-size:0.6875rem;color:var(--muted)}
.activity-card>a:hover h3{text-decoration:underline}
.grownups-section{position:relative;background:var(--navy);color:var(--ivory);padding:85px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%}
.grownups-section h2{font-size:clamp(2.6875rem,4.8vw,4.25rem)}
.grownups-section>div>p{font-size:1.125rem;margin:27px 0}
.caregiver-prompts{display:grid;gap:27px}
.caregiver-prompts article{border-bottom:1px solid #ffffff40;padding-bottom:25px}
.caregiver-prompts article:last-child{border:0}
.caregiver-prompts article>span{font-size:0.75rem;color:var(--green);display:block;margin-bottom:14px}
.caregiver-prompts h3{font-size:1.8125rem;margin-bottom:15px}
.caregiver-prompts p{font-size:1rem}
.family-bridge{display:flex;align-items:center;justify-content:space-between;gap:60px;background:var(--green)}
.family-bridge>div{max-width:620px}
.family-bridge h2{font-size:2.75rem}
.family-bridge p{margin-top:25px;font-size:1.125rem}
.family-bridge .button{flex-shrink:0}
.kids-sources{padding-top:55px;padding-bottom:65px}
.kids-sources h2{font-size:2.125rem}
.kids-sources>p{margin:23px 0;font-size:1rem}
.kids-sources>a{display:block;margin:15px 0;font-size:0.875rem}
.kids-sources .micro{font-size:0.75rem}
.activity-head{background:var(--green)}
.activity-head .eyebrow{margin-top:30px}
.activity-head.yellow{background:var(--yellow)}
.activity-head.blue{background:var(--blue);color:var(--ivory)}
.activity-heading{display:grid;grid-template-columns:1fr 170px;gap:40px;align-items:center}
.activity-heading h1{max-width:850px}
.activity-heading>svg{width:140px;height:140px;transform:rotate(5deg)}
.activity-tools{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:50px}
.activity-tools h2{font-size:1.875rem}
.activity-detail>section{margin:40px 0}
.activity-detail h2{font-size:2.1875rem}
.activity-detail .step{align-items:start;margin:10px 0;padding:20px 0}
.activity-detail .step p{margin:0;font-size:1.25rem}
.activity-detail .sources p{font-size:0.875rem}
.activity-actions{display:flex;align-items:center;gap:25px;margin:35px 0}
.home-kids-cards .activity-copy{padding:23px}
.home-kids-cards .activity-copy h3{font-size:1.6875rem}
.home-kids-cards .activity-art{height:140px}

/* Organic section transitions, made with an original code-native wave. */
.kids-home-band,.development-section,.grownups-section,.learn-together-band{position:relative;border-radius:0}
.kids-home-band:before,.development-section:before,.grownups-section:before,.learn-together-band:before{content:'';position:absolute;left:0;right:0;top:-29px;height:31px;background:inherit;background-image:none;mask:url('/assets/section-wave.svg') center / 100% 100% no-repeat;-webkit-mask:url('/assets/section-wave.svg') center / 100% 100% no-repeat;pointer-events:none}

/* Motion is optional, remains small, and never blocks reading or interaction. */
.motion-toggle{position:fixed;z-index:25;right:18px;bottom:18px;border:1px solid var(--navy);background:var(--ivory);color:var(--navy);border-radius:99px;padding:9px 14px;font-size:0.6875rem;font-weight:700;box-shadow:0 3px 15px #0b2d6617}
.woset-footer{padding-bottom:75px}
.motion-on.page-enter main{animation:page-arrive .38s cubic-bezier(.2,.7,.3,1) both}
.motion-on .hero-illustration>picture>img,.motion-on .kids-hero-art>picture>img{animation:gentle-float 6s ease-in-out infinite}
.motion-on .illustration-note{animation:paper-rock 7s ease-in-out infinite}
.motion-on .floating-block{animation:block-drift 5.5s ease-in-out infinite}
.motion-on .block-yellow{animation-delay:-2s}
.motion-on .activity-card:hover .activity-art>svg{transform:rotate(-7deg) translateY(-4px)}
.motion-on .round-arrow{transition:transform .25s}
.motion-on .card:hover .round-arrow{transform:translate(3px,-3px)}
.motion-on .will-reveal:not(.is-visible){opacity:0;transform:translateY(20px)}
.motion-on .will-reveal{transition:opacity .48s ease var(--reveal-delay,0ms),transform .48s cubic-bezier(.2,.7,.3,1) var(--reveal-delay,0ms)}
.motion-on .will-reveal.is-visible{opacity:1;transform:none}
.motion-on .chip{transition:background-color .2s,color .2s,border-color .2s}
.motion-on .footer-logo{transition:transform .5s cubic-bezier(.2,.7,.3,1)}
.motion-on .footer-logo:hover{transform:rotate(-1deg)}
@keyframes page-arrive{from{opacity:.35;transform:translateY(8px)}
to{opacity:1;transform:none}
}
@keyframes gentle-float{0%,100%{transform:translateY(0)}
50%{transform:translateY(-7px)}
}
@keyframes paper-rock{0%,100%{transform:rotate(4deg)}
50%{transform:rotate(1deg) translateY(-3px)}
}
@keyframes block-drift{0%,100%{translate:0 0}
50%{translate:0 -9px}
}

@media(max-width:1150px){.header-cta{display:none}
.development-grid{grid-template-columns:repeat(2,1fr);gap:35px}
.kids-home-band{grid-template-columns:1fr 1.3fr;gap:30px}
.home-kids-cards{gap:15px}
.kids-activity-grid{gap:20px}
.activity-copy{padding:23px}
.activity-copy h3{font-size:1.625rem}
.family-bridge{gap:35px}
.family-bridge h2{font-size:2.4375rem}
}

@media(max-width:700px){.site-nav{gap:9px 18px;justify-content:center;flex-wrap:wrap}
.site-nav a{font-size:0.75rem}
header{padding-bottom:22px}
.kids-home-band{grid-template-columns:1fr;gap:35px;padding:60px 6%}
.kids-home-band h2{font-size:3rem}
.kids-home-band>div>p{font-size:1.0625rem}
.home-kids-cards{grid-template-columns:1fr 1fr;gap:12px}
.home-kids-cards .activity-copy{padding:17px}
.home-kids-cards .activity-copy h3{font-size:1.4375rem}
.home-kids-cards .activity-art{height:115px}
.home-kids-cards .activity-art>svg{width:75px;height:75px}
.home-kids-cards .activity-focus{display:none}
.home-kids-cards .activity-copy .eyebrow{font-size:0.5625rem}
.kids-hero{grid-template-columns:1fr;gap:55px;padding:45px 6% 80px}
.kids-hero h1{font-size:clamp(2.9375rem,12vw,4.6875rem)}
.kids-hero p{font-size:1.125rem}
.kids-hero-art{padding-bottom:20px}
.block-green{width:60px;height:30px;top:-25px}
.block-yellow{width:40px;height:40px;bottom:-10px}
.development-section h2{font-size:3rem}
.development-intro{font-size:1.0625rem}
.development-grid{gap:32px 23px}
.development-grid h3{font-size:1.4375rem}
.development-grid p{font-size:0.875rem}
.development-symbol{width:55px;height:55px;font-size:1.875rem}
.kids-filters{grid-template-columns:1fr;gap:20px}
.kids-activity-grid{grid-template-columns:1fr}
.activity-copy h3{font-size:1.875rem}
.activity-art{height:150px}
.grownups-section{grid-template-columns:1fr;gap:45px;padding:65px 7%}
.grownups-section h2{font-size:3rem}
.grownups-section>div>p{font-size:1.0625rem}
.caregiver-prompts h3{font-size:1.75rem}
.family-bridge{flex-direction:column;align-items:start;gap:25px}
.family-bridge h2{font-size:2.375rem}
.family-bridge p{font-size:1.0625rem}
.kids-sources{padding-top:45px}
.activity-heading{grid-template-columns:1fr}
.activity-heading>svg{width:85px;height:85px;display:none}
.activity-tools{grid-template-columns:1fr;gap:5px;margin-bottom:25px}
.activity-tools h2{font-size:1.8125rem}
.activity-actions{flex-direction:column;align-items:start;gap:20px}
.motion-toggle{right:12px;bottom:12px;padding:9px 12px}
.woset-footer{padding-bottom:65px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
.motion-on.page-enter main,.motion-on .hero-illustration>picture>img,.motion-on .kids-hero-art>picture>img,.motion-on .illustration-note,.motion-on .floating-block{animation:none!important}
.motion-on .will-reveal{opacity:1!important;transform:none!important;transition:none!important}
.motion-on .footer-logo:hover,.motion-on .activity-card:hover .activity-art>svg{transform:none!important}
}

body:not(.motion-on) .button,body:not(.motion-on) .activity-art>svg{transition:none}
body:not(.motion-on) .button:hover{transform:none}

@media print{.motion-toggle,.activity-head> a,.activity-actions,.floating-block{display:none!important}
.motion-on main,.motion-on *{animation:none!important;opacity:1!important;transform:none!important;transition:none!important}
.activity-head{background:white!important;color:var(--navy)!important;border-radius:0;padding:0}
.activity-detail{padding:0}
.activity-detail .step{break-inside:avoid}
.activity-tools{display:block}
}

/* Creative sections: tangible objects, an illustrated chapter model, a curiosity menu. */
.curiosity-cabinet{background:var(--navy);color:var(--ivory);padding:80px 7% 90px;position:relative;overflow:hidden}
.cabinet-heading{position:relative;margin-bottom:40px;padding-right:200px}
.cabinet-heading h2{font-size:clamp(2.75rem,5.7vw,4.875rem)}
.cabinet-sticker{position:absolute;right:15px;top:45px;background:var(--yellow);color:var(--navy);font-weight:900;font-size:1.1875rem;line-height:1.2;padding:23px;transform:rotate(7deg);border-radius:5px}
.cabinet-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center}
.cabinet-display>picture>img{width:100%;height:310px;object-fit:contain;filter:drop-shadow(0 15px 15px #00000015)}
.object-buttons{display:flex;gap:12px;margin-top:30px}
.object-button{background:var(--ivory);color:var(--navy);border:2px solid transparent;border-radius:10px;flex:1;text-align:left;padding:15px;font-size:1.1875rem;font-weight:800;display:grid;grid-template-columns:1fr 20px;gap:12px;line-height:1.1}
.object-button>span{font-size:0.625rem;font-weight:500;grid-column:span 2}
.object-button>b{font-size:1.375rem}
.object-button[aria-pressed=true]{background:var(--yellow);border-color:var(--yellow);transform:rotate(-3deg)}
.object-detail{padding:35px;background:var(--ivory);color:var(--navy);border-radius:25px;transform:rotate(1deg);min-height:470px;transition:background-color .35s}
.object-detail.green{background:var(--green)}
.object-detail.yellow{background:var(--yellow)}
.object-detail h3{font-size:clamp(1.8125rem,3.3vw,2.875rem);margin-bottom:23px}
.object-detail>p{font-size:1rem;margin-bottom:25px}
.object-task{border-top:1px solid currentColor;padding-top:20px;margin-bottom:22px}
.object-task>span{font-size:0.6875rem;display:block;margin-bottom:10px}
.object-task strong{font-size:1.4375rem;line-height:1.1;display:block}
.object-detail small{display:block;font-size:0.625rem;line-height:1.5;margin-top:17px}
.learning-storybook{padding:85px 7% 90px;background:#eaf1fc;position:relative}
.storybook-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;flex-wrap:wrap;margin-bottom:40px}
.storybook-heading>.eyebrow{width:100%;margin-bottom:-15px}
.storybook-heading h2{font-size:clamp(2.8125rem,5.3vw,4.6875rem)}
.storybook-heading p{font-size:1.0625rem;max-width:270px}
.chapter-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:24px}
.chapter-button{background:transparent;border:1px solid var(--navy);border-radius:12px;padding:20px;display:grid;grid-template-columns:1fr 25px;gap:13px;text-align:left;align-items:end}
.chapter-button>span{font-size:0.6875rem;grid-column:span 2}
.chapter-button>strong{font-size:1.9375rem;line-height:1.1;letter-spacing:-.05em}
.chapter-button>b{font-size:1.625rem;line-height:1}
.chapter-button[aria-pressed=true]{background:var(--navy);color:var(--ivory)}
.chapter-scene{display:grid;grid-template-columns:1fr 1fr;border-radius:28px;background:var(--green);min-height:460px;overflow:hidden;transition:background-color .4s,color .4s}
.chapter-scene.blue{background:var(--blue);color:var(--ivory)}
.chapter-scene.yellow{background:var(--yellow)}
.chapter-graphic{position:relative;display:flex;align-items:center;justify-content:center;min-height:450px;overflow:hidden}
.chapter-number{position:absolute;font-size:15rem;line-height:1;color:var(--navy);opacity:.12;top:25px;left:25px;font-weight:900;letter-spacing:-.1em}
.chapter-scene.blue .chapter-number{color:var(--ivory)}
/* Decorative watermark numeral: drawn as generated content so it is not read as text (WCAG 1.4.3 exempts decoration). */
.chapter-number::before{content:attr(data-number)}
.chapter-symbol{width:175px;height:175px;background:var(--ivory);color:var(--navy);padding:23px;border-radius:35px;transform:rotate(-9deg);position:relative;box-shadow:12px 12px 0 #0b2d6620}
.chapter-symbol svg{width:100%;height:100%}
.chapter-word{font-size:clamp(2.25rem,4vw,4rem);font-weight:900;position:absolute;bottom:27px;left:30px;right:30px;text-align:center;letter-spacing:-.06em}
.chapter-scene article{padding:50px 45px 50px 15px;align-self:center}
.chapter-scene h3{font-size:clamp(2.25rem,4.3vw,3.875rem);margin-bottom:24px}
.chapter-scene article>p{font-size:1.0625rem;margin-bottom:22px}
.chapter-prompt{font-family:Georgia,serif;font-size:1.375rem;margin-bottom:30px}
.chapter-scene.blue .button{background:var(--ivory);border-color:var(--ivory);color:var(--navy)}
.curiosity-menu{padding:90px 7% 95px;background:var(--ivory)}
.menu-heading{margin-bottom:45px;display:flex;align-items:end;gap:50px;justify-content:space-between;flex-wrap:wrap}
.menu-heading>.eyebrow{width:100%;margin-bottom:-15px}
.menu-heading h2{font-size:clamp(2.875rem,5.6vw,5rem)}
.menu-heading>p{font-size:1.125rem}
.menu-layout{display:grid;grid-template-columns:1.25fr 1fr;gap:8%;align-items:start}
.menu-choices{border-top:2px solid var(--navy)}
.menu-choice{display:grid;grid-template-columns:28px 1fr 40px;gap:18px;align-items:center;width:100%;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--navy);padding:26px 18px 26px 8px;min-height:110px;color:var(--navy)}
.menu-choice>span{font-size:0.6875rem;align-self:start;padding-top:4px}
.menu-choice>strong{font-size:clamp(1.875rem,3.3vw,2.875rem);font-weight:800;letter-spacing:-.055em;line-height:1.1}
.menu-choice>b{font-size:2.125rem}
.menu-choice[aria-pressed=true]{background:var(--yellow)}
.menu-receipt{padding:35px;background:var(--green);position:relative;transform:rotate(2deg);min-height:480px;border-radius:5px;box-shadow:5px 6px 0 #0b2d6610}
.menu-receipt:after{content:'';position:absolute;left:0;right:0;bottom:-12px;height:14px;background:var(--green);clip-path:polygon(0 0,100% 0,100% 100%,95% 0,90% 100%,85% 0,80% 100%,75% 0,70% 100%,65% 0,60% 100%,55% 0,50% 100%,45% 0,40% 100%,35% 0,30% 100%,25% 0,20% 100%,15% 0,10% 100%,5% 0,0 100%)}
.menu-receipt>.eyebrow{font-size:0.625rem;line-height:1.5;border-bottom:1px dashed var(--navy);padding-bottom:20px}
.menu-receipt h3{font-size:2.375rem;margin-bottom:20px}
.menu-receipt>p{font-size:1rem;margin-bottom:20px}
.menu-items{margin:25px 0;border-top:1px dashed var(--navy);border-bottom:1px dashed var(--navy);padding:20px 0}
.menu-items>a{display:block;text-decoration:none}
.menu-items>a:hover strong{text-decoration:underline}
.menu-items strong{font-size:1.3125rem;display:block;line-height:1.2}
.menu-items span{font-size:0.6875rem;display:block;margin-top:12px}
.menu-items p{font-size:0.9375rem;margin-top:10px}
.menu-items .eyebrow{margin:0 0 12px}
.menu-receipt .micro{font-size:0.6875rem;margin-top:18px}
.receipt-tagline{display:block;text-align:right;font-size:1.125rem;font-weight:900;line-height:1.1;margin-top:30px}
.motion-on .cabinet-display>picture>img{animation:gentle-float 7s ease-in-out infinite}
.motion-on .object-button,.motion-on .chapter-button,.motion-on .menu-choice{transition:background-color .25s,color .25s,transform .25s}
.motion-on .object-button:hover{transform:translateY(-4px)}
.motion-on .object-button[aria-pressed=true]:hover{transform:rotate(-3deg) translateY(-4px)}
.motion-on .menu-choice:hover{transform:translateX(5px)}
.motion-on .chapter-symbol{animation:scene-appear .45s cubic-bezier(.2,.7,.3,1) both}
@keyframes scene-appear{from{opacity:.4;transform:rotate(-16deg) scale(.92)}
to{opacity:1;transform:rotate(-9deg) scale(1)}
}

@media(max-width:1050px){.cabinet-layout{gap:35px;grid-template-columns:1fr 1fr}
.cabinet-heading{padding-right:175px}
.cabinet-sticker{padding:18px;font-size:1.0625rem}
.object-detail{padding:28px}
.object-button{font-size:1.0625rem;padding:13px}
.cabinet-display>picture>img{height:250px}
.chapter-scene article{padding:35px 30px 35px 10px}
.chapter-symbol{width:150px;height:150px}
.chapter-number{font-size:12.5rem}
.chapter-graphic{min-height:440px}
.menu-layout{gap:35px;grid-template-columns:1.1fr 1fr}
.menu-receipt{padding:28px}
.menu-choice{gap:12px;padding-right:13px;grid-template-columns:22px 1fr 30px}
.menu-choice>strong{font-size:2.125rem}
.menu-choice>b{font-size:1.75rem}
}

@media(max-width:700px){.curiosity-cabinet{padding:65px 6%}
.cabinet-heading{padding-right:0;margin-bottom:30px}
.cabinet-heading h2{font-size:2.875rem}
.cabinet-sticker{position:relative;display:inline-block;top:auto;right:auto;margin:28px 0 5px 40%;font-size:1.0625rem;padding:17px}
.cabinet-layout{grid-template-columns:1fr;gap:35px}
.cabinet-display>picture>img{height:200px}
.object-buttons{gap:10px;margin-top:22px}
.object-button{font-size:1rem;padding:13px 10px;gap:12px}
.object-detail{min-height:0;padding:28px;transform:rotate(0deg)}
.object-detail h3{font-size:2.25rem}
.object-detail .eyebrow{font-size:0.6875rem}
.learning-storybook{padding:60px 6%}
.storybook-heading{display:block;margin-bottom:30px}
.storybook-heading>.eyebrow{margin-bottom:23px}
.storybook-heading h2{font-size:3rem}
.storybook-heading p{max-width:none;margin-top:22px;font-size:1rem}
.chapter-buttons{gap:9px}
.chapter-button{padding:14px 11px;grid-template-columns:1fr;gap:12px}
.chapter-button>span{grid-column:auto}
.chapter-button>strong{font-size:1.4375rem}
.chapter-button>b{display:none}
.chapter-scene{grid-template-columns:1fr;min-height:0;border-radius:20px}
.chapter-graphic{min-height:270px}
.chapter-number{font-size:11.875rem;top:15px;left:20px}
.chapter-symbol{width:125px;height:125px;border-radius:25px;padding:18px}
.chapter-word{bottom:15px;font-size:2.625rem}
.chapter-scene article{padding:30px}
.chapter-scene h3{font-size:2.625rem}
.chapter-scene article>p{font-size:1rem}
.chapter-prompt{font-size:1.3125rem}
.curiosity-menu{padding:65px 6%}
.menu-heading{display:block;margin-bottom:30px}
.menu-heading>.eyebrow{margin-bottom:23px}
.menu-heading h2{font-size:3rem}
.menu-heading>p{font-size:1.0625rem;margin-top:23px}
.menu-layout{grid-template-columns:1fr;gap:40px}
.menu-choice{min-height:95px;padding:23px 15px 23px 10px;gap:13px}
.menu-choice>strong{font-size:2.125rem}
.menu-receipt{padding:30px;transform:rotate(1deg);min-height:0}
.menu-receipt h3{font-size:2.3125rem}
}

@media(prefers-reduced-motion:reduce){.motion-on .cabinet-display>picture>img,.motion-on .chapter-symbol{animation:none!important}
.object-detail,.chapter-scene,.motion-on .object-button,.motion-on .chapter-button,.motion-on .menu-choice{transition:none!important}
.motion-on .object-button:hover,.motion-on .object-button[aria-pressed=true]:hover,.motion-on .menu-choice:hover{transform:none!important}
}

body:not(.motion-on) .object-detail,body:not(.motion-on) .chapter-scene{transition:none}


.curiosity-cabinet :focus-visible{outline-color:var(--ivory)}
.object-detail:not(.blue) :focus-visible{outline-color:var(--navy)}


/* Expressive motion: optional, decorative and independent of task instructions. */
.playful-hero:before,.curiosity-cabinet:after,.learning-storybook:after{content:'';position:absolute;pointer-events:none;z-index:0}
.playful-hero:before{width:80px;height:40px;border-radius:60px 60px 0 0;background:var(--green);right:4%;top:20px;rotate:17deg}
.curiosity-cabinet:after{width:140px;height:140px;border:25px solid var(--blue);border-bottom:0;border-radius:100px 100px 0 0;right:-55px;bottom:-55px;rotate:-25deg}
.learning-storybook:after{width:45px;height:45px;border:4px solid var(--navy);border-radius:12px;right:5%;top:28px;rotate:15deg}
.cabinet-layout,.chapter-buttons,.chapter-scene{position:relative;z-index:1}

.motion-on .headline-paper{animation:headline-settle .7s cubic-bezier(.16,1,.3,1) both}
.motion-on .headline-paper.blue-paper{animation-delay:.12s}
.motion-on .hero-copy>p{animation:copy-arrive .65s .2s both}
.motion-on .hero-scribble path{stroke-dasharray:130;stroke-dashoffset:0;animation:scribble-draw 1s .4s both}
.motion-on .playful-hero:before{animation:accent-turn 8s ease-in-out infinite}
.motion-on .curiosity-cabinet:after{animation:accent-turn 11s ease-in-out infinite reverse}
.motion-on .learning-storybook:after{animation:accent-turn 9s ease-in-out infinite}
.motion-on .cabinet-sticker{animation:sticker-rock 7s ease-in-out infinite}
.motion-on .chapter-symbol{animation:scene-appear .45s cubic-bezier(.2,.7,.3,1) both,chapter-bob 6s .45s ease-in-out infinite}
.motion-on .kids-home-band:before,.motion-on .grownups-section:before{animation:wave-slide 12s ease-in-out infinite alternate;background-repeat:repeat-x;background-size:120% 100%;width:100%}
.motion-on .will-reveal{transition-duration:.7s}
.motion-on .will-reveal:not(.is-visible){transform:translateY(30px)}

.motion-on .card img,.motion-on .together-photo img{transition:scale .7s cubic-bezier(.2,.7,.3,1),filter .5s}
.motion-on .card:hover img,.motion-on .card:focus-within img{scale:1.045}
.motion-on .card{transition:box-shadow .3s}
.motion-on .card:hover,.motion-on .card:focus-within{box-shadow:0 12px 25px #0b2d6617}
.motion-on .editorial-card h3{transition:translate .3s}
.motion-on .editorial-card:hover h3,.motion-on .editorial-card:focus-within h3{translate:0 -5px}
.motion-on .activity-art>svg{transition:transform .4s}
.motion-on .activity-card:focus-within .activity-art>svg{transform:rotate(-7deg) translateY(-4px)}
.motion-on .together-photo:hover img{scale:1.025}
.motion-on .together-photo>span{animation:sticker-rock 8s ease-in-out infinite}
.motion-on .chapter-button:hover,.motion-on .chapter-button:focus-visible{translate:0 -4px}
.motion-on .chapter-button{transition:translate .25s,background-color .25s,color .25s}
.motion-on .menu-choice>b,.motion-on .object-button>b,.motion-on .post-bottom>span:last-child{transition:translate .3s,rotate .3s}
.motion-on .menu-choice:hover>b,.motion-on .object-button:hover>b,.motion-on .editorial-card:hover .post-bottom>span:last-child{translate:3px -3px;rotate:10deg}
.motion-on .button:active{scale:.97}
.motion-on nav a{background-image:linear-gradient(var(--green),var(--green));background-size:0 5px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .25s}
.motion-on nav a:hover,.motion-on nav a:focus-visible{background-size:100% 5px}

@keyframes headline-settle{from{opacity:.2;translate:-18px 15px;scale:.94}
to{opacity:1;translate:0 0;scale:1}
}
@keyframes copy-arrive{from{opacity:0;translate:0 12px}
to{opacity:1;translate:0 0}
}
@keyframes scribble-draw{from{stroke-dashoffset:130}
to{stroke-dashoffset:0}
}
@keyframes accent-turn{0%,100%{translate:0 0}
50%{translate:-8px 12px;rotate:8deg}
}
@keyframes sticker-rock{0%,100%{translate:0 0}
50%{translate:0 -5px;rotate:-3deg}
}
@keyframes chapter-bob{0%,100%{translate:0 0}
50%{translate:0 -9px}
}
@keyframes wave-slide{from{background-position:0 0}
to{background-position:100% 0}
}

@media(max-width:700px){.playful-hero:before{width:45px;height:23px;top:8px}
.learning-storybook:after{width:30px;height:30px;top:17px;right:6%}
.motion-on .will-reveal:not(.is-visible){transform:translateY(18px)}
}

body:not(.motion-on){scroll-behavior:auto}
body:not(.motion-on) .will-reveal{opacity:1;transform:none}
body:not(.motion-on) .will-reveal,body:not(.motion-on) .card,body:not(.motion-on) .card img,body:not(.motion-on) .chapter-button{transition:none}

@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.motion-on .headline-paper,.motion-on .hero-copy>p{opacity:1!important;translate:none!important;scale:1!important}
.motion-on .will-reveal{opacity:1!important;transform:none!important}
.motion-on .card:hover img,.motion-on .card:focus-within img{scale:1!important}
}

@media print{*,*:before,*:after{animation:none!important;transition:none!important}
.playful-hero:before,.curiosity-cabinet:after,.learning-storybook:after{display:none}
.will-reveal{opacity:1!important;transform:none!important}
}


html:has(body:not(.motion-on)){scroll-behavior:auto}


/* ===== Additions for the static-route implementation ===== */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.status{font-size:0.75rem}
.object-button>span,.menu-choice>span,.chapter-button>span,.activity-copy .eyebrow,.card .eyebrow,.menu-receipt>.eyebrow,.object-detail small,.related-lessons span{font-size:0.6875rem}
.object-detail small{font-size:0.75rem}

/* Breadcrumbs */
.breadcrumbs{font-size:0.8125rem;margin-bottom:18px}
.breadcrumbs ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 0}
.breadcrumbs li+li:before{content:'/';margin:0 9px;opacity:.6}
.breadcrumbs a{text-decoration:none;font-weight:700}
.breadcrumbs a:hover{text-decoration:underline}
.breadcrumbs [aria-current]{opacity:.85}
.lesson-head .breadcrumbs{margin-bottom:0}
.lesson-eyebrow{margin:28px 0 0}
.lesson-answer{font-size:1.0625rem;background:white;border:1px solid var(--line);border-radius:12px;padding:16px 20px;margin-top:22px}
.kids-hero .breadcrumbs{margin-bottom:26px}

/* Header and navigation */
.site-header{position:relative;z-index:30}
.site-nav{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.site-nav .header-cta{margin-left:14px}
.nav-toggle{border:2px solid var(--navy);background:var(--ivory);color:var(--navy);border-radius:10px;padding:10px 16px;font-weight:700;font-size:0.875rem;min-height:44px;min-width:44px}
.nav-toggle[aria-expanded=true]{background:var(--navy);color:var(--ivory)}
@media(max-width:800px){
 .site-header{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:14px 5%;gap:12px}
 .brand{width:150px}
 .has-nav-toggle .site-nav{display:none}
 .has-nav-toggle .site-nav.is-open{display:grid;width:100%;gap:0;padding:12px 0 6px;border-top:1px solid var(--line)}
 .has-nav-toggle .site-nav.is-open a{font-size:1.0625rem;padding:13px 4px;min-height:44px;display:flex;align-items:center;border-bottom:1px solid #0b2d6612}
 .has-nav-toggle .site-nav.is-open .header-cta{display:inline-flex;margin:14px 0 6px;width:max-content}
 body:not(.has-nav-toggle) .site-nav{width:100%;justify-content:center;gap:9px 18px}
 body:not(.has-nav-toggle) .site-nav a{font-size:0.8125rem;padding:6px 0}
 .site-nav .header-cta{display:none}
}
@media(min-width:801px){.nav-toggle{display:none!important}}
@media(min-width:801px) and (max-width:1150px){.site-nav .header-cta{display:none}}

/* Library filters are links (work without JS); current one is highlighted. */
.filters a.chip{text-decoration:none;display:inline-flex;align-items:center;min-height:40px}
.chip[aria-current=page],.path-button[aria-current=true]{background:var(--navy);color:white;border-color:var(--navy)}
.path-button{display:inline-flex;align-items:center;text-decoration:none;min-height:40px}
#results .card[hidden],#kid-results .activity-card[hidden],.empty[hidden],[hidden]{display:none}

/* Steps as a real ordered list */
.step-list{list-style:none;margin:0;padding:0}
li.step{margin:22px 0}
.activity-detail li.step{align-items:start;margin:10px 0;padding:20px 0}
.activity-detail li.step p{margin:0;font-size:1.25rem}

/* Form errors */
.field-error{color:#8a1c1c;font-size:0.875rem;margin-top:6px;font-weight:700}
[aria-invalid=true]{border-color:#8a1c1c;box-shadow:0 0 0 2px #8a1c1c33}
.form-result:focus{outline:3px solid var(--blue);outline-offset:3px}

/* Workshops spacing helper (replaces inline style) */
.navy-spacer{margin:22px 0}

/* 404 */
.not-found-links{display:flex;flex-wrap:wrap;gap:22px;align-items:center}

/* Print: notes and the lesson answer; keep complete sequences */
@media print{.breadcrumbs,.nav-toggle,.site-nav{display:none!important}.lesson-answer{border:0;padding:0}}

/* Keep fixed motion control clear of content when zoomed */
@media(max-height:500px){.motion-toggle{position:absolute}}
.field .check{font-weight:400;margin:4px 0 0}
@media(max-width:480px){.development-grid{grid-template-columns:1fr;gap:26px}.home-kids-cards{grid-template-columns:1fr}}
h1,h2,h3{overflow-wrap:break-word}

/* ===== Homepage density: start-here strip, voice ticker, collections ===== */
.playful-hero{padding:48px 4% 56px 7%;grid-template-columns:1fr 1.25fr;gap:24px}
.hero-illustration>picture>img{min-height:0}
.hero-block-green{top:-10px;right:14%;width:84px;height:42px;border-radius:0 0 70px 70px;background:var(--green);transform:rotate(-16deg)}
.hero-block-arch{left:2%;top:12%;width:64px;height:64px;border-radius:40px 40px 0 0;border:16px solid var(--blue);border-bottom:0;background:transparent;transform:rotate(-12deg)}
.hero-block-yellow{right:4%;bottom:70px;width:52px;height:52px;border-radius:12px;background:var(--yellow);transform:rotate(14deg)}
.playful-hero:before{display:none}
.motion-on .hero-block-arch{animation:block-drift 7s -3s ease-in-out infinite}
.quick-start{grid-column:1/-1;margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}
.quick-start .eyebrow{margin-bottom:14px}
.quick-start ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.quick-start a{display:grid;grid-template-columns:18px 1fr;gap:6px 12px;align-items:center;text-decoration:none;background:#fffdf7;border:1px solid var(--line);border-radius:14px;padding:16px 18px;min-height:76px;transition:transform .2s,box-shadow .2s}
.quick-start a:hover,.quick-start a:focus-visible{transform:translateY(-3px);box-shadow:4px 4px 0 var(--green)}
.quick-start a.qs-kids{background:var(--yellow);border-color:var(--yellow)}
.quick-start strong{font-size:1.0625rem;line-height:1.15;letter-spacing:-.02em}
.quick-start small{grid-column:2;font-size:0.75rem;color:var(--muted)}
.qs-dot{width:18px;height:18px;border-radius:50%;background:var(--blue)}
.qs-dot.green{background:var(--green)}.qs-dot.yellow{background:var(--yellow)}.qs-dot.navy{background:var(--navy)}
.voice-ticker{background:var(--navy);color:var(--ivory);overflow:hidden;padding:16px 0;border-top:4px solid var(--green)}
.ticker-track{display:flex;width:max-content}
.ticker-run{display:flex;gap:34px;padding-right:34px;font-weight:900;font-size:clamp(1.125rem,2.2vw,1.625rem);letter-spacing:-.02em;white-space:nowrap;align-items:center}
.ticker-run b{color:var(--yellow);font-size:1rem}
.motion-on .ticker-track{animation:ticker 38s linear infinite}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}
body:not(.motion-on) .ticker-track{animation:none}
.collections-section{padding-bottom:70px}
.collection-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.collection{display:block;position:relative;padding:30px 24px 60px;text-decoration:none;border:1px solid var(--navy);border-radius:22px;min-height:300px;background:var(--ivory);transition:transform .2s}
.collection:nth-child(2){background:#eaf1fc}
.collection:nth-child(3){background:var(--yellow);transform:rotate(1deg)}
.collection:nth-child(4){background:var(--green);transform:rotate(-1deg)}
.collection .eyebrow{margin:26px 0 10px;font-size:0.6875rem}
.collection h3{font-size:1.625rem;letter-spacing:-.04em}
.collection p{font-size:0.9375rem;margin:12px 0 0}
.collection-count{position:absolute;left:24px;bottom:22px;font-size:0.75rem;font-weight:700;border:1px solid currentColor;border-radius:99px;padding:5px 11px}
.collection-arrow{position:absolute;right:22px;bottom:16px;font-size:1.6875rem}
.collection:hover h3,.collection:focus-visible h3{text-decoration:underline}
.motion-on .collection:hover{transform:translateY(-5px)}
.motion-on .collection:nth-child(3):hover{transform:rotate(1deg) translateY(-5px)}
.motion-on .collection:nth-child(4):hover{transform:rotate(-1deg) translateY(-5px)}
.collection-shape{display:block}
.collection-shape.shape-arch{width:60px;height:60px;border-radius:50%;border:14px solid var(--navy);transform:rotate(-8deg)}
.collection .shape-discover{margin-top:20px}
@media(max-width:1050px){.quick-start ul{grid-template-columns:repeat(2,1fr)}.collection-grid{grid-template-columns:repeat(2,1fr)}.playful-hero{grid-template-columns:1fr 1.1fr}}
@media(max-width:700px){.playful-hero{grid-template-columns:1fr;padding:30px 6% 46px;gap:26px}.hero-block-arch{display:none}.hero-block-green{top:-18px;right:6%;width:60px;height:30px}.hero-block-yellow{bottom:40px;width:40px;height:40px}.quick-start ul{grid-template-columns:1fr 1fr;gap:10px}.quick-start a{padding:13px 14px;min-height:0}.quick-start strong{font-size:0.9375rem}.collection-grid{grid-template-columns:1fr;gap:14px}.collection{min-height:0;padding:24px 20px 60px;transform:none!important}.ticker-run{font-size:1.125rem}}
@media(prefers-reduced-motion:reduce){.ticker-track{animation:none!important}}

/* ===== Inner pages: lessons, activities, workshops, about, get involved, FAQ ===== */
.lead{font-size:1.25rem;max-width:60ch}
.lesson-subtitle{font-size:1.25rem;margin-top:12px}
.lesson-head-actions{display:flex;flex-wrap:wrap;gap:22px;align-items:center;margin-top:24px}
.glance-band{margin:0 7% 10px;padding:22px 28px;background:white;border:1px solid var(--line);border-radius:18px}
.glance{display:grid;grid-template-columns:repeat(6,1fr);gap:18px 24px;margin:0}
.glance>div{min-width:0}
.glance dt{font-size:0.6875rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--muted);margin-bottom:6px}
.glance dd{margin:0;font-size:0.9375rem;font-weight:700;line-height:1.35;overflow-wrap:anywhere}
.activity-page .glance-band{margin-top:-10px}
.activity-page .glance{grid-template-columns:repeat(5,1fr)}
.ready-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:24px}
.ready-card{background:white;border:1px solid var(--line);border-radius:14px;padding:26px}
.ready-card h3,.ready-card h2{font-size:1.4375rem;margin-bottom:14px}
.ready-card small{display:block;font-size:0.75rem;color:var(--muted);margin-top:14px}
.together-card{background:#eaf1fc;border-color:#eaf1fc}
.checklist{list-style:none;margin:0;padding:0}
.checklist li{margin:8px 0}
.checklist label{display:flex;gap:12px;align-items:flex-start;cursor:pointer;font-size:1rem}
.checklist input{width:22px;height:22px;min-height:22px;flex-shrink:0;margin:2px 0 0;accent-color:var(--navy)}
.checklist input:checked+span{text-decoration:line-through;color:var(--muted)}
.notice.safety{background:var(--yellow);border-left-color:var(--navy);font-size:0.9375rem}
.steps-heading{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap}
.steps-count{font-size:0.75rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--navy);border-radius:99px;padding:5px 11px}
.review-panel{background:#fffdf7;border:1px solid var(--line);border-radius:18px;padding:32px}
.review-head h2{font-size:1.875rem}
.review-record{display:grid;grid-template-columns:1fr 1fr;gap:18px 30px;margin:22px 0 10px}
.review-record>div:first-child{grid-column:1/-1}
.review-record dt{font-size:0.6875rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--muted);margin-bottom:6px}
.review-record dd{margin:0;font-size:0.9375rem}
.source-link{display:block;margin:4px 0}
.source-link a{font-weight:700}
.related-activities{margin-top:50px}
.related-activities h2{font-size:2rem}
.related-activities>div{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.related-activities a{display:grid;grid-template-columns:1fr 24px;gap:10px;padding:22px;border-radius:14px;text-decoration:none;background:var(--green)}
.related-activities a.yellow{background:var(--yellow)}.related-activities a.blue{background:var(--blue);color:var(--ivory)}
.related-activities a span{grid-column:span 2;font-size:0.6875rem}
.related-activities a strong{font-size:1.375rem;line-height:1.15;letter-spacing:-.03em}
.related-activities a:hover strong{text-decoration:underline}
.status-banner{display:inline-flex;gap:12px;align-items:center;background:var(--ivory);border:1px solid var(--navy);border-radius:12px;padding:12px 16px;font-size:0.875rem;font-weight:700;margin-top:26px;max-width:760px}
.status-banner span{font-size:1.125rem;color:var(--blue)}
.timeline{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;counter-reset:t}
.timeline li{position:relative;padding-top:18px;border-top:3px solid var(--navy)}
.timeline li>span{position:absolute;top:-16px;left:0;background:var(--yellow);border-radius:8px;font-size:0.75rem;font-weight:900;padding:4px 9px}
.timeline h3{font-size:1.5rem;margin:14px 0 10px}
.timeline p{font-size:1rem}
.session-flow .timeline,.how-made .timeline,.how-it-goes .timeline{grid-template-columns:repeat(4,1fr)}
.how-it-goes .timeline{grid-template-columns:repeat(3,1fr)}
.needs-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}
.needs-list li{display:grid;grid-template-columns:200px 1fr;gap:14px;padding:14px 0;border-top:1px solid #ffffff30;font-size:0.9375rem}
.needs-list strong{color:var(--green)}
.workshop-access .navy-spacer{margin:28px 0 22px}
.faq-section h2{font-size:2.5rem;margin-bottom:26px}
.faq-list{max-width:820px}
.faq-item{border-top:1px solid var(--line);border-bottom:0;padding:0}
.faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-item summary{padding:20px 44px 20px 0;font-size:1.25rem;font-weight:800;letter-spacing:-.02em;position:relative;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:'+';position:absolute;right:4px;top:14px;font-size:1.75rem;font-weight:400;width:32px;height:32px;display:grid;place-items:center;border:1px solid var(--navy);border-radius:50%;line-height:1}
.faq-item[open] summary:after{content:'–'}
.faq-answer{padding:0 0 22px;font-size:1.0625rem}
.faq-answer p{margin:0 0 12px;max-width:68ch}
.faq-page{padding:0 7% 60px;max-width:1100px}
.faq-group{margin:40px 0}
.faq-group h2{font-size:2rem;margin-bottom:16px}
.faq-end{padding:50px 0 0}
.faq-end p{font-size:1.25rem;margin-bottom:22px}
.who-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:40px}
.who-grid article{background:white;border:1px solid var(--line);border-radius:18px;padding:28px}
.who-grid h3{font-size:1.625rem;margin:18px 0 12px}
.who-grid p{font-size:1rem;margin-bottom:16px}
.who-mark{display:block;width:44px;height:44px;border-radius:50%}
.who-mark.green{background:var(--green);border-radius:0 0 44px 44px;height:24px}.who-mark.blue{background:var(--blue);border-radius:22px 22px 0 0}.who-mark.yellow{background:var(--yellow);border-radius:10px}
.how-made .section-title p{max-width:360px}
.confirmed-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}
.confirmed-card{background:var(--green);border-radius:18px;padding:30px}
.confirmed-card.pending{background:#eaf1fc}
.confirmed-card h3{font-size:1.5rem;margin-bottom:14px}
.confirmed-card ul{margin:0;padding-left:20px;font-size:1rem}
.confirmed-card li{margin:8px 0}
.confirmed .button{margin-top:28px}
.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.path-card{display:flex;flex-direction:column;text-decoration:none;border-radius:20px;padding:30px;min-height:360px;border:1px solid var(--navy);background:var(--ivory)}
.path-card.green{background:var(--green)}.path-card.yellow{background:var(--yellow)}.path-card.blue{background:#eaf1fc}
.path-card h3{font-size:1.5rem;letter-spacing:-.03em;line-height:1.2;margin:10px 0 18px}
.path-card ul{margin:0 0 20px;padding-left:18px;font-size:0.9375rem}
.path-card li{margin:6px 0}
.path-cta{margin-top:auto;font-weight:800;display:flex;gap:10px;align-items:center}
.path-card:hover h3,.path-card:focus-visible h3{text-decoration:underline}
.path-head.yellow{background:var(--yellow)}.path-head.blue{background:#eaf1fc}
.path-layout{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding:0 7% 75px;align-items:start}
.path-copy section{margin-bottom:34px}
.path-copy h2{font-size:1.75rem;margin-bottom:14px}
.path-copy p{font-size:1rem}
.tick-list{list-style:none;margin:0;padding:0}
.tick-list li{position:relative;padding:8px 0 8px 34px;font-size:1rem;border-top:1px solid var(--line)}
.tick-list li:before{content:'';position:absolute;left:4px;top:15px;width:14px;height:14px;border-radius:50%;background:var(--green)}
.tick-list.muted li:before{background:var(--yellow)}
.how-lesson{display:grid;grid-template-columns:1fr 1.6fr;gap:40px;margin-top:55px;padding:34px;background:var(--navy);color:var(--ivory);border-radius:20px}
.how-lesson h2{font-size:2.125rem}
.how-lesson .eyebrow{color:var(--green)}
.mini-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:16px;counter-reset:m}
.mini-steps li{counter-increment:m;position:relative;padding-left:44px;font-size:0.9375rem}
.mini-steps li:before{content:counter(m);position:absolute;left:0;top:0;width:30px;height:30px;border-radius:8px;background:var(--yellow);color:var(--navy);font-weight:900;display:grid;place-items:center}
.mini-steps strong{display:block;font-size:1.0625rem;margin-bottom:4px}
.situations{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 0;font-size:0.8125rem;font-weight:700}
.situations a.chip{text-decoration:none;display:inline-flex;align-items:center;min-height:36px;font-size:0.8125rem;padding:6px 13px}
@media(max-width:1050px){.glance{grid-template-columns:repeat(3,1fr)}.activity-page .glance{grid-template-columns:repeat(3,1fr)}.timeline,.session-flow .timeline,.how-made .timeline{grid-template-columns:1fr 1fr}.who-grid{grid-template-columns:1fr}.path-grid{grid-template-columns:1fr}.path-card{min-height:0}.how-lesson{grid-template-columns:1fr;gap:24px}}
@media(max-width:700px){.glance-band{margin:0 6% 10px;padding:18px}.glance,.activity-page .glance{grid-template-columns:1fr 1fr;gap:14px}.ready-grid{grid-template-columns:1fr}.review-record{grid-template-columns:1fr}.review-panel{padding:22px}.timeline,.session-flow .timeline,.how-made .timeline,.how-it-goes .timeline{grid-template-columns:1fr;gap:34px}.needs-list li{grid-template-columns:1fr;gap:4px}.confirmed-grid{grid-template-columns:1fr}.path-layout{grid-template-columns:1fr;gap:30px;padding:0 6% 45px}.faq-item summary{font-size:1.125rem}.faq-page{padding:0 6% 40px}.mini-steps{grid-template-columns:1fr}.related-activities>div{grid-template-columns:1fr}.lesson-head-actions{gap:16px}}
@media print{.glance-band{border:0;padding:0;margin:0}.checklist input{display:inline-block}.faq-item{display:block}.lesson-head-actions,.related-activities,.how-lesson{display:none}}

/* ===== Final pass: core experience on phones ===== */
.draft-pill{display:inline-block;font-size:0.6875rem;font-weight:700;letter-spacing:.04em;border:1px solid currentColor;border-radius:99px;padding:2px 9px;margin-top:14px;opacity:.8}
/* Full-strength ivory on blue cards; the 0.8 dimming drops it below 4.5:1. */
.wide-lesson .card .draft-pill{opacity:1}
.search-row{grid-template-columns:1fr 200px 180px}
.head-safety{margin:16px 0 0;max-width:640px}
.heat-badge{display:inline-flex;align-items:center;gap:8px;font-size:0.8125rem;font-weight:800;background:var(--yellow);color:var(--navy);border-radius:99px;padding:4px 12px;margin:0 0 12px!important}
.heat-badge span{color:#b3261e;font-size:0.625rem}
.heat-step .number{background:var(--navy);color:var(--yellow)}
#step-focus .heat-badge:not([hidden]){display:inline-flex}
.glance dd a{color:inherit}
@media(max-width:700px){
 .page-head{padding:26px 6% 30px;margin-bottom:20px}
 .browse-head h1{font-size:2.5rem}
 .browse-head p{font-size:1rem;margin-top:12px}
 .browse-head .page-stamp{margin-top:14px}
 .search-row{grid-template-columns:1fr 1fr;gap:12px;margin:10px 0}
 .search-row .field:first-child{grid-column:1/-1}
 .search-row select,.search-row input{padding:12px}
 .filters{flex-wrap:nowrap;overflow-x:auto;margin:14px -6% 16px;padding:2px 6% 6px;scrollbar-width:none}
 .filters::-webkit-scrollbar{display:none}
 .filters .chip{flex-shrink:0}
 #results.cards{gap:12px}
 #results .card>a{display:grid;grid-template-columns:112px 1fr;align-items:stretch}
 #results .card picture,#results .card picture img{height:100%}
 #results .card img{height:100%;min-height:150px;object-fit:cover}
 #results .card-body{padding:14px 14px 12px}
 #results .card .eyebrow{font-size:0.625rem;margin-bottom:6px}
 #results .card h3{font-size:1.3125rem;margin-bottom:6px}
 #results .card p{font-size:0.875rem;line-height:1.4}
 #results .card-meta{margin-top:10px}
 #results .draft-pill{margin-top:8px}
 .how-lesson{padding:24px}
 .lesson-head{padding:18px 6% 10px}
 .lesson-head>picture{display:none}
 .lesson-head h1{font-size:2.5rem;margin:10px 0 8px}
 .lesson-subtitle{font-size:1.0625rem;margin-top:0}
 .lesson-answer{font-size:0.9375rem;padding:14px 16px}
 .head-safety{font-size:0.875rem}
 .lesson-head-actions{margin-top:18px}
 .lesson-head-actions .button{flex:1}
 .breadcrumbs li:first-child{display:none}
 .breadcrumbs li:nth-child(2):before{content:none}
 .lesson-aside{position:sticky;top:0;z-index:20;background:var(--ivory);flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:10px 6%;margin:0 -6%;border-bottom:1px solid var(--line);scrollbar-width:none}
 .lesson-aside::-webkit-scrollbar{display:none}
 .lesson-aside .eyebrow{display:none}
 .lesson-aside a{flex-shrink:0;padding:7px 12px;border:1px solid var(--line);border-radius:99px;background:white;text-decoration:none;font-size:0.8125rem}
 .lesson-aside .button,.lesson-aside .chip{flex-shrink:0;padding:7px 12px;font-size:0.8125rem}
 .lesson-content section{scroll-margin-top:70px}
 li.step{margin:8px 0;padding:18px 0}
 .step p{margin-bottom:8px}
 #step-focus{min-height:0;padding:22px 20px 0}
 #step-focus .step-navigation{position:sticky;bottom:0;background:#eaf1fc;margin:20px -20px 0;padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #0b2d6620;z-index:5}
 #step-focus .step-navigation button{flex:1;min-height:48px;font-size:0.875rem}
 .glance-band{margin:6px 6% 4px}
 .motion-toggle{position:static;display:block;margin:0 auto 26px;box-shadow:none}
 .woset-footer{padding-bottom:30px}
}
@media(max-width:1050px) and (min-width:701px){.search-row{grid-template-columns:1fr 180px 160px}}
.not-open h2{font-size:1.75rem;margin-bottom:12px}
.not-open .tick-list{margin:14px 0 18px}
.not-open-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:18px}
.heat-badge[hidden]{display:none!important}
.steps-safety{background:var(--yellow);border-left:4px solid var(--navy);border-radius:4px;padding:12px 16px;font-size:0.9375rem;margin:6px 0 16px;max-width:none}
@media print{.steps-safety{border:1px solid #000}}
@media(max-width:700px){html:has(.lesson-page){scroll-padding-top:72px}.lesson-page .lesson-content section{scroll-margin-top:72px}}
.filters .chip:focus-visible{outline-offset:2px}

/* Text resizing: let grid and flex children shrink, and let long words and labels wrap. */
main *, .woset-footer *{min-width:0}
h1,h2,h3,.button,.chip,.eyebrow,label,dd,dt,strong{overflow-wrap:break-word}
.button{white-space:normal;text-align:center}
@media(max-width:700px){.lesson-aside{max-width:none;width:auto}}
@media(max-width:700px){h1,h2,h3{hyphens:auto;-webkit-hyphens:auto}}
@media(max-width:700px){.lesson-head h1,.page-head h1,.browse-head h1{font-size:2.25rem}}
@media(max-width:700px){.lesson-head-actions .button{flex:1 1 100%}.step-navigation button{flex:1 1 0}}
@media(max-width:700px){.button{gap:12px}}
