/* ===== V4 refresh pages: Documents & Forms 1822, Invite 3045, CW Williams 2228, Music 1972, Preschool 1796, Get Engaged 4310 ===== */
.hw4 { --g:#D8A441; --gl:#F2CF86; --t:#245C63; --d:#1D3F44; --tint:#E8F1F0; }
.hw4 [data-id="5e1dcf58"], .hw4 [data-id="3f66cc78"], .hw4 [data-id="187ffeb"], .hw4 [data-id="c3f7b32"], .hw4 [data-id="bd1f226"], .hw4 [data-id="93a86d0"] { padding:0 !important; gap:0 !important; max-width:none !important; }

/* ---------- Hero ---------- */
.hw4 .hm-hero { position:relative; overflow:hidden; isolation:isolate; min-height:min(64vh, 580px); display:flex !important; flex-direction:column; justify-content:center; align-items:center; text-align:center; background:radial-gradient(ellipse 80% 70% at 50% 20%, #2C6B72 0%, #1D3F44 60%, #16343A 100%) !important; padding:110px 24px 130px !important; margin:0 !important; border-radius:0 !important; }
.hw4 .hm-hero.hm-hero-tall { min-height:min(74vh, 640px); }
.hw4 .hm-hero .hm-eyebrow { display:inline-flex !important; align-items:center; gap:8px; width:fit-content; margin-left:auto !important; margin-right:auto !important; padding:6px 16px; border:1.5px solid rgba(216,164,65,.6); border-radius:999px; background:rgba(29,63,68,.35); color:var(--gl) !important; }
.hw4 .hm-hero .hm-title { color:#fff !important; font-size:clamp(40px, 6vw, 76px) !important; line-height:1.08 !important; max-width:980px; margin-left:auto !important; margin-right:auto !important; }
.hw4 .hm-hero .hm-lead { max-width:720px; margin-left:auto !important; margin-right:auto !important; color:rgba(255,255,255,.92) !important; font-size:clamp(17px, 1.6vw, 20px) !important; }
.hw4 .hm-hero .hm-actions { justify-content:center !important; }
.hw4 .hm-hero > .hm-eyebrow, .hw4 .hm-hero > .hm-title, .hw4 .hm-hero > .hm-lead, .hw4 .hm-hero > .hm-actions, .hw4 .hm-hero > .hw4-icon, .hw4 .hm-hero > .hw4-chips { animation:hw4Up .9s cubic-bezier(.2,1,.3,1) backwards; }
.hw4 .hm-hero > .hw4-icon { animation-delay:.05s; }
.hw4 .hm-hero > .hm-eyebrow { animation-delay:.15s; }
.hw4 .hm-hero > .hm-title { animation-delay:.3s; }
.hw4 .hm-hero > .hm-lead { animation-delay:.55s; }
.hw4 .hm-hero > .hm-actions { animation-delay:.8s; }
.hw4 .hm-hero > .hw4-chips { animation-delay:1s; }
@keyframes hw4Up { from { opacity:0; translate:0 26px; } to { opacity:1; translate:0 0; } }
.hw4-icon { display:block; width:58px; height:58px; margin:0 auto 10px; color:var(--gl); }
.hw4-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.hw4-icon svg { animation:hw4Bob 4.5s ease-in-out infinite; }
@keyframes hw4Bob { 0%,100% { translate:0 0; rotate:-3deg; } 50% { translate:0 -7px; rotate:3deg; } }
/* Photo hero (Music) */
.hw4-bg { position:absolute !important; inset:-14% 0 -14% 0; z-index:0 !important; background:center / cover no-repeat; pointer-events:none; }
.hw4-bg::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(16,45,50,.62) 0%, rgba(16,45,50,.78) 60%, rgba(16,45,50,.9) 100%); }
.hw4 .hm-hero.hw4-photo { background:#16343A !important; }
/* Hero jump chips (Get Engaged) */
.hw4-chips { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:26px !important; }
.hw4-chip { display:inline-flex; align-items:center; gap:8px; padding:8px 16px; border-radius:999px; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.22); color:#fff !important; font-family:Montserrat, sans-serif; font-size:13px; font-weight:700; text-decoration:none !important; transition:background .25s ease, translate .25s ease, border-color .25s ease; }
.hw4-chip:hover, .hw4-chip:focus-visible { background:rgba(216,164,65,.25); border-color:var(--g); translate:0 -2px; }
.hw4-chip i { width:8px; height:8px; border-radius:50%; background:var(--g); }

/* ---------- Sections ---------- */
.hw4 .hm-section { padding:96px 24px !important; margin:0 !important; border-radius:0 !important; scroll-margin-top:80px; }
.hw4 .hm-section-head { text-align:center; align-items:center; margin-left:auto !important; margin-right:auto !important; }
.hw4 .hm-section-sub { max-width:760px; margin-left:auto !important; margin-right:auto !important; }
.hw4 .hm-section-head .hm-eyebrow, .hw4 .hm-cta > .hm-eyebrow { display:inline-flex !important; align-items:center; gap:12px; }
.hw4 .hm-section-head .hm-eyebrow::before, .hw4 .hm-section-head .hm-eyebrow::after,
.hw4 .hm-cta > .hm-eyebrow::before, .hw4 .hm-cta > .hm-eyebrow::after { content:''; width:28px; height:2px; border-radius:2px; background:var(--g); }
.hw4 a.hm-btn { transition:translate .25s ease, box-shadow .25s ease, background-color .25s ease !important; white-space:normal !important; }
.hw4 a.hm-btn:hover { translate:0 -3px; box-shadow:0 12px 26px rgba(15,52,58,.25); }
.hw4 .hm-grid { width:100%; max-width:1120px; margin-left:auto !important; margin-right:auto !important; }

/* Cards */
.hw4 .hm-mcard, .hw4-card { transition:translate .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease; }
.hw4 .hm-mcard { overflow:hidden; border-top:4px solid var(--t); display:flex; flex-direction:column; }
.hw4 .hm-mcard:hover { translate:0 -8px; box-shadow:0 22px 44px rgba(15,108,120,.18) !important; border-top-color:var(--g); }
.hw4 .hm-mcard .hm-mcard-img { width:100% !important; aspect-ratio:4 / 3; height:auto !important; object-fit:cover; transition:scale .8s ease; }
.hw4 .hm-mcard:hover .hm-mcard-img { scale:1.06; }
.hw4 .hm-mcard .hm-program-body { display:flex !important; flex-direction:column; flex:1 1 auto; gap:10px; align-items:flex-start; text-align:left; }
.hw4 .hm-mcard .hm-program-body > .hm-actions, .hw4 .hm-mcard .hm-program-body > a.hm-btn { margin-top:auto !important; }
.hw4 .hm-age { display:inline-block; width:fit-content; background:#FFF3DA; color:#8A6116 !important; padding:5px 12px; border-radius:999px; }
.hw4-card { position:relative; display:flex !important; flex-direction:column; gap:10px; padding:30px 26px !important; border-radius:20px; background:#fff; box-shadow:0 14px 34px rgba(15,52,58,.10); border-top:4px solid var(--t); min-width:0; }
.hw4-card:hover { translate:0 -6px; box-shadow:0 22px 44px rgba(15,52,58,.16); border-top-color:var(--g); }
.hw4 .hm-value-card { transition:translate .35s ease, box-shadow .35s ease; }
.hw4 .hm-value-card:hover { translate:0 -6px; box-shadow:0 22px 44px rgba(15,52,58,.14); }
.hw4 .hm-split-img { object-fit:cover; }
.hw4-grid { display:grid !important; gap:24px !important; width:100%; max-width:1120px; margin:0 auto !important; }
.hw4-c2 { grid-template-columns:repeat(2, minmax(0, 1fr)) !important; max-width:980px; }
.hw4-c3 { grid-template-columns:repeat(3, minmax(0, 1fr)) !important; }
.hw4-c4 { grid-template-columns:repeat(4, minmax(0, 1fr)) !important; }

/* Link lists (documents) */
.hw4-links { display:flex !important; flex-direction:column; gap:8px; width:100%; margin-top:6px !important; }
.hw4-links > a { display:flex !important; align-items:center; gap:10px; padding:12px 14px !important; border-radius:12px; background:#F2F6F6; color:var(--d) !important; font-family:Montserrat, sans-serif; font-size:14px !important; font-weight:700 !important; line-height:1.35 !important; text-decoration:none !important; transition:background .25s ease, translate .25s ease; }
.hw4-links > a:hover, .hw4-links > a:focus-visible { background:#FFF3DA; translate:4px 0; }
.hw4-links > a svg { flex:0 0 18px; width:18px; height:18px; fill:none; stroke:var(--g); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.hw4-links > a .hw4-arrow { margin-left:auto; flex:0 0 16px; width:16px; height:16px; stroke:var(--t); opacity:.6; }

/* Closing */
.hw4 .hm-cta { position:relative; margin:0 !important; border-radius:0 !important; text-align:center; align-items:center; background:#1F4A50 !important; padding:100px 24px !important; }
.hw4 .hm-cta .hm-actions { justify-content:center !important; }
.hw4 .hm-cta > p:not(.hm-eyebrow) { max-width:640px; margin-left:auto !important; margin-right:auto !important; color:rgba(255,255,255,.9) !important; }

/* ---------- Documents & Forms ---------- */
.page-id-1822 [data-id="76610c84"] h2 { margin:0 !important; }

/* ---------- Invite a Friend ---------- */
.page-id-3045 [data-id="35df28e2"] .hw4-card { gap:14px; }
.hw4-quote { position:relative; margin:0 !important; padding:18px 20px !important; border-radius:18px 18px 18px 4px; background:var(--tint); color:var(--d) !important; font-size:16px !important; line-height:1.6 !important; }
.hw4-msg-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:auto; padding-top:4px; }
.hw4-mbtn { display:inline-flex; align-items:center; gap:7px; padding:10px 16px; border-radius:999px; border:2px solid var(--t); background:#fff; color:var(--t) !important; font-family:Montserrat, sans-serif; font-size:13px; font-weight:700; line-height:1; cursor:pointer; text-decoration:none !important; white-space:nowrap; transition:background .25s ease, color .25s ease, translate .25s ease; }
.hw4-mbtn svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.hw4-mbtn:hover, .hw4-mbtn:focus-visible { background:var(--t) !important; color:#fff !important; translate:0 -2px; }
.hw4-mbtn.is-primary { background:var(--t); color:#fff !important; }
.hw4-mbtn.is-primary:hover { background:var(--g) !important; border-color:var(--g); color:var(--d) !important; }
.hw4-mbtn.is-done { background:#2E7D5B !important; border-color:#2E7D5B; color:#fff !important; }
.page-id-3045 [data-id="4fbc3cc8"] { object-fit:contain !important; background:var(--tint); }

/* ---------- CW Williams ---------- */
.page-id-2228 [data-id="5e452e38"] { display:grid !important; grid-template-columns:repeat(2, minmax(0, 1fr)) !important; gap:24px !important; max-width:1000px; width:100%; margin:0 auto !important; }
.page-id-2228 [data-id="5e452e38"] img { width:100% !important; height:auto !important; aspect-ratio:4 / 3; object-fit:cover; border-radius:20px; box-shadow:0 14px 34px rgba(15,52,58,.14); transition:scale .6s ease, box-shadow .4s ease; }
.page-id-2228 [data-id="5e452e38"] img:hover { scale:1.02; box-shadow:0 22px 44px rgba(15,52,58,.2); }

/* ---------- Music ---------- */
.hw4-ic { display:flex; align-items:center; justify-content:center; width:56px; height:56px; border-radius:16px; background:linear-gradient(150deg, var(--t), var(--d)); color:var(--gl); margin-bottom:4px; transition:rotate .4s ease, scale .4s ease; }
.hw4-ic svg { width:28px; height:28px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.hw4 .hm-mcard:hover .hw4-ic { rotate:-8deg; scale:1.08; }

/* ---------- Preschool ---------- */
.page-id-1796 [data-id="5af5d075"] > div { align-items:center; text-align:center; gap:4px; padding:28px 18px !important; }
.page-id-1796 [data-id="5af5d075"] > div > p:nth-of-type(1) { margin:0 !important; font-family:Montserrat, sans-serif; font-size:12px !important; font-weight:800; letter-spacing:2px; text-transform:uppercase; color:#8A6116 !important; }
.page-id-1796 [data-id="5af5d075"] > div > p:nth-of-type(2) { margin:0 !important; font-family:Montserrat, sans-serif; font-size:17px !important; font-weight:700; line-height:1.4 !important; color:var(--d) !important; }
.hw4-fic { display:flex; align-items:center; justify-content:center; width:52px; height:52px; margin-bottom:8px; border-radius:50%; background:var(--tint); color:var(--t); }
.hw4-fic svg { width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.page-id-1796 [data-id="57051481"] { object-fit:contain !important; background:#fff; padding:36px !important; }
.page-id-1796 [data-id="4425ae24"] h3 { margin:0 0 6px !important; padding-bottom:10px; border-bottom:2px solid #F2E3C2; font-family:Montserrat, sans-serif; font-size:20px !important; font-weight:800; color:var(--t) !important; }
.page-id-1796 [data-id="4425ae24"] p { display:flex !important; justify-content:space-between; align-items:baseline; gap:10px; margin:0 !important; padding:10px 14px !important; border-radius:12px; background:#F2F6F6; color:var(--d) !important; font-size:15px !important; }
.page-id-1796 [data-id="4425ae24"] p b { font-family:Montserrat, sans-serif; font-size:18px; font-weight:800; color:var(--t); }
.page-id-1796 [data-id="43ee1ade"] { position:relative; padding-top:34px !important; margin-top:20px !important; }
.page-id-1796 [data-id="43ee1ade"] > .hw4-card { padding-top:34px !important; }
.page-id-1796 [data-id="43ee1ade"] > .hw4-card > p:first-child { width:fit-content; margin:0 !important; padding:5px 12px; border-radius:999px; background:#FFF3DA; color:#8A6116 !important; font-family:Montserrat, sans-serif; font-size:13px !important; font-weight:800; }
.page-id-1796 [data-id="43ee1ade"] h3 { margin:0 !important; }
.page-id-1796 [data-id="43ee1ade"] > .hw4-card::before { content:''; position:absolute; top:-28px; left:28px; width:22px; height:22px; border-radius:50%; background:#fff; border:4px solid var(--t); box-shadow:0 0 0 6px var(--tint); transition:border-color .4s ease; }
.page-id-1796 [data-id="43ee1ade"].is-in > .hw4-card::before { border-color:var(--g); }
.page-id-1796 [data-id="43ee1ade"].is-in > .hw4-card:nth-of-type(2)::before { transition-delay:.35s; }
.page-id-1796 [data-id="43ee1ade"].is-in > .hw4-card:nth-of-type(3)::before { transition-delay:.7s; }
.page-id-1796 [data-id="43ee1ade"].is-in > .hw4-card:nth-of-type(4)::before { transition-delay:1.05s; }
.hw4-track { position:absolute; left:39px; right:12%; top:18px; height:4px; border-radius:4px; background:rgba(36,92,99,.15); overflow:hidden; }
.hw4-track i { position:absolute; inset:0; background:linear-gradient(90deg, var(--t), var(--g)); scale:0 1; transform-origin:left; transition:scale 1.6s cubic-bezier(.4,0,.2,1); }
.is-in > .hw4-track i { scale:1 1; }
.page-id-1796 [data-id="7c7a4fb0"] { max-width:820px; margin:34px auto 24px !important; padding:16px 20px !important; border-radius:14px; border-left:4px solid var(--g); background:#FFF8EA; text-align:left !important; font-size:15px !important; }
.page-id-1796 [data-id="59c39d64"] { justify-content:center !important; }
.page-id-1796 [data-id="707bdc8"] h3 { margin:0 !important; }

/* ---------- Get Engaged ---------- */
.hw4 [data-id="647ab001"] { max-width:900px; }

/* ---------- Responsive ---------- */
@media (max-width:1024px) {
  .hw4-c3, .hw4-c4 { grid-template-columns:repeat(2, minmax(0, 1fr)) !important; }
  .hw4-track { display:none; }
  .page-id-1796 [data-id="43ee1ade"] > .hw4-card::before { display:none; }
  .page-id-1796 [data-id="43ee1ade"] { padding-top:0 !important; }
}
@media (max-width:767px) {
  .hw4 .hm-hero, .hw4 .hm-hero.hm-hero-tall { min-height:auto; padding:80px 18px 92px !important; }
  .hw4 .hm-section { padding:64px 16px !important; }
  .hw4 .hm-cta { padding:72px 18px !important; }
  .hw4-c2, .hw4-c3, .hw4-c4, .page-id-2228 [data-id="5e452e38"] { grid-template-columns:minmax(0, 1fr) !important; max-width:520px; }
  .page-id-1796 [data-id="5af5d075"] { grid-template-columns:repeat(2, minmax(0, 1fr)) !important; gap:14px !important; }
  .page-id-1796 [data-id="5af5d075"] > div { padding:22px 12px !important; }
  .page-id-1796 [data-id="5af5d075"] > div > p:nth-of-type(2) { font-size:15px !important; }
  .hw4-card { padding:24px 20px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .hw4 .hm-hero > *, .hw4-icon svg { animation:none !important; opacity:1 !important; translate:none !important; }
  .hw4-track i { transition:none; }
}
