*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --orange:#e8500a;
  --orange-light:#ff6b35;
  --orange-pale:#fff3ee;
  --navy:#0e2a46;
  --navy2:#1a3a5c;
  --purple:#704fe6;
  --text:#333;
  --muted:#6c757d;
  --border:#e8e0f5;
  --bg:#f8f7fc;
  --white:#fff;
  --radius:12px;
  --shadow:0 4px 24px rgba(14,42,70,0.10);
}
a{text-decoration:none;color:inherit;}
img{max-width:100%;}


/* ── MAIN LAYOUT ── */
.main-container{max-width:1200px;margin:0 auto;padding:60px 30px 80px;}
.main-row{display:grid;grid-template-columns:1fr 320px;gap:36px;align-items:start;}

/* ── PROGRAM BANNER ── */
.program-banner{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 55%,var(--orange) 100%);
  border-radius:var(--radius);
  padding:52px 40px;
  text-align:center;
  position:relative;overflow:hidden;
  margin-bottom:30px;
}
.program-banner::before{
  content:'';position:absolute;top:-40px;right:-40px;
  width:200px;height:200px;
  background:rgba(255,107,53,0.15);border-radius:50%;
}
.program-banner::after{
  content:'';position:absolute;bottom:-50px;left:-20px;
  width:160px;height:160px;
  background:rgba(255,255,255,0.04);border-radius:50%;
}
.banner-tag{
  display:inline-block;
  background:rgba(255,107,53,0.2);
  border:1px solid rgba(255,107,53,0.4);
  color:#ff9c6e;
  padding:5px 18px;border-radius:50px;
  font-size:0.75rem;font-weight:800;
  letter-spacing:1.5px;text-transform:uppercase;
  margin-bottom:18px;position:relative;z-index:1;
}
.banner-title{
  font-size:2.2rem;font-weight:900;color:#fff;
  letter-spacing:-0.5px;line-height:1.1;
  margin-bottom:10px;position:relative;z-index:1;
}
.banner-title span{color:var(--orange-light);}
.banner-sub{color:rgba(255,255,255,0.65);font-size:0.95rem;position:relative;z-index:1;}

/* ── RATING ROW ── */
.rating-row{
  display:flex;align-items:center;gap:16px;
  margin-bottom:10px;flex-wrap:wrap;
}
.stars{color:#f59e0b;font-size:1rem;}
.rating-text{font-size:0.88rem;color:var(--muted);font-weight:600;}

/* ── DETAILS TITLE ── */
.details-title{
  font-size:1.5rem;font-weight:800;color:var(--navy);
  margin-bottom:10px;line-height:1.3;
}
.meta-row{
  display:flex;gap:22px;flex-wrap:wrap;
  margin-bottom:30px;
}
.meta-row span{
  font-size:0.85rem;font-weight:600;color:var(--muted);
  display:flex;align-items:center;gap:6px;
}
.meta-row i{color:var(--orange);}

/* ── TAB NAV ── */
.tab-nav{
  display:flex;gap:4px;
  border-bottom:2px solid #e5e7eb;
  margin-bottom:32px;
  flex-wrap:wrap;
}
.tab-btn{
  padding:12px 22px;
  background:none;border:none;border-bottom:3px solid transparent;
  margin-bottom:-2px;
  font-family:'Nunito',sans-serif;font-weight:700;font-size:0.9rem;
  color:var(--muted);cursor:pointer;
  transition:all .2s;white-space:nowrap;
}
.tab-btn:hover{color:var(--orange);}
.tab-btn.active{
  color:var(--orange);
  border-bottom-color:var(--orange);
}

/* ── TAB CONTENT ── */
.tab-pane{display:none;}
.tab-pane.active{display:block;animation:fadeUp .35s ease;}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:translateY(0);}}

/* ── SECTION LABEL ── */
.section-sm-title{
  font-size:1.0rem;font-weight:800;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--orange);
  margin-bottom:8px;
}
.section-title{
  font-size:1.9rem;font-weight:800;color:var(--navy);
  margin-bottom:14px;
}
.section-text{color:var(--muted);line-height:1.8;margin-bottom:20px; font-size: 20px;}

/* ── SKILLS GRID ── */
.skills-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:14px;margin-top:24px;
}
.skill-card{
  background:var(--white);
  border:1.5px solid var(--border);
  border-radius:var(--radius);
  padding:18px 16px;
  display:flex;align-items:flex-start;gap:14px;
  transition:border-color .2s,box-shadow .2s;
}
.skill-card:hover{border-color:var(--orange);box-shadow:0 4px 16px rgba(232,80,10,0.1);}
.skill-icon{
  width:44px;height:44px;border-radius:10px;
  background:var(--orange-pale);
  display:flex;align-items:center;justify-content:center;
  font-size:1.25rem;flex-shrink:0;
}
.skill-card strong{display:block;font-size:1.2rem;font-weight:700;color:var(--navy);margin-bottom:4px;}
.skill-card p{font-size:0.99rem;color:var(--muted);line-height:1.5;margin:0;}

/* ── CURRICULUM LIST ── */
.curr-list{display:flex;flex-direction:column;gap:10px;margin-top:20px;}
.curr-item{
  display:flex;align-items:center;gap:14px;
  background:var(--white);border:1.5px solid var(--border);
  border-radius:var(--radius);padding:14px 18px;
  transition:border-color .2s;
}
.curr-item:last-child{background:var(--navy);border-color:var(--navy);}
.curr-item:last-child .curr-title{color:#fff;}
.curr-item:last-child .curr-dur{color:rgba(255,255,255,0.55);}
.curr-item:hover{border-color:var(--orange);}
.curr-num{
  min-width:34px;height:34px;border-radius:8px;
  background:var(--orange);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:0.8rem;flex-shrink:0;
}
.curr-title{flex:1;font-weight:700;font-size:0.88rem;color:var(--navy);}
.curr-dur{font-size:0.76rem;color:var(--muted);white-space:nowrap;}

/* ── OUTCOME BOX ── */
.outcome-box{
  background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);
  border-radius:var(--radius);padding:30px;
  position:relative;overflow:hidden;margin-bottom:20px;
}
.outcome-box::before{
  content:'✦';position:absolute;top:16px;right:20px;
  font-size:3.5rem;color:rgba(255,107,53,0.12);
}
.outcome-box .section-sm-title{color:#ffd166;}
.outcome-box .section-title{color:#fff;font-size:2.1rem;}
.outcome-box p{color:rgba(255,255,255,0.75);line-height:1.8;font-size:0.92rem;}
.outcome-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px;}
.outcome-tag{
  background:rgba(255,255,255,0.1);
  border:1px solid rgba(255,255,255,0.2);
  color:rgba(255,255,255,0.85);
  padding:5px 14px;border-radius:50px;font-size:0.78rem;font-weight:700;
}
.transform-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;}
.transform-item{
  background:var(--orange-pale);
  border-left:3px solid var(--orange);
  border-bottom: 1px solid var(--orange);
  border-top: 1px solid var(--orange);
  border-right: 1px solid var(--orange);
  border-radius:8px;padding:11px 14px;
  font-size:0.83rem;font-weight:700;color:var(--navy);
  display:flex;align-items:center;gap:8px;
}
.transform-item::before{content:'✓';color:var(--orange);font-weight:900;}

/* ── SIDEBAR ── */
.sidebar-card{
  background:var(--white);
  border:1.5px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  margin-bottom:20px;
  box-shadow:var(--shadow);
}
.sidebar-thumb{
  background:linear-gradient(135deg,var(--navy) 0%,var(--orange) 100%);
  padding:36px 20px;text-align:center;
  position:relative;overflow:hidden;
}
.sidebar-thumb::before{
  content:'';position:absolute;top:-20px;right:-20px;
  width:100px;height:100px;background:rgba(255,255,255,0.07);border-radius:50%;
}
.sidebar-thumb .thumb-emoji{font-size:3rem;display:block;margin-bottom:8px;}
.sidebar-thumb h5{color:#fff;font-weight:900;font-size:1rem;margin:0 0 8px;}
.thumb-badge{
  display:inline-block;background:#ffd166;color:var(--navy);
  padding:3px 14px;border-radius:50px;font-size:0.75rem;font-weight:800;
}
.sidebar-body{padding:24px;}
.info-title{
  font-size:0.75rem;font-weight:800;letter-spacing:1.2px;
  text-transform:uppercase;color:var(--muted);margin-bottom:14px;
}
.sidebar-info-list{list-style:none;display:flex;flex-direction:column;gap:10px;border-top:1px solid #f0f0f0;padding-top:16px;margin-top:6px;}
.sidebar-info-row{
  display:flex;justify-content:space-between;align-items:center;
  font-size:0.84rem;
}
.info-key{color:var(--muted);display:flex;align-items:center;gap:8px;font-weight:600;}
.info-key i{color:var(--orange);width:16px;}
.info-val{font-weight:800;color:var(--navy);}

/* ── BUTTONS ── */
.btn-enroll{
  display:block;width:100%;padding:15px;
  background:var(--orange);color:#fff;
  border:none;border-radius:var(--radius);cursor:pointer;
  font-family:'Nunito',sans-serif;font-weight:800;font-size:0.95rem;
  text-align:center;margin-bottom:10px;
  transition:background .2s,transform .2s;
}
.btn-enroll:hover{background:var(--orange-light);transform:translateY(-2px);}
.btn-trial{
  display:block;width:100%;padding:13px;
  background:transparent;color:var(--orange);
  border:2px solid var(--orange);border-radius:var(--radius);cursor:pointer;
  font-family:'Nunito',sans-serif;font-weight:700;font-size:0.9rem;
  text-align:center;margin-bottom:20px;
  transition:background .2s;
}
.btn-trial:hover{background:var(--orange-pale);}

/* ── INCLUDES CARD ── */
.includes-card{
  background:var(--white);border:1.5px solid var(--border);
  border-radius:var(--radius);padding:20px 22px;
  box-shadow:var(--shadow);margin-bottom:20px;
}
.includes-title{
  font-weight:800;font-size:1.3rem;color:var(--navy);margin-bottom:12px;
}
.includes-list{list-style:none;display:flex;flex-direction:column;gap:8px;}
.includes-list li{
  font-size:1.2rem;font-weight:600;color:var(--text);
  display:flex;align-items:center;gap:8px;
}
.includes-list li i{color:var(--orange);}

/* ── STATS CARD ── */
.stats-card{
  background:var(--white);border:1.5px solid var(--border);
  border-radius:var(--radius);padding:20px 22px;
  box-shadow:var(--shadow);
  display:grid;grid-template-columns:1fr 1fr;gap:16px;
}
.stat-item{text-align:center;}
.stat-num{display:block;font-size:1.7rem;font-weight:900;color:var(--orange);}
.stat-label{font-size:0.74rem;font-weight:700;color:var(--muted);}



/* ── RESPONSIVE ── */
@media(max-width:992px){
  .main-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .skills-grid{grid-template-columns:1fr;}
  .nav-links{display:none;}
  .nav-mobile-btn{display:block;}
}
@media(max-width:600px){
  .banner-title{font-size:1.6rem;}
  .main-container{padding:40px 16px 60px;}
  .footer-grid{grid-template-columns:1fr;}
  .transform-grid{grid-template-columns:1fr;}
  .stats-card{grid-template-columns:1fr 1fr;}
  .tab-btn{padding:10px 14px;font-size:0.82rem;}
}