/* =========================================================
   ALS OS ENTERPRISE 3.0.2 — ACADEMIC
   ========================================================= */

.academic-enterprise{
  max-width:1500px;
  margin:auto;
  padding:30px;
}

.academic-hero-enterprise{
  display:grid;
  grid-template-columns:minmax(0,1fr) 230px;
  gap:26px;
  align-items:stretch;
  margin-bottom:22px;
  padding:38px;
  border-radius:21px;
  background:
    radial-gradient(circle at 87% 10%,rgba(212,170,59,.20),transparent 28%),
    linear-gradient(135deg,#15582e,#28854a);
  color:#fff;
  box-shadow:0 18px 42px rgba(16,79,40,.17);
}

.academic-kicker{
  display:block;
  color:#c99725;
  font-size:10px;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.academic-hero-enterprise .academic-kicker{color:#f0d27d}

.academic-hero-copy h1{
  margin:7px 0 9px;
  font-size:43px;
}

.academic-hero-copy>p{
  max-width:760px;
  margin:0;
  line-height:1.55;
  opacity:.88;
}

.academic-hero-stats{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  max-width:670px;
  margin-top:27px;
}

.academic-hero-stats div{
  padding:15px;
  border:1px solid rgba(255,255,255,.17);
  border-radius:13px;
  background:rgba(255,255,255,.10);
}

.academic-hero-stats strong,
.academic-hero-stats span{display:block}

.academic-hero-stats strong{font-size:25px}
.academic-hero-stats span{margin-top:4px;font-size:10px;opacity:.76}

.academic-profile-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:22px;
  border:1px solid rgba(255,255,255,.20);
  border-radius:18px;
  background:rgba(255,255,255,.11);
  text-align:center;
}

.academic-profile-avatar{
  width:58px;height:58px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:11px;
  border-radius:50%;
  background:#d4aa3b;
  color:#173423;
  font-size:24px;
  font-weight:900;
}

.academic-profile-card>strong{font-size:14px}
.academic-profile-card>span{margin:4px 0 14px;font-size:10px;opacity:.76}

.academic-profile-progress{
  width:112px;height:112px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:
    radial-gradient(circle,#fff 56%,transparent 58%),
    conic-gradient(#d4aa3b calc(var(--progress) * 1%),rgba(255,255,255,.18) 0);
  color:#15582e;
}
.academic-profile-progress b{font-size:27px}
.academic-profile-progress small{margin-top:3px;font-size:9px}

.academic-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) 320px;
  gap:20px;
  align-items:start;
}

.academic-current-card,
.academic-side-card{
  padding:25px;
  border:1px solid #dce7df;
  border-radius:17px;
  background:#fff;
  box-shadow:0 10px 30px rgba(25,65,38,.07);
}

.academic-current-card{
  margin-bottom:25px;
  border-left:6px solid #176b36;
}

.academic-current-head,
.academic-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}

.academic-current-head h2{
  margin:6px 0 0;
  color:#163d26;
  font-size:25px;
}

.academic-current-status{
  padding:7px 10px;
  border-radius:999px;
  background:#fff3cf;
  color:#87620f;
  font-size:9px;
  font-weight:900;
}

.academic-current-card>p{
  color:#66746c;
  line-height:1.55;
}

.academic-progress-label{
  display:flex;
  justify-content:space-between;
  margin-top:20px;
  color:#66746c;
  font-size:11px;
}

.academic-progress-bar{
  height:11px;
  margin:8px 0 15px;
  overflow:hidden;
  border-radius:999px;
  background:#e6eee8;
}
.academic-progress-bar span{
  display:block;height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#176b36,#d4aa3b);
}

.academic-current-meta{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.academic-current-meta span{
  padding:6px 9px;
  border-radius:8px;
  background:#f3f7f4;
  color:#637168;
  font-size:10px;
  font-weight:800;
}

.academic-primary-button{
  display:inline-block;
  padding:12px 17px;
  border-radius:9px;
  background:#176b36;
  color:#fff!important;
  text-decoration:none!important;
  font-size:12px;
  font-weight:900;
}

.academic-section-head{
  margin-bottom:15px;
}

.academic-section-head h2{
  margin:5px 0;
  color:#163d26;
  font-size:29px;
}
.academic-section-head p{margin:0;color:#6d7a72}

.academic-section-summary{
  min-width:140px;
  padding:12px 15px;
  border:1px solid #dce7df;
  border-radius:13px;
  background:#fff;
  text-align:right;
}
.academic-section-summary strong,
.academic-section-summary span{display:block}
.academic-section-summary strong{color:#176b36;font-size:21px}
.academic-section-summary span{margin-top:3px;color:#75827a;font-size:9px}

.academic-module-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.academic-module-card{
  display:flex;
  min-height:245px;
  flex-direction:column;
  padding:21px;
  border:1px solid #dce7df;
  border-radius:16px;
  background:#fff;
  box-shadow:0 8px 24px rgba(25,65,38,.06);
  transition:.2s ease;
}
.academic-module-card:hover{transform:translateY(-3px)}
.academic-module-card.is-current{border:2px solid #d4aa3b}
.academic-module-card.is-complete{background:linear-gradient(145deg,#f7fbf8,#fff)}
.academic-module-card.is-locked{opacity:.57;box-shadow:none}
.academic-module-card.is-new{position:relative;overflow:hidden}
.academic-module-card.is-new:after{
  content:"";
  position:absolute;
  right:-50px;top:-50px;
  width:120px;height:120px;
  border-radius:50%;
  background:rgba(212,170,59,.10);
}

.academic-module-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.academic-module-number{
  width:43px;height:43px;
  display:flex;align-items:center;justify-content:center;
  border-radius:12px;
  background:#176b36;
  color:#fff;
  font-size:13px;
  font-weight:900;
}
.is-complete .academic-module-number{
  background:#dff4e5;color:#236638;font-size:20px;
}

.academic-module-tags{
  display:flex;gap:6px;align-items:center;
}

.academic-module-status,
.academic-tag-new{
  padding:5px 7px;
  border-radius:999px;
  font-size:8px;
  font-weight:900;
}
.academic-module-status{background:#edf5ef;color:#53665a}
.academic-tag-new{background:#fff3cf;color:#87620f}

.academic-module-label{
  margin-top:18px;
  color:#a07918;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.13em;
}

.academic-module-card h3{
  margin:7px 0 8px;
  color:#163d26;
  font-size:18px;
  line-height:1.3;
}

.academic-module-card p{
  margin:0;
  color:#6d7a72;
  font-size:12px;
  line-height:1.5;
}

.academic-module-footer{
  margin-top:auto;
  padding-top:18px;
}
.academic-module-footer a{
  color:#176b36;
  font-size:10px;
  font-weight:900;
  text-decoration:none;
}
.academic-module-footer span{
  color:#818d85;
  font-size:9px;
}

.academic-side-column{
  position:sticky;
  top:95px;
  display:grid;
  gap:15px;
}

.academic-side-card h2{
  margin:6px 0 9px;
  color:#163d26;
  font-size:20px;
}
.academic-side-card p{
  color:#6d7a72;
  font-size:12px;
  line-height:1.5;
}
.academic-side-card>a{
  display:block;
  padding:10px 13px;
  border-radius:8px;
  background:#176b36;
  color:#fff;
  text-align:center;
  text-decoration:none;
  font-size:10px;
  font-weight:900;
}

.academic-side-icon{
  width:50px;height:50px;
  display:flex;align-items:center;justify-content:center;
  margin-bottom:15px;
  border-radius:15px;
  background:#176b36;
  color:#fff;
  font-weight:900;
}

.academic-side-list{
  display:grid;gap:8px;margin-top:16px;
}
.academic-side-list div{
  display:flex;justify-content:space-between;gap:12px;
  padding:10px;
  border-radius:9px;
  background:#f4f8f5;
  font-size:10px;
}
.academic-side-list span{color:#6f7c74}
.academic-side-list strong{color:#163d26}

.academic-certificate-card>span:last-child{
  display:block;
  padding:9px 11px;
  border-radius:8px;
  background:#f3f7f4;
  color:#66746c;
  text-align:center;
  font-size:10px;
  font-weight:800;
}

/* Módulo 21 */
.module21-enterprise{
  margin:0;
  background:linear-gradient(180deg,#f8fbf9,#eef5f0);
  color:#203127;
  font-family:Arial,Helvetica,sans-serif;
}
.module21-wrap{max-width:1220px;margin:auto;padding:0 22px}
.module21-topbar{background:#0f4f28;color:#fff;box-shadow:0 6px 22px rgba(8,42,21,.18)}
.module21-topbar-inner{
  min-height:74px;
  display:flex;align-items:center;justify-content:space-between;gap:20px;
}
.module21-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}
.module21-brand span{
  width:43px;height:43px;display:flex;align-items:center;justify-content:center;
  border-radius:12px;background:#d4aa3b;color:#173423;font-size:12px;font-weight:900;
}
.module21-topbar nav{display:flex;gap:7px}
.module21-topbar nav a{padding:9px 10px;border-radius:8px;color:#fff;text-decoration:none;font-size:11px;font-weight:800}
.module21-topbar nav a:hover{background:rgba(255,255,255,.12)}
.module21-main{padding-top:32px;padding-bottom:50px}
.module21-hero{
  display:grid;grid-template-columns:1fr 230px;gap:28px;align-items:center;
  padding:37px;border-radius:20px;
  background:linear-gradient(135deg,#15582e,#28854a);color:#fff;
  box-shadow:0 18px 42px rgba(16,79,40,.17);
}
.module21-kicker{display:block;color:#f0d27d;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.module21-hero h1{margin:7px 0 11px;font-size:36px;line-height:1.17}
.module21-hero p{max-width:760px;margin:0;line-height:1.55;opacity:.87}
.module21-hero-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:20px}
.module21-hero-meta span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.12);font-size:9px;font-weight:800}
.module21-protection{
  padding:22px;border:1px solid rgba(255,255,255,.18);
  border-radius:16px;background:rgba(255,255,255,.10);text-align:center;
}
.module21-protection span{display:block;font-size:28px}
.module21-protection strong,.module21-protection small{display:block}
.module21-protection strong{margin-top:8px}
.module21-protection small{margin-top:4px;font-size:9px;opacity:.75}
.module21-heading{margin:28px 0 15px}
.module21-heading .module21-kicker{color:#a07918}
.module21-heading h2{margin:5px 0;color:#163d26;font-size:28px}
.module21-heading p{margin:0;color:#6e7a73}
.module21-stage-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.module21-stage-card{
  display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;
  padding:20px;border:1px solid #dce7df;border-radius:15px;background:#fff;
  box-shadow:0 8px 24px rgba(25,65,38,.06);
}
.module21-stage-number{
  width:45px;height:45px;display:flex;align-items:center;justify-content:center;
  border-radius:13px;background:#176b36;color:#fff;font-size:12px;font-weight:900;
}
.module21-stage-card>div:nth-child(2)>span{color:#a07918;font-size:8px;font-weight:900}
.module21-stage-card h3{margin:5px 0 7px;color:#163d26;font-size:16px}
.module21-stage-card p{margin:0;color:#6d7a72;font-size:11px;line-height:1.45}
.module21-stage-meta{display:flex;gap:6px;flex-wrap:wrap;margin-top:11px}
.module21-stage-meta span{padding:5px 7px;border-radius:999px;background:#edf5ef;color:#5c6b61;font-size:8px;font-weight:800}
.module21-stage-card>a{color:#176b36;text-decoration:none;font-size:9px;font-weight:900}
.module21-footer{padding:25px 0;background:#0f4f28;color:#fff;font-size:11px}

@media(max-width:1100px){
  .academic-layout{grid-template-columns:1fr}
  .academic-side-column{position:static;grid-template-columns:repeat(3,1fr)}
}
@media(max-width:800px){
  .academic-hero-enterprise{grid-template-columns:1fr}
  .academic-profile-card{display:grid;grid-template-columns:60px 1fr 112px;gap:12px;text-align:left}
  .academic-profile-avatar{margin:0}
  .academic-profile-card>span{margin:3px 0}
  .academic-profile-progress{grid-column:3;grid-row:1/3}
  .academic-module-grid,.module21-stage-grid{grid-template-columns:1fr}
  .academic-side-column{grid-template-columns:1fr}
  .module21-hero{grid-template-columns:1fr}
}
@media(max-width:600px){
  .academic-enterprise{padding:18px 14px 35px}
  .academic-hero-enterprise{padding:26px 21px}
  .academic-hero-copy h1{font-size:34px}
  .academic-hero-stats{grid-template-columns:1fr}
  .academic-profile-card{display:flex;text-align:center}
  .academic-section-head,.academic-current-head{flex-direction:column}
  .academic-module-grid{grid-template-columns:1fr}
  .module21-stage-card{grid-template-columns:42px 1fr}
  .module21-stage-card>a{grid-column:2}
}


/* HOTFIX 3.0.2A — carregamento isolado do Academic */
.academic-enterprise{
  display:block!important;
  width:auto!important;
  max-width:1500px!important;
  margin:0 auto!important;
  padding:30px!important;
}

.academic-hero-enterprise{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 230px!important;
}

.academic-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 320px!important;
}

.academic-module-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

.academic-hero-enterprise,
.academic-current-card,
.academic-side-card,
.academic-module-card{
  box-sizing:border-box!important;
}

.academic-primary-button,
.academic-module-footer a,
.academic-side-card>a{
  text-decoration:none!important;
}

@media(max-width:1100px){
  .academic-layout{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:800px){
  .academic-hero-enterprise{
    grid-template-columns:1fr!important;
  }

  .academic-module-grid{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:600px){
  .academic-enterprise{
    padding:18px 14px 35px!important;
  }
}
