@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#152e30;--muted:#6b7f7d;--paper:#f4f5ef;--green:#c9f36b;--teal:#143b3b;--line:#e4e9df;--coral:#ff876b}*{box-sizing:border-box}body.groove-registration{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;min-height:100vh}.reg-shell{max-width:1100px;padding:0 34px;margin:auto}.reg-header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dfe5db}.reg-brand{display:flex;align-items:center;gap:18px;text-decoration:none;color:var(--ink);font-size:10px;font-weight:700;letter-spacing:.16em}.reg-brand img{width:182px;max-height:55px;object-fit:contain}.reg-brand i{color:#91b633;font-style:normal}.profile-link{font-size:13px;color:var(--ink);text-decoration:none;border:1px solid #d5ddd0;border-radius:99px;padding:11px 17px}.profile-link b{margin-left:12px}.reg-intro{padding:67px 0 58px;position:relative;overflow:hidden}.eyebrow{color:#788c76;font-size:10px;font-weight:700;letter-spacing:.17em}.reg-intro h1,.success-content h2{font:800 clamp(45px,7vw,76px)/.99 Manrope,sans-serif;letter-spacing:-.065em;margin:18px 0}.reg-intro h1 em,.success-content h2 em{font-style:normal;color:#718f38}.reg-intro p{max-width:440px;color:var(--muted);font-size:16px;line-height:1.7;margin:20px 0 0}.intro-orbit{position:absolute;border:1px solid #cad7b9;border-radius:50%;right:6%;top:25px;width:280px;height:280px;opacity:.65}.orbit-two{right:9%;top:58px;width:215px;height:215px;border-color:#c5d77b}.intro-spark{position:absolute;right:18%;top:70px;color:#9dbd48;font-size:45px}.reg-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:35px 38px 39px;box-shadow:0 18px 60px #193c3010}.panel-heading,.form-top{display:flex;align-items:center;gap:17px}.step-number{width:44px;height:44px;background:#edf3e4;color:#668331;display:grid;place-items:center;border-radius:14px;font:700 15px Manrope}.panel-heading h2,.form-top h2{font:700 22px Manrope;letter-spacing:-.04em;margin:6px 0 0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.choice-card{position:relative;text-align:left;min-height:150px;padding:23px 25px;background:#fbfcf8;border:1px solid var(--line);border-radius:17px;color:var(--ink);cursor:pointer;transition:.2s}.choice-card:hover,.choice-card.selected{border-color:#a8c95f;background:#f7faed;transform:translateY(-2px);box-shadow:0 9px 24px #60793b12}.choice-icon{display:block;color:#74943d;font-size:22px;margin-bottom:10px}.choice-title{display:block;font:800 16px Manrope;letter-spacing:.02em}.choice-desc{display:block;color:var(--muted);font-size:13px;margin-top:7px;max-width:310px;line-height:1.5}.choice-arrow{position:absolute;right:22px;top:22px;color:#789546;font-size:20px}.form-area{border-top:1px solid var(--line);margin-top:31px;padding-top:29px}.form-top{justify-content:space-between;margin-bottom:25px}.change-kind{border:0;background:transparent;color:#688336;font-weight:700;font-size:12px;cursor:pointer;padding:10px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px 18px}.field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:700;color:#455e58}.field small{font-weight:400;color:#8b9992}.field input,.field select{width:100%;height:48px;border:1px solid #dfe5dc;background:#fff;border-radius:10px;padding:0 13px;font:400 14px 'DM Sans',sans-serif;color:var(--ink);outline:none}.field input:focus,.field select:focus{border-color:#9fbe61;box-shadow:0 0 0 3px #c9f36b35}.guardian-fields{margin-top:24px;padding:20px;background:#f7f9f2;border-radius:14px}.guardian-title{display:flex;gap:12px;align-items:center;margin-bottom:17px}.guardian-icon{width:38px;height:38px;border-radius:12px;background:#e8f0d8;color:#668331;display:grid;place-items:center;font-size:21px}.guardian-title strong,.guardian-title small{display:block}.guardian-title strong{font-size:13px}.guardian-title small{font-size:11px;color:var(--muted);margin-top:4px}.consents{display:grid;gap:13px;margin:26px 0 20px}.consent-row{display:grid;grid-template-columns:20px 1fr;gap:12px;position:relative;cursor:pointer;color:#344a45;font-size:12px;line-height:1.55}.consent-row input{position:absolute;opacity:0;width:1px;height:1px}.checkmark{width:20px;height:20px;border:1px solid #b8c5b7;border-radius:6px;background:#fff;margin-top:1px;display:grid;place-items:center}.consent-row input:checked+.checkmark{background:var(--teal);border-color:var(--teal)}.consent-row input:checked+.checkmark:after{content:'✓';color:white;font-size:13px;font-weight:700}.consent-row input:focus-visible+.checkmark{outline:3px solid #c9f36b}.consent-row strong{font-weight:700}.consent-row details{margin-top:5px;color:#647670}.consent-row summary{color:#69843d;font-weight:700;font-size:11px;cursor:pointer}.consent-row details p{margin:7px 0 2px;max-width:850px}.submit-registration{width:100%;min-height:54px;border:0;border-radius:11px;background:var(--teal);color:#fff;padding:0 18px 0 22px;display:flex;align-items:center;justify-content:space-between;text-decoration:none;font:700 14px 'DM Sans',sans-serif;cursor:pointer;transition:.2s}.submit-registration:hover{background:#215452}.submit-registration b{display:grid;place-items:center;border-radius:50%;width:31px;height:31px;background:var(--green);color:var(--ink);font-size:17px}.submit-registration:disabled{opacity:.65;cursor:wait}.privacy-note{font-size:10px;text-align:center;color:#85938b;margin:12px 0 0}.form-feedback{padding:12px 14px;background:#fff0ed;color:#a83a2b;border-radius:9px;font-size:13px;margin-bottom:13px}.reg-footer{display:flex;justify-content:space-between;padding:25px 2px 33px;color:#819087;font-size:10px;letter-spacing:.1em}.reg-footer b{color:#85a944;margin-left:8px}.hp-field{position:absolute;left:-10000px}.success-dialog{width:min(480px,calc(100% - 28px));border:0;border-radius:23px;padding:0;box-shadow:0 28px 100px #0d282878}.success-dialog::backdrop{background:#102b2bd1;backdrop-filter:blur(5px)}.success-content{padding:34px;text-align:center}.success-content>img{width:175px;max-height:55px;object-fit:contain;margin-bottom:25px}.success-content h2{font-size:39px;margin:12px 0}.success-content>p{font-size:14px;line-height:1.6;color:var(--muted)}.student-code{background:#f4f7ed;border:1px dashed #aec775;border-radius:13px;padding:16px;margin:21px 0}.student-code small,.student-code strong{display:block}.student-code small{font-size:9px;letter-spacing:.16em;color:#70844f;font-weight:700}.student-code strong{font:800 38px Manrope;letter-spacing:.04em;margin-top:5px}.mail-status{min-height:20px!important;font-size:12px!important}.success-actions{display:grid;gap:8px}.success-actions .submit-registration{justify-content:center;gap:18px}.success-actions .change-kind{font-size:13px}@media(max-width:700px){.reg-shell{padding:0 17px}.reg-header{height:70px}.reg-brand{gap:9px;font-size:8px}.reg-brand img{width:135px}.profile-link{padding:9px 12px;font-size:11px}.reg-intro{padding:48px 0 40px}.reg-intro h1{font-size:52px}.reg-intro p{font-size:14px;max-width:330px}.intro-orbit{right:-110px;top:12px;width:230px;height:230px;opacity:.35}.orbit-two{right:-80px;top:42px;width:170px;height:170px}.intro-spark{right:20px;top:33px;font-size:31px}.reg-panel{padding:23px 18px 25px;border-radius:17px}.panel-heading h2,.form-top h2{font-size:18px}.choice-grid{gap:10px;margin-top:20px}.choice-card{min-height:164px;padding:18px 14px}.choice-title{font-size:13px}.choice-desc{font-size:11px}.choice-arrow{right:13px;top:12px}.form-area{margin-top:23px;padding-top:22px}.form-grid{grid-template-columns:1fr;gap:13px}.field input,.field select{height:46px}.form-top{align-items:flex-start}.form-top .change-kind{padding:5px 0;font-size:11px;white-space:nowrap}.guardian-fields{padding:15px}.consents{gap:15px}.consent-row{font-size:11px;gap:9px}.reg-footer{font-size:8px;gap:12px;line-height:1.6}.success-content{padding:28px 20px}}@media(max-width:360px){.reg-brand img{width:105px}.reg-brand{letter-spacing:.1em}.reg-intro h1{font-size:46px}.choice-card{padding:16px 11px}}


/* The Groove neon registration refresh */
:root{--reg-bg:#f4f6fb;--reg-panel:#fff;--reg-card:#f9fbff;--reg-ink:#20283c;--reg-muted:#657087;--reg-line:#d9e0ef;--reg-blue:#315fbd;--reg-cyan:#09aebd;--reg-violet:#8654d7}
html[data-theme="dark"]{--reg-bg:#0e1221;--reg-panel:#171c30;--reg-card:#1c233b;--reg-ink:#f3f5ff;--reg-muted:#b3bdd5;--reg-line:#353e5e;--reg-blue:#8db8ff;--reg-cyan:#48e2ea;--reg-violet:#c093ff}
body.groove-registration{position:relative;isolation:isolate;overflow-x:hidden;background:radial-gradient(ellipse at 84% 13%,rgba(28,169,199,.12),transparent 28%),radial-gradient(ellipse at 8% 48%,rgba(119,75,202,.10),transparent 30%),var(--reg-bg);color:var(--reg-ink);transition:background-color .25s,color .25s}
body.groove-registration:before,body.groove-registration:after{position:fixed;z-index:-1;content:"";width:380px;height:380px;border:1px solid rgba(41,181,216,.16);border-radius:50%;pointer-events:none;animation:reg-orbit 18s linear infinite}
body.groove-registration:before{top:12%;right:-235px;box-shadow:0 0 0 26px rgba(41,181,216,.025),0 0 50px rgba(35,190,222,.07)}body.groove-registration:after{bottom:-260px;left:-230px;width:460px;height:460px;border-color:rgba(146,93,228,.15);animation-direction:reverse}
.reg-shell{max-width:1160px}.reg-header{border-color:var(--reg-line)}.reg-brand,.profile-link{color:var(--reg-ink)}.profile-link{border-color:var(--reg-line);transition:all .2s}.profile-link:hover{border-color:var(--reg-cyan);box-shadow:0 0 18px rgba(31,195,216,.18)}
.reg-intro{padding-top:60px}.reg-intro .eyebrow,.panel-heading .eyebrow,.form-top .eyebrow{color:var(--reg-cyan)}.reg-intro h1{color:var(--reg-ink)}.reg-intro h1 em,.success-content h2 em{color:var(--reg-blue);text-shadow:0 0 22px rgba(63,178,233,.25)}.reg-intro p{color:var(--reg-muted)}.intro-orbit{border-color:rgba(19,185,212,.35);box-shadow:0 0 28px rgba(24,181,211,.08),inset 0 0 25px rgba(24,181,211,.05);animation:reg-orbit 24s linear infinite}.orbit-two{border-color:rgba(142,81,222,.32);animation-duration:17s;animation-direction:reverse}.intro-spark{color:var(--reg-cyan);text-shadow:0 0 18px currentColor;animation:reg-spark 3s ease-in-out infinite}
.reg-panel{background:var(--reg-panel);border-color:var(--reg-line);box-shadow:0 22px 70px rgba(24,38,76,.12),0 0 40px rgba(36,166,207,.035);color:var(--reg-ink)}.step-number{background:rgba(38,169,204,.12);color:var(--reg-cyan);box-shadow:inset 0 0 0 1px rgba(38,169,204,.18)}.panel-heading h2,.form-top h2{color:var(--reg-ink)}
.choice-card{overflow:hidden;min-height:158px;background:var(--reg-card);border:1px solid var(--reg-line);color:var(--reg-ink);box-shadow:inset 0 1px rgba(255,255,255,.28);transition:transform .22s,border-color .22s,box-shadow .22s,background .22s}.choice-card:before{position:absolute;content:"";left:0;top:14px;bottom:14px;width:3px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,var(--reg-cyan),var(--reg-violet));opacity:0;transition:opacity .2s}.choice-card:hover{transform:translateY(-3px);border-color:var(--reg-cyan);box-shadow:0 10px 30px rgba(26,160,197,.13)}.choice-card.selected{transform:translateY(-3px);border-color:var(--reg-cyan);background:linear-gradient(135deg,rgba(21,180,205,.13),rgba(129,85,216,.10)),var(--reg-card);box-shadow:0 0 0 1px rgba(58,213,232,.18),0 0 30px rgba(30,192,217,.21),inset 0 0 25px rgba(32,172,207,.055)}.choice-card.selected:before{opacity:1}.choice-icon{color:var(--reg-cyan);text-shadow:0 0 14px rgba(33,207,224,.36)}.choice-title{color:var(--reg-ink)}.choice-desc{color:var(--reg-muted)}.choice-arrow{color:var(--reg-violet)}.choice-selected{position:absolute;right:18px;bottom:16px;display:none;padding:6px 9px;border:1px solid rgba(63,214,227,.38);border-radius:99px;background:rgba(26,184,206,.12);color:var(--reg-cyan);font-size:9px;font-weight:800;letter-spacing:.1em}.choice-card.selected .choice-selected{display:block;animation:reg-pop .26s ease-out}.choice-card.selected .choice-arrow{display:none}
.form-area{border-color:var(--reg-line)}.change-kind{color:var(--reg-cyan)}.field{color:var(--reg-ink)}.field small,.field-hint{color:var(--reg-muted)}.field input,.field select{background:var(--reg-card);border-color:var(--reg-line);color:var(--reg-ink)}.field input::placeholder{color:var(--reg-muted);opacity:.7}.field input:focus,.field select:focus{border-color:var(--reg-cyan);box-shadow:0 0 0 3px rgba(35,196,219,.17),0 0 17px rgba(31,188,213,.1)}.field-hint{font-size:10px;font-weight:400;line-height:1.4}.guardian-fields{background:rgba(22,174,201,.07);border:1px solid var(--reg-line)}.guardian-title strong{color:var(--reg-ink)}.guardian-icon{background:rgba(22,174,201,.15);color:var(--reg-cyan)}.consent-row{color:var(--reg-ink)}.checkmark{background:var(--reg-card);border-color:var(--reg-line)}.consent-row input:checked+.checkmark{background:var(--reg-cyan);border-color:var(--reg-cyan);box-shadow:0 0 14px rgba(40,207,223,.32)}.consent-row summary{color:var(--reg-blue)}.submit-registration{background:linear-gradient(100deg,#315fbd,#257fae 55%,#168b9d);box-shadow:0 9px 26px rgba(41,114,197,.2);transition:transform .2s,box-shadow .2s,filter .2s}.submit-registration:hover{transform:translateY(-2px);filter:saturate(1.2);box-shadow:0 0 25px rgba(51,189,220,.3)}.submit-registration b{background:#59e2e8;color:#102034;box-shadow:0 0 14px rgba(60,221,231,.42)}.privacy-note{color:var(--reg-muted)}
.success-dialog{background:var(--reg-panel);color:var(--reg-ink);border:1px solid var(--reg-line);box-shadow:0 0 0 1px rgba(50,194,221,.12),0 28px 100px rgba(5,11,30,.5)}.success-dialog::backdrop{background:rgba(8,13,28,.76)}.success-content>p{color:var(--reg-muted)}.student-code{background:rgba(27,181,204,.09);border-color:var(--reg-cyan)}.student-code small{color:var(--reg-cyan)}.student-code strong{color:var(--reg-ink)}.success-content .eyebrow{color:var(--reg-cyan)}.success-actions .change-kind{color:var(--reg-muted)}
@keyframes reg-orbit{to{transform:rotate(360deg)}}@keyframes reg-spark{0%,100%{opacity:.72;transform:scale(.94) rotate(-5deg)}50%{opacity:1;transform:scale(1.12) rotate(8deg)}}@keyframes reg-pop{from{opacity:0;transform:translateY(4px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:700px){.reg-intro{padding-top:43px}.choice-card{min-height:168px}.choice-card.selected{transform:translateY(-2px)}.choice-selected{right:10px;bottom:11px;font-size:8px}.reg-panel{box-shadow:0 14px 38px rgba(24,38,76,.12)}}@media(prefers-reduced-motion:reduce){body.groove-registration:before,body.groove-registration:after,.intro-orbit,.intro-spark,.choice-selected{animation:none!important}.choice-card,.submit-registration{transition:none!important}}
body.groove-registration{background:radial-gradient(ellipse at 84% 13%,rgba(28,169,199,.12),transparent 28%),radial-gradient(ellipse at 8% 48%,rgba(119,75,202,.10),transparent 30%),var(--reg-bg)!important}
html[data-theme="dark"] body.groove-registration{background:radial-gradient(ellipse at 84% 13%,rgba(28,169,199,.15),transparent 29%),radial-gradient(ellipse at 8% 48%,rgba(119,75,202,.13),transparent 31%),var(--reg-bg)!important}
.groove-registration .reg-panel,.groove-registration .success-content{background:var(--reg-panel)!important;border-color:var(--reg-line)!important;color:var(--reg-ink)}
.groove-registration .choice-card{background:var(--reg-card)!important;border-color:var(--reg-line)!important;color:var(--reg-ink)!important}
.groove-registration .choice-card:hover,.groove-registration .choice-card.selected{background:linear-gradient(135deg,rgba(21,180,205,.13),rgba(129,85,216,.10)),var(--reg-card)!important;border-color:var(--reg-cyan)!important;box-shadow:0 0 0 1px rgba(58,213,232,.18),0 0 30px rgba(30,192,217,.21),inset 0 0 25px rgba(32,172,207,.055)!important}
.groove-registration .reg-intro h1 em,.groove-registration .success-content h2 em{color:var(--reg-blue)!important}.groove-registration .choice-icon,.groove-registration .choice-arrow,.groove-registration .change-kind,.groove-registration .consent-row summary{color:var(--reg-cyan)!important}
.groove-registration .submit-registration,.groove-registration .consent-row input:checked+.checkmark{background:linear-gradient(100deg,#315fbd,#257fae 55%,#168b9d)!important;box-shadow:0 9px 26px rgba(41,114,197,.2)}.groove-registration .submit-registration b{background:#59e2e8!important;color:#102034!important}
html[data-theme="dark"] .groove-registration .reg-panel,html[data-theme="dark"] .groove-registration .success-content{background:var(--reg-panel)!important;border-color:var(--reg-line)!important}
html[data-theme="dark"] .groove-registration .choice-card,html[data-theme="dark"] .groove-registration .guardian-fields,html[data-theme="dark"] .groove-registration .field input,html[data-theme="dark"] .groove-registration .field select{background:var(--reg-card)!important;border-color:var(--reg-line)!important;color:var(--reg-ink)!important}
html[data-theme="dark"] .groove-registration .choice-card:hover,html[data-theme="dark"] .groove-registration .choice-card.selected{background:linear-gradient(135deg,rgba(21,180,205,.16),rgba(129,85,216,.14)),var(--reg-card)!important;border-color:var(--reg-cyan)!important}
html[data-theme="dark"] .groove-registration .reg-brand,html[data-theme="dark"] .groove-registration .profile-link,html[data-theme="dark"] .groove-registration .panel-heading h2,html[data-theme="dark"] .groove-registration .form-top h2,html[data-theme="dark"] .groove-registration .field,html[data-theme="dark"] .groove-registration .consent-row{color:var(--reg-ink)!important}
