:root{--bg:#fffaf4;--surface:#fff;--surface-alt:#f2f7f9;--ink:#1e2932;--muted:#65737c;--line:#dbe5e8;--brand:#c52222;--brand-dark:#8d181b;--blue:#176d86;--yellow:#f6c44d;--shadow:0 18px 55px #182c381f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}img,video,iframe{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{margin:0 0 1rem}h1,h2,h3,h4{color:var(--ink);letter-spacing:0;margin:0;line-height:1.12}h1{font-size:clamp(2.45rem,6vw,5.25rem)}h2{font-size:clamp(1.85rem,3.2vw,3rem)}h3{font-size:1.2rem}ul{margin:0;padding-left:1.1rem}li+li{margin-top:.45rem}.container{width:min(1120px,100% - 32px);margin:0 auto}.site-header{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffaf4f0;border-bottom:1px solid #dbe5e8e6;position:sticky;top:0}.nav-shell{justify-content:space-between;align-items:center;gap:24px;min-height:78px;display:flex}.brand{align-items:center;gap:12px;min-width:0;display:inline-flex}.brand-mark{background:var(--brand);border-radius:8px;flex:none;place-items:center;width:42px;height:42px;display:block;position:relative;box-shadow:0 8px 20px #c5222238}.brand-rod{background:#ffffffe0;border-radius:999px;height:2px;position:absolute;left:10px;right:10px}.brand-rod:first-child{top:12px}.brand-rod:nth-child(2){top:20px}.brand-rod:nth-child(3){top:28px}.brand-bead{background:var(--yellow);border-radius:999px;width:8px;height:8px;position:absolute;box-shadow:0 0 0 1px #1e293214}.bead-one{top:9px;left:12px}.bead-two{top:17px;right:12px}.bead-three{top:25px;left:17px}.bead-four{top:25px;right:8px}.brand strong,.brand small{display:block}.brand strong{font-size:1.05rem;line-height:1.1}.brand small{color:var(--muted);font-size:.78rem;line-height:1.25}.primary-nav{align-items:center;gap:6px;display:flex}.nav-link{color:#34454f;border-radius:8px;padding:10px 12px;font-size:.94rem;font-weight:700}.nav-link:hover,.nav-link.active{color:var(--brand);background:#fff}.nav-toggle{border:1px solid var(--line);background:#fff;border-radius:8px;width:44px;height:44px;padding:10px;display:none}.nav-toggle span{background:var(--ink);height:2px;margin:5px 0;display:block}.btn{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:800;line-height:1;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brand);color:#fff;box-shadow:0 12px 24px #c5222238}.btn-primary:hover{background:var(--brand-dark)}.btn-secondary{background:var(--blue);color:#fff}.btn-ghost{border-color:var(--line);color:var(--ink);background:#fff}.btn-small{min-height:38px;padding:0 14px}.hero{color:#fff;background-image:linear-gradient(90deg,#1e2932e0,#1e29326b,#1e29321a),url(/assets/img/girl.jpg);background-position:top;background-size:cover;align-items:end;min-height:calc(100vh - 78px);padding:78px 0 44px;display:grid}.hero h1,.hero p,.hero .eyebrow{color:#fff}.hero-content{max-width:760px}.eyebrow{color:var(--brand);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:.78rem;font-weight:900}.hero-lede{color:#ffffffe0;max-width:650px;margin:20px 0 28px;font-size:clamp(1.06rem,2vw,1.28rem)}.contact-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-stats{background:#ffffff3d;border:1px solid #ffffff52;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;max-width:780px;margin-top:56px;display:grid}.hero-stat{color:var(--ink);background:#ffffffe6;padding:18px}.hero-stat strong{font-size:1.45rem;line-height:1.1;display:block}.hero-stat span{color:var(--muted);font-size:.9rem}.section{padding:82px 0}.section-alt{background:var(--surface-alt)}.section-header{max-width:760px;margin-bottom:34px}.section-header p{color:var(--muted);margin-top:12px;font-size:1.08rem}.split{grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:center;gap:48px;display:grid}.media-frame{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;overflow:hidden}.media-frame img,.media-frame video{object-fit:cover;width:100%;height:100%}.video-frame{aspect-ratio:16/10}.benefit-grid,.program-grid,.pricing-grid,.contact-grid,.resource-grid{gap:18px;display:grid}.benefit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.program-grid,.pricing-grid,.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel,.benefit,.program-step,.price-panel,.contact-panel,.resource-link{border:1px solid var(--line);background:var(--surface);border-radius:8px}.benefit,.program-step,.price-panel,.contact-panel,.resource-link{padding:22px}.benefit span,.program-step span{color:#8d5e00;background:#fff1cf;border-radius:8px;place-items:center;width:36px;height:36px;margin-bottom:14px;font-weight:900;display:inline-grid}.benefit p,.program-step p,.price-panel p,.contact-panel p{color:var(--muted);margin:8px 0 0}.page-banner{background:var(--surface-alt);border-bottom:1px solid var(--line);padding:76px 0 54px}.page-intro{max-width:760px;color:var(--muted);margin-top:14px;font-size:1.1rem}.content-section{padding:72px 0}.prose{max-width:820px}.prose p{color:#44545d;font-size:1.05rem}.about-story{gap:34px;display:grid}.about-story .prose{max-width:860px}.about-photo{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;overflow:hidden}.about-photo img{object-fit:cover;object-position:center;width:100%;height:clamp(260px,42vw,520px)}.image-text{grid-template-columns:360px minmax(0,1fr);align-items:start;gap:44px;display:grid}.teacher-image{aspect-ratio:4/5;object-fit:cover;width:100%;box-shadow:var(--shadow);border-radius:8px}.abacus-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:30px;display:grid}.abacus-item img{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line);border-radius:8px;width:100%}.abacus-item h3{margin-top:10px}.check-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;padding:0;list-style:none;display:grid}.check-list li{margin:0;padding-left:28px;position:relative}.check-list li:before{content:"";background:var(--brand);border-radius:50%;width:9px;height:9px;position:absolute;top:.52em;left:0;box-shadow:0 0 0 5px #fee6e6}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:8px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:16px}th{color:var(--ink);text-transform:uppercase;background:#f7fafb;font-size:.88rem}tr:last-child td{border-bottom:0}.price{color:var(--brand);font-size:2rem;font-weight:900;line-height:1}.policy-list{gap:14px;margin-top:22px;display:grid}.policy-list article{border-left:4px solid var(--blue);background:#fff;padding:18px 20px}.cta-band{background:var(--ink);color:#fff;padding:58px 0}.cta-band h2,.cta-band p{color:#fff}.cta-band p{color:#ffffffc7;max-width:680px}.cta-layout{justify-content:space-between;align-items:center;gap:28px;display:flex}.faq-list{gap:12px;display:grid}.faq-item{border:1px solid var(--line);background:#fff;border-radius:8px;overflow:hidden}.faq-item summary{cursor:pointer;padding:20px 56px 20px 22px;font-weight:850;line-height:1.35;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";color:var(--brand);font-size:1.6rem;line-height:1;position:absolute;top:18px;right:22px}.faq-item[open] summary:after{content:"-"}.faq-answer{border-top:1px solid var(--line);color:#44545d;padding:18px 22px 22px}.map-frame{border:1px solid var(--line);min-height:440px;box-shadow:var(--shadow);border-radius:8px;overflow:hidden}.map-frame iframe{border:0;width:100%;height:100%;min-height:440px}.site-footer{color:#ffffffbd;background:#15232b}.footer-grid{grid-template-columns:minmax(0,1.3fr) minmax(180px,.7fr) minmax(0,1fr);gap:40px;padding:56px 0;display:grid}.footer-brand .brand-mark{background:var(--yellow);box-shadow:none}.footer-brand .brand-rod{background:#15232bc7}.footer-brand .brand-bead{background:var(--brand)}.site-footer h2,.site-footer strong{color:#fff}.site-footer h2{margin-bottom:14px;font-size:1rem}.site-footer small,.site-footer p,.site-footer address{color:#ffffffb8}.site-footer address{font-style:normal}.site-footer a:hover{color:#fff}.footer-links{gap:8px;display:grid}.copyright-bar{color:#ffffff94;border-top:1px solid #ffffff1a;padding:18px 0;font-size:.9rem}.enrollment-form-section{background:linear-gradient(180deg, var(--surface-alt), var(--bg))}.enrollment-shell{max-width:1040px}.enrollment-overview{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);align-items:center;gap:24px;padding:clamp(22px,4vw,34px);display:grid}.enrollment-overview h2{font-size:clamp(1.65rem,2.6vw,2.35rem)}.enrollment-overview p:not(.eyebrow){color:var(--muted);margin:12px 0 0}.fee-stack{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.fee-stack div{border-left:4px solid var(--brand);background:var(--surface-alt);border-radius:12px;gap:2px;padding:18px;display:grid}.fee-stack span,.fee-stack small{color:var(--muted)}.fee-stack strong{color:var(--ink);font-size:2rem;line-height:1}.registration-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:16px;overflow:hidden}.registration-stepper{background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.registration-step{background:var(--bg);min-height:64px;color:var(--muted);cursor:pointer;border:0;justify-content:center;align-items:center;gap:10px;padding:12px;font-weight:900;display:flex}.registration-step span{background:var(--surface-alt);min-width:28px;height:28px;color:var(--muted);border-radius:999px;justify-content:center;align-items:center;font-size:.76rem;display:inline-flex}.registration-step.active{color:var(--ink);background:#fff}.registration-step.active span,.registration-step.done span{background:var(--brand);color:#fff}.registration-step.locked,.registration-step:disabled{cursor:not-allowed;opacity:.55}.registration-step:disabled:hover{transform:none}.registration-error{color:var(--brand-dark);background:#fff1f1;border:1px solid #f3b4b4;border-radius:12px;margin:18px clamp(22px,4vw,36px) 0;padding:14px 16px;font-weight:800}.registration-section{padding:clamp(22px,4vw,36px)}.registration-section-header{max-width:720px;margin-bottom:24px}.registration-section-header h2{font-size:clamp(1.8rem,3vw,2.65rem)}.registration-section-header p:not(.eyebrow){color:var(--muted);margin-top:12px}.registration-entry{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:18px;padding:clamp(18px,3vw,24px)}.registration-entry-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.registration-remove{color:var(--brand);cursor:pointer;background:0 0;border:0;font-weight:900}.registration-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.registration-field{color:var(--ink);gap:7px;font-size:.86rem;font-weight:900;display:grid}.registration-field.wide{grid-column:1/-1}.registration-field em{color:var(--brand);margin-left:3px;font-style:normal}.registration-field input,.registration-field select,.registration-field textarea{width:100%;min-height:46px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b8c8ce;border-radius:8px;outline:none;padding:10px 12px;font-weight:400}.registration-field input:focus,.registration-field select:focus,.registration-field textarea:focus{border-color:var(--blue);box-shadow:0 0 0 4px #176d861f}.registration-field.invalid input,.registration-field.invalid select,.registration-field.invalid textarea{border-color:var(--brand);background:#fff7f7;box-shadow:0 0 0 4px #d13f2d1f}.registration-options{margin:24px 0}.registration-options h3{margin-bottom:14px}.registration-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.registration-options.invalid .registration-choice-grid,.registration-acceptance.invalid,.registration-consent-group.invalid{border-color:var(--brand);background:#fff7f7;box-shadow:0 0 0 4px #d13f2d1f}.registration-choice,.registration-acceptance,.registration-radio-row label{border:1px solid var(--line);background:var(--surface-alt);color:var(--ink);border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.registration-choice input,.registration-acceptance input,.registration-radio-row input{width:18px;min-width:18px;height:18px;margin-top:3px}.registration-add{margin-top:2px}.registration-subhead{border-top:1px solid var(--line);margin:30px 0 16px;padding-top:24px}.registration-subhead p{color:var(--muted);margin:8px 0 0}.registration-review-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:18px;display:grid}.registration-totals{margin:18px 0}.registration-totals div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;display:flex}.registration-totals dt{color:var(--muted)}.registration-totals dd{margin:0;font-weight:900}.registration-totals .total{color:var(--brand);font-size:1.35rem}.registration-policy-list{color:var(--muted);margin:16px 0}.registration-acceptance{background:#fff7df}.media-consent-entry{grid-column:1/-1}.media-consent-entry>p{color:var(--muted);margin-top:10px}.registration-consent-group{border:1px solid var(--line);background:var(--surface-alt);border-radius:12px;margin:16px 0 0;padding:16px}.registration-consent-group legend{color:var(--ink);padding:0 6px;font-weight:900}.registration-consent-group p{color:var(--muted);margin:4px 0 12px}.registration-radio-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.registration-radio-row label{background:#fff;align-items:center}.registration-actions{border-top:1px solid var(--line);background:var(--surface-alt);justify-content:flex-end;gap:12px;padding:20px clamp(22px,4vw,36px);display:flex}.registration-actions .btn:disabled{cursor:not-allowed;opacity:.45;transform:none}.registration-success{color:#1f5e2d;background:#eaf7ed;border:1px solid #afd7ba;border-radius:12px;margin-top:18px;padding:14px 16px;font-weight:900}@media (max-width:940px){.nav-toggle{display:block}.primary-nav{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;align-items:stretch;padding:10px;display:none;position:absolute;top:78px;left:16px;right:16px}.primary-nav.open{display:grid}.nav-link{padding:12px}.split,.image-text,.cta-layout,.footer-grid,.enrollment-overview,.registration-review-grid{grid-template-columns:1fr}.benefit-grid,.program-grid,.pricing-grid,.contact-grid,.resource-grid,.abacus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.container{width:min(100% - 24px,1120px)}.brand small{display:none}.hero{min-height:auto;padding:84px 0 34px}.hero-stats,.benefit-grid,.program-grid,.pricing-grid,.contact-grid,.resource-grid,.abacus-grid,.check-list,.fee-stack,.registration-stepper,.registration-grid,.registration-choice-grid,.registration-radio-row{grid-template-columns:1fr}.section,.content-section{padding:54px 0}.page-banner{padding:54px 0 40px}.contact-actions,.cta-layout{flex-direction:column;align-items:stretch}.btn{width:100%}.registration-step{justify-content:flex-start}.registration-actions{flex-direction:column}th,td{padding:13px}}
