/* CELERITY / NEON DESIGN SYSTEM — original cyan/navy identity, rebuilt layout. */
:root{--bg:#050d19;--panel:#0b1a2c;--line:#1d3a54;--text:#f4faff;--muted:#a8bed3;--blue:#34d8ff;--cyan:#38e5ef;--radius:16px;--neon:#32d7ff;--neon-ink:#061725}
body{background:radial-gradient(ellipse at 50% 0,#0d2d45 0,#050d19 58%);color:#f4faff}
header{height:76px;max-width:none;width:100%;padding-inline:clamp(22px,6vw,110px);background:#061221ee;border-bottom:1px solid #2750715e;backdrop-filter:blur(18px);position:relative;z-index:20}
.brand{font-weight:800;letter-spacing:-.8px;color:#fff}
header nav{align-items:center;gap:9px}
header nav a{padding:11px 16px;border:1px solid transparent;border-radius:10px;color:#bbcee0;font-weight:600}
header nav a.active,header nav a:hover{background:#0d2941;border-color:#204c6c;color:#fff}
header nav a.active:after{display:none}
#account-nav .button{min-height:42px;border-radius:10px}
#account-nav a[href="/reg"]{background:#34d8ff;border-color:#34d8ff;color:#052032;font-weight:800}
#account-nav a[href="/reg"]:hover{background:#89eaff}
body.home-page header{position:absolute;height:76px;background:#04111edb;border-bottom:1px solid #34658455;padding-inline:clamp(22px,6vw,110px)}
body.home-page header nav{gap:9px;font-size:13px}
body.home-page header .ghost{background:#0c2438;border-color:#34566e}
body.home-page #account-nav a[href="/reg"]{background:#34d8ff;border-color:#34d8ff;color:#061725}
body.home-page{background:#050d19}
.neon-hero{position:relative;isolation:isolate;min-height:min(850px,100svh);display:flex;align-items:center;overflow:hidden;border-bottom:1px solid #4a91b65c;background:#061522}
.neon-hero-backdrop{position:absolute;z-index:-1;inset:0;background:radial-gradient(ellipse 45% 60% at 80% 45%,#14628a55,transparent 80%),radial-gradient(ellipse 35% 40% at 63% 75%,#0d88ad20,transparent 80%),linear-gradient(115deg,#03101e 4%,#071b2b 60%,#061b2b 100%)}
.neon-hero:before{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,#03101e 0%,transparent 68%),repeating-linear-gradient(0deg,transparent 0 54px,#3c9bc00c 55px 56px),repeating-linear-gradient(90deg,transparent 0 54px,#3c9bc00c 55px 56px);mask-image:linear-gradient(90deg,transparent 30%,black 95%)}
.neon-hero-content{width:min(100% - 2*clamp(24px,7.5vw,120px),1440px);margin:0 auto;padding:165px 0 120px}
.neon-kicker{display:inline-flex;align-items:center;gap:10px;color:#54dfff!important;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 21px}
.neon-dot{width:8px;height:8px;border:2px solid #34d8ff;border-radius:50%;box-shadow:0 0 13px #32d8ff8a}
.neon-hero h1{font-size:clamp(58px,7vw,104px);line-height:1.02;letter-spacing:-.055em;font-weight:850;max-width:830px;margin:0 0 25px;text-wrap:balance;text-shadow:0 10px 38px #0009}
.neon-hero h1 span{display:block;color:#39d9ff;text-shadow:0 0 46px #28caff3a}
.neon-hero-lead{font-size:clamp(16px,1.55vw,20px);line-height:1.75;max-width:510px;color:#d3e5f3;margin:0 0 30px}
.neon-hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-bottom:62px}
.neon-cta,.neon-outline{display:inline-flex;align-items:center;justify-content:center;gap:19px;min-height:54px;padding:13px 24px;border-radius:10px;font-weight:800;font-size:14px;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
.neon-cta{background:linear-gradient(125deg,#26c9f7,#5ee9ff);color:#031b2a;border:1px solid #77eaff;box-shadow:0 0 0 1px #1bafda24,0 9px 30px #00b8ff35}
.neon-cta:hover{transform:translateY(-2px);box-shadow:0 12px 40px #00b8ff55}
.neon-outline{color:#e6f5ff;background:#0b2335d4;border:1px solid #42718b}
.neon-outline:hover{background:#16405a;transform:translateY(-2px)}
.neon-hero-features{display:flex;gap:clamp(17px,3vw,48px);flex-wrap:wrap}
.neon-hero-features>div{display:grid;grid-template-columns:28px 1fr;column-gap:10px;align-items:start;min-width:138px}
.neon-feature-icon{grid-row:span 2;color:#30d9ff;font-size:26px;line-height:1.1;text-shadow:0 0 20px #2dd5ff70}
.neon-hero-features strong{font-size:13px;color:#fff}
.neon-hero-features small{font-size:11px;color:#a9c4d9;line-height:1.5}
.neon-scroll{position:absolute;bottom:30px;right:clamp(24px,7.5vw,120px);color:#91bdd4;font-size:10px;font-weight:750;letter-spacing:.2em;display:flex;align-items:center;gap:12px}
.neon-scroll span{font-size:20px;color:#40dbff}
.neon-features{padding:clamp(70px,8vw,118px) clamp(24px,7.5vw,120px);background:radial-gradient(ellipse at 50% 0,#0c2b41,#06111e 70%);border-bottom:1px solid #24415c}
.neon-section-head{max-width:730px;margin:0 0 36px}
.neon-section-head h2{font-size:clamp(36px,4.7vw,65px);line-height:1.12;letter-spacing:-.045em;font-weight:800;margin-bottom:15px}
.neon-section-head h2 span{color:#42d8ff}
.neon-section-head>p:last-child{color:#adc4d8;font-size:16px;line-height:1.7}
.neon-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.neon-feature-card{min-width:0;padding:30px 25px 34px;border:1px solid #254864;border-radius:15px;background:linear-gradient(145deg,#0e253a,#0a1728);box-shadow:inset 0 1px #ffffff0b;transition:border-color .2s,transform .2s}
.neon-feature-card:hover{border-color:#40bce9;transform:translateY(-3px)}
.neon-card-symbol{display:inline-flex;color:#40d7ff;font-size:16px;font-weight:750;letter-spacing:.08em;margin-bottom:34px}
.neon-feature-card h3{font-size:20px;font-weight:750;letter-spacing:-.02em;margin-bottom:10px}
.neon-feature-card p{font-size:13px;line-height:1.7;color:#a9c2d8;margin:0}
.neon-bottom-cta{margin:55px clamp(24px,7.5vw,120px) 75px;padding:clamp(28px,4vw,52px);border:1px solid #32799a;border-radius:18px;background:linear-gradient(110deg,#102e43,#0b2034 65%,#103b50);display:flex;align-items:center;justify-content:space-between;gap:25px;box-shadow:0 20px 70px #0004}
.neon-bottom-cta h2{font-size:clamp(28px,3vw,42px);font-weight:800;letter-spacing:-.035em;margin:0 0 8px}
.neon-bottom-cta p:last-child{font-size:14px;color:#b8cee0;margin:0}
.neon-bottom-cta .neon-cta{flex-shrink:0}
.neon-buy,.neon-profile,.neon-admin{padding-top:15px!important}
.neon-buy .page-heading,.neon-profile .page-heading,.neon-admin .page-heading{padding-top:55px;padding-bottom:30px}
.neon-buy .page-heading h1,.neon-profile .page-heading h1,.neon-admin .page-heading h1{font-size:clamp(40px,5vw,66px);font-weight:800;letter-spacing:-.045em}
.neon-accent{color:#39d9ff}
.neon-buy .page-heading>p:last-child{font-size:15px;color:#b5c9dc}
.neon-buy .plans{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;align-items:stretch}
.neon-buy .plan{position:relative;overflow:visible;border-radius:17px;padding:29px 23px 25px;min-height:340px;background:linear-gradient(155deg,#102a41,#09182a 70%);border:1px solid #27516d;box-shadow:0 15px 40px #0003}
.neon-buy .plan.recommended{background:linear-gradient(155deg,#0d344c,#0a1c30 70%);border-color:#31d4ff;box-shadow:0 0 0 1px #2bcfff66,0 0 35px #00baff25,inset 0 3px #38dcff}
.neon-buy .plan .eyebrow{font-size:10px;letter-spacing:.07em;color:#80dfff;min-height:25px}
.neon-buy .plan h2{font-size:clamp(33px,3vw,45px);font-weight:800;letter-spacing:-.035em;margin:13px 0 4px}
.neon-buy .plan h2 small{font-size:15px;color:#bed2e3}
.neon-buy .plan-price{font-size:clamp(27px,2.9vw,39px);color:#fff;font-weight:850;letter-spacing:-.035em;margin:8px 0 19px}
.neon-plan-list{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:12px}
.neon-plan-list li{position:relative;padding-left:22px;color:#c3d8e8;font-size:12px;line-height:1.4}
.neon-plan-list li:before{content:'✓';position:absolute;left:0;color:#34dbff;font-weight:900}
.neon-buy .plan button{width:100%;min-height:48px;margin-top:auto;font-weight:800;gap:9px}
.neon-buy .plan button.primary{background:#34d8ff;border-color:#34d8ff;color:#061b29;box-shadow:0 0 20px #00bfff38}
.neon-buy .plan button.ghost{background:#142e46;border-color:#3c6c87}
.neon-buy .notice{background:#0b2031;border-color:#28506a}
.neon-profile .account-card,.neon-profile .subscription-card,.neon-profile .profile-grid .card{border-color:#254963;background:linear-gradient(150deg,#0e263a,#091827);box-shadow:0 16px 45px #0002}
.neon-profile .subscription-card{border-color:#3c9dc2;background:radial-gradient(ellipse at 100% 0,#137c9c3b,transparent 55%),linear-gradient(135deg,#0d2b40,#091728)}
.neon-profile .subscription-card .eyebrow{color:#48ddff}
.neon-profile .subscription-card h2{font-weight:800;letter-spacing:-.03em}
.neon-profile .account-shortcuts a{background:#102d43;border-color:#2b5e7b}
.neon-profile .account-shortcuts a:hover{background:#15435c}
.neon-profile .avatar{border-radius:18px;box-shadow:0 0 28px #1aafff26}
.neon-admin{max-width:none!important;padding-inline:clamp(20px,4vw,76px)!important}
.neon-admin .admin-heading{padding-bottom:18px}
.neon-admin .admin-heading h1{font-size:clamp(34px,4vw,54px)}
.neon-admin .admin-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.neon-admin .admin-stats .card{background:linear-gradient(140deg,#0d2a41,#0a192a);border:1px solid #2a5270;border-radius:14px;padding:24px}
.neon-admin .admin-stats strong{color:#f5fbff;font-weight:800;letter-spacing:-.03em}
.neon-admin .admin-workspace{display:grid;grid-template-columns:230px minmax(0,1fr);align-items:start;gap:24px}
.neon-admin .admin-tabs{display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;overflow:visible;position:sticky;top:20px;padding:13px;gap:5px;margin:0;background:linear-gradient(160deg,#0b2236,#081624);border:1px solid #254861;border-radius:16px}
.neon-admin .neon-admin-nav-head{display:flex;flex-direction:column;padding:12px 13px 20px;margin-bottom:7px;border-bottom:1px solid #2a4c62}
.neon-admin .neon-admin-nav-head span{font-size:17px;color:#f2faff;font-weight:850;letter-spacing:.02em}
.neon-admin .neon-admin-nav-head small{font-size:10px;color:#59d7fb;letter-spacing:.13em}
.neon-admin .admin-tabs button{flex:0 0 auto;width:100%;min-height:43px;padding:10px 12px;text-align:left;justify-content:flex-start;white-space:normal;border-radius:9px;font-size:12px;line-height:1.4;color:#b7cce0}
.neon-admin .admin-tabs button.selected{background:#123f5b;color:#72e4ff;border-color:#326784;box-shadow:inset 3px 0 #39d8ff}
.neon-admin .admin-workarea{min-width:0}
.neon-admin .admin-workarea>.card{background:linear-gradient(155deg,#0e2538,#091827);border:1px solid #284a64;border-radius:15px;padding:26px}
.neon-admin .analytics-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.neon-admin .analytics-metric{background:#0c263b;border:1px solid #2a5572;border-radius:13px;min-height:100px}
.neon-admin .analytics-metric strong{font-size:clamp(22px,2.5vw,34px);color:#4cdcff}
.neon-admin .analytics-graph{height:160px}
.neon-admin .analytics-bar span{background:linear-gradient(#34e0ff,#1e6baf);box-shadow:0 0 10px #00bfff2a}
.neon-admin .analytics-ranking{min-width:0}
.neon-admin .admin-user-card{background:#0d2538;border-color:#2a506b}
.neon-admin .admin-user-avatar{background:#144765;color:#6ee3ff}
@media(max-width:1100px){.neon-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.neon-buy .plans{grid-template-columns:repeat(2,minmax(0,1fr))}.neon-admin .admin-workspace{grid-template-columns:195px minmax(0,1fr);gap:15px}.neon-admin .analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:740px){
 header,body.home-page header{height:auto;min-height:72px;padding:14px 20px;gap:9px}
 header nav,body.home-page header nav{gap:7px;font-size:12px}
 header nav a{padding:8px 10px}
 .neon-hero{min-height:760px;min-height:100svh}
 .neon-hero-backdrop{background:radial-gradient(ellipse 95% 60% at 85% 50%,#0e597344,transparent 85%),linear-gradient(120deg,#03101e,#071b2b)}
 .neon-hero-content{width:calc(100% - 48px);padding:185px 0 125px}
 .neon-hero h1{font-size:clamp(44px,10vw,72px);max-width:500px}
 .neon-hero-lead{font-size:15px;max-width:340px}
 .neon-hero-actions{gap:10px;margin-bottom:40px}
 .neon-hero-features{gap:18px 24px}
 .neon-scroll{right:24px;bottom:19px}
 .neon-features{padding:68px 24px}
 .neon-bottom-cta{margin:28px 24px 55px;padding:27px 23px;flex-direction:column;align-items:stretch}
 .neon-bottom-cta .neon-cta{width:100%}
 .neon-admin{padding-inline:14px!important}
 .neon-admin .admin-workspace{display:block}
 .neon-admin .admin-tabs{position:static;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:6px;margin-bottom:17px;padding:9px;scrollbar-width:thin}
 .neon-admin .neon-admin-nav-head{display:none}
 .neon-admin .admin-tabs button{width:auto;white-space:nowrap;flex:0 0 auto;padding:10px 14px;min-height:46px}
 .neon-admin .admin-tabs button.selected{box-shadow:inset 0 -3px #39d8ff}
 .neon-admin .admin-stats .card{padding:15px 10px}
 .neon-admin .admin-workarea>.card{padding:20px 15px}
 .neon-admin .analytics-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:520px){
 .neon-hero-content{padding-top:165px}
 .neon-hero h1{font-size:clamp(42px,11vw,60px)}
 .neon-hero-actions{flex-direction:column;align-items:stretch;max-width:340px}
 .neon-cta,.neon-outline{min-height:52px}
 .neon-hero-features{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 10px;max-width:350px}
 .neon-hero-features>div{min-width:0;grid-template-columns:22px 1fr;column-gap:8px}
 .neon-feature-icon{font-size:20px}
 .neon-hero-features small{font-size:10px}
 .neon-feature-grid{grid-template-columns:1fr;gap:12px}
 .neon-feature-card{padding:23px}
 .neon-card-symbol{margin-bottom:16px}
 .neon-buy .plans{grid-template-columns:1fr}
 .neon-buy .plan{min-height:0;padding:28px 24px}
 .neon-buy .plan h2{font-size:43px}
 .neon-buy .plan-price{font-size:36px}
 .neon-buy .page-heading,.neon-profile .page-heading{padding-top:32px}
 .neon-admin .admin-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
 .neon-admin .admin-stats strong{font-size:23px}
 .neon-admin .admin-stats span{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.neon-feature-card,.neon-cta,.neon-outline{transition:none!important;transform:none!important}}

/* Hero art direction: abstract interface geometry instead of a cropped person */
.neon-hero-backdrop::before{content:"";position:absolute;width:min(44vw,620px);aspect-ratio:1;right:7%;top:50%;transform:translateY(-50%) rotate(-24deg);border:1px solid #38d6ff35;border-radius:50%;box-shadow:0 0 0 45px #22bfff08,0 0 0 90px #22bfff07,0 0 0 140px #22bfff05,inset 0 0 110px #06bfff0c;pointer-events:none}
.neon-hero-backdrop::after{content:"";position:absolute;width:min(26vw,360px);aspect-ratio:1;right:13%;top:50%;transform:translateY(-50%) rotate(45deg);border:1px solid #39d9ff60;background:linear-gradient(135deg,#1abfff0e,transparent 60%);box-shadow:0 0 50px #14b8ff16,inset 0 0 45px #14b8ff0c;clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);pointer-events:none}
.neon-hero-content{position:relative;z-index:1}
@media(max-width:740px){.neon-hero-backdrop::before{width:75vw;right:-42%;opacity:.6}.neon-hero-backdrop::after{width:48vw;right:-28%;opacity:.5}}
/* Keep the hero clean: remove the decorative circle and diamond */
.neon-hero-backdrop::before,.neon-hero-backdrop::after{content:none!important;display:none!important}
/* Center the signed-in username in its account frame; keep the arrow at the edge */
#account-nav a.button[href="/profile"]{position:relative;display:flex;align-items:center;justify-content:center;text-align:center;box-sizing:border-box;min-width:132px;max-width:180px;padding:10px 34px 10px 18px;white-space:nowrap}
#account-nav a.button[href="/profile"]>span{position:absolute;right:13px;top:50%;transform:translateY(-50%);margin:0;line-height:1}
@media(max-width:639px){#account-nav{max-width:none}#account-nav a.button[href="/profile"]{min-width:112px;max-width:132px;padding:9px 29px 9px 12px;font-size:12px}#account-nav a.button[href="/profile"]>span{right:10px}}
/* Hero is one complete viewport panel; the next section starts only after its boundary. */
.neon-hero{height:100vh;height:100svh;min-height:680px;box-sizing:border-box;}
.neon-hero-content{padding-top:clamp(105px,14vh,145px);padding-bottom:clamp(65px,10vh,95px);}
@media(max-width:740px){
 .neon-hero{height:auto;min-height:max(100svh,760px);}
 .neon-hero-content{padding-top:165px;padding-bottom:125px;}
}
