@font-face{font-family:Fredoka;src:url('assets/fredoka-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Fredoka;src:url('assets/fredoka-700.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:'Baloo 2';src:url('assets/baloo2-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--blue:#2563eb;--blue-dark:#1d4ed8;--navy:#0f172a;--ink:#172033;--pale:#eff6ff;--white:#fff;--red:#ef4444;--line:#cbd5e1;--muted:#58657a;--shadow:0 18px 50px rgba(15,23,42,.12);--max:74rem}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{margin:0;background:var(--white);color:var(--ink);font-family:Arial,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:clip}a{color:inherit}button,input{font:inherit}h1,h2,h3,p{overflow-wrap:normal}h1,h2,h3{font-family:Fredoka,Arial,sans-serif;line-height:.98;text-wrap:balance}p{margin-top:0;text-wrap:pretty}.skip-link{position:fixed;z-index:100;left:1rem;top:1rem;transform:translateY(-180%);background:var(--navy);color:#fff;padding:.75rem 1rem;border-radius:.5rem}.skip-link:focus{transform:none}.skip-link:focus-visible,:focus-visible{outline:3px solid var(--red);outline-offset:4px}.masthead{height:5.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:var(--max);margin:auto;padding:.55rem clamp(1rem,4vw,3rem);background:#fff}.brand{display:flex;height:4.1rem;width:4.1rem;overflow:hidden;align-items:center;justify-content:center}.brand img{height:4.7rem;width:auto;display:block}.masthead__meta{display:flex;align-items:center;gap:.85rem;color:var(--navy);font-family:Fredoka,Arial,sans-serif}.masthead__meta strong{color:var(--blue);font-size:1.1rem}.masthead__meta span{border-left:1px solid var(--line);padding-left:.85rem;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.campaign-banner{background:var(--navy);color:#fff;padding:1rem max(1rem,calc((100vw - var(--max))/2 + 3rem));display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.campaign-banner__label{display:block;color:#bfdbfe;font-size:.7rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.campaign-banner strong{display:block;font-family:Fredoka,Arial,sans-serif;font-size:clamp(1.55rem,3vw,2.6rem);line-height:1.05}.campaign-banner em{color:#fff;font-style:normal;text-decoration:underline;text-decoration-color:var(--red);text-decoration-thickness:.18em;text-underline-offset:.13em}.campaign-banner__note{max-width:16rem;color:#94a3b8;font-size:.72rem;line-height:1.35;text-align:right}main{margin:auto}.opening,.story,.section-grid,.summary{max-width:var(--max);margin:auto}.opening{min-height:calc(90svh - 9rem);padding:clamp(4rem,9vw,8rem) clamp(1rem,7vw,6rem);display:grid;grid-template-columns:minmax(0,1.6fr) minmax(16rem,.65fr);align-items:center;gap:clamp(2rem,7vw,7rem);background:linear-gradient(135deg,#fff 0 58%,var(--pale) 58%)}.eyebrow{margin:0 0 1.1rem;color:var(--blue);font-weight:700;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.opening h1{font-size:clamp(4rem,9.5vw,8.6rem);margin:0;color:var(--navy);letter-spacing:-.055em}.opening h1 span,.section-grid h2 span,.story h2 span,.fundraiser h2 span{color:var(--blue)}.opening__lede{max-width:39rem;font-size:clamp(1.05rem,1.6vw,1.3rem);margin:2rem 0;color:#344158}.opening__actions{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.button{min-height:3.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.72rem 1.35rem;border:0;border-radius:.75rem;background:var(--blue);color:#fff;text-decoration:none;font-family:'Baloo 2',Arial,sans-serif;font-weight:700;font-size:1.04rem;box-shadow:0 7px 0 #12358e;cursor:pointer;transition-property:transform,background-color,box-shadow;transition-duration:140ms}.button:hover{background:var(--blue-dark)}.button:active{transform:translateY(3px) scale(.96);box-shadow:0 4px 0 #12358e}.text-link{font-weight:700;color:var(--blue);text-underline-offset:.2em}.opening__card{background:var(--navy);color:#fff;padding:2rem;border-radius:1.5rem;box-shadow:var(--shadow);transform:rotate(1.5deg)}.opening__card span{display:block;color:#93c5fd;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.opening__card strong{display:block;font-family:Fredoka,Arial,sans-serif;font-size:2rem;line-height:1.05;margin:.6rem 0 1rem}.opening__card p{margin:0;color:#cbd5e1}.story{display:grid;grid-template-columns:minmax(17rem,.8fr) minmax(0,1.25fr);gap:clamp(3rem,8vw,8rem);padding:clamp(5rem,10vw,9rem) clamp(1rem,5vw,4rem);background:var(--pale)}.story__intro{position:sticky;top:5rem;align-self:start}.story h2,.section-grid h2{font-size:clamp(3.2rem,6.2vw,6rem);letter-spacing:-.045em;margin:0 0 1.5rem;color:var(--navy)}.story__intro>p:last-of-type{max-width:29rem;color:var(--muted)}.story__stages{display:grid;gap:28vh}.story-stage{min-height:62vh;display:grid;grid-template-columns:3.1rem minmax(0,1fr);gap:1.3rem;align-content:center;opacity:.35;transform:translateY(1rem);transition-property:opacity,transform;transition-duration:300ms}.story-stage.is-active{opacity:1;transform:none}.story-stage__index{font-family:Fredoka,Arial,sans-serif;color:var(--blue);font-weight:700;border-top:4px solid var(--blue);padding-top:.35rem}.stage-kicker{color:var(--red);font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:700;margin-bottom:.7rem}.story-stage h3{font-size:clamp(2.4rem,4.7vw,4.7rem);margin:0 0 1.1rem;color:var(--navy);letter-spacing:-.03em}.story-stage p:last-child{max-width:36rem;font-size:1.08rem;color:#3e4c62}.section-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(3rem,8vw,8rem);padding:clamp(5rem,10vw,9rem) clamp(1rem,5vw,4rem);border-top:1px solid var(--line)}.section-lede{font-size:1.2rem;max-width:39rem;color:#3e4c62}.offer-list{padding:0;margin:2.5rem 0 0;list-style:none}.offer-list li{display:grid;grid-template-columns:3rem 1fr;gap:.8rem;padding:1.15rem 0;border-top:1px solid var(--line)}.offer-list li>span{color:var(--blue);font-family:Fredoka,Arial,sans-serif;font-weight:700}.offer-list strong{font-family:Fredoka,Arial,sans-serif;font-size:1.25rem;color:var(--navy)}.offer-list small{grid-column:2;color:var(--muted)}.terms{background:var(--navy);color:#fff;max-width:none;padding-inline:max(1rem,calc((100vw - var(--max))/2 + 4rem))}.terms h2{color:#fff}.terms__list p{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.25rem 0;border-top:1px solid #334155;margin:0}.terms__list span{color:#93c5fd;font-family:Fredoka,Arial,sans-serif;font-weight:700}.questions{scroll-margin-top:1rem}.questions__head>p:last-child{max-width:34rem;color:var(--muted)}.guided-form{display:grid;gap:1.25rem}.guided-form fieldset{border:0;padding:0;margin:0}.guided-form legend{font-family:Fredoka,Arial,sans-serif;color:var(--navy);font-weight:700;margin-bottom:.65rem}.guided-form label{display:block;position:relative;margin:.55rem 0}.guided-form input{position:absolute;opacity:0}.guided-form label span{display:flex;align-items:center;min-height:3rem;padding:.62rem 1rem .62rem 3rem;border:1px solid var(--line);border-radius:.7rem;cursor:pointer;position:relative;transition-property:border-color,background-color;transition-duration:120ms}.guided-form label span:before{content:'';position:absolute;left:1rem;width:.95rem;height:.95rem;border:2px solid #94a3b8;border-radius:50%}.guided-form input:checked+span{background:#dbeafe;border-color:var(--blue);color:var(--navy);font-weight:700}.guided-form input:checked+span:before{border:5px solid var(--blue)}.guided-form input:focus-visible+span{outline:3px solid var(--red);outline-offset:3px}.form-note{font-size:.75rem;color:var(--muted)}.summary{padding:clamp(3rem,7vw,6rem);background:#dbeafe;border-radius:1.5rem;margin-bottom:5rem}.summary[hidden]{display:none}.summary__top{display:flex;justify-content:space-between;gap:1rem}.summary h2{font-size:clamp(2.7rem,5vw,5rem);margin:.5rem 0 1rem;color:var(--navy)}.summary__status{font-size:1.15rem;max-width:56rem}.summary__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.summary__grid>div{background:#fff;padding:1.5rem;border-radius:1rem}.summary__grid h3{font-size:1.35rem;color:var(--navy)}.summary__pending{font-weight:700;margin:1.5rem 0 0}.text-button{min-height:44px;border:0;background:transparent;color:var(--blue);text-decoration:underline;font-weight:700;cursor:pointer}.fundraiser{background:var(--blue);color:#fff;max-width:none;padding-inline:max(1rem,calc((100vw - var(--max))/2 + 4rem))}.fundraiser h2,.fundraiser h2 span,.fundraiser .eyebrow{color:#fff}.fundraiser .section-lede{color:#dbeafe}.button--white{background:#fff;color:var(--navy);box-shadow:0 7px 0 #bfdbfe}.button--white:hover{background:#eff6ff}.source-note{font-size:.78rem;color:#dbeafe;margin-top:1.5rem}.footer{max-width:var(--max);min-height:7rem;margin:auto;padding:1rem clamp(1rem,4vw,3rem);display:grid;grid-template-columns:auto 1fr auto;gap:1.5rem;align-items:center;color:var(--muted);font-size:.78rem}.footer img{width:2.5rem;height:4.1rem;object-fit:cover;object-position:50% 48%}.footer a{font-weight:700;color:var(--blue)}
@media(max-width:45rem){.masthead{height:4.6rem}.brand{height:3.5rem;width:3.5rem}.brand img{height:4rem}.masthead__meta span{font-size:.65rem}.campaign-banner{align-items:flex-start}.campaign-banner__note{display:none}.opening{min-height:auto;grid-template-columns:1fr;background:linear-gradient(160deg,#fff 0 70%,var(--pale) 70%);padding-block:4rem}.opening h1{font-size:clamp(3.55rem,18vw,5.6rem)}.opening__card{transform:none}.story,.section-grid{grid-template-columns:1fr;gap:2.5rem;padding-inline:1rem}.story__intro{position:static}.story__stages{gap:5rem}.story-stage{min-height:auto;opacity:1;transform:none;grid-template-columns:2.3rem minmax(0,1fr)}.story-stage h3{font-size:clamp(2.25rem,11vw,3.4rem)}.section-grid h2,.story h2{font-size:clamp(2.9rem,14vw,4.5rem)}.summary{border-radius:0;margin-bottom:0;padding-inline:1rem}.summary__grid{grid-template-columns:1fr}.footer{grid-template-columns:auto 1fr}.footer a{grid-column:2}}
@media(min-width:45.01rem) and (max-height:32rem){.story__intro{position:static}.story{align-items:start}.story__stages{gap:4rem}.story-stage{min-height:auto;opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story-stage,.button{transition:none}.story-stage{transform:none}}
