:root{
  --jb-canvas:#030410;--jb-canvas-veil:rgba(4,5,20,.9);--jb-text:#fff;--jb-secondary:#B3B5BD;--jb-muted:#A1A6B7;--jb-body:#AEB1BF;--jb-line:#555B71;--jb-purple:#C24AF9;--jb-cyan:#1ECAFF;--jb-indigo:#564AF9;--jb-card:#060718;--jb-radius:clamp(15px,1.6vw,24px);--jb-section:clamp(56px,6vw,96px);--jb-gap:clamp(16px,2vw,28px)
}
.jb-section,.jb-hero,.jb-course-hero,.jb-domain-hero{background:var(--jb-canvas);color:var(--jb-text);font-family:'Heebo','Roboto',system-ui,sans-serif;box-sizing:border-box}.jb-section *,.jb-hero *,.jb-course-hero *,.jb-domain-hero *{box-sizing:border-box}.jb-container{width:100%;max-width:1560px;padding-inline:clamp(20px,4vw,80px);margin-inline:auto;box-sizing:border-box}.jb-section{padding:var(--jb-section) 0}.jb-bordered{border-top:1px solid rgba(85,91,113,.35)}.jb-section h1,.jb-section h2,.jb-section h3,.jb-section h4,.jb-hero h1,.jb-course-hero h1,.jb-domain-hero h1{margin:0;color:#fff;line-height:1.05}.jb-section h2{font-size:clamp(34px,4.2vw,70px);max-width:1100px}.jb-section h3{font-size:clamp(20px,1.7vw,28px)}.jb-section p,.jb-hero p,.jb-course-hero p,.jb-domain-hero p{color:var(--jb-body);line-height:1.75}.jb-section strong,.jb-hero strong,.jb-course-hero strong,.jb-domain-hero strong{background:linear-gradient(266deg,#C24AF9 0%,#1ECAFF 20%,#1ECAFF 55.7%,#C24AF9 80%,#C24AF9 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:inherit;animation:jbTextShine 3s linear infinite}@keyframes jbTextShine{0%{background-position:200% 0}90%,100%{background-position:0 0}}.jb-kicker,.jb-eyebrow{color:var(--jb-secondary)!important;font-size:14px;letter-spacing:.02em}.jb-eyebrow{display:flex;align-items:center;gap:10px}.jb-eyebrow>span,.jb-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:linear-gradient(135deg,var(--jb-cyan),var(--jb-purple));box-shadow:0 0 20px rgba(30,202,255,.5)}.jb-note,.jb-disclaimer{font-size:13px;color:var(--jb-muted)!important}.jb-section-head{max-width:880px;margin-bottom:clamp(28px,4vw,54px)}.jb-section-head>p{font-size:clamp(16px,1.4vw,20px)}
.jb-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 22px;border-radius:999px;border:1px solid transparent;text-decoration:none!important;font-weight:600;transition:.25s ease;color:#fff!important;cursor:pointer}.jb-btn-primary{background:linear-gradient(135deg,var(--jb-cyan),var(--jb-purple));box-shadow:0 16px 50px rgba(86,74,249,.18)}.jb-btn-primary:hover{filter:brightness(1.12);transform:translateY(-1px)}.jb-btn-glass{background:linear-gradient(rgba(24,27,51,.76),rgba(24,27,51,.76)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;backdrop-filter:blur(16px)}.jb-btn-glass:hover{background:linear-gradient(#181b33,#181b33) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box}.jb-actions{display:flex;gap:12px;flex-wrap:wrap}
.jb-hero{position:relative;overflow:hidden;min-height:760px;padding:clamp(150px,17vw,230px) 0 clamp(80px,9vw,130px)}.jb-hero-inner{position:relative;z-index:3}.jb-hero h1{font-size:clamp(48px,6.4vw,108px);max-width:1180px;letter-spacing:-.035em}.jb-hero-copy{font-size:clamp(18px,1.55vw,24px);max-width:820px;margin:28px 0 34px}.jb-ambient i{position:absolute;width:48vw;height:48vw;border-radius:50%;filter:blur(85px);opacity:.18;background:radial-gradient(circle,var(--jb-indigo),transparent 65%)}.jb-ambient i:first-child{left:-16vw;top:-14vw}.jb-ambient i:last-child{right:-22vw;bottom:-20vw;background:radial-gradient(circle,var(--jb-purple),transparent 65%)}.jb-binary{position:absolute;inset:0;direction:ltr;text-align:left;white-space:pre;color:rgba(113,123,170,.12);font:600 clamp(11px,1vw,17px)/2 ui-monospace,monospace;letter-spacing:.5em;pointer-events:none;overflow:hidden;padding:8% 4%;z-index:1}
.jb-heading-wide h2{font-size:clamp(36px,4.5vw,76px)}.jb-metrics{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;margin-top:clamp(34px,5vw,70px);border-top:1px solid rgba(85,91,113,.6);border-bottom:1px solid rgba(85,91,113,.6)}.jb-metric{padding:clamp(22px,2.4vw,38px) clamp(10px,1.4vw,20px);border-inline-start:1px solid rgba(85,91,113,.5)}.jb-metric:first-child{border-inline-start:0}.jb-metric-num{font-size:clamp(29px,2.8vw,50px);font-weight:500;color:#fff;display:flex;gap:6px;align-items:baseline;flex-wrap:wrap}.jb-metric p{margin:10px 0 0;font-size:14px}.jb-metrics-4{grid-template-columns:repeat(4,1fr)}
.jb-grid{display:grid;gap:var(--jb-gap);margin-top:clamp(32px,4vw,54px)}.jb-grid-4{grid-template-columns:repeat(4,1fr)}.jb-grid-3{grid-template-columns:repeat(3,1fr)}.jb-feature,.jb-icon-cards article,.jb-cert-grid article,.jb-payment-grid article,.jb-method-grid article{padding:clamp(22px,2.2vw,34px);border:1px solid rgba(85,91,113,.65);border-radius:var(--jb-radius);background:linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.015));min-height:180px}.jb-feature h3,.jb-icon-cards h3,.jb-method-grid h3{margin-top:20px}.jb-feature p,.jb-icon-cards p,.jb-method-grid p{margin-bottom:0}.jb-method-grid article>span{font-size:15px;color:var(--jb-cyan)}.jb-card-icon{width:38px;height:38px;color:var(--jb-cyan)}.jb-geo{position:relative;overflow:hidden}.jb-geo .jb-container{position:relative}.jb-quote-mark{position:absolute;left:0;top:-40px;font-size:200px;color:rgba(194,74,249,.08);font-family:serif}
.jb-course-filters{margin-top:30px}.jb-search{position:relative;display:flex;align-items:center;max-width:760px}.jb-search input{width:100%;min-height:56px;border-radius:999px;border:1px solid var(--jb-line);background:rgba(255,255,255,.045);color:#fff;padding:0 22px;font:inherit;outline:none}.jb-search input:focus{border-color:var(--jb-cyan);box-shadow:0 0 0 3px rgba(30,202,255,.12)}.jb-search>span:last-child{position:absolute;left:20px;color:var(--jb-muted);font-size:24px}.jb-course-filters fieldset{border:0;padding:0;margin:26px 0 0}.jb-course-filters legend{color:var(--jb-secondary);font-size:14px;margin-bottom:10px}.jb-chips{display:flex;flex-wrap:wrap;gap:8px}.jb-chip{font:500 15px/1 inherit;min-height:40px;padding:0 18px;border-radius:100px;color:var(--jb-body);background:rgba(255,255,255,.06);border:1px solid var(--jb-line);cursor:pointer}.jb-chip.is-active{color:#fff;background:linear-gradient(135deg,var(--jb-cyan),var(--jb-purple));border-color:transparent}.jb-static-chips .jb-chip{display:inline-flex;align-items:center;cursor:default}.jb-filter-status{font-size:14px;margin:18px 0}.jb-course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.jb-course-card{border:1px solid transparent;border-radius:var(--jb-radius);overflow:hidden;background:linear-gradient(var(--jb-card),var(--jb-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;transition:.35s ease;min-height:360px;display:flex;flex-direction:column}.jb-course-card:hover{background:linear-gradient(var(--jb-card),var(--jb-card)) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;transform:translateY(-3px)}.jb-course-card-top{height:130px;position:relative;display:flex;align-items:flex-start;justify-content:flex-end;padding:18px;overflow:hidden;background:radial-gradient(circle at 25% 20%,rgba(86,74,249,.16),transparent 50%)}.jb-course-icon{position:absolute;inset:0;display:grid;place-items:center;opacity:.22}.jb-course-icon svg{width:82px;height:82px;color:var(--jb-cyan)}.jb-card-badges{position:relative;z-index:2;display:flex;gap:7px;flex-wrap:wrap}.jb-card-badges span,.jb-tags span{font-size:12px;padding:5px 9px;border:1px solid rgba(85,91,113,.75);border-radius:999px;color:#c6cad5;background:rgba(3,4,16,.55)}.jb-course-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.jb-course-card-body h3{margin:0;font-size:clamp(28px,1.45rem + .7vw,36px);font-weight:600;line-height:1.14;letter-spacing:-.01em}.jb-course-card h3 a,.jb-article-card h3 a{color:#fff;text-decoration:none}.jb-course-card p{margin:14px 0 20px;line-height:1.7}.jb-card-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid rgba(85,91,113,.35);padding-top:16px;color:var(--jb-muted);font-size:15px}.jb-card-foot span{color:#d6d8e0;font-weight:500;white-space:nowrap}.jb-card-foot a,.jb-article-body>a{color:var(--jb-cyan);text-decoration:none}.jb-show-more{margin:28px auto 0;display:flex}.jb-no-results{text-align:center;padding:50px 20px}.jb-b2b-card{margin-top:40px;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:clamp(24px,3vw,42px);border:1px solid rgba(85,91,113,.7);border-radius:var(--jb-radius);background:linear-gradient(135deg,rgba(86,74,249,.1),rgba(30,202,255,.04))}.jb-b2b-card h3{font-size:clamp(24px,2.3vw,38px)}.jb-b2b-card p{max-width:760px}
.jb-logo-marquee{overflow:hidden;margin-top:34px;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)}.jb-logo-track{display:flex;gap:16px;width:max-content;animation:jbMarquee 40s linear infinite}.jb-logo-marquee:hover .jb-logo-track{animation-play-state:paused}.jb-logo-item{width:190px;height:100px;border:1px solid rgba(85,91,113,.55);border-radius:18px;display:grid;place-items:center;padding:20px;background:rgba(255,255,255,.02)}.jb-logo-item img{max-width:100%;max-height:52px;object-fit:contain;filter:grayscale(1) brightness(2);opacity:.85}@keyframes jbMarquee{to{transform:translateX(-50%)}}
.jb-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}.jb-testimonial{padding:28px;border:1px solid rgba(85,91,113,.65);border-radius:var(--jb-radius);background:rgba(255,255,255,.025)}.jb-testimonial-author{display:flex;gap:14px;align-items:center}.jb-testimonial-author img{width:52px;height:52px;border-radius:50%;object-fit:cover}.jb-testimonial-author span{display:block;color:var(--jb-muted);font-size:13px;margin-top:3px}.jb-testimonial blockquote{margin:24px 0;color:#fff;font-size:18px;line-height:1.7}.jb-testimonial-course{font-size:13px!important}
.jb-career{position:relative;overflow:hidden}.jb-career-list{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;border:1px solid rgba(85,91,113,.5);border-radius:var(--jb-radius);overflow:hidden}.jb-career-list article{display:flex;gap:16px;padding:26px;background:rgba(255,255,255,.018);border-bottom:1px solid rgba(85,91,113,.45)}.jb-career-list h3{margin-bottom:8px}.jb-career-list p{margin:0}
.jb-article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}.jb-article-card{overflow:hidden;border:1px solid rgba(85,91,113,.65);border-radius:var(--jb-radius);background:rgba(255,255,255,.025)}.jb-article-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#0b0d1d}.jb-article-image img{width:100%;height:100%;object-fit:cover;transition:.4s}.jb-article-card:hover .jb-article-image img{transform:scale(1.03)}.jb-article-body{padding:22px}.jb-tags{display:flex;gap:6px;flex-wrap:wrap}.jb-article-body h3{margin:16px 0 10px}.jb-article-meta{font-size:13px;color:var(--jb-muted)!important}.jb-contact{text-align:center;position:relative;overflow:hidden}.jb-contact .jb-container{max-width:900px}.jb-contact p{font-size:18px}.jb-contact .jb-actions{justify-content:center;margin-top:28px}.jb-embedded-form{margin-top:30px;text-align:initial}
.jb-domain-hero{padding:clamp(120px,12vw,180px) 0 80px;border-bottom:1px solid rgba(85,91,113,.35)}.jb-domain-hero h1{font-size:clamp(52px,7vw,112px);margin-top:16px}.jb-domain-hero p:last-child{max-width:820px;font-size:20px}
.jb-course-hero{position:relative;overflow:hidden;padding:clamp(110px,10vw,150px) 0 48px}.jb-course-hero .jb-container{position:relative;z-index:2}.jb-course-hero-card{border:1px solid transparent;border-radius:clamp(15px,1.6vw,32px);background:linear-gradient(#050617,#050617) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;padding:clamp(36px,4.5vw,72px) clamp(24px,3vw,56px)}.jb-course-hero h1{font-size:clamp(48px,6vw,92px)}.jb-course-hero-card>p{font-size:clamp(17px,1.5vw,22px);max-width:860px}.jb-hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.jb-hero-badges span{padding:8px 13px;border-radius:999px;border:1px solid rgba(85,91,113,.75);background:rgba(255,255,255,.04);color:#d4d7df;font-size:14px}.jb-quick-info{display:grid;grid-template-columns:repeat(5,1fr);margin-top:18px;border:1px solid rgba(85,91,113,.5);border-radius:18px;overflow:hidden}.jb-quick-info>div{padding:18px;border-inline-start:1px solid rgba(85,91,113,.45)}.jb-quick-info>div:first-child{border-inline-start:0}.jb-quick-info span{display:block;color:var(--jb-muted);font-size:12px;margin-bottom:6px}.jb-quick-info strong{font-size:16px;-webkit-text-fill-color:initial;background:none;color:#fff;animation:none}
.jb-salary-table{display:grid;gap:12px}.jb-salary-table article{border:1px solid rgba(85,91,113,.65);border-radius:18px;padding:20px;background:rgba(255,255,255,.02)}.jb-role-head{display:flex;justify-content:space-between;gap:15px;margin-bottom:18px}.jb-role-head strong{-webkit-text-fill-color:initial;background:none;color:#fff;animation:none;font-size:20px}.jb-role-head span{color:var(--jb-muted);font-size:13px}.jb-salary-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.jb-salary-cols>div{padding:12px;border-radius:12px;background:rgba(255,255,255,.035)}.jb-salary-cols span{display:block;color:var(--jb-muted);font-size:12px}.jb-salary-cols strong{-webkit-text-fill-color:initial;background:none;color:#fff;animation:none;font-size:17px}.jb-industry-quote{margin:36px 0 12px;padding:26px;border-inline-start:3px solid var(--jb-purple);background:rgba(194,74,249,.05);color:#fff;line-height:1.8}.jb-industry-quote cite{display:block;color:var(--jb-muted);font-size:13px;margin-top:14px;font-style:normal}
.jb-accordion{display:grid;gap:10px}.jb-accordion-item{border:1px solid rgba(85,91,113,.65);border-radius:16px;background:rgba(255,255,255,.018);overflow:hidden}.jb-accordion-item>button{width:100%;border:0;background:none;color:#fff;padding:20px 22px;display:flex;align-items:center;justify-content:space-between;text-align:right;font:inherit;cursor:pointer}.jb-accordion-item>button span{display:flex;flex-direction:column;gap:4px}.jb-accordion-item>button small{color:var(--jb-muted)}.jb-accordion-item>button b{font-size:28px;font-weight:300;color:var(--jb-cyan)}.jb-accordion-panel{display:none;padding:0 22px 22px}.jb-accordion-item.is-open .jb-accordion-panel{display:block}.jb-syl-head{flex-direction:row!important;align-items:center!important;gap:14px!important}.jb-syl-head em{font-style:normal;color:var(--jb-cyan);font-size:13px}.jb-syl-head small{margin-inline-start:auto}.jb-syl-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:26px;border-top:1px solid rgba(85,91,113,.35);padding-top:20px}.jb-label{color:var(--jb-secondary)!important;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.jb-total-hours{font-size:18px!important}.jb-total-hours strong{-webkit-text-fill-color:initial;background:none;color:#fff;animation:none}.jb-program-two{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:42px}.jb-check-list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:10px}.jb-check-list li{color:var(--jb-body);padding-inline-start:26px;position:relative}.jb-check-list li:before{content:'✓';position:absolute;right:0;color:var(--jb-cyan)}.jb-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.jb-mini-grid article{padding:16px;border:1px solid rgba(85,91,113,.5);border-radius:14px}.jb-mini-grid h4{font-size:16px}.jb-mini-grid p{font-size:13px;margin-bottom:0}.jb-subheading{margin:26px 0 18px!important}.jb-tech-cert{margin-top:38px}.jb-admission{margin-top:36px}.jb-admission h3{margin-bottom:16px}.jb-lecturer{display:grid;grid-template-columns:minmax(220px,360px) 1fr;gap:36px;align-items:center;margin-top:32px}.jb-lecturer img{width:100%;border-radius:var(--jb-radius);aspect-ratio:4/5;object-fit:cover}.jb-lecturer h3{font-size:clamp(28px,3vw,46px)}.jb-lecturer-role{color:var(--jb-cyan)!important}.jb-why-jb{margin-top:28px}.jb-branches .jb-section-head h1{font-size:clamp(52px,6vw,92px)}.jb-branch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.jb-branch{padding:28px;border:1px solid rgba(85,91,113,.65);border-radius:var(--jb-radius);background:rgba(255,255,255,.02)}.jb-branch h2{font-size:34px}.jb-branch-links{display:grid;gap:7px;margin:18px 0}.jb-branch-links a{color:var(--jb-cyan);text-decoration:none}.jb-branch-block{border-top:1px solid rgba(85,91,113,.4);margin-top:20px;padding-top:18px}.jb-branch-block h3{font-size:17px}.jb-branch-block p{font-size:14px}
@media(max-width:1024px){.jb-course-card-body h3{font-size:clamp(24px,2vw,30px)}.jb-grid-4{grid-template-columns:repeat(2,1fr)}.jb-grid-3,.jb-course-grid,.jb-testimonial-grid,.jb-article-grid,.jb-branch-grid{grid-template-columns:repeat(2,1fr)}.jb-metrics{grid-template-columns:repeat(3,1fr)}.jb-quick-info{grid-template-columns:repeat(2,1fr)}.jb-program-two{grid-template-columns:1fr}.jb-hero{min-height:auto}.jb-logo-track{animation-duration:28s}}
@media(max-width:680px){.jb-course-card-body h3{font-size:clamp(22px,7vw,28px);line-height:1.16}.jb-container{width:100%;padding-inline:20px}.jb-hero{padding-top:120px}.jb-hero h1{font-size:clamp(42px,12vw,62px)}.jb-section h2{font-size:clamp(32px,10vw,46px)}.jb-grid-4,.jb-grid-3,.jb-course-grid,.jb-testimonial-grid,.jb-article-grid,.jb-branch-grid,.jb-metrics,.jb-metrics-4,.jb-career-list,.jb-salary-cols,.jb-lecturer{grid-template-columns:1fr}.jb-metric{border-inline-start:0;border-bottom:1px solid rgba(85,91,113,.4)}.jb-b2b-card{align-items:flex-start;flex-direction:column}.jb-quick-info{grid-template-columns:1fr 1fr}.jb-syl-grid{grid-template-columns:1fr}.jb-syl-head{align-items:flex-start!important;flex-wrap:wrap}.jb-syl-head small{margin-inline-start:0}.jb-course-hero{padding-top:90px}.jb-course-hero-card{padding:30px 20px}.jb-course-hero h1{font-size:48px}.jb-mini-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.jb-section *,.jb-hero *,.jb-course-hero *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.jb-logo-track{animation:none}}
.jb-contact-hero{background:var(--jb-canvas);color:#fff;font-family:'Heebo','Roboto',system-ui,sans-serif;position:relative;overflow:hidden;padding:clamp(140px,16vw,210px) 0 clamp(30px,4vw,60px)}.jb-contact-hero h1{margin:0;font-size:clamp(58px,7vw,112px);line-height:1;color:#fff}.jb-contact-hero>div>p:last-child{max-width:780px;font-size:clamp(18px,1.5vw,22px);color:var(--jb-body);line-height:1.7}.jb-main-campus{background:var(--jb-canvas);color:#fff;font-family:'Heebo','Roboto',system-ui,sans-serif;padding:clamp(80px,10vw,160px) 0 clamp(30px,4vw,60px)}.jb-main-campus h2{margin:0 0 34px;font-size:clamp(36px,5vw,76px);line-height:1.05}.jb-main-campus strong{background:linear-gradient(266deg,#C24AF9,#1ECAFF 45%,#C24AF9);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.jb-campus-image{border:1px solid rgba(85,91,113,.65);border-radius:var(--jb-radius);overflow:hidden;min-height:340px;background:radial-gradient(circle at 50% 60%,rgba(86,74,249,.16),transparent 55%)}.jb-campus-image img{display:block;width:100%;max-height:720px;object-fit:contain;object-position:center bottom}.jb-branch-stack{display:grid;gap:28px}.jb-branch-stack .jb-branch{display:grid;grid-template-columns:.8fr 1.1fr 1.2fr;gap:28px;align-items:start;padding:clamp(24px,3vw,40px)}.jb-branch-map iframe{width:100%;min-height:300px;border:0;border-radius:16px;filter:saturate(.75) contrast(1.05)}.jb-branch-map>a{display:inline-flex;margin-top:12px;color:var(--jb-cyan);text-decoration:none}.jb-branch-copy .jb-branch-block:first-child{margin-top:0;padding-top:0;border-top:0}.jb-branch-copy .jb-branch-block p{display:flex;gap:10px;align-items:flex-start}.jb-branch-copy .jb-dot{width:6px;height:6px;flex:0 0 6px;margin-top:.7em}@media(max-width:1024px){.jb-branch-stack .jb-branch{grid-template-columns:1fr 1fr}.jb-branch-map{grid-column:1/-1}}@media(max-width:680px){.jb-branch-stack .jb-branch{grid-template-columns:1fr}.jb-branch-map{grid-column:auto}.jb-contact-hero{padding-top:110px}.jb-main-campus{padding-top:70px}}

/* =========================================================
   JB Core 0.2.0 — Typography specification
   Heebo: Hebrew/UI | Roboto: Latin, numbers, code/statistics
   ========================================================= */
:root{
  --jb-font-primary:'Heebo','Roboto',system-ui,sans-serif;
  --jb-font-latin:'Roboto','Heebo',system-ui,sans-serif;
  --jb-type-h1:clamp(32px,4vw,48px);
  --jb-type-h2:clamp(24px,3vw,36px);
  --jb-type-h3:clamp(18px,1.8vw,22px);
  --jb-type-lead:clamp(17px,1.5vw,20px);
  --jb-type-body:15px;
  --jb-type-small:13px;
  --jb-type-stat:clamp(44px,5vw,72px);
}

.jb-section,.jb-hero,.jb-course-hero,.jb-domain-hero,.jb-contact-hero,.jb-main-campus{
  font-family:var(--jb-font-primary);
  direction:rtl;
  font-style:normal;
}

/* Headings */
.jb-section h1,.jb-hero h1,.jb-course-hero h1,.jb-domain-hero h1,.jb-contact-hero h1,.jb-branches .jb-section-head h1{
  font-family:var(--jb-font-primary);
  font-size:var(--jb-type-h1);
  font-weight:400;
  line-height:1.2;
  letter-spacing:0;
}
.jb-section h2,.jb-main-campus h2,.jb-branch h2,.jb-heading-wide h2{
  font-family:var(--jb-font-primary);
  font-size:var(--jb-type-h2);
  font-weight:400;
  line-height:1.3;
  letter-spacing:0;
}
.jb-section h3,.jb-course-card h3,.jb-article-card h3,.jb-lecturer h3,.jb-branch-block h3{
  font-family:var(--jb-font-primary);
  font-size:var(--jb-type-h3);
  font-weight:500;
  line-height:1.4;
  letter-spacing:0;
}

/* Lead and body */
.jb-hero-copy,.jb-section-head>p,.jb-course-hero-card>p,.jb-domain-hero p:last-child,.jb-contact-hero>div>p:last-child{
  font-size:var(--jb-type-lead);
  line-height:1.6;
}
.jb-section p,.jb-hero p,.jb-course-hero p,.jb-domain-hero p,.jb-section li,.jb-course-card p,.jb-article-card p{
  font-size:var(--jb-type-body);
  line-height:1.6;
}

/* Eyebrows, tags and secondary metadata */
.jb-kicker,.jb-eyebrow{
  font-size:var(--jb-type-small);
  font-weight:500;
  letter-spacing:.08em;
  line-height:1.4;
}
.jb-note,.jb-disclaimer,.jb-tags span,.jb-card-badges span,.jb-testimonial-author span,.jb-testimonial-course,.jb-article-meta,.jb-label,.jb-salary-cols span,.jb-role-head span{
  font-size:var(--jb-type-small);
}

/* Statistics and explicit Latin/numeric content */
.jb-metric-num,.jb-stat,.jb-number,.jb-latin,.jb-code{
  font-family:var(--jb-font-latin);
  direction:ltr;
}
.jb-metric-num,.jb-stat{
  font-size:var(--jb-type-stat);
  font-weight:300;
  line-height:1.05;
  font-variant-numeric:tabular-nums;
  letter-spacing:0;
}
.jb-code,code,kbd,samp,pre{
  font-family:var(--jb-font-latin);
}

/* Buttons and links */
.jb-btn,.jb-chip{
  font-size:15px;
  font-weight:500;
}

/* The approved type system has no italic styling. */
.jb-section em,.jb-section i,.jb-hero em,.jb-course-hero em,.jb-domain-hero em{
  font-style:normal;
}
.jb-quick-info strong,.jb-salary-cols strong,.jb-syl-head em,.jb-syl-head small,.jb-total-hours strong{
  font-family:var(--jb-font-latin);
  font-variant-numeric:tabular-nums;
}


/* =========================================================
   JB Core 0.3.0 — FINAL Homepage V2 / Cyber Course V2
   Source-of-truth page composition additions
   ========================================================= */
.jb-course-quick-section{background:var(--jb-canvas);color:var(--jb-text);font-family:var(--jb-font-primary);direction:rtl;padding:clamp(18px,2vw,28px) 0 0}
.jb-course-quick-section .jb-quick-info{margin-top:0;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:rgba(85,91,113,.4);border-color:rgba(85,91,113,.4);border-radius:var(--jb-radius)}
.jb-course-quick-section .jb-quick-info>div{background:var(--jb-card);padding:20px 16px;text-align:center;border-inline-start:0}
.jb-course-kicker,.jb-geo-source{font-size:var(--jb-type-small);font-weight:500;color:var(--jb-muted)!important;margin:0 0 12px}
.jb-geo-source{font-family:var(--jb-font-latin);direction:ltr;width:max-content}
.jb-section-cta{margin-top:clamp(20px,2.2vw,32px)}
.jb-syllabus-download{display:flex;flex-direction:column;align-items:flex-start;gap:9px;margin-top:18px}
.jb-syllabus-download small{font-size:var(--jb-type-small);color:var(--jb-muted)}
@media(prefers-reduced-motion:reduce){.jb-course-quick-section *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* =========================================================
   JB Core 0.3.2 — Interaction language / Elementor isolation
   Prevent Elementor/Hello default Accent hover colors from
   leaking into JB Core components.
   ========================================================= */
:root{
  --jb-primary-gradient:linear-gradient(135deg,#1ECAFF 0%,#C24AF9 100%);
  --jb-hover-surface:rgba(30,202,255,.055);
  --jb-hover-surface-strong:rgba(30,202,255,.09);
  --jb-focus-ring:rgba(30,202,255,.28);
  --jb-border-hover:rgba(30,202,255,.58);
}

/* Keep Elementor's default global Accent from becoming a foreign pink
   on this Matrix / JB experience. These values also help Elementor
   widgets placed alongside JB shortcodes inherit the approved palette. */
body[class*="elementor-kit-"]{
  --e-global-color-primary:#1ECAFF !important;
  --e-global-color-secondary:#C24AF9 !important;
  --e-global-color-text:#AEB1BF !important;
  --e-global-color-accent:#1ECAFF !important;
}

/* The old prototype applied the animated gradient to every <strong>.
   Reset normal emphasis, then opt the gradient back in only for display
   headings where it belongs. */
.jb-section strong,
.jb-hero strong,
.jb-course-hero strong,
.jb-domain-hero strong,
.jb-contact-hero strong,
.jb-main-campus strong{
  background:none;
  background-size:auto;
  -webkit-background-clip:initial;
  background-clip:initial;
  -webkit-text-fill-color:currentColor;
  color:inherit;
  animation:none;
}
.jb-hero h1>strong,
.jb-section h1>strong,
.jb-section h2>strong,
.jb-course-hero h1>strong,
.jb-domain-hero h1>strong,
.jb-contact-hero h1>strong,
.jb-main-campus h2>strong{
  background:linear-gradient(266deg,#C24AF9 0%,#1ECAFF 20%,#1ECAFF 55.7%,#C24AF9 80%,#C24AF9 100%);
  background-size:200% auto;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
  animation:jbTextShine 3s linear infinite;
  font-weight:inherit;
}

/* Accordion: Elementor has generic button:hover rules. The accordion owns
   its interaction state, so never allow a solid Accent fill here. */
.jb-accordion-item{
  transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease;
}
.jb-accordion-item:hover{
  border-color:var(--jb-border-hover);
  background:linear-gradient(135deg,rgba(30,202,255,.045),rgba(194,74,249,.018));
}
.jb-accordion-item.is-open{
  border-color:rgba(30,202,255,.42);
  background:linear-gradient(135deg,rgba(30,202,255,.035),rgba(86,74,249,.025));
}
.jb-accordion-item>button,
.jb-accordion-item>button:hover,
.jb-accordion-item>button:focus,
.jb-accordion-item>button:active{
  appearance:none;
  -webkit-appearance:none;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  color:#fff !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  text-decoration:none !important;
  transform:none !important;
}
.jb-accordion-item>button:hover{
  background:var(--jb-hover-surface) !important;
}
.jb-accordion-item>button:focus-visible{
  outline:2px solid var(--jb-cyan) !important;
  outline-offset:-3px;
  box-shadow:inset 0 0 0 3px var(--jb-focus-ring) !important;
}
.jb-accordion-item>button strong{
  color:#fff !important;
  -webkit-text-fill-color:#fff !important;
  background:none !important;
  animation:none !important;
}
.jb-accordion-item>button b,
.jb-accordion-item>button:hover b{
  color:var(--jb-cyan) !important;
  -webkit-text-fill-color:var(--jb-cyan) !important;
}

/* Pills / filters */
.jb-chip{
  transition:color .3s ease,border-color .3s ease,background-color .3s ease,filter .3s ease;
}
button.jb-chip:hover:not(.is-active),
button.jb-chip:focus-visible:not(.is-active){
  color:#fff !important;
  border-color:var(--jb-border-hover) !important;
  background:var(--jb-hover-surface-strong) !important;
  background-color:var(--jb-hover-surface-strong) !important;
}
button.jb-chip.is-active,
button.jb-chip.is-active:hover,
button.jb-chip.is-active:focus{
  color:#fff !important;
  border-color:transparent !important;
  background:var(--jb-primary-gradient) !important;
  background-color:transparent !important;
}
button.jb-chip:focus-visible{
  outline:2px solid var(--jb-cyan) !important;
  outline-offset:2px;
}

/* JB buttons: ensure generic Elementor button / link states cannot replace
   the approved backgrounds. */
.jb-btn,
a.jb-btn,
button.jb-btn{
  color:#fff !important;
  text-decoration:none !important;
}
.jb-btn-primary,
a.jb-btn-primary,
button.jb-btn-primary,
.jb-btn-primary:focus,
.jb-btn-primary:active{
  background:var(--jb-primary-gradient) !important;
  background-color:transparent !important;
}
.jb-btn-primary:hover{
  background:var(--jb-primary-gradient) !important;
  filter:brightness(1.15);
}
.jb-btn-glass,
a.jb-btn-glass,
button.jb-btn-glass{
  background:linear-gradient(rgba(24,27,51,.76),rgba(24,27,51,.76)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box !important;
  background-color:transparent !important;
}
.jb-btn-glass:hover,
.jb-btn-glass:focus{
  color:#fff !important;
  background:linear-gradient(#181b33,#181b33) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box !important;
}
.jb-btn:focus-visible{
  outline:2px solid var(--jb-cyan) !important;
  outline-offset:3px;
  box-shadow:0 0 0 4px var(--jb-focus-ring) !important;
}

/* Text links */
.jb-card-foot a,
.jb-article-body>a,
.jb-branch-links a,
.jb-branch-map>a{
  color:var(--jb-cyan) !important;
  text-decoration:none !important;
  transition:color .3s ease;
}
.jb-card-foot a:hover,
.jb-article-body>a:hover,
.jb-branch-links a:hover,
.jb-branch-map>a:hover{
  color:#fff !important;
}
.jb-course-card h3 a,
.jb-article-card h3 a,
.jb-course-card h3 a:hover,
.jb-article-card h3 a:hover{
  color:#fff !important;
  text-decoration:none !important;
}

/* Inputs / search / form controls inside JB surfaces */
.jb-section input,
.jb-section select,
.jb-section textarea,
.jb-hero input,
.jb-course-hero input{
  accent-color:var(--jb-cyan);
}
.jb-section input:hover,
.jb-section select:hover,
.jb-section textarea:hover{
  border-color:rgba(30,202,255,.42) !important;
}
.jb-section input:focus,
.jb-section select:focus,
.jb-section textarea:focus{
  border-color:var(--jb-cyan) !important;
  box-shadow:0 0 0 3px var(--jb-focus-ring) !important;
  outline:none !important;
}

/* Cards use a subtle cyan/purple border reaction, never a solid fill. */
.jb-course-card:hover,
.jb-article-card:hover,
.jb-feature:hover,
.jb-icon-cards>article:hover,
.jb-cert-grid>article:hover{
  border-color:rgba(30,202,255,.48);
}

@media(prefers-reduced-motion:reduce){
  .jb-accordion-item,.jb-chip,.jb-btn,.jb-card-foot a,.jb-article-body>a{
    transition:none !important;
  }
}


/* =========================================================
   JB Core 0.3.4 — Elementor layout containment (normalized)
   ========================================================= */
.elementor-widget-shortcode .elementor-shortcode{
  width:100%;
  max-width:none;
}
.elementor-widget-shortcode .elementor-shortcode>.jb-section,
.elementor-widget-shortcode .elementor-shortcode>.jb-hero,
.elementor-widget-shortcode .elementor-shortcode>.jb-course-hero,
.elementor-widget-shortcode .elementor-shortcode>.jb-course-quick-section,
.elementor-widget-shortcode .elementor-shortcode>.jb-domain-hero{
  width:100%;
  max-width:none;
  min-width:0;
}
.elementor-widget-shortcode .jb-container{
  width:100%;
  max-width:1560px;
}

/* =========================================================
   JB Core 0.4.0 — Cyber Course V2 fidelity layer
   Source of truth: Cyber Course v2.dc.html
   Desktop: content + sticky 360px lead sidebar.
   Mobile <=1080px: single column + fixed bottom CTA.
   ========================================================= */
.jb-course-v2{
  background:#030410;
  color:#fff;
  font-family:var(--jb-font-primary,'Heebo','Roboto',system-ui,sans-serif);
  min-height:100vh;
  width:100%;
  overflow:clip;
}
.jb-course-v2,.jb-course-v2 *{box-sizing:border-box}
.jb-course-v2-shell{
  display:flex;
  align-items:flex-start;
  gap:clamp(24px,3vw,52px);
  padding-top:clamp(90px,10vw,130px);
}
.jb-course-v2-main{flex:1;min-width:0;width:100%}
.jb-course-v2-main>.jb-course-hero,
.jb-course-v2-main>.jb-course-quick-section,
.jb-course-v2-main>.jb-section{
  width:100%;
  max-width:none;
  background:transparent;
}
.jb-course-v2-main>.jb-course-hero>.jb-container,
.jb-course-v2-main>.jb-course-quick-section>.jb-container,
.jb-course-v2-main>.jb-section>.jb-container{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}
.jb-course-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  padding:14px 0;
  font:400 13px/1.4 var(--jb-font-latin,'Roboto',sans-serif);
  color:#6B7089;
}
.jb-course-breadcrumbs a{color:#6B7089!important;text-decoration:none!important}
.jb-course-breadcrumbs a:hover{color:#1ECAFF!important}
.jb-course-breadcrumbs [aria-current="page"]{color:#A1A6B7}

/* Hero */
.jb-course-v2-main .jb-course-hero{padding:0;overflow:visible}
.jb-course-v2-main .jb-course-hero-card{
  position:relative;
  overflow:hidden;
  margin-top:6px;
  padding:clamp(36px,4.5vw,72px) clamp(24px,3vw,56px);
  border:1px solid transparent;
  border-radius:clamp(15px,1.6vw,32px);
  background:linear-gradient(#050617,#050617) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
}
.jb-course-hero-content{position:relative;z-index:2;display:flex;flex-direction:column;gap:20px;max-width:62ch}
.jb-course-v2-main .jb-course-hero h1{
  margin:0;
  font-size:clamp(36px,1.8rem + 2.6vw,60px);
  font-weight:400;
  line-height:1.2;
  letter-spacing:0;
}
.jb-course-v2-main .jb-course-hero-card>p,
.jb-course-v2-main .jb-course-hero-content>p{
  margin:0;
  max-width:none;
  font-size:clamp(17px,1rem + .3vw,20px);
  line-height:1.6;
  color:#AEB1BF;
}
.jb-course-digit-rain{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  direction:ltr;
  text-align:left;
  word-spacing:44px;
  letter-spacing:10px;
  font:500 11px/5 var(--jb-font-latin,'Roboto',monospace);
  color:rgba(90,100,145,.10);
  padding:10% 3%;
  pointer-events:none;
}
.jb-course-hero-glow{
  position:absolute;
  top:-60%;
  inset-inline-start:-20%;
  width:min(800px,90vw);
  height:min(800px,90vw);
  border-radius:50%;
  opacity:.18;
  background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);
  pointer-events:none;
}
.jb-course-v2-main .jb-hero-badges{display:flex;flex-wrap:wrap;gap:10px;margin:0}
.jb-course-v2-main .jb-hero-badges span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 18px;
  border-radius:100px;
  border:1px solid rgba(200,200,200,.3);
  background:hsla(0,0%,100%,.08);
  backdrop-filter:blur(7.5px);
  color:#E7E8EE;
  font-size:14px;
  font-weight:500;
}
.jb-course-v2-main .jb-hero-badges i{
  width:8px;height:8px;border-radius:50%;display:inline-block;flex:none;
  background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);
}
.jb-course-v2-main .jb-course-hero-cta{display:none}

/* Quick info */
.jb-course-v2-main .jb-course-quick-section{padding:0;margin-top:clamp(18px,2vw,28px)}
.jb-course-v2-main .jb-course-quick-section .jb-quick-info{
  margin:0;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:1px;
  background:rgba(85,91,113,.4);
  border:1px solid rgba(85,91,113,.4);
  border-radius:clamp(15px,1.6vw,24px);
  overflow:hidden;
}
.jb-course-v2-main .jb-course-quick-section .jb-quick-info>div{
  background:#060718;
  padding:20px 16px;
  display:flex;
  flex-direction:column;
  gap:6px;
  text-align:center;
}
.jb-course-v2-main .jb-quick-info span{margin:0;color:#A1A6B7;font-size:13px}
.jb-course-v2-main .jb-quick-info strong{font-size:15px;font-weight:500;color:#fff}

/* Section rhythm: in the V2 design sections live inside the main column,
   not as independent full-width bands. */
.jb-course-v2-main>.jb-section{
  padding:0;
  margin:0;
  border:0;
  text-align:initial;
  overflow:visible;
}
.jb-course-v2-main>.jb-section.jb-bordered{
  border-top:1px solid rgba(85,91,113,.35);
  margin-top:clamp(40px,4.5vw,64px);
  padding-top:clamp(36px,4vw,56px);
}
.jb-course-v2-main .jb-section-head{max-width:none;margin:0}
.jb-course-v2-main .jb-section h2,
.jb-course-v2-main .jb-section-head h2{
  max-width:28ch;
  margin:0;
  font-size:clamp(22px,1.1rem + 1.1vw,30px);
  font-weight:400;
  line-height:1.3;
  letter-spacing:0;
}
.jb-course-v2-main .jb-section-head>p,
.jb-course-v2-main .jb-section> .jb-container>p:not(.jb-disclaimer):not(.jb-note):not(.jb-total-hours):not(.jb-kicker){
  max-width:56ch;
  margin:14px 0 0;
  font-size:clamp(16px,1rem + .2vw,18px);
  line-height:1.6;
  color:#AEB1BF;
}
.jb-course-v2-main .jb-section h3{
  font-size:clamp(16px,1rem + .2vw,20px);
  font-weight:500;
  line-height:1.4;
}
.jb-course-v2-main .jb-grid{margin-top:clamp(24px,2.8vw,40px);gap:clamp(14px,1.6vw,22px)}

/* Employers */
.jb-course-v2-main .jb-companies .jb-logo-marquee{margin-top:24px;border-radius:16px}
.jb-course-v2-main .jb-logo-track{gap:20px}
.jb-course-v2-main .jb-logo-item{width:150px;height:60px;border-radius:14px;padding:14px;background:rgba(255,255,255,.02)}
.jb-course-v2-main .jb-logo-item img{max-height:34px}

/* Why cards */
.jb-course-v2-main #why .jb-grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
.jb-course-v2-main #why .jb-icon-cards article{
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:clamp(20px,2vw,28px);
  border:1px solid transparent;
  border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
}
.jb-course-v2-main #why .jb-icon-cards article:hover{background:linear-gradient(#060718,#060718) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box}
.jb-course-v2-main #why .jb-card-icon{width:28px;height:28px}
.jb-course-v2-main #why h3{margin:0}
.jb-course-v2-main #why p{margin:0;font-size:14px;line-height:1.6}

/* Career salary rows */
.jb-course-v2-main .jb-salary-table{display:flex;flex-direction:column;gap:10px;margin-top:clamp(24px,2.6vw,36px)}
.jb-course-v2-main .jb-salary-table article{
  display:grid;
  grid-template-columns:1.8fr 3fr;
  gap:12px;
  align-items:center;
  padding:clamp(14px,1.6vw,20px) clamp(16px,1.8vw,24px);
  border:1px solid transparent;
  border-radius:clamp(13px,1.4vw,18px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
}
.jb-course-v2-main .jb-role-head{display:flex;flex-direction:column;gap:4px;margin:0;justify-content:center}
.jb-course-v2-main .jb-role-head strong{font-size:clamp(15px,1rem,17px);font-weight:500}
.jb-course-v2-main .jb-role-head span{font-size:12px;color:#fff}
.jb-course-v2-main .jb-salary-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.jb-course-v2-main .jb-salary-cols>div{padding:0;background:none;border-radius:0}
.jb-course-v2-main .jb-salary-cols span{font-size:11px;color:#fff}
.jb-course-v2-main .jb-salary-cols strong{font:500 13px/1.4 var(--jb-font-latin,'Roboto',sans-serif);direction:ltr;color:#fff}
.jb-course-v2-main .jb-salary-cols>div:last-child strong{color:#fff}
.jb-course-v2-main .jb-industry-quote{
  margin:clamp(20px,2.4vw,32px) 0 0;
  padding:clamp(20px,2.2vw,30px);
  border:1px solid transparent;
  border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
  color:#D6D8E0;
  font-size:clamp(16px,1rem + .2vw,18px);
  line-height:1.7;
}
.jb-course-v2-main .jb-industry-quote cite{margin-top:12px;color:#A1A6B7;font-size:13px}
.jb-course-v2-main .jb-disclaimer{margin:16px 0 0!important;font-size:12px!important;line-height:1.6!important;color:#A1A6B7!important;max-width:none!important}
.jb-course-v2-main .jb-section-cta{margin-top:18px}
.jb-course-v2-main .jb-section-cta .jb-btn-glass{
  min-height:0;padding:0;border:0!important;background:none!important;backdrop-filter:none;color:#CCCCD8!important;box-shadow:none!important;
}
.jb-course-v2-main .jb-section-cta .jb-btn-glass:hover{color:#F0F2F9!important;transform:none;filter:none}

/* Accordions */
.jb-course-v2-main .jb-accordion{display:flex;flex-direction:column;gap:10px;margin-top:clamp(24px,2.6vw,36px)}
.jb-course-v2-main .jb-accordion-item{
  border:1px solid transparent;
  border-radius:clamp(13px,1.4vw,18px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
  overflow:hidden;
}
.jb-course-v2-main .jb-accordion-item:hover,
.jb-course-v2-main .jb-accordion-item.is-open{background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}
.jb-course-v2-main .jb-accordion-item>button{padding:clamp(14px,1.6vw,20px) clamp(16px,1.8vw,24px);gap:14px}
.jb-course-v2-main .jb-accordion-item>button:hover{background:rgba(30,202,255,.025)!important}
.jb-course-v2-main .jb-accordion-item>button strong{font-size:clamp(15px,1rem,17px);font-weight:500}
.jb-course-v2-main .jb-accordion-item>button small{font-size:12px}
.jb-course-v2-main .jb-accordion-item>button b{font-size:19px;color:#B3B5BD!important}
.jb-course-v2-main .jb-accordion-panel{padding:14px clamp(16px,1.8vw,24px) clamp(14px,1.6vw,20px);border-top:1px solid rgba(85,91,113,.35)}
.jb-course-v2-main .jb-accordion-panel p{margin:0;font-size:14px;line-height:1.7}

/* Testimonials */
.jb-course-v2-main .jb-testimonial-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:clamp(14px,1.6vw,22px);margin-top:clamp(24px,2.6vw,36px)}
.jb-course-v2-main .jb-testimonial{
  display:flex;flex-direction:column;gap:16px;margin:0;padding:clamp(20px,2vw,28px);
  border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
}
.jb-course-v2-main .jb-testimonial blockquote{order:1;flex:1;margin:0;font-size:15px;line-height:1.6;color:#D6D8E0}
.jb-course-v2-main .jb-testimonial-author{order:2;border-top:1px solid rgba(85,91,113,.5);padding-top:14px}
.jb-course-v2-main .jb-testimonial-author img{width:48px;height:48px;padding:2px;border-radius:50%;background:conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9)}
.jb-course-v2-main .jb-testimonial-course{order:3;margin:0;font-size:12px!important}

/* Audience: intentionally light, top-border cards */
.jb-course-v2-main #audience .jb-grid-4{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:clamp(20px,2.2vw,32px)}
.jb-course-v2-main #audience .jb-icon-cards article{
  min-height:0;padding:18px 0 0;border:0;border-top:1px solid #555B71;border-radius:0;background:none;gap:8px;
}
.jb-course-v2-main #audience .jb-card-icon{width:24px;height:24px;color:#B3B5BD}
.jb-course-v2-main #audience h3{margin:4px 0 0}
.jb-course-v2-main #audience p{margin:0;font-size:14px}
.jb-course-v2-main .jb-admission{
  margin-top:clamp(24px,2.6vw,36px);padding:clamp(18px,2vw,28px);
  border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
  display:flex;flex-wrap:wrap;align-items:center;gap:16px;
}
.jb-course-v2-main .jb-admission h3{margin:0}
.jb-course-v2-main .jb-admission .jb-chips{margin:0}

/* Program */
.jb-course-v2-main .jb-program-two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,3vw,46px);margin:clamp(26px,3vw,40px) 0 0}
.jb-course-v2-main .jb-check-list{margin:16px 0 0;gap:9px}
.jb-course-v2-main .jb-check-list li{font-size:14px;line-height:1.6}
.jb-course-v2-main .jb-mini-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}
.jb-course-v2-main .jb-mini-grid article{padding:15px 16px;border:1px solid rgba(85,91,113,.5);border-radius:14px;background:rgba(255,255,255,.015)}
.jb-course-v2-main .jb-mini-grid h4{margin:0;font-size:15px;font-weight:500}
.jb-course-v2-main .jb-mini-grid p{margin:5px 0 0!important;font-size:13px!important}
.jb-course-v2-main .jb-subheading{margin:clamp(26px,3vw,40px) 0 0!important;font-size:clamp(18px,1.05rem + .3vw,21px)!important}
.jb-course-v2-main #program>.jb-container>.jb-accordion{margin-top:16px}
.jb-course-v2-main .jb-syl-head{width:100%;display:flex!important;flex-direction:row!important;align-items:center!important;gap:14px!important}
.jb-course-v2-main .jb-syl-head em{font:500 13px/1.4 var(--jb-font-latin,'Roboto',sans-serif);color:#1ECAFF}
.jb-course-v2-main .jb-syl-head strong{flex:1;text-align:right}
.jb-course-v2-main .jb-syl-head small{margin-inline-start:0;flex:none}
.jb-course-v2-main .jb-syl-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;padding-top:0;border:0}
.jb-course-v2-main .jb-syl-grid .jb-chips{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.jb-course-v2-main .jb-syl-grid .jb-chip{min-height:0;padding:0;border:0;background:none;border-radius:0;color:#D6D8E0;font:400 13px/1.5 var(--jb-font-latin,'Roboto',sans-serif)}
.jb-course-v2-main .jb-total-hours{margin:18px 0 0!important;font-size:15px!important;color:#D6D8E0!important}
.jb-course-v2-main .jb-total-hours strong{color:#1ECAFF!important}
.jb-course-v2-main .jb-syllabus-download{flex-direction:row;flex-wrap:wrap;align-items:center;gap:14px;margin-top:clamp(20px,2.2vw,30px)}
.jb-course-v2-main .jb-syllabus-download .jb-btn{background:var(--jb-primary-gradient)!important;border:0!important;min-height:48px;padding:0 30px}
.jb-course-v2-main .jb-syllabus-download small{font-size:12px;color:#A1A6B7}
.jb-course-v2-main .jb-tech-cert{display:block;margin-top:clamp(26px,3vw,40px)}
.jb-course-v2-main .jb-tech-cert>div:first-child .jb-chips{margin-top:16px}
.jb-course-v2-main .jb-tech-cert>div:last-child{
  margin-top:clamp(24px,2.6vw,36px);padding:clamp(18px,2vw,28px);
  border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;
}
.jb-course-v2-main .jb-tech-cert>div:last-child p{margin:8px 0 0!important;font-size:14px!important}

/* Certifications */
.jb-course-v2-main .jb-cert-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.jb-course-v2-main .jb-cert-grid article{min-height:0;padding:clamp(18px,2vw,26px);border:1px solid transparent;background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}
.jb-course-v2-main .jb-cert-grid article:before{content:'';width:10px;height:10px;border-radius:50%;display:block;margin-bottom:8px;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%)}
.jb-course-v2-main .jb-cert-grid h3{margin:0}.jb-course-v2-main .jb-cert-grid p{margin:8px 0 0!important;font-size:14px!important}

/* Lecturer */
.jb-course-v2-main .jb-lecturer{display:flex;flex-wrap:wrap;gap:clamp(20px,2.4vw,36px);align-items:center;margin-top:clamp(24px,2.6vw,36px)}
.jb-course-v2-main .jb-lecturer img{width:140px;height:140px;aspect-ratio:1;border-radius:50%;padding:2px;object-fit:cover;background:conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9);flex:none}
.jb-course-v2-main .jb-lecturer>div{flex:1;min-width:250px;max-width:56ch}
.jb-course-v2-main .jb-lecturer h3{margin:0;font-size:clamp(18px,1.05rem + .3vw,21px)}
.jb-course-v2-main .jb-lecturer-role{margin:5px 0 0!important;font-size:14px!important;color:#1ECAFF!important}
.jb-course-v2-main .jb-lecturer>div>p:last-child{margin:12px 0 0!important;font-size:14px!important;line-height:1.7!important}

/* Matrix / John Bryce stats */
.jb-course-v2-main .jb-matrix .jb-metrics{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:clamp(20px,2.2vw,32px);margin-top:clamp(26px,3vw,40px);border:0}
.jb-course-v2-main .jb-matrix .jb-metric{padding:16px 0 0;border:0;border-top:1px solid #555B71}
.jb-course-v2-main .jb-matrix .jb-metric-num{font-size:clamp(26px,1.4rem + 1.2vw,40px);font-weight:300;line-height:1;text-align:right}
.jb-course-v2-main .jb-matrix .jb-metric p{margin:7px 0 0!important;font-size:14px!important;color:#A1A6B7!important}
.jb-course-v2-main .jb-why-jb{margin-top:clamp(22px,2.4vw,34px)}
.jb-course-v2-main .jb-matrix .jb-section-cta .jb-btn-primary{min-height:48px;padding:0 30px}

/* Payment: top-border information columns, not heavy cards */
.jb-course-v2-main .jb-payment-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:clamp(20px,2.2vw,32px)}
.jb-course-v2-main .jb-payment-grid article{min-height:0;padding:16px 0 0;border:0;border-top:1px solid #555B71;border-radius:0;background:none}
.jb-course-v2-main .jb-payment-grid h3{margin:0;font-size:clamp(15px,1rem,18px)}
.jb-course-v2-main .jb-payment-grid p{margin:8px 0 0!important;font-size:14px!important}

/* FAQ */
.jb-course-v2-main .jb-faq{margin-top:clamp(24px,2.6vw,36px)}

/* Final contact card */
.jb-course-v2-main .jb-contact{
  position:relative;
  overflow:hidden;
  margin:clamp(40px,4.5vw,64px) 0 clamp(48px,5vw,72px);
  padding:clamp(36px,4.5vw,64px) clamp(24px,3vw,48px)!important;
  border:1px solid transparent!important;
  border-radius:clamp(15px,1.6vw,32px);
  background:linear-gradient(#050617,#050617) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box!important;
  text-align:center;
}
.jb-course-v2-main .jb-contact>.jb-container{max-width:none!important}
.jb-course-v2-main .jb-contact h2{max-width:24ch;margin-inline:auto}
.jb-course-v2-main .jb-contact>.jb-container>p{max-width:46ch!important;margin:14px auto 0!important}
.jb-course-v2-main .jb-contact .jb-actions{justify-content:center;margin-top:22px}
.jb-course-v2-main .jb-contact .jb-embedded-form{max-width:720px;margin:22px auto 0}

/* Sticky sidebar */
.jb-course-side{
  width:360px;
  flex:none;
  position:sticky;
  top:clamp(90px,9vw,120px);
  display:flex;
  flex-direction:column;
  gap:18px;
  padding-bottom:48px;
}
.jb-course-side-card{
  padding:clamp(20px,2.2vw,28px);
  border:1px solid transparent;
  border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.jb-course-side-lead{
  padding:clamp(22px,2.4vw,32px);
  background:linear-gradient(#0a0c20,#0a0c20) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;
  gap:14px;
}
.jb-course-side h3{margin:0;color:#fff;font-size:19px;font-weight:500;line-height:1.4}
.jb-course-side p{margin:0;color:#AEB1BF;font-size:14px;line-height:1.6}
.jb-course-side-eyebrow{font-size:12px!important;font-weight:500!important;letter-spacing:.08em!important;color:#B3B5BD!important}
.jb-course-side-main-cta{width:100%}
.jb-course-side-links{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}
.jb-course-side-links a,.jb-course-text-link{color:#CCCCD8!important;text-decoration:none!important;font-size:13px;font-weight:500}
.jb-course-side-links a:hover,.jb-course-text-link:hover{color:#1ECAFF!important}

/* Shared Elementor course form skin.
   Template #59 is rendered in both the sticky sidebar and final CTA; visual
   styling is shared while layout adapts to the available width. */
.jb-course-form-skin{width:100%}
.jb-course-form-skin .elementor-widget-form,
.jb-course-form-skin .elementor-form,
.jb-course-form-skin form{width:100%!important;margin:0!important}
.jb-course-form-skin .elementor-form-fields-wrapper{gap:10px!important}
.jb-course-form-skin .elementor-field-group{margin:0!important;padding:0!important;min-width:0}
.jb-course-form-skin .elementor-field-label{color:#D6D8E0!important;font:500 13px/1.4 var(--jb-font-primary)!important;margin:0 0 6px!important}
.jb-course-form-skin .elementor-field,
.jb-course-form-skin input:not([type="checkbox"]):not([type="radio"]),
.jb-course-form-skin select,
.jb-course-form-skin textarea{
  min-height:44px!important;
  width:100%!important;
  color:#fff!important;
  background:hsla(0,0%,100%,.05)!important;
  border:1px solid #555B71!important;
  border-radius:100px!important;
  padding:10px 18px!important;
  font:400 15px/1.4 var(--jb-font-primary)!important;
  box-shadow:none!important;
  outline:0!important;
  transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease!important;
}
.jb-course-form-skin input::placeholder,
.jb-course-form-skin textarea::placeholder{color:#8F93A3!important;opacity:1!important}
.jb-course-form-skin textarea{border-radius:18px!important;min-height:90px!important;resize:vertical}
.jb-course-form-skin .elementor-field:focus,
.jb-course-form-skin input:focus,
.jb-course-form-skin select:focus,
.jb-course-form-skin textarea:focus{
  border-color:#1ECAFF!important;
  background:hsla(0,0%,100%,.075)!important;
  box-shadow:0 0 0 3px rgba(30,202,255,.12)!important;
}
.jb-course-form-skin .elementor-button,
.jb-course-form-skin button[type="submit"]{
  width:100%!important;
  min-height:46px!important;
  margin:0!important;
  border:0!important;
  border-radius:100px!important;
  color:#fff!important;
  background:var(--jb-primary-gradient)!important;
  font:500 15px/1 var(--jb-font-primary)!important;
  box-shadow:none!important;
  transition:filter .3s ease,box-shadow .3s ease!important;
}
.jb-course-form-skin .elementor-button:hover,
.jb-course-form-skin button[type="submit"]:hover{filter:brightness(1.15)!important;box-shadow:0 8px 28px rgba(30,202,255,.12)!important}
.jb-course-form-skin .elementor-field-type-acceptance,
.jb-course-form-skin .elementor-field-type-checkbox,
.jb-course-form-skin .elementor-field-option{color:#AEB1BF!important;font-size:12px!important;line-height:1.5!important}
.jb-course-form-skin input[type="checkbox"],
.jb-course-form-skin input[type="radio"]{accent-color:#1ECAFF!important}
.jb-course-form-skin .elementor-message{font:400 13px/1.5 var(--jb-font-primary)!important;color:#AEB1BF!important}

/* Sidebar: compact single-column form, exactly as in Cyber Course V2. */
.jb-course-side-form .elementor-form-fields-wrapper{display:flex!important;flex-direction:column!important;gap:10px!important}
.jb-course-side-form .elementor-field-group{width:100%!important}

/* Final CTA: same skin, but the V2 desktop composition places the two fields
   and submit action on one line. Elementor field width classes are neutralized
   only inside this bottom variant. */
.jb-course-bottom-form{max-width:820px!important;margin:22px auto 0!important}
.jb-course-bottom-form .elementor-form-fields-wrapper{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(150px,.8fr)!important;
  gap:10px!important;
  align-items:end!important;
}
.jb-course-bottom-form .elementor-field-group{width:100%!important;max-width:none!important}
.jb-course-bottom-form .elementor-field-type-submit{grid-column:auto!important;align-self:stretch!important}
.jb-course-bottom-form .elementor-field-type-submit .elementor-button,
.jb-course-bottom-form .elementor-field-type-submit button[type="submit"]{height:100%!important;min-height:44px!important}
.jb-course-bottom-form .jb-marketing-consent{grid-column:1/-1!important;grid-row:auto!important;margin-top:2px!important}
.jb-course-bottom-form .elementor-field-type-acceptance,
.jb-course-bottom-form .elementor-field-type-checkbox,
.jb-course-bottom-form .elementor-field-type-html{grid-column:1/-1!important}

@media(max-width:760px){
  .jb-course-bottom-form .elementor-form-fields-wrapper{grid-template-columns:1fr!important}
  .jb-course-bottom-form .elementor-field-type-submit,
  .jb-course-bottom-form .elementor-field-type-acceptance,
  .jb-course-bottom-form .elementor-field-type-checkbox,
  .jb-course-bottom-form .elementor-field-type-html{grid-column:auto!important}
}

/* Mobile fixed actions */
.jb-course-mobile-bar{display:none}
.jb-course-mobile-round{width:48px;height:48px;flex:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff!important;text-decoration:none!important;background:hsla(0,0%,100%,.1);border:1px solid rgba(200,200,200,.35)}

@media(max-width:1080px){
  .jb-course-v2{padding-bottom:74px}
  .jb-course-v2-shell{display:block;padding-top:88px}
  .jb-course-side{display:none}
  .jb-course-v2-main .jb-course-hero-cta{display:inline-flex;align-self:flex-start}
  .jb-course-mobile-bar{
    position:fixed;left:0;right:0;bottom:0;z-index:90;
    display:flex;gap:10px;padding:12px 16px;
    background:rgba(4,5,20,.92);backdrop-filter:blur(16px);border-top:1px solid hsla(0,0%,100%,.12);
  }
  .jb-course-mobile-bar>.jb-btn{flex:1;min-height:48px}
}
@media(max-width:720px){
  .jb-course-v2-shell{padding-inline:20px}
  .jb-course-breadcrumbs{padding:10px 0;font-size:12px}
  .jb-course-v2-main .jb-course-hero-card{padding:30px 20px}
  .jb-course-v2-main .jb-course-hero h1{font-size:clamp(34px,10vw,46px)}
  .jb-course-v2-main .jb-course-quick-section .jb-quick-info{grid-template-columns:repeat(2,1fr)}
  .jb-course-v2-main .jb-salary-table article{grid-template-columns:1fr;gap:14px}
  .jb-course-v2-main .jb-program-two{grid-template-columns:1fr}
  .jb-course-v2-main .jb-mini-grid{grid-template-columns:1fr}
  .jb-course-v2-main .jb-syl-head{flex-wrap:wrap}
  .jb-course-v2-main .jb-syl-head small{width:100%}
  .jb-course-v2-main .jb-contact{padding:32px 20px!important}
}
@media(prefers-reduced-motion:reduce){
  .jb-course-v2 *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}
.elementor-widget-shortcode .elementor-shortcode>.jb-course-v2{width:100%;max-width:none;min-width:0}

/* =========================================================
   JB Core 0.5.0 — Cyber Course V2 source fidelity pass
   Source: uploaded Claude Design Cyber Course V2 HTML.
   This block intentionally scopes all corrections to course pages.
   ========================================================= */

/* Exact falling binary rain used by both the hero and the final contact card. */
@keyframes jbDigitsFall{0%{transform:translateY(-50%)}100%{transform:translateY(0)}}
.jb-course-v2 .jb-course-digit-rain{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  direction:ltr!important;
  padding:0!important;
  word-spacing:normal!important;
  letter-spacing:normal!important;
  font-size:initial!important;
  line-height:normal!important;
  color:inherit!important;
  mask-image:radial-gradient(120% 90% at 50% 30%,#000 28%,transparent 78%);
  -webkit-mask-image:radial-gradient(120% 90% at 50% 30%,#000 28%,transparent 78%);
}
.jb-course-v2 .jb-course-digit-col{
  position:absolute;
  top:0;
  left:var(--jb-rain-left);
  height:200%;
  font-family:var(--jb-font-latin,'Roboto',ui-monospace,monospace);
  font-size:13px;
  line-height:1.45;
  color:#1ECAFF;
  opacity:var(--jb-rain-op);
  white-space:pre;
  animation:jbDigitsFall var(--jb-rain-dur) linear var(--jb-rain-delay) infinite;
}

/* The source does not constrain most section headings to 28ch. */
.jb-course-v2-main .jb-section h2,
.jb-course-v2-main .jb-section-head h2{max-width:none}
.jb-course-v2-main .jb-matrix h2{max-width:28ch}
.jb-course-v2-main .jb-contact h2{max-width:24ch}

/* Course CTAs in the Claude source are flat gradient pills, without drop shadows/lift. */
.jb-course-v2 .jb-btn-primary{
  box-shadow:none!important;
  transform:none!important;
  min-height:48px;
  font-size:15px;
  font-weight:500;
  padding-inline:30px;
}
.jb-course-v2 .jb-btn-primary:hover{filter:brightness(1.15)!important;transform:none!important;box-shadow:none!important}

/* Placement accordion includes the small gradient marker shown in the source. */
.jb-course-v2-main #placement .jb-accordion-item>button::before{
  content:'';
  width:10px;
  height:10px;
  border-radius:50%;
  flex:none;
  background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);
}

/* Claude's accordions do not receive a colored surface fill on hover/open. */
.jb-course-v2-main .jb-accordion-item:hover,
.jb-course-v2-main .jb-accordion-item.is-open{
  border-color:transparent!important;
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box!important;
  box-shadow:none!important;
}
.jb-course-v2-main .jb-accordion-item>button:hover{background:transparent!important}

/* Text-only CTA used under career and payment sections. */
.jb-course-text-cta{
  all:unset;
  box-sizing:border-box;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#CCCCD8;
  font:500 15px/1.4 var(--jb-font-primary);
  transition:gap .3s ease,color .3s ease;
}
.jb-course-text-cta:hover{gap:18px;color:#F0F2F9}
.jb-course-text-cta:focus-visible{outline:2px solid #1ECAFF;outline-offset:5px;border-radius:8px}

/* Only three graduate stories appear in the V2 composition; course metadata is not shown. */
.jb-course-v2-main .jb-testimonial-course{display:none!important}

/* Program section is stacked in the source — learning outcomes first, included items second. */
.jb-course-v2-main .jb-program-heading{
  margin:clamp(26px,3vw,40px) 0 0!important;
  font-size:clamp(18px,1.05rem + .3vw,21px)!important;
  font-weight:500!important;
}
.jb-course-v2-main .jb-learn-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
  gap:12px 24px!important;
  margin-top:16px!important;
}
.jb-course-v2-main .jb-learn-grid li{
  position:relative;
  padding-inline-start:15px;
  color:#D6D8E0;
  font-size:14px;
  line-height:1.6;
}
.jb-course-v2-main .jb-learn-grid li::before{
  content:'';
  position:absolute;
  inset-inline-start:0;
  top:7px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);
}
.jb-course-v2-main .jb-included-grid{
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:clamp(12px,1.4vw,18px);
  margin-top:16px;
}
.jb-course-v2-main .jb-included-grid article{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:clamp(16px,1.8vw,22px);
  border:1px solid transparent;
  border-radius:clamp(13px,1.4vw,18px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
}
.jb-course-v2-main .jb-included-grid h4{font-size:clamp(15px,1rem,17px);font-weight:500;margin:0;color:#fff}
.jb-course-v2-main .jb-included-grid p{font-size:13px!important;line-height:1.6!important;color:#AEB1BF!important;margin:0!important}

/* Syllabus topics are text rows with gradient dots, not pill chips. */
.jb-course-v2-main .jb-syllabus-topics{display:flex;flex-direction:column;gap:7px}
.jb-course-v2-main .jb-syllabus-topics>span{
  position:relative;
  display:flex;
  justify-content:flex-end;
  padding-inline-end:14px;
  color:#D6D8E0;
  font:400 13px/1.5 var(--jb-font-latin,'Roboto',sans-serif);
  text-align:right;
}
.jb-course-v2-main .jb-syllabus-topics>span::after{
  content:'';
  position:absolute;
  inset-inline-end:0;
  top:6px;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);
}
.jb-course-v2-main .jb-tech-list{margin-top:16px}
.jb-course-v2-main .jb-tech-list .jb-chip{font-size:13px;min-height:0;padding:9px 18px}
.jb-course-v2-main .jb-course-certificate-card{
  margin-top:clamp(24px,2.6vw,36px);
  padding:clamp(18px,2vw,28px);
  border:1px solid transparent;
  border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;
}
.jb-course-v2-main .jb-course-certificate-card h3{font-size:clamp(16px,1rem + .2vw,18px)!important;margin:0!important}
.jb-course-v2-main .jb-course-certificate-card p{font-size:14px!important;line-height:1.6!important;margin:8px 0 0!important;color:#AEB1BF!important}

/* Certification names in the prototype are LTR while staying right-aligned. */
.jb-course-v2-main .jb-cert-grid h3{direction:ltr;text-align:right}

/* Matrix value-proposition chips include the same small gradient marker as the prototype. */
.jb-course-v2-main .jb-why-jb .jb-chip{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:0;
  padding:9px 16px 9px 16px;
  font-size:13px;
}
.jb-course-v2-main .jb-why-jb .jb-chip::before{
  content:'';
  width:7px;
  height:7px;
  border-radius:50%;
  flex:none;
  background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);
}

/* Final contact card receives the same animated rain + centered radial glow as Claude V2. */
.jb-course-v2-main .jb-contact>.jb-container{position:relative;z-index:1}
.jb-course-v2-main .jb-course-contact-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:16px}
.jb-course-v2-main .jb-course-contact-content>p{max-width:46ch!important;margin:0!important;font-size:clamp(16px,1rem + .2vw,18px)!important}
.jb-course-v2-main .jb-course-contact-glow{
  position:absolute;
  top:-70%;
  left:50%;
  transform:translateX(-50%);
  width:min(900px,90vw);
  height:min(900px,90vw);
  border-radius:50%;
  opacity:.16;
  background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);
  pointer-events:none;
  z-index:0;
}
.jb-course-contact-secondary{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:8px}
.jb-course-contact-secondary a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 26px;
  border-radius:100px;
  color:#FEFEFE!important;
  background:hsla(0,0%,100%,.1);
  backdrop-filter:blur(7.5px);
  border:1px solid rgba(200,200,200,.4);
  font-size:14px;
  font-weight:500;
  text-decoration:none!important;
  transition:background .3s ease,color .3s ease;
}
.jb-course-contact-secondary a:hover{background:hsla(0,0%,100%,.18);color:#fff!important}

/* Elementor #59: match V2's purple focus accent inside course forms. */
.jb-course-v2 .jb-course-form-skin .elementor-field:focus,
.jb-course-v2 .jb-course-form-skin input:focus,
.jb-course-v2 .jb-course-form-skin select:focus,
.jb-course-v2 .jb-course-form-skin textarea:focus{
  border-color:#C24AF9!important;
  box-shadow:none!important;
}

/* Modal used by the V2 CTAs. */
.jb-course-modal[hidden]{display:none!important}
.jb-course-modal{
  position:fixed;
  inset:0;
  z-index:100001;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
}
.jb-course-modal-backdrop{position:absolute;inset:0;background:rgba(3,4,16,.75);backdrop-filter:blur(8px)}
.jb-course-modal-dialog{
  position:relative;
  z-index:1;
  width:min(440px,100%);
  padding:clamp(24px,3vw,36px);
  border:1px solid transparent;
  border-radius:20px;
  background:linear-gradient(#0a0c20,#0a0c20) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
  display:flex;
  flex-direction:column;
  gap:16px;
  color:#fff;
  font-family:var(--jb-font-primary);
  direction:rtl;
}
.jb-course-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.jb-course-modal-head h3{font-size:20px;font-weight:500;margin:0;color:#fff}
.jb-course-modal-dialog>p{font-size:15px;line-height:1.6;color:#AEB1BF;margin:0}
.jb-course-modal-close{all:unset;cursor:pointer;color:#A1A6B7;font-size:20px;padding:4px 10px}
.jb-course-modal-close:hover{color:#fff}
body.jb-course-modal-open{overflow:hidden}

/* Mobile action bar from the V2 source. */
.jb-course-mobile-whatsapp{color:#25D366!important}

@media(max-width:1080px){
  .jb-course-v2-main .jb-course-hero-cta{display:inline-flex;width:auto;align-self:flex-start}
}
@media(max-width:680px){
  .jb-course-v2-main .jb-learn-grid{grid-template-columns:1fr}
  .jb-course-v2-main .jb-included-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .jb-course-v2 .jb-course-digit-col{animation:none!important;transform:translateY(-25%)}
  .jb-course-v2 .jb-course-text-cta{transition:none!important}
}

/* --- 0.5.1 course-page cleanup and bidi fixes --- */
.jb-course-source-details{display:none!important}

/* Mixed Hebrew/English titles should keep natural reading order. */
.jb-course-v2-main .jb-syl-head strong,
.jb-course-v2-main .jb-accordion-copy strong,
.jb-course-v2-main .jb-accordion-copy small,
.jb-course-v2-main .jb-role-head strong,
.jb-course-v2-main .jb-testimonial-author span{
  unicode-bidi:plaintext;
}
.jb-course-v2-main .jb-syllabus-topics>span{
  direction:rtl;
  unicode-bidi:plaintext;
  text-align:right;
}

/* Career / salary section */
.jb-course-v2-main .jb-role-head{
  align-items:flex-start;
  text-align:right;
}
.jb-course-v2-main .jb-role-head span{
  display:flex;
  align-items:center;
  gap:6px;
}
.jb-course-v2-main .jb-role-head span strong{
  font:500 12px/1.4 var(--jb-font-latin,'Roboto',sans-serif);
  color:#fff;
}

/* Placement accordion content should sit on the right edge, not centered. */
.jb-course-v2-main #placement .jb-accordion-item>button{
  align-items:flex-start;
}
.jb-course-v2-main #placement .jb-accordion-item>button .jb-accordion-copy{
  flex:1;
  align-items:flex-start;
  text-align:right;
}
.jb-course-v2-main #placement .jb-accordion-item>button b{
  margin-inline-start:10px;
}

/* Testimonials: image or fallback avatar + clear author row. */
.jb-course-v2-main .jb-testimonial-author{
  display:flex;
  align-items:center;
  gap:14px;
}
.jb-course-v2-main .jb-testimonial-author>div{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.jb-course-v2-main .jb-testimonial-author strong{margin:0;font-size:16px;font-weight:500}
.jb-course-v2-main .jb-testimonial-author span{margin:0;color:#A1A6B7;font-size:13px;line-height:1.45}
.jb-course-v2-main .jb-testimonial-avatar{
  width:48px;
  height:48px;
  border-radius:50%;
  padding:2px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:none;
  background:conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9);
}
.jb-course-v2-main .jb-avatar-fallback span{
  width:100%;
  height:100%;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#15192c;
  color:#DDE0EA;
  font:500 18px/1 var(--jb-font-primary);
}

/* Matrix numbers should align right like the source. */
.jb-course-v2-main .jb-matrix .jb-metric,
.jb-course-v2-main .jb-matrix .jb-metric p{
  text-align:right;
}
.jb-course-v2-main .jb-matrix .jb-metric-num{
  width:100%;
  justify-content:flex-start;
  direction:ltr;
  text-align:right;
}

/* --- 0.5.2 syllabus bidi + alignment fidelity --- */
.jb-course-v2-main .jb-syl-head{
  direction:rtl;
  text-align:right;
}
.jb-course-v2-main .jb-syl-title{
  flex:1;
  min-width:0;
  display:block;
  white-space:nowrap;
  text-align:right!important;
  direction:rtl;
  unicode-bidi:isolate;
}
.jb-course-v2-main .jb-bidi-mixed{
  display:inline-flex;
  flex-wrap:nowrap;
  white-space:nowrap;
  align-items:baseline;
  justify-content:flex-start;
  gap:.28em;
  direction:rtl;
  unicode-bidi:isolate;
  text-align:right;
}
.jb-course-v2-main .jb-bidi-mixed>bdi{
  display:inline-block;
  unicode-bidi:isolate;
  white-space:nowrap;
}

/* Both syllabus columns follow the Claude V2: labels and content right aligned. */
.jb-course-v2-main .jb-syl-grid{
  direction:rtl;
  text-align:right;
  align-items:start;
}
.jb-course-v2-main .jb-syl-grid>div,
.jb-course-v2-main .jb-syl-desc-col,
.jb-course-v2-main .jb-syl-topics-col{
  direction:rtl;
  text-align:right!important;
  justify-self:stretch;
}
.jb-course-v2-main .jb-syl-grid .jb-label{
  width:100%;
  text-align:right!important;
  direction:rtl;
  margin:0 0 8px!important;
}
.jb-course-v2-main .jb-syl-desc-col>p:last-child{
  width:100%;
  text-align:right!important;
  direction:rtl;
  margin:0!important;
}

/* Topics: even English stays visually right aligned, with the dot on the right. */
.jb-course-v2-main .jb-syllabus-topics{
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:7px;
  direction:rtl;
}
.jb-course-v2-main .jb-syllabus-topics>span{
  position:relative;
  width:100%;
  display:flex;
  flex-direction:row;
  align-items:flex-start;
  justify-content:flex-end;
  gap:8px;
  padding:0!important;
  direction:ltr!important;
  text-align:right!important;
  color:#D6D8E0;
  font:400 13px/1.5 var(--jb-font-latin,'Roboto',sans-serif);
}
.jb-course-v2-main .jb-syllabus-topics>span::after{
  content:'';
  position:static!important;
  width:6px;
  height:6px;
  margin-top:6px;
  border-radius:50%;
  flex:none;
  background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);
}
.jb-course-v2-main .jb-topic-text{
  display:block;
  unicode-bidi:isolate;
  text-align:right!important;
  color:inherit;
}

/* --- 0.5.4 definitive mixed-title fix ---
 * A legacy accordion rule sets every descendant span to flex-direction:column.
 * The mixed bidi title wrapper is itself a span, so SOC/Python were stacked.
 */
.jb-course-v2-main .jb-syl-head .jb-bidi-mixed{
  display:inline-flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  width:auto!important;
  max-width:100%;
  white-space:nowrap!important;
  gap:.28em!important;
}
.jb-course-v2-main .jb-syl-head .jb-bidi-mixed>bdi{
  display:inline!important;
  flex:none!important;
  width:auto!important;
  white-space:nowrap!important;
}

/* --- 0.5.5 Matrix statistics alignment --- */
.jb-course-v2-main .jb-matrix .jb-metric-num{
  justify-content:flex-end!important;
  text-align:right!important;
}


/* --- 0.5.8 homepage metrics + contact alignment --- */
.jb-home-metrics .jb-metrics {
  direction: rtl;
}

.jb-home-metrics .jb-metric {
  text-align: right !important;
  align-content: start;
}

.jb-home-metrics .jb-metric-num {
  width: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-end !important;
  gap: .12em;
  direction: ltr !important;
  text-align: right !important;
  font-size: clamp(28px, 2.15vw, 38px) !important;
  line-height: 1.08 !important;
}

.jb-home-metrics .jb-counter-value,
.jb-home-metrics .jb-metric-suffix-symbol {
  display: inline-block;
  direction: ltr !important;
  unicode-bidi: isolate;
  font: 300 1em/1.08 var(--jb-font-latin, 'Roboto', sans-serif);
  color: #fff;
}

.jb-home-metrics .jb-metric-suffix-text {
  flex-basis: 100%;
  display: block;
  margin-top: 5px;
  direction: rtl !important;
  unicode-bidi: plaintext;
  font: 300 clamp(18px, 1.45vw, 24px)/1.15 var(--jb-font-primary);
  color: #fff;
  text-align: right !important;
}

.jb-home-metrics .jb-metric p {
  width: 100%;
  text-align: right !important;
  margin-top: 10px !important;
}

.jb-home-contact > .jb-container {
  text-align: center !important;
}

.jb-home-contact > .jb-container > h2 {
  width: 100%;
  max-width: 28ch;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

.jb-home-contact > .jb-container > p {
  max-width: 48ch;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
}

@media (max-width: 680px) {
  .jb-home-metrics .jb-metric-num {
    font-size: clamp(27px, 8vw, 36px) !important;
  }
  .jb-home-metrics .jb-metric-suffix-text {
    font-size: clamp(18px, 6vw, 22px) !important;
  }
}


/* --- 0.6.0 course filter visibility fix ---
 * frontend.js correctly toggles the HTML hidden attribute on filtered cards.
 * Some component display rules (e.g. .jb-course-card { display:flex }) can
 * override the browser's default [hidden] rendering, so enforce it here.
 */
.jb-course-filters [hidden] {
  display: none !important;
}

/* --- 0.6.1 syllabus lead-gate infrastructure --- */
.jb-course-v2-main .jb-course-hero-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.jb-course-v2-main .jb-course-syllabus-cta{
  display:inline-flex;
  width:auto;
  align-self:flex-start;
}
.jb-syllabus-modal .jb-course-modal-dialog>p strong{
  color:#fff;
  font-weight:600;
}
.jb-syllabus-modal-form .elementor-form-fields-wrapper{
  width:100%;
}
@media(max-width:680px){
  .jb-course-v2-main .jb-course-hero-actions{width:100%;align-items:stretch}
  .jb-course-v2-main .jb-course-hero-actions .jb-btn{width:100%;justify-content:center}
}


/* --- 0.6.3: neutralize Elementor global Accent hover on JB close controls --- */
body .jb-course-modal button.jb-course-modal-close,
body .jb-course-modal button.jb-course-modal-close:hover,
body .jb-course-modal button.jb-course-modal-close:focus,
body .jb-course-modal button.jb-course-modal-close:focus-visible,
body .jb-course-modal button.jb-course-modal-close:active,
body button[class*="jb-"][aria-label="סגירה"],
body button[class*="jb-"][aria-label="סגירה"]:hover,
body button[class*="jb-"][aria-label="סגירה"]:focus,
body button[class*="jb-"][aria-label="סגירה"]:active{
  appearance:none !important;
  -webkit-appearance:none !important;
  background:transparent !important;
  background-color:transparent !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  filter:none !important;
  transform:none !important;
  text-decoration:none !important;
}
body .jb-course-modal button.jb-course-modal-close:hover,
body .jb-course-modal button.jb-course-modal-close:focus,
body .jb-course-modal button.jb-course-modal-close:active,
body button[class*="jb-"][aria-label="סגירה"]:hover,
body button[class*="jb-"][aria-label="סגירה"]:focus,
body button[class*="jb-"][aria-label="סגירה"]:active{
  color:#fff !important;
}
body .jb-course-modal button.jb-course-modal-close:focus-visible,
body button[class*="jb-"][aria-label="סגירה"]:focus-visible{
  outline:1px solid rgba(30,202,255,.65) !important;
  outline-offset:3px !important;
}

/* JB Core 0.6.6 — homepage catalog + B2B CTA */
@media (min-width:1025px){
  .jb-courses .jb-course-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px}
}
.jb-b2b-card .jb-b2b-scroll-cta{
  flex:0 0 auto;
  min-width:184px;
  justify-content:center;
  text-align:center;
  text-decoration:none;
}
.jb-home-contact{scroll-margin-top:120px}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* =========================================================
   JB Core 0.6.9 — FINAL Homepage V2 fidelity pass
   Source: "John Bryce - דף הבית" / FINAL Homepage V2
   Scope deliberately stays on homepage-specific components so
   course, domain and contact-page designs are not changed.
   ========================================================= */

/* Shared homepage rhythm */
.jb-home-hero-v2,
.jb-home-metrics,
.jb-home-geo-v2,
.jb-courses,
.jb-home-companies-v2,
.jb-home-testimonials-v2,
#method.jb-section,
#career.jb-career,
.jb-home-articles-v2,
.jb-home-contact-v2{
  background:#030410;
  color:#fff;
}
.jb-home-metrics,
.jb-courses,
.jb-home-companies-v2,
.jb-home-testimonials-v2,
#method.jb-section,
#career.jb-career,
.jb-home-articles-v2{
  padding:clamp(56px,6vw,96px) 0;
}
.jb-home-metrics h2,
.jb-courses .jb-section-head h2,
.jb-home-companies-v2 h2,
.jb-home-testimonials-v2 h2,
#method.jb-section> .jb-container > h2,
#career.jb-career .jb-section-head h2,
.jb-home-articles-v2 h2,
.jb-home-contact-v2 h2{
  font-size:clamp(24px,1.15rem + 1.4vw,36px) !important;
  font-weight:400;
  line-height:1.3;
  letter-spacing:0;
  margin:0;
}

/* Hero */
.jb-home-hero-v2{
  position:relative;
  overflow:hidden;
  min-height:0 !important;
  padding:clamp(150px,17vw,230px) 0 clamp(80px,9vw,130px) !important;
}
.jb-home-hero-v2 .jb-home-hero-bg,
.jb-home-hero-v2 .jb-home-binary{
  position:absolute;
  inset:0;
  pointer-events:none;
}
.jb-home-hero-v2 .jb-home-hero-bg{z-index:0;overflow:hidden}
.jb-home-hero-v2 .jb-home-orb{position:absolute;display:block;border-radius:50%;pointer-events:none}
.jb-home-hero-v2 .jb-home-orb-a{
  top:-30%;inset-inline-start:-15%;width:min(1200px,95vw);height:min(1350px,130vw);opacity:.18;
  background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);
}
.jb-home-hero-v2 .jb-home-orb-b{
  bottom:-45%;inset-inline-end:-20%;width:min(1000px,90vw);height:min(1100px,110vw);opacity:.14;
  background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(154,104,255,.7) 0%,rgba(30,202,255,0) 100%);
}
.jb-home-hero-v2 .jb-home-orb-c{
  top:8%;inset-inline-start:22%;width:460px;height:460px;opacity:.16;
  background:linear-gradient(180deg,#564AF9 0%,#C24AF9 100%);filter:blur(140px);animation:jbHomeOrbOne 26s ease-in-out infinite;
}
.jb-home-hero-v2 .jb-home-orb-d{
  bottom:0;inset-inline-end:14%;width:420px;height:420px;opacity:.16;
  background:linear-gradient(180deg,#C24AF9 0%,#1ECAFF 100%);filter:blur(140px);animation:jbHomeOrbTwo 32s ease-in-out infinite;
}
@keyframes jbHomeOrbOne{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(80px,45px,0) scale(1.12)}}
@keyframes jbHomeOrbTwo{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(-70px,-35px,0) scale(1.1)}}
.jb-home-hero-v2 .jb-home-binary{z-index:1;overflow:hidden}
.jb-home-hero-v2 .jb-home-binary pre{
  position:absolute;white-space:pre;margin:0;user-select:none;font-family:'Roboto',monospace;font-size:13px;line-height:1.6;overflow:hidden;
  background:radial-gradient(191.61% 137.1% at 0% 0%,rgb(0,0,16) 0%,rgb(83,66,118) 19%,rgba(83,66,118,.05) 29%,rgb(41,71,114) 45%,rgba(41,71,114,.01) 55%,rgb(50,16,65) 63%,rgba(50,16,65,.02) 74%,rgba(0,0,15,.7) 98%);
  background-size:300% 300%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
  animation:jbHomeBinaryShine 24s linear infinite alternate;
}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(1){top:14%;inset-inline-start:5%;width:clamp(200px,26vw,420px);animation-duration:24s}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(2){top:36%;inset-inline-end:6%;width:clamp(180px,22vw,380px);animation-duration:28s}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(3){bottom:14%;inset-inline-start:16%;width:clamp(170px,20vw,340px);animation-duration:35s}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(4){bottom:6%;inset-inline-end:3%;width:clamp(150px,17vw,280px);animation-duration:30s}
@keyframes jbHomeBinaryShine{0%{background-position:0% 0%}45%{background-position:85% 45%}100%{background-position:15% 100%}}
.jb-home-hero-v2 .jb-hero-inner{
  position:relative;z-index:5;display:flex;flex-direction:column;align-items:center;text-align:center;
}
.jb-home-hero-v2 .jb-eyebrow{
  display:inline-flex;align-items:center;gap:10px;width:auto;margin:0 0 clamp(24px,3vw,40px);padding:10px 20px;border-radius:100px;
  color:#B3B5BD !important;background:hsla(0,0%,100%,.08);backdrop-filter:blur(7.5px);-webkit-backdrop-filter:blur(7.5px);border:1px solid rgba(200,200,200,.3);
  font-size:13px;font-weight:500;letter-spacing:.08em;line-height:1.4;
}
.jb-home-hero-v2 .jb-eyebrow>span{width:8px;height:8px;flex:none;box-shadow:none;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%)}
.jb-home-hero-v2 h1{
  max-width:none !important;margin:0 !important;color:#fff;font-size:clamp(32px,1.4rem + 2.4vw,48px) !important;font-weight:400;line-height:1.25 !important;letter-spacing:0 !important;text-align:center;
}
.jb-home-hero-v2 .jb-hero-copy{
  max-width:52ch !important;margin:clamp(20px,2.4vw,30px) 0 0 !important;color:#AEB1BF !important;font-size:clamp(17px,1rem + .3vw,20px) !important;line-height:1.6 !important;text-align:center;
}
.jb-home-hero-v2 .jb-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-top:clamp(30px,3.5vw,46px)}
.jb-home-hero-v2 .jb-home-hero-contact,
.jb-home-hero-v2 .jb-home-hero-courses{font-size:16px;font-weight:500;color:#fff !important;text-decoration:none !important;transition:all .3s ease}
.jb-home-hero-v2 .jb-home-hero-contact{
  display:inline-flex;align-items:center;gap:14px;padding:10px 28px 10px 10px;border-radius:100px;background:linear-gradient(135deg,#8D4AF9 0%,#564AF9 100%);box-shadow:0 8px 30px rgba(86,74,249,.35);
}
.jb-home-hero-v2 .jb-home-hero-contact>span{width:38px;height:38px;border-radius:100px;background:hsla(0,0%,100%,.22);display:inline-flex;align-items:center;justify-content:center;font-size:17px}
.jb-home-hero-v2 .jb-home-hero-contact:hover{filter:brightness(1.12)}
.jb-home-hero-v2 .jb-home-hero-courses{
  display:inline-flex;align-items:center;gap:12px;padding:16px 30px;border-radius:100px;border:1px solid transparent;
  background:linear-gradient(#0b0d20,#0b0d20) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;
}
.jb-home-hero-v2 .jb-home-hero-courses>span{color:#B3B5BD}
.jb-home-hero-v2 .jb-home-hero-courses:hover{background:linear-gradient(#181b33,#181b33) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box}

/* Group metrics */
.jb-home-metrics .jb-heading-wide h2{font-size:clamp(24px,1.15rem + 1.4vw,36px) !important;font-weight:400;line-height:1.3;margin:0;max-width:none}
.jb-home-metrics .jb-note{font-size:13px;line-height:1.5;color:#A1A6B7 !important;margin:12px 0 0}
.jb-home-metrics .jb-metrics{
  display:grid !important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;gap:clamp(28px,3vw,48px) clamp(20px,2.5vw,40px) !important;
  margin-top:clamp(40px,4.5vw,68px) !important;border:0 !important;background:none !important;direction:rtl;
}
.jb-home-metrics .jb-metric{
  padding:22px 0 0 !important;border:0 !important;border-top:1px solid #555B71 !important;background:none !important;text-align:right !important;min-width:0;
}
.jb-home-metrics .jb-metric-num{
  width:100%;display:flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:baseline !important;justify-content:flex-end !important;gap:8px !important;
  direction:ltr !important;text-align:right !important;font-size:clamp(18px,1.05rem + .35vw,22px) !important;font-weight:500 !important;line-height:1 !important;white-space:nowrap;
}
.jb-home-metrics .jb-counter-value{display:inline-block;flex:0 0 auto;font:500 1em/1 var(--jb-font-latin,'Roboto',sans-serif) !important;color:#fff;font-variant-numeric:tabular-nums}
.jb-home-metrics .jb-metric-suffix,
.jb-home-metrics .jb-metric-suffix-symbol,
.jb-home-metrics .jb-metric-suffix-text{
  display:inline-block !important;flex:0 0 auto !important;flex-basis:auto !important;width:auto !important;margin:0 !important;color:#B3B5BD !important;font:400 15px/1 var(--jb-font-primary) !important;white-space:nowrap !important;text-align:right !important;
}
.jb-home-metrics .jb-metric-suffix-symbol{font-family:var(--jb-font-latin) !important;direction:ltr !important}
.jb-home-metrics .jb-metric p{width:100%;font-size:15px;line-height:1.4;color:#A1A6B7 !important;margin:12px 0 0 !important;text-align:right !important}

/* STKI */
.jb-feature-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:clamp(18px,2vw,28px) !important;margin-top:clamp(36px,4vw,56px) !important}
.jb-feature-grid .jb-feature{
  display:flex;flex-direction:column;gap:10px;min-height:0 !important;padding:clamp(22px,2.2vw,32px) !important;border:1px solid transparent !important;border-radius:clamp(15px,1.6vw,24px) !important;
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box !important;
}
.jb-feature-grid .jb-feature .jb-dot{width:10px;height:10px;box-shadow:none;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%)}
.jb-feature-grid .jb-feature h3{font-size:clamp(18px,1.05rem + .35vw,22px) !important;font-weight:500;line-height:1.4;margin:4px 0 0 !important}
.jb-feature-grid .jb-feature p{font-size:15px;line-height:1.6;color:#AEB1BF !important;margin:0 !important}

/* Geocartography / ynet strip */
.jb-home-geo-v2{position:relative;overflow:hidden;padding:clamp(36px,4vw,64px) 0 !important}
.jb-home-geo-v2 .jb-home-geo-glow{position:absolute;top:-60%;left:50%;transform:translateX(-50%);width:min(1100px,90vw);height:min(1100px,110vw);border-radius:50%;opacity:.14;background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);pointer-events:none}
.jb-home-geo-v2 .jb-container{position:relative}
.jb-home-geo-inner{position:relative;max-width:1100px;margin:0 auto;padding:clamp(12px,1.5vw,24px) clamp(24px,3.5vw,60px);display:flex;align-items:center;justify-content:space-between;gap:clamp(24px,3.5vw,56px);flex-wrap:wrap}
.jb-ynet-mark{flex:none;display:flex;align-items:center;gap:2px;padding:8px 4px}
.jb-ynet-y{width:clamp(64px,6vw,96px);height:clamp(64px,6vw,96px);border-radius:50%;background:#DE1A1A;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-family:Georgia,'Times New Roman',serif;font-size:clamp(46px,4.4vw,70px);font-weight:700;line-height:1;padding-bottom:.18em;box-sizing:border-box}
.jb-ynet-copy{display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.jb-ynet-copy b{font-family:Georgia,'Times New Roman',serif;font-size:clamp(44px,4.2vw,66px);font-weight:700;line-height:.9;color:#C7CAD6;letter-spacing:-.02em}
.jb-ynet-copy small{font-size:clamp(11px,1vw,14px);color:#DE1A1A;font-weight:500;align-self:flex-end}
.jb-home-geo-divider{width:1px;align-self:stretch;min-height:120px;background:rgba(255,255,255,.5);flex:none}
.jb-home-geo-quote{flex:1;min-width:260px;position:relative;padding:clamp(30px,3vw,44px) 0;text-align:center}
.jb-home-geo-quote>p{font-size:15px;line-height:1.5;color:#C7CAD6 !important;margin:0 0 8px !important;text-align:center}
.jb-home-geo-quote h2{font-size:clamp(20px,1.05rem + 1.1vw,30px) !important;font-weight:600;line-height:1.45;margin:0 auto !important;color:#fff;text-align:center;max-width:30ch}
.jb-home-quote-line{position:absolute;display:flex;align-items:center;gap:16px;width:70%}
.jb-home-quote-line b{font-size:clamp(36px,3.4vw,56px);font-weight:700;line-height:.5;color:#fff;font-family:Georgia,serif}
.jb-home-quote-line i{flex:1;height:1px;background:rgba(255,255,255,.5)}
.jb-home-quote-top{top:0;inset-inline-start:0}.jb-home-quote-bottom{bottom:0;inset-inline-end:0}

/* Course catalog */
.jb-courses{position:relative;overflow:hidden}
.jb-courses .jb-section-head{max-width:none;margin:0 0 clamp(30px,3.2vw,48px)}
.jb-courses .jb-section-head h2{max-width:none}
.jb-courses .jb-section-head>p{max-width:46ch;margin:16px 0 0;font-size:clamp(17px,1rem + .3vw,20px);line-height:1.6;color:#AEB1BF !important}
.jb-courses .jb-course-filters{margin-top:0;display:flex;flex-direction:column;gap:22px}
.jb-courses .jb-search{position:relative;display:block;max-width:560px}
.jb-courses .jb-search input{width:100%;box-sizing:border-box;min-height:48px;height:auto;padding:15px 50px 15px 24px;border:1px solid #555B71;border-radius:100px;background:hsla(0,0%,100%,.05);color:#fff;font:17px/1.25 inherit;outline:none;transition:border-color .3s ease}
.jb-courses .jb-search input:hover{border-color:#6B78A9}.jb-courses .jb-search input:focus{border-color:#C24AF9;box-shadow:none}
.jb-courses .jb-search>span:last-child{position:absolute;inset-inline-start:20px;inset-inline-end:auto;left:auto;top:50%;transform:translateY(-50%);color:#A1A6B7;font-size:20px}
.jb-courses .jb-filter-groups{display:flex;flex-wrap:wrap;gap:16px clamp(24px,3vw,48px);align-items:flex-start}
.jb-courses .jb-course-filters fieldset{border:0;padding:0;margin:0}
.jb-courses .jb-course-filters fieldset+fieldset{border-inline-start:1px solid rgba(85,91,113,.5);padding-inline-start:clamp(24px,3vw,48px)}
.jb-courses .jb-course-filters legend{font-size:13px;font-weight:500;letter-spacing:.08em;color:#B3B5BD;margin:0 0 12px;padding:0}
.jb-courses .jb-chips{gap:10px}
.jb-courses .jb-chip{min-height:40px;padding:0 18px;border-radius:100px;font-size:15px;font-weight:500;color:#AEB1BF;background:rgba(255,255,255,.045);border:1px solid #555B71}
.jb-courses .jb-filter-status{font-size:15px;line-height:1.4;color:#A1A6B7 !important;margin:0}
.jb-courses .jb-course-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(18px,2vw,28px);margin-top:clamp(6px,1vw,14px);min-height:120px}
.jb-courses .jb-course-card{min-height:0;border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);overflow:hidden;background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;display:flex;flex-direction:column;transition:transform .3s ease,background .3s ease}
.jb-courses .jb-course-card:hover{transform:translateY(-2px);background:linear-gradient(#060718,#060718) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box}
.jb-courses .jb-course-card-top{height:auto;aspect-ratio:16/9;position:relative;padding:0;overflow:hidden;background:transparent;display:block}
.jb-courses .jb-course-icon{position:absolute;inset:0;display:grid;place-items:center;opacity:.2}
.jb-courses .jb-course-icon:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#060718 0%,rgba(6,7,24,0) 45%);pointer-events:none}
.jb-courses .jb-course-icon svg{width:128px;height:128px;color:#1ECAFF;stroke-width:1.5}
.jb-courses .jb-card-badges{position:absolute;z-index:2;inset-inline:14px;bottom:14px;display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:nowrap}
.jb-courses .jb-card-badges span{font-size:13px;font-weight:500;line-height:1;padding:9px 16px;border-radius:100px;background:hsla(0,0%,100%,.1);backdrop-filter:blur(7.5px);-webkit-backdrop-filter:blur(7.5px);border:1px solid rgba(200,200,200,.3);color:#fff;white-space:nowrap}
.jb-courses .jb-course-card-body{display:flex;flex-direction:column;gap:14px;padding:clamp(18px,1.8vw,24px);flex:1}
.jb-courses .jb-course-card h3{font-size:clamp(18px,1.05rem + .35vw,22px);font-weight:500;line-height:1.4;margin:0}
.jb-courses .jb-course-card h3 a{display:block;color:#fff !important;font-size:inherit!important;font-weight:inherit!important;line-height:1.06!important;letter-spacing:inherit!important}.jb-courses .jb-course-card h3 a:hover{color:#1ECAFF !important}
.jb-courses .jb-course-card p{font-size:15px;line-height:1.6;color:#AEB1BF !important;margin:0;flex:1}
.jb-courses .jb-card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid rgba(85,91,113,.5);padding-top:16px;margin-top:auto;color:#A1A6B7;font-size:13px}
.jb-courses .jb-card-foot a{display:inline-flex;align-items:center;gap:10px;color:#CCCCD8 !important;font-size:15px;font-weight:500;transition:gap .3s ease,color .3s ease}
.jb-courses .jb-card-foot a:hover{gap:18px;color:#F0F2F9 !important}
.jb-courses .jb-show-more{margin:clamp(30px,3vw,48px) auto 0}
.jb-courses .jb-b2b-card{position:relative;overflow:hidden;margin-top:clamp(48px,5vw,80px);padding:clamp(28px,3.2vw,48px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,32px);background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:26px}
.jb-courses .jb-b2b-card .jb-b2b-glow{position:absolute;top:-140%;inset-inline-end:-10%;width:600px;height:600px;border-radius:50%;opacity:.16;background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);pointer-events:none}
.jb-courses .jb-b2b-card>div{position:relative;max-width:60ch}
.jb-courses .jb-b2b-card h3{font-size:clamp(20px,1.1rem + .6vw,26px) !important;font-weight:500;line-height:1.35;margin:0}
.jb-courses .jb-b2b-card p{font-size:15px;line-height:1.6;color:#AEB1BF !important;margin:12px 0 0}
.jb-courses .jb-b2b-scroll-cta{position:relative;min-width:0;min-height:0;padding:15px 32px;border-radius:100px;background:linear-gradient(135deg,#1ECAFF 0%,#C24AF9 100%) !important;font-size:15px;font-weight:500}
.jb-course-filters [hidden]{display:none !important}

/* Employer logos */
.jb-home-companies-v2{overflow:hidden}
.jb-home-companies-v2 h2{max-width:20ch}
.jb-home-companies-v2 .jb-logo-marquee{margin-top:clamp(32px,3.5vw,52px);overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
.jb-home-companies-v2 .jb-logo-track{display:flex;width:max-content;gap:clamp(20px,2.5vw,40px);animation:jbHomeLogoMarquee 42s linear infinite}
.jb-home-companies-v2 .jb-logo-item{width:180px;height:70px;flex:none;border:1px solid rgba(85,91,113,.34);border-radius:16px;background:rgba(255,255,255,.018);display:grid;place-items:center;padding:13px 18px}
.jb-home-companies-v2 .jb-logo-item a{width:100%;height:100%;display:grid;place-items:center}
.jb-home-companies-v2 .jb-logo-item img{max-width:100%;max-height:44px;object-fit:contain;filter:grayscale(1) brightness(1.85);opacity:.88;transition:filter .3s ease,opacity .3s ease}
.jb-home-companies-v2 .jb-logo-item:hover img{filter:none;opacity:1}
.jb-home-companies-v2 .jb-logo-marquee:hover .jb-logo-track{animation-play-state:paused}
@keyframes jbHomeLogoMarquee{to{transform:translateX(-50%)}}

/* Homepage testimonials — horizontal ribbon, author first */
.jb-home-testimonials-v2{position:relative;overflow:hidden}
.jb-home-testimonials-v2 h2{max-width:20ch}
.jb-home-testimonial-marquee{margin-top:clamp(32px,3.5vw,52px);overflow-x:hidden;scrollbar-width:none;cursor:grab;touch-action:pan-y;user-select:none;mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 4%,#000 96%,transparent)}
.jb-home-testimonial-track{display:flex;width:max-content;gap:clamp(16px,1.8vw,26px);animation:jbHomeTestimonialMarquee 58s linear infinite}
.jb-home-testimonial-marquee:hover .jb-home-testimonial-track{animation-play-state:paused}
@keyframes jbHomeTestimonialMarquee{to{transform:translateX(-50%)}}
.jb-home-testimonial-card{flex:none;width:min(420px,80vw);min-height:0;display:flex;flex-direction:column;gap:20px;margin:0;padding:clamp(24px,2.4vw,36px);box-sizing:border-box;border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}
.jb-home-testimonial-card .jb-testimonial-author{display:flex;align-items:center;gap:18px}
.jb-home-testimonial-card .jb-testimonial-author>img,
.jb-home-testimonial-card .jb-testimonial-author>.jb-testimonial-avatar{width:84px;height:84px;border-radius:50%;object-fit:cover;flex:none;box-sizing:border-box;border:2px solid transparent;background:linear-gradient(#0a0c20,#0a0c20) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;box-shadow:0 0 18px rgba(140,80,250,.3)}
.jb-home-testimonial-card .jb-testimonial-author>.jb-testimonial-avatar{display:grid;place-items:center;color:#B3B5BD;font-size:28px}
.jb-home-testimonial-card figcaption{display:flex;flex-direction:column;gap:4px}
.jb-home-testimonial-card figcaption strong{font-size:17px;font-weight:500;color:#fff}
.jb-home-testimonial-card figcaption span{font-size:13px;color:#A1A6B7;margin:0}
.jb-home-testimonial-card blockquote{margin:0;color:#D6D8E0;font-size:17px;line-height:1.6;flex:1}
.jb-home-testimonial-card .jb-testimonial-course{margin:0;border-top:1px solid rgba(85,91,113,.5);padding-top:16px;font-size:13px !important;color:#A1A6B7 !important}

/* Method */
#method.jb-section .jb-kicker{font-size:13px;font-weight:500;letter-spacing:.08em;color:#B3B5BD !important;margin:0 0 14px}
#method.jb-section .jb-method-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:clamp(24px,2.6vw,40px) !important;margin-top:clamp(36px,4vw,56px) !important}
#method.jb-section .jb-method-grid article{min-height:0 !important;padding:20px 0 0 !important;border:0 !important;border-top:1px solid #555B71 !important;border-radius:0 !important;background:none !important;display:flex;flex-direction:column;gap:10px}
#method.jb-section .jb-method-grid article>span{font-size:clamp(18px,1.05rem + .35vw,22px);font-weight:300;line-height:1;color:#B3B5BD;text-align:right}
#method.jb-section .jb-method-grid h3{font-size:clamp(18px,1.05rem + .35vw,22px);font-weight:500;line-height:1.4;margin:4px 0 0 !important}
#method.jb-section .jb-method-grid p{font-size:15px;line-height:1.6;color:#AEB1BF !important;margin:0 !important}

/* Career */
#career.jb-career{position:relative;overflow:hidden}
#career.jb-career:before{content:"";position:absolute;bottom:-70%;inset-inline-start:-15%;width:min(1000px,90vw);height:min(1000px,100vw);border-radius:50%;opacity:.12;background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);pointer-events:none}
#career.jb-career>.jb-container{position:relative;display:flex;flex-wrap:wrap;gap:clamp(32px,4vw,64px)}
#career.jb-career .jb-section-head{flex:1;min-width:280px;max-width:46ch;margin:0}
#career.jb-career .jb-section-head>p{font-size:clamp(17px,1rem + .3vw,20px);line-height:1.6;color:#AEB1BF !important;margin:16px 0 0}
#career.jb-career .jb-career-list{flex:2;min-width:300px;display:flex;flex-direction:column;gap:0;background:none;border:0}
#career.jb-career .jb-career-list article{display:flex;gap:18px;align-items:flex-start;border:0;border-top:1px solid rgba(85,91,113,.5);padding:20px 0;background:none}
#career.jb-career .jb-career-list .jb-dot{width:10px;height:10px;flex:none;margin-top:7px;box-shadow:none;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%)}
#career.jb-career .jb-career-list h3{font-size:clamp(18px,1.05rem + .35vw,22px);font-weight:500;line-height:1.4;margin:0}
#career.jb-career .jb-career-list p{font-size:15px;line-height:1.6;color:#AEB1BF !important;margin:6px 0 0}

/* Articles */
.jb-home-articles-v2 h2{max-width:20ch}
.jb-home-articles-v2 .jb-article-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(18px,2vw,28px);margin-top:clamp(32px,3.5vw,52px)}
.jb-home-articles-v2 .jb-article-card{display:flex;flex-direction:column;overflow:hidden;min-height:0;border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}
.jb-home-articles-v2 .jb-article-card:hover{background:linear-gradient(#060718,#060718) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box}
.jb-home-articles-v2 .jb-article-image{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 12px,rgba(255,255,255,.012) 12px 24px)}
.jb-home-articles-v2 .jb-article-image>a{position:absolute;inset:0;display:block}
.jb-home-articles-v2 .jb-article-image img{width:100%;height:100%;object-fit:cover;display:block}
.jb-home-articles-v2 .jb-article-placeholder{position:absolute;inset:0;display:block;background:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 12px,rgba(255,255,255,.012) 12px 24px)}
.jb-home-articles-v2 .jb-article-image .jb-tags{position:absolute;z-index:2;inset-inline-start:14px;bottom:14px;display:flex;gap:8px}
.jb-home-articles-v2 .jb-article-image .jb-tags span{font-size:13px;font-weight:500;line-height:1;padding:9px 16px;border-radius:100px;background:hsla(0,0%,100%,.1);backdrop-filter:blur(7.5px);-webkit-backdrop-filter:blur(7.5px);border:1px solid rgba(200,200,200,.3);color:#fff}
.jb-home-articles-v2 .jb-article-body{display:flex;flex-direction:column;gap:12px;padding:clamp(18px,1.8vw,24px);flex:1}
.jb-home-articles-v2 .jb-article-body h3{font-size:clamp(18px,1.05rem + .35vw,22px);font-weight:500;line-height:1.4;margin:0}
.jb-home-articles-v2 .jb-article-body>p:not(.jb-article-meta){font-size:15px;line-height:1.6;color:#AEB1BF !important;margin:0;flex:1}
.jb-home-articles-v2 .jb-article-meta{font-size:13px;color:#A1A6B7 !important;margin:0;display:flex;gap:8px;align-items:center}
.jb-home-articles-v2 .jb-article-foot{border-top:1px solid rgba(85,91,113,.5);padding-top:14px}
.jb-home-articles-v2 .jb-article-foot a{display:inline-flex;align-items:center;gap:10px;color:#CCCCD8 !important;font-size:15px;font-weight:500;text-decoration:none;transition:gap .3s ease,color .3s ease}
.jb-home-articles-v2 .jb-article-foot a:hover{gap:18px;color:#F0F2F9 !important}

/* Contact — keep the real Elementor form, match the supplied composition */
.jb-home-contact-v2{position:relative;overflow:hidden;padding:clamp(64px,7vw,120px) 0 !important;scroll-margin-top:120px}
.jb-home-contact-v2 .jb-home-contact-glow{position:absolute;top:-40%;left:50%;transform:translateX(-50%);width:min(1200px,95vw);height:min(1200px,120vw);border-radius:50%;opacity:.16;background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);pointer-events:none}
.jb-home-contact-v2>.jb-container{position:relative;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}
.jb-home-contact-v2 h2{max-width:20ch !important;margin:0 auto !important;text-align:center !important}
.jb-home-contact-v2>.jb-container>p{font-size:clamp(17px,1rem + .3vw,20px);line-height:1.6;color:#AEB1BF !important;max-width:46ch;margin:0 auto !important;text-align:center !important}
.jb-home-contact-v2 .jb-home-contact-form{width:min(100%,1100px);margin-top:22px;text-align:right}

@media (max-width:1180px){
  .jb-courses .jb-course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:900px){
  .jb-courses .jb-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jb-home-geo-divider{display:none}
  .jb-home-geo-inner{justify-content:center}
  .jb-home-geo-quote{flex-basis:100%}
}
@media (max-width:680px){
  .jb-home-hero-v2{padding:125px 0 78px !important}
  .jb-home-hero-v2 .jb-home-binary pre{font-size:10px;opacity:.62}
  .jb-home-hero-v2 .jb-home-binary pre:nth-child(3),.jb-home-hero-v2 .jb-home-binary pre:nth-child(4){display:none}
  .jb-home-hero-v2 .jb-actions{width:100%;gap:12px}
  .jb-home-hero-v2 .jb-home-hero-contact,.jb-home-hero-v2 .jb-home-hero-courses{max-width:100%}
  .jb-home-metrics .jb-metrics{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .jb-courses .jb-filter-groups{display:block}
  .jb-courses .jb-course-filters fieldset+fieldset{border-inline-start:0;border-top:1px solid rgba(85,91,113,.5);padding-inline-start:0;padding-top:20px;margin-top:20px}
  .jb-courses .jb-course-grid{grid-template-columns:1fr}
  .jb-courses .jb-b2b-card{align-items:flex-start}
  .jb-courses .jb-b2b-scroll-cta{width:100%;justify-content:center}
  .jb-home-geo-inner{padding-inline:0}
  .jb-ynet-mark{transform:scale(.88)}
  #career.jb-career .jb-section-head,#career.jb-career .jb-career-list{min-width:100%}
  .jb-home-contact-v2 .jb-home-contact-form{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .jb-home-hero-v2 .jb-home-orb-c,.jb-home-hero-v2 .jb-home-orb-d,.jb-home-hero-v2 .jb-home-binary pre,.jb-home-companies-v2 .jb-logo-track,.jb-home-testimonial-track{animation:none !important}
}


/* =========================================================
   0.7.0 — Homepage motion + exact ynet asset + article sizing
   ========================================================= */

/* FINAL Homepage V2 uses a moving 300% radial texture across the binary text. */
.jb-home-hero-v2 .jb-home-binary pre{
  animation-name:jbHomeBinaryChaos !important;
  animation-timing-function:linear !important;
  animation-iteration-count:infinite !important;
  animation-direction:alternate !important;
  will-change:background-position;
}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(1){animation-duration:24s !important}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(2){animation-duration:28s !important}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(3){animation-duration:35s !important}
.jb-home-hero-v2 .jb-home-binary pre:nth-child(4){animation-duration:30s !important}
@keyframes jbHomeBinaryChaos{
  0%{background-position:0% 0%}
  25%{background-position:100% 0%}
  50%{background-position:100% 100%}
  75%{background-position:0% 100%}
  100%{background-position:0% 0%}
}
/* Match the much more noticeable ambient movement in the supplied source. */
.jb-home-hero-v2 .jb-home-orb-c{animation-name:jbHomeOrbOneSource !important}
.jb-home-hero-v2 .jb-home-orb-d{animation-name:jbHomeOrbTwoSource !important}
@keyframes jbHomeOrbOneSource{
  0%{transform:translate(0,0)}20%{transform:translate(342px,187px)}40%{transform:translate(251px,-89px)}60%{transform:translate(-62px,82px)}80%{transform:translate(-202px,232px)}100%{transform:translate(0,0)}
}
@keyframes jbHomeOrbTwoSource{
  0%{transform:translate(0,0)}20%{transform:translate(-341px,-111px)}40%{transform:translate(-30px,100px)}60%{transform:translate(-239px,-142px)}80%{transform:translate(-41px,-32px)}100%{transform:translate(0,0)}
}

/* True rolling-digit counter, matching the source rather than only revealing the row. */
.jb-home-metrics .jb-counter-value.jb-counter-roller{
  display:flex !important;
  align-items:baseline;
  direction:ltr;
  overflow:visible;
}
.jb-home-metrics .jb-counter-digit{
  display:block;
  height:1em;
  overflow:hidden;
  flex:none;
}
.jb-home-metrics .jb-counter-stack{
  display:block;
  transform:translateY(0);
  transition:transform 1.1s cubic-bezier(.22,1,.36,1) var(--jb-counter-delay,0ms);
  will-change:transform;
}
.jb-home-metrics .jb-counter-stack>span{
  display:block;
  height:1em;
  line-height:1;
  text-align:center;
}
.jb-home-metrics .jb-counter-sep{
  display:block;
  height:1em;
  line-height:1;
  flex:none;
}
.jb-home-metrics [data-jb-counters].is-visible .jb-counter-stack,
.jb-home-metrics.jb-section [data-jb-counters].is-visible .jb-counter-stack{
  transform:translateY(var(--jb-counter-shift,0%));
}

/* Use the supplied official ynet artwork as-is. */
.jb-home-geo-v2 .jb-ynet-mark{
  flex:none;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:8px 4px;
}
.jb-home-geo-v2 .jb-ynet-logo{
  display:block;
  width:clamp(170px,16vw,230px);
  max-width:32vw;
  height:auto;
  object-fit:contain;
}

/* A real site can temporarily have one article. Keep it card-sized instead of
   stretching that single result across the entire 1560px content area. */
.jb-home-articles-v2 .jb-article-grid{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  align-items:start;
}
.jb-home-articles-v2 .jb-article-card{
  width:100%;
  max-width:470px;
  align-self:start;
}
.jb-home-articles-v2 .jb-article-body h3 a{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.jb-home-articles-v2 .jb-article-body>p:not(.jb-article-meta){
  flex:0 1 auto !important;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
@media(max-width:1024px){
  .jb-home-articles-v2 .jb-article-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .jb-home-articles-v2 .jb-article-card{max-width:none}
}
@media(max-width:680px){
  .jb-home-articles-v2 .jb-article-grid{grid-template-columns:1fr !important}
}
@media(prefers-reduced-motion:reduce){
  .jb-home-metrics .jb-counter-stack{transition:none !important;transform:translateY(var(--jb-counter-shift,0%)) !important}
  .jb-home-hero-v2 .jb-home-binary pre,.jb-home-hero-v2 .jb-home-orb-c,.jb-home-hero-v2 .jb-home-orb-d{animation:none !important}
}

/* =========================================================
   0.7.1 — Article hub /blog/ + homepage article CTA
   ========================================================= */

.jb-home-articles-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
}
.jb-home-articles-head h2{margin:0}
.jb-home-articles-all{
  display:inline-flex;
  align-items:center;
  gap:10px;
  flex:none;
  color:#fff !important;
  text-decoration:none !important;
  font-weight:600;
  border:1px solid rgba(85,91,113,.72);
  border-radius:999px;
  min-height:46px;
  padding:0 20px;
  background:rgba(255,255,255,.035);
  transition:border-color .25s ease,background .25s ease,gap .25s ease;
}
.jb-home-articles-all:hover{
  gap:16px;
  border-color:rgba(30,202,255,.65);
  background:rgba(30,202,255,.06);
}

.jb-blog-page{
  background:var(--jb-canvas,#030410);
  color:#fff;
  min-height:100vh;
  font-family:var(--jb-font-primary,'Heebo','Roboto',system-ui,sans-serif);
}
.jb-blog-page [hidden]{display:none !important}
.jb-blog-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(130px,12vw,190px) 0 clamp(64px,7vw,100px);
  border-bottom:1px solid rgba(85,91,113,.36);
}
.jb-blog-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 22% 25%,rgba(30,202,255,.10),transparent 31%),
    radial-gradient(circle at 78% 18%,rgba(194,74,249,.11),transparent 32%);
  pointer-events:none;
}
.jb-blog-hero-glow{
  position:absolute;
  width:min(980px,80vw);
  height:min(980px,80vw);
  border-radius:50%;
  top:-62%;
  left:50%;
  transform:translateX(-50%);
  background:radial-gradient(circle,rgba(86,74,249,.18),rgba(30,202,255,.03) 45%,transparent 70%);
  filter:blur(12px);
  pointer-events:none;
}
.jb-blog-hero>.jb-container{position:relative}
.jb-blog-hero .jb-eyebrow{margin:0 0 18px}
.jb-blog-hero h1{
  margin:0;
  max-width:18ch;
  font-size:clamp(42px,5.1vw,74px);
  line-height:1.05;
  letter-spacing:-.025em;
  font-weight:500;
}
.jb-blog-hero>.jb-container>p:last-child{
  max-width:62ch;
  margin:22px 0 0;
  color:#AEB1BF !important;
  font-size:clamp(17px,1rem + .3vw,20px);
  line-height:1.65;
}
.jb-blog-catalog{padding-top:clamp(54px,6vw,90px) !important}
.jb-blog-tools{
  display:flex;
  flex-direction:column;
  gap:28px;
  padding-bottom:30px;
  border-bottom:1px solid rgba(85,91,113,.42);
}
.jb-blog-search{max-width:820px}
.jb-blog-search input{
  background:#080a19 !important;
  border-color:rgba(85,91,113,.78) !important;
  min-height:58px !important;
}
.jb-blog-domain-filter{display:flex;flex-direction:column;gap:12px}
.jb-blog-filter-label{font-size:14px;color:#B8BBC7}
.jb-blog-domain-filter .jb-chips{gap:10px}
.jb-blog-domain-filter .jb-chip{
  background:#0A0C1C;
  border-color:rgba(85,91,113,.8);
}
.jb-blog-domain-filter .jb-chip:hover{border-color:rgba(30,202,255,.55);color:#fff}
.jb-blog-domain-filter .jb-chip.is-active{
  background:linear-gradient(135deg,var(--jb-cyan),var(--jb-purple));
  border-color:transparent;
}
.jb-blog-catalog .jb-filter-status{
  margin:24px 0 18px;
  color:#AEB1BF;
  text-align:right;
}
.jb-blog-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2vw,28px);
  margin-top:0;
  align-items:start;
}
.jb-blog-grid .jb-article-card{
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border:1px solid transparent;
  border-radius:clamp(15px,1.6vw,24px);
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;
}
.jb-blog-grid .jb-article-card:hover{
  background:linear-gradient(#060718,#060718) padding-box,conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9) border-box;
}
.jb-blog-grid .jb-article-image{
  position:relative;
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  background:#0b0d1d;
}
.jb-blog-grid .jb-article-image>a{position:absolute;inset:0;display:block}
.jb-blog-grid .jb-article-image img{width:100%;height:100%;object-fit:cover;display:block}
.jb-blog-grid .jb-article-placeholder{position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 12px,rgba(255,255,255,.012) 12px 24px)}
.jb-blog-grid .jb-tags{
  position:absolute;
  z-index:2;
  inset-inline-start:14px;
  bottom:14px;
  display:flex;
  gap:8px;
}
.jb-blog-grid .jb-tags span{
  font-size:13px;
  font-weight:500;
  line-height:1;
  padding:9px 16px;
  border-radius:999px;
  background:hsla(0,0%,100%,.1);
  backdrop-filter:blur(8px);
  border:1px solid rgba(200,200,200,.3);
  color:#fff;
}
.jb-blog-grid .jb-article-body{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:clamp(18px,1.8vw,24px);
  flex:1;
}
.jb-blog-grid .jb-article-body h3{font-size:clamp(18px,1.05rem + .35vw,22px);font-weight:500;line-height:1.4;margin:0}
.jb-blog-grid .jb-article-body h3 a{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.jb-blog-grid .jb-article-body>p:not(.jb-article-meta){
  color:#AEB1BF !important;
  margin:0;
  font-size:15px;
  line-height:1.65;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.jb-blog-grid .jb-article-meta{margin-top:auto !important;color:#A1A6B7 !important;font-size:13px}
.jb-blog-grid .jb-article-foot{border-top:1px solid rgba(85,91,113,.5);padding-top:14px}
.jb-blog-grid .jb-article-foot a{display:inline-flex;align-items:center;gap:10px;color:#CCCCD8 !important;text-decoration:none;font-size:15px;font-weight:500}
.jb-blog-grid .jb-article-foot a:hover{color:#fff !important;gap:16px}
.jb-blog-more{margin-top:34px}
.jb-blog-empty{padding:60px 20px 20px}
.jb-blog-empty h3{margin:0 0 10px}
.jb-blog-empty p{margin:0 0 22px;color:#AEB1BF !important}

@media(max-width:1024px){
  .jb-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .jb-home-articles-head{align-items:flex-start;flex-direction:column}
  .jb-home-articles-all{width:100%;justify-content:center}
  .jb-blog-hero{padding-top:118px}
  .jb-blog-grid{grid-template-columns:1fr}
  .jb-blog-domain-filter .jb-chips{flex-wrap:nowrap;overflow:auto;padding-bottom:4px;margin-inline:-20px;padding-inline:20px;scrollbar-width:none}
  .jb-blog-domain-filter .jb-chips::-webkit-scrollbar{display:none}
  .jb-blog-domain-filter .jb-chip{flex:none;white-space:nowrap}
}

/* =========================================================
   JB Core 0.7.3 — employer logo carousel frontend repair
   ========================================================= */
.jb-home-companies-v2{
  position:relative;
  overflow:hidden;
}
.jb-home-companies-v2 > .jb-container{
  position:relative;
  z-index:2;
}
.jb-home-companies-v2 .jb-logo-marquee{
  width:100%;
  margin-top:clamp(38px,4vw,58px);
  overflow:hidden;
  direction:ltr;
  mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%);
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%);
}
.jb-home-companies-v2 .jb-logo-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center;
  width:max-content!important;
  min-width:max-content;
  gap:clamp(20px,2.55vw,40px);
  will-change:transform;
  animation:jbCompanyLogoCarousel 38s linear infinite!important;
}
.jb-home-companies-v2 .jb-logo-item{
  flex:0 0 clamp(150px,11.5vw,182px)!important;
  width:clamp(150px,11.5vw,182px)!important;
  height:72px!important;
  min-height:72px;
  display:grid!important;
  place-items:center;
  box-sizing:border-box;
  padding:12px 18px!important;
  overflow:hidden;
  border:1px solid rgba(85,91,113,.46)!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.024),rgba(255,255,255,.012))!important;
}
.jb-home-companies-v2 .jb-logo-item a{
  width:100%;height:100%;display:grid;place-items:center;
}
.jb-home-companies-v2 .jb-logo-item img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:116px!important;
  max-height:48px!important;
  object-fit:contain!important;
  filter:none!important;
  opacity:.96!important;
}
.jb-home-companies-v2 .jb-logo-marquee:hover .jb-logo-track{
  animation-play-state:running!important;
}
@keyframes jbCompanyLogoCarousel{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:680px){
  .jb-home-companies-v2 .jb-logo-track{gap:16px;animation-duration:30s!important}
  .jb-home-companies-v2 .jb-logo-item{flex-basis:138px!important;width:138px!important;height:66px!important;min-height:66px}
  .jb-home-companies-v2 .jb-logo-item img{max-width:102px!important;max-height:42px!important}
}
@media(prefers-reduced-motion:reduce){
  .jb-home-companies-v2 .jb-logo-track{animation:none!important}
  .jb-home-companies-v2 .jb-logo-marquee{overflow-x:auto;scrollbar-width:none}
  .jb-home-companies-v2 .jb-logo-marquee::-webkit-scrollbar{display:none}
}


/* =========================================================
   JB Core 0.7.5 — source-faithful homepage course icons
   FINAL Homepage V2: per-domain source colors, opacity .20 → .40 and
   a restrained 1.10 scale on card hover over .7s.
   ========================================================= */
.jb-courses .jb-course-icon{
  opacity:.20;
  transform:scale(1);
  transform-origin:center;
  transition:opacity .7s ease,transform .7s ease;
}
.jb-courses .jb-course-icon svg{
  color:var(--jb-course-icon-color,#C24AF9)!important;
  stroke:currentColor;
  transition:inherit;
}
.jb-courses .jb-course-card:hover .jb-course-icon{
  opacity:.40;
  transform:scale(1.10);
}
@media(prefers-reduced-motion:reduce){
  .jb-courses .jb-course-card:hover .jb-course-icon{transform:none}
}

/* JB Core 0.7.6 — dedicated Contact page, matched to the approved source */
body.jb-contact-template-body{margin:0!important;padding:0!important;background:#030410!important;overflow-x:hidden;max-width:100vw;color:#fff;font-family:'Heebo','Roboto',system-ui,sans-serif}.jb-contact-page,.jb-contact-page *{box-sizing:border-box}.jb-contact-page{min-height:100vh;background:#030410;color:#fff;font-family:'Heebo','Roboto',system-ui,sans-serif}.jb-contact-page a{text-decoration:none}.jb-contact-page-container{width:100%;max-width:1560px;margin-inline:auto;padding-inline:clamp(20px,4vw,80px)}
.jb-contact-shell-header{position:fixed;top:0;left:0;right:0;z-index:92;height:clamp(68px,5.5vw,92px);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:rgba(4,5,20,.78);border-bottom:1px solid hsla(0,0%,100%,.1)}.jb-contact-shell-inner{max-width:1560px;height:100%;margin:0 auto;padding:0 clamp(20px,4vw,80px);display:flex;align-items:center;justify-content:space-between;gap:20px}.jb-contact-brand{display:flex;align-items:center;gap:14px;color:#fff;min-width:0}.jb-contact-brand img{display:block;width:auto;object-fit:contain}.jb-contact-matrix-logo{height:28px;max-width:150px}.jb-contact-jb-logo{height:20px;max-width:180px}.jb-contact-brand-sep{width:1px;height:26px;background:#555B71;display:inline-block;flex:none}.jb-contact-shell-actions{display:flex;align-items:center;gap:14px}.jb-contact-home-link{color:#E7E8EE!important;font-size:15px;line-height:1;padding:8px 2px;transition:color .3s ease}.jb-contact-home-link:hover{color:#1ECAFF!important}.jb-contact-whatsapp{display:inline-flex;align-items:center;color:#FEFEFE!important;font-size:15px;font-weight:500;padding:10px 20px;border-radius:100px;background:hsla(0,0%,100%,.1);backdrop-filter:blur(7.5px);-webkit-backdrop-filter:blur(7.5px);border:1px solid rgba(200,200,200,.35);transition:all .3s ease}.jb-contact-whatsapp:hover{background:hsla(0,0%,100%,.18);color:#fff!important}
.jb-contact-page-hero{position:relative;overflow:hidden;padding:clamp(140px,16vw,210px) 0 clamp(30px,4vw,60px)}.jb-contact-page-hero-glow{position:absolute;top:-45%;left:50%;transform:translateX(-50%);width:min(1200px,95vw);height:min(1200px,120vw);border-radius:50%;opacity:.16;background:radial-gradient(46.59% 46.56% at 50.18% 50%,rgba(91,93,253,.8) 0%,rgba(30,202,255,0) 100%);pointer-events:none}.jb-contact-page-hero-inner{position:relative;max-width:1560px;margin:0 auto;padding:0 clamp(20px,4vw,80px);text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px}.jb-contact-page-eyebrow{font-size:13px!important;font-weight:500;letter-spacing:.14em;color:#B3B5BD!important;margin:0!important}.jb-contact-page-hero h1{font-size:clamp(44px,7vw,88px)!important;font-weight:300!important;line-height:1.15!important;margin:0!important;background:linear-gradient(267deg,#FFF 13.11%,#999 100.89%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:0!important}.jb-contact-page-intro{font-size:clamp(17px,1rem + .3vw,20px)!important;line-height:1.6!important;color:#AEB1BF!important;max-width:46ch;margin:0!important}
.jb-contact-main-campus{position:relative;padding:clamp(120px,14vw,220px) 0 clamp(40px,5vw,70px)}.jb-contact-main-campus h2{font-size:clamp(24px,1.15rem + 1.4vw,36px)!important;font-weight:400!important;line-height:1.3!important;margin:0 0 22px!important;color:#fff!important}.jb-contact-main-campus strong{background:linear-gradient(266deg,#C24AF9 0%,#1ECAFF 20%,#1ECAFF 55.7%,#C24AF9 80%,#C24AF9 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:inherit;animation:jbContactTextShine 3s linear infinite}@keyframes jbContactTextShine{0%{background-position:200% 0}90%,100%{background-position:0 0}}.jb-contact-campus-scene{position:relative}.jb-contact-campus-sky{height:clamp(240px,32vw,440px);border-radius:clamp(15px,1.6vw,32px);overflow:hidden;background-size:cover;background-position:center}.jb-contact-campus-building{position:absolute;bottom:0;left:50%;transform:translateX(-50%);height:clamp(340px,46vw,640px)!important;width:auto!important;max-width:none!important;pointer-events:none;display:block}
.jb-contact-branches-v2{padding:clamp(30px,4vw,60px) 0 clamp(70px,8vw,120px)}.jb-contact-branch-list{display:flex;flex-direction:column;gap:clamp(28px,3vw,44px)}.jb-contact-branch-card{padding:clamp(24px,2.8vw,44px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,32px);background:linear-gradient(#060718,#060718) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}.jb-contact-branch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}.jb-contact-branch-info{display:flex;flex-direction:column;gap:16px;min-width:0}.jb-contact-branch-kicker{font-size:13px!important;font-weight:500;letter-spacing:.08em;color:#B3B5BD!important;margin:0!important}.jb-contact-branch-info h2{font-size:clamp(26px,1.3rem + 1.4vw,40px)!important;font-weight:400!important;line-height:1.2!important;margin:0!important;color:#fff!important}.jb-contact-branch-address{font-size:17px!important;line-height:1.6!important;color:#D6D8E0!important;margin:0!important}.jb-contact-branch-links{display:flex;flex-direction:column;gap:14px;margin-top:8px}.jb-contact-branch-links a{display:inline-flex;align-items:center;gap:12px;color:#FEFEFE!important;font-size:15px;font-weight:500;transition:color .3s ease;max-width:100%;word-break:break-word}.jb-contact-branch-links a.is-phone:hover{color:#1ECAFF!important}.jb-contact-branch-links a.is-email:hover{color:#1ECAFF!important}.jb-contact-branch-links a.is-site:hover{color:#FF4B5C!important}.jb-contact-round-icon{width:38px;height:38px;border-radius:50%;border:1px solid currentColor;display:inline-flex;align-items:center;justify-content:center;flex:none}.jb-contact-branch-copy{display:flex;flex-direction:column;gap:20px}.jb-contact-branch-block{border-top:1px solid rgba(85,91,113,.5);padding-top:16px}.jb-contact-branch-block h3{font-size:15px!important;font-weight:500!important;letter-spacing:.04em;color:#B3B5BD!important;margin:0 0 10px!important}.jb-contact-branch-lines{display:flex;flex-direction:column;gap:8px}.jb-contact-branch-lines p{font-size:15px!important;line-height:1.6!important;color:#AEB1BF!important;margin:0!important;display:flex;gap:10px}.jb-contact-branch-lines p>span:last-child{flex:1}.jb-contact-bullet{width:6px;height:6px;border-radius:50%;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,#C24AF9 0%,#1ECAFF 100%);display:inline-block;flex:none;margin-top:8px}.jb-contact-branch-map{display:flex;flex-direction:column;gap:10px;min-width:0}.jb-contact-map-frame{flex:1;min-height:280px;border-radius:clamp(12px,1.2vw,20px);overflow:hidden;border:1px solid rgba(85,91,113,.5)}.jb-contact-map-frame iframe{width:100%;height:100%;min-height:280px;border:0;display:block;filter:invert(.88) hue-rotate(180deg) grayscale(.15) contrast(.92)}.jb-contact-map-link{display:inline-flex;align-items:center;gap:10px;color:#CCCCD8!important;font-size:14px;font-weight:500;transition:all .3s ease-in-out}.jb-contact-map-link:hover{gap:16px;color:#F0F2F9!important}
.jb-contact-shell-footer{border-top:1px solid hsla(0,0%,100%,.2);padding:26px 0}.jb-contact-shell-footer-inner{max-width:1560px;margin:0 auto;padding:0 clamp(20px,4vw,80px);display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px}.jb-contact-shell-footer p{font-size:13px;color:#919299;margin:0}.jb-contact-shell-footer a{color:#919299!important;font-size:13px;transition:color .3s ease}.jb-contact-shell-footer a:hover{color:#F5F5F5!important}
@media(max-width:1100px){.jb-contact-branch-grid{grid-template-columns:1fr 1fr}.jb-contact-branch-map{grid-column:1/-1}.jb-contact-map-frame{min-height:320px}.jb-contact-map-frame iframe{min-height:320px}}
@media(max-width:720px){.jb-contact-shell-actions{gap:10px}.jb-contact-home-link{display:none}.jb-contact-whatsapp{padding:9px 15px;font-size:14px}.jb-contact-matrix-logo{height:23px}.jb-contact-jb-logo{height:17px}.jb-contact-brand{gap:10px}.jb-contact-brand-sep{height:22px}.jb-contact-main-campus{padding-top:90px}.jb-contact-campus-sky{height:250px}.jb-contact-campus-building{height:360px!important}.jb-contact-branch-grid{grid-template-columns:1fr}.jb-contact-branch-map{grid-column:auto}.jb-contact-map-frame,.jb-contact-map-frame iframe{min-height:260px}.jb-contact-shell-footer-inner{align-items:flex-start;flex-direction:column}}
@media(max-width:420px){.jb-contact-whatsapp{padding:8px 12px}.jb-contact-matrix-logo{max-width:105px}.jb-contact-jb-logo{max-width:115px}.jb-contact-campus-sky{height:220px}.jb-contact-campus-building{height:320px!important}}
@media(prefers-reduced-motion:reduce){.jb-contact-main-campus strong{animation:none!important}}

/* ========================================================================
   JB Core 0.7.7 — Article Design System / supplied Blog article source
   ======================================================================== */
.jb-article-page{--ja-canvas:#030410;--ja-card:#060718;--ja-card2:#0a0c20;--ja-text:#fff;--ja-body:#AEB1BF;--ja-muted:#A1A6B7;--ja-line:#3A3E4D;--ja-cyan:#1ECAFF;--ja-purple:#C24AF9;background:var(--ja-canvas);color:var(--ja-text);font-family:'Heebo','Roboto',system-ui,sans-serif;direction:rtl;min-height:100vh;padding:clamp(42px,5vw,76px) 0 0}
.jb-article-page *{box-sizing:border-box}
.jb-article-page a{text-decoration:none}
.jb-article-layout{max-width:1560px;margin:0 auto;padding:clamp(26px,4vw,54px) clamp(20px,4vw,80px) 0;display:flex;gap:clamp(24px,3vw,52px);align-items:flex-start}
.jb-article-sidebar{width:300px;flex:none;position:sticky;top:clamp(90px,9vw,120px);display:flex;flex-direction:column;gap:18px;padding-bottom:48px}
.jb-article-toc{border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;padding:clamp(20px,2.2vw,28px);display:flex;flex-direction:column;gap:4px}
.jb-article-toc>p{font-size:13px;font-weight:500;letter-spacing:.08em;color:#B3B5BD;margin:0 0 10px}
.jb-article-toc>a{color:var(--ja-body);font-size:14px;line-height:1.5;padding:6px 0;display:flex;gap:10px;align-items:baseline;transition:color .25s ease}
.jb-article-toc>a>span{width:6px;height:6px;border-radius:50%;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,var(--ja-purple) 0%,var(--ja-cyan) 100%);display:inline-block;flex:none;transition:transform .25s ease}
.jb-article-toc>a:hover,.jb-article-toc>a.is-active{color:var(--ja-cyan)}
.jb-article-toc>a.is-active>span{transform:scale(1.45)}
.jb-article-side-cta{border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(var(--ja-card2),var(--ja-card2)) padding-box,conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple)) border-box;padding:clamp(20px,2.2vw,28px);display:flex;flex-direction:column;gap:12px}
.jb-article-side-cta h3{font-size:17px;font-weight:500;margin:0;color:#fff}.jb-article-side-cta p{font-size:14px;line-height:1.6;color:var(--ja-body);margin:0}
.jb-article-gradient-btn{all:unset;box-sizing:border-box;cursor:pointer;text-align:center;color:#fff;font:500 15px/1.2 inherit;padding:12px 18px;border-radius:100px;background:linear-gradient(135deg,var(--ja-cyan) 0%,var(--ja-purple) 100%);transition:filter .3s ease,transform .3s ease}.jb-article-gradient-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}
.jb-article-share{display:flex;flex-direction:column;gap:12px;padding:0 6px}.jb-article-share>p{font-size:13px;font-weight:500;color:#B3B5BD;margin:0}.jb-article-share>div{display:flex;gap:8px;flex-wrap:wrap}.jb-article-share button,.jb-article-share a{all:unset;cursor:pointer;width:38px;height:38px;border-radius:50%;border:1px solid var(--ja-line);display:inline-flex;align-items:center;justify-content:center;color:#A9AAB2;font:600 13px/1 inherit;transition:all .3s ease}.jb-article-share button:hover,.jb-article-share a:hover{color:var(--ja-cyan);border-color:var(--ja-cyan)}.jb-article-share button.is-copied{color:#6ae6b0;border-color:#6ae6b0}
.jb-article-main{flex:1;min-width:0;max-width:860px}.jb-article-breadcrumbs{font-size:13px;color:#6B7089;display:flex;flex-wrap:wrap;gap:8px;padding:6px 0 18px}.jb-article-breadcrumbs a{color:var(--ja-muted)}.jb-article-breadcrumbs a:hover{color:var(--ja-cyan)}
.jb-article-header h1{font-size:clamp(30px,1.5rem + 1.8vw,44px);font-weight:400;line-height:1.25;margin:0;color:#fff}.jb-article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:18px;color:var(--ja-muted);font-size:13px}.jb-article-tag{font-weight:500;color:#E7E8EE;padding:8px 16px;border-radius:100px;background:hsla(0,0%,100%,.08);border:1px solid rgba(200,200,200,.3)}
.jb-article-lead{font-size:clamp(17px,1rem + .3vw,19px);line-height:1.7;color:var(--ja-body);margin:26px 0 0}.jb-article-featured,.jb-article-image-block{margin:28px 0 0}.jb-article-featured img,.jb-article-image-block img{width:100%;height:auto;aspect-ratio:16/8;object-fit:cover;border-radius:clamp(15px,1.6vw,24px);display:block}.jb-article-featured figcaption,.jb-article-image-block figcaption,.jb-article-video figcaption{font-size:12px;color:#6B7089;margin-top:8px;text-align:center}
.jb-article-block-output>.jb-article-section-heading{scroll-margin-top:120px;font-size:clamp(22px,1.1rem + 1vw,28px);font-weight:400;line-height:1.35;margin:clamp(36px,4vw,52px) 0 0;color:#fff}.jb-article-block-output>h3.jb-article-section-heading{font-size:clamp(18px,1rem + .7vw,23px);font-weight:500;margin-top:clamp(28px,3vw,40px)}
.jb-article-richtext{font-size:16px;line-height:1.78;color:var(--ja-body);margin:16px 0 0}.jb-article-richtext p{margin:0 0 16px}.jb-article-richtext h2,.jb-article-richtext h3{color:#fff;font-weight:500}.jb-article-richtext a{color:var(--ja-cyan);text-decoration:underline;text-underline-offset:3px}.jb-article-richtext strong{color:#E7E8EE}.jb-article-richtext ul,.jb-article-richtext ol{padding-inline-start:24px}.jb-article-richtext blockquote{margin:20px 0;padding:18px 22px;border-inline-start:3px solid var(--ja-cyan);background:rgba(255,255,255,.025);border-radius:10px}
.jb-article-tldr{margin-top:26px;padding:clamp(20px,2.2vw,30px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple)) border-box}.jb-article-tldr h2{font-size:16px;font-weight:500;margin:0 0 12px;color:#fff;display:flex;align-items:center;gap:8px}.jb-article-tldr h2 span{color:var(--ja-cyan)}.jb-article-tldr>div{display:flex;flex-direction:column;gap:8px}.jb-article-tldr p,.jb-article-bullets p{font-size:15px;line-height:1.6;color:#D6D8E0;margin:0;display:flex;gap:10px}.jb-article-tldr i,.jb-article-bullets i{width:6px;height:6px;border-radius:50%;background:radial-gradient(133.95% 133.95% at 49.75% 13.51%,var(--ja-purple) 0%,var(--ja-cyan) 100%);display:inline-block;flex:none;margin-top:8px}
.jb-article-bullets{margin-top:18px;display:flex;flex-direction:column;gap:8px}.jb-article-bullets h3{font-size:17px;font-weight:500;color:#fff;margin:0 0 6px}
.jb-article-table-block{margin-top:20px}.jb-article-table-block>h3{font-size:18px;font-weight:500;color:#fff;margin:0 0 8px}.jb-article-table-block>p{font-size:15px;line-height:1.7;color:var(--ja-body);margin:0 0 14px}.jb-article-table-scroll{overflow-x:auto;border:1px solid transparent;border-radius:clamp(13px,1.4vw,20px);background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}.jb-article-table-block table{width:100%;border-collapse:separate;border-spacing:1px;background:rgba(85,91,113,.35);min-width:560px}.jb-article-table-block th{background:var(--ja-card2);padding:14px 16px;font-size:13px;font-weight:500;color:#B3B5BD;text-align:start}.jb-article-table-block td{background:var(--ja-card);padding:14px 16px;font-size:14px;color:var(--ja-body);vertical-align:top}.jb-article-table-block tbody td:first-child{font-weight:500;color:#fff}.jb-article-table-block>small{font-size:12px;color:var(--ja-muted);display:block;margin-top:12px}
.jb-article-quote{margin:20px 0 0;padding:clamp(20px,2.2vw,30px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;display:flex;gap:18px;align-items:flex-start}.jb-article-quote>img{width:64px;height:64px;object-fit:cover;border-radius:50%;flex:none}.jb-article-quote p{font-size:clamp(17px,1rem + .3vw,20px);line-height:1.7;color:#D6D8E0;margin:0}.jb-article-quote footer{font-size:13px;color:var(--ja-muted);margin-top:12px}
.jb-article-note{margin-top:18px;padding:clamp(18px,2vw,26px);border-radius:clamp(13px,1.4vw,20px)}.jb-article-note strong{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:500;line-height:1.4;margin:0 0 8px}.jb-article-note-icon{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.jb-article-note p{font-size:15px;line-height:1.7;color:#D6D8E0;margin:0}.jb-article-note a{display:inline-block;margin-top:10px;font-size:13px;color:var(--ja-cyan)}.jb-article-note.is-tip,.jb-article-note.is-cyan{background:rgba(30,202,255,.06);border:1px solid rgba(30,202,255,.25)}.jb-article-note.is-tip strong,.jb-article-note.is-cyan strong{color:#1ECAFF}.jb-article-note.is-fact,.jb-article-note.is-purple{background:rgba(194,74,249,.06);border:1px solid rgba(194,74,249,.3)}.jb-article-note.is-fact strong,.jb-article-note.is-purple strong{color:#C24AF9}.jb-article-note.is-neutral{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.12)}.jb-article-note.is-neutral strong{color:#D7D9E5}
.jb-article-video{margin:24px 0 0}.jb-article-video iframe{display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;border-radius:clamp(15px,1.6vw,24px)}
.jb-article-cta{margin-top:clamp(30px,3.5vw,52px);padding:clamp(24px,2.6vw,36px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px}.jb-article-cta.is-gradient{background:linear-gradient(var(--ja-card2),var(--ja-card2)) padding-box,conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple)) border-box}.jb-article-cta.is-glass{background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}.jb-article-cta>div{max-width:52ch}.jb-article-cta h2{font-size:clamp(18px,1.05rem + .4vw,22px);font-weight:500;margin:0;color:#fff}.jb-article-cta p{font-size:14px;line-height:1.6;color:var(--ja-body);margin:8px 0 0}.jb-article-cta>a{color:#fff;font-size:15px;font-weight:500;padding:13px 30px;border-radius:100px;background:linear-gradient(135deg,var(--ja-cyan) 0%,var(--ja-purple) 100%);transition:filter .3s ease}.jb-article-cta.is-glass>a{background:hsla(0,0%,100%,.08);border:1px solid rgba(200,200,200,.35);color:#CCCCD8}.jb-article-cta>a:hover{filter:brightness(1.15)}
.jb-article-form-block{margin-top:clamp(30px,3.5vw,52px);padding:clamp(24px,2.8vw,38px);border:1px solid transparent;border-radius:24px;background:linear-gradient(var(--ja-card2),var(--ja-card2)) padding-box,conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple)) border-box}.jb-article-form-block h2{font-size:clamp(20px,1.1rem + .7vw,26px);font-weight:500;margin:0}.jb-article-form-block>p{color:var(--ja-body);margin:8px 0 18px}
.jb-article-poll,.jb-article-quiz,.jb-article-faq{margin-top:clamp(36px,4vw,52px)}.jb-article-poll>h2,.jb-article-quiz>h2,.jb-article-faq>h2{font-size:clamp(22px,1.1rem + 1vw,28px);font-weight:400;line-height:1.35;margin:0 0 20px;color:#fff}.jb-article-poll-card,.jb-quiz-card{padding:clamp(22px,2.4vw,34px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(var(--ja-card2),var(--ja-card2)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}.jb-article-poll-card h3,.jb-quiz-question h3{font-size:17px;font-weight:500;margin:0 0 16px;color:#fff}.jb-article-poll-card>div{display:flex;flex-direction:column;gap:10px}.jb-article-poll-card button,.jb-quiz-question button{font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:right;color:var(--ja-body);padding:13px 20px;border-radius:100px;border:1px solid #3C4255;background:rgba(255,255,255,.025);transition:all .25s ease}.jb-article-poll-card button:hover,.jb-quiz-question button:hover,.jb-article-poll-card button.is-selected,.jb-quiz-question button.is-selected{color:#fff;border-color:transparent;background:linear-gradient(var(--ja-card2),var(--ja-card2)) padding-box,conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple)) border-box}.jb-article-poll-card button b{color:var(--ja-cyan);font-size:13px}.jb-article-poll-card>[data-poll-thanks]{font-size:13px;color:var(--ja-muted);margin:14px 0 0}.jb-quiz-intro{color:var(--ja-body);margin:0 0 18px}.jb-quiz-question{padding:0 0 22px;margin:0 0 22px;border-bottom:1px solid rgba(85,91,113,.35)}.jb-quiz-question>div{display:flex;flex-direction:column;gap:9px}.jb-quiz-question.has-error h3{color:#ff8a90}.jb-quiz-result{margin-top:18px;padding:18px 20px;border-radius:16px;background:rgba(30,202,255,.06);border:1px solid rgba(30,202,255,.22)}.jb-quiz-result h3{margin:0 0 6px;color:#fff}.jb-quiz-result p{margin:0;color:#D6D8E0;line-height:1.65}
.jb-article-faq>div{display:flex;flex-direction:column;gap:10px}.jb-article-faq article{border:1px solid transparent;border-radius:clamp(13px,1.4vw,18px);background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;overflow:hidden}.jb-article-faq article>button{all:unset;box-sizing:border-box;cursor:pointer;width:100%;display:flex;align-items:center;gap:14px;padding:clamp(14px,1.6vw,20px) clamp(16px,1.8vw,24px)}.jb-article-faq article>button span{flex:1;font-size:clamp(15px,1rem,17px);font-weight:500;color:#fff}.jb-article-faq article>button b{font-size:19px;color:#B3B5BD;flex:none}.jb-article-faq article>div p{font-size:14px;line-height:1.7;color:var(--ja-body);margin:0;padding:14px clamp(16px,1.8vw,24px) clamp(14px,1.6vw,20px);border-top:1px solid rgba(85,91,113,.35)}
.jb-article-divider{height:1px;border:0;background:rgba(255,255,255,.16);margin:clamp(30px,4vw,50px) 0}
.jb-article-author{margin-top:clamp(36px,4vw,52px);padding:clamp(22px,2.4vw,34px);border:1px solid transparent;border-radius:clamp(15px,1.6vw,24px);background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box;display:flex;gap:clamp(16px,2vw,28px);align-items:flex-start;flex-wrap:wrap}.jb-article-author-photo{width:84px;height:84px;border-radius:50%;padding:1.5px;background:conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple));flex:none;display:flex}.jb-article-author-photo img,.jb-article-author-photo span{width:100%;height:100%;border-radius:50%;object-fit:cover;background:var(--ja-card2);display:flex;align-items:center;justify-content:center;color:#767b91;font-size:30px;border:3px solid var(--ja-card2)}.jb-article-author>div:last-child{flex:1;min-width:240px}.jb-article-author small{font-size:13px;font-weight:500;letter-spacing:.06em;color:#B3B5BD}.jb-article-author h2{font-size:19px;font-weight:500;margin:6px 0 0;color:#fff}.jb-article-author-role{font-size:14px;color:var(--ja-cyan)!important;margin:4px 0 0!important}.jb-article-author p{font-size:14px;line-height:1.7;color:var(--ja-body);margin:10px 0 0}.jb-article-author a{display:inline-block;margin-top:10px;color:var(--ja-cyan);font-size:13px}
.jb-article-related{margin-top:clamp(40px,4.5vw,60px);padding-bottom:clamp(48px,5vw,72px)}.jb-article-related-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.jb-article-related-head h2{font-size:clamp(22px,1.1rem + 1vw,28px);font-weight:400;margin:0;color:#fff}.jb-article-related-head>a{display:inline-flex;align-items:center;gap:10px;color:#CCCCD8;font-size:15px;font-weight:500;transition:all .3s ease}.jb-article-related-head>a:hover{gap:18px;color:#F0F2F9}.jb-article-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);margin-top:24px}.jb-article-related-grid>article{display:flex;flex-direction:column;border:1px solid transparent;border-radius:clamp(15px,1.6vw,20px);overflow:hidden;background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}.jb-article-related-grid>article:hover{background:linear-gradient(var(--ja-card),var(--ja-card)) padding-box,conic-gradient(from 210deg,var(--ja-purple),var(--ja-cyan) 40%,#312782 70%,var(--ja-purple)) border-box}.jb-article-related-image{aspect-ratio:16/9;display:block;background:repeating-linear-gradient(45deg,rgba(255,255,255,.045) 0 12px,rgba(255,255,255,.012) 12px 24px);overflow:hidden}.jb-article-related-image img{width:100%;height:100%;object-fit:cover;display:block}.jb-article-related-grid article>div:last-child{display:flex;flex-direction:column;gap:8px;padding:16px;flex:1}.jb-article-related-grid article span{font-size:12px;font-weight:500;color:#B3B5BD}.jb-article-related-grid h3{font-size:15px;font-weight:500;line-height:1.45;margin:0;flex:1}.jb-article-related-grid h3 a{color:#fff}.jb-article-related-grid h3 a:hover{color:var(--ja-cyan)}.jb-article-related-grid p{font-size:12px;color:var(--ja-muted);margin:0}
.jb-article-modal[hidden]{display:none!important}.jb-article-modal{position:fixed;inset:0;z-index:100001;display:flex;align-items:center;justify-content:center;padding:20px}.jb-article-modal-backdrop{position:absolute;inset:0;background:rgba(3,4,16,.78);backdrop-filter:blur(8px)}.jb-article-modal-dialog{position:relative;width:min(460px,100%);max-height:90vh;overflow:auto;padding:clamp(24px,3vw,36px);border:1px solid transparent;border-radius:20px;background:linear-gradient(var(--ja-card2),var(--ja-card2)) padding-box,linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box}.jb-article-modal-dialog h3{font-size:20px;font-weight:500;margin:0 32px 0 0}.jb-article-modal-dialog>p{font-size:15px;line-height:1.6;color:var(--ja-body);margin:8px 0 18px}.jb-article-modal-close{all:unset;position:absolute;top:16px;left:16px;cursor:pointer;color:#A1A6B7;font-size:20px;padding:4px 8px;border-radius:50%}.jb-article-modal-close:hover{color:#fff;background:rgba(255,255,255,.08)}
@media(max-width:1180px){.jb-article-sidebar{width:260px}.jb-article-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.jb-article-page{padding-top:20px}.jb-article-layout{display:block;padding-top:24px}.jb-article-sidebar{display:none}.jb-article-main{max-width:none}.jb-article-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.jb-article-featured img,.jb-article-image-block img{aspect-ratio:16/9}}
@media(max-width:620px){.jb-article-layout{padding-inline:18px}.jb-article-header h1{font-size:clamp(28px,9vw,38px)}.jb-article-related-grid{grid-template-columns:1fr}.jb-article-cta{align-items:stretch}.jb-article-cta>a{width:100%;text-align:center}.jb-article-quote{flex-direction:column}.jb-article-meta{gap:9px}.jb-article-table-block{margin-inline:-2px}}
.jb-article-header h1 strong{background:linear-gradient(266deg,#C24AF9 0%,#1ECAFF 20%,#1ECAFF 55.7%,#C24AF9 80%,#C24AF9 100%);background-size:200% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:inherit;animation:jbArticleTextShine 3s linear infinite}@keyframes jbArticleTextShine{to{background-position:200% center}}@supports not (background-clip:text){.jb-article-header h1 strong{color:#C24AF9;-webkit-text-fill-color:initial}}
.jb-article-related-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}


/* ========================================================================
   JB Core 0.7.9 — no Elementor magenta/pink hover
   The definitive late override is printed by print_no_pink_hover_css().
   Keep component-owned hover states in the site palette as well.
   ======================================================================== */
.jb-contact-branch-links a.is-email:hover{color:#1ECAFF!important}

/* =========================================================
   0.8.2 · General site pages + stronger Article table header
   ========================================================= */
.jb-article-table-block thead th{
  background:linear-gradient(180deg,#151932 0%,#0d1025 100%);
  color:#fff;
  font-weight:650;
  border-bottom:1px solid rgba(30,202,255,.42);
  box-shadow:inset 0 -1px 0 rgba(194,74,249,.18);
}
.jb-article-table-block thead th+th{border-inline-start:1px solid rgba(255,255,255,.055)}

.jb-general-page{background:var(--jb-canvas,#030410);color:#fff;min-height:70vh;font-family:'Heebo','Roboto',system-ui,sans-serif;overflow:hidden}
.jb-general-hero{position:relative;background:#030410;padding:clamp(128px,12vw,190px) 0 clamp(58px,7vw,96px);border-bottom:1px solid rgba(85,91,113,.42);isolation:isolate}
.jb-general-hero:after{content:"";position:absolute;inset:auto 8% 0 8%;height:1px;background:linear-gradient(90deg,transparent,rgba(30,202,255,.34),rgba(194,74,249,.24),transparent);z-index:-1}
.jb-general-hero-glow{position:absolute;z-index:-1;width:min(760px,72vw);aspect-ratio:1;inset:-38% auto auto -16%;border-radius:50%;background:radial-gradient(circle,rgba(49,39,130,.18) 0%,rgba(30,202,255,.07) 35%,transparent 68%);filter:blur(8px);pointer-events:none}
.jb-general-hero .jb-container{max-width:1180px}
.jb-general-hero .jb-eyebrow{margin-bottom:20px}
.jb-general-hero h1{max-width:980px;margin:0;font-size:clamp(42px,5.4vw,78px);line-height:1.03;letter-spacing:-.035em;font-weight:420;color:#fff}
.jb-general-hero-copy{max-width:850px;margin-top:clamp(24px,3vw,34px);display:grid;gap:5px}
.jb-general-hero-copy p{margin:0;color:#B8BBC7;font-size:clamp(17px,1.45vw,21px);line-height:1.75;font-weight:300}
.jb-general-section{position:relative;padding-block:clamp(66px,7vw,110px)}
.jb-general-two-col{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(38px,7vw,110px);align-items:start}
.jb-general-two-col h2{font-size:clamp(34px,4vw,58px);line-height:1.08;letter-spacing:-.03em;margin:10px 0 0;font-weight:430}
.jb-general-lead{margin:0;color:#B8BBC7;font-size:clamp(18px,1.65vw,23px);line-height:1.85;font-weight:300}

.jb-beginner-courses-page>.jb-courses{padding-top:clamp(54px,6vw,90px)}
.jb-beginner-courses-page .jb-course-filters{margin-top:0}
.jb-beginner-courses-page .jb-filter-groups{grid-template-columns:1fr}

.jb-coming-soon-section{min-height:420px;display:grid;align-items:center}
.jb-coming-soon-card{position:relative;overflow:hidden;isolation:isolate;border:1px solid rgba(85,91,113,.7);border-radius:28px;padding:clamp(34px,5vw,70px);background:linear-gradient(145deg,rgba(8,10,29,.98),rgba(6,7,24,.92));max-width:1040px;margin-inline:auto}
.jb-coming-soon-orb{position:absolute;z-index:-1;left:-90px;top:-160px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(30,202,255,.16),rgba(194,74,249,.08) 40%,transparent 70%)}
.jb-coming-soon-card h2{font-size:clamp(48px,7vw,88px);line-height:1;margin:10px 0 18px;font-weight:430;background:linear-gradient(266deg,#C24AF9 0%,#1ECAFF 45%,#fff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.jb-coming-soon-card>p:not(.jb-kicker){max-width:680px;color:#B8BBC7;font-size:18px;line-height:1.8;margin:0 0 28px}

.jb-org-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:clamp(46px,5vw,74px)}
.jb-org-process-card{min-height:225px;border:1px solid rgba(85,91,113,.62);border-radius:20px;background:rgba(255,255,255,.018);padding:26px;transition:border-color .25s ease,transform .25s ease}
.jb-org-process-card:hover{border-color:rgba(30,202,255,.38);transform:translateY(-2px)}
.jb-org-process-card>span{display:inline-flex;color:#1ECAFF;font-size:13px;letter-spacing:.08em;margin-bottom:34px}
.jb-org-process-card h3{font-size:20px;font-weight:520;margin:0 0 10px;color:#fff}
.jb-org-process-card p{margin:0;color:#9FA3B2;font-size:15px;line-height:1.75}
.jb-org-samples .jb-section-head,.jb-org-contacts .jb-section-head,.jb-org-contact-form .jb-section-head{max-width:820px}
.jb-org-sample-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:34px}
.jb-org-sample-grid article{position:relative;min-height:160px;padding:24px;border:1px solid rgba(85,91,113,.6);border-radius:18px;background:rgba(255,255,255,.018)}
.jb-org-sample-icon{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;border:1px solid rgba(30,202,255,.32);color:#1ECAFF;margin-bottom:22px}
.jb-org-sample-grid h3{font-size:18px;line-height:1.4;margin:0 0 10px;font-weight:520}
.jb-org-sample-grid p{margin:0;color:#969AAA;font-size:13px}
.jb-org-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:32px}
.jb-org-contact-grid article{display:flex;align-items:center;gap:16px;padding:22px;border:1px solid rgba(85,91,113,.58);border-radius:18px;background:rgba(255,255,255,.015)}
.jb-org-contact-avatar{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,rgba(30,202,255,.14),rgba(194,74,249,.15));border:1px solid rgba(30,202,255,.22);font-weight:600;color:#fff}
.jb-org-contact-grid h3{margin:0 0 2px;font-size:17px;font-weight:520}
.jb-org-contact-grid p{margin:0 0 5px;color:#8F93A4;font-size:13px}
.jb-org-contact-grid a{color:#1ECAFF;font-size:13px;text-decoration:none;word-break:break-all}
.jb-org-contact-form{isolation:isolate;overflow:hidden}
.jb-org-form-glow{position:absolute;z-index:-1;right:-180px;bottom:-300px;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(49,39,130,.18),transparent 68%)}
.jb-org-contact-form .jb-embedded-form{margin-top:30px}

.jb-testimonials-filter-row{display:grid;gap:14px;margin-bottom:26px}
.jb-testimonials-filter-row>span{font-size:13px;color:#9FA3B2}
.jb-testimonials-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}
.jb-testimonials-directory-card{display:flex;flex-direction:column;min-height:305px;padding:26px;border:1px solid rgba(85,91,113,.58);border-radius:20px;background:linear-gradient(145deg,rgba(10,12,32,.86),rgba(6,7,24,.94))}
.jb-testimonials-page-author{display:flex;align-items:center;gap:13px;margin-bottom:22px}
.jb-testimonials-page-avatar{width:48px;height:48px;display:grid;place-items:center;flex:none;border-radius:50%;overflow:hidden;background:#0c1028}
.jb-testimonials-page-avatar-image{width:100%;height:100%;object-fit:cover}
.jb-testimonials-page-avatar-fallback{width:100%;height:100%;display:grid;place-items:center;border:1px solid rgba(30,202,255,.2);border-radius:50%;background:linear-gradient(135deg,rgba(30,202,255,.13),rgba(194,74,249,.15));font-weight:600}
.jb-testimonials-page-author h3{font-size:17px;font-weight:550;margin:0 0 3px}
.jb-testimonials-page-author p{font-size:13px;color:#8F93A4;margin:0}
.jb-testimonials-directory-card blockquote{margin:0;color:#D9DBE4;font-size:16px;line-height:1.85;font-weight:300;flex:1}
.jb-testimonials-page-course{display:inline-flex;align-self:flex-start;margin-top:22px;padding:6px 10px;border-radius:100px;background:rgba(30,202,255,.07);border:1px solid rgba(30,202,255,.15);color:#B9EFFF;font-size:12px}
.jb-testimonials-directory .jb-show-more{margin-top:34px}

.jb-about-industry{background:linear-gradient(180deg,rgba(6,7,24,.65),rgba(3,4,16,1))}

@media(max-width:1080px){
  .jb-org-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .jb-org-sample-grid,.jb-org-contact-grid,.jb-testimonials-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .jb-general-hero{padding-top:calc(var(--jb-header-h,76px) + 54px)}
  .jb-general-two-col{grid-template-columns:1fr;gap:24px}
  .jb-org-process-grid,.jb-org-sample-grid,.jb-org-contact-grid,.jb-testimonials-directory-grid{grid-template-columns:1fr}
  .jb-org-process-card{min-height:0}
  .jb-general-hero-copy p{line-height:1.65}
}


/* --- 0.8.3 testimonials filter visibility fix ---
 * The filter toggles the native HTML hidden attribute. Testimonial cards and the
 * show-more button both have authored display rules (flex), which can override
 * the browser's default [hidden] rendering. Enforce hidden inside this directory
 * just like the existing course-filter safeguard.
 */
.jb-testimonials-directory [hidden] {
  display: none !important;
}

/* =========================================================
   0.8.4 · One fixed site header on every public page
   ========================================================= */
.jb-site-header{
  position:fixed!important;
  top:0!important;
  right:0!important;
  left:0!important;
  width:100%!important;
  z-index:100000!important;
}
body.admin-bar .jb-site-header{top:32px!important}
/* Articles previously relied on the theme header spacing. The canonical fixed
   shell now exists on every post, so keep the article content safely below it. */
.jb-article-page{padding-top:calc(var(--jb-header-h,76px) + clamp(34px,4vw,62px))}
@media(max-width:900px){
  .jb-article-page{padding-top:calc(var(--jb-header-h,76px) + 24px)}
}
@media(max-width:782px){
  body.admin-bar .jb-site-header{top:46px!important}
}

/* =========================================================
   0.8.5 · Editorial trust card + author/team popup
   ========================================================= */
.jb-article-author-clickable{
  position:relative;
  cursor:pointer;
  transition:border-color .24s ease,transform .24s ease,box-shadow .24s ease,background .24s ease;
}
.jb-article-author-clickable:after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(520px circle at 85% 10%,rgba(30,202,255,.07),transparent 58%);
  transition:opacity .24s ease;
}
.jb-article-author-clickable:hover,
.jb-article-author-clickable:focus-visible{
  border-color:rgba(30,202,255,.46);
  transform:translateY(-2px);
  box-shadow:0 18px 55px rgba(0,0,0,.22),0 0 0 1px rgba(30,202,255,.05);
}
.jb-article-author-clickable:hover:after,
.jb-article-author-clickable:focus-visible:after{opacity:1}
.jb-article-author-clickable:focus-visible{outline:2px solid rgba(30,202,255,.75);outline-offset:4px}
.jb-article-author-more{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:15px;
  color:var(--ja-cyan,#1ECAFF);
  font-size:13px;
  font-weight:550;
}
.jb-article-author-more b{font-size:15px;font-weight:400;transition:transform .2s ease}
.jb-article-author-clickable:hover .jb-article-author-more b{transform:translateX(-4px)}

.jb-author-modal[hidden]{display:none!important}
.jb-author-modal{
  position:fixed;
  inset:0;
  z-index:100010;
  display:grid;
  place-items:center;
  padding:clamp(16px,3vw,34px);
  direction:rtl;
}
.jb-author-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(3,4,16,.84);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
}
.jb-author-modal-dialog{
  position:relative;
  isolation:isolate;
  width:min(720px,100%);
  max-height:min(86vh,820px);
  overflow:auto;
  padding:clamp(26px,4vw,46px);
  border:1px solid rgba(91,100,128,.78);
  border-radius:26px;
  background:linear-gradient(145deg,#0a0c20 0%,#060718 100%);
  box-shadow:0 32px 100px rgba(0,0,0,.58),0 0 0 1px rgba(255,255,255,.02) inset;
  color:#fff;
}
.jb-author-modal-dialog:before{
  content:"";
  position:absolute;
  z-index:-1;
  width:420px;
  height:420px;
  top:-250px;
  right:-150px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(30,202,255,.16),rgba(194,74,249,.07) 38%,transparent 70%);
  pointer-events:none;
}
.jb-author-modal-close{
  all:unset;
  box-sizing:border-box;
  position:absolute;
  top:18px;
  left:18px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  background:rgba(255,255,255,.035);
  color:#B9BDCA;
  cursor:pointer;
  font-size:15px;
  transition:border-color .2s ease,color .2s ease,background .2s ease;
}
.jb-author-modal-close:hover,.jb-author-modal-close:focus-visible{color:#fff;border-color:rgba(30,202,255,.5);background:rgba(30,202,255,.07)}
.jb-author-modal-close:focus-visible{outline:2px solid rgba(30,202,255,.72);outline-offset:3px}
.jb-author-modal-head{display:flex;align-items:center;gap:20px;padding-left:45px}
.jb-article-author-photo.is-modal{width:92px;height:92px}
.jb-author-modal-eyebrow{margin:0 0 5px!important;color:#1ECAFF!important;font-size:12px!important;font-weight:600!important;letter-spacing:.05em}
.jb-author-modal-head h2{margin:0;font-size:clamp(25px,3vw,34px);line-height:1.15;font-weight:500;letter-spacing:-.02em}
.jb-author-modal-head>div>p:last-child{margin:7px 0 0;color:#A9ADBB;font-size:14px}
.jb-author-modal-bio{margin:28px 0 0;color:#D0D3DC;font-size:16px;line-height:1.85;font-weight:300}
.jb-author-review-process{margin-top:28px;padding-top:26px;border-top:1px solid rgba(85,91,113,.48)}
.jb-author-review-process h3,.jb-author-expertise h3{margin:0 0 16px;font-size:15px;font-weight:600;color:#fff}
.jb-author-review-process ul{list-style:none;padding:0;margin:0;display:grid;gap:11px;counter-reset:jb-review}
.jb-author-review-process li{counter-increment:jb-review;position:relative;padding:14px 52px 14px 16px;border:1px solid rgba(85,91,113,.48);border-radius:14px;background:rgba(255,255,255,.018);color:#C3C6D0;font-size:14px;line-height:1.7}
.jb-author-review-process li:before{content:counter(jb-review);position:absolute;right:14px;top:14px;width:25px;height:25px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(30,202,255,.36);background:rgba(30,202,255,.06);color:#1ECAFF;font-size:11px;font-weight:650}
.jb-author-expertise{margin-top:24px}
.jb-author-expertise>div{display:flex;flex-wrap:wrap;gap:8px}
.jb-author-expertise span{padding:7px 11px;border-radius:100px;border:1px solid rgba(30,202,255,.15);background:rgba(30,202,255,.045);color:#C5F3FF;font-size:12px}
.jb-author-profile-link{display:inline-flex;margin-top:24px;color:#1ECAFF;font-size:13px;font-weight:550;text-decoration:none}

.jb-editorial-team-about{overflow:hidden}
.jb-editorial-team-about .jb-general-two-col{align-items:center}
.jb-editorial-review-list{display:grid;gap:10px;margin-top:26px}
.jb-editorial-review-list p{position:relative;display:flex;gap:13px;align-items:flex-start;margin:0;padding:15px 17px;border:1px solid rgba(85,91,113,.48);border-radius:14px;background:rgba(255,255,255,.015);color:#C6C9D3;font-size:14px;line-height:1.7}
.jb-editorial-review-list p span{display:grid;place-items:center;flex:none;width:23px;height:23px;border-radius:50%;background:rgba(30,202,255,.07);border:1px solid rgba(30,202,255,.28);color:#1ECAFF;font-size:11px;margin-top:1px}

@media(max-width:620px){
  .jb-article-author-clickable{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:20px}
  .jb-article-author-photo{width:66px;height:66px}
  .jb-article-author>div:last-child{min-width:0}
  .jb-article-author-clickable p:not(.jb-article-author-role){grid-column:1/-1}
  .jb-author-modal{padding:12px;align-items:end}
  .jb-author-modal-dialog{width:100%;max-height:90vh;border-radius:22px 22px 16px 16px;padding:26px 20px 24px}
  .jb-author-modal-head{gap:14px;padding-left:38px;align-items:flex-start}
  .jb-article-author-photo.is-modal{width:68px;height:68px}
  .jb-author-modal-head h2{font-size:23px}
  .jb-author-modal-bio{font-size:15px;margin-top:22px}
  .jb-author-review-process li{padding-left:12px}
}

/* =========================================================
   0.8.6 · Visual fidelity + dedicated catalogue/contact fixes
   ========================================================= */

/* Matrix metrics: keep the number visually on the right and the suffix (+ / text)
   on its left, exactly like the approved RTL reference. */
.jb-home-metrics .jb-metric-num{
  flex-direction:row-reverse!important;
}

/* Explicit divider between the ynet proof strip and the course catalogue. */
.jb-home-geo-v2{
  border-bottom:1px solid rgba(85,91,113,.52)!important;
}

/* Course cards: restore the approved 4-column desktop composition. */
.jb-courses .jb-course-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(18px,2vw,28px)!important;
}
.jb-courses .jb-course-card-top{
  aspect-ratio:1.7/1!important;
}
.jb-courses .jb-course-icon{
  opacity:.27!important;
}
.jb-courses .jb-course-card:hover .jb-course-icon{
  opacity:.46!important;
}
.jb-courses .jb-course-icon svg{
  width:clamp(108px,8vw,142px)!important;
  height:clamp(108px,8vw,142px)!important;
}
.jb-courses .jb-card-badges{
  inset-inline:14px!important;
  bottom:14px!important;
  justify-content:space-between!important;
}
.jb-courses .jb-card-badges span{
  font-size:12.5px!important;
  padding:8px 14px!important;
}
.jb-courses .jb-course-card h3{
  font-size:clamp(30px,1.55rem + .55vw,36px)!important;
  line-height:1.06!important;
  font-weight:600!important;
  letter-spacing:-.015em!important;
}
.jb-courses .jb-course-card p{
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
  min-height:4.8em;
}
.jb-courses .jb-card-foot>span{
  white-space:nowrap;
}
@media(max-width:1024px){
  .jb-courses .jb-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .jb-courses .jb-course-card h3{font-size:clamp(25px,3vw,31px)!important;line-height:1.08!important}
}
@media(max-width:680px){
  .jb-courses .jb-course-grid{grid-template-columns:1fr!important}
  .jb-courses .jb-course-card-top{aspect-ratio:1.8/1!important}
  .jb-courses .jb-course-card h3{font-size:clamp(25px,7vw,30px)!important;line-height:1.08!important}
}

/* Article/blog metadata: real icons + stable Hebrew spacing. */
.jb-article-meta{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 16px!important;
}
.jb-article-meta-item{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:inherit;
  white-space:nowrap;
}
.jb-article-meta-icon{
  width:15px!important;
  height:15px!important;
  flex:none;
  color:#8E94A8;
  stroke:currentColor;
}
.jb-article-card .jb-article-meta{
  margin-top:14px!important;
}
.jb-article-card .jb-article-meta-item{
  font-size:13px;
}
.jb-related-meta{
  display:flex!important;
  flex-wrap:wrap;
  gap:8px 12px!important;
  align-items:center;
}
.jb-related-meta .jb-article-meta-icon{width:13px!important;height:13px!important}

/* Contact branches: route buttons live directly below the address. */
.jb-contact-nav-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:-2px;
}
.jb-contact-nav-actions a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(85,91,113,.75);
  background:rgba(255,255,255,.025);
  color:#D7DAE5!important;
  font-size:13px;
  font-weight:550;
  text-decoration:none!important;
  transition:border-color .22s ease,color .22s ease,background .22s ease,transform .22s ease;
}
.jb-contact-nav-actions a:hover,
.jb-contact-nav-actions a:focus-visible{
  transform:translateY(-1px);
}
.jb-contact-nav-actions .is-waze:hover,
.jb-contact-nav-actions .is-waze:focus-visible{
  color:#8BE7FF!important;
  border-color:rgba(30,202,255,.5);
  background:rgba(30,202,255,.055);
}
.jb-contact-nav-actions .is-google-maps:hover,
.jb-contact-nav-actions .is-google-maps:focus-visible{
  color:#D4B1FF!important;
  border-color:rgba(194,74,249,.48);
  background:rgba(194,74,249,.055);
}
.jb-contact-branch-map{gap:0!important}

/* Article tables: source-faithful dark table, with a clearly distinguished header. */
.jb-article-table-scroll{
  border:1px solid #343A52!important;
  border-radius:16px!important;
  background:#070919!important;
  overflow:auto!important;
}
.jb-article-table-block table{
  border-collapse:separate!important;
  border-spacing:0!important;
  background:#070919!important;
}
.jb-article-table-block thead th{
  background:#11162E!important;
  color:#FFFFFF!important;
  font-size:15px!important;
  line-height:1.35!important;
  font-weight:700!important;
  padding:15px 18px!important;
  border-bottom:2px solid rgba(65,125,219,.72)!important;
  box-shadow:none!important;
}
.jb-article-table-block thead th+th{
  border-inline-start:1px solid #343A52!important;
}
.jb-article-table-block tbody td{
  background:#080A1B!important;
  color:#C1C5D2!important;
  font-size:14px!important;
  line-height:1.55!important;
  padding:14px 18px!important;
  border-bottom:1px solid #2C3147!important;
  border-inline-start:1px solid #2C3147!important;
}
.jb-article-table-block tbody td:first-child{
  border-inline-start:0!important;
  color:#FFFFFF!important;
  font-weight:700!important;
}
.jb-article-table-block tbody tr:last-child td{
  border-bottom:0!important;
}
.jb-article-date-label{unicode-bidi:isolate;direction:rtl}
.jb-home-metrics .jb-metric-num{justify-content:flex-start!important}


/* =========================================================
   0.8.9 · Course card regression fix
   ========================================================= */
@media (min-width:1025px){
  .jb-courses .jb-course-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
.jb-courses .jb-course-card h3{
  font-size:clamp(30px,1.55rem + .55vw,36px)!important;
  line-height:1.06!important;
  font-weight:600!important;
  letter-spacing:-.015em!important;
}


/* =========================================================
   0.8.10 · Course title typography root fix
   The title is an <a> inside h3; older global link typography
   forced that anchor back to 15px. Keep the anchor tied to h3.
   ========================================================= */
.jb-courses .jb-course-card .jb-course-card-body>h3{
  font-size:clamp(25px,1.25rem + .45vw,30px)!important;
  font-weight:600!important;
  line-height:1.08!important;
  letter-spacing:-.015em!important;
}
.jb-courses .jb-course-card .jb-course-card-body>h3>a{
  display:block!important;
  font-size:inherit!important;
  font-weight:inherit!important;
  line-height:1.08!important;
  letter-spacing:inherit!important;
}
@media(max-width:1024px){
  .jb-courses .jb-course-card .jb-course-card-body>h3{font-size:clamp(23px,2.6vw,27px)!important;line-height:1.1!important}
  .jb-courses .jb-course-card .jb-course-card-body>h3>a{line-height:1.1!important}
}
@media(max-width:680px){
  .jb-courses .jb-course-card .jb-course-card-body>h3{font-size:clamp(22px,6.5vw,26px)!important;line-height:1.1!important}
}


/* =========================================================
   0.8.11 · Course title size refinement
   Slightly smaller than 0.8.10 while preserving tight line spacing.
   ========================================================= */
.jb-courses .jb-course-card .jb-course-card-body>h3{
  font-size:clamp(25px,1.25rem + .45vw,30px)!important;
  line-height:1.08!important;
}
.jb-courses .jb-course-card .jb-course-card-body>h3>a{
  font-size:inherit!important;
  line-height:inherit!important;
}
@media(max-width:1024px){
  .jb-courses .jb-course-card .jb-course-card-body>h3{font-size:clamp(23px,2.6vw,27px)!important;line-height:1.1!important}
}
@media(max-width:680px){
  .jb-courses .jb-course-card .jb-course-card-body>h3{font-size:clamp(22px,6.5vw,26px)!important;line-height:1.1!important}
}

/* =========================================================
   0.8.12 · Course card title size refinement
   Keep course-card titles compact across all breakpoints.
   ========================================================= */
.jb-courses .jb-course-card .jb-course-card-body>h3{
  font-size:clamp(18px,1.05rem + .35vw,22px)!important;
}


/* =========================================================
   0.8.13 · Verified 2026 course durations
   Multi-track durations may include evening + morning values.
   ========================================================= */
.jb-courses .jb-card-foot>span{
  white-space:normal!important;
  line-height:1.35!important;
  flex:1 1 auto;
  min-width:0;
}
.jb-courses .jb-card-foot>a{
  flex:0 0 auto;
  white-space:nowrap;
}


/* =========================================================
   0.8.15 · Article comparison table — source CSS Grid spec
   ========================================================= */
.jb-article-table-block{
  margin-top:20px;
}
.jb-article-table-block>h3{
  font-size:18px;
  font-weight:500;
  color:#fff;
  margin:0 0 8px;
}
.jb-article-table-block>p{
  font-size:15px;
  line-height:1.7;
  color:var(--ja-body);
  margin:0 0 14px;
}
.jb-article-table-scroll{
  border:1px solid transparent!important;
  border-radius:clamp(13px,1.4vw,20px)!important;
  background:
    linear-gradient(#060718,#060718) padding-box,
    linear-gradient(338deg,#4E5469 10.69%,#303546 92.26%) border-box!important;
  overflow:hidden!important;
}
.jb-article-table-grid{
  --jb-article-table-columns:1.2fr 1fr 1fr 1fr;
  display:grid;
  grid-template-columns:var(--jb-article-table-columns);
  gap:1px;
  background:rgba(85,91,113,.35);
}
.jb-article-table-row{
  display:contents;
}
.jb-article-table-head{
  background:#0a0c20;
  padding:14px 16px;
  font-size:15px;
  line-height:1.45;
  font-weight:700;
  color:#fff;
  text-align:start;
  min-width:0;
}
.jb-article-table-cell{
  background:#060718;
  padding:14px 16px;
  font-size:14px;
  line-height:1.55;
  font-weight:400;
  color:#AEB1BF;
  min-width:0;
  overflow-wrap:anywhere;
}
.jb-article-table-cell.is-first{
  background:#060718;
  font-size:14px;
  font-weight:500;
  color:#fff;
}
.jb-article-table-block>small{
  display:block;
  margin-top:12px;
  font-size:12px;
  line-height:1.5;
  color:#A1A6B7;
}

/* =========================================================
   0.8.17 · Site-wide marketing consent disclaimer
   Applied to lead/contact forms, including dynamically loaded Elementor popups.
   ========================================================= */
.jb-marketing-consent{
  width:100%!important;
  max-width:100%!important;
  grid-column:1/-1!important;
  flex:0 0 100%!important;
  margin:4px 0 2px!important;
  padding:0!important;
  direction:rtl!important;
  text-align:right!important;
  font-family:'Heebo','Roboto',system-ui,sans-serif!important;
  box-sizing:border-box!important;
}
.jb-marketing-consent-head{
  display:flex!important;
  align-items:flex-start!important;
  gap:8px!important;
  margin:0 0 5px!important;
}
.jb-marketing-consent-head input[type="checkbox"]{
  appearance:auto!important;
  -webkit-appearance:checkbox!important;
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  max-width:16px!important;
  margin:2px 0 0!important;
  padding:0!important;
  flex:0 0 16px!important;
  border-radius:3px!important;
  accent-color:#1ECAFF!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.jb-marketing-consent-head label{
  margin:0!important;
  padding:0!important;
  color:#FFFFFF!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.45!important;
  cursor:pointer!important;
}
.jb-marketing-consent-copy{
  margin:0!important;
  padding:0 24px 0 0!important;
  color:#AEB1BF!important;
  font-size:11px!important;
  font-weight:400!important;
  line-height:1.55!important;
}
.jb-marketing-consent-copy a{
  color:#1ECAFF!important;
  text-decoration:underline!important;
  text-underline-offset:2px!important;
  transition:color .2s ease!important;
}
.jb-marketing-consent-copy a:hover,
.jb-marketing-consent-copy a:focus-visible{
  color:#C24AF9!important;
}
.jb-marketing-consent.has-error .jb-marketing-consent-head label{
  color:#ffb4b4!important;
}
.jb-marketing-consent.has-error .jb-marketing-consent-head input[type="checkbox"]{
  outline:2px solid rgba(255,100,100,.55)!important;
  outline-offset:2px!important;
}
@media(max-width:680px){
  .jb-marketing-consent-head label{font-size:12px!important}
  .jb-marketing-consent-copy{font-size:10.5px!important;line-height:1.55!important}
}


/* =========================================================
   0.8.18 · Bottom CTA form balance
   Full name + phone + submit stay on the first row; consent spans beneath.
   ========================================================= */
@media(min-width:761px){
  .jb-course-bottom-form .elementor-form-fields-wrapper{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(180px,.82fr)!important;
  }
  .jb-course-bottom-form .jb-marketing-consent{
    grid-column:1/-1!important;
  }
}

/* =========================================================
 * 0.8.20 — COURSE SALARY + GRADUATE STORIES
 * ========================================================= */

/* Salary widget: every textual value is white, including the senior range. */
.jb-course-v2-main .jb-salary-table,
.jb-course-v2-main .jb-salary-table span,
.jb-course-v2-main .jb-salary-table strong{
  color:#fff !important;
}

/* Course graduate stories — responsive, swipeable carousel. */
.jb-course-v2-main .jb-course-testimonial-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:clamp(24px,2.6vw,36px);
}
.jb-course-v2-main .jb-course-testimonial-heading h2{margin:0}
.jb-course-v2-main .jb-course-testimonial-controls{
  display:flex;
  align-items:center;
  gap:8px;
  flex:none;
  direction:rtl;
}
.jb-course-v2-main .jb-course-testimonial-controls button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(85,91,113,.8);
  border-radius:50%;
  background:#060718;
  color:#fff !important;
  font:400 21px/1 var(--jb-font-hebrew,'Heebo',sans-serif);
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,opacity .2s ease,transform .2s ease;
}
.jb-course-v2-main .jb-course-testimonial-controls button:hover,
.jb-course-v2-main .jb-course-testimonial-controls button:focus-visible{
  border-color:#1ECAFF;
  background:#0a0c20;
  color:#fff !important;
  transform:translateY(-1px);
}
.jb-course-v2-main .jb-course-testimonial-controls button:disabled{
  opacity:.32;
  cursor:default;
  transform:none;
}
.jb-course-v2-main .jb-course-testimonial-controls[hidden]{display:none!important}
.jb-course-v2-main .jb-course-testimonial-viewport{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  touch-action:pan-x pan-y;
  padding:1px;
  outline:none;
}
.jb-course-v2-main .jb-course-testimonial-viewport:focus-visible{
  outline:1px solid rgba(30,202,255,.65);
  outline-offset:6px;
  border-radius:6px;
}
.jb-course-v2-main .jb-course-testimonial-viewport::-webkit-scrollbar{display:none}
.jb-course-v2-main .jb-course-testimonial-track{
  display:flex;
  gap:clamp(14px,1.6vw,22px);
  width:100%;
  direction:rtl;
}
.jb-course-v2-main .jb-course-testimonial-card{
  flex:0 0 calc((100% - (2 * clamp(14px,1.6vw,22px))) / 3);
  width:calc((100% - (2 * clamp(14px,1.6vw,22px))) / 3);
  min-width:260px;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  box-sizing:border-box;
}
@media(max-width:980px){
  .jb-course-v2-main .jb-course-testimonial-card{
    flex-basis:calc((100% - clamp(14px,1.6vw,22px)) / 2);
    width:calc((100% - clamp(14px,1.6vw,22px)) / 2);
  }
}
@media(max-width:680px){
  .jb-course-v2-main .jb-course-testimonial-heading{align-items:flex-end}
  .jb-course-v2-main .jb-course-testimonial-controls button{width:38px;height:38px;font-size:19px}
  .jb-course-v2-main .jb-course-testimonial-card{
    flex-basis:100%;
    width:100%;
    min-width:100%;
  }
}


/* =========================================================
 * 0.8.21 — Course technologies & tools with managed logos
 * ========================================================= */
.jb-course-v2-main .jb-tech-logo-list{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:16px;
}
.jb-course-v2-main .jb-tech-logo-pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:7px 14px 7px 16px;
  border:1px solid #555B71;
  border-radius:100px;
  background:rgba(255,255,255,.035);
  color:#fff;
  font-size:14px;
  font-weight:500;
  line-height:1.2;
  white-space:nowrap;
}
.jb-course-v2-main .jb-tool-mark{
  width:32px;
  height:32px;
  flex:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.72);
  border-radius:9px;
  background:#fff;
  color:#121426;
}
.jb-course-v2-main .jb-tool-logo-img{
  display:block;
  width:19px;
  height:19px;
  max-width:19px;
  max-height:19px;
  object-fit:contain;
}
.jb-course-v2-main .jb-tool-generic{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:19px;
  height:19px;
  color:#312782;
}
.jb-course-v2-main .jb-tool-generic svg{width:19px;height:19px}
.jb-course-v2-main .jb-tool-mark .jb-tool-logo-img + .jb-tool-generic{display:none}
.jb-course-v2-main .jb-tool-mark.is-generic .jb-tool-generic{display:inline-flex}
.jb-course-v2-main .jb-tool-title{color:#fff}
@media(max-width:680px){
  .jb-course-v2-main .jb-tech-logo-list{gap:8px}
  .jb-course-v2-main .jb-tech-logo-pill{min-height:44px;padding:6px 12px 6px 13px;font-size:13px;gap:8px}
  .jb-course-v2-main .jb-tool-mark{width:29px;height:29px}
  .jb-course-v2-main .jb-tool-logo-img,.jb-course-v2-main .jb-tool-generic,.jb-course-v2-main .jb-tool-generic svg{width:17px;height:17px;max-width:17px;max-height:17px}
}


/* =========================================================
   0.8.24 · Course "Why John Bryce" metrics RTL alignment
   Plus stays visually on the LEFT of the number, while the full
   metric group is anchored to the RIGHT edge of its column.
   ========================================================= */
.jb-course-v2-main .jb-matrix .jb-metric-num{
  width:100%;
  display:flex !important;
  flex-direction:row-reverse !important;
  flex-wrap:nowrap !important;
  align-items:baseline !important;
  justify-content:flex-start !important;
  gap:8px !important;
  direction:ltr !important;
  text-align:right !important;
  white-space:nowrap !important;
}
.jb-course-v2-main .jb-matrix .jb-counter-value{
  display:inline-block;
  flex:0 0 auto;
  font:inherit;
  line-height:1;
  color:#fff;
  font-variant-numeric:tabular-nums;
}
.jb-course-v2-main .jb-matrix .jb-metric-suffix,
.jb-course-v2-main .jb-matrix .jb-metric-suffix-symbol,
.jb-course-v2-main .jb-matrix .jb-metric-suffix-text{
  display:inline-block !important;
  flex:0 0 auto !important;
  width:auto !important;
  margin:0 !important;
  color:#fff !important;
  font:inherit;
  line-height:1;
  white-space:nowrap !important;
}
.jb-course-v2-main .jb-matrix .jb-metric-suffix-symbol{
  font-family:var(--jb-font-latin,'Roboto',sans-serif) !important;
  direction:ltr !important;
}


/* =========================================================
   0.8.25 · Course value bullets + contact action separation
   ========================================================= */

/* "Why John Bryce" is a real bullet list, not pill buttons. */
.jb-course-v2-main .jb-why-jb-list{
  list-style:none !important;
  margin:clamp(24px,2.6vw,36px) 0 0 !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:clamp(28px,4vw,64px);
  row-gap:14px;
  width:100%;
  max-width:940px;
}
.jb-course-v2-main .jb-why-jb-list li{
  position:relative;
  margin:0 !important;
  padding:0 16px 0 0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:none !important;
  box-shadow:none !important;
  color:#D6D8E0 !important;
  font-size:14px !important;
  line-height:1.65 !important;
  text-align:right !important;
}
.jb-course-v2-main .jb-why-jb-list li::before{
  content:'';
  position:absolute;
  right:0;
  top:.66em;
  width:7px;
  height:7px;
  border-radius:50%;
  transform:translateY(-50%);
  background:#8B4DFF;
  box-shadow:0 0 0 1px rgba(194,74,249,.12);
}

/* Separate the actual lead form from direct phone / WhatsApp actions. */
.jb-course-v2-main .jb-course-contact-secondary{
  position:relative;
  width:min(720px,100%);
  margin-top:12px !important;
  padding-top:24px;
}
.jb-course-v2-main .jb-course-contact-secondary::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  left:0;
  height:1px;
  background:rgba(85,91,113,.55);
}

@media(max-width:680px){
  .jb-course-v2-main .jb-why-jb-list{
    grid-template-columns:1fr;
    row-gap:12px;
  }
  .jb-course-v2-main .jb-course-contact-secondary{
    padding-top:20px;
  }
}


/* =========================================================
   0.8.26 · Testimonials SEO landing routes
   ========================================================= */
.jb-testimonials-filter-row a.jb-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none!important;
  white-space:nowrap;
}
.jb-testimonials-filter-row a.jb-chip:hover,
.jb-testimonials-filter-row a.jb-chip:focus-visible{
  color:#fff;
  border-color:rgba(30,202,255,.55);
}
.jb-testimonials-filter-row a.jb-chip.is-active,
.jb-testimonials-filter-row a.jb-chip.is-active:hover,
.jb-testimonials-filter-row a.jb-chip.is-active:focus-visible{
  color:#fff;
  background:linear-gradient(135deg,var(--jb-cyan),var(--jb-purple));
  border-color:transparent;
}
.jb-testimonials-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding-top:clamp(18px,2vw,28px);
  font-size:13px;
  line-height:1.4;
  color:#6B7089;
}
.jb-testimonials-breadcrumbs a{color:#6B7089;text-decoration:none}
.jb-testimonials-breadcrumbs a:hover,
.jb-testimonials-breadcrumbs a:focus-visible{color:#1ECAFF}
.jb-testimonials-breadcrumbs [aria-current="page"]{color:#A1A6B7}

/* =========================================================
   0.8.27 · Legal pages + deterministic footer legal/social links
   ========================================================= */
.jb-legal-page .jb-legal-content-section{padding-top:clamp(34px,4vw,64px)!important}
.jb-legal-content{
  max-width:1040px;margin:0 auto;padding:clamp(24px,3.5vw,52px);
  border:1px solid rgba(85,91,113,.55);border-radius:clamp(16px,1.8vw,24px);
  background:#060718;color:#D6D8E0;font-size:15px;line-height:1.85;text-align:right;
}
.jb-legal-content h2,.jb-legal-content h3,.jb-legal-content h4{color:#fff;font-weight:500;line-height:1.35;margin:2em 0 .7em}
.jb-legal-content h2:first-child,.jb-legal-content h3:first-child{margin-top:0}
.jb-legal-content h2{font-size:clamp(22px,1.25rem + .7vw,30px)}
.jb-legal-content h3{font-size:clamp(18px,1.05rem + .35vw,22px)}
.jb-legal-content p{color:#D6D8E0;margin:0 0 1em}
.jb-legal-content ul,.jb-legal-content ol{margin:0 0 1.4em;padding-inline-start:1.5em}
.jb-legal-content li{margin:.45em 0;color:#D6D8E0}
.jb-legal-content a{color:#1ECAFF;text-decoration:underline;text-underline-offset:3px}
.jb-legal-content strong{color:#fff;font-weight:600}
.jb-legal-content table{width:100%;border-collapse:collapse;margin:1.5em 0;display:block;overflow-x:auto}
.jb-legal-content th,.jb-legal-content td{padding:11px 12px;border:1px solid rgba(85,91,113,.55);text-align:right;white-space:normal}
.jb-legal-document-card{padding:clamp(22px,3vw,36px);border:1px solid rgba(30,202,255,.25);border-radius:18px;background:rgba(30,202,255,.06)}
.jb-legal-document-card .jb-btn{margin-top:10px;text-decoration:none;color:#fff!important}
.jb-company-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(85,91,113,.42);border:1px solid rgba(85,91,113,.55);border-radius:18px;overflow:hidden}
.jb-company-details-grid>div{background:#060718;padding:20px;display:flex;flex-direction:column;gap:7px}
.jb-company-details-grid span{font-size:13px;color:#A1A6B7}
.jb-company-details-grid strong,.jb-company-details-grid a{font-size:16px;color:#fff;text-decoration:none}
.jb-core-legal-menu{display:flex!important;flex-wrap:wrap!important;gap:10px 22px!important;align-items:center!important}
.jb-core-legal-menu li{margin:0!important;padding:0!important}
.jb-core-legal-menu a{white-space:nowrap}
.jb-core-footer-socials{display:flex!important;gap:12px!important;margin-top:6px!important}
@media(max-width:680px){
  .jb-company-details-grid{grid-template-columns:1fr}
  .jb-core-legal-menu{gap:10px 16px!important}
}

/* =========================================================
   0.8.30 · Article preferred-source CTA + domain pillar pages
   ========================================================= */
.jb-article-preferred-source{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  margin:clamp(22px,2.6vw,34px) 0 clamp(24px,3vw,40px);
  padding:16px 18px;
  border:1px solid transparent;
  border-radius:16px;
  background:linear-gradient(#080a1d,#080a1d) padding-box,
             linear-gradient(110deg,rgba(194,74,249,.75),rgba(30,202,255,.55),rgba(78,84,105,.45)) border-box;
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.jb-article-preferred-icon{
  width:40px;height:40px;border-radius:12px;display:grid;place-items:center;
  color:#fff;font-size:18px;line-height:1;
  background:linear-gradient(135deg,rgba(194,74,249,.22),rgba(30,202,255,.16));
  border:1px solid rgba(194,74,249,.28);
}
.jb-article-preferred-source strong{display:block;color:#fff;font-size:15px;line-height:1.35;font-weight:600}
.jb-article-preferred-source p{margin:5px 0 0!important;color:#AEB1BF!important;font-size:13px!important;line-height:1.5!important}
.jb-article-preferred-source>a{
  display:inline-flex;align-items:center;gap:7px;white-space:nowrap;
  color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:600;
  padding:10px 13px;border-radius:999px;border:1px solid rgba(30,202,255,.24);
  background:rgba(30,202,255,.07);transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.jb-article-preferred-source>a:hover{transform:translateY(-1px);border-color:rgba(30,202,255,.55);background:rgba(30,202,255,.12)}

.jb-domain-page{background:#030410;color:#fff;min-height:100vh}
.jb-domain-breadcrumb-wrap{padding-top:clamp(92px,8vw,118px);position:relative;z-index:2}
.jb-domain-breadcrumbs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:#74798e}
.jb-domain-breadcrumbs a{color:#AEB1BF;text-decoration:none}.jb-domain-breadcrumbs a:hover{color:#fff}.jb-domain-breadcrumbs>span:last-child{color:#D6D8E0}
.jb-domain-page .jb-domain-hero{padding-top:clamp(38px,5vw,70px);position:relative;overflow:hidden}
.jb-domain-page .jb-domain-hero:before{content:"";position:absolute;width:48vw;height:48vw;max-width:720px;max-height:720px;right:-12vw;top:-26vw;border-radius:50%;background:radial-gradient(circle,rgba(194,74,249,.13),rgba(30,202,255,.045) 43%,transparent 70%);pointer-events:none}
.jb-domain-page .jb-domain-hero .jb-container{position:relative;z-index:1}
.jb-domain-overview-grid{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr);gap:clamp(36px,7vw,110px);align-items:start}
.jb-domain-overview h2{font-size:clamp(32px,3.5vw,58px)!important;line-height:1.08!important}
.jb-domain-overview-copy{padding-top:28px;border-top:1px solid rgba(85,91,113,.55)}
.jb-domain-overview-copy p{margin:0!important;font-size:clamp(16px,1.25vw,19px)!important;line-height:1.85!important;color:#C2C5D0!important;white-space:normal}

/* A domain page is already pre-filtered server-side, so do not show redundant filters. */
.jb-domain-page .jb-courses .jb-search,
.jb-domain-page .jb-courses .jb-filter-groups,
.jb-domain-page .jb-courses .jb-filter-status,
.jb-domain-page .jb-courses .jb-show-more{display:none!important}
.jb-domain-page .jb-courses .jb-course-filters{margin-top:0!important}
.jb-domain-page .jb-courses .jb-course-grid{margin-top:0!important}

.jb-domain-jobs{position:relative;overflow:hidden}
.jb-domain-jobs:after{content:"";position:absolute;width:420px;height:420px;left:-190px;bottom:-260px;border-radius:50%;background:radial-gradient(circle,rgba(30,202,255,.08),transparent 68%);pointer-events:none}
.jb-domain-job-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;position:relative;z-index:1}
.jb-domain-job-card{
  min-height:104px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;
  padding:18px;border:1px solid rgba(85,91,113,.52);border-radius:16px;background:#060718;
  color:#fff!important;text-decoration:none!important;transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.jb-domain-job-card:hover{transform:translateY(-2px);border-color:rgba(194,74,249,.48);background:#080a20}
.jb-domain-job-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;color:#C24AF9;background:rgba(194,74,249,.08);border:1px solid rgba(194,74,249,.18)}
.jb-domain-job-icon svg{width:20px;height:20px}
.jb-domain-job-card small{display:block;color:#8E93A6;font-size:12px;margin-bottom:5px}
.jb-domain-job-card strong{display:block;color:#fff!important;background:none!important;-webkit-text-fill-color:initial!important;animation:none!important;font-size:17px;font-weight:500;line-height:1.25}
.jb-domain-job-card>b{font-size:20px;font-weight:300;color:#1ECAFF}
.jb-domain-jobs-note{font-size:12px!important;color:#74798E!important;margin:14px 0 0!important}
.jb-domain-articles .jb-article-grid{margin-top:0}

@media (max-width:767px){
  .jb-article-preferred-source{grid-template-columns:auto 1fr;gap:12px;padding:14px;margin-top:18px}
  .jb-article-preferred-source>a{grid-column:1/-1;justify-content:center;width:100%}
  .jb-domain-breadcrumb-wrap{padding-top:78px}
  .jb-domain-overview-grid{grid-template-columns:1fr;gap:26px}
  .jb-domain-overview-copy{padding-top:20px}
  .jb-domain-job-grid{grid-template-columns:1fr}
}

/* =========================================================
   0.8.31 — Mobile CWV / immediate priority motion
   Keep the visible gradient language, but move animation work to
   compositor-friendly opacity/transform instead of background-position.
   ========================================================= */
.jb-section strong,
.jb-hero strong,
.jb-course-hero strong,
.jb-domain-hero strong{
  background-size:100% 100% !important;
  animation:jbCompositeTextPulse 3s ease-in-out infinite !important;
  will-change:opacity;
}
@keyframes jbCompositeTextPulse{
  0%,100%{opacity:.92}
  50%{opacity:1}
}
.jb-home-hero-v2 .jb-priority-lcp strong,
.jb-home-metrics .jb-priority-title strong{
  animation:jbCriticalGradientPulse 2.8s ease-in-out infinite !important;
  will-change:opacity,transform;
}
@keyframes jbCriticalGradientPulse{
  0%,100%{opacity:.92;transform:translate3d(0,0,0)}
  50%{opacity:1;transform:translate3d(0,-1px,0)}
}
.jb-home-hero-v2 .jb-home-binary pre{
  background-position:50% 50% !important;
  animation-name:jbHomeBinaryFloat !important;
  animation-timing-function:ease-in-out !important;
  animation-direction:alternate !important;
  will-change:transform,opacity !important;
}
@keyframes jbHomeBinaryFloat{
  0%{transform:translate3d(0,0,0);opacity:.52}
  50%{transform:translate3d(12px,-7px,0);opacity:.72}
  100%{transform:translate3d(-8px,5px,0);opacity:.58}
}
.jb-home-hero-v2 .jb-home-orb{
  contain:layout paint style;
  will-change:transform;
  backface-visibility:hidden;
}
.jb-home-hero-v2 .jb-hero-inner,
.jb-home-hero-v2 .jb-priority-lcp,
.jb-home-metrics .jb-priority-title{
  visibility:visible !important;
  opacity:1 !important;
}
.elementor-invisible:has(.jb-home-hero-v2),
.elementor-invisible:has(.jb-priority-title){
  visibility:visible !important;
  opacity:1 !important;
  transform:none !important;
}
@media(max-width:680px){
  .jb-home-hero-v2 .jb-home-orb-c,
  .jb-home-hero-v2 .jb-home-orb-d{filter:blur(110px)}
}
@media(prefers-reduced-motion:reduce){
  .jb-section strong,.jb-hero strong,.jb-course-hero strong,.jb-domain-hero strong,
  .jb-home-hero-v2 .jb-home-binary pre{animation:none !important}
}

/* =========================================================
   0.8.32 · Favicon-first course tools + global mobile contact dock
   ========================================================= */
.jb-course-v2-main .jb-tool-mark.is-favicon{
  background:#fff;
  border-color:rgba(255,255,255,.82);
  box-shadow:0 4px 14px rgba(0,0,0,.16);
}
.jb-course-v2-main .jb-tool-favicon-img{
  width:21px!important;
  height:21px!important;
  max-width:21px!important;
  max-height:21px!important;
  object-fit:contain!important;
}
.jb-course-v2-main .jb-tech-logo-pill{
  transition:border-color .2s ease,background .2s ease,transform .2s ease;
}
@media(hover:hover){
  .jb-course-v2-main .jb-tech-logo-pill:hover{
    border-color:rgba(145,119,255,.72);
    background:rgba(117,86,255,.075);
    transform:translateY(-1px);
  }
}

/* Course-aware dock: same three-action language used by the global dock. */
.jb-course-mobile-bar{
  align-items:stretch;
  padding-bottom:calc(12px + env(safe-area-inset-bottom));
}
.jb-course-mobile-bar .jb-course-mobile-action{
  appearance:none;
  -webkit-appearance:none;
  flex:1 1 0;
  min-width:0;
  min-height:52px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:rgba(255,255,255,.065);
  color:#fff!important;
  font:600 12px/1.1 Heebo,Arial,sans-serif;
  text-decoration:none!important;
  cursor:pointer;
}
.jb-course-mobile-bar .jb-course-mobile-action svg{
  width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;
}
.jb-course-mobile-bar .jb-course-mobile-action.is-whatsapp{color:#62E58C!important}
.jb-course-mobile-bar .jb-course-mobile-action.is-lead{
  background:linear-gradient(135deg,#7858FF 0%,#4D43F1 100%);
  border-color:transparent;
  color:#fff!important;
}

.jb-mobile-contact-dock{display:none}
.jb-mobile-contact-modal[hidden]{display:none!important}
.jb-mobile-contact-modal{
  position:fixed;inset:0;z-index:10020;
  display:flex;align-items:flex-end;justify-content:center;
  padding:18px 14px calc(18px + env(safe-area-inset-bottom));
}
.jb-mobile-contact-backdrop{
  position:absolute;inset:0;border:0;margin:0;padding:0;
  background:rgba(2,3,14,.76)!important;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
.jb-mobile-contact-dialog{
  position:relative;z-index:1;width:min(100%,520px);max-height:min(82vh,720px);overflow:auto;
  border:1px solid rgba(255,255,255,.14);border-radius:24px;
  background:#080A1C;padding:22px 18px 18px;
  box-shadow:0 30px 90px rgba(0,0,0,.55);color:#fff;
}
.jb-mobile-contact-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.jb-mobile-contact-head>div>span{display:block;color:#9A8BFF;font:600 12px/1.2 Heebo,Arial,sans-serif;margin-bottom:5px}
.jb-mobile-contact-head h2{margin:0;color:#fff;font:600 22px/1.2 Heebo,Arial,sans-serif}
.jb-mobile-contact-close{
  all:unset;box-sizing:border-box;cursor:pointer;flex:none;width:38px;height:38px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.13);font-size:24px;line-height:1;
}
body.jb-mobile-contact-modal-open{overflow:hidden}

@media(max-width:767px){
  html.jb-has-mobile-contact-dock body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
  .jb-mobile-contact-dock{
    position:fixed;left:0;right:0;bottom:0;z-index:9990;
    display:flex;align-items:stretch;gap:8px;
    padding:9px 10px calc(9px + env(safe-area-inset-bottom));
    background:rgba(4,5,20,.94);
    border-top:1px solid rgba(255,255,255,.12);
    box-shadow:0 -10px 35px rgba(0,0,0,.25);
    backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  }
  .jb-mobile-contact-action{
    appearance:none;-webkit-appearance:none;
    flex:1 1 0;min-width:0;min-height:54px;
    display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
    margin:0;padding:6px 5px;border:1px solid rgba(255,255,255,.13);border-radius:14px;
    background:rgba(255,255,255,.06);color:#fff!important;text-decoration:none!important;
    font:600 12px/1.1 Heebo,Arial,sans-serif;cursor:pointer;
  }
  .jb-mobile-contact-action svg{width:20px;height:20px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .jb-mobile-contact-action.is-whatsapp{color:#62E58C!important}
  .jb-mobile-contact-action.is-whatsapp svg{fill:currentColor;stroke:none}
  .jb-mobile-contact-action.is-lead{background:linear-gradient(135deg,#7858FF 0%,#4D43F1 100%);border-color:transparent;color:#fff!important}
  .jb-mobile-contact-form .elementor-form-fields-wrapper{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .jb-mobile-contact-form .elementor-field-group,.jb-mobile-contact-form .elementor-field-type-submit{width:100%!important;grid-column:1!important}
}


/* =========================================================
   JB Core 0.8.35 · Sticky offsets + step quiz
   ========================================================= */
@media (min-width:901px){
  .jb-course-side,
  .jb-article-sidebar{
    top:calc(clamp(90px,9vw,120px) + 14px)!important;
  }
  body.admin-bar .jb-course-side,
  body.admin-bar .jb-article-sidebar{
    top:calc(clamp(90px,9vw,120px) + var(--wp-admin--admin-bar--height,32px) + 14px)!important;
  }
}

.jb-quiz-card{overflow:hidden}
.jb-quiz-progress{display:flex;flex-direction:column;gap:10px;margin-bottom:clamp(20px,2.2vw,28px)}
.jb-quiz-progress-copy{display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:12px;line-height:1.4;color:var(--ja-muted,#A1A6B7)}
.jb-quiz-progress-copy strong{color:#fff;font-size:13px;font-weight:500}
.jb-quiz-progress-track{position:relative;height:6px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.04)}
.jb-quiz-progress-track>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#C24AF9 0%,#1ECAFF 100%);transition:width .28s ease}
.jb-quiz-stage{min-height:180px}
.jb-quiz-question{padding:0!important;margin:0!important;border:0!important}
.jb-quiz-question[hidden],.jb-quiz-result[hidden],.jb-quiz-nav[hidden]{display:none!important}
.jb-quiz-step-label{margin:0 0 7px!important;color:#8E93A7!important;font-size:12px!important;font-weight:500!important}
.jb-quiz-question h3{margin:0 0 18px!important;font-size:clamp(18px,1rem + .35vw,22px)!important;line-height:1.5!important;outline:none}
.jb-quiz-options{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
.jb-quiz-options button{min-height:50px!important;padding:13px 17px!important;border-radius:14px!important}
.jb-quiz-option-arrow{opacity:.55;transform:translateX(0);transition:transform .2s ease,opacity .2s ease}
.jb-quiz-options button:hover .jb-quiz-option-arrow,.jb-quiz-options button.is-selected .jb-quiz-option-arrow{opacity:1;transform:translateX(-3px)}
.jb-quiz-nav{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap;margin-top:22px;padding-top:18px;border-top:1px solid rgba(85,91,113,.28)}
.jb-quiz-nav-btn{appearance:none;border:0;background:none;padding:5px 0!important;color:#AEB1BF!important;font:inherit;font-size:12.5px!important;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.jb-quiz-nav-btn:hover,.jb-quiz-nav-btn:focus-visible{color:#1ECAFF!important}
.jb-quiz-result{margin:0!important;padding:clamp(20px,2.2vw,28px)!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(194,74,249,.08),rgba(30,202,255,.055))!important;border:1px solid rgba(117,126,255,.28)!important}
.jb-quiz-result-kicker{margin:0 0 6px!important;color:#1ECAFF!important;font-size:12px!important;font-weight:600!important;letter-spacing:.05em}
.jb-quiz-result [data-min][data-max] h3{margin:0 0 8px!important;font-size:clamp(20px,1.05rem + .5vw,25px)!important;color:#fff!important;outline:none}
.jb-quiz-result [data-min][data-max] p{margin:0!important;color:#D6D8E0!important;line-height:1.7!important}
.jb-quiz-contact{display:flex;flex-direction:column;align-items:flex-start;gap:5px;margin-top:20px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1)}
.jb-quiz-contact>strong{color:#fff;font-size:14px;font-weight:500}.jb-quiz-contact>span{color:#AEB1BF;font-size:12.5px;line-height:1.6}
.jb-quiz-contact-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:10px}
.jb-quiz-contact-actions .jb-article-gradient-btn{margin:0!important;padding:11px 20px!important;min-height:42px}
.jb-quiz-contact-actions>a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 16px;border:1px solid #3C4255;border-radius:999px;color:#fff!important;text-decoration:none!important;font-size:13px;font-weight:500;transition:border-color .2s ease,color .2s ease}
.jb-quiz-contact-actions>a:hover{border-color:#1ECAFF;color:#1ECAFF!important}
@media(max-width:600px){
  .jb-quiz-progress-copy{align-items:flex-start;flex-direction:column;gap:3px}
  .jb-quiz-nav{align-items:flex-start;flex-direction:column;gap:8px}
  .jb-quiz-contact-actions{width:100%}.jb-quiz-contact-actions .jb-article-gradient-btn{width:100%}
}


/* =========================================================
   0.8.36 · Course domain filter link alignment
   Domain chips became real crawlable <a> links for SEO in 0.8.34.
   Normalize anchors to the same vertical geometry as native filter buttons.
   ========================================================= */
.jb-courses .jb-course-filters a.jb-chip{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  min-height:40px!important;
  height:40px!important;
  padding:0 18px!important;
  margin:0!important;
  line-height:1!important;
  vertical-align:middle!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.jb-courses .jb-course-filters a.jb-chip:hover,
.jb-courses .jb-course-filters a.jb-chip:focus-visible{
  color:#fff!important;
  border-color:var(--jb-border-hover)!important;
}
.jb-courses .jb-course-filters a.jb-chip.is-active,
.jb-courses .jb-course-filters a.jb-chip.is-active:hover,
.jb-courses .jb-course-filters a.jb-chip.is-active:focus-visible{
  color:#fff!important;
  background:linear-gradient(135deg,var(--jb-cyan),var(--jb-purple))!important;
  border-color:transparent!important;
}


/* =========================================================
   0.8.38 · Desktop cursor halo
   Large purple radial glow follows a real mouse pointer using
   transform-only positioning. Hidden on touch/coarse pointers
   and for visitors who prefer reduced motion.
   ========================================================= */
#cursor-ring{
  position:fixed;
  top:0;
  left:0;
  width:595px;
  height:595px;
  border-radius:50%;
  opacity:0;
  pointer-events:none;
  z-index:9999;
  will-change:transform;
  background:radial-gradient(49.77% 50% at 50.03% 50%,rgba(58,28,139,.42) 0%,rgba(58,28,139,0) 100%);
  transition:opacity .3s linear,width .15s linear,height .15s linear;
}
@media (max-width:1024px),(pointer:coarse),(prefers-reduced-motion:reduce){
  #cursor-ring{display:none!important}
}

/* =========================================================
   0.8.41 · Restore moving gradient on display headings
   0.8.31 replaced background-position motion with an opacity pulse for CWV.
   Restore the original moving blue-purple gradient only on intentional
   display-heading accents; normal <strong> emphasis remains static.
   ========================================================= */
.jb-hero h1>strong,
.jb-section h1>strong,
.jb-section h2>strong,
.jb-course-hero h1>strong,
.jb-domain-hero h1>strong,
.jb-contact-hero h1>strong,
.jb-main-campus h2>strong,
.jb-contact-main-campus h2>strong,
.jb-article-header h1 strong,
.jb-home-hero-v2 .jb-priority-lcp strong,
.jb-home-metrics .jb-priority-title strong{
  background-size:200% auto!important;
  animation:jbTextShine 3s linear infinite!important;
  will-change:auto!important;
}
@media(prefers-reduced-motion:reduce){
  .jb-hero h1>strong,
  .jb-section h1>strong,
  .jb-section h2>strong,
  .jb-course-hero h1>strong,
  .jb-domain-hero h1>strong,
  .jb-contact-hero h1>strong,
  .jb-main-campus h2>strong,
  .jb-contact-main-campus h2>strong,
  .jb-article-header h1 strong,
  .jb-home-hero-v2 .jb-priority-lcp strong,
  .jb-home-metrics .jb-priority-title strong{
    animation:none!important;
    background-position:50% 50%!important;
  }
}



/* =========================================================
   0.8.42 · Domain hub visual + Jobs hardening
   Keep the fixes strictly inside taxonomy landing pages.
   ========================================================= */
.jb-domain-articles .jb-article-foot{
  border-top:1px solid rgba(85,91,113,.5);
  padding-top:14px;
}
.jb-domain-articles .jb-article-foot a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:#1ECAFF!important;
  text-decoration:none!important;
  font-size:15px;
  font-weight:500;
  transition:gap .3s ease,color .3s ease;
}
.jb-domain-articles .jb-article-foot a:hover,
.jb-domain-articles .jb-article-foot a:focus-visible{
  gap:16px;
  color:#fff!important;
}

/* Domain lead form reuses the proven course form skin, but remains scoped and centered. */
.jb-domain-contact .jb-domain-form-skin{
  width:min(100%,820px)!important;
  max-width:820px!important;
  margin:24px auto 0!important;
  text-align:right!important;
}
.jb-domain-contact .jb-domain-form-skin .elementor-form-fields-wrapper{
  direction:rtl!important;
}
@media(max-width:760px){
  .jb-domain-contact .jb-domain-form-skin{width:100%!important}
}


/* =========================================================
   JB Core 0.8.43 · Mobile WhatsApp polish + WP menu subnav
   ========================================================= */
@media(max-width:1080px){
  .jb-mobile-contact-action.is-whatsapp svg,
  .jb-course-mobile-bar .jb-course-mobile-action.is-whatsapp svg{
    width:22px!important;
    height:22px!important;
    flex:0 0 22px;
    display:block;
    fill:currentColor!important;
    stroke:none!important;
    overflow:visible;
    shape-rendering:geometricPrecision;
    transform:translateY(-.25px);
  }
  .jb-mobile-contact-action.is-whatsapp,
  .jb-course-mobile-bar .jb-course-mobile-action.is-whatsapp{
    color:#55E681!important;
  }
}

/* Native WordPress menu children: keep the existing flat header untouched while
   allowing editors to create one submenu level safely. */
.jb-header-menu .menu-item-has-children{position:relative}
.jb-header-menu .sub-menu{
  position:absolute;
  top:calc(100% + 12px);
  right:0;
  z-index:10005;
  min-width:220px;
  margin:0;
  padding:8px;
  list-style:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(7,8,24,.96);
  box-shadow:0 18px 55px rgba(0,0,0,.42);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.jb-header-menu .menu-item-has-children:hover>.sub-menu,
.jb-header-menu .menu-item-has-children:focus-within>.sub-menu{
  opacity:1;
  visibility:visible;
  transform:none;
}
.jb-header-menu .sub-menu a{
  display:block;
  padding:10px 12px;
  border-radius:10px;
  white-space:nowrap;
}
.jb-header-menu .sub-menu a:hover,
.jb-header-menu .sub-menu a:focus-visible{background:rgba(255,255,255,.07)}

@media(max-width:1080px){
  .jb-mobile-menu .sub-menu{
    margin:6px 14px 4px 0;
    padding-right:14px;
    list-style:none;
    border-right:1px solid rgba(30,202,255,.25);
  }
}


/* =========================================================
 * 0.8.44 — Mobile layout hardening + Domain testimonials
 * ========================================================= */

/* Domain graduate stories reuse the proven course carousel markup, but are
   intentionally scoped to Domain Hub pages so course-page fidelity is unchanged. */
.jb-domain-page .jb-course-testimonial-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:clamp(24px,2.6vw,36px);
}
.jb-domain-page .jb-course-testimonial-heading h2{margin:0}
.jb-domain-page .jb-course-testimonial-controls{
  display:flex;
  align-items:center;
  gap:8px;
  flex:none;
  direction:rtl;
}
.jb-domain-page .jb-course-testimonial-controls button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid rgba(85,91,113,.8);
  border-radius:50%;
  background:#060718;
  color:#fff!important;
  font:400 21px/1 var(--jb-font-hebrew,'Heebo',sans-serif);
  cursor:pointer;
  transition:border-color .2s ease,background .2s ease,opacity .2s ease,transform .2s ease;
}
.jb-domain-page .jb-course-testimonial-controls button:hover,
.jb-domain-page .jb-course-testimonial-controls button:focus-visible{
  border-color:#1ECAFF;
  background:#0a0c20;
  color:#fff!important;
  transform:translateY(-1px);
}
.jb-domain-page .jb-course-testimonial-controls button:disabled{opacity:.32;cursor:default;transform:none}
.jb-domain-page .jb-course-testimonial-controls[hidden]{display:none!important}
.jb-domain-page .jb-course-testimonial-viewport{
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-behavior:smooth;
  scrollbar-width:none;
  overscroll-behavior-inline:contain;
  touch-action:pan-x pan-y;
  padding:1px;
  outline:none;
}
.jb-domain-page .jb-course-testimonial-viewport:focus-visible{
  outline:1px solid rgba(30,202,255,.65);
  outline-offset:6px;
  border-radius:6px;
}
.jb-domain-page .jb-course-testimonial-viewport::-webkit-scrollbar{display:none}
.jb-domain-page .jb-course-testimonial-track{
  display:flex;
  gap:clamp(14px,1.6vw,22px);
  width:100%;
  direction:rtl;
}
.jb-domain-page .jb-course-testimonial-card{
  flex:0 0 calc((100% - (2 * clamp(14px,1.6vw,22px))) / 3);
  width:calc((100% - (2 * clamp(14px,1.6vw,22px))) / 3);
  min-width:260px;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  box-sizing:border-box;
}
.jb-domain-page .jb-course-testimonial-card .jb-testimonial-author{
  display:flex;
  align-items:center;
  gap:14px;
}
.jb-domain-page .jb-course-testimonial-card .jb-testimonial-author>div{display:flex;flex-direction:column;gap:3px}
.jb-domain-page .jb-course-testimonial-card .jb-testimonial-author strong{margin:0;font-size:16px;font-weight:500}
.jb-domain-page .jb-course-testimonial-card .jb-testimonial-author span{margin:0;color:#A1A6B7;font-size:13px;line-height:1.45}
.jb-domain-page .jb-course-testimonial-card .jb-testimonial-avatar{
  width:48px;height:48px;border-radius:50%;padding:2px;display:inline-flex;align-items:center;justify-content:center;flex:none;
  background:conic-gradient(from 210deg,#C24AF9,#1ECAFF 40%,#312782 70%,#C24AF9);
}
.jb-domain-page .jb-course-testimonial-card .jb-avatar-fallback span{
  width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#15192c;color:#DDE0EA;
  font:500 18px/1 var(--jb-font-primary);
}

@media(max-width:980px){
  .jb-domain-page .jb-course-testimonial-card{
    flex-basis:calc((100% - clamp(14px,1.6vw,22px)) / 2);
    width:calc((100% - clamp(14px,1.6vw,22px)) / 2);
  }
}

@media(max-width:760px){
  /* About: mobile hero content must always stay above decorative/positioned
     media and the following section must not intrude into the hero. */
  .jb-about-page .jb-about-hero{
    overflow:hidden!important;
    min-height:0!important;
    padding-bottom:clamp(46px,12vw,66px)!important;
  }
  .jb-about-page .jb-about-hero .jb-container{
    position:relative;
    z-index:4;
  }
  .jb-about-page .jb-about-hero .jb-eyebrow,
  .jb-about-page .jb-about-hero h1,
  .jb-about-page .jb-about-hero .jb-general-hero-copy{
    position:relative;
    z-index:5;
  }
  .jb-about-page .jb-about-hero img,
  .jb-about-page .jb-about-hero picture,
  .jb-about-page .jb-about-hero figure{
    position:relative!important;
    inset:auto!important;
    transform:none!important;
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    margin:28px 0 0!important;
    z-index:1!important;
  }
  .jb-about-page .jb-about-hero + .jb-section{
    position:relative;
    z-index:1;
    margin-top:0!important;
  }

  /* Course accordions: legacy bidi fidelity used nowrap on desktop. On mobile
     it must wrap instead of clipping long Hebrew/English module titles. */
  .jb-course-v2-main .jb-accordion-item>button{
    height:auto!important;
    min-height:0!important;
    align-items:flex-start!important;
    overflow:visible!important;
    padding:16px!important;
  }
  .jb-course-v2-main .jb-accordion-item>button>span,
  .jb-course-v2-main .jb-accordion-copy,
  .jb-course-v2-main .jb-syl-head{
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:visible!important;
  }
  .jb-course-v2-main .jb-syl-head{
    flex-wrap:wrap!important;
    align-items:flex-start!important;
    row-gap:7px!important;
  }
  .jb-course-v2-main .jb-syl-title,
  .jb-course-v2-main .jb-accordion-copy strong,
  .jb-course-v2-main .jb-faq .jb-accordion-item>button strong{
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    overflow-wrap:anywhere;
    word-break:normal;
    line-height:1.38!important;
  }
  .jb-course-v2-main .jb-syl-head .jb-bidi-mixed{
    display:inline!important;
    width:auto!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
    line-height:inherit!important;
  }
  .jb-course-v2-main .jb-syl-head .jb-bidi-mixed>bdi{
    display:inline!important;
    white-space:normal!important;
  }
  .jb-course-v2-main .jb-syl-head small{
    flex:0 0 100%!important;
    width:100%!important;
    margin-inline-start:0!important;
    line-height:1.4!important;
  }
  .jb-course-v2-main .jb-accordion-item>button b{
    flex:none!important;
    margin-top:0!important;
    line-height:1.2!important;
  }

  .jb-domain-page .jb-course-testimonial-heading{align-items:flex-end}
  .jb-domain-page .jb-course-testimonial-controls button{width:38px;height:38px;font-size:19px}
  .jb-domain-page .jb-course-testimonial-card{
    flex-basis:100%;
    width:100%;
    min-width:100%;
  }
}


/* =========================================================
 * 0.8.45 — Footer domains + native WordPress footer menus
 * ========================================================= */
.jb-site-footer .jb-footer-domains-wrap{
  position:relative;
  display:grid;
  grid-template-columns:minmax(180px,.75fr) minmax(0,3.25fr);
  align-items:center;
  gap:clamp(20px,3vw,44px);
  padding:clamp(24px,3vw,36px) 0;
  border-bottom:1px solid rgba(255,255,255,.16);
}
.jb-site-footer .jb-footer-domains-head{display:flex;flex-direction:column;gap:5px;min-width:0}
.jb-site-footer .jb-footer-domains-head h3{margin:0;color:#fff;font-size:clamp(18px,1.2vw,22px);font-weight:650;line-height:1.25}
.jb-site-footer .jb-footer-domains-head span{color:var(--jb-muted,#A9AAB2);font-size:13px;line-height:1.5}
.jb-site-footer .jb-footer-domains-menu{
  list-style:none!important;
  margin:0!important;
  padding:0!important;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px;
}
.jb-site-footer .jb-footer-domains-menu li{list-style:none!important;margin:0!important;padding:0!important}
.jb-site-footer .jb-footer-domains-menu a{
  min-height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 15px;
  border:1px solid transparent;
  border-radius:999px;
  color:#D9DAE4;
  font-size:14px;
  line-height:1.25;
  text-decoration:none!important;
  white-space:nowrap;
  background:
    linear-gradient(rgba(5,6,20,.96),rgba(5,6,20,.96)) padding-box,
    linear-gradient(115deg,rgba(30,202,255,.72),rgba(124,87,255,.66),rgba(194,74,249,.72)) border-box;
  transition:color .22s ease,background-color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.jb-site-footer .jb-footer-domains-menu a:hover,
.jb-site-footer .jb-footer-domains-menu a:focus-visible{
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 8px 26px rgba(111,83,255,.13);
}
.jb-site-footer .jb-footer-menu,
.jb-site-footer .jb-legal-menu{list-style:none;margin-top:0;padding-inline-start:0}
.jb-site-footer .jb-footer-menu li,
.jb-site-footer .jb-legal-menu li{list-style:none;margin:0;padding:0}
@media(max-width:900px){
  .jb-site-footer .jb-footer-domains-wrap{grid-template-columns:1fr;align-items:start;gap:16px}
}
@media(max-width:680px){
  .jb-site-footer .jb-footer-domains-wrap{padding:26px 0}
  .jb-site-footer .jb-footer-domains-menu{gap:8px}
  .jb-site-footer .jb-footer-domains-menu a{min-height:36px;padding:7px 12px;font-size:13px}
}


/* ========================================================================
   0.8.50 · Contact mobile campus scene — keep building below the heading
   ======================================================================== */
@media (max-width:720px){
  .jb-contact-main-campus .jb-contact-campus-scene{padding-top:120px}
}
@media (max-width:420px){
  .jb-contact-main-campus .jb-contact-campus-scene{padding-top:105px}
}

/* 0.8.51 — one editable lead shell immediately before the canonical site footer.
 * Elementor keeps the existing JB form skin. If a future page uses another
 * WordPress form shortcode, these strictly-scoped defaults preserve the same
 * dark/rounded visual language without touching forms elsewhere on the site. */
.jb-global-footer-contact{margin:0!important}
.jb-global-footer-form form:not(.elementor-form){width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end}
.jb-global-footer-form form:not(.elementor-form) p{margin:0}
.jb-global-footer-form form:not(.elementor-form) label{display:block;color:#AEB1BF;font:500 13px/1.45 var(--jb-font-primary);margin:0 0 6px}
.jb-global-footer-form form:not(.elementor-form) input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.jb-global-footer-form form:not(.elementor-form) select,
.jb-global-footer-form form:not(.elementor-form) textarea{width:100%;min-height:46px;border:1px solid rgba(126,132,162,.45);border-radius:100px;background:rgba(255,255,255,.045);color:#fff;padding:0 18px;font:400 15px/1.4 var(--jb-font-primary);outline:0}
.jb-global-footer-form form:not(.elementor-form) textarea{min-height:92px;border-radius:18px;padding:14px 18px;resize:vertical}
.jb-global-footer-form form:not(.elementor-form) input:focus,
.jb-global-footer-form form:not(.elementor-form) select:focus,
.jb-global-footer-form form:not(.elementor-form) textarea:focus{border-color:#1ECAFF;box-shadow:0 0 0 3px rgba(30,202,255,.12)}
.jb-global-footer-form form:not(.elementor-form) input[type="submit"],
.jb-global-footer-form form:not(.elementor-form) button[type="submit"]{width:100%;min-height:46px;border:0;border-radius:100px;background:var(--jb-primary-gradient);color:#fff;font:600 15px/1 var(--jb-font-primary);cursor:pointer}
@media(max-width:760px){.jb-global-footer-form form:not(.elementor-form){grid-template-columns:1fr}}


/* ========================================================================
   0.8.54 · Course tools as visual cards + clearer direct-contact actions
   ======================================================================== */
.jb-course-v2-main .jb-tech-logo-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
  margin-top:18px;
}
.jb-course-v2-main .jb-tech-logo-pill{
  min-width:0;
  min-height:118px;
  padding:16px 12px 14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid rgba(85,91,113,.52);
  border-radius:6px;
  background:#182332;
  color:#fff;
  font-size:15px;
  font-weight:500;
  line-height:1.25;
  text-align:center;
  white-space:normal;
}
.jb-course-v2-main .jb-tool-mark,
.jb-course-v2-main .jb-tool-mark.is-favicon{
  width:52px;
  height:52px;
  border:0;
  border-radius:12px;
  background:rgba(255,255,255,.035);
  box-shadow:none;
}
.jb-course-v2-main .jb-tool-logo-img,
.jb-course-v2-main .jb-tool-favicon-img{
  width:42px!important;
  height:42px!important;
  max-width:42px!important;
  max-height:42px!important;
  object-fit:contain!important;
}
.jb-course-v2-main .jb-tool-generic,
.jb-course-v2-main .jb-tool-generic svg{
  width:36px;
  height:36px;
}
.jb-course-v2-main .jb-tool-title{
  display:block;
  width:100%;
  color:#fff;
  text-align:center;
  overflow-wrap:anywhere;
}
@media(hover:hover){
  .jb-course-v2-main .jb-tech-logo-pill:hover{
    border-color:rgba(30,202,255,.5);
    background:#1d2a3a;
    transform:translateY(-1px);
  }
}
@media(max-width:1000px){.jb-course-v2-main .jb-tech-logo-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){
  .jb-course-v2-main .jb-tech-logo-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .jb-course-v2-main .jb-tech-logo-pill{min-height:104px;padding:13px 8px 12px;font-size:13px;gap:8px}
  .jb-course-v2-main .jb-tool-mark,.jb-course-v2-main .jb-tool-mark.is-favicon{width:46px;height:46px}
  .jb-course-v2-main .jb-tool-logo-img,.jb-course-v2-main .jb-tool-favicon-img{width:37px!important;height:37px!important;max-width:37px!important;max-height:37px!important}
}

/* Side and bottom course contact actions are buttons, not loose text links. */
.jb-course-v2-main .jb-course-side-links,
.jb-course-v2-main .jb-course-contact-secondary{gap:10px}
.jb-course-v2-main .jb-course-side-links a,
.jb-course-v2-main .jb-course-contact-secondary a{
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 18px;
  border:1px solid transparent;
  border-radius:999px;
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:600;
  background:
    linear-gradient(#090b19,#090b19) padding-box,
    linear-gradient(115deg,#1ECAFF,#7C57FF 55%,#C24AF9) border-box;
  transition:transform .2s ease,box-shadow .2s ease,color .2s ease;
}
.jb-course-v2-main .jb-course-side-links a svg,
.jb-course-v2-main .jb-course-contact-secondary a svg{width:16px;height:16px;flex:none;stroke:currentColor;fill:none}
@media(hover:hover){
  .jb-course-v2-main .jb-course-side-links a:hover,
  .jb-course-v2-main .jb-course-contact-secondary a:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(91,93,253,.14);color:#fff!important}
}


/* ========================================================================
   0.8.55 · Squarer course tool cards + polished direct contact buttons
   ======================================================================== */
@media(min-width:901px){
  .jb-course-v2-main .jb-tech-logo-list{
    grid-template-columns:repeat(4,minmax(128px,150px));
    justify-content:start;
    gap:12px;
  }
}
@media(min-width:681px) and (max-width:900px){
  .jb-course-v2-main .jb-tech-logo-list{
    grid-template-columns:repeat(3,minmax(128px,150px));
    justify-content:start;
    gap:12px;
  }
}
@media(min-width:681px){
  .jb-course-v2-main .jb-tech-logo-pill{
    width:100%;
    min-height:128px;
    padding:12px 8px;
    border-radius:8px;
  }
}

/* Keep the quick call / WhatsApp actions compact, horizontal and visually clear. */
.jb-course-v2-main .jb-course-side-links{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:2px;
}
.jb-course-v2-main .jb-course-side-links a{
  width:100%;
  min-width:0;
  min-height:44px;
  padding:0 10px;
  gap:7px;
  border-radius:12px;
  font-size:13px;
  font-weight:600;
  line-height:1.15;
  white-space:nowrap;
}
.jb-course-v2-main .jb-course-side-links a.is-phone{
  background:
    linear-gradient(#101426,#101426) padding-box,
    linear-gradient(115deg,#1ECAFF,#7C57FF) border-box;
}
.jb-course-v2-main .jb-course-side-links a.is-whatsapp{
  background:
    linear-gradient(#0e1b19,#0e1b19) padding-box,
    linear-gradient(115deg,#35d07f,#70efaa) border-box;
  color:#eafff3!important;
}
.jb-course-v2-main .jb-course-side-links a svg,
.jb-course-v2-main .jb-course-contact-secondary a svg{
  width:17px;
  height:17px;
  flex:0 0 17px;
}
.jb-course-v2-main .jb-course-side-links a.is-phone svg,
.jb-course-v2-main .jb-course-contact-secondary a.is-phone svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jb-course-v2-main .jb-course-side-links a.is-whatsapp svg,
.jb-course-v2-main .jb-course-contact-secondary a.is-whatsapp svg{
  fill:currentColor!important;
  stroke:none!important;
}

/* Final course form uses the same direct-action language, but with comfortable width. */
.jb-course-v2-main .jb-course-contact-secondary{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
.jb-course-v2-main .jb-course-contact-secondary a{
  min-width:150px;
}
.jb-course-v2-main .jb-course-contact-secondary a.is-whatsapp{
  background:
    linear-gradient(#0e1b19,#0e1b19) padding-box,
    linear-gradient(115deg,#35d07f,#70efaa) border-box;
  color:#eafff3!important;
}
@media(max-width:680px){
  .jb-course-v2-main .jb-tech-logo-pill{
    min-height:112px;
    padding:12px 7px;
    border-radius:8px;
  }
  .jb-course-v2-main .jb-course-side-links{
    grid-template-columns:1fr;
  }
  .jb-course-v2-main .jb-course-contact-secondary a{
    width:100%;
    min-width:0;
  }
}


/* ========================================================================
   0.8.57 · Match sticky course-sidebar action pills to bottom-form styling
   The sticky sidebar sits outside .jb-course-v2-main, so it needs the same
   pill geometry locally to visually match the lower course form.
   ======================================================================== */
.jb-course-side .jb-course-side-links{
  width:100%;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.jb-course-side .jb-course-side-links a{
  width:100%;
  min-width:0;
  min-height:42px;
  padding:0 18px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid transparent;
  border-radius:999px;
  color:#fff!important;
  text-decoration:none!important;
  font-size:13px;
  font-weight:600;
  line-height:1.15;
  white-space:nowrap;
  background:
    linear-gradient(#090b19,#090b19) padding-box,
    linear-gradient(115deg,#1ECAFF,#7C57FF 55%,#C24AF9) border-box;
  transition:transform .2s ease,box-shadow .2s ease,color .2s ease;
}
.jb-course-side .jb-course-side-links a.is-whatsapp{
  background:
    linear-gradient(#0e1b19,#0e1b19) padding-box,
    linear-gradient(115deg,#35d07f,#70efaa) border-box;
  color:#eafff3!important;
}
.jb-course-side .jb-course-side-links a svg{
  width:17px!important;
  height:17px!important;
  max-width:17px!important;
  max-height:17px!important;
  flex:0 0 17px!important;
  display:block;
}
.jb-course-side .jb-course-side-links a.is-phone svg{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.jb-course-side .jb-course-side-links a.is-whatsapp svg{
  fill:currentColor!important;
  stroke:none!important;
}
@media(hover:hover){
  .jb-course-side .jb-course-side-links a:hover{
    transform:translateY(-1px);
    box-shadow:0 8px 22px rgba(91,93,253,.14);
    color:#fff!important;
  }
}
@media(max-width:680px){
  .jb-course-side .jb-course-side-links{grid-template-columns:1fr}
}

/* ========================================================================
   0.8.58 · Dynamic JB Lead Popup
   ======================================================================== */
body.jb-lead-popup-open{overflow:hidden!important}
.jb-lead-popup[hidden]{display:none!important}
.jb-lead-popup{
  position:fixed;inset:0;z-index:100120;display:grid;place-items:center;
  padding:clamp(16px,3vw,34px);direction:rtl;font-family:var(--jb-font-primary,'Heebo',system-ui,sans-serif)
}
.jb-lead-popup-backdrop{
  position:absolute;inset:0;background:rgba(1,2,12,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)
}
.jb-lead-popup-dialog{
  position:relative;z-index:1;width:min(920px,100%);max-height:min(760px,calc(100vh - 32px));overflow:auto;
  display:grid;grid-template-columns:minmax(0,1.06fr) minmax(330px,.94fr);
  border:1px solid transparent;border-radius:28px;
  background:linear-gradient(#060718,#060718) padding-box,linear-gradient(128deg,rgba(30,202,255,.8),rgba(124,87,255,.62) 48%,rgba(194,74,249,.75)) border-box;
  box-shadow:0 34px 110px rgba(0,0,0,.58),0 0 80px rgba(91,93,253,.12);
  color:#fff;isolation:isolate
}
.jb-lead-popup-dialog::before{
  content:'';position:absolute;inset:1px;border-radius:27px;pointer-events:none;z-index:-1;
  background:linear-gradient(135deg,rgba(255,255,255,.03),transparent 35%,rgba(30,202,255,.02))
}
.jb-lead-popup-close{
  position:absolute;z-index:10;top:14px;left:14px;width:38px;height:38px;padding:0!important;border-radius:50%;border:1px solid rgba(255,255,255,.16);
  appearance:none;-webkit-appearance:none;background:rgba(255,255,255,.07);backdrop-filter:blur(12px);color:#fff;cursor:pointer;
  display:flex;align-items:center;justify-content:center;line-height:0;transition:background .2s ease,transform .2s ease,border-color .2s ease
}
.jb-lead-popup-close svg{display:block;width:15px;height:15px;flex:none;overflow:visible;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round}
.jb-lead-popup-close:hover{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.3);transform:rotate(4deg)}
.jb-lead-popup-copy{
  position:relative;min-height:520px;padding:clamp(38px,5vw,64px);overflow:hidden;
  display:flex;flex-direction:column;justify-content:space-between;gap:32px;
  border-inline-end:1px solid rgba(255,255,255,.08);
  background:radial-gradient(circle at 15% 18%,rgba(30,202,255,.12),transparent 30%),radial-gradient(circle at 80% 86%,rgba(194,74,249,.12),transparent 34%)
}
.jb-lead-popup-copy::after{
  content:'';position:absolute;inset:0;pointer-events:none;opacity:.16;
  background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:38px 38px;mask-image:linear-gradient(to bottom,black,transparent 90%)
}
.jb-lead-popup-orb{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none;opacity:.45}
.jb-lead-popup-orb-a{width:240px;height:240px;right:-120px;top:-105px;background:radial-gradient(circle,rgba(30,202,255,.38),transparent 68%)}
.jb-lead-popup-orb-b{width:280px;height:280px;left:-150px;bottom:-145px;background:radial-gradient(circle,rgba(194,74,249,.34),transparent 68%)}
.jb-lead-popup-brand,.jb-lead-popup-copy-inner,.jb-lead-popup-copy>small{position:relative;z-index:2}
.jb-lead-popup-brand{display:flex;align-items:center;gap:10px;color:#D9DCE7;font-size:11px;font-weight:600;letter-spacing:.07em}
.jb-lead-popup-brand-mark{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff;font-size:12px;font-weight:800;letter-spacing:-.02em;
  background:linear-gradient(135deg,#1ECAFF,#7C57FF 55%,#C24AF9);box-shadow:0 8px 24px rgba(91,93,253,.24)
}
.jb-lead-popup-copy-inner h2{margin:0;max-width:12ch;color:#fff;font-size:clamp(30px,3.2vw,46px);font-weight:500;line-height:1.08;letter-spacing:-.025em}
.jb-lead-popup-copy-inner p{margin:18px 0 0;max-width:46ch;color:#B9BDCB;font-size:15px;line-height:1.75}
.jb-lead-popup-benefits{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}
.jb-lead-popup-benefits span{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:999px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);color:#D7DAE4;font-size:12px;white-space:nowrap}
.jb-lead-popup-benefits i{width:6px;height:6px;border-radius:50%;background:linear-gradient(135deg,#1ECAFF,#C24AF9);box-shadow:0 0 12px rgba(30,202,255,.45)}
.jb-lead-popup-copy>small{color:#777D91;font-size:11px;line-height:1.5}
.jb-lead-popup-form-wrap{padding:clamp(38px,4vw,56px) clamp(26px,3.4vw,42px);display:flex;flex-direction:column;justify-content:center;background:rgba(8,10,27,.74)}
.jb-lead-popup-form-head{margin-bottom:20px;display:flex;flex-direction:column;gap:5px}
.jb-lead-popup-form-head strong{font-size:22px;font-weight:500;color:#fff}
.jb-lead-popup-form-head span{font-size:13px;color:#9196A8}
.jb-lead-popup-form .elementor-form-fields-wrapper{display:flex!important;flex-direction:column!important;gap:10px!important}
.jb-lead-popup-form .elementor-field-group{width:100%!important;max-width:none!important}
.jb-lead-popup-form .elementor-field,
.jb-lead-popup-form input:not([type="checkbox"]):not([type="radio"]),
.jb-lead-popup-form select,
.jb-lead-popup-form textarea{min-height:48px!important;background:rgba(255,255,255,.045)!important;border-color:#4B5166!important}
.jb-lead-popup-form .elementor-button,.jb-lead-popup-form button[type="submit"]{min-height:50px!important;font-weight:600!important;background:linear-gradient(115deg,#1ECAFF 0%,#7C57FF 55%,#C24AF9 100%)!important;box-shadow:0 10px 30px rgba(91,93,253,.18)!important}
.jb-lead-popup-form .elementor-field-type-acceptance{margin-top:2px!important}
.jb-lead-popup-dialog.is-custom{display:block;width:min(900px,100%);padding:0;overflow:auto;background:linear-gradient(#070818,#070818) padding-box,linear-gradient(128deg,#1ECAFF,#7C57FF 55%,#C24AF9) border-box}
.jb-lead-popup-custom{position:relative;z-index:1;min-height:120px}
.jb-lead-popup-custom>*:first-child{margin-top:0}.jb-lead-popup-custom>*:last-child{margin-bottom:0}
@media(max-width:760px){
  .jb-lead-popup{padding:10px;align-items:end}
  .jb-lead-popup-dialog{grid-template-columns:1fr;width:100%;max-height:calc(100dvh - 12px);border-radius:24px}
  .jb-lead-popup-dialog::before{border-radius:23px}
  .jb-lead-popup-copy{min-height:0;padding:30px 24px 24px;gap:22px;border-inline-end:0;border-bottom:1px solid rgba(255,255,255,.08)}
  .jb-lead-popup-copy-inner h2{font-size:clamp(27px,8vw,38px);max-width:15ch;padding-left:24px}
  .jb-lead-popup-copy-inner p{font-size:14px;margin-top:12px;line-height:1.6}
  .jb-lead-popup-benefits{margin-top:18px;gap:6px}
  .jb-lead-popup-benefits span{padding:7px 9px;font-size:11px}
  .jb-lead-popup-copy>small{display:none}
  .jb-lead-popup-form-wrap{padding:24px 22px 28px}
  .jb-lead-popup-form-head{margin-bottom:14px}
  .jb-lead-popup-close{top:12px;left:12px;width:36px;height:36px}
}
@media(max-width:420px){
  .jb-lead-popup-copy{padding:26px 18px 20px}
  .jb-lead-popup-form-wrap{padding:20px 18px 24px}
  .jb-lead-popup-benefits span:nth-child(3){display:none}
}
@media(prefers-reduced-motion:reduce){.jb-lead-popup-close{transition:none!important}}


/* ========================================================================
   0.8.62 · Course lead modal heading alignment
   Keep the modal title on the exact same RTL start line as the intro copy.
   The close control is positioned independently so it cannot push the title.
   ======================================================================== */
.jb-course-modal-dialog .jb-course-modal-head{
  position:relative;
  width:100%;
  display:block;
  padding:0 0 0 48px;
  margin:0;
}
.jb-course-modal-dialog .jb-course-modal-head h3{
  display:block;
  width:100%;
  margin:0!important;
  padding:0!important;
  text-align:right;
}
.jb-course-modal-dialog .jb-course-modal-close{
  position:absolute;
  left:0;
  top:50%;
  transform:translateY(-50%)!important;
}


/* ========================================================================
   0.8.63 · Article lead modal heading alignment
   Match article CTA modal title to the intro copy RTL start line as well.
   ======================================================================== */
.jb-article-modal-dialog h3{
  width:100%;
  box-sizing:border-box;
  margin:0!important;
  padding:0 0 0 48px!important;
  text-align:right;
}


/* ========================================================================
   0.8.65 · Branded 404 page — fixed CSS serialization
   ======================================================================== */
.jb-404-page {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: calc(100vh - 150px);
  display: flex;
  align-items: center;
  padding: clamp(120px, 12vw, 175px) 0 clamp(72px, 8vw, 112px);
  background:
    radial-gradient(circle at 78% 34%, rgba(86, 74, 249, .18), transparent 34%),
    radial-gradient(circle at 20% 76%, rgba(30, 202, 255, .10), transparent 32%),
    #030410;
  color: #fff;
  font-family: var(--jb-font-primary, Assistant, Arial, sans-serif);
  box-sizing: border-box;
}
.jb-404-page * { box-sizing: border-box; }
.jb-404-ambient {
  position: absolute;
  inset: 0;
  z-index: -2;
  pointer-events: none;
}
.jb-404-ambient span {
  position: absolute;
  width: 36vw;
  height: 36vw;
  min-width: 360px;
  min-height: 360px;
  border-radius: 50%;
  filter: blur(100px);
  opacity: .13;
  background: #564AF9;
}
.jb-404-ambient span:first-child { right: -12vw; top: 3%; }
.jb-404-ambient span:last-child { left: -15vw; bottom: -18%; background: #1ECAFF; opacity: .09; }
.jb-404-grid {
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  opacity: .16;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 64px 64px;
  -webkit-mask-image: radial-gradient(circle at 50% 46%, #000 0, transparent 67%);
  mask-image: radial-gradient(circle at 50% 46%, #000 0, transparent 67%);
}
.jb-404-inner {
  position: relative;
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  display: grid;
  place-items: center;
  text-align: center;
}
.jb-404-code {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -57%);
  z-index: -1;
  font-family: var(--jb-font-latin, Arial, sans-serif);
  font-size: clamp(220px, 34vw, 520px);
  font-weight: 700;
  line-height: .72;
  letter-spacing: -.085em;
  color: transparent;
  -webkit-text-stroke: 1px rgba(153, 160, 194, .10);
  user-select: none;
  white-space: nowrap;
}
.jb-404-card {
  width: min(820px, 100%);
  padding: clamp(36px, 4.8vw, 66px);
  border: 1px solid transparent;
  border-radius: clamp(24px, 2.5vw, 36px);
  background:
    linear-gradient(rgba(8,10,28,.88), rgba(8,10,28,.88)) padding-box,
    linear-gradient(135deg, rgba(30,202,255,.52), rgba(86,74,249,.38) 48%, rgba(194,74,249,.42)) border-box;
  box-shadow: 0 34px 110px rgba(0,0,0,.38);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
}
.jb-404-status {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 22px;
  padding: 8px 14px;
  border-radius: 999px;
  border: 1px solid rgba(121,128,160,.35);
  background: rgba(255,255,255,.04);
  color: #BFC3D2;
  font-size: 13px;
  font-weight: 500;
}
.jb-404-status span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, #1ECAFF, #7C57FF);
  box-shadow: 0 0 16px rgba(30,202,255,.55);
}
.jb-404-card h1 {
  margin: 0 auto;
  max-width: 760px;
  color: #fff;
  font-family: var(--jb-font-primary, Assistant, Arial, sans-serif);
  font-size: clamp(34px, 4.1vw, 58px);
  font-weight: 500;
  line-height: 1.13;
  letter-spacing: -.02em;
}
.jb-404-card h2 {
  margin: 18px auto 0;
  max-width: 680px;
  font-family: var(--jb-font-primary, Assistant, Arial, sans-serif);
  font-size: clamp(23px, 2.6vw, 34px);
  font-weight: 400;
  line-height: 1.3;
  background: linear-gradient(266deg, #C24AF9 0%, #1ECAFF 48%, #C24AF9 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #1ECAFF;
}
.jb-404-card p {
  max-width: 650px;
  margin: 22px auto 0;
  color: #B6BAC9;
  font-size: clamp(16px, 1.4vw, 19px);
  line-height: 1.7;
}
.jb-404-actions {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 34px;
}
.jb-404-actions .jb-btn {
  min-width: 164px;
  min-height: 52px;
  padding: 0 24px;
  border-radius: 999px;
  font-family: var(--jb-font-primary, Assistant, Arial, sans-serif);
  font-size: 15px;
}
.jb-404-actions .jb-btn-primary {
  background: linear-gradient(135deg, #1ECAFF 0%, #564AF9 52%, #C24AF9 100%);
  border-color: transparent;
  box-shadow: 0 14px 34px rgba(86,74,249,.24);
}
.jb-404-actions .jb-btn-glass {
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(146,151,177,.40);
  color: #fff !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}
.jb-404-actions svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
@media (hover:hover) {
  .jb-404-actions .jb-btn:hover { transform: translateY(-2px); }
  .jb-404-actions .jb-btn-glass:hover { background: rgba(255,255,255,.085); }
}
@media (max-width: 680px) {
  .jb-404-page { min-height: calc(100vh - 110px); padding: 100px 0 64px; }
  .jb-404-grid { background-size: 44px 44px; }
  .jb-404-inner { width: min(100% - 28px, 1120px); }
  .jb-404-code { font-size: 54vw; transform: translate(-50%, -72%); }
  .jb-404-card { padding: 34px 22px; border-radius: 24px; }
  .jb-404-card h1 { font-size: clamp(31px, 9.4vw, 42px); }
  .jb-404-card h2 { font-size: clamp(22px, 6.8vw, 28px); }
  .jb-404-actions { display: grid; grid-template-columns: 1fr; width: 100%; margin-top: 28px; }
  .jb-404-actions .jb-btn { width: 100%; }
}

/* 0.8.82 · Balanced square tools; keep the final row centered at the same size. */
.jb-course-v2-main .jb-tech-logo-list{
  --jb-tool-columns:5;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:stretch;
  gap:12px;
  width:100%;
}
.jb-course-v2-main .jb-tech-logo-pill{
  box-sizing:border-box;
  flex:0 0 auto;
  width:calc((100% - (var(--jb-tool-columns) - 1) * 12px) / var(--jb-tool-columns));
  max-width:150px;
  min-width:0;
  min-height:0;
  aspect-ratio:1;
  padding:12px 8px;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  border-radius:8px;
  font-size:14px;
  line-height:1.3;
}
.jb-course-v2-main .jb-tool-mark,
.jb-course-v2-main .jb-tool-mark.is-favicon{
  flex:0 0 auto;
  width:48px;
  height:48px;
  border-radius:12px;
}
.jb-course-v2-main .jb-tool-logo-img,
.jb-course-v2-main .jb-tool-favicon-img{
  width:38px!important;height:38px!important;
  max-width:38px!important;max-height:38px!important;
}
.jb-course-v2-main .jb-tool-generic,
.jb-course-v2-main .jb-tool-generic svg{width:32px;height:32px}
.jb-course-v2-main .jb-tool-title{width:100%;min-width:0;text-align:center}
@media(max-width:900px){
  .jb-course-v2-main .jb-tech-logo-list{--jb-tool-columns:4}
}
@media(max-width:680px){
  .jb-course-v2-main .jb-tech-logo-list{--jb-tool-columns:2}
  .jb-course-v2-main .jb-tech-logo-pill{font-size:13px;gap:8px}
}

.jb-article-related .jb-article-related-grid.jb-related-carousel{
  --jb-related-gap:clamp(14px,1.6vw,22px);
  display:grid!important;
  grid-template-columns:none!important;
  grid-auto-flow:column!important;
  grid-auto-columns:calc((100% - 2 * var(--jb-related-gap)) / 3)!important;
  gap:var(--jb-related-gap);
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
  scrollbar-color:#7C57FF #182332;
  padding:2px 2px 16px;
  direction:rtl;
}
.jb-article-related-grid>article{min-width:0;scroll-snap-align:start}
.jb-article-related-grid:focus-visible{outline:2px solid #1ECAFF;outline-offset:4px}
.jb-article-related-grid::-webkit-scrollbar{height:8px}
.jb-article-related-grid::-webkit-scrollbar-track{background:#182332;border-radius:8px}
.jb-article-related-grid::-webkit-scrollbar-thumb{background:#7C57FF;border-radius:8px}
@media(max-width:900px){
  .jb-article-related .jb-article-related-grid.jb-related-carousel{grid-auto-columns:calc((100% - var(--jb-related-gap)) / 2)!important}
}
@media(max-width:620px){
  .jb-article-related .jb-article-related-grid.jb-related-carousel{grid-auto-columns:85%!important}
}
