:root{--ink:#140625;--deep:#4C247A;--mid:#9461A3;--lav:#CAB7DA;--pale:#F9F1FF;--cyan:#1fb6e8}
*{box-sizing:border-box}body{margin:0;font-family:Inter,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
h1,h2,h3{font-family:Anton,sans-serif;text-transform:uppercase;letter-spacing:.5px;line-height:1.1;font-weight:400}a{color:var(--deep)}img{max-width:100%;height:auto;border-radius:10px}
.wrap{max-width:1150px;margin:auto;padding:0 20px}.top{position:sticky;top:0;z-index:9;display:flex;align-items:center;gap:20px;padding:8px 20px;background:var(--ink)}
.top nav{display:flex;gap:18px;flex:1;flex-wrap:wrap}.top nav a{color:#fff;text-decoration:none;font-weight:500}
.btn{display:inline-block;background:linear-gradient(90deg,var(--deep),var(--mid));color:#fff;padding:14px 28px;border-radius:40px;font-weight:700;text-transform:uppercase;text-decoration:none;border:0;cursor:pointer;font-size:1rem}.btn.sm{padding:9px 18px;font-size:.85rem}
.hero{background-size:cover;background-position:center;color:#fff;padding:100px 0 90px;text-align:center}.hero h1{font-size:clamp(2.2rem,6vw,4.2rem);margin:.2em 0}.eyebrow{color:var(--lav);text-transform:uppercase;letter-spacing:3px;font-weight:700}.lead{max-width:700px;margin:0 auto 26px;font-size:1.15rem}
.callq{display:block;margin-top:16px}.callq a{color:#fff}
section{padding:70px 0}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.feats:nth-of-type(even),.reviews{background:var(--pale)}.ticks li{margin:10px 0}.process{background:var(--ink);color:#fff}.process h2{text-align:center}
.step{background:rgba(255,255,255,.06);padding:24px;border-radius:14px}.step span{display:inline-block;background:var(--mid);width:40px;height:40px;border-radius:50%;text-align:center;line-height:40px;font-weight:700}
.schools h2,.locs h2,.reviews h2{text-align:center}
blockquote{background:#fff;margin:0;padding:22px;border-radius:14px;border-left:5px solid var(--mid)}cite{display:block;margin-top:10px;font-weight:700}
.loccard{background:var(--pale);padding:26px;border-radius:14px}.nap{margin:12px 0}.center{text-align:center}
.cta-band{background:linear-gradient(90deg,var(--deep),var(--mid));color:#fff;text-align:center}.cta-band .btn{background:#fff;color:var(--deep)}
footer{background:var(--ink);color:#ddd;padding:50px 0 80px}footer a{color:var(--lav)}.fgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.copy{text-align:center;opacity:.6}
details{background:var(--pale);margin:10px 0;padding:16px;border-radius:10px}summary{font-weight:700;cursor:pointer}
.leadform{max-width:520px;margin:auto;display:grid;gap:14px}.leadform label{display:grid;font-weight:500}.leadform input,.leadform select{padding:12px;border:1px solid var(--mid);border-radius:8px;font:inherit}
.sticky{display:none}@media(max-width:800px){.grid2,.grid3,.fgrid{grid-template-columns:1fr}.top nav{display:none}.sticky{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--deep);color:#fff;text-align:center;padding:16px;font-weight:700;text-decoration:none;text-transform:uppercase;z-index:10}}.navtoggle{display:none;background:none;border:1px solid var(--lav);color:#fff;font-size:1.4rem;min-width:44px;min-height:44px;border-radius:8px;cursor:pointer}.note{font-size:.9rem;text-align:center}
@media(max-width:800px){.top{flex-wrap:wrap}.navtoggle{display:block;margin-left:auto}.top .btn.sm{padding:12px 18px}.top nav.open{display:flex;flex-direction:column;width:100%;order:3;gap:0}.top nav.open a{padding:12px 4px;min-height:44px}}.hours{border-collapse:collapse;margin:16px 0 30px;min-width:280px}.hours caption{text-align:left;font-weight:700;padding-bottom:6px}.hours th,.hours td{padding:6px 14px 6px 0;text-align:left;border-bottom:1px solid var(--lav)}html,body{overflow-x:clip}.marquee{width:100%;overflow:hidden;padding:10px 0}.track{display:flex;width:max-content;animation:mq 40s linear infinite}.track img{height:60px;width:auto;margin-right:48px;border-radius:0;flex:none}.marquee:hover .track{animation-play-state:paused}@keyframes mq{to{transform:translateX(-50%)}}
@media(max-width:800px){.track img{height:44px;margin-right:32px}}
@media(prefers-reduced-motion:reduce){.track{animation:none}.marquee{overflow-x:auto}}.survey{max-width:760px;margin:auto}.progress{height:8px;background:var(--pale);border-radius:8px;overflow:hidden}.bar{height:100%;background:linear-gradient(90deg,var(--deep),var(--mid));transition:width .3s}.stepnum{font-weight:700;color:var(--deep);margin:8px 0 0}
.choices{display:grid;grid-template-columns:1fr 1fr;gap:16px}.choice{text-align:left;background:#fff;border:2px solid var(--mid);border-radius:14px;padding:20px;font:700 1.15rem Inter,sans-serif;color:var(--ink);cursor:pointer;min-height:44px}.choice small{display:block;font-weight:400;font-size:.9rem;margin-top:6px;color:#444}.choice.on,.choice:hover{background:var(--pale);border-color:var(--deep)}
.navrow{display:flex;justify-content:space-between;gap:12px;margin-top:20px}.btn.ghost{background:#fff;color:var(--deep);border:2px solid var(--deep)}.err{color:#b00020;font-weight:500}#calwrap{margin-top:10px}
@media(max-width:800px){.choices{grid-template-columns:1fr}}.leadform textarea{padding:12px;border:1px solid var(--mid);border-radius:8px;font:inherit}.svcdesc{background:var(--pale);padding:14px;border-radius:10px}
