:root{--ink:#102033;--muted:#66758a;--navy:#071a35;--blue:#1167e8;--cyan:#16b8d4;--soft:#f3f7fb;--line:#e2e9f1;--white:#fff;--shadow:0 18px 55px rgba(14,37,65,.10);--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}.container{width:min(1160px,92%);margin:auto}.topbar{background:#051426;color:#b9c7d9;font-size:12px}.topbar-inner{height:38px;display:flex;justify-content:space-between;align-items:center}.topbar a{color:#fff}.topbar-inner>div{display:flex;gap:10px}.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(16,32,51,.08)}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:220px}.brand img{width:46px;height:46px;object-fit:cover;border-radius:50%}.brand b{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;display:block;font-size:17px;letter-spacing:.8px;color:var(--navy)}.brand small{display:block;font-size:8px;letter-spacing:1.2px;color:var(--muted);font-weight:800}.main-nav{display:flex;align-items:center;gap:5px}.main-nav>a,.nav-dropdown>button{border:0;background:transparent;padding:12px 11px;color:#33465d;font-weight:600;font-size:13px;cursor:pointer}.main-nav>a:hover,.nav-dropdown>button:hover{color:var(--blue)}.nav-cta{background:var(--blue)!important;color:#fff!important;border-radius:10px;padding:11px 17px!important}.nav-dropdown{position:relative}.dropdown-menu{position:absolute;right:0;top:100%;min-width:190px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(7px);transition:.2s}.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;transform:none}.dropdown-menu a{display:block;padding:9px 11px;border-radius:9px;font-size:13px}.dropdown-menu a:hover{background:var(--soft);color:var(--blue)}.nav-toggle{display:none;border:0;background:none;padding:7px}.nav-toggle span{display:block;width:25px;height:2px;background:var(--navy);margin:5px}.flash-stack{position:relative;z-index:900}.flash{margin-top:14px;padding:13px 16px;border-radius:12px;background:#e8f6ef;color:#14633b;border:1px solid #bfe5d0;display:flex;justify-content:space-between}.flash button{border:0;background:none;font-size:20px;cursor:pointer}.hero{position:relative;overflow:hidden;background:var(--navy);color:#fff}.hero-bg{position:absolute;inset:0;background:linear-gradient(110deg,rgba(4,20,40,.98),rgba(5,29,58,.84),rgba(5,25,49,.65)),url('../images/hero.png') center/cover;opacity:.95}.hero-grid{position:relative;min-height:620px;display:grid;grid-template-columns:1.45fr .75fr;gap:70px;align-items:center;padding:80px 0}.eyebrow{display:inline-block;font-size:11px;font-weight:800;letter-spacing:2px;color:var(--blue);margin-bottom:12px}.hero .eyebrow{color:#65e2f0}.hero h1,.page-hero h1{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(42px,6vw,72px);line-height:1.04;letter-spacing:-2.5px;margin:0 0 24px;max-width:850px}.hero h1 span{color:#55d9e7}.hero p{font-size:18px;color:#c8d5e5;max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:10px;border:1px solid transparent;border-radius:11px;padding:13px 19px;font-weight:800;cursor:pointer;transition:.2s}.btn-primary{background:var(--blue);color:#fff;box-shadow:0 10px 24px rgba(17,103,232,.22)}.btn-primary:hover{transform:translateY(-2px);background:#0d58c8}.btn-ghost{border-color:rgba(255,255,255,.25);color:#fff;background:rgba(255,255,255,.06)}.btn-light{background:#fff;color:var(--navy)}.btn-dark{background:var(--navy);color:#fff}.btn-outline{border-color:#cad5e2;color:var(--ink);background:#fff}.btn-small{padding:9px 13px;font-size:12px;background:#eef5ff;color:var(--blue)}.full{width:100%}.hero-trust{display:flex;gap:20px;flex-wrap:wrap;color:#c4d3e4;font-size:12px;margin-top:25px}.hero-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:32px;backdrop-filter:blur(12px);box-shadow:0 25px 60px rgba(0,0,0,.2)}.hero-card-icon{width:54px;height:54px;display:grid;place-items:center;background:#fff;color:var(--blue);border-radius:15px;font-size:25px}.hero-card h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:25px;line-height:1.2;margin:22px 0 10px}.hero-card p{font-size:14px}.hero-card a{color:#64e2ef;font-weight:800;font-size:13px}.stats{background:#fff;border-bottom:1px solid var(--line)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stats-grid>div{padding:30px 20px;border-right:1px solid var(--line)}.stats-grid>div:last-child{border-right:0}.stats strong{display:block;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:28px;color:var(--navy)}.stats span{font-size:12px;color:var(--muted)}.section{padding:92px 0}.section-soft{background:var(--soft)}.section-dark{background:var(--navy);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:38px}.section h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(30px,4vw,46px);line-height:1.1;letter-spacing:-1.4px;margin:0;max-width:760px}.text-link{color:var(--blue);font-weight:800;font-size:13px;white-space:nowrap}.card-grid{display:grid;gap:18px}.card-grid.three{grid-template-columns:repeat(3,1fr)}.service-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:27px;box-shadow:0 8px 28px rgba(18,44,75,.04);transition:.25s}.service-card:hover,.course-card:hover,.blog-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.icon-box{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:#eaf4ff;color:var(--blue);font-size:21px;margin-bottom:20px}.icon-box.large{width:70px;height:70px;font-size:30px}.service-card h3,.course-card h3,.blog-card h3{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:19px;line-height:1.25;margin:0 0 10px}.service-card p,.course-card p,.blog-card p{color:var(--muted);font-size:13px}.service-card a,.blog-body>a{font-size:12px;color:var(--blue);font-weight:800}.service-large{min-height:250px}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.course-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:.25s}.course-art{height:190px;position:relative;overflow:hidden;background:#dce9f5}.course-art img{width:100%;height:100%;object-fit:cover;transition:.4s}.course-card:hover .course-art img{transform:scale(1.04)}.course-art span{position:absolute;left:14px;bottom:14px;background:rgba(7,26,53,.88);color:#fff;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800}.course-body{padding:20px}.course-meta{display:flex;gap:10px;color:#7b8a9d;font-size:10px;font-weight:700;text-transform:uppercase}.course-body h3{margin-top:10px}.course-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:18px}.course-bottom strong{font-size:13px}.split-section{padding:100px 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split-image{border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.split-image img{width:100%;height:460px;object-fit:cover}.split-copy p{color:var(--muted);font-size:15px}.check-list{display:grid;gap:11px;margin:24px 0 28px;color:#35485d;font-size:13px}.section-dark .eyebrow{color:#65e2f0}.testimonial-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center}.testimonial-wrap h2{color:#fff}.testimonial-wrap>div>p{color:#b8c6d6}.quote-list{display:grid;grid-template-columns:1fr 1fr;gap:15px}.quote-list blockquote,.testimonial-card{margin:0;padding:25px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:18px}.stars{color:#ffc857;letter-spacing:2px}.quote-list p{font-size:14px;color:#d5dfeb}.quote-list footer{font-size:12px;color:#fff}.quote-list footer span{color:#9eafc1}.cta{padding:80px 0;background:#edf6ff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:38px}.page-hero{background:linear-gradient(120deg,#071a35,#103864);color:#fff;padding:85px 0}.page-hero.compact{padding:65px 0}.page-hero h1{font-size:clamp(36px,5vw,58px);max-width:900px}.page-hero p{color:#c9d6e5;max-width:720px;font-size:16px}.page-hero .eyebrow{color:#66e1ef}.detail-layout,.form-layout,.article-layout{display:grid;grid-template-columns:1fr 330px;gap:35px;align-items:start}.detail-main h2,.detail-main h3,.article h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin-top:30px}.detail-main p,.article p{color:#53657a}.side-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px;box-shadow:0 10px 35px rgba(18,44,75,.05)}.side-card.sticky{position:sticky;top:105px}.side-row{display:flex;justify-content:space-between;gap:10px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px}.side-row span{color:var(--muted)}.side-link{display:block;text-align:center;color:var(--blue);font-size:12px;font-weight:800;padding-top:15px}.course-feature,.article-cover{border-radius:20px;overflow:hidden;margin-bottom:28px}.course-feature img,.article-cover img{width:100%;height:350px;object-fit:cover}.lesson-list{border-top:1px solid var(--line)}.lesson-list>div{display:flex;gap:18px;padding:17px 0;border-bottom:1px solid var(--line)}.lesson-list>div>span{font-weight:800;color:var(--blue)}.lesson-list p{margin:3px 0 0;font-size:12px}.search-bar{display:grid;grid-template-columns:1fr 220px auto;gap:10px;margin-bottom:35px}.search-bar.one{grid-template-columns:1fr auto;max-width:650px}.search-bar input,.search-bar select,.verify-form input,.field input,.field select,.field textarea,.auth-card input{width:100%;padding:13px 14px;border:1px solid #d5dfea;border-radius:10px;background:#fff;outline:none}.search-bar input:focus,.field input:focus,.field select:focus,.field textarea:focus,.auth-card input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(17,103,232,.08)}.form-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:32px;box-shadow:var(--shadow)}.form-card h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin-top:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:25px}.field{display:grid;gap:7px}.field label,.verify-form label{font-size:12px;font-weight:800;color:#34475c}.full-field{grid-column:1/-1}.error{color:#bd2f2f;font-size:11px}.mini-step{display:flex;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.mini-step b{color:var(--blue)}.mini-step p{margin:0;font-size:13px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.blog-grid.wide{grid-template-columns:repeat(3,1fr)}.blog-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;transition:.25s}.blog-art{height:180px;background:#e8f0f7}.blog-art img{width:100%;height:100%;object-fit:cover}.blog-body{padding:21px}.blog-body>span{color:var(--blue);font-size:10px;font-weight:800;text-transform:uppercase}.blog-body h3 a:hover{color:var(--blue)}.blog-body small{display:block;color:#8794a4;margin:12px 0}.article-layout .article{min-width:0}.article{font-size:15px}.article-author{border-top:1px solid var(--line);margin-top:35px;padding-top:18px;font-size:12px;color:var(--muted)}.faq-list{max-width:900px}.faq-list details{border-bottom:1px solid var(--line);padding:4px 0}.faq-list summary{cursor:pointer;list-style:none;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:17px;font-weight:700;padding:22px 4px;display:flex;justify-content:space-between}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--blue);font-size:24px}.faq-list p{color:var(--muted);padding:0 4px 20px;margin:0}.opportunity-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.opportunity-card{border:1px solid var(--line);border-radius:20px;padding:30px;background:#fff}.opportunity-card .icon-box{margin-bottom:15px}.opportunity-card h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.opportunity-card p{color:var(--muted)}.opportunity-card h4{margin-bottom:5px}.opportunity-card .btn{margin-top:15px}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-card{background:#fff;border:1px solid var(--line)}.testimonial-card p{color:#53657a}.testimonial-card footer{display:grid;gap:2px;font-size:12px}.testimonial-card footer span{color:var(--muted)}.verify-box{max-width:800px}.verify-form{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end}.verify-form label{grid-column:1/-1}.verified,.not-found{margin-top:25px;border-radius:18px;padding:28px;text-align:center}.verified{background:#eaf8f1;border:1px solid #bde8d0}.not-found{background:#fff4f3;border:1px solid #f1c8c3}.verified-mark{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#15995a;color:#fff;font-size:28px}.certificate-details{display:grid;grid-template-columns:1fr 1fr;text-align:left;gap:10px;margin-top:22px;background:#fff;padding:18px;border-radius:13px}.certificate-details span{color:var(--muted);font-size:12px}.certificate-details b{font-size:12px}.auth-section{min-height:70vh;background:var(--soft);padding:70px 0;display:grid;place-items:center}.auth-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:35px;width:min(460px,92%);box-shadow:var(--shadow)}.auth-card h1{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:34px;margin:0 0 5px}.auth-card>p{color:var(--muted);font-size:13px}.auth-card form{display:grid;gap:15px;margin-top:22px}.auth-switch{text-align:center}.auth-switch a{color:var(--blue);font-weight:800}.dashboard-head{background:var(--navy);color:#fff;padding:55px 0}.dashboard-head h1{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:42px;margin:0}.dashboard-head p{color:#b7c6d8}.dashboard-grid{display:grid;grid-template-columns:1fr 300px;gap:25px}.dashboard-main{display:grid;gap:20px}.panel{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px}.panel-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.panel-head h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:20px;margin:0}.panel-head a{font-size:12px;color:var(--blue);font-weight:800}.enrollment{display:flex;gap:15px;padding:18px 0;border-top:1px solid var(--line)}.enroll-icon{width:44px;height:44px;background:#eaf4ff;color:var(--blue);display:grid;place-items:center;border-radius:12px}.enroll-info{flex:1}.enroll-info h3{font-size:14px;margin:0 0 8px}.progress{height:7px;background:#e6edf5;border-radius:10px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--cyan))}.enroll-info small{font-size:10px;color:var(--muted)}.application-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:15px 0}.application-row div{display:grid}.application-row small{color:var(--muted);font-size:10px}.status{font-size:10px;font-weight:800;border-radius:20px;padding:5px 8px;background:#edf2f7}.status.accepted{background:#e7f7ee;color:#14824d}.status.rejected{background:#fff0ef;color:#b9342d}.side-action{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.side-action span{color:var(--blue)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid div{height:250px;border-radius:18px;overflow:hidden}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.4s}.gallery-grid div:hover img{transform:scale(1.04)}.empty-state{grid-column:1/-1;padding:30px;background:#fff;border:1px dashed #c9d5e3;border-radius:16px;color:var(--muted);text-align:center}.empty-state.small{padding:20px;font-size:13px}.empty-state code{color:var(--blue)}.muted{color:var(--muted)}.footer{background:#041223;color:#aebdd0;padding:70px 0 0}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .8fr 1fr;gap:50px;padding-bottom:50px}.footer-brand{margin-bottom:20px}.footer-brand b{color:#fff}.footer h4{color:#fff;margin:0 0 15px}.footer-grid>div>a:not(.brand){display:block;font-size:12px;margin:9px 0}.footer p{font-size:12px;max-width:320px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;display:flex;justify-content:space-between;gap:15px;font-size:10px}.back-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border:0;border-radius:50%;background:var(--blue);color:#fff;font-size:20px;opacity:0;visibility:hidden;transition:.2s;z-index:999}.back-top.show{opacity:1;visibility:visible}.reveal{opacity:0;transform:translateY(18px);transition:.6s}.reveal.show{opacity:1;transform:none}
@media(max-width:980px){.main-nav{gap:0}.main-nav>a,.nav-dropdown>button{padding:10px 7px;font-size:12px}.hero-grid{gap:30px}.card-grid.three,.course-grid,.blog-grid,.blog-grid.wide{grid-template-columns:repeat(2,1fr)}.testimonial-wrap{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.detail-layout,.form-layout,.article-layout{grid-template-columns:1fr}.side-card.sticky{position:static}}
@media(max-width:760px){.topbar{display:none}.nav-wrap{min-height:70px}.nav-toggle{display:block}.main-nav{position:absolute;left:4%;right:4%;top:70px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);padding:8px;display:none;flex-direction:column;align-items:stretch}.main-nav.is-open{display:flex}.main-nav>a,.nav-dropdown>button{text-align:left;padding:12px}.nav-dropdown{width:100%}.dropdown-menu{position:static;box-shadow:none;border:0;display:none;opacity:1;visibility:visible;transform:none}.nav-dropdown.open .dropdown-menu{display:block}.hero-grid{grid-template-columns:1fr;padding:65px 0}.hero h1{font-size:43px}.hero-card{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid>div:nth-child(2){border-right:0}.section{padding:65px 0}.section-head{align-items:start;flex-direction:column}.split{grid-template-columns:1fr;gap:35px}.split-image img{height:320px}.card-grid.three,.course-grid,.blog-grid,.blog-grid.wide,.testimonial-grid,.opportunity-grid,.gallery-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.search-bar,.search-bar.one,.verify-form{grid-template-columns:1fr}.cta-inner{flex-direction:column;align-items:flex-start}.cta h2{font-size:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-bottom{flex-direction:column}.page-hero{padding:65px 0}.page-hero h1{font-size:40px}.dashboard-grid{grid-template-columns:1fr}.certificate-details{grid-template-columns:1fr}}
@media(max-width:480px){.container{width:91%}.brand{min-width:0}.brand img{width:40px;height:40px}.brand b{font-size:14px}.brand small{font-size:7px}.hero h1{font-size:38px}.hero p{font-size:15px}.stats-grid>div{padding:20px 10px}.stats strong{font-size:22px}.footer-grid{grid-template-columns:1fr}.form-card,.side-card,.auth-card{padding:22px}.dashboard-head h1{font-size:34px}}

/* JOVATECH Professional Frontend refinement layer */
:root{
  --navy:#061a35;--navy-2:#0a2b52;--blue:#1167e8;--cyan:#22c7d9;
  --ink:#102033;--muted:#68788c;--soft:#f4f8fc;--line:#e3eaf2;
  --radius:22px;--shadow:0 22px 70px rgba(10,35,65,.11)
}
body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff;color:var(--ink);overflow-x:hidden}
.skip-link{position:fixed;left:18px;top:-60px;z-index:2000;background:#fff;color:var(--navy);padding:10px 14px;border-radius:10px;box-shadow:var(--shadow);font-weight:800}.skip-link:focus{top:18px}
.topbar{background:linear-gradient(90deg,#041426,#082344);border-bottom:1px solid rgba(255,255,255,.08)}
.topbar-inner{height:40px}.topbar-inner strong{color:#fff}.topbar a{transition:.2s}.topbar a:hover{color:#63e3ef}
.site-header{transition:box-shadow .25s,background .25s,border-color .25s}.site-header.scrolled{box-shadow:0 12px 35px rgba(6,26,53,.09);background:rgba(255,255,255,.98)}
.brand{gap:10px}.brand-mark{width:44px;height:44px;border-radius:13px;padding:2px;background:linear-gradient(135deg,#1167e8,#22c7d9);display:grid;place-items:center;box-shadow:0 7px 20px rgba(17,103,232,.18)}.brand-mark img{width:100%;height:100%;border-radius:11px;object-fit:cover}.brand b{letter-spacing:1.1px}.main-nav>a,.nav-dropdown>button{position:relative}.main-nav>a:not(.nav-cta):after{content:"";position:absolute;left:11px;right:11px;bottom:6px;height:2px;border-radius:2px;background:var(--blue);transform:scaleX(0);transform-origin:center;transition:.2s}.main-nav>a:hover:after,.main-nav>a.active:after{transform:scaleX(1)}.main-nav>a.active{color:var(--blue)}.nav-cta{box-shadow:0 9px 20px rgba(17,103,232,.2);transition:.2s}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 13px 25px rgba(17,103,232,.28)}
.hero{background:#061a35;isolation:isolate}.hero-bg{background:linear-gradient(105deg,rgba(4,19,38,.99) 0%,rgba(5,31,61,.92) 50%,rgba(8,47,80,.65) 100%),url('../images/hero.png') center/cover}.hero-grid{min-height:650px;padding:88px 0}.hero-copy{max-width:780px}.hero .eyebrow{display:flex;align-items:center;gap:9px}.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:#5fe3ee;box-shadow:0 0 0 6px rgba(95,227,238,.1)}.hero h1{font-size:clamp(46px,6.4vw,78px);max-width:900px;letter-spacing:-3.8px}.hero h1 span{background:linear-gradient(90deg,#55d9e7,#9df1f3);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{font-size:17px;line-height:1.8;max-width:700px}.hero-actions{margin-top:32px}.btn{min-height:47px}.btn-primary{background:linear-gradient(135deg,#1167e8,#0c56c8)}.btn-primary:hover{background:linear-gradient(135deg,#1973f1,#0b50b8)}.btn-ghost{border-color:rgba(255,255,255,.22);backdrop-filter:blur(8px)}
.hero-card{position:relative;overflow:hidden;border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.055));box-shadow:0 35px 90px rgba(0,0,0,.28)}.hero-card:before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;background:rgba(34,199,217,.13);filter:blur(2px);right:-70px;top:-70px}.hero-card-top{display:flex;align-items:center;gap:13px}.hero-card-label{font-size:9px;letter-spacing:1.4px;font-weight:800;color:#b8d1e6}.hero-card h3{font-size:27px}.hero-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:25px 0}.hero-mini-grid div{padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.04)}.hero-mini-grid strong{display:block;color:#61e1ec;font-size:11px}.hero-mini-grid span{font-size:11px;color:#d2deea}.hero-card-link{display:flex;justify-content:space-between;align-items:center;padding-top:17px;border-top:1px solid rgba(255,255,255,.12)}.hero-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:-1}.hero-orb-one{width:340px;height:340px;right:-140px;top:80px;background:rgba(17,103,232,.13);filter:blur(20px)}.hero-orb-two{width:240px;height:240px;left:-120px;bottom:30px;background:rgba(34,199,217,.09);filter:blur(15px)}.hero-bottom{border-top:1px solid rgba(255,255,255,.1);background:rgba(0,0,0,.13)}.hero-bottom-inner{display:flex;gap:24px;justify-content:space-between;padding:14px 0;color:#b6c8da;font-size:10px;font-weight:800;letter-spacing:.6px;text-transform:uppercase}.hero-bottom-inner span{display:flex;align-items:center;gap:7px}.hero-bottom-inner span:before{content:"";width:5px;height:5px;border-radius:50%;background:#52d9e5}
.stats{box-shadow:0 7px 30px rgba(10,35,65,.035)}.stats-grid>div{position:relative}.stats-grid>div:before{content:"";position:absolute;left:20px;top:0;width:30px;height:2px;background:linear-gradient(90deg,var(--blue),var(--cyan))}.stats strong{font-size:30px;margin-top:7px}.stats span{line-height:1.4}
.section{padding:100px 0}.section-head{margin-bottom:42px}.section h2{font-size:clamp(32px,4vw,48px);letter-spacing:-1.8px}.eyebrow{letter-spacing:1.8px}.text-link{display:inline-flex;gap:7px;align-items:center}.text-link span,.btn span,.service-card a span,.course-bottom .course-arrow{transition:transform .2s}.text-link:hover span,.btn:hover span,.service-card a:hover span{transform:translateX(3px)}
.service-card{position:relative;overflow:hidden;padding:30px;border-radius:22px}.service-card:after{content:"";position:absolute;right:-45px;bottom:-55px;width:130px;height:130px;border-radius:50%;background:#f0f7ff;z-index:0}.service-card>*{position:relative;z-index:1}.service-number{position:absolute!important;right:23px;top:20px;color:#dce9f6;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:28px;font-weight:800}.icon-box{box-shadow:inset 0 0 0 1px rgba(17,103,232,.05)}.service-card h3{font-size:20px}.service-card p{min-height:62px}.service-card a{display:inline-flex;gap:6px;align-items:center}
.section-soft{background:linear-gradient(180deg,#f5f9fd,#eef5fb)}.course-card{border-radius:22px;box-shadow:0 8px 28px rgba(18,44,75,.045)}.course-art{height:205px}.course-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(4,18,37,.38))}.course-art span{z-index:2}.course-body{padding:22px}.course-body p{min-height:62px}.course-bottom{border-top:1px solid #edf1f5;padding-top:16px}.course-arrow{font-size:22px;color:#9aabbd}
.split-section{padding:110px 0}.split{gap:90px}.split-image{position:relative}.split-image img{height:500px}.image-badge{position:absolute;left:22px;bottom:22px;background:#fff;border-radius:15px;padding:13px 16px;box-shadow:0 15px 40px rgba(0,0,0,.15);display:grid}.image-badge strong{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px;color:var(--navy)}.image-badge small{color:var(--muted);font-size:10px}.split-copy h2{font-size:clamp(34px,4vw,50px)}.check-list{gap:0}.check-list div{display:flex;align-items:center;gap:15px;padding:12px 0;border-bottom:1px solid var(--line)}.check-list div:last-child{border-bottom:0}.check-list b{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:#edf5ff;color:var(--blue);font-size:10px}.check-list span{font-weight:600}
.knowledge-section{background:#fff}.blog-card{border-radius:21px}.blog-art{height:190px}.blog-body h3{font-size:20px}.blog-body>a{display:inline-flex;gap:6px}
.section-dark{background:linear-gradient(120deg,#061a35,#092b50)}.testimonial-wrap{gap:80px}.quote-list blockquote{backdrop-filter:blur(10px)}.quote-list p{line-height:1.75}.stars{font-size:12px}
.cta{background:linear-gradient(135deg,#edf7ff,#f7fbff);border-top:1px solid #e6eef6;border-bottom:1px solid #e6eef6}.cta h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(30px,4vw,43px);letter-spacing:-1.4px;margin:8px 0}.cta p{color:var(--muted)}
.footer{background:#031121}.footer-grid{padding-bottom:60px}.footer-intro>p{max-width:370px;line-height:1.8}.footer-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.footer-pills span{font-size:9px;border:1px solid rgba(255,255,255,.1);padding:6px 9px;border-radius:20px;color:#c5d3e1}.footer h4{font-size:12px;text-transform:uppercase;letter-spacing:1px}.footer-grid>div>a:not(.brand){color:#9fb0c3;transition:.2s}.footer-grid>div>a:not(.brand):hover{color:#5edfe9;transform:translateX(2px)}.footer-contact{color:#5edfe9!important;font-weight:800;display:inline-flex!important;gap:7px;align-items:center}.footer-bottom{color:#8194a9}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.show{opacity:1;transform:none}.reveal-on-load{opacity:0;transform:translateY(12px);transition:opacity .7s ease,transform .7s ease}.reveal-on-load.loaded{opacity:1;transform:none}.delay-1{transition-delay:.15s}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr .75fr}.hero h1{font-size:clamp(44px,6vw,62px)}.hero-bottom-inner{overflow:auto;justify-content:flex-start;white-space:nowrap}.section{padding:82px 0}.split{gap:50px}}
@media(max-width:760px){.hero-grid{grid-template-columns:1fr;min-height:0;padding:72px 0}.hero h1{font-size:43px;letter-spacing:-2.5px}.hero-card{display:block;margin-top:10px}.hero-bottom-inner{gap:20px}.hero-bottom-inner span{font-size:8px}.hero-orb-one{right:-180px}.hero-orb-two{left:-160px}.stats-grid>div:before{left:10px}.section{padding:72px 0}.section-head{margin-bottom:30px}.split-section{padding:80px 0}.split-image img{height:360px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.hero h1{font-size:38px}.hero p{font-size:15px}.hero-actions .btn{width:100%}.hero-card{padding:24px}.hero-mini-grid{gap:6px}.stats-grid{grid-template-columns:1fr 1fr}.stats-grid>div{padding:23px 10px}.stats-grid>div:nth-child(odd){border-right:1px solid var(--line)}.stats-grid>div:nth-child(even){border-right:0}.footer-grid{grid-template-columns:1fr}.brand-mark{width:40px;height:40px}.brand b{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.reveal-on-load{transition:none;transform:none!important}.course-card,.service-card,.blog-card,.btn{transition:none}}

/* =========================================================
   JOVATECH — COURSE CATALOGUE
   ========================================================= */
.course-hero{background:linear-gradient(120deg,#071a35 0%,#0b2b58 58%,#1167e8 140%);color:#fff;overflow:hidden}
.course-hero:after{content:"";position:absolute;right:-180px;top:-220px;width:520px;height:520px;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}
.course-hero .container{position:relative;z-index:1}
.course-hero h1{max-width:760px}
.course-hero p{max-width:690px;color:#c7d6e8}
.hero-stat-row{display:flex;gap:34px;margin-top:36px;padding-top:24px;border-top:1px solid rgba(255,255,255,.14)}
.hero-stat-row div{display:flex;flex-direction:column;gap:2px}
.hero-stat-row strong{font-size:20px;color:#fff}
.hero-stat-row span{font-size:12px;color:#aebfd3}
.catalogue-section{padding:72px 0 92px;background:#f7f9fc}
.catalogue-layout{display:grid;grid-template-columns:260px 1fr;gap:36px;align-items:start}
.filter-panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:0 12px 35px rgba(14,37,65,.06);position:sticky;top:105px}
.filter-head{display:flex;justify-content:space-between;align-items:start;margin-bottom:22px}
.filter-head h3{margin:3px 0 0;font-size:20px}
.filter-close{display:none;border:0;background:#f2f5f8;border-radius:8px;width:32px;height:32px;font-size:20px}
.field-label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.8px;font-weight:800;color:#65758a;margin:18px 0 7px}
.catalogue-search{display:flex;align-items:center;border:1px solid var(--line);border-radius:11px;padding:0 11px;background:#fff}
.catalogue-search span{font-size:20px;color:#7a8b9e}
.catalogue-search input{border:0;outline:0;width:100%;padding:12px 8px;font-size:13px}
.filter-panel select,.sort-form select{width:100%;border:1px solid var(--line);background:#fff;border-radius:11px;padding:11px 12px;color:#33465d;outline:none}
.filter-panel select:focus,.catalogue-search:focus-within,.sort-form select:focus{border-color:#7aa9ef;box-shadow:0 0 0 3px rgba(17,103,232,.08)}
.filter-panel .full{margin-top:22px}
.filter-reset{display:block;text-align:center;color:#64758a;font-size:12px;font-weight:700;margin-top:12px}
.filter-reset:hover{color:var(--blue)}
.filter-promo{margin-top:25px;padding:17px;border-radius:14px;background:linear-gradient(145deg,#eef5ff,#f6fbff);border:1px solid #dce9fb}
.filter-promo span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:#52719a;font-weight:800}
.filter-promo strong{display:block;font-size:13px;line-height:1.45;margin:6px 0 9px}
.filter-promo a{font-size:12px;font-weight:800;color:var(--blue)}
.catalogue-results{min-width:0}
.catalogue-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}
.catalogue-toolbar p{margin:0;color:#6a7a8d;font-size:13px}
.catalogue-toolbar p strong{color:var(--ink)}
.sort-form{display:flex;align-items:center;gap:9px}
.sort-form label{font-size:12px;font-weight:800;color:#6a7a8d}
.sort-form select{width:auto;min-width:155px}
.mobile-filter-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:9px;padding:9px 12px;font-weight:800;color:var(--ink)}
.catalogue-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.catalogue-card{height:100%;display:flex;flex-direction:column;overflow:hidden}
.catalogue-card .course-body{display:flex;flex-direction:column;flex:1}
.catalogue-card .course-body p{min-height:66px}
.catalogue-card .course-bottom{margin-top:auto}
.course-art{position:relative;overflow:hidden}
.course-art img{transition:transform .5s ease}
.course-card:hover .course-art img{transform:scale(1.035)}
.course-art-fallback{height:190px;background:linear-gradient(135deg,#071a35,#1167e8);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#fff}
.course-art-fallback span{font-size:48px;line-height:1}
.course-art-fallback small{margin-top:9px;font-size:10px;text-transform:uppercase;letter-spacing:1.5px;opacity:.8}
.featured-ribbon{position:absolute;left:12px;top:12px;background:#fff;color:#1167e8;padding:5px 8px;border-radius:7px;font-size:9px;letter-spacing:.7px;box-shadow:0 5px 15px rgba(0,0,0,.12)}
.course-tags{display:flex;flex-wrap:wrap;gap:6px;margin:5px 0 15px}
.course-tags span{background:#f2f6fa;border-radius:99px;padding:5px 8px;color:#64758a;font-size:10px;font-weight:700}
.course-bottom strong{font-size:14px;color:#102033}
.course-bottom .btn{white-space:nowrap}
.course-empty{grid-column:1/-1}
.empty-icon{width:52px;height:52px;margin:0 auto 12px;border-radius:50%;display:grid;place-items:center;background:#eef5ff;color:var(--blue);font-size:25px}
.pagination{display:flex;justify-content:center;gap:7px;margin-top:36px}
.pagination a,.pagination span{min-width:38px;height:38px;padding:0 10px;border-radius:9px;display:grid;place-items:center;border:1px solid var(--line);background:#fff;font-size:12px;font-weight:800}
.pagination a:hover,.pagination .current{background:var(--navy);border-color:var(--navy);color:#fff}
.catalogue-cta{padding:65px 0;background:var(--navy);color:#fff}
.catalogue-cta .container{display:flex;align-items:center;justify-content:space-between;gap:40px}
.catalogue-cta h2{max-width:700px;margin:7px 0 8px}
.catalogue-cta p{margin:0;color:#afc0d4;max-width:650px}
.catalogue-cta .eyebrow{color:#79c7ff}
.course-detail-hero{background:linear-gradient(120deg,#071a35,#0b2d5d);color:#fff;padding:42px 0 66px;overflow:hidden}
.back-link{display:inline-flex;color:#b8c9dc;font-size:12px;font-weight:800;margin-bottom:35px}
.back-link:hover{color:#fff}
.course-detail-head{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:center}
.detail-kicker{display:inline-flex;align-items:center;gap:8px;color:#79c7ff;text-transform:uppercase;font-size:11px;font-weight:800;letter-spacing:1px}
.detail-kicker span{font-size:18px}
.course-detail-head h1{font-size:clamp(36px,5vw,62px);line-height:1.05;margin:14px 0 17px;letter-spacing:-2px}
.course-detail-head p{max-width:680px;color:#c6d5e7;font-size:17px}
.detail-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}
.detail-badges span{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.06);padding:7px 10px;border-radius:99px;font-size:11px;color:#dce8f5}
.detail-hero-art{border:1px solid rgba(255,255,255,.14);border-radius:24px;overflow:hidden;box-shadow:0 25px 70px rgba(0,0,0,.22);background:rgba(255,255,255,.06)}
.detail-hero-art img{width:100%;height:300px;object-fit:cover}
.detail-hero-art>div{height:300px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle at 50% 35%,rgba(22,184,212,.25),transparent 35%)}
.detail-hero-art>div span{font-size:80px}
.detail-hero-art>div small{margin-top:15px;letter-spacing:2px;font-weight:800;color:#bcd0e6}
.course-detail-section{background:#fff}
.detail-intro{max-width:780px;padding-bottom:52px;border-bottom:1px solid var(--line)}
.detail-intro h2{margin:8px 0 13px}
.detail-intro p{color:#64758a;font-size:16px}
.detail-block{padding:54px 0;border-bottom:1px solid var(--line)}
.block-heading{display:flex;align-items:center;gap:16px;margin-bottom:25px}
.block-heading h2{margin:4px 0 0}
.number-icon{width:43px;height:43px;border-radius:12px;display:grid;place-items:center;background:#edf5ff;color:var(--blue);font-size:11px;font-weight:900}
.curriculum-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.curriculum-item{display:flex;gap:12px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}
.curriculum-item>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e8f7f0;color:#14804b;font-size:12px;font-weight:900;flex:0 0 auto}
.curriculum-item b{display:block;font-size:13px}
.curriculum-item small{display:block;color:#7b8999;font-size:10px;margin-top:2px}
.detail-lessons{border:1px solid var(--line);border-radius:15px;overflow:hidden}
.lesson-row{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:14px;padding:17px 18px;border-bottom:1px solid var(--line)}
.lesson-row:last-child{border-bottom:0}
.lesson-number{font-size:11px;font-weight:900;color:var(--blue)}
.lesson-row b{font-size:13px}
.lesson-row p{margin:3px 0 0;color:#7a8999;font-size:11px}
.lesson-status{font-size:9px;text-transform:uppercase;letter-spacing:.6px;font-weight:800;color:#7a8999;background:#f4f7fa;padding:5px 7px;border-radius:6px}
.outcomes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.outcomes-grid>div{padding:21px;border:1px solid var(--line);border-radius:15px}
.outcomes-grid span{color:var(--blue);font-size:10px;font-weight:900}
.outcomes-grid b{display:block;margin-top:8px}
.outcomes-grid p{color:#748397;font-size:12px;margin:6px 0 0}
.course-enrol-card{padding:25px}
.course-enrol-card h3{font-size:18px;margin:7px 0 4px}
.price-large{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:28px;font-weight:800;color:var(--navy);margin-top:18px}
.course-enrol-card>.muted{font-size:11px;margin-top:0}
.side-details{margin:21px 0;border-top:1px solid var(--line)}
.side-details>div{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:12px}
.side-details span{color:#718096}
.side-details b{color:#26394f}
.enrol-note{font-size:10px;color:#738398;text-align:center;margin-top:14px}
@media (max-width:1050px){
  .catalogue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:800px){
  .catalogue-layout{display:block}
  .filter-panel{position:fixed;z-index:1200;top:0;left:0;bottom:0;width:min(340px,88vw);border-radius:0;overflow:auto;transform:translateX(-105%);transition:transform .25s ease}
  .filter-panel.open{transform:none}
  .filter-close{display:block}
  .mobile-filter-btn{display:inline-block;margin-right:10px}
  .catalogue-toolbar{align-items:flex-end}
  .catalogue-toolbar>div{display:flex;align-items:center}
  .catalogue-toolbar p{display:inline}
  .catalogue-toolbar:before{content:"";position:fixed;z-index:1190;inset:0;background:rgba(4,18,36,.45);opacity:0;visibility:hidden;transition:.2s}
  body.filter-open .catalogue-toolbar:before{opacity:1;visibility:visible}
  .course-detail-head{grid-template-columns:1fr}
  .detail-hero-art{max-width:500px}
}
@media (max-width:620px){
  .hero-stat-row{gap:16px;flex-wrap:wrap}
  .hero-stat-row div{min-width:120px}
  .catalogue-section{padding:45px 0 65px}
  .catalogue-toolbar{display:block}
  .sort-form{margin-top:12px}
  .sort-form select{flex:1}
  .catalogue-grid{grid-template-columns:1fr}
  .catalogue-cta .container{display:block}
  .catalogue-cta .btn{margin-top:22px}
  .curriculum-grid,.outcomes-grid{grid-template-columns:1fr}
  .course-detail-head h1{font-size:38px;letter-spacing:-1px}
  .course-detail-head p{font-size:15px}
  .detail-hero-art img,.detail-hero-art>div{height:230px}
  .lesson-row{grid-template-columns:38px 1fr}
  .lesson-status{display:none}
}

/* =========================================================
   JOVATECH — STUDENT PORTAL
   ========================================================= */
.auth-page{padding:85px 0;min-height:70vh;background:linear-gradient(135deg,#f7faff,#fff)}
.auth-grid{display:grid;grid-template-columns:1fr 480px;gap:80px;align-items:center;max-width:1080px}
.auth-pitch h1{font-size:clamp(38px,5vw,62px);line-height:1.05;letter-spacing:-2px;max-width:600px;margin:9px 0 18px}
.auth-pitch p{max-width:580px;color:#6b7b8f;font-size:16px;line-height:1.8}
.auth-points{display:flex;flex-direction:column;gap:10px;margin-top:28px;font-size:13px;font-weight:800;color:#31455d}
.auth-points span{display:block}
.auth-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:32px;box-shadow:0 20px 55px rgba(12,38,70,.09)}
.auth-card h2{margin:8px 0 5px}
.auth-card .muted{font-size:12px}
.auth-card .muted a{color:var(--blue);font-weight:800}
.auth-form{margin-top:25px}
.form-field{margin-bottom:16px}
.form-field label{display:block;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:#617288;margin-bottom:7px}
.form-field input{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:10px;padding:12px 13px;outline:0;font:inherit;font-size:13px}
.form-field input:focus{border-color:#7aa9ef;box-shadow:0 0 0 3px rgba(17,103,232,.08)}
.form-error{display:block;color:#bd3e4b;font-size:11px;margin-top:5px}
.dashboard-hero{padding:52px 0 62px;background:linear-gradient(120deg,#071a35,#0b2d5d);color:#fff}
.dashboard-welcome{display:flex;justify-content:space-between;align-items:center;gap:30px}
.dashboard-welcome h1{margin:8px 0 8px;font-size:clamp(32px,4vw,52px);letter-spacing:-1.5px}
.dashboard-welcome p{color:#b9cadc;margin:0}
.dashboard-section{padding:58px 0 85px;background:#f7f9fc}
.dashboard-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:-95px;position:relative;margin-bottom:60px}
.dashboard-stats>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 15px 40px rgba(15,38,65,.07)}
.dashboard-stats span{display:block;color:#718095;font-size:9px;font-weight:900;letter-spacing:1px}
.dashboard-stats strong{display:block;color:var(--navy);font-size:31px;margin:4px 0}
.dashboard-stats small{color:#78879a;font-size:11px}
.dashboard-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:20px}
.dashboard-heading h2{margin:5px 0 0}
.text-link{color:var(--blue);font-weight:800;font-size:12px}
.student-course-list{display:flex;flex-direction:column;gap:13px}
.student-course{display:grid;grid-template-columns:110px 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px;box-shadow:0 8px 28px rgba(15,38,65,.04)}
.student-course-art{height:105px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#071a35,#1167e8);color:#fff;font-size:33px}
.student-course-info h3{margin:4px 0 5px;font-size:17px}
.student-course-info p{margin:0 0 11px;color:#718095;font-size:11px;max-width:650px}
.course-category{font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:var(--blue);font-weight:900}
.progress-track{height:7px;border-radius:99px;background:#e9eef4;overflow:hidden;max-width:520px}
.progress-track span{display:block;height:100%;border-radius:99px;background:#1167e8}
.student-course-info>small{font-size:9px;color:#738297;display:block;margin-top:5px}
.student-course-action{display:flex;flex-direction:column;align-items:end;gap:13px}
.status-pill{font-size:9px;text-transform:uppercase;letter-spacing:.5px;font-weight:900;border-radius:99px;padding:6px 8px;background:#eef5ff;color:#2365a9}
.status-pill.completed{background:#eaf8f0;color:#147345}
.status-pill.paused{background:#fff4df;color:#9a6512}
.dashboard-empty{text-align:center;background:#fff;border:1px dashed #cad5e2;border-radius:18px;padding:55px 25px}
.dashboard-empty>div{font-size:40px}
.dashboard-empty h3{margin:10px 0 5px}
.dashboard-empty p{color:#728195;max-width:500px;margin:0 auto 20px;font-size:13px}
.portal-nav{display:flex;align-items:center;gap:14px;margin-left:auto}
.portal-nav a{font-size:11px;font-weight:800;color:inherit}
.portal-nav .nav-apply{background:var(--blue);color:#fff;padding:9px 12px;border-radius:8px}
@media(max-width:800px){
  .auth-grid{grid-template-columns:1fr;gap:35px}
  .auth-pitch{text-align:center}
  .auth-pitch p{margin-left:auto;margin-right:auto}
  .auth-points{align-items:center}
  .dashboard-stats{margin-top:25px}
  .student-course{grid-template-columns:85px 1fr}
  .student-course-art{height:85px}
  .student-course-action{grid-column:2;align-items:start;flex-direction:row}
  .portal-nav{margin-left:0}
}
@media(max-width:560px){
  .auth-page{padding:50px 0}
  .auth-card{padding:22px}
  .dashboard-welcome{display:block}
  .dashboard-welcome .btn{margin-top:20px}
  .dashboard-stats{grid-template-columns:1fr}
  .dashboard-heading{display:block}
  .dashboard-heading .text-link{display:inline-block;margin-top:9px}
  .student-course{grid-template-columns:1fr}
  .student-course-art{height:120px}
  .student-course-action{grid-column:auto}
}

/* =========================================================
   JOVATECH — LEARNING ENVIRONMENT
   ========================================================= */
.learning-page{background:#f7f9fc;min-height:75vh}
.learning-top{background:#071a35;color:#fff;padding:25px 0}
.learning-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px}
.learning-topbar a{color:#b9c9dc;font-size:11px;font-weight:800}
.learning-topbar a:hover{color:#fff}
.learning-course-name{font-size:12px;font-weight:800;color:#dce7f2}
.learning-layout{display:grid;grid-template-columns:280px 1fr;min-height:calc(100vh - 130px)}
.lesson-sidebar{background:#fff;border-right:1px solid var(--line);padding:28px 18px}
.lesson-sidebar .eyebrow{display:block;margin-bottom:6px}
.lesson-sidebar h3{font-size:17px;margin:0 0 17px}
.lesson-progress-label{display:flex;justify-content:space-between;font-size:10px;color:#6d7c90;font-weight:800;margin-bottom:6px}
.lesson-progress-track{height:7px;background:#e8edf3;border-radius:99px;overflow:hidden;margin-bottom:23px}
.lesson-progress-track span{height:100%;display:block;background:#1167e8;border-radius:99px}
.lesson-nav{display:flex;flex-direction:column;gap:5px}
.lesson-nav a{display:grid;grid-template-columns:30px 1fr;gap:8px;padding:10px;border-radius:9px;color:#516277;font-size:11px;font-weight:700}
.lesson-nav a:hover{background:#f1f6fd;color:#1167e8}
.lesson-nav a.active{background:#eaf3ff;color:#1167e8}
.lesson-nav .lesson-index{font-size:9px;color:#8391a2;font-weight:900}
.lesson-main{padding:45px 55px;max-width:950px;width:100%;box-sizing:border-box}
.lesson-breadcrumb{font-size:11px;color:#77879a;margin-bottom:30px}
.lesson-breadcrumb a{color:#1167e8;font-weight:800}
.lesson-main h1{font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-1.5px;margin:7px 0 13px}
.lesson-summary{color:#6c7b8f;font-size:14px;line-height:1.8;max-width:750px}
.lesson-content-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;margin-top:30px;box-shadow:0 12px 35px rgba(15,38,65,.05)}
.lesson-content-card h2{font-size:18px;margin-top:0}
.lesson-note{padding:18px;background:#f3f7fc;border-left:3px solid #1167e8;border-radius:0 10px 10px 0;color:#53657a;font-size:13px;line-height:1.7}
.resource-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:13px;padding:16px;margin-top:20px}
.resource-card strong{display:block;font-size:12px}
.resource-card small{color:#7a899a;font-size:10px}
.lesson-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:30px}
.lesson-actions .next-prev{display:flex;gap:8px}
.lesson-complete{border:0;cursor:pointer}
.lesson-complete-note{font-size:10px;color:#748397}
.lesson-open{cursor:pointer;color:#1167e8!important}
.lesson-open:hover{background:#eaf3ff!important}
@media(max-width:850px){
  .learning-layout{grid-template-columns:1fr}
  .lesson-sidebar{border-right:0;border-bottom:1px solid var(--line)}
  .lesson-nav{display:grid;grid-template-columns:repeat(2,1fr)}
  .lesson-main{padding:35px 20px}
}
@media(max-width:520px){
  .learning-topbar{align-items:flex-start}
  .learning-course-name{max-width:180px;text-align:right}
  .lesson-nav{grid-template-columns:1fr}
  .lesson-content-card{padding:20px}
  .lesson-actions{display:block}
  .lesson-actions .next-prev{margin-top:12px}
}

/* =========================================================
   JOVATECH — QUIZZES & ASSIGNMENTS
   ========================================================= */
.assessment-page{background:#f7f9fc;min-height:75vh;padding:60px 0 90px}
.assessment-wrap{max-width:900px}
.assessment-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:28px}
.assessment-head h1{font-size:clamp(32px,4vw,52px);letter-spacing:-1.5px;margin:7px 0 10px}
.assessment-head p{color:#718095;font-size:13px;line-height:1.7;max-width:650px}
.pass-mark{white-space:nowrap;padding:9px 12px;border-radius:99px;background:#eaf3ff;color:#1167e8;font-size:10px;font-weight:900}
.quiz-form{display:flex;flex-direction:column;gap:15px}
.question-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:24px;box-shadow:0 9px 28px rgba(15,38,65,.04)}
.question-card legend{font-weight:900;color:#1a2d45;font-size:15px;line-height:1.5;padding:0;width:100%}
.question-card legend span{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:8px;background:#eaf3ff;color:#1167e8;font-size:9px;margin-right:10px;vertical-align:middle}
.choice-list{display:flex;flex-direction:column;gap:8px;margin-top:18px}
.choice{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #e3e9f0;border-radius:10px;cursor:pointer;color:#53657a;font-size:12px}
.choice:hover{border-color:#8eb6ec;background:#f7fbff}
.choice input{accent-color:#1167e8}
.result-page{min-height:70vh;background:#f7f9fc;padding:75px 0}
.result-card{max-width:650px;text-align:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:50px 30px;box-shadow:0 18px 50px rgba(15,38,65,.08)}
.result-score{width:125px;height:125px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:20px auto;border:9px solid #e7edf4}
.result-score strong{font-size:32px;color:#132b47}
.result-score span{font-size:8px;font-weight:900;letter-spacing:1px}
.result-score.passed{border-color:#77c99a}
.result-score.passed span{color:#147345}
.result-score.needs-work{border-color:#efc56f}
.result-score.needs-work span{color:#9a6512}
.result-card h1{margin:10px 0}
.result-card p{color:#718095;line-height:1.7;font-size:13px}
.result-actions{display:flex;justify-content:center;gap:10px;margin-top:25px}
.assignment-instructions{background:#fff;border:1px solid var(--line);border-radius:17px;padding:27px;margin-bottom:17px;color:#596a7f;font-size:13px;line-height:1.8}
.assignment-instructions h2{color:#1a2d45;font-size:18px;margin-top:0}
.submission-status{background:#eef8f2;border:1px solid #d0eadb;border-radius:10px;padding:13px;color:#2d6f4b;font-size:11px;margin-bottom:17px}
.assignment-form{background:#fff;border:1px solid var(--line);border-radius:17px;padding:27px}
.assignment-form label{display:block;font-size:10px;font-weight:900;text-transform:uppercase;color:#64748a;letter-spacing:.7px;margin-bottom:8px}
.assignment-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--line);border-radius:11px;padding:14px;resize:vertical;font:inherit;font-size:13px;outline:0;margin-bottom:16px}
.assignment-form textarea:focus{border-color:#78a9e8;box-shadow:0 0 0 3px rgba(17,103,232,.08)}
.assessment-links{margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}
.assessment-links h3{margin:5px 0 15px}
.assessment-link-list{display:flex;flex-direction:column;gap:8px}
.assessment-link-list a{display:grid;grid-template-columns:100px 1fr 25px;align-items:center;gap:10px;padding:14px 15px;border:1px solid var(--line);border-radius:10px;background:#fff}
.assessment-link-list a span{font-size:9px;color:#1167e8;font-weight:900;text-transform:uppercase}
.assessment-link-list a strong{font-size:12px;color:#263b54}
.assessment-link-list a b{color:#1167e8}
@media(max-width:650px){
 .assessment-head{display:block}
 .pass-mark{display:inline-block;margin-top:10px}
 .result-actions{flex-direction:column}
 .assessment-link-list a{grid-template-columns:75px 1fr 20px}
}

/* =========================================================
   JOVATECH — CERTIFICATES
   ========================================================= */
.certificate-page{background:#f4f7fb;min-height:75vh;padding:45px 0 80px}
.certificate-actions{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}
.certificate-paper{max-width:1000px;margin:0 auto;background:#fff;padding:24px;box-shadow:0 20px 55px rgba(15,38,65,.10);border:1px solid #dce5ee}
.certificate-inner{min-height:540px;border:2px solid #0c2c4d;outline:1px solid #91a4b7;outline-offset:-10px;padding:75px 55px 45px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box}
.certificate-brand{font-size:23px;font-weight:900;letter-spacing:1.5px;color:#0c2c4d}
.certificate-subtitle{font-size:9px;letter-spacing:2px;font-weight:800;color:#708296;margin-top:8px}
.certificate-title{font-size:28px;letter-spacing:1px;font-weight:900;color:#17293e;margin:45px 0 20px}
.certificate-inner p{font-size:12px;color:#687a8e;margin:6px 0}
.certificate-inner h1{font-size:34px;color:#0c2c4d;margin:14px 0;border-bottom:1px solid #a9b8c7;padding:0 30px 8px}
.certificate-inner h2{font-size:20px;color:#17293e;margin:13px 0 28px}
.certificate-meta{width:80%;border-top:1px solid #dbe3ea;margin-top:20px;padding-top:17px;display:flex;justify-content:center;gap:45px;font-size:9px;color:#75869a;text-transform:uppercase;letter-spacing:.6px}
.certificate-meta b{color:#1d3249}
.certificate-verify-note{font-size:8px;color:#8a99a8;margin-top:30px}
.verify-print-link{margin-top:18px}
.dashboard-certificates{margin-top:40px}
.certificate-list{display:flex;flex-direction:column;gap:9px}
.certificate-row{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px 15px}
.certificate-row>div{display:flex;align-items:center;gap:10px}
.certificate-row strong{display:block;font-size:12px;color:#243950}
.certificate-row small{display:block;color:#8290a0;font-size:9px;margin-top:3px}
.certificate-mini{display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#eaf7ef;color:#197447;font-weight:900}
@media(max-width:650px){
 .certificate-paper{padding:12px}
 .certificate-inner{min-height:470px;padding:55px 25px 30px}
 .certificate-brand{font-size:17px}
 .certificate-title{font-size:20px;margin-top:30px}
 .certificate-inner h1{font-size:25px}
 .certificate-meta{width:100%;gap:15px;flex-direction:column}
 .certificate-actions{flex-direction:column}
 .certificate-row{align-items:flex-start;flex-direction:column}
}
@media print{
 body{background:#fff!important}
 header,footer,.certificate-actions{display:none!important}
 .certificate-page{padding:0!important;background:#fff!important}
 .certificate-paper{box-shadow:none;border:0;padding:0;max-width:none}
 .certificate-inner{min-height:650px}
}

/* =========================================================
   JOVATECH — ADVANCED MOTION & INTERACTION
   ========================================================= */
:root{scroll-behavior:smooth}
body{overflow-x:hidden}
.site-header{transition:background .25s ease,box-shadow .25s ease,transform .25s ease}
.site-header.scrolled{background:rgba(255,255,255,.94);backdrop-filter:blur(13px);box-shadow:0 8px 30px rgba(15,38,65,.08)}
.scroll-progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:99999;background:#1167e8;transform-origin:left center;transform:scaleX(0);pointer-events:none}
.back-to-top{position:fixed;right:22px;bottom:22px;width:43px;height:43px;border:1px solid var(--line,#dbe4ed);border-radius:50%;background:#fff;color:#1167e8;font-size:18px;font-weight:900;box-shadow:0 12px 30px rgba(15,38,65,.14);cursor:pointer;z-index:999;opacity:0;visibility:hidden;transform:translateY(12px);transition:.25s ease}
.back-to-top.show{opacity:1;visibility:visible;transform:none}
.btn,button{position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 9px 24px rgba(17,103,232,.16)}
.js-ripple{position:absolute;width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.45);transform:translate(-50%,-50%) scale(0);animation:jsRipple .6s ease-out forwards;pointer-events:none}
@keyframes jsRipple{to{transform:translate(-50%,-50%) scale(28);opacity:0}}
.js-enabled .reveal,.js-enabled .reveal-up,.js-enabled .reveal-left,.js-enabled .reveal-right,.js-enabled .stagger-item{opacity:0;transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.js-enabled .reveal-up{transform:translateY(28px)}
.js-enabled .reveal-left{transform:translateX(-28px)}
.js-enabled .reveal-right{transform:translateX(28px)}
.js-enabled .reveal{transform:scale(.97)}
.js-enabled .is-visible{opacity:1;transform:none}
.stagger-item:nth-child(2){transition-delay:.07s}.stagger-item:nth-child(3){transition-delay:.14s}.stagger-item:nth-child(4){transition-delay:.21s}.stagger-item:nth-child(5){transition-delay:.28s}.stagger-item:nth-child(6){transition-delay:.35s}
.js-tilt{will-change:transform;transition:transform .18s ease,box-shadow .18s ease}
.message{position:relative;transition:opacity .3s ease,transform .3s ease}
.message-hide{opacity:0!important;transform:translateY(-8px)!important}
.message-close{position:absolute;right:7px;top:4px;border:0;background:transparent;color:inherit;font-size:18px;line-height:1;cursor:pointer;padding:3px}
body.modal-open{overflow:hidden}
.js-modal{position:fixed;inset:0;background:rgba(7,26,53,.58);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;z-index:10000;opacity:0;visibility:hidden;transition:.25s ease}
.js-modal.is-open{opacity:1;visibility:visible}
.js-modal .modal-panel{max-width:620px;width:100%;background:#fff;border-radius:18px;padding:28px;box-shadow:0 30px 80px rgba(0,0,0,.25);transform:translateY(18px) scale(.98);transition:.3s ease}
.js-modal.is-open .modal-panel{transform:none}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-question{cursor:pointer}
.quiz-progress{padding:12px 14px;background:#fff;border:1px solid var(--line);border-radius:11px;margin-bottom:2px}
.quiz-progress-text{display:block;font-size:9px;color:#64748a;font-weight:900;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.quiz-progress>div{height:5px;background:#e8edf3;border-radius:99px;overflow:hidden}
.quiz-progress i{display:block;width:0;height:100%;background:#1167e8;border-radius:99px;transition:width .3s ease}
.character-counter{font-size:9px;color:#8391a2;text-align:right;margin:-10px 0 16px}
.nav-open{overflow:hidden}
.page-ready{animation:pageIn .35s ease both}
@keyframes pageIn{from{opacity:.65}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
 .js-enabled .reveal,.js-enabled .reveal-up,.js-enabled .reveal-left,.js-enabled .reveal-right,.js-enabled .stagger-item{opacity:1;transform:none}
}

/* =========================================================
   JOVATECH — ACADEMY MANAGEMENT DASHBOARD
   ========================================================= */
.management-shell{background:#f5f8fb;min-height:80vh;padding:52px 0 80px}
.management-head{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:30px}
.management-head h1{font-size:clamp(28px,4vw,42px);line-height:1.05;margin:7px 0 10px;color:#142b42}
.management-head p{max-width:670px;color:#6f8092;margin:0;font-size:13px;line-height:1.7}
.management-actions{display:flex;gap:10px;flex-wrap:wrap}
.management-stats{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:20px}
.management-stat{background:#fff;border:1px solid #e0e8ef;border-radius:15px;padding:17px;box-shadow:0 7px 25px rgba(15,38,65,.045);position:relative;overflow:hidden}
.management-stat:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;background:#edf5ff;right:-30px;bottom:-30px}
.stat-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:#f0f5fa;font-size:16px;margin-bottom:12px}
.management-stat small{display:block;color:#7c8c9d;font-size:9px;text-transform:uppercase;letter-spacing:.7px;font-weight:900}
.management-stat strong{display:block;font-size:26px;color:#18324c;margin-top:3px;line-height:1.1}
.management-stat em{font-size:8px;color:#1b8a57;font-style:normal;font-weight:800}
.management-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:16px}
.management-card{background:#fff;border:1px solid #e0e8ef;border-radius:16px;padding:20px;box-shadow:0 8px 28px rgba(15,38,65,.045);min-width:0}
.management-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:16px}
.management-card-head h2{font-size:18px;color:#203850;margin:4px 0 0}
.text-link{font-size:10px;font-weight:900;color:#1167e8;text-decoration:none;white-space:nowrap}
.course-table-wrap{overflow:auto}
.management-table{width:100%;border-collapse:collapse;font-size:10px}
.management-table th{text-align:left;color:#8a98a7;text-transform:uppercase;letter-spacing:.5px;font-size:8px;padding:9px 8px;border-bottom:1px solid #e8edf2}
.management-table td{padding:13px 8px;border-bottom:1px solid #edf1f5;color:#43566b;vertical-align:middle}
.management-table tr:last-child td{border-bottom:0}
.management-table td strong{display:block;color:#263d55;font-size:10px}
.management-table td small{display:block;color:#8b99a8;font-size:8px;margin-top:3px}
.progress-cell{min-width:110px}.progress-cell>span{display:block;text-align:right;font-size:8px;font-weight:900;color:#65778b;margin-bottom:4px}.progress-cell>div{height:5px;background:#edf1f5;border-radius:99px;overflow:hidden}.progress-cell i{display:block;height:100%;background:#1167e8;border-radius:99px}
.quick-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.quick-action-grid a{border:1px solid #e3eaf1;border-radius:11px;padding:13px;text-decoration:none;transition:.2s ease;background:#fbfcfe}
.quick-action-grid a:hover{transform:translateY(-2px);border-color:#b9d2ee;box-shadow:0 8px 20px rgba(15,38,65,.07)}
.quick-action-grid a span{display:block;font-size:17px;margin-bottom:8px}.quick-action-grid b{display:block;color:#243b54;font-size:10px}.quick-action-grid small{display:block;color:#8a98a8;font-size:8px;margin-top:3px}
.activity-list{display:flex;flex-direction:column}
.activity-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f5}
.activity-row:last-child{border-bottom:0}
.avatar-circle{flex:0 0 34px;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf2fb;color:#1167e8;font-size:11px;font-weight:900}
.activity-main{min-width:0;flex:1}.activity-main strong{display:block;color:#2a4158;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-main span{display:block;color:#8997a6;font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.status-pill{font-size:7px;text-transform:uppercase;font-weight:900;padding:5px 7px;border-radius:99px;white-space:nowrap;background:#eef2f5;color:#617182}
.status-new{background:#fff5db;color:#9a6c00}.status-reviewing{background:#eaf3ff;color:#1464b4}.status-accepted{background:#e7f8ef;color:#1c7a4e}.status-rejected{background:#ffebeb;color:#b14242}
.mini-progress{width:75px}.mini-progress i{display:block;height:4px;background:#1167e8;border-radius:99px;max-width:100%}.mini-progress:before{content:"";display:block;height:4px;background:#e9eef3;border-radius:99px;position:absolute;width:75px;z-index:0}.mini-progress i{position:relative;z-index:1}.mini-progress small{display:block;text-align:right;color:#7b8b9a;font-size:7px;margin-top:4px}
.activity-row time{font-size:8px;color:#8998a7}
.empty-state{padding:22px 5px;text-align:center;color:#8493a2;font-size:10px}
.management-grid>.management-card:nth-child(3){grid-column:1}.management-grid>.management-card:nth-child(4){grid-column:2}.management-grid>.management-card:nth-child(5){grid-column:1}
.management-footer-note{margin-top:16px;padding:16px 18px;border:1px solid #dbe6f0;border-radius:13px;background:#eef6ff;display:flex;gap:12px;color:#50677e}
.management-footer-note>span{font-size:18px}.management-footer-note strong{display:block;color:#29445e;font-size:10px}.management-footer-note p{margin:4px 0 0;font-size:9px;line-height:1.6}
.nav-toggle{display:none}
@media(max-width:1050px){.management-stats{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.management-head{align-items:flex-start;flex-direction:column}.management-grid{grid-template-columns:1fr}.management-grid>.management-card:nth-child(3),.management-grid>.management-card:nth-child(4),.management-grid>.management-card:nth-child(5){grid-column:auto}}
@media(max-width:560px){.management-shell{padding-top:30px}.management-stats{grid-template-columns:repeat(2,1fr)}.management-stat strong{font-size:22px}.management-card{padding:15px}.management-actions{width:100%}.management-actions .btn{flex:1;text-align:center}.quick-action-grid{grid-template-columns:1fr}.course-table-wrap{margin:0 -5px}}

.staff-dashboard-float{position:fixed;left:18px;bottom:18px;z-index:998;background:#142f4a;color:#fff;text-decoration:none;font-size:9px;font-weight:900;padding:9px 12px;border-radius:99px;box-shadow:0 9px 25px rgba(15,38,65,.18);transition:.2s ease}
.staff-dashboard-float:hover{transform:translateY(-2px);background:#1167e8}

/* =========================================================
   JOVATECH — STUDENT EXPERIENCE
   ========================================================= */
.v9-dashboard-hero{background:linear-gradient(135deg,#071a35,#123b61);color:#fff;padding:48px 0}
.v9-dashboard-head{display:flex;align-items:center;justify-content:space-between;gap:25px}
.v9-dashboard-head h1{font-size:clamp(27px,4vw,42px);margin:8px 0 9px}.v9-dashboard-head p{margin:0;color:#c5d4e4;font-size:12px}.v9-head-actions{display:flex;gap:10px;flex-wrap:wrap}
.v9-dashboard-main{background:#f5f8fb;padding:25px 0 75px}
.v9-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.v9-stat{background:#fff;border:1px solid #e0e8ef;border-radius:14px;padding:17px;box-shadow:0 8px 25px rgba(15,38,65,.04)}.v9-stat span{display:block;font-size:8px;letter-spacing:.7px;font-weight:900;color:#7e8e9e}.v9-stat strong{display:block;font-size:27px;color:#17334d;margin:5px 0 2px}.v9-stat small{font-size:8px;color:#8a99a8}
.v9-continue{background:#fff;border:1px solid #dce7f0;border-radius:16px;padding:20px 22px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:20px}.v9-continue h2{font-size:20px;color:#203a53;margin:5px 0}.v9-continue p{font-size:10px;color:#7c8b9a;margin:0 0 12px}
.v9-progress{height:6px;background:#e9eef3;border-radius:99px;overflow:hidden;min-width:120px}.v9-progress i{display:block;height:100%;background:#1167e8;border-radius:99px}
.v9-continue small{display:block;color:#7b8b9a;font-size:8px;margin-top:5px}
.v9-columns{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.v9-panel{background:#fff;border:1px solid #e0e8ef;border-radius:16px;padding:20px;box-shadow:0 8px 25px rgba(15,38,65,.04);min-width:0}
.v9-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.v9-panel-head h2{font-size:18px;color:#203850;margin:4px 0}.v9-panel-head>a{font-size:9px;font-weight:900;color:#1167e8;text-decoration:none;white-space:nowrap}
.v9-course-row{display:grid;grid-template-columns:38px 1fr 42px;gap:11px;align-items:center;padding:13px 0;border-bottom:1px solid #edf1f5}.v9-course-row:last-child,.v9-list-row:last-child,.v9-certificate-row:last-child{border-bottom:0}.v9-course-icon{width:38px;height:38px;display:grid;place-items:center;background:#edf5ff;border-radius:10px;color:#1167e8;font-weight:900}.v9-course-info{min-width:0}.v9-course-info strong,.v9-course-info small{display:block}.v9-course-info strong{font-size:10px;color:#2b4259;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v9-course-info small{font-size:8px;color:#8b99a8;margin:3px 0 6px}.v9-course-info .v9-progress{height:4px}.v9-course-row>b{font-size:9px;color:#5d7287;text-align:right}
.v9-list-row,.v9-certificate-row{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #edf1f5}.v9-result-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#eef7f1;color:#1d8050;font-weight:900;font-size:11px;flex:0 0 28px}.v9-list-row>div,.v9-certificate-row>div{min-width:0;flex:1}.v9-list-row strong,.v9-list-row small,.v9-certificate-row strong,.v9-certificate-row small{display:block}.v9-list-row strong,.v9-certificate-row strong{font-size:9px;color:#2b4259}.v9-list-row small,.v9-certificate-row small{font-size:7px;color:#8998a7;margin-top:3px}.v9-list-row>b{font-size:9px;color:#536b81}.v9-certificate-row>span{font-size:18px}.v9-certificate-row>a{font-size:8px;color:#1167e8;font-weight:900;text-decoration:none}
.v9-empty{text-align:center;padding:22px 8px;color:#8392a1;font-size:9px;line-height:1.8}.v9-empty a{color:#1167e8;font-weight:900;text-decoration:none}
.v9-page-head{background:#f3f7fb;border-bottom:1px solid #e0e8ef;padding:45px 0 35px}.v9-page-head h1{font-size:clamp(28px,4vw,40px);color:#17334d;margin:7px 0}.v9-page-head p{color:#7b8b9a;font-size:11px;margin:0}
.v9-profile-wrap,.v9-progress-page{background:#f7f9fb;padding:28px 0 70px}.v9-profile-grid{display:grid;grid-template-columns:280px 1fr;gap:16px}.v9-profile-card,.v9-form-card{background:#fff;border:1px solid #e0e8ef;border-radius:16px;padding:24px;box-shadow:0 8px 25px rgba(15,38,65,.04)}.v9-profile-card{text-align:center}.v9-avatar{width:88px;height:88px;border-radius:50%;overflow:hidden;margin:0 auto 12px;display:grid;place-items:center;background:#eaf2fb;color:#1167e8;font-size:30px;font-weight:900}.v9-avatar img{width:100%;height:100%;object-fit:cover}.v9-profile-card h2{font-size:17px;color:#243b53;margin:0}.v9-profile-card p{font-size:9px;color:#8998a7;margin:5px 0 18px;word-break:break-word}.v9-form-card h2{font-size:21px;color:#203850;margin:5px 0 20px}.v9-profile-form{display:grid;grid-template-columns:1fr 1fr;gap:15px}.v9-field label{display:block;font-size:9px;color:#617387;font-weight:900;margin-bottom:6px}.v9-field input,.v9-field textarea,.v9-field select{width:100%;box-sizing:border-box;border:1px solid #dce5ed;border-radius:9px;padding:10px;font:inherit;font-size:10px;outline:none;background:#fff}.v9-field textarea{resize:vertical}.v9-field input:focus,.v9-field textarea:focus{border-color:#1167e8;box-shadow:0 0 0 3px rgba(17,103,232,.08)}.v9-field:nth-child(4){grid-column:1/-1}.v9-profile-form button{grid-column:1/-1;justify-self:start}.v9-error{display:block;color:#b54444;font-size:8px;margin-top:4px}
.v9-big-progress{padding:15px 0;border-bottom:1px solid #edf1f5}.v9-big-progress:last-child{border-bottom:0}.v9-big-progress>div:first-child{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}.v9-big-progress strong{font-size:10px;color:#2b4259}.v9-big-progress small{font-size:8px;color:#8998a7}.v9-big-progress>b{float:right;font-size:9px;color:#1167e8;margin-top:-20px}.v9-big-progress .v9-progress{clear:both}
@media(max-width:850px){.v9-stat-grid{grid-template-columns:repeat(2,1fr)}.v9-profile-grid{grid-template-columns:1fr}.v9-profile-card{text-align:left}.v9-avatar{margin:0 0 12px}.v9-profile-form{grid-template-columns:1fr}}
@media(max-width:650px){.v9-dashboard-head,.v9-continue{align-items:flex-start;flex-direction:column}.v9-columns{grid-template-columns:1fr}.v9-stat-grid{gap:8px}.v9-stat{padding:13px}.v9-stat strong{font-size:22px}.v9-panel{padding:15px}}

/* =========================================================
   JOVATECH — COMPLETE COURSE LEARNING WORKSPACE
   ========================================================= */
.v10-player-hero{background:#071a35;color:#fff;padding:42px 0 48px}
.v10-player-hero .back-link{color:#b8cbe0}
.v10-player-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-top:20px}
.v10-player-head h1{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:7px 0 10px}
.v10-player-head p{color:#c6d3df;max-width:690px;line-height:1.7;font-size:13px;margin:0}
.v10-player-progress{width:250px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:16px}
.v10-player-progress strong{font-size:28px;display:block}.v10-player-progress span{font-size:9px;color:#b8cbe0;text-transform:uppercase;letter-spacing:.6px}.v10-player-progress>div{height:6px;background:rgba(255,255,255,.14);border-radius:99px;margin-top:10px;overflow:hidden}.v10-player-progress i{display:block;height:100%;background:#fff;border-radius:99px}
.v10-player-main{background:#f5f8fb;padding:30px 0 75px}.v10-player-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}
.v10-player-card{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 8px 26px rgba(15,38,65,.045)}
.v10-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.v10-card-head h2{font-size:19px;margin:4px 0 0;color:#1d3852}.v10-count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:99px;background:#edf5ff;color:#1268df;font-size:10px;font-weight:900}
.v10-lesson-list{display:flex;flex-direction:column}.v10-lesson-item{display:flex;align-items:center;gap:13px;padding:14px 4px;border-top:1px solid #edf1f5;text-decoration:none;transition:.2s ease}.v10-lesson-item:hover{transform:translateX(3px);background:#fbfcfe}.v10-lesson-no{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:10px;background:#f0f4f8;color:#49647e;font-size:10px;font-weight:900}.v10-lesson-copy{min-width:0;flex:1}.v10-lesson-copy b{display:block;color:#243e58;font-size:11px}.v10-lesson-copy small{display:block;color:#8594a3;font-size:8px;margin-top:4px;line-height:1.5}.v10-open{color:#1268df;font-size:9px;font-weight:900;white-space:nowrap}
.v10-assessment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.v10-assessment{padding:14px;border:1px solid #e2e9ef;border-radius:11px;text-decoration:none;background:#fbfcfe;transition:.2s ease}.v10-assessment:hover{border-color:#bdd3e9;transform:translateY(-2px)}.v10-assessment span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#edf5ff;color:#1268df;font-weight:900;margin-bottom:9px}.v10-assessment b{display:block;color:#263f58;font-size:10px}.v10-assessment small{display:block;color:#8594a3;font-size:8px;margin-top:4px}
.v10-sticky{position:sticky;top:90px}.v10-sticky h3{color:#203b55;font-size:16px;line-height:1.4;margin:6px 0 16px}.v10-side-stat{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #edf1f5;font-size:9px}.v10-side-stat span{color:#8493a2}.v10-side-stat b{color:#344d65}.v10-empty{padding:25px 5px;text-align:center;color:#8291a0;font-size:10px;line-height:1.6}
@media(max-width:850px){.v10-player-head{align-items:flex-start;flex-direction:column}.v10-player-progress{width:100%;max-width:360px}.v10-player-grid{grid-template-columns:1fr}.v10-sticky{position:static}}
@media(max-width:560px){.v10-player-hero{padding:30px 0}.v10-player-main{padding-top:18px}.v10-player-card{padding:15px}.v10-assessment-grid{grid-template-columns:1fr}.v10-open{font-size:8px}}

.v10-stagger{animation:v10SlideIn .42s ease both;animation-delay:var(--v10-delay,0ms)}
@keyframes v10SlideIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* =========================================================
   JOVATECH — FUNCTIONAL LEARNING SYSTEM
   ========================================================= */
.v11-player-hero{background:#071a35;color:#fff;padding:42px 0 48px}
.v11-player-hero .back-link,.v11-lesson-hero .back-link{color:#b8cbe0;text-decoration:none;font-size:10px;font-weight:800;display:block;margin-bottom:18px}
.v11-player-head{display:flex;align-items:end;justify-content:space-between;gap:30px}.v11-player-head h1{font-size:clamp(30px,4vw,48px);line-height:1.05;margin:7px 0 10px}.v11-player-head p{color:#c6d3df;max-width:700px;line-height:1.7;font-size:13px;margin:0}
.v11-player-progress{width:260px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:15px;padding:16px}.v11-player-progress strong{display:block;font-size:29px}.v11-player-progress span{font-size:8px;color:#b8cbe0;text-transform:uppercase;letter-spacing:.6px}.v11-player-progress>div{height:6px;background:rgba(255,255,255,.14);border-radius:99px;overflow:hidden;margin-top:10px}.v11-player-progress i,.v11-lesson-progress i{display:block;height:100%;background:#fff;border-radius:99px}
.v11-player-main,.v11-lesson-main{background:#f5f8fb;padding:30px 0 75px}.v11-player-grid,.v11-lesson-grid{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}
.v11-card{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 8px 26px rgba(15,38,65,.045)}.v11-card-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.v11-card-head h2{font-size:19px;color:#1d3852;margin:4px 0 0}
.v11-module{border:1px solid #e5ebf0;border-radius:12px;margin-bottom:12px;overflow:hidden}.v11-module-head{padding:13px 15px;background:#f8fafc}.v11-module-head span{display:block;color:#1268df;font-size:7px;font-weight:900;letter-spacing:1px}.v11-module-head strong{display:block;color:#243d56;font-size:11px;margin-top:3px}.v11-module-head small{display:block;color:#8291a0;font-size:8px;margin-top:3px}
.v11-lesson-row{display:flex;align-items:center;gap:11px;padding:12px 14px;border-top:1px solid #edf1f5;text-decoration:none;transition:.2s ease}.v11-lesson-row:hover{background:#fbfcfe;transform:translateX(2px)}.v11-check{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:8px;background:#edf5ff;color:#1268df;font-size:9px;font-weight:900}.v11-lesson-row>span:nth-child(2){min-width:0;flex:1}.v11-lesson-row b{display:block;color:#29425a;font-size:10px}.v11-lesson-row small{display:block;color:#8795a3;font-size:8px;margin-top:3px;line-height:1.5}.v11-lesson-row em{font-style:normal;color:#1268df;font-size:8px;font-weight:900;white-space:nowrap}.v11-empty{padding:22px;text-align:center;color:#8392a0;font-size:9px}
.v11-assessment-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.v11-assessment{border:1px solid #e1e8ee;border-radius:11px;padding:14px;text-decoration:none;background:#fbfcfe;transition:.2s}.v11-assessment:hover{transform:translateY(-2px);border-color:#b8d1e9}.v11-assessment span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#edf5ff;color:#1268df;margin-bottom:8px;font-weight:900}.v11-assessment b{display:block;color:#2b435b;font-size:10px}.v11-assessment small{display:block;color:#8795a3;font-size:8px;margin-top:4px}
.v11-sticky{position:sticky;top:90px}.v11-sticky h3{color:#203b55;font-size:16px;line-height:1.4;margin:6px 0 16px}.v11-side-stat{display:flex;justify-content:space-between;padding:9px 0;border-top:1px solid #edf1f5;font-size:9px}.v11-side-stat span{color:#8493a2}.v11-side-stat b{color:#344d65}
.v11-lesson-hero{background:#071a35;color:#fff;padding:35px 0 42px}.v11-lesson-hero h1{font-size:clamp(28px,4vw,45px);margin:4px 0 8px}.v11-lesson-hero p{max-width:720px;color:#c5d2df;font-size:12px;line-height:1.7}.v11-lesson-progress{max-width:600px;margin-top:18px}.v11-lesson-progress span{display:block;font-size:8px;color:#b9c8d7;margin-bottom:6px}.v11-lesson-progress>div{height:6px;background:rgba(255,255,255,.14);border-radius:99px;overflow:hidden}
.v11-video{position:relative;aspect-ratio:16/9;background:#071a35;border-radius:12px;overflow:hidden;margin-bottom:22px}.v11-video iframe{width:100%;height:100%;border:0}.v11-lesson-content{color:#40566b;font-size:12px;line-height:1.85}.v11-lesson-content h2,.v11-lesson-content h3{color:#203b55}.v11-resource{display:inline-block;margin-top:15px;background:#edf5ff;color:#1268df;text-decoration:none;padding:10px 12px;border-radius:9px;font-size:9px;font-weight:900}.v11-lesson-actions{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #e9eef3;margin-top:25px;padding-top:18px}.v11-lesson-mini-list{display:flex;flex-direction:column;margin-top:12px}.v11-lesson-mini-list a{padding:9px 5px;border-bottom:1px solid #edf1f5;text-decoration:none;color:#52687c;font-size:9px;line-height:1.4}.v11-lesson-mini-list a span{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#f0f4f8;margin-right:7px;font-size:7px;font-weight:900}.v11-lesson-mini-list a.current{color:#1268df;font-weight:900;background:#f6faff}.v11-lesson-mini-list a.done span{background:#e6f7ef;color:#1c7c50}
.v11-upload-label{display:block;margin:12px 0;color:#5b6f82;font-size:9px;font-weight:800}.v11-upload-label input{display:block;margin-top:6px}
@media(max-width:850px){.v11-player-head{align-items:flex-start;flex-direction:column}.v11-player-progress{width:100%;max-width:380px}.v11-player-grid,.v11-lesson-grid{grid-template-columns:1fr}.v11-sticky{position:static}}
@media(max-width:560px){.v11-card{padding:15px}.v11-assessment-grid{grid-template-columns:1fr}.v11-lesson-actions{flex-wrap:wrap}.v11-lesson-actions form{order:-1;width:100%}.v11-lesson-actions form .btn{width:100%}}

/* =========================================================
   JOVATECH — INSTRUCTOR + ADMIN + ANALYTICS
   ========================================================= */
.v12-hero{background:#071a35;color:#fff;padding:48px 0}.v12-hero h1{font-size:clamp(30px,4vw,50px);line-height:1.08;margin:7px 0 10px}.v12-hero p{color:#c7d4e1;max-width:720px;line-height:1.7;font-size:12px}.v12-hero .back-link{display:block;color:#b9c8d7;text-decoration:none;font-size:9px;margin-bottom:17px}
.v12-main{background:#f5f8fb;padding:30px 0 75px}.v12-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.v12-stat{background:#fff;border:1px solid #e0e8ef;border-radius:14px;padding:18px;box-shadow:0 8px 22px rgba(15,38,65,.04)}.v12-stat b{display:block;color:#173b5e;font-size:25px;line-height:1.15}.v12-stat span{display:block;color:#8493a2;font-size:8px;text-transform:uppercase;letter-spacing:.6px;margin-top:5px}
.v12-card{background:#fff;border:1px solid #dfe7ef;border-radius:16px;padding:20px;margin-bottom:18px;box-shadow:0 8px 26px rgba(15,38,65,.045)}.v12-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:16px}.v12-head h1,.v12-head h2{color:#203b55;margin:4px 0 0;font-size:20px}.v12-course-row,.v12-submission,.v12-application,.v12-student,.v12-notification,.v12-analytics-row{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 0;border-top:1px solid #edf1f5;text-decoration:none}.v12-course-row b,.v12-submission b,.v12-application b,.v12-student b,.v12-notification b,.v12-analytics-row b{display:block;color:#2c465f;font-size:10px}.v12-course-row small,.v12-submission small,.v12-application small,.v12-notification small,.v12-analytics-row small{display:block;color:#8795a3;font-size:8px;margin-top:4px}.v12-course-row>span{font-size:8px;color:#1268df;font-weight:900}.v12-muted{color:#8795a3;font-size:9px}.v12-two{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.v12-sticky{position:sticky;top:90px}.v12-sticky h3{color:#203b55;font-size:17px}.v12-sticky p{font-size:9px;color:#748699}.v12-module{border:1px solid #e4ebf1;border-radius:10px;padding:12px;margin-bottom:10px}.v12-module>b{color:#24435d;font-size:10px}.v12-lesson{padding:9px 3px;border-top:1px solid #edf1f5;margin-top:7px;color:#5d7184;font-size:9px}.v12-lesson span{display:inline-grid;place-items:center;width:22px;height:22px;background:#edf5ff;color:#1268df;border-radius:6px;margin-right:7px;font-weight:900}.v12-note{padding:10px 0;border-top:1px solid #edf1f5}.v12-note b{display:block;color:#3b5268;font-size:9px}.v12-note small{display:block;color:#8795a3;font-size:8px;line-height:1.5;margin-top:3px}.v12-student span{font-size:9px;font-weight:900;color:#1268df}.v12-narrow{max-width:820px}.v12-response{background:#f8fafc;border:1px solid #e6edf2;border-radius:10px;padding:15px;color:#536a7d;font-size:10px;line-height:1.7;margin:15px 0}.v12-file{display:inline-block;padding:10px 12px;border-radius:8px;background:#edf5ff;color:#1268df;text-decoration:none;font-size:9px;font-weight:900}.v12-form{margin-top:20px}.v12-form label{display:block;color:#52697d;font-size:9px;font-weight:800;margin:13px 0}.v12-form input,.v12-form textarea{display:block;width:100%;box-sizing:border-box;margin-top:6px;border:1px solid #d9e3eb;border-radius:8px;padding:10px;font:inherit}.v12-application>div{flex:1}.v12-application p{color:#748698;font-size:8px;line-height:1.5}.v12-application form{display:flex;gap:6px;flex-wrap:wrap}.v12-notification{color:inherit}.v12-notification>div{flex:1}.v12-notification time{display:block;color:#9aa6b1;font-size:7px;margin-top:5px}.v12-notification i{font-style:normal;color:#1268df;font-size:7px;font-weight:900}.v12-notification.unread{background:#f7fbff;margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:8px}.v12-analytics-row>div:first-child{width:210px}.v12-bar{flex:1;height:8px;background:#eaf0f5;border-radius:99px;overflow:hidden}.v12-bar i{display:block;height:100%;background:#1268df;border-radius:99px}.v12-analytics-row>strong{width:42px;text-align:right;color:#234764;font-size:9px}.v12-notify-link{display:inline-block;margin-bottom:10px;background:#fff;border:1px solid #dfe7ef;border-radius:8px;padding:8px 10px;text-decoration:none;color:#1268df;font-size:8px;font-weight:900}
@media(max-width:850px){.v12-stat-grid{grid-template-columns:repeat(2,1fr)}.v12-two{grid-template-columns:1fr}.v12-sticky{position:static}.v12-analytics-row>div:first-child{width:150px}}
@media(max-width:560px){.v12-stat-grid{grid-template-columns:1fr 1fr}.v12-card{padding:15px}.v12-head{align-items:flex-start}.v12-application,.v12-submission,.v12-analytics-row{align-items:flex-start;flex-direction:column}.v12-analytics-row>div:first-child{width:100%}.v12-bar{width:100%;flex:auto}.v12-analytics-row>strong{width:auto}}


/* =========================================================
   JOVATECH — COLOURFUL PROFESSIONAL HERO EXPERIENCE
   ========================================================= */
.hero{isolation:isolate;min-height:650px;background:#061a37}
.hero-bg{background:
  radial-gradient(circle at 15% 20%,rgba(0,214,255,.28),transparent 28%),
  radial-gradient(circle at 85% 15%,rgba(138,67,255,.30),transparent 30%),
  radial-gradient(circle at 65% 90%,rgba(0,255,170,.18),transparent 30%),
  linear-gradient(120deg,#04152d 0%,#082b59 45%,#17134b 100%);
  opacity:1;animation:heroGradient 12s ease-in-out infinite alternate;}
.hero-bg:before,.hero-bg:after{content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.hero-bg:before{width:330px;height:330px;left:-90px;top:110px;background:radial-gradient(circle,rgba(0,213,255,.22),transparent 68%);animation:orbDrift 10s ease-in-out infinite}
.hero-bg:after{width:390px;height:390px;right:-120px;bottom:-140px;background:radial-gradient(circle,rgba(122,52,255,.25),transparent 68%);animation:orbDrift 13s ease-in-out infinite reverse}
.hero-grid{min-height:680px;grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr);gap:55px;padding:70px 0 105px}
.hero h1{ text-shadow:0 8px 35px rgba(0,0,0,.18)}
.hero h1 span{background:linear-gradient(90deg,#55e8ff,#9aff3f,#7d8cff);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% auto;animation:textGradient 5s ease infinite}
.hero-copy{position:relative;z-index:4}
.hero-copy:after{content:"";position:absolute;width:180px;height:180px;left:-70px;top:50px;background:radial-gradient(circle,rgba(0,226,255,.13),transparent 70%);z-index:-1;animation:pulseGlow 4s ease-in-out infinite}
.hero-visual{position:relative;min-height:560px;display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:3}
.hero-image-glow{position:absolute;width:430px;height:430px;border-radius:50%;background:conic-gradient(from 0deg,rgba(0,219,255,.5),rgba(145,65,255,.5),rgba(155,255,62,.45),rgba(0,219,255,.5));filter:blur(34px);opacity:.42;animation:spinGlow 14s linear infinite}
.hero-image-frame{position:relative;width:min(440px,100%);aspect-ratio:1/1;border:1px solid rgba(255,255,255,.28);border-radius:34px;padding:13px;background:linear-gradient(145deg,rgba(255,255,255,.20),rgba(255,255,255,.05));box-shadow:0 35px 90px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.25);backdrop-filter:blur(12px);transform:rotate(2deg);animation:heroFloat 6s ease-in-out infinite}
.hero-main-image{width:100%;height:100%;object-fit:cover;border-radius:25px;filter:saturate(1.12) contrast(1.03);animation:imagePulse 7s ease-in-out infinite;box-shadow:0 20px 45px rgba(0,0,0,.25)}
.hero-image-shine{position:absolute;inset:0;border-radius:25px;z-index:2;pointer-events:none;background:linear-gradient(115deg,transparent 25%,rgba(255,255,255,.28) 45%,transparent 62%);background-size:220% 100%;animation:shineSweep 5.5s ease-in-out infinite}
.floating-chip{position:absolute;z-index:5;padding:10px 14px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(5,20,45,.72);backdrop-filter:blur(12px);box-shadow:0 12px 30px rgba(0,0,0,.22);font-size:11px;font-weight:800;color:#fff;white-space:nowrap}
.chip-one{top:7%;left:-8%;animation:chipFloat 4.5s ease-in-out infinite}
.chip-two{right:-9%;top:46%;animation:chipFloat 5.5s ease-in-out infinite .6s}
.chip-three{left:2%;bottom:8%;animation:chipFloat 5s ease-in-out infinite 1s}
.hero-card{position:relative;width:min(430px,100%);margin-top:-100px;margin-left:auto;margin-right:-35px;z-index:6;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.055));border-color:rgba(255,255,255,.22);box-shadow:0 25px 65px rgba(0,0,0,.30);animation:cardFloat 7s ease-in-out infinite 1s}
.hero-orb{position:absolute;border-radius:50%;pointer-events:none;z-index:1;filter:blur(1px);opacity:.6}
.hero-orb-one{width:18px;height:18px;top:18%;left:47%;background:#55e8ff;box-shadow:0 0 35px #55e8ff;animation:particleFloat 6s ease-in-out infinite}
.hero-orb-two{width:11px;height:11px;top:72%;left:54%;background:#9aff3f;box-shadow:0 0 25px #9aff3f;animation:particleFloat 5s ease-in-out infinite 1s}
.hero-bottom{position:absolute;z-index:8;bottom:0;left:0;right:0;background:rgba(3,14,31,.58);border-top:1px solid rgba(255,255,255,.12);backdrop-filter:blur(15px)}
.hero-bottom-inner{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:18px;overflow:hidden}
.hero-bottom-inner span{font-size:10px;font-weight:800;letter-spacing:.5px;color:#d6e5f3;white-space:nowrap}
@keyframes heroGradient{0%{filter:hue-rotate(0deg);transform:scale(1)}100%{filter:hue-rotate(18deg);transform:scale(1.035)}}
@keyframes heroFloat{0%,100%{transform:rotate(2deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-12px)}}
@keyframes cardFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-10px) rotate(1deg)}}
@keyframes imagePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
@keyframes shineSweep{0%,35%{background-position:220% 0}65%,100%{background-position:-40% 0}}
@keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
@keyframes orbDrift{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(45px,-25px) scale(1.12)}}
@keyframes spinGlow{to{transform:rotate(360deg)}}
@keyframes textGradient{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes pulseGlow{0%,100%{opacity:.35;transform:scale(1)}50%{opacity:.75;transform:scale(1.2)}}
@keyframes particleFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(28px,-36px)}}
@media(max-width:950px){
  .hero-grid{grid-template-columns:1fr;gap:30px;padding-top:55px}
  .hero-copy{text-align:center}.hero-copy .eyebrow{margin-bottom:10px}.hero p{margin-left:auto;margin-right:auto}.hero-actions,.hero-trust{justify-content:center}
  .hero-visual{min-height:600px}.hero-image-frame{width:min(420px,88vw)}.hero-card{margin:-110px auto 0;width:min(410px,90vw)}
}
@media(max-width:620px){
  .hero{min-height:0}.hero-grid{padding:45px 0 95px}.hero h1{font-size:42px;letter-spacing:-1.6px}.hero p{font-size:15px}.hero-visual{min-height:490px}.hero-image-frame{width:88vw;border-radius:25px}.hero-main-image{border-radius:18px}.hero-card{padding:22px;margin-top:-75px}.hero-card h3{font-size:20px}.floating-chip{font-size:9px;padding:8px 10px}.chip-one{left:-2%;top:5%}.chip-two{right:-3%;top:45%}.chip-three{left:4%;bottom:10%}.hero-bottom-inner{justify-content:flex-start;overflow-x:auto;padding:0 4%;scrollbar-width:none}.hero-bottom-inner::-webkit-scrollbar{display:none}.hero-bottom-inner span{flex:0 0 auto}
}
@media(prefers-reduced-motion:reduce){
  .hero-bg,.hero-bg:before,.hero-bg:after,.hero-image-glow,.hero-image-frame,.hero-main-image,.hero-image-shine,.floating-chip,.hero-card,.hero-orb,.hero h1 span,.hero-copy:after{animation:none!important}
}

/* ================= V16 FINAL VISUAL SYSTEM ================= */
.v16-hero{position:relative;isolation:isolate;overflow:hidden;min-height:760px;color:#fff;background:#03132c}
.v16-hero-bg{position:absolute;inset:0;z-index:-4;background:radial-gradient(circle at 78% 30%,rgba(0,221,255,.22),transparent 30%),radial-gradient(circle at 12% 72%,rgba(112,58,255,.28),transparent 34%),linear-gradient(125deg,#020d22,#052653 52%,#063b4e);animation:v16BgShift 12s ease-in-out infinite alternate}
.v16-hero-bg:after{content:"";position:absolute;inset:-20%;background:repeating-linear-gradient(115deg,transparent 0 70px,rgba(255,255,255,.025) 71px 72px);transform:rotate(-5deg);animation:v16GridMove 18s linear infinite}
.v16-hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:35px;min-height:695px;padding:72px 0 110px}
.v16-hero-copy{position:relative;z-index:5;max-width:720px}.v16-badge{display:inline-flex;align-items:center;gap:9px;padding:8px 13px;border:1px solid rgba(120,255,102,.25);border-radius:999px;background:rgba(18,255,132,.07);color:#c9f7ff;font-size:10px;font-weight:900;letter-spacing:.9px}.v16-badge span{color:#9cff3d}.v16-hero h1{font-size:clamp(50px,7vw,92px);line-height:.94;letter-spacing:-5px;margin:24px 0}.v16-hero h1 span{background:linear-gradient(90deg,#fff,#9cff3d,#20d9ff,#a37cff);background-size:300% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:v16Gradient 6s linear infinite}.v16-hero-copy>p{font-size:17px;line-height:1.8;color:#c8d8e9;max-width:670px}.v16-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px;color:#cfe0ef;font-size:11px;font-weight:800}.v16-trust span:first-letter{color:#9cff3d}
.v16-visual{position:relative;height:570px;min-width:0}.v16-glow-ring{position:absolute;width:400px;height:400px;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;background:conic-gradient(#16d9ff,#8a4dff,#9cff3d,#ffb31a,#16d9ff);filter:blur(24px);opacity:.35;animation:v16Spin 14s linear infinite}.v16-logo-orbit{position:absolute;z-index:5;left:50%;top:50%;width:250px;height:250px;transform:translate(-50%,-50%);padding:12px;border-radius:50%;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(224,244,255,.72));box-shadow:0 0 0 7px rgba(255,255,255,.08),0 25px 80px rgba(0,0,0,.45);animation:v16LogoFloat 6s ease-in-out infinite}.v16-logo-orbit img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.v16-photo{position:absolute;z-index:3;width:225px;height:155px;padding:6px;border:1px solid rgba(255,255,255,.35);border-radius:19px;background:rgba(255,255,255,.12);box-shadow:0 25px 55px rgba(0,0,0,.35);backdrop-filter:blur(10px);overflow:hidden}.v16-photo img{width:100%;height:100%;object-fit:cover;border-radius:13px;filter:saturate(1.12) contrast(1.05)}.photo-one{right:2%;top:4%;transform:rotate(5deg);animation:v16PhotoOne 7s ease-in-out infinite}.photo-two{left:0;bottom:9%;transform:rotate(-7deg);animation:v16PhotoTwo 8s ease-in-out infinite}.photo-three{right:1%;bottom:1%;transform:rotate(7deg);animation:v16PhotoThree 9s ease-in-out infinite}.v16-floating-label{position:absolute;z-index:7;padding:9px 12px;border-radius:999px;background:rgba(4,20,43,.78);border:1px solid rgba(255,255,255,.18);box-shadow:0 12px 30px rgba(0,0,0,.22);font-size:10px;font-weight:900;backdrop-filter:blur(12px)}.label-one{left:5%;top:20%;color:#8cefff;animation:v16Float 5s ease-in-out infinite}.label-two{right:2%;top:44%;color:#c6ff7e;animation:v16Float 6s ease-in-out infinite 1s}.label-three{left:9%;bottom:30%;color:#ffce72;animation:v16Float 7s ease-in-out infinite 2s}
.v16-marquee{position:absolute;bottom:0;left:0;right:0;z-index:8;overflow:hidden;border-top:1px solid rgba(255,255,255,.12);background:rgba(0,8,25,.58);backdrop-filter:blur(16px)}.v16-marquee-track{width:max-content;display:flex;align-items:center;gap:28px;padding:16px 0;animation:v16Marquee 28s linear infinite}.v16-marquee span{font-size:10px;text-transform:uppercase;letter-spacing:.8px;font-weight:900;color:#d8e7f4}.v16-marquee i{font-style:normal;color:#9cff3d}
.v16-showcase{padding:105px 0;background:linear-gradient(180deg,#fff,#f2f8ff)}.v16-showcase-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.v16-showcase-head h2{font-size:clamp(32px,4vw,50px);letter-spacing:-2px;max-width:760px}.v16-action-grid{display:grid;grid-template-columns:1.3fr .85fr .85fr;gap:18px}.v16-action-card{position:relative;min-height:330px;border-radius:25px;overflow:hidden;background:#071a35;box-shadow:0 18px 50px rgba(13,42,73,.13)}.v16-action-card.wide{min-height:390px}.v16-action-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease,filter .7s ease}.v16-action-card:hover img{transform:scale(1.07);filter:saturate(1.25)}.v16-action-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(2,14,30,.92))}.v16-action-card div{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;display:grid;gap:4px;color:#fff}.v16-action-card b{font-size:18px}.v16-action-card span{font-size:11px;color:#cbd9e8}
@keyframes v16BgShift{0%{transform:scale(1) translate3d(0,0,0)}100%{transform:scale(1.08) translate3d(1%,-1%,0)}}@keyframes v16GridMove{from{background-position:0 0}to{background-position:600px -300px}}@keyframes v16Gradient{to{background-position:300% center}}@keyframes v16Spin{to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes v16LogoFloat{0%,100%{transform:translate(-50%,-50%) rotate(-2deg)}50%{transform:translate(-50%,-56%) rotate(2deg)}}@keyframes v16PhotoOne{0%,100%{transform:rotate(5deg) translateY(0)}50%{transform:rotate(2deg) translateY(-16px)}}@keyframes v16PhotoTwo{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-4deg) translateY(18px)}}@keyframes v16PhotoThree{0%,100%{transform:rotate(7deg) translateY(0)}50%{transform:rotate(4deg) translateY(-12px)}}@keyframes v16Float{0%,100%{translate:0 0}50%{translate:0 -9px}}@keyframes v16Marquee{to{transform:translateX(-50%)}}
@media(max-width:900px){.v16-hero-grid{grid-template-columns:1fr;padding-top:55px}.v16-hero-copy{max-width:760px}.v16-visual{height:500px;margin-top:10px}.v16-photo{width:190px;height:135px}.v16-logo-orbit{width:210px;height:210px}.v16-action-grid{grid-template-columns:1fr 1fr}.v16-action-card.wide{grid-column:1/-1}.v16-showcase-head{align-items:start;flex-direction:column}}
@media(max-width:600px){.v16-hero{min-height:820px}.v16-hero h1{font-size:52px;letter-spacing:-3px}.v16-hero-copy>p{font-size:15px}.v16-trust{gap:10px;display:grid}.v16-visual{height:405px}.v16-logo-orbit{width:165px;height:165px}.v16-photo{width:145px;height:105px;border-radius:14px}.photo-one{right:-2%;top:2%}.photo-two{left:-4%;bottom:8%}.photo-three{right:-2%;bottom:0}.v16-floating-label{font-size:8px;padding:7px 9px}.label-one{left:0;top:26%}.label-two{right:0;top:48%}.label-three{left:2%;bottom:27%}.v16-action-grid{grid-template-columns:1fr}.v16-action-card.wide{grid-column:auto;min-height:300px}.v16-action-card{min-height:260px}.v16-showcase{padding:75px 0}}
@media(prefers-reduced-motion:reduce){.v16-hero-bg,.v16-hero-bg:after,.v16-hero h1 span,.v16-glow-ring,.v16-logo-orbit,.v16-photo,.v16-floating-label,.v16-marquee-track{animation:none!important}.v16-action-card img{transition:none}}

/* V16 FINAL HERO */
.v16-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#04142f,#063c73 52%,#061c42);color:#fff;padding:72px 0 0;isolation:isolate}
.v16-hero-background{position:absolute;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(circle at 80% 20%,rgba(0,203,255,.24),transparent 28%),radial-gradient(circle at 20% 80%,rgba(118,255,39,.14),transparent 30%)}
.v16-orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.55;animation:v16Orb 10s ease-in-out infinite}
.orb-a{width:260px;height:260px;right:-60px;top:80px;background:rgba(0,190,255,.18)}.orb-b{width:190px;height:190px;left:8%;bottom:130px;background:rgba(125,255,35,.13);animation-delay:-3s}.orb-c{width:110px;height:110px;right:35%;top:18%;background:rgba(255,210,63,.13);animation-delay:-6s}
.v16-grid-glow{position:absolute;inset:0;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:52px 52px}
.v16-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:62px;align-items:center}
.v16-hero-copy{padding:25px 0 65px}.v16-badge{display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.08);padding:9px 13px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.08em;color:#bfeeff}
.v16-hero-copy h1{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:clamp(44px,6vw,76px);line-height:.98;letter-spacing:-3px;margin:24px 0 20px}.v16-hero-copy h1 span{background:linear-gradient(90deg,#fff,#55e6ff,#a6ff3f);-webkit-background-clip:text;background-clip:text;color:transparent}
.v16-hero-copy p{max-width:650px;color:#d2dfed;font-size:16px;line-height:1.75}.v16-trust{display:flex;gap:18px;flex-wrap:wrap;color:#c4d3e4;font-size:12px;margin-top:24px}
.v16-hero-showcase{min-height:560px;display:grid;place-items:center;position:relative;padding:20px 0 65px}
.v16-hero-frame{position:relative;width:min(100%,560px);height:500px;border-radius:30px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.07);box-shadow:0 30px 90px rgba(0,0,0,.4);backdrop-filter:blur(10px);overflow:hidden;transform:rotate(1deg)}
.v16-hero-slide{position:absolute;inset:16px;border-radius:22px;overflow:hidden;opacity:0;transform:scale(.96) translateY(12px);animation:v16HeroSlide 15s infinite;box-shadow:0 18px 45px rgba(0,0,0,.35);background:#fff}
.v16-hero-slide img{width:100%;height:100%;display:block;object-fit:cover}.v16-hero-slide .v16-logo-image{object-fit:contain;background:#fff;padding:35px}
.slide-one{animation-delay:0s}.slide-two{animation-delay:5s}.slide-three{animation-delay:10s}
.v16-slide-caption{position:absolute;left:0;right:0;bottom:0;padding:42px 22px 20px;background:linear-gradient(transparent,rgba(0,0,0,.9));display:grid;gap:4px}.v16-slide-caption b{font-size:18px}.v16-slide-caption span{font-size:12px;color:#dce9f5}
.v16-hero-shine{position:absolute;inset:-40%;background:linear-gradient(110deg,transparent 42%,rgba(255,255,255,.17) 50%,transparent 58%);transform:translateX(-60%);animation:v16Shine 6s ease-in-out infinite;pointer-events:none}
.v16-hero-dots{display:flex;gap:8px;justify-content:center;margin-top:-40px;position:relative;z-index:3}.v16-hero-dots span{width:8px;height:8px;border-radius:50%;background:#fff;opacity:.45;animation:v16Dot 1.8s infinite}.v16-hero-dots span:nth-child(2){animation-delay:.3s}.v16-hero-dots span:nth-child(3){animation-delay:.6s}
.v16-marquee{overflow:hidden;border-top:1px solid rgba(255,255,255,.1);margin-top:5px;background:rgba(0,0,0,.13)}.v16-marquee-track{display:flex;gap:28px;min-width:max-content;padding:15px 0;animation:v16Marquee 28s linear infinite;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#c9e7f4}.v16-marquee-track i{color:#7dff3b;font-style:normal}
@keyframes v16HeroSlide{0%,27%{opacity:1;transform:scale(1) translateY(0)}33%,94%{opacity:0;transform:scale(.96) translateY(12px)}100%{opacity:1;transform:scale(1) translateY(0)}}
@keyframes v16Shine{0%,55%{transform:translateX(-70%)}75%,100%{transform:translateX(70%)}}
@keyframes v16Orb{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(25px,-20px,0) scale(1.08)}}
@keyframes v16Dot{0%,100%{transform:scale(.7);opacity:.35}50%{transform:scale(1.35);opacity:1}}
@keyframes v16Marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.footer-contact-v16 p{line-height:1.6;margin:0 0 10px}.footer-contact-v16 a,.contact-details-v16 a{text-decoration:none}.footer-contact-v16 a:hover,.contact-details-v16 a:hover{text-decoration:underline}
.contact-details-v16{max-width:760px;margin:0 auto;padding:32px;border-radius:22px;background:#fff;box-shadow:0 20px 50px rgba(0,0,0,.12)}.contact-details-v16 p{line-height:1.7;margin:14px 0}
@media(max-width:850px){.v16-hero-grid{grid-template-columns:1fr;gap:10px}.v16-hero-copy{padding-bottom:15px}.v16-hero-showcase{min-height:440px}.v16-hero-frame{height:410px}.v16-hero-slide{inset:10px}.v16-hero-copy h1{letter-spacing:-2px}}
@media(prefers-reduced-motion:reduce){.v16-hero-slide,.v16-hero-shine,.v16-orb,.v16-hero-dots span,.v16-marquee-track{animation:none}.v16-hero-slide:first-child{opacity:1;transform:none}}

/* Student portal — mobile-first polish */
.auth-page{overflow:hidden}
.auth-card-login{width:100%;max-width:480px}
.auth-help{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.auth-help p{margin:0 0 10px;color:var(--muted);font-size:11px;text-align:center}
.auth-switch{text-align:center;margin:20px 0 0;color:var(--muted);font-size:12px}
.activation-grid{align-items:start}
.form-field input,.form-field select,.form-field textarea{min-height:46px}
.form-field input[type="password"]{letter-spacing:.02em}
@media(max-width:760px){
  .main-nav{max-height:calc(100vh - 86px);overflow-y:auto}
  .auth-page{padding:42px 0 58px;min-height:calc(100vh - 70px)}
  .auth-grid{width:min(100%,92%);gap:26px}
  .auth-pitch{text-align:left}
  .auth-pitch h1{font-size:clamp(32px,9vw,48px);letter-spacing:-1.5px}
  .auth-pitch p{font-size:14px;line-height:1.7}
  .auth-points{align-items:flex-start;font-size:12px;margin-top:18px}
  .auth-card{padding:22px 18px;border-radius:18px}
  .auth-card h2{font-size:24px}
  .form-field{margin-bottom:14px}
  .form-field label{font-size:10px}
  .form-field input{font-size:16px;min-height:48px}
  .btn{min-height:48px}
}
@media(max-width:380px){
  .auth-page{padding-top:32px}
  .auth-card{padding:18px 15px}
}

/* Dual JOVATECH branding: both official logos shown together */
.brand-dual-logo{display:flex;align-items:center;gap:4px;width:92px;height:50px;flex:0 0 92px}
.brand-dual-logo img{width:44px!important;height:44px!important;object-fit:contain!important;border-radius:8px!important;background:#fff}
.v16-dual-logo{width:100%;height:100%;display:flex;align-items:center;justify-content:center;gap:14px;padding:26px;background:#fff}
.v16-dual-logo img{width:48%;height:100%;object-fit:contain;background:#fff}
@media(max-width:600px){.brand-dual-logo{width:78px;flex-basis:78px;height:44px;gap:3px}.brand-dual-logo img{width:37px!important;height:37px!important}.v16-dual-logo{gap:6px;padding:12px}.v16-dual-logo img{width:49%;}}

/* V16 colourful hero motion layer */
.v16-hero-showcase{perspective:1100px}
.v16-hero-frame{animation:v16FrameFloat 7s ease-in-out infinite;transform-origin:center center}
.v16-floating-chip{position:absolute;z-index:4;padding:11px 15px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(4,20,47,.68);backdrop-filter:blur(12px);box-shadow:0 12px 35px rgba(0,0,0,.28);color:#fff;font-size:11px;font-weight:900;letter-spacing:.02em;animation:v16ChipFloat 5s ease-in-out infinite}
.chip-phone{left:2%;top:16%;animation-delay:-.8s}.chip-laptop{right:-2%;top:36%;animation-delay:-2.2s}.chip-web{left:9%;bottom:12%;animation-delay:-3.6s}
.v16-hero-copy{animation:v16CopyIn .9s cubic-bezier(.2,.8,.2,1) both}
.v16-badge{animation:v16BadgePulse 3s ease-in-out infinite}
.course-card{transition:transform .35s ease,box-shadow .35s ease}.course-card:hover{transform:translateY(-8px)}
@keyframes v16FrameFloat{0%,100%{transform:rotate(1deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-10px)}}
@keyframes v16ChipFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-12px,0) scale(1.03)}}
@keyframes v16CopyIn{from{opacity:0;transform:translate3d(-28px,18px,0)}to{opacity:1;transform:none}}
@keyframes v16BadgePulse{0%,100%{box-shadow:0 0 0 rgba(125,255,35,0)}50%{box-shadow:0 0 28px rgba(125,255,35,.12)}}
@media(max-width:850px){.v16-floating-chip{font-size:9px;padding:8px 11px}.chip-phone{left:0;top:10%}.chip-laptop{right:0;top:31%}.chip-web{left:2%;bottom:9%}}
@media(prefers-reduced-motion:reduce){.v16-hero-frame,.v16-floating-chip,.v16-hero-copy,.v16-badge{animation:none!important}.course-card{transition:none}}

.topbar-contact{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.topbar-contact a{color:inherit;text-decoration:none}.topbar-contact a:hover{text-decoration:underline}
@media(max-width:720px){.topbar-contact{font-size:11px;gap:6px;justify-content:center}.topbar-inner{flex-direction:column;gap:6px;text-align:center}}


/* V16 MOBILE NAVIGATION FINAL
   All primary navigation links, Resources submenu, and student portal links
   remain accessible on phones and small tablets. */
@media (max-width: 760px) {
  body.nav-open { overflow: hidden; }

  .site-header { z-index: 2000; }
  .nav-wrap { position: relative; }
  .nav-toggle {
    display: grid !important;
    place-items: center;
    width: 46px;
    height: 46px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    cursor: pointer;
    flex: 0 0 auto;
  }
  .nav-toggle span { pointer-events: none; }

  .main-nav {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: calc(100% + 1px) !important;
    width: 100%;
    max-height: calc(100vh - 78px);
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    border: 1px solid var(--line);
    border-radius: 0 0 18px 18px;
    box-shadow: 0 18px 45px rgba(10, 30, 55, .18);
    padding: 10px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 3px;
  }
  .main-nav.is-open { display: flex !important; }

  .main-nav > a,
  .main-nav .nav-dropdown > button,
  .main-nav .portal-nav > a {
    width: 100%;
    min-height: 46px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    text-align: left;
    padding: 12px 14px !important;
    border-radius: 10px;
    box-sizing: border-box;
    font-size: 14px !important;
  }
  .main-nav > a:hover,
  .main-nav .nav-dropdown > button:hover,
  .main-nav .portal-nav > a:hover {
    background: var(--soft);
  }

  .main-nav .nav-cta,
  .main-nav .nav-apply {
    justify-content: center !important;
    margin-top: 4px;
  }

  .main-nav .nav-dropdown {
    width: 100%;
  }
  .main-nav .nav-dropdown > button {
    border: 0;
    background: transparent;
  }
  .main-nav .nav-dropdown > button::after {
    content: "▾";
    margin-left: auto;
    font-size: 14px;
  }
  .main-nav .nav-dropdown > button span { display: none; }

  .main-nav .dropdown-menu {
    position: static !important;
    width: 100%;
    min-width: 0;
    margin: 2px 0 4px;
    padding: 4px;
    box-sizing: border-box;
    border: 0 !important;
    border-left: 3px solid var(--blue) !important;
    border-radius: 0 10px 10px 0;
    box-shadow: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    display: none;
    background: #f7faff;
  }
  .main-nav .nav-dropdown.open .dropdown-menu { display: block !important; }
  .main-nav .dropdown-menu a {
    min-height: 42px;
    display: flex;
    align-items: center;
    padding: 10px 12px;
    border-radius: 8px;
    box-sizing: border-box;
  }

  .main-nav .portal-nav {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin-top: 5px;
    padding-top: 7px;
    border-top: 1px solid var(--line);
  }

  .topbar {
    display: block !important;
  }
  .topbar-inner {
    height: auto;
    min-height: 42px;
    padding: 7px 0;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    text-align: center;
  }
  .topbar-contact {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 5px 8px !important;
    line-height: 1.35;
  }
  .topbar-contact a {
    white-space: nowrap;
  }

  .brand { min-width: 0; max-width: calc(100% - 58px); }
  .brand-dual-logo { flex: 0 0 auto; }
}

@media (max-width: 420px) {
  .topbar-inner > span { font-size: 10px; }
  .topbar-contact { font-size: 10px !important; }
  .main-nav { max-height: calc(100vh - 90px); }
  .main-nav > a,
  .main-nav .nav-dropdown > button,
  .main-nav .portal-nav > a {
    min-height: 44px;
    font-size: 13px !important;
  }
}

/* V16 Bootstrap + Enhanced JavaScript integration. Bootstrap is vendored locally,
   so this build remains standalone/offline-friendly. Existing V16 components remain intact. */
:root{--bs-primary:#1167e8}
.btn:focus-visible,.main-nav a:focus-visible,.nav-toggle:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(17,103,232,.28);outline-offset:2px}
.v16-loading{position:fixed;inset:0;z-index:5000;background:#071a35;display:grid;place-items:center;transition:opacity .35s,visibility .35s}.v16-loading.hide{opacity:0;visibility:hidden;pointer-events:none}.v16-loading-inner{text-align:center;color:#fff}.v16-loading-logo{display:flex;justify-content:center;gap:8px;margin-bottom:18px}.v16-loading-logo img{width:52px;height:52px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.8)}.v16-spinner{width:42px;height:42px;border:4px solid rgba(255,255,255,.2);border-top-color:#55d9e7;border-radius:50%;margin:16px auto 0;animation:v16spin .8s linear infinite}@keyframes v16spin{to{transform:rotate(360deg)}}
.v16-ripple{position:relative;overflow:hidden}.v16-ripple-wave{position:absolute;border-radius:50%;transform:scale(0);animation:v16ripple .55s linear;background:rgba(255,255,255,.35);pointer-events:none}@keyframes v16ripple{to{transform:scale(4);opacity:0}}
[data-tooltip], [data-bs-toggle="tooltip"]{cursor:help}
.v16-toast-stack{position:fixed;right:18px;bottom:18px;z-index:4000;display:grid;gap:10px;max-width:min(380px,calc(100vw - 36px))}
@media(max-width:760px){.v16-toast-stack{left:18px;right:18px;max-width:none}.v16-loading-logo img{width:44px;height:44px}}

/* V16 FINAL RESOURCES MENU - deterministic click/tap behavior */
.resources-dropdown { position: relative; }
.resources-dropdown > button { cursor: pointer; }
.resources-dropdown .dropdown-menu { z-index: 10000; }
.resources-dropdown.open .dropdown-menu {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}
@media (max-width:760px) {
  .resources-dropdown .dropdown-menu {
    display: none !important;
    position: static !important;
    width: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
  }
  .resources-dropdown.open .dropdown-menu {
    display: block !important;
  }
  .resources-dropdown > button {
    width: 100%;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
  }
  .resources-dropdown > button::after {
    content: "▾";
    margin-left: auto;
  }
}


/* V16 DEFINITIVE RESOURCES DROPDOWN FIX
   Bootstrap's .dropdown-menu defaults to display:none.
   This explicit rule makes the custom Resources menu visible when opened. */
.main-nav .resources-dropdown.open > .dropdown-menu {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: none !important;
  z-index: 10050 !important;
}

@media (max-width: 760px) {
  .main-nav .resources-dropdown.open > .dropdown-menu {
    display: block !important;
    position: static !important;
    width: 100% !important;
  }
}
