:root{--cream:#fbf7f6;--lav:#f3edf7;--purple:#8a6fc0;--purple-deep:#574283;--purple-soft:#eee8f6;--plum:#6e5aa0;--lilac:#a98ad0;--red:#dd5f79;--red-deep:#be4a65;--red-soft:#fbe5ea;--rose:#c2547f;--ink:#2c2738;--ink2:#3d374c;--muted:#6c6680;--muted2:#988fa8}*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;font-family:Nunito,system-ui,sans-serif;overflow-x:hidden}::selection{background:var(--red);color:#fff}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-family:Poppins,sans-serif}a{color:inherit}img{max-width:100%}.wrap{max-width:1200px;margin:0 auto;padding-left:24px;padding-right:24px}.kicker{letter-spacing:.16em;text-transform:uppercase;font-family:Poppins;font-size:13px;font-weight:600}.hsec{text-align:center;margin-bottom:46px}.lead{color:var(--muted);font-size:18px;font-weight:600;line-height:1.75}.ph{text-align:center;color:#9a8fb5;background:repeating-linear-gradient(45deg,#f2ecf7,#f2ecf7 11px,#ece5f3 11px 22px);border:1.5px dashed #d7c9ea;border-radius:16px;justify-content:center;align-items:center;padding:12px;font-family:Poppins;font-size:13px;font-weight:600;line-height:1.4;display:flex}.btn{cursor:pointer;color:#fff;border:none;border-radius:14px;justify-content:center;align-items:center;font-family:Poppins;font-weight:600;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-lg{padding:15px 30px;font-size:16px}.btn-md{padding:12px 24px;font-size:15px}.btn-purple{background:var(--purple);box-shadow:0 14px 28px -14px #8a6fc0cc}.btn-purple:hover{background:#7c61b4}.btn-red{background:var(--red);box-shadow:0 14px 28px -14px #dd5f79bf}.btn-red:hover{background:#d25470}.btn-white{color:var(--purple-deep);background:#fff;box-shadow:0 14px 28px -14px #0000004d}.btn-white:hover{background:#f6f1fb}.btn-ghost{color:var(--purple-deep);background:#fff;border:1.5px solid #e4daf0}.btn-ghost:hover{border-color:var(--purple)}.topbar{background:var(--purple-deep);color:#ece5f5;font-size:13.5px;font-weight:600}.topbar .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:9px 24px;display:flex}.topbar a{color:#ece5f5;align-items:center;gap:7px;text-decoration:none;transition:opacity .2s;display:flex}.topbar a:hover{opacity:.78}.topbar-contact{flex-wrap:wrap;align-items:center;gap:22px;display:flex}.topbar-social{align-items:center;gap:9px;display:flex}.soc{background:#ece5f524;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;text-decoration:none;transition:transform .2s,background .2s;display:flex}.soc:hover{background:#ece5f547;transform:translateY(-2px)}header.site{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fbf7f6e6;border-bottom:1px solid #ece3dc;position:sticky;top:0}header.site .wrap{justify-content:space-between;align-items:center;gap:20px;padding-top:12px;padding-bottom:12px;display:flex}.brand{cursor:pointer;background:0 0;border:none;align-items:center;gap:11px;padding:0;text-decoration:none;display:flex}.mark{background:linear-gradient(140deg, var(--purple), var(--red));color:#fff;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-family:Poppins;font-size:16px;font-weight:700;display:flex}.bname{color:var(--purple-deep);font-family:Poppins;font-size:21px;font-weight:700;line-height:1}.btag{letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-top:4px;font-family:Poppins;font-size:10px;font-weight:600}nav.main{align-items:center;gap:2px;display:flex}.navbtn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:9px 14px;font-family:Poppins;font-size:14.5px;font-weight:500;text-decoration:none;transition:background .2s,color .2s}.navbtn:hover{color:var(--purple-deep);background:var(--lav)}.navbtn.active{background:var(--purple-soft);color:var(--purple-deep);font-weight:600}.hero{background:linear-gradient(180deg, var(--lav) 0%, var(--cream) 100%);position:relative;overflow:hidden}.hero .wrap{grid-template-columns:1.02fr .98fr;align-items:center;gap:54px;padding-top:74px;padding-bottom:92px;display:grid}.hero h1{color:var(--ink);text-wrap:balance;font-size:60px;font-weight:700;line-height:1.04}.pill{color:var(--purple);background:#fff;border:1px solid #e8def2;border-radius:999px;align-items:center;gap:9px;padding:7px 16px;font-size:13px;font-weight:700;display:inline-flex}.heroframe{width:100%;height:450px;position:relative}.heroframe .accent{background:linear-gradient(140deg, var(--purple-soft), var(--red-soft));border-radius:26px;position:absolute;inset:24px 0 0 24px}.heroframe .ph{font-size:14px;position:absolute;inset:0 24px 24px 0;box-shadow:0 30px 70px -34px #57428399}.grid3{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.iconwrap{border-radius:16px;justify-content:center;align-items:center;width:62px;height:62px;display:flex}.bcard{background:#fff;border:1px solid #eee6dd;border-radius:20px;padding:30px;box-shadow:0 16px 38px -30px #57428380}.bt{color:var(--ink);margin:18px 0 8px;font-size:20px;font-weight:600}.bp{color:var(--muted);margin:0;font-size:15px;font-weight:600;line-height:1.6}.tmcard{text-align:center;background:#fff;border:1px solid #eee6dd;border-radius:20px;padding:26px;box-shadow:0 16px 38px -30px #57428380}.avatar{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:84px;height:84px;margin:0 auto;font-family:Poppins;font-size:30px;font-weight:600;display:flex}.tmname{color:var(--purple-deep);margin:16px 0 2px;font-size:20px;font-weight:600}.tmrole{letter-spacing:.04em;text-transform:uppercase;color:var(--red);margin:0 0 12px;font-family:Poppins;font-size:12px;font-weight:600}.tmbio{color:var(--muted);margin:0;font-size:14.5px;font-weight:600;line-height:1.6}.scroller{scroll-snap-type:x mandatory;gap:20px;padding:6px 4px 20px;display:flex;overflow-x:auto}.scroller::-webkit-scrollbar{height:8px}.scroller::-webkit-scrollbar-thumb{background:#ded1ec;border-radius:8px}.tcard{scroll-snap-align:start;background:#fff;border:1px solid #eee6dd;border-radius:20px;flex-direction:column;min-width:360px;max-width:360px;padding:28px;display:flex;box-shadow:0 18px 40px -30px #57428380}.tav{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-family:Poppins;font-size:17px;font-weight:600;display:flex}.qt{color:#3d374c;margin:14px 0 18px;font-size:15.5px;font-weight:600;line-height:1.65}.cta{background:linear-gradient(135deg, var(--purple) 0%, var(--purple-deep) 60%, var(--rose) 130%);position:relative;overflow:hidden}.cta .wrap{text-align:center;max-width:760px;padding-top:84px;padding-bottom:84px}.phead{background:linear-gradient(180deg, var(--lav), var(--cream));position:relative;overflow:hidden}.phead .wrap{text-align:center;padding-top:62px;padding-bottom:52px}.phead h1{color:var(--ink);margin-top:14px;font-size:48px;font-weight:700}.acard{border-radius:20px;padding:30px}.abadge{color:#fff;border-radius:999px;padding:6px 14px;font-family:Poppins;font-size:13px;font-weight:600;display:inline-block}.rcard{background:#fff;border:1px solid #eee6dd;border-radius:20px;padding:28px;box-shadow:0 16px 38px -30px #57428380}.rtag{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:5px 12px;font-family:Poppins;font-size:11px;font-weight:600;display:inline-block}.trow{background:#fff;border:1px solid #eee6dd;border-radius:22px;flex-wrap:wrap;align-items:flex-start;gap:30px;padding:26px;display:flex;box-shadow:0 18px 44px -32px #57428380}.trow .ph{flex-shrink:0;width:160px;height:190px}.masonry{columns:3;column-gap:18px}.masonry .ph{break-inside:avoid;width:100%;margin-bottom:18px}.masonry img{break-inside:avoid;border-radius:16px;width:100%;margin-bottom:18px;display:block}.wa{text-align:center;background:linear-gradient(140deg,#2bb673 0%,#127c66 100%);border-radius:24px;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex;box-shadow:0 26px 54px -30px #127c66cc}.wa h3{color:#fff;align-items:center;gap:10px;font-size:21px;font-weight:600;display:inline-flex}.infocard{background:#fff;border:1px solid #eee6dd;border-radius:20px;flex:1;padding:28px}.iconcircle{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.toggle{background:var(--lav);border-radius:12px;gap:3px;padding:4px;display:inline-flex}.tgl{cursor:pointer;color:var(--muted2);background:0 0;border:none;border-radius:9px;padding:9px 22px;font-family:Poppins;font-size:14px;font-weight:600;transition:all .2s}.tgl.active{background:var(--purple);color:#fff;box-shadow:0 6px 14px -8px #8a6fc0e6}footer.site{background:var(--ink);color:#c8c1d5}footer.site .wrap{padding-top:56px;padding-bottom:30px}.flink{text-align:left;cursor:pointer;color:#a29ab3;background:0 0;border:none;padding:0;font-family:Nunito;font-size:15px;font-weight:700;text-decoration:none;transition:color .2s}.flink:hover{color:#fff}.fsoc{background:#c8c1d51f;border-radius:11px;justify-content:center;align-items:center;width:40px;height:40px;text-decoration:none;transition:transform .2s;display:flex}.fsoc:hover{transform:translateY(-2px)}@media (max-width:880px){nav.main{display:none}.hero .wrap{grid-template-columns:1fr;gap:36px}.heroframe{height:330px}.hero h1{font-size:44px}.grid3{grid-template-columns:1fr}.masonry{columns:2}.schedGrid,.contactGrid,.ageGrid{grid-template-columns:1fr!important}.phead h1{font-size:38px}}@media (max-width:560px){.topbar .wrap{flex-wrap:nowrap;justify-content:center;align-items:center;gap:8px}.topbar-contact{flex-wrap:nowrap;align-items:center;gap:8px;width:auto;display:flex}.topbar-contact a{background:#ece5f51f;border-radius:8px;justify-content:center;gap:0;width:30px;height:30px;padding:0}.topbar-label{display:none}.topbar-social{border-top:none;justify-content:center;gap:8px;width:auto;padding-top:0}.topbar-social .soc{border-radius:8px;width:30px;height:30px}.masonry{columns:1}.hero h1{font-size:38px}.tcard{min-width:280px;max-width:280px}}@keyframes ydxBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes ydxFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}.ydx-fig{pointer-events:none;z-index:0;position:absolute}.ydx-float{width:100%;animation:ydxFloat var(--d,11s) ease-in-out infinite}.ydx-fig-in{animation:ydxBreathe var(--b,8s) ease-in-out infinite;transform-origin:50% 70%}.ydx-fig img{width:100%;display:block}.ydx-fig svg *{stroke-linecap:round;stroke-linejoin:round}
