/* CodeTeachers creative learning studio — AI Teachers family */
:root{--paper:#fafaf7;--ink:#242521;--cream:#efefe9;--coral:#f4df49;--peach:#f4d4df;--line:#dedfd6;--yellow:#f4df49;--lilac:#dcd0f0;--mint:#cce8d7}
.header,.journal-page .header{position:relative;top:auto;left:auto;right:auto;margin:0 auto;background:var(--paper);color:var(--ink);border-radius:0;max-width:1360px;height:100px;padding:0 5%;gap:20px}.header nav{gap:24px;font-size:.875rem}.header nav a:hover{color:#61523b;text-decoration:underline;text-underline-offset:5px}.brand{font-size:1.6rem;letter-spacing:-.065em}.brand-mark{background:var(--yellow);color:var(--ink);font-family:var(--sans);border-radius:50%;width:44px;height:44px;font-size:1.4rem;letter-spacing:-.12em;padding:0 8px;justify-content:center}.brand-dot{color:inherit}.button{border-radius:40px;padding:16px 25px;justify-content:center;gap:12px}.button-small{font-size:.875rem;padding:13px 19px}.button-yellow,.yellow{background:var(--yellow)}.button-outline{border:1px solid #74776d}.eyebrow{font-size:.8rem;letter-spacing:.12em}.wonder-hero{position:relative;text-align:center;max-width:1440px;margin:auto;padding:80px 24px 66px}.wonder-hero h1{font-size:clamp(3.9rem,6.8vw,6.8rem);line-height:1.03;letter-spacing:-.045em}.wonder-hero .eyebrow{margin-bottom:28px}.hero-deck{font-size:1.075rem;color:#555a50;max-width:620px;margin:27px auto}.hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.hero-small{font-size:.875rem;color:#616558;margin-top:20px}.sticker{position:absolute;max-width:190px;padding:15px 19px;border:1px solid #242521;border-radius:8px;font-size:.75rem;letter-spacing:.08em;font-weight:600;box-shadow:3px 3px 0 #242521}.sticker-one{left:5%;top:70px;background:var(--lilac);transform:rotate(-9deg)}.sticker-two{right:4%;top:100px;background:var(--yellow);transform:rotate(8deg)}.sticker-three{left:2%;top:310px;background:var(--mint);transform:rotate(-6deg)}.sticker-four{right:2%;top:355px;background:#f4d4df;transform:rotate(7deg);max-width:165px}.studio{position:relative;border-radius:22px;overflow:hidden;height:480px;background:#173e36;color:white}.studio img{height:100%;object-position:50% 43%}.studio:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#112b25d9,transparent 90%)}.studio-copy{position:absolute;left:5%;top:50%;transform:translateY(-50%);z-index:1}.studio h2{font-size:clamp(2.8rem,4.4vw,4.7rem);margin-bottom:28px}.studio-label{position:absolute;z-index:1;bottom:23px;right:25px;font-size:.8rem;background:#24392cc9;padding:8px 14px;border-radius:20px}.studio .button{color:var(--ink)}.promise-bar{background:transparent;border-bottom:1px solid var(--line);padding:35px 20px;gap:35px;font-size:.875rem}.path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.path-card{padding:30px;border-radius:18px;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s}.path-card:hover{transform:translateY(-4px)}.lilac{background:var(--lilac)}.mint{background:var(--mint)}.card-top{display:flex;flex-direction:column;gap:14px;margin-bottom:30px;font-size:.75rem;letter-spacing:.07em}.tag{border:1px solid #69705c7a;border-radius:20px;padding:5px 10px;font-size:.75rem;display:inline-block;letter-spacing:0;width:fit-content}.path-card h3{font-family:var(--sans);font-size:1.8rem;font-weight:500;line-height:1.2;letter-spacing:-.045em}.path-card p{margin:20px 0 28px;color:#414839}.path-link{border-top:1px solid #4c523f50;width:100%;padding-top:16px;margin-top:auto;font-size:.9rem;font-weight:600}.intro{border-top:1px solid var(--line);padding-top:85px;padding-bottom:85px}.programs{background:#eeefe8}.card-image{border-radius:15px}.feature{min-height:650px}.feature-copy{background:#e3e6f3;padding-top:70px;padding-bottom:60px}.mission{min-height:620px}.parent-feature{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.parent-poster{background:var(--lilac);padding:45px;border-radius:18px}.parent-poster h2{font-size:clamp(3.3rem,5vw,5rem);margin:45px 0}.parent-copy>p:not(.eyebrow){margin:25px 0}.parent-copy .text-link{display:table;margin-top:20px}.resource-band{background:var(--yellow);max-width:1224px;border-radius:20px;display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:55px}.resource-band p:not(.eyebrow){max-width:460px;margin-top:20px}.resource-stack{align-self:center}.resource-stack>a:not(.text-link){display:flex;flex-wrap:wrap;gap:12px;padding:24px 0;border-top:1px solid #7a751e80;font-size:1rem;font-weight:500}.resource-stack>a>span{font-size:.8rem;margin-right:5px}.resource-stack small{font-size:.75rem;letter-spacing:.08em;margin-left:auto}.resource-stack>.text-link{margin-top:12px}.section-pad{padding-top:85px;padding-bottom:85px}.journal-card h3{font-family:var(--sans);font-size:1.7rem;font-weight:500;letter-spacing:-.035em}.journal-card .eyebrow{font-size:.75rem}.journal-page .header{margin:auto}.guide-intro{padding-top:60px;padding-bottom:55px;max-width:1100px}.guide-intro h1{font-size:clamp(3rem,6vw,5.8rem);max-width:920px}.guide-intro>p:not(.eyebrow){font-size:1.15rem;max-width:740px;margin-top:25px}.guide-section{padding-top:45px;padding-bottom:55px}.guide-section h2{font-size:3rem;margin-bottom:25px}.guide-section p{max-width:800px}.lesson-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.lesson{border:1px solid var(--line);padding:28px;border-radius:15px;background:white}.lesson h3{font-size:1.7rem;line-height:1.15;margin:15px 0}.lesson p+p{margin-top:15px}.lesson a{margin-top:18px}.step-list{counter-reset:steps;list-style:none;padding:0}.step-list>li{counter-increment:steps;border-top:1px solid var(--line);padding:25px 0 25px 65px;position:relative;max-width:950px}.step-list>li:before{content:'0' counter(steps);position:absolute;left:0;font-size:1rem;top:32px}.step-list h3{font-size:1.8rem;margin-bottom:10px}.callout{background:var(--mint);border-radius:16px;padding:32px;margin:25px 0}.callout h3{font-size:1.8rem;margin-bottom:12px}.prompt-box{background:var(--lilac);padding:35px;border-radius:15px;max-width:900px}.prompt-box label{display:block;margin-bottom:10px;font-weight:600}.prompt-box select{font:inherit;padding:12px;max-width:100%;border:1px solid #666;border-radius:7px;background:white}.prompt-box blockquote{font-size:1.15rem;line-height:1.7;margin:25px 0}.prompt-box button{border:0;cursor:pointer;font:inherit}.prompt-status{font-size:.875rem;min-height:1.5em;margin-top:15px}.resource-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.resource-item{padding:30px;border:1px solid var(--line);border-radius:16px;background:white}.resource-item h3{font-size:1.8rem;margin-bottom:15px}.resource-item .eyebrow{margin-bottom:15px}.resource-item .text-link{margin-top:20px}.source-list{font-size:.9rem;line-height:1.8}.source-list a,.prose-link{text-decoration:underline;text-underline-offset:3px}.guide-section details{border-top:1px solid var(--line);padding:20px 0}.guide-section summary{font-size:1.15rem;cursor:pointer;font-weight:500}.guide-section details p{margin-top:15px}.paper{max-width:850px;margin:45px auto;padding:50px;background:white;border:1px solid var(--line);border-radius:12px}.paper h1{font-size:3.7rem;margin:20px 0}.paper h2{font-size:1.8rem;margin:30px 0 12px}.paper p{margin-bottom:15px}.write-lines{height:85px;background:repeating-linear-gradient(transparent,transparent 27px,#d0d2c8 28px);margin:10px 0 20px}.paper-actions{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.paper-actions button{font:inherit;border:0;cursor:pointer}.paper-check{display:block;padding:12px 0;border-bottom:1px solid var(--line)}.paper-check input{margin-right:12px;width:18px;height:18px}.article-body .sources{font-size:.9rem}.article-body .sources a{text-decoration:underline}.article-body .sources h2{font-size:1.5rem}.article-body .sources p{font-size:.9rem}.resource-count{margin:18px 0;font-size:.875rem}
@media(max-width:1150px){.sticker{max-width:150px;font-size:.7rem;padding:12px}.sticker-one{left:3%;top:30px}.sticker-two{top:40px}.sticker-three,.sticker-four{display:none}.header nav{gap:15px}.path-card{padding:25px}.resource-band{margin-left:5%;margin-right:5%}.header{gap:12px}.header .brand{font-size:1.4rem}}
@media(max-width:800px){.header,.journal-page .header{height:85px;padding:0 5%;margin:0}.header .menu-toggle{color:var(--ink)}.header nav{top:76px;left:5%;right:5%;background:var(--ink);color:white}.header nav a:hover{color:var(--yellow)}.wonder-hero{padding:70px 5% 48px}.wonder-hero h1{font-size:clamp(3.4rem,9vw,5rem)}.sticker-one{top:5px;left:7%;font-size:.65rem;padding:9px 12px}.sticker-two{top:5px;right:6%;font-size:.65rem;padding:9px 12px}.wonder-hero .eyebrow{font-size:.75rem;max-width:300px;margin:0 auto 23px}.hero-deck br{display:none}.studio{height:440px}.studio-copy{top:auto;bottom:50px;transform:none}.studio h2{font-size:3rem}.studio-label{left:5%;right:auto;bottom:16px;font-size:.75rem}.promise-bar{grid-template-columns:1fr 1fr;gap:15px}.promise-bar>span:nth-child(even){display:none}.path-grid{grid-template-columns:1fr}.path-card{padding:30px}.path-card h3 br{display:none}.card-top{flex-direction:row;align-items:center;flex-wrap:wrap;margin-bottom:20px}.path-card p{margin:15px 0 25px}.parent-feature{grid-template-columns:1fr;gap:40px}.parent-poster h2{font-size:4rem;margin:25px 0}.resource-band{grid-template-columns:1fr;padding:30px;gap:30px}.lesson-grid{grid-template-columns:1fr}.guide-intro{padding-top:45px}.resource-catalog{grid-template-columns:1fr}.section-pad{padding-top:60px;padding-bottom:60px}.paper{margin:25px 5%;padding:28px}.paper h1{font-size:2.8rem}.guide-section h2{font-size:2.6rem}.intro{padding-top:60px;padding-bottom:60px}.feature-copy{padding:55px 6%}}
@media(max-width:480px){.header .brand{font-size:1.25rem}.header .brand-mark{display:none}.header .nav-cta{font-size:.8rem;padding:11px 14px}.wonder-hero h1{font-size:3.45rem}.hero-actions{flex-direction:column;align-items:center}.hero-actions .button{width:100%;max-width:290px}.hero-small{font-size:.8rem}.studio{height:420px}.studio img{object-position:62% center}.studio-copy .eyebrow{font-size:.75rem}.studio h2{font-size:2.6rem}.resource-stack small{margin-left:30px}.guide-intro h1{font-size:3.2rem}.step-list>li{padding-left:45px}.prompt-box{padding:25px}.resource-item{padding:25px}.paper h1{font-size:2.5rem}}
@media print{.header,footer,.skip,.paper-actions{display:none!important}body{background:white}.paper{border:0;margin:0;padding:0;max-width:none}.paper h1{font-size:30pt}.paper h2{font-size:18pt}.paper p,.paper-check{font-size:11pt}.paper section{break-inside:avoid}.write-lines{height:65px}a{color:inherit} @page{margin:16mm;size:letter}}

/* Live-copy handoff: production wording, refreshed composition. */
.live-hero{padding-top:65px;padding-bottom:60px}.live-hero h1{font-size:clamp(4.1rem,8.5vw,8rem)}.live-hero .hero-deck{max-width:720px}.live-promises{flex-wrap:wrap;gap:15px 30px}.live-programs{row-gap:45px}.live-programs ul{padding-left:20px;font-size:.9rem;line-height:1.8}.live-ethics-deck{max-width:850px;margin:25px 0;font-size:1.15rem}.ethics-principles{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:35px 0}.ethics-principles>div{border-top:1px solid #b9cfb7;padding-top:20px}.ethics-principles h3{font-size:1.5rem;margin-bottom:8px}.live-safety{margin-left:25px}.live-quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.live-quotes blockquote{margin:0;padding:30px;background:var(--lilac);border-radius:16px;font-family:var(--serif);font-size:1.35rem}.live-quotes blockquote:nth-child(2){background:var(--mint)}.live-quotes blockquote:nth-child(3){background:var(--yellow)}.newsletter-preview{text-align:center}.newsletter-preview>p:not(.eyebrow){max-width:680px;margin:25px auto}.newsletter-preview .newsletter-note{font-size:.85rem}.local .button{margin-top:25px}
@media(max-width:1100px){.header nav{display:none;position:absolute;top:80px;left:5%;right:5%;border-radius:10px;background:var(--ink);color:white;padding:20px;font-size:1rem;flex-direction:column;gap:0}.header nav.open{display:flex}.menu-toggle{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--ink);font-size:.875rem;padding:10px;cursor:pointer}.nav-cta{margin-left:auto}.header nav a:hover{color:var(--yellow)}}
@media(max-width:800px){.live-quotes{grid-template-columns:1fr}.ethics-principles{grid-template-columns:1fr 1fr}.live-hero h1{font-size:clamp(3.8rem,11vw,6rem)}.live-promises{display:flex}.live-promises>span:nth-child(even){display:inline}.live-safety{display:table;margin:20px 0 0}}

/* CodeTeachers integration: space a footer heading that follows a paragraph. */
.footer-main p+h2{margin-top:28px}
