@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;650;700&family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root{--ink:#173f3c;--muted:#62716a;--paper:#faf9f4;--green:#215b4d;--line:#dce2d8;--peach:#edc2a5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,select{font:inherit}button,a,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #bc6940;outline-offset:5px}button{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(48px,4.6vw,70px);font-weight:650}h2{font-size:clamp(32px,3vw,45px);font-weight:650}h3{font-size:21px;letter-spacing:-.025em}em{font-family:Georgia,serif;font-weight:400;color:#487560}p{color:var(--muted)}.wrap{width:min(1220px,calc(100% - 96px));margin-inline:auto}.site-header{display:flex;align-items:center;justify-content:space-between;height:108px;gap:30px}.brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:23px;letter-spacing:-1px;white-space:nowrap}.brand img{width:39px;height:43px}.brand-dot{color:#c67b57;margin-left:-8px}.site-header nav{display:flex;gap:34px;font-size:14px;font-weight:500}.site-header nav a:hover,.text-link:hover{color:#b56542}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;border:1px solid var(--green);border-radius:7px;background:var(--green);color:white;padding:15px 23px;font-size:14px;font-weight:600;line-height:1.5;transition:background .15s,transform .15s}.button:hover{background:#153f35;transform:translateY(-2px)}.button.small{padding:10px 18px;font-size:13px;gap:18px}.button.outline{color:var(--green);background:transparent}.button.outline:hover{background:#e9eee5}.button.light{background:#f7f5e9;border-color:#f7f5e9;color:var(--green)}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--green);margin-bottom:22px;display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;background:#bf754c;border-radius:50%}.hero{display:grid;grid-template-columns:.95fr 1fr;gap:65px;align-items:center;padding:56px 0 86px}.hero-copy h1{margin-bottom:26px}.intro{font-size:17px;line-height:1.8;max-width:430px}.actions{display:flex;align-items:center;gap:24px;margin-top:30px}.text-link{font-size:14px;font-weight:600}.quiet{font-size:12px;margin-top:17px}.hero-stage{position:relative;background:#e7ecdf;border-radius:48% 48% 12% 12%;padding:58px 27px 27px;min-width:0}.stage-word{position:absolute;top:14px;left:25px;font-family:Georgia,serif;font-style:italic;font-size:19px;transform:rotate(-8deg);color:#658065}.reader-window{position:relative;z-index:1;background:white;border-radius:12px;box-shadow:0 22px 45px #18392b14;transform:rotate(2deg);overflow:hidden;border:1px solid #dde1d9}.window-top{display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:1.8px;color:#879287;border-bottom:1px solid #e9ece6;padding:12px 19px}.window-dots{font-size:8px;letter-spacing:2px;color:#cbd3c9}.reader-label{display:flex;justify-content:space-between;padding:22px 25px 0;font-size:8px;font-weight:700;letter-spacing:1.4px;color:#738975}.reader-window h2{font-size:28px;margin:9px 25px 17px}.hero-art{width:100%;height:265px;object-fit:cover}.reader-window>p{font-size:14px;text-align:center;color:var(--ink);padding:20px 20px 8px}.reader-bottom{display:flex;align-items:center;justify-content:space-between;padding:13px 25px 22px;font-size:11px;font-weight:600}.dots{display:flex;gap:5px}.dots>*{height:5px;width:5px;background:#d9e1d5;border-radius:50%}.dots b{width:17px;border-radius:4px;background:var(--green)}.float-note{position:absolute;z-index:2;bottom:-10px;left:-30px;display:flex;align-items:center;gap:12px;padding:14px 22px;background:#fffdf5;box-shadow:0 8px 25px #18392b10;transform:rotate(-4deg);border-radius:8px;border:1px solid #e9e6d5;font-size:12px}.float-note small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.note-icon{display:grid;place-items:center;background:#e2ebd9;border-radius:50%;height:32px;width:32px}.stage-star{position:absolute;font-size:81px;right:-22px;top:5px;color:#cb8157;line-height:1;z-index:2}.benefit-strip{border-block:1px solid var(--line);background:#f2f3e9}.benefit-strip .wrap{display:flex;justify-content:space-between;padding-block:23px;font-size:12px;font-weight:500}.benefit-strip span:before{content:'✳';color:#a1834c;margin-right:12px}.section{padding-block:90px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:37px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p{font-size:14px}.story-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.story-card{text-align:left;padding:0;background:transparent;border:0}.story-image{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:1.2;margin-bottom:18px}.story-image img{height:100%;width:100%;object-fit:cover;transition:transform .3s}.story-card:hover img{transform:scale(1.05)}.story-image>span{position:absolute;bottom:11px;right:11px;background:#fffef3ed;padding:4px 10px;border-radius:4px;font-size:10px}.story-card small{display:block;font-size:8px;letter-spacing:1px;font-weight:700;color:#75816e;margin-bottom:7px}.story-card h3{font-size:19px;margin-bottom:8px}.story-card p{font-size:12px}.catalog-note{font-size:10px;margin-top:21px;color:#81897d}.workflow-section{background:#eaf0e6;border-block:1px solid #dfe6d9;padding:83px 0}.workflow{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.workflow .intro{font-size:15px;margin-top:22px}.steps{padding:0;list-style:none;margin:27px 0 0}.steps li{display:flex;gap:19px;padding:17px 0}.steps li>span{border:1px solid #c4d4be;border-radius:50%;width:33px;height:33px;display:grid;place-items:center;font-size:11px;flex-shrink:0}.steps h3{font-size:15px;letter-spacing:-.015em;margin-bottom:6px}.steps p{font-size:13px}.editor-preview{background:white;border:1px solid #d7e0d4;border-radius:12px;box-shadow:0 19px 35px #274e2e0d;transform:rotate(-1deg);overflow:hidden}.mini-bar{display:flex;justify-content:space-between;padding:15px 22px;border-bottom:1px solid #e5e9e0;font-size:10px;color:#758171}.mini-brand{font-weight:700;color:var(--green)}.editor-inner{padding:27px}.pill{display:inline-block;background:#eef1e8;color:#617b58;font-size:8px;letter-spacing:1px;font-weight:700;padding:5px 9px;border-radius:4px}.editor-inner h3{font-size:26px;margin:14px 0 10px}.editor-inner>p{font-size:12px}.level-switch{display:flex;background:#f0f2ed;padding:4px;border-radius:6px;margin:21px 0}.level-switch button{width:33.33%;padding:8px 4px;border:0;background:transparent;font-size:11px;border-radius:4px}.level-switch button[aria-pressed=true]{background:white;box-shadow:0 1px 5px #243e2319;font-weight:700}.editor-page{border:1px solid #dce5d6;background:#fcfcf8;border-radius:7px;padding:18px;min-height:137px}.editor-page small{font-size:8px;font-weight:700;color:#84917b;letter-spacing:1px}.editor-page p{font-size:14px;color:var(--ink);margin-top:10px;line-height:1.7}.personal-detail{display:flex;gap:10px;margin:18px 0 24px}.personal-detail>span{font-size:21px;color:#bc7d4f}.personal-detail strong{font-size:10px}.personal-detail p{font-size:11px;margin-top:3px}.assignment{border-top:1px solid #e5e9e0;padding-top:19px;display:flex;gap:10px;align-items:center}.avatar{width:34px;height:34px;border-radius:50%;background:#ead6c7;display:grid;place-items:center;font-size:10px;font-weight:700}.assignment strong,.assignment small{display:block;font-size:10px}.assignment small{font-size:8px;color:#839079}.assignment .button{margin-left:auto;font-size:10px;padding:8px 12px}.assignment-status{font-size:9px!important;min-height:16px;margin-top:10px}.sample-section{display:grid;grid-template-columns:1fr 1fr;gap:125px;align-items:center;padding-inline:65px}.sample-reader{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 15px 40px #2446310a;padding:24px}.sample-reader-top{display:flex;align-items:center;justify-content:space-between}.sample-reader-top button{background:none;border:0;font-size:27px;line-height:1;color:#527050}.sample-reader h3{font-size:25px;margin:16px 0}.sample-reader>img{aspect-ratio:1.45;object-fit:cover;border-radius:8px;width:100%}.sample-reader>p{font-size:15px;color:var(--ink);text-align:center;padding:21px 4px 12px;min-height:123px}.sample-controls{display:flex;align-items:center;justify-content:space-between}.sample-controls button{background:#edf1e5;border:0;border-radius:5px;width:40px;height:34px;font-size:18px}.sample-controls button:disabled{opacity:.35;cursor:default}.sample-controls span{font-size:10px;color:#7e8877}.sample-copy h2{font-size:53px}.sample-copy .intro{font-size:15px;margin:25px 0}.check-list{list-style:none;padding:0;margin:22px 0}.check-list li{display:flex;gap:10px;margin:12px 0;font-size:13px;color:#556d60;align-items:baseline}.check-list li:before{content:'✓';color:#638052;font-size:12px}.handwritten{font-family:Georgia,serif;font-style:italic;font-size:17px!important;color:#a66a45;margin-top:30px;transform:rotate(-3deg)}.audience{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;border-top:1px solid var(--line);padding:48px 0 80px;gap:35px}.audience h2{font-size:30px}.audience .eyebrow{font-size:8px;letter-spacing:1px}.audience-number{font-size:9px;letter-spacing:1.4px;color:#9b7852}.audience h3{font-size:16px;margin:15px 0 12px}.audience p{font-size:13px}.closing{background:#204f42;border-radius:16px;padding:56px;text-align:center;position:relative;overflow:hidden;color:#fbf8e9}.closing>span{position:absolute;left:8%;top:50px;color:#e1af7c;font-size:95px;transform:rotate(12deg)}.closing h2{font-size:44px;margin-bottom:25px}.closing p{color:#b8c9b5;font-size:12px;margin-top:15px}footer{padding-block:48px 24px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px}footer .brand{font-size:18px}footer .brand img{width:28px;height:31px}footer p{font-size:12px}footer>a:last-of-type{font-size:12px}footer small{flex-basis:100%;border-top:1px solid var(--line);padding-top:20px;font-size:10px;color:#8b9185;text-align:center}.pricing-intro{text-align:center;padding:48px 0 55px}.pricing-intro .eyebrow{justify-content:center}.pricing-intro h1{font-size:60px}.pricing-intro .intro{margin:22px auto 27px;font-size:16px;max-width:600px}.billing-switch{display:inline-flex;padding:5px;background:#e9ede2;border:1px solid #dce3d5;border-radius:8px}.billing-switch button{border:0;padding:8px 18px;border-radius:5px;background:transparent;font-size:12px}.billing-switch button[aria-pressed=true]{background:#fffdf5;box-shadow:0 1px 4px #2b483b14;font-weight:700}.billing-switch span{font-size:9px;background:#e1ead7;color:#547443;margin-left:7px;padding:4px 6px;border-radius:3px}.pricing-note{font-size:10px;margin-top:16px}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch}.plan{position:relative;padding:30px;background:#fffef9;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column}.plan.featured{border:2px solid var(--green);background:#f3f5eb}.plan-ribbon{position:absolute;top:-24px;left:-2px;right:-2px;background:var(--green);border-radius:9px 9px 0 0;color:#fff;font-size:9px;letter-spacing:1.5px;font-weight:600;text-align:center;padding:6px}.plan.featured{border-top-left-radius:0;border-top-right-radius:0}.plan-symbol{font-size:29px;color:#688258;line-height:1.2;margin-bottom:17px}.plan h2{font-size:28px;margin-bottom:13px}.plan>p{font-size:13px}.price{display:flex;gap:7px;align-items:baseline;margin-top:28px}.price strong{font-size:49px;font-weight:500;letter-spacing:-2px;line-height:1.2}.price>span{font-size:12px;color:#7d8973}.bill-caption{font-size:10px!important;margin:9px 0 23px;min-height:16px}.plan hr{width:100%;border:0;border-top:1px solid var(--line);margin:27px 0 22px}.includes-title{font-size:11px}.plan .check-list{margin:9px 0 23px}.plan .check-list li{font-size:12px}.plan-foot{margin-top:auto;padding-top:18px;font-size:10px!important}.seat-label{font-size:10px;display:flex;justify-content:space-between;align-items:center;gap:10px}.seat-label select{border:1px solid var(--line);padding:6px;border-radius:4px;color:var(--ink);background:white;font-size:11px}.caregiver-note{display:flex;gap:18px;align-items:center;border:1px solid #e7dfc9;border-radius:8px;background:#f6f1e4;margin-top:27px;padding:21px 27px}.caregiver-note>span{font-size:30px;color:#a37852}.caregiver-note p{font-size:12px}.caregiver-note strong{color:var(--ink)}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:640px;font-size:12px}th,td{padding:20px 18px;border-bottom:1px solid var(--line)}thead{background:#eaf0e4}thead th:first-child{width:40%}th{font-weight:600}tbody th{font-weight:500}td{color:#687c69}.faq-section{border-top:1px solid var(--line);padding:50px 0 80px;display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.faq-section .text-link{display:inline-block;margin-top:28px}.faqs details{border-bottom:1px solid var(--line);padding:19px 0}.faqs summary{font-size:14px;font-weight:500;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faqs summary:after{content:'+'}.faqs details[open] summary:after{content:'−'}.faqs p{font-size:13px;padding:15px 25px 0 0}.faqs details:first-child{padding-top:0}dialog{width:min(480px,calc(100% - 36px));border:1px solid var(--line);border-radius:16px;padding:40px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#173f3c99;backdrop-filter:blur(4px)}dialog h2{font-size:34px;margin-bottom:20px}dialog p{font-size:14px;margin-bottom:20px}.dialog-close{position:absolute;right:16px;top:9px;border:0;background:none;font-size:27px}.skip{position:absolute;top:-90px;left:10px;background:white;padding:15px;z-index:20}.skip:focus{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1500px){.hero{gap:100px}.hero-art{height:290px}}@media(max-width:1050px){.wrap{width:calc(100% - 56px)}.hero{gap:36px}.actions{align-items:start;flex-direction:column;gap:15px}.hero-art{height:215px}.hero-stage{padding:50px 17px 20px}.float-note{left:-15px;padding:12px}.workflow{gap:40px}.sample-section{gap:60px;padding-inline:20px}.sample-copy h2{font-size:45px}.audience{grid-template-columns:1fr 1fr}.plan{padding:24px}.plan-grid{gap:14px}.seat-label{flex-wrap:wrap}.brand{font-size:21px}.site-header nav{gap:22px}}
@media(max-width:720px){.wrap{width:calc(100% - 40px)}.site-header{height:85px;gap:10px;flex-wrap:wrap;padding-top:14px}.brand{font-size:19px}.brand img{width:30px;height:33px}.site-header .button{padding:8px 12px;font-size:11px}.site-header nav{order:3;width:100%;justify-content:center;gap:29px;font-size:11px}.hero{grid-template-columns:1fr;padding:48px 0 55px;gap:38px}.eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:18px}h1{font-size:51px}.hero-copy h1{margin-bottom:20px}.intro{font-size:15px;max-width:100%}.actions{flex-direction:row;align-items:center;gap:18px;margin-top:24px}.button{padding:13px 16px;font-size:12px;gap:10px}.text-link{font-size:12px}.quiet{font-size:10px}.hero-stage{margin:0 10px;padding:48px 15px 23px}.hero-art{height:225px}.stage-star{font-size:59px;right:-9px;top:13px}.float-note{left:-9px;bottom:-10px;font-size:10px}.float-note small{font-size:9px}.stage-word{font-size:16px}.reader-window>p{font-size:12px}.reader-window h2{font-size:25px}.benefit-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:14px 7px;font-size:9px;padding-block:20px}.benefit-strip span:before{margin-right:6px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:26px}.section-heading h2{font-size:30px}.section-heading>p{font-size:12px;margin-top:17px}.story-grid{grid-template-columns:1fr 1fr;gap:25px 14px}.story-card h3{font-size:16px}.story-card small{font-size:6px}.story-card p{font-size:10px}.story-image{margin-bottom:12px;aspect-ratio:1}.story-image>span{font-size:8px;right:7px;bottom:7px}.catalog-note{font-size:9px}.workflow-section{padding:50px 0}.workflow{grid-template-columns:1fr;gap:25px}.workflow h2{font-size:32px}.workflow .intro{font-size:14px}.editor-inner{padding:21px}.editor-preview{transform:none}.editor-page{min-height:144px}.sample-section{grid-template-columns:1fr;padding-inline:0;gap:30px}.sample-copy{grid-row:1}.sample-copy h2{font-size:43px}.sample-copy .intro{margin:20px 0}.sample-copy .check-list{margin-bottom:0}.handwritten{display:none}.sample-reader{max-width:420px;width:100%;margin-inline:auto;padding:20px}.audience{grid-template-columns:1fr;gap:26px;padding:35px 0 48px}.audience>div:first-child h2 br{display:none}.audience h3{margin:8px 0}.closing{padding:38px 18px}.closing h2{font-size:32px}.closing>span{font-size:33px;top:14px;left:12px}.closing p{font-size:10px}footer{padding-top:30px;gap:18px}footer p{order:3;flex-basis:100%;font-size:11px}footer small{order:4;font-size:8px}.pricing-intro{padding:50px 0 49px}.pricing-intro h1{font-size:46px}.pricing-intro .intro{font-size:14px}.pricing-intro .intro br{display:none}.pricing-note{font-size:8px}.plan-grid{grid-template-columns:1fr;gap:44px}.plan{padding:28px}.plan>p br{display:none}.plan-ribbon{font-size:8px}.price{margin-top:20px}.plan .check-list{margin-bottom:12px}.seat-label{justify-content:start;font-size:12px}.caregiver-note{padding:17px;align-items:start;gap:12px}.caregiver-note p{font-size:11px}.faq-section{grid-template-columns:1fr;gap:35px;padding:35px 0 50px}.faqs summary{font-size:13px}.faqs p{font-size:12px}.comparison th,.comparison td{padding:16px 12px;font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Existing character artwork, framed consistently with app avatars. */
.avatar-image{width:36px;height:36px;flex-shrink:0;border-radius:50%;overflow:hidden;background:#e9eee5}
.student-picker{display:flex;gap:8px;margin:18px 0;flex-wrap:wrap}
.student-picker button{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:24px;padding:4px 12px 4px 4px;background:#fff;font-size:11px}
.student-picker button[aria-pressed="true"]{border-color:var(--green);background:#eaf0e6;box-shadow:0 0 0 1px var(--green)}
.student-picker .avatar-image{width:30px;height:30px}
.content-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:70px;align-items:center;padding:65px 0 75px}.content-hero h1{font-size:53px}.content-hero .intro{margin:26px 0}.content-hero>img{width:100%;aspect-ratio:1.1;object-fit:cover;border-radius:120px 120px 14px 14px}.collection-intro{display:flex;align-items:center;justify-content:space-between;border-block:1px solid var(--line);padding-block:26px;gap:25px}.collection-intro strong{font-size:33px;display:block;font-weight:500}.collection-intro span,.collection-intro p{font-size:12px;color:var(--muted)}.content-search{font-size:11px;display:grid;gap:6px;min-width:250px}.content-search input{font:inherit;font-size:14px;padding:13px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--ink)}.category-list{margin-top:23px}.category{border-top:1px solid var(--line);padding:22px 0}.category summary{display:flex;gap:23px;align-items:center;cursor:pointer;list-style:none}.category summary:after{content:'+';font-size:23px}.category[open] summary:after{content:'−'}.category-number{font-size:11px;letter-spacing:1px;color:#9a754f}.category h3{font-size:22px}.category-count{margin-left:auto;font-size:11px;white-space:nowrap;color:var(--muted)}.concept-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:30px 0 15px}.concept h4{font-size:14px;margin:0 0 8px;font-weight:600}.concept p{font-size:12px}.planned-copy{font-size:13px;grid-column:1/-1}.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.goal-grid article{border-top:2px solid #b5c7a6;padding-top:20px}.goal-grid h3{font-size:24px;margin:15px 0}.goal-grid p,.goal-grid li{font-size:14px}.goal-grid ul{padding-left:18px;margin-top:22px;color:#61795c}.goal-grid li{margin-bottom:10px}.aba-example{background:white;border-radius:14px;overflow:hidden;box-shadow:0 16px 35px #2446310a}.aba-example>img{width:100%;height:260px;object-fit:cover}.aba-example>div{padding:27px}.aba-example h3{margin:15px 0;font-size:25px}.aba-example p{font-size:15px}.aba-example small{font-size:10px;color:var(--muted);display:block;margin-top:20px}.principles{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.principles h3{font-size:20px;margin-bottom:15px}.principles p{font-size:15px;margin-bottom:27px}.principles .source-note{font-size:11px;margin-bottom:0}.source-note a{text-decoration:underline}.closing .button{margin-top:20px}[hidden]{display:none!important}
@media(max-width:720px){.site-header nav{gap:19px;font-size:10px}.content-hero{grid-template-columns:1fr;gap:30px;padding:50px 0 40px}.content-hero h1{font-size:42px}.content-hero>img{aspect-ratio:1.4;border-radius:60px 60px 10px 10px}.collection-intro{flex-wrap:wrap;gap:15px}.collection-intro>div{flex:1}.collection-intro>p{flex-basis:100%;font-size:11px}.collection-intro span{font-size:10px}.content-search{margin-top:20px}.category summary{gap:12px}.category h3{font-size:16px}.category-count{font-size:9px}.category-number{font-size:9px}.concept-grid{grid-template-columns:1fr;gap:20px;margin-top:24px}.goal-grid{grid-template-columns:1fr;gap:24px}.principles{grid-template-columns:1fr;gap:25px}.aba-example>img{height:220px}}
.character-section{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;border-top:1px solid var(--line)}.character-copy h2{font-size:44px}.character-copy .intro{margin:24px 0;font-size:15px}.character-instruction{font-size:12px;color:var(--ink);font-weight:600;margin:25px 0 14px}.character-choices{display:flex;gap:13px}.character-choices button{border:1px solid var(--line);padding:8px 10px 7px;border-radius:13px;background:#fffdf8;display:grid;justify-items:center;gap:7px;min-width:76px;font-size:11px}.character-choices button[aria-pressed=true]{background:#e8efdf;border-color:var(--green);box-shadow:0 0 0 2px var(--green)}.character-choices svg{width:54px;height:54px;border-radius:50%;overflow:hidden}.character-caption{font-size:11px;margin-top:17px}.character-disclaimer{display:block;font-size:9px;color:var(--muted);margin-top:9px}.character-scene{border:1px solid #d6dfcf;background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 15px 35px #29462c0d}.character-scene-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 22px;font-size:10px;color:var(--muted)}.character-scene>img{width:100%;aspect-ratio:4/3;object-fit:cover}.character-scene>p{text-align:center;padding:20px 24px 12px;color:var(--ink);font-size:14px}.character-scene-foot{display:flex;justify-content:space-between;padding:12px 22px 20px;font-size:10px;color:#78856d}.character-scene-foot span:last-child{color:var(--green);font-weight:600}@media(max-width:720px){.character-section{grid-template-columns:1fr;gap:30px}.character-copy h2{font-size:34px}.character-scene-heading{padding:14px;font-size:9px}.character-scene>p{font-size:12px}.character-scene-foot{padding:10px 14px 17px;font-size:9px}}
/* Draw plan icons as vectors so they do not depend on installed symbol fonts. */
svg.plan-symbol{width:34px;height:34px;display:block;flex-shrink:0}
/* Organic ripple contours echo the student portal's decorative rings. */
.closing{
  background-image:url('assets/ripples-light.svg'),url('assets/ripples-light.svg');
  background-repeat:no-repeat;
  background-position:left -130px bottom -150px,right -105px top -175px;
  background-size:430px,490px;
}
.plan.featured{
  background-image:url('assets/ripples-sage.svg');
  background-repeat:no-repeat;
  background-position:right -145px bottom -125px;
  background-size:340px;
}
.workflow-section{
  background-image:url('assets/ripples-sage.svg'),url('assets/ripples-sage.svg');
  background-repeat:no-repeat;
  background-position:left -230px bottom -220px,right -240px top -240px;
  background-size:540px,600px;
}
.hero-stage{
  background-image:url('assets/ripples-sage.svg');
  background-repeat:no-repeat;
  background-position:right -90px top -100px;
  background-size:380px;
}
@media(max-width:720px){
  .closing{background-size:270px,290px;background-position:left -140px bottom -120px,right -140px top -120px}
  .workflow-section{background-size:340px,360px;background-position:left -200px bottom -140px,right -220px top -170px}
}
.character-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:310px;gap:12px}
.character-choices button{min-width:0}

/* School purchasing forms use the same marketing colors, type, and spacing. */
.marketing-request{max-width:760px}.marketing-request h1,.marketing-details h1{margin-bottom:24px}.marketing-request>p{margin-bottom:30px}.marketing-form{display:grid;gap:10px;margin-top:32px}.marketing-form label{font-weight:600;font-size:14px;margin-top:12px}.marketing-form input:not([type=submit]),.marketing-form select,.marketing-form textarea{font:inherit;color:var(--ink);background:#fffef9;border:1px solid #b7c8b7;border-radius:7px;padding:12px;width:100%;min-height:46px}.marketing-form input:focus-visible,.marketing-form textarea:focus-visible{outline:3px solid #bc6940;outline-offset:3px}.marketing-form p{font-size:12px}.marketing-form .button{margin-top:18px;justify-self:start}.form-error{padding:16px;background:#f9e8dc;color:#8a3b25;border-radius:7px}.marketing-details{max-width:880px}.marketing-detail{border-top:1px solid var(--line);padding:32px 0}.marketing-detail h2{font-size:28px;margin-bottom:20px}.marketing-detail p{margin:16px 0}.marketing-detail .button{margin-top:16px}.plan-foot .text-link{display:inline-block;font-size:11px;margin-top:12px}
/* Schools: a collection-and-handout composition within the marketing system. */
.site-header nav{gap:23px}.school-marketing-hero{grid-template-columns:1fr 1fr;gap:70px;padding-bottom:115px}.school-marketing-hero h1{font-size:clamp(44px,4.4vw,65px)}.school-share-graphic{width:100%;max-width:480px;justify-self:end;margin:0}.school-share-stage{position:relative;width:100%;padding:20px;background:#e9eddf url('assets/ripples-sage.svg') no-repeat right -170px top -210px/450px;border-radius:28px}.school-share-label{font-family:Georgia,serif;font-style:italic;color:#627c5e;font-size:16px;font-weight:400;line-height:1.5;text-align:center;margin:0 8px 16px}.school-collection-preview{transform:rotate(2deg);background:#fffef9;border:1px solid #d5dfce;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px #27402c0c}.school-collection-inner{padding:20px}.school-collection-inner h2{font-size:26px;margin:12px 0 18px}.school-collection-inner>img{width:100%;height:auto;object-fit:contain;border-radius:7px}.school-preview-row{display:flex;gap:11px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.school-preview-row:last-child{border-bottom:0;padding-bottom:0}.school-preview-check{background:#eaf0df;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;color:#608257;flex-shrink:0}.school-preview-row strong,.school-preview-row small{display:block}.school-preview-row small{color:var(--muted);font-size:10px}.school-preview-row>span:last-child{margin-left:auto}.school-paper-preview{transform:rotate(-3deg);position:relative;margin:24px 0 0;display:flex;align-items:center;gap:12px;padding:12px;background:#fffdf5;border:1px solid #e2dbc7;border-radius:12px}.school-paper-preview img{width:66px;flex-shrink:0}.school-paper-preview strong{font-family:Georgia,serif;font-weight:400;font-size:20px;line-height:1.3}.school-paper-preview span,.school-paper-preview small{display:block;font-size:11px;color:var(--muted);margin-top:5px}.school-paper-preview small{font-size:9px}.school-path-section{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;border-top:1px solid var(--line);padding-block:70px}.school-path{list-style:none;padding:0;margin:0}.school-path li{display:flex;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.school-path li:first-child{padding-top:0}.school-path li>span{font-size:12px;color:#a57e56;padding-top:5px}.school-path h3{font-size:22px;margin-bottom:12px}.school-path p{font-size:14px}.school-annual-section{background:#eef1e6;padding:70px 0;border-block:1px solid var(--line)}.school-annual{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.school-annual .intro{margin:24px 0}.school-annual-card{background:#fffef8;padding:38px;border:1px solid #d4ddca;border-radius:12px}.school-annual-card h2{margin:20px 0 12px}.school-annual-card>p{font-size:13px}.school-annual-card .quiet{font-size:11px}.school-trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.school-trust-strip p{margin-bottom:24px}.caregiver-school-note{padding:14px 26px;gap:20px}.caregiver-handout{width:98px;height:90px;flex-shrink:0}.caregiver-school-note p{flex:1}.caregiver-school-note .text-link{display:inline-block;font-size:12px;margin-top:7px}.caregiver-school-note>.button{flex-shrink:0}
@media(max-width:1000px){.site-header{gap:18px}.site-header nav{gap:14px;font-size:12px}.school-marketing-hero{gap:35px}.school-paper-preview strong{font-size:20px}.school-annual,.school-path-section,.school-trust-strip{gap:45px}}
@media(max-width:720px){.site-header nav{justify-content:center;flex-wrap:wrap;gap:8px 16px;font-size:11px}.school-marketing-hero{grid-template-columns:1fr;gap:40px;padding-bottom:80px}.school-share-graphic{justify-self:center}.school-share-stage{margin:0;padding:16px}.school-share-label{font-size:13px}.school-paper-preview{margin:22px 0 0;padding:10px}.school-paper-preview img{width:58px}.school-marketing-hero .actions{gap:16px;flex-wrap:wrap}.school-path-section,.school-annual,.school-trust-strip{grid-template-columns:1fr;gap:30px}.school-path-section{padding-block:45px}.school-annual-section{padding:45px 0}.school-annual-card{padding:26px}.caregiver-school-note{flex-wrap:wrap;gap:12px;padding:18px}.caregiver-handout{width:70px;height:76px}.caregiver-school-note p{flex-basis:calc(100% - 90px)}.caregiver-school-note>.button{margin-left:82px}}
/* School navigation keeps the overview link and a keyboard-operable submenu. */
.nav-school-group{display:flex;align-items:center;gap:2px;white-space:nowrap}.nav-dropdown{position:relative}.nav-dropdown summary{display:grid;place-items:center;list-style:none;width:27px;height:32px;border-radius:5px;cursor:pointer}.nav-dropdown summary::-webkit-details-marker{display:none}.nav-dropdown summary:hover,.nav-dropdown[open] summary{background:#e8eddf}.nav-dropdown[open] summary svg{transform:rotate(180deg)}.nav-dropdown-panel{position:absolute;right:-24px;top:calc(100% + 10px);width:265px;z-index:100;background:#fffef9;border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 32px #173f3c16;padding:8px;white-space:normal}.nav-dropdown-panel a{display:block;padding:11px 12px;border-radius:5px;font-size:13px;line-height:1.4}.nav-dropdown-panel a:hover{background:#edf1e5}.site-header{position:relative;z-index:10}.site-header nav{align-items:center}
@media(max-width:720px){.nav-dropdown-panel{right:-90px;width:245px;text-align:left}.nav-dropdown summary{height:25px;width:23px}}

.site-header .nav-dropdown summary{display:flex;align-items:center;gap:7px;width:auto;min-height:36px;padding:0 6px;font-size:inherit;font-weight:inherit;white-space:nowrap}.site-header .nav-dropdown-panel{right:-20px}.site-header .nav-dropdown summary svg{flex-shrink:0}@media(max-width:720px){.site-header .nav-dropdown-panel{right:-68px}.site-header .nav-dropdown summary{min-height:28px;padding:0 3px}}

.content-hero.family-marketing-hero>img{height:auto;aspect-ratio:auto;object-fit:contain}

.quote-spam-trap{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Compact navigation: one header row, with a stacked panel on phones/tablets. */
.nav-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--green);padding:0;flex-shrink:0}
@media(max-width:900px){
  .site-header{height:86px;min-height:86px;padding-block:0;flex-wrap:nowrap;gap:12px}
  .site-header .brand{font-size:20px;gap:6px;letter-spacing:-.7px}.site-header .brand img{width:31px;height:35px}.site-header .brand-dot{margin-left:-5px}
  .site-header>.button{order:1;margin-left:auto;padding:9px 12px;gap:10px;font-size:12px;white-space:nowrap}.site-header>.button span{display:none}
  .site-header .nav-toggle{display:flex;order:2}
  .site-header nav{display:none;position:absolute;top:calc(100% - 2px);left:0;right:0;width:100%;order:3;max-height:calc(100dvh - 100px);overflow-y:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:10px;background:#fffef9;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 28px #173f3c15;font-size:15px;z-index:100}
  .site-header.navigation-open nav{display:flex}.site-header nav>a{display:flex;align-items:center;min-height:46px;padding:10px 12px;border-radius:6px;text-align:left}.site-header nav>a:hover{background:#edf1e5}
  .site-header .nav-dropdown summary{min-height:46px;padding:10px 12px;font-size:15px;justify-content:space-between}.site-header .nav-dropdown summary svg{margin-left:auto}
  .site-header .nav-dropdown-panel{position:static;width:100%;padding:0 0 8px 14px;border:0;box-shadow:none;background:transparent}.site-header .nav-dropdown-panel a{min-height:44px;display:flex;align-items:center;padding:10px 12px;font-size:14px}
}
@media(max-width:380px){.site-header{gap:8px}.site-header .brand{font-size:18px}.site-header .brand img{width:27px;height:30px}.site-header>.button{font-size:11px;padding:8px 10px}.site-header .nav-toggle{width:36px;height:38px}}
