@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@500;600;700&display=swap');
:root{--teal:#123f49;--cream:#fff8ec;--gold:#ffd166;--coral:#ff917a;--mint:#7ae5dd;--muted:#526670}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--teal);font-family:'DM Sans',system-ui,sans-serif;line-height:1.65}a{color:inherit}a:focus-visible{outline:3px solid #c5573b;outline-offset:5px}header,main,footer{max-width:1180px;margin:auto}header{padding:28px 40px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{text-decoration:none;font-family:'Outfit',sans-serif;font-size:30px;font-weight:700}.brand span{font:500 13px 'DM Sans',sans-serif;margin-left:14px}.navlink{font-size:14px;font-weight:700}main{padding:0 40px}.intro{display:grid;grid-template-columns:1.35fr 1fr;gap:65px;padding:54px 0 64px;align-items:center}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}h1,h2,h3{font-family:'Outfit',system-ui,sans-serif;line-height:1.12;margin:14px 0}h1{font-size:clamp(40px,4.9vw,66px);letter-spacing:-2.2px}h1 em{font-style:normal;text-decoration:underline;text-decoration-color:var(--coral);text-decoration-thickness:6px;text-underline-offset:7px}h2{font-size:clamp(30px,3.4vw,43px);letter-spacing:-1px}h3{font-size:23px}.lede{font-size:19px;max-width:520px}.byline{font-size:14px;margin:25px 0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--teal);color:white;border-radius:13px;padding:15px 22px;text-decoration:none;font-weight:700;font-size:15px}.button:hover{background:#205767}.privacy{font-size:11px;color:var(--muted);margin-top:18px}.preview{background:var(--teal);color:var(--cream);border-radius:28px;padding:29px;box-shadow:12px 12px 0 #f2d8c6;transform:rotate(2deg)}.preview h2{font-size:35px}.preview-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:10px;font-weight:700;letter-spacing:1px}.badge{background:var(--coral);padding:6px 9px;border-radius:20px;color:var(--teal);letter-spacing:0}.bars{display:flex;gap:10px;margin:24px 0}.bars>div{display:grid;grid-template-columns:repeat(4,1fr);width:33%;gap:3px}.bars i{height:54px;background:var(--gold);border:1px solid var(--gold);border-radius:4px}.bars .empty{background:transparent}.equation{font-family:'Outfit';font-size:34px;background:#20535d;border-radius:12px;text-align:center;padding:12px}.preview-note{font-size:13px;color:#d9f2f0}.preview-link{color:var(--mint);font-weight:700;font-size:13px}.brief{border-top:1px solid #d3ddda;border-bottom:1px solid #d3ddda;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding:22px 0}.brief small{font-weight:700;font-size:10px;letter-spacing:1.5px}.brief p{font-size:14px;margin:6px 0}.story{max-width:750px;padding:65px 0}.story p:not(.eyebrow){font-size:18px}.decisions{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;background:#e2f4f0;border-radius:26px;padding:38px}.decision-list article{display:flex;gap:18px;padding:16px 0;border-bottom:1px solid #c0dcd6}.decision-list article:last-child{border:0}.decision-list article>span{background:var(--gold);border-radius:50%;min-width:35px;height:35px;display:grid;place-items:center;font-weight:700;font-size:13px}.decision-list h3{font-size:20px;margin:3px 0}.decision-list p{font-size:14px;margin:8px 0}.iteration{padding:65px 0}.iteration-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:65px}.iteration-grid li{margin:10px 0}.iteration aside{background:#ffe5d9;padding:28px;border-radius:22px}blockquote{font:500 28px/1.25 'Outfit',sans-serif;margin:15px 0}.iteration aside p:last-child{font-size:14px}.textlink{font-weight:700;font-size:14px}.reflection{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;border-top:1px solid #d3ddda;padding:40px 0 60px}.reflection li{margin:12px 0}.small{font-size:12px;color:var(--muted)}.cta{background:var(--gold);padding:35px;border-radius:25px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin:8px 0}.cta p{margin:10px 0}.cta .button{white-space:nowrap}footer{padding:45px 40px;font-size:12px;color:var(--muted)}footer p{max-width:830px}footer strong{color:var(--teal)}@media(max-width:780px){header{padding:22px}.brand span{display:none}main{padding:0 22px}.intro,.decisions,.iteration-grid,.reflection{grid-template-columns:1fr;gap:28px}.intro{padding:30px 0 45px}.preview{transform:none;max-width:460px}.brief{gap:18px}.story{padding:40px 0}.decisions{padding:25px}.iteration{padding:40px 0}.cta{flex-direction:column;align-items:start;padding:25px}footer{padding:35px 22px}}@media(max-width:430px){.brief{grid-template-columns:1fr;gap:15px}h1{letter-spacing:-1px}.button{font-size:14px;padding:13px 16px}.preview{padding:22px}.bars i{height:42px}.preview-top{flex-wrap:wrap}}

/* Clear, consistent fraction notation and a complete regrouping model. */
.preview{transform:none;box-shadow:8px 8px 0 #f2d8c6;padding:26px;min-width:0}.preview h2{font-size:clamp(26px,3vw,34px);line-height:1.18;margin:20px 0}.preview-top{flex-wrap:wrap;letter-spacing:.7px}.model-step{padding:12px 0;border-top:1px solid #47717a}.step-label{font-size:13px;font-weight:500;display:flex;align-items:center;gap:8px;margin:0 0 14px;line-height:1.4}.step-label b{background:#7ae5dd;color:#123f49;width:23px;height:23px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.model-bars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.quarter-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px}.piece{height:34px;border:1px solid #ffd166;border-radius:3px}.piece.filled{background:#ffd166}.group-labels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;text-align:center;font-size:10px;margin:6px 0}.math-row{display:flex;justify-content:center;align-items:center;gap:12px;font-family:'DM Sans',system-ui,sans-serif;font-size:25px;font-weight:600;line-height:1;margin:17px 0 6px}.fraction{display:inline-flex;flex-direction:column;align-items:center;font-variant-numeric:tabular-nums;line-height:1.1;font-size:.86em;vertical-align:middle;min-width:24px}.fraction>span:first-child{border-bottom:2px solid currentColor;display:block;width:100%;text-align:center;padding:0 4px 4px}.fraction>span:last-child{padding:4px 4px 0}.mixed-number{display:inline-flex;align-items:center;gap:6px}.preview-note{font-size:12px;line-height:1.6;margin:12px 0 17px}.preview-link{display:inline-block;min-height:32px;line-height:1.6}
@media(min-width:781px) and (max-width:1000px){.intro{grid-template-columns:1fr 1fr;gap:28px}h1{font-size:43px;letter-spacing:-1px}.preview{padding:22px}.preview-top{gap:9px}.preview h2{font-size:28px}.model-bars{gap:8px}.group-labels{gap:8px}.piece{height:29px}}
@media(max-width:780px){.preview{max-width:520px;width:100%}.piece{height:40px}.preview h2{font-size:30px}.group-labels{font-size:12px}}
@media(max-width:430px){.preview{padding:22px}.preview h2{font-size:27px}.piece{height:30px}.model-bars,.group-labels{gap:8px}.group-labels{font-size:10px}.step-label{font-size:12px}}

.brand{display:flex;align-items:center;gap:16px}.brand .soro-logo{display:block;flex-shrink:0;width:190px;height:115px;margin:0;background-image:url('assets/soro-logo-family.png');background-size:330% auto;background-position:50% 49%;background-repeat:no-repeat}.brand .brand-context{font:500 12px 'DM Sans',sans-serif;margin:0;max-width:120px;line-height:1.5}header{padding-top:12px;padding-bottom:12px}@media(max-width:780px){.brand .soro-logo{display:block;width:155px;height:95px}.brand .brand-context{display:none}}

.brand .soro-logo{background-image:url("assets/soro-learning-transparent.png");background-size:contain;background-position:center}

.simple-preview{padding:28px}.simple-preview>p:not(.eyebrow){font-size:14px;line-height:1.6}.simple-preview h2{font-size:clamp(26px,3vw,34px);margin:16px 0 20px}.simple-whole{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:2px solid #ffd166;border-radius:10px;overflow:hidden;margin:22px 0 10px}.simple-whole span{height:64px;border-right:2px solid #123f49}.simple-whole span:last-child{border-right:0}.simple-whole .shaded{background:#ffd166}.simple-preview .simple-caption{margin:10px 0 22px}.same-amount{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;background:#20535d;padding:18px 15px;border-radius:14px}.same-amount>div{display:flex;flex-direction:column;align-items:center;gap:14px;min-height:92px}.amount-label{font-size:11px;font-weight:500;white-space:nowrap;color:#e0f4f0}.same-amount .fraction{font-size:26px;min-width:29px}.same-sign{font-size:26px;padding-top:24px}.decimal-amount{font:600 30px/1 'DM Sans',sans-serif;display:flex;align-items:center;height:63px}.simple-preview .preview-note{margin:19px 0}.simple-preview .preview-link{font-size:13px}@media(max-width:430px){.simple-preview{padding:22px}.simple-whole span{height:52px}}

.case-nav{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:12px}@media(max-width:500px){header{flex-wrap:wrap}.case-nav{width:100%;justify-content:space-between}}
