
:root{
  --navy:#10324b;--blue:#1f6f9c;--teal:#37b8c9;--green:#2ea87b;
  --bg:#f3f8fb;--white:#fff;--text:#17384e;--muted:#5c7585;--line:#d7e5ec;
  --amber:#e5a92f;--amberbg:#fff7e7;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
button{font:inherit}
.shell{max-width:1220px;margin:auto;padding:0 22px}
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.topbar-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.identity{display:flex;align-items:center;gap:18px}.identity img{height:78px;max-width:280px;object-fit:contain}
.identity-copy strong{display:block;font-size:31px;line-height:1.05;color:var(--navy)}.identity-copy span{display:block;font-size:14px;color:var(--muted);margin-top:6px}
.topnav{display:flex;gap:18px;align-items:center}.topnav a,.topnav button{font-size:15px;font-weight:900;color:#38576a;background:none;border:0;cursor:pointer;padding:0}
.topnav .cta{background:var(--blue);color:#fff;padding:15px 22px;border-radius:14px}

.hero{padding:54px 0 42px;background:
  radial-gradient(circle at 5% 0%,rgba(55,184,201,.16),transparent 28%),
  radial-gradient(circle at 100% 10%,rgba(46,168,123,.14),transparent 24%),
  linear-gradient(180deg,#fbfdfe,#edf5f8);
}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:34px;align-items:center}
.eyebrow{display:inline-block;color:var(--green);font-size:11px;font-weight:950;letter-spacing:.13em;text-transform:uppercase;margin-bottom:10px}
h1,h2,h3{font-family:Montserrat,Inter,"Segoe UI",Arial,sans-serif;color:var(--navy);margin:0}
.hero h1{font-size:60px;line-height:.98;letter-spacing:-.045em}.hero h1 span{color:var(--blue)}
.lead{font-size:19px;color:#4e6979;max-width:670px;margin:18px 0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 17px;border-radius:12px;font-weight:950;border:0;cursor:pointer}
.btn.primary{background:linear-gradient(135deg,var(--blue),#2b83b3);color:#fff;box-shadow:0 14px 30px rgba(31,111,156,.20)}
.btn.secondary{background:#fff;color:var(--navy);border:1px solid #9fb8c6}
.hero-image{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 24px 55px rgba(16,50,75,.14)}
.hero-image img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:top center}

.warning{margin-top:22px;background:var(--amberbg);border:1px solid #ebca7c;border-left:7px solid var(--amber);border-radius:17px;padding:17px}
.warning-top{display:flex;align-items:flex-start;gap:12px}
.warning-icon{font-size:30px;line-height:1}.warning h3{font-size:22px;color:#674b09}.warning p{margin:6px 0 0;color:#695f43;font-size:14px}
.warning-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.warning-tags span{background:#fff;border:1px solid #ecd9a8;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;color:#735612}

.quick{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:26px}
.quick-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;box-shadow:0 12px 26px rgba(16,50,75,.05)}
.quick-card .ico{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eaf6f4;font-size:20px;margin-bottom:9px}
.quick-card strong{display:block;color:var(--navy);font-size:17px}.quick-card span{display:block;color:var(--muted);font-size:12px;margin-top:4px}

.section{padding:66px 0}.section.alt{background:#eaf2f6}
.section-title{text-align:center;max-width:820px;margin:0 auto 30px}.section-title span{font-size:11px;letter-spacing:.13em;font-weight:950;color:var(--green);text-transform:uppercase}.section-title h2{font-size:38px;margin-top:8px}.section-title p{margin:10px 0 0;color:var(--muted)}
.module-box{display:grid;grid-template-columns:1.15fr .85fr;gap:18px}
.module-main,.intro-side{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px;box-shadow:0 15px 32px rgba(16,50,75,.05)}
.module-main h3,.intro-side h3{font-size:28px;margin-bottom:8px}.module-main p,.intro-side p{color:var(--muted);margin-top:0}
.lesson-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:14px}
.lesson{background:#f8fbfc;border:1px solid #dde9ef;border-radius:14px;padding:14px}.lesson strong{display:block;color:var(--navy);font-size:17px}.lesson small{display:block;color:#607988;margin-top:3px}.lesson .state{margin-top:8px;color:var(--blue);font-size:11px;font-weight:900}
.intro-thumb{margin-top:12px;border-radius:16px;overflow:hidden;border:1px solid var(--line)}.intro-thumb img{width:100%}
.card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}

.footer{background:#0f2d42;color:#dbe6ec;padding:25px 0}.footer-inner{display:flex;justify-content:space-between;gap:20px;font-size:12px}

/* INTRO REAL */
.intro-modal{position:fixed;inset:0;background:rgba(5,20,32,.92);z-index:9999;display:none;align-items:center;justify-content:center;padding:18px}
.intro-modal.open{display:flex}
.intro-stage{position:relative;width:min(1180px,96vw);aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#071f31;box-shadow:0 30px 100px rgba(0,0,0,.45)}
.intro-close{position:absolute;top:14px;right:14px;z-index:20;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(0,0,0,.28);color:#fff;font-size:23px;cursor:pointer}
.intro-progress{position:absolute;left:0;right:0;bottom:0;height:5px;background:rgba(255,255,255,.15);z-index:20}
.intro-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),#66dfb8)}
.scene{position:absolute;inset:0;opacity:0;transform:scale(1.04);transition:opacity .45s ease,transform .9s ease;display:flex;align-items:center;justify-content:center;color:#fff}
.scene.active{opacity:1;transform:scale(1)}
.scene:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,31,49,.88),rgba(7,31,49,.25))}
.scene .bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.scene-content{position:relative;z-index:2;width:86%;max-width:1000px}
.scene small{display:block;font-size:13px;letter-spacing:.14em;font-weight:900;color:#8ce5cb;text-transform:uppercase;margin-bottom:10px}
.scene h2{font-size:54px;line-height:1.04;color:#fff;max-width:760px}.scene h2 em{font-style:normal;color:#5ee0b6}
.scene p{max-width:700px;font-size:20px;color:#e4f0f5}
.scene-logo{width:330px;max-width:58vw;margin-bottom:22px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.22))}
.scene.warning-scene:before{background:linear-gradient(90deg,rgba(93,54,4,.94),rgba(93,54,4,.40))}
.warning-big{display:inline-flex;align-items:center;gap:12px;background:rgba(255,186,55,.16);border:1px solid rgba(255,210,123,.6);padding:10px 15px;border-radius:14px;margin-bottom:14px;font-weight:950;color:#ffd16a}
.scene-badges{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.scene-badges span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);padding:9px 12px;border-radius:999px;font-size:13px;font-weight:900}
.scene-final .scene-content{text-align:center}.scene-final:before{background:linear-gradient(180deg,rgba(7,31,49,.35),rgba(7,31,49,.88))}
.intro-controls{position:absolute;left:16px;bottom:16px;z-index:22;display:flex;gap:9px}
.intro-controls button{background:rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.30);color:#fff;border-radius:10px;padding:8px 11px;font-weight:800;cursor:pointer}

@media(max-width:900px){.hero-grid,.module-box{grid-template-columns:1fr}.quick{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:50px}.scene h2{font-size:40px}.scene p{font-size:17px}}
@media(max-width:650px){.identity-copy{display:none}.topnav a:not(.cta),.topnav button:not(.intro-nav){display:none}.hero h1{font-size:39px}.quick,.lesson-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.scene h2{font-size:30px}.scene p{font-size:15px}.scene small{font-size:10px}.scene-content{width:88%}.intro-stage{width:100%;aspect-ratio:9/16;max-height:92vh}.scene .bg{object-position:center}.footer-inner{flex-direction:column}}


/* ===== PORTADA TCAE PRO · NAVEGACIÓN + MÁS IMPACTO ===== */
body{
  background:
    radial-gradient(circle at 10% 20%,rgba(76,184,196,.13),transparent 28%),
    radial-gradient(circle at 90% 18%,rgba(31,95,139,.10),transparent 30%),
    #f4f8fb;
}
.topbar{
  box-shadow:0 6px 24px rgba(21,52,73,.08);
}
.campus-nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.campus-nav a,.campus-nav button{
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.campus-nav .nav-soft{
  border:1px solid #d5e3ea;
  background:#fff;
  color:#153449;
  border-radius:14px;
  padding:0 18px;
  text-decoration:none;
  font-weight:900;
  font-size:14px;
}
.campus-nav .nav-exit{
  background:#7d2b2b;
  color:#fff;
  border-radius:14px;
  padding:0 18px;
  text-decoration:none;
  font-weight:900;
  font-size:14px;
}
.hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid #dbe7ec;
}
.hero:before{
  content:"";
  position:absolute;
  width:520px;height:520px;border-radius:50%;
  right:-210px;top:-240px;
  background:rgba(76,184,196,.10);
  pointer-events:none;
}
.hero-grid{
  position:relative;
  z-index:1;
}
.hero-image img{
  box-shadow:0 24px 60px rgba(21,52,73,.18);
  border:1px solid rgba(31,95,139,.14);
  transform:perspective(1100px) rotateY(-2deg);
}
.course-status-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:18px 0 16px;
}
.course-status-strip>div{
  background:#fff;
  border:1px solid #d9e7ec;
  border-radius:13px;
  padding:12px 14px;
  box-shadow:0 8px 20px rgba(21,52,73,.05);
}
.course-status-strip b{
  display:block;
  color:#153449;
  margin-bottom:4px;
  font-size:13px;
}
.course-status-strip span{
  color:#69808d;
  font-size:11px;
}
.quick-card{
  box-shadow:0 12px 28px rgba(21,52,73,.07);
  transition:transform .18s ease,box-shadow .18s ease;
}
.quick-card:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 34px rgba(21,52,73,.11);
}
.section.alt{
  background:linear-gradient(180deg,#edf5f8 0%,#f8fbfc 100%);
}
.module-box{
  box-shadow:0 16px 40px rgba(21,52,73,.08);
}
.campus-links{
  padding:34px 0 46px;
  background:#f8fbfc;
}
.campus-links-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.campus-link{
  display:flex;
  align-items:center;
  gap:12px;
  min-height:82px;
  padding:16px;
  border-radius:16px;
  border:1px solid #dbe7ec;
  background:#fff;
  text-decoration:none;
  box-shadow:0 8px 20px rgba(21,52,73,.05);
  transition:transform .18s ease,box-shadow .18s ease;
}
.campus-link:hover{
  transform:translateY(-2px);
  box-shadow:0 15px 30px rgba(21,52,73,.10);
}
.campus-link>span{font-size:27px}
.campus-link strong{
  display:block;
  color:#153449;
  font-size:14px;
  margin-bottom:4px;
}
.campus-link small{
  display:block;
  color:#6b8290;
  line-height:1.35;
}
.campus-link.main{
  border-color:#a9d8c8;
  background:linear-gradient(135deg,#eefaf5,#f7fcfb);
}
.campus-link.exit{
  border-color:#e5caca;
  background:#fff8f8;
}
@media(max-width:1050px){
  .campus-nav{justify-content:flex-start}
  .campus-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .course-status-strip{grid-template-columns:1fr}
  .campus-links-grid{grid-template-columns:1fr}
  .campus-nav .nav-soft,.campus-nav .nav-exit,.campus-nav .cta,.campus-nav .intro-nav{width:100%}
  .hero-image img{transform:none}
}

/* ===== ESTABLE FINAL TCAE 2026-09-23 ===== */
.campus-nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.campus-nav a,.campus-nav button{min-height:38px;display:inline-flex;align-items:center;justify-content:center}
.campus-nav .nav-soft{border:1px solid #d5e3ea;background:#fff;color:#153449;border-radius:10px;padding:0 12px;text-decoration:none;font-weight:800;font-size:12px}
.campus-nav .nav-exit{background:#7d2b2b;color:#fff;border-radius:10px;padding:0 13px;text-decoration:none;font-weight:900;font-size:12px}
.course-status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0}
.course-status-strip>div{background:#fff;border:1px solid #d9e7ec;border-radius:13px;padding:12px 14px;box-shadow:0 8px 20px rgba(21,52,73,.05)}
.course-status-strip b{display:block;color:#153449;margin-bottom:4px;font-size:13px}.course-status-strip span{color:#69808d;font-size:11px}
.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.module-card{background:#fff;border:1px solid #d9e6ec;border-radius:18px;padding:20px;box-shadow:0 10px 28px rgba(21,52,73,.06);display:flex;flex-direction:column;min-height:235px}
.module-card.active{border:2px solid #2d9c7a;background:linear-gradient(180deg,#fff,#f4fbf8)}
.module-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.module-no{font-size:11px;font-weight:900;letter-spacing:.08em;color:#2d9c7a}
.module-card h3{font-size:21px;color:#153449;margin:16px 0 9px}.module-card p{color:#587181;line-height:1.6;margin:0 0 16px}.module-meta{margin-top:auto;display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:12px;font-weight:800;color:#6a8190}.module-meta a{color:#1f5f8b;text-decoration:none}
.module-feature{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:20px}.module-feature-card{background:#fff;border:1px solid #d9e6ec;border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(21,52,73,.05)}.module-list-badges{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.module-list-badges span{padding:7px 10px;border-radius:999px;background:#f2f7f9;border:1px solid #dbe7ec;font-size:11px;font-weight:800;color:#577180}
.campus-links{padding:34px 0 44px;background:#f8fbfc}.campus-links-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.campus-link{display:flex;align-items:center;gap:12px;min-height:80px;padding:16px;border-radius:16px;border:1px solid #dbe7ec;background:#fff;text-decoration:none;box-shadow:0 8px 20px rgba(21,52,73,.05)}.campus-link>span{font-size:26px}.campus-link strong{display:block;color:#153449;font-size:14px;margin-bottom:4px}.campus-link small{display:block;color:#6b8290}.campus-link.main{border-color:#a9d8c8;background:#f1faf6}.campus-link.exit{border-color:#e5caca;background:#fff8f8}
.module-dashboard{padding:34px 0 64px}.module-overview{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.7fr);gap:24px;align-items:stretch;margin:26px 0 30px}.module-summary-card,.module-progress-card{background:#fff;border:1px solid #d8e5eb;border-radius:24px;padding:26px;box-shadow:0 12px 34px rgba(18,52,73,.06)}.module-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.module-progress-item{background:#f5fafc;border:1px solid #dce8ed;border-radius:16px;padding:16px}.module-progress-item strong{display:block;font-size:27px;color:#153449}.module-progress-item span{display:block;margin-top:6px;font-size:12px;color:#647d8d}.module-progress-bar{height:10px;background:#e6eef2;border-radius:999px;overflow:hidden;margin-top:16px}.module-progress-bar i{display:block;width:100%;height:100%;background:linear-gradient(90deg,#2d9c7a,#4cb8c4)}
.lesson-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.lesson-card{position:relative;display:flex;flex-direction:column;min-height:300px;background:#fff;border:1px solid #d8e5eb;border-radius:24px;padding:24px;box-shadow:0 10px 26px rgba(18,52,73,.045);overflow:hidden}.lesson-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:#2d9c7a}.lesson-card.exam:before{background:#1f5f8b}.lesson-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.lesson-number{width:64px;height:64px;flex:0 0 64px;display:grid;place-items:center;border-radius:18px;background:#eaf5f8;color:#14628e;font-size:24px;font-weight:900}.lesson-state{padding:8px 11px;border-radius:999px;background:#e8f7f1;color:#23765a;font-size:11px;font-weight:900;text-transform:uppercase}.lesson-card h3{margin:0 0 10px;font-size:23px;line-height:1.2;color:#153449}.lesson-card p{margin:0;font-size:15.5px;line-height:1.72;color:#5a7180}.lesson-tags{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 20px}.lesson-tags span{padding:7px 10px;border-radius:999px;border:1px solid #d8e6ec;background:#f8fbfc;color:#577180;font-size:11px;font-weight:800}.lesson-card-footer{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:14px}.lesson-open{min-height:46px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px;border-radius:13px;background:linear-gradient(90deg,#2d9c7a,#1f5f8b);color:#fff!important;text-decoration:none;font-size:14px;font-weight:900}.module-section-title{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:8px 0 18px}.module-section-title h2{margin:0;color:#153449;font-size:31px}.module-section-title p{margin:0;color:#647d8d;font-size:14px}
@media(max-width:950px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.module-feature,.module-overview,.lesson-card-grid{grid-template-columns:1fr}.campus-links-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.module-grid,.campus-links-grid,.course-status-strip{grid-template-columns:1fr}.campus-nav .nav-soft,.campus-nav .nav-exit,.campus-nav .cta,.campus-nav .intro-nav{width:100%}.lesson-card{min-height:auto}}

/* ===== 2026-09-25 · PORTADA MÁS VISUAL PARA MÓDULOS ===== */
.module-grid-pro{gap:22px}
.module-card-pro{padding:0;overflow:hidden;border-radius:24px;min-height:0;box-shadow:0 18px 42px rgba(21,52,73,.10);border:1px solid #d7e5ec;background:#fff;transition:transform .18s ease,box-shadow .18s ease}
.module-card-pro:hover{transform:translateY(-4px);box-shadow:0 24px 52px rgba(21,52,73,.15)}
.module-card-pro.active{border:1px solid #b7dfd0;background:#fff}
.module-card-pro .module-cover{position:relative;height:110px;padding:18px;display:flex;align-items:flex-start;justify-content:space-between;overflow:hidden}
.module-card-pro .module-status{position:relative;z-index:2;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(6px);font-size:11px;font-weight:900;color:#153449;box-shadow:0 8px 18px rgba(21,52,73,.10)}
.module-card-pro .module-icon{position:relative;z-index:2;width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.90);font-size:30px;box-shadow:0 10px 22px rgba(21,52,73,.12)}
.module-card-pro .module-wave{position:absolute;inset:auto -30px -42px auto;width:180px;height:110px;border-radius:50%;background:rgba(255,255,255,.25);filter:blur(1px)}
.cover-m1{background:linear-gradient(135deg,#daf3e8 0%,#a3dcca 52%,#5cb39c 100%)}
.cover-m2{background:linear-gradient(135deg,#ffe3e7 0%,#f7b4c0 45%,#e06c86 100%)}
.cover-m3{background:linear-gradient(135deg,#dff6f6 0%,#9ad9d6 45%,#43b6b0 100%)}
.cover-m4{background:linear-gradient(135deg,#ede7ff 0%,#c7b7f5 45%,#8d7ed8 100%)}
.cover-m5{background:linear-gradient(135deg,#fff1df 0%,#f8d4a5 45%,#ea9b54 100%)}
.cover-m6{background:linear-gradient(135deg,#e3f1ff 0%,#a8ccf1 45%,#5f94ce 100%)}
.module-card-pro .module-body{padding:20px 22px 22px}
.module-card-pro .module-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.module-card-pro .module-no{font-size:11px;font-weight:900;letter-spacing:.12em;color:#2d9c7a}
.module-card-pro .module-lessons{font-size:12px;font-weight:900;color:#638090}
.module-card-pro h3{font-size:27px;line-height:1.08;margin:6px 0 10px}
.module-card-pro p{margin:0 0 14px;line-height:1.65;color:#56707f}
.module-badges{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}
.module-badges span{padding:7px 10px;border-radius:999px;background:#f4f8fb;border:1px solid #dbe6ec;color:#5c7585;font-size:11px;font-weight:800}
.module-progress{height:10px;border-radius:999px;background:#e9f1f5;overflow:hidden;border:1px solid #d8e3e9;margin-bottom:16px}
.module-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2ea87b,#1f6f9c)}
.module-progress.empty i{background:linear-gradient(90deg,#cfdbe2,#cfdbe2)}
.module-card-pro .module-meta{margin-top:0;display:flex;align-items:center;justify-content:space-between;gap:10px}
.module-card-pro .module-enter{min-height:44px;padding:0 16px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(90deg,#2ea87b,#1f6f9c);color:#fff;font-size:13px;font-weight:900;box-shadow:0 10px 24px rgba(31,95,139,.18)}
.module-card-pro .ghost-link{padding:10px 12px;border-radius:12px;background:#f2f6f8;border:1px solid #d9e4ea;color:#7b8f9a;font-size:12px;font-weight:900}
.module-card-pro.soon{opacity:.98}
.module-card-pro.soon .module-status{background:rgba(255,255,255,.85);color:#5e6f79}
@media(max-width:950px){.module-card-pro h3{font-size:23px}.module-card-pro .module-cover{height:100px}}
@media(max-width:650px){.module-card-pro .module-head{flex-direction:column;align-items:flex-start}.module-card-pro h3{font-size:22px}}

/* ===== 2026-09-25 · PORTADA LIMPIA / ACCESO DIRECTO A MÓDULOS ===== */
.hero-clean{padding:42px 0 30px;background:linear-gradient(135deg,#f6fbfd 0%,#eef8fb 55%,#e7f5f7 100%);min-height:auto}
.hero-clean-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:28px;align-items:center}
.hero-clean-copy h1{font-size:clamp(40px,5vw,66px);line-height:.98;margin:10px 0 16px;letter-spacing:-2px}
.hero-clean-copy h1 span{color:#1977a6}.hero-clean-copy .lead{max-width:760px;font-size:18px;line-height:1.6;margin-bottom:16px}
.hero-clean-copy .chips{margin:14px 0 18px}.hero-clean-copy .actions{margin-top:10px}
.hero-clean-panel{background:#fff;border:1px solid #d6e7ed;border-radius:26px;box-shadow:0 18px 45px rgba(31,83,107,.10);padding:28px;text-align:center;display:flex;flex-direction:column;gap:7px;align-items:center}
.hero-clean-icon{width:88px;height:88px;border-radius:24px;display:grid;place-items:center;font-size:44px;background:linear-gradient(135deg,#dff5ef,#e4f2fb)}
.hero-clean-panel strong{font-size:23px;color:#0d3850}.hero-clean-panel span{font-weight:700;color:#23819f}.hero-clean-panel small{color:#6b7f8c;line-height:1.45;max-width:260px}
.section-program-clean{padding-top:38px}.clean-title{margin-bottom:26px}.clean-title h2{margin-bottom:6px}
.section-program-clean .module-grid-pro{margin-top:0}
.home-note{padding:4px 0 34px;background:#fff}.home-note-box{display:flex;gap:12px;align-items:center;padding:14px 18px;border:1px solid #ead8ab;background:#fff9e9;border-radius:14px;color:#5e5140}.home-note-box strong{white-space:nowrap}.home-note-box span{font-size:13px;line-height:1.5}
@media(max-width:900px){.hero-clean-grid{grid-template-columns:1fr}.hero-clean-panel{display:none}.hero-clean{padding:30px 0 20px}.hero-clean-copy h1{font-size:42px}.home-note-box{align-items:flex-start;flex-direction:column}}

/* ===== 2026-09-25 · CABECERA SUPERIOR MÁS GRANDE ===== */
.topbar-inner{min-height:108px;gap:28px}
.identity{gap:18px;min-width:430px}
.identity img{height:78px;max-width:280px}
.identity-copy strong{font-size:25px;line-height:1.12;letter-spacing:-.015em}
.identity-copy span{font-size:13px;margin-top:5px}
.campus-nav{gap:10px}
.campus-nav a,.campus-nav button{min-height:46px;font-size:13px}
.campus-nav .nav-soft{padding:0 16px;font-size:13px;border-radius:12px}
.campus-nav .intro-nav{padding:0 14px;border-radius:12px;font-size:13px;font-weight:900}
.campus-nav .cta{padding:0 18px;border-radius:12px;font-size:13px}
.campus-nav .nav-exit{padding:0 15px;font-size:13px;border-radius:12px}
@media(max-width:1050px){
  .topbar-inner{min-height:96px;align-items:center}
  .identity{min-width:0}
  .identity img{height:68px;max-width:230px}
  .identity-copy strong{font-size:21px}
  .campus-nav a,.campus-nav button{min-height:42px}
}
@media(max-width:760px){
  .topbar-inner{min-height:82px}
  .identity img{height:58px;max-width:205px}
}

/* ===== AJUSTE EXACTO PEDIDO POR EL USUARIO · FRANJA SUPERIOR ===== */
.topbar{
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}
.topbar .topbar-inner{
  min-height: 122px !important;
  gap: 34px !important;
}
.topbar .identity{
  gap: 22px !important;
}
.topbar .identity img{
  height: 90px !important;
  max-width: 320px !important;
  width: auto !important;
}
.topbar .identity-copy strong{
  font-size: 38px !important;
  line-height: 1.04 !important;
  letter-spacing: -.02em !important;
}
.topbar .identity-copy span{
  font-size: 16px !important;
  line-height: 1.35 !important;
  margin-top: 6px !important;
}
.topbar .campus-nav,
.topbar .topnav{
  gap: 12px !important;
}
.topbar .campus-nav a,
.topbar .campus-nav button,
.topbar .topnav a,
.topbar .topnav button{
  min-height: 50px !important;
  font-size: 14px !important;
}
.topbar .campus-nav .nav-soft,
.topbar .campus-nav .intro-nav{
  padding: 0 18px !important;
  border-radius: 14px !important;
  font-size: 14px !important;
}
.topbar .campus-nav .cta,
.topbar .topnav .cta{
  padding: 0 22px !important;
  min-height: 52px !important;
  border-radius: 14px !important;
  font-size: 15px !important;
}
.topbar .campus-nav .nav-exit{
  padding: 0 18px !important;
  min-height: 50px !important;
  border-radius: 14px !important;
  font-size: 14px !important;
}
@media (max-width: 1100px){
  .topbar .topbar-inner{min-height: 108px !important;}
  .topbar .identity img{height: 78px !important;max-width: 270px !important;}
  .topbar .identity-copy strong{font-size: 30px !important;}
  .topbar .identity-copy span{font-size: 14px !important;}
}
@media (max-width: 760px){
  .topbar .topbar-inner{min-height: 92px !important;gap: 18px !important;}
  .topbar .identity img{height: 62px !important;max-width: 210px !important;}
  .topbar .identity-copy strong{font-size: 22px !important;}
  .topbar .identity-copy span{font-size: 12px !important;}
}
