:root {
  --bg: #02152f;
  --bg-2: #082445;
  --panel: rgba(8, 27, 55, 0.82);
  --panel-2: rgba(10, 34, 68, 0.9);
  --line: rgba(81, 174, 255, 0.17);
  --text: #eaf2ff;
  --muted: #a9bdd8;
  --primary: #1fc4ff;
  --primary-2: #45a4ff;
  --success: #67f0b4;
  --shadow: 0 20px 70px rgba(0, 0, 0, 0.28);
  --radius: 24px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: 'Inter', sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at 15% 20%, rgba(0,179,255,.12), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(0,163,255,.16), transparent 26%),
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(110deg, #031126 0%, #06234a 54%, #062c51 100%);
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.container { width: min(1200px, calc(100% - 40px)); margin: 0 auto; }
.site-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(2, 12, 27, 0.88);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(86, 173, 255, 0.12);
}
.nav-shell { display:flex; align-items:center; gap:18px; padding: 18px 0; }
.brand img { height: 42px; width: auto; }
.site-nav { margin-left:auto; display:flex; align-items:center; gap: 28px; font-weight:600; color:#d5e5f8; }
.site-nav a { opacity:.95; }
.site-nav a.active, .site-nav a:hover { color: #fff; }
.site-nav i { margin-right:6px; }
.menu-toggle { display:none; margin-left:auto; background:transparent; border:1px solid var(--line); color:#fff; border-radius:12px; padding:10px 12px; font-size:1.1rem; }
.btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius: 18px; padding: 14px 22px; font-weight:800; transition: .2s ease; border:1px solid transparent; }
.btn:hover { transform: translateY(-1px); }
.btn-primary { background: linear-gradient(90deg, var(--primary) 0%, var(--primary-2) 100%); color:#001326; box-shadow: 0 12px 30px rgba(37, 174, 255, .28); }
.btn-secondary { background: rgba(255,255,255,.04); border-color: rgba(255,255,255,.12); color:#fff; }
.btn-nav { white-space: nowrap; }
.hero { padding: 74px 0 34px; }
.hero-grid { display:grid; grid-template-columns: 1.05fr .95fr; align-items: start; gap: 46px; }
.eyebrow { display:inline-flex; align-items:center; gap:10px; padding:12px 18px; border:1px solid rgba(74, 181, 255, .28); background: rgba(13, 62, 105, .35); border-radius:999px; color:#d8eeff; font-weight:700; margin-bottom:28px; }
.eyebrow .dot { width:10px; height:10px; border-radius:50%; background: var(--success); box-shadow: 0 0 0 6px rgba(103, 240, 180, .12); }
.display-title { font-size: clamp(3rem, 6vw, 5.4rem); line-height: .98; letter-spacing: -0.06em; margin: 0 0 18px; font-weight: 900; }
.display-title .gradient { background: linear-gradient(90deg, #b7f8f4 0%, #29b8ff 75%); -webkit-background-clip:text; -webkit-text-fill-color: transparent; }
.lead { font-size: 1.25rem; line-height: 1.6; color: var(--muted); max-width: 750px; }
.hero-actions { display:flex; flex-wrap: wrap; gap:14px; margin-top: 28px; }
.info-panel {
  border:1px solid rgba(73, 165, 255, .18); border-radius:32px; padding:28px;
  background: linear-gradient(180deg, rgba(12,35,72,.86) 0%, rgba(7,24,50,.78) 100%);
  box-shadow: var(--shadow);
}
.panel-cards { display:grid; grid-template-columns: repeat(3, 1fr); gap:16px; margin-bottom: 22px; }
.mini-card { text-align:center; padding:20px 16px; border-radius: 22px; border:1px solid rgba(83, 169, 255, .17); background: rgba(255,255,255,.03); }
.mini-card .icon { width:56px; height:56px; display:grid; place-items:center; border-radius:18px; margin: 0 auto 14px; color:#00d3ff; border:1px solid rgba(45, 185, 255, .22); background: rgba(0, 145, 255, .08); font-size:1.3rem; }
.mini-card h3 { margin: 0 0 8px; font-size: 1.05rem; }
.mini-card p { margin: 0; color: var(--muted); font-size: .95rem; line-height: 1.45; }
.flow { border-top:1px solid rgba(255,255,255,.08); padding-top: 22px; }
.flow h3 { margin:0 0 16px; font-size: 1.1rem; }
.step-list { display:grid; gap:14px; }
.step { display:flex; gap:14px; align-items:flex-start; padding:16px 18px; border-radius:18px; background: rgba(255,255,255,.04); border:1px solid rgba(113, 185, 255, .2); }
.step .number { font-weight:900; color:#2ed2ff; min-width: 32px; }
.step strong { display:block; margin-bottom:6px; }
.step p { margin:0; color: var(--muted); }
.section { padding: 34px 0 22px; }
.section-head { display:grid; grid-template-columns: 1fr 1fr; gap: 30px; align-items:end; margin-bottom: 24px; }
.section-kicker { color:#2cd0ff; text-transform:uppercase; letter-spacing: .18em; font-weight:800; font-size:.9rem; margin-bottom: 10px; }
.section-title { font-size: clamp(2.4rem, 4.7vw, 4.2rem); line-height: 1.02; margin:0; letter-spacing:-.06em; }
.section-text { color: var(--muted); font-size: 1.15rem; line-height:1.6; }
.card-grid { display:grid; gap:22px; }
.card-grid.cols-3 { grid-template-columns: repeat(3, 1fr); }
.service-card, .solution-card, .academy-pill {
  border-radius: 28px; background: linear-gradient(180deg, rgba(11, 37, 72, .86), rgba(6, 25, 52, .8));
  border:1px solid rgba(80, 174, 255, .16); box-shadow: var(--shadow); padding: 24px;
}
.service-card .icon-chip { width:54px; height:54px; border-radius: 18px; display:grid; place-items:center; color:#18d3ff; border:1px solid rgba(47,184,255,.22); background: rgba(0, 153, 255, .08); font-size:1.25rem; margin-bottom:18px; }
.service-card h3, .solution-card h3 { margin:0 0 10px; font-size: 1.8rem; letter-spacing:-.04em; }
.service-card p, .solution-card p { margin:0; color: var(--muted); line-height: 1.55; }
.catalog-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:22px; }
.course-card { border-radius: 28px; overflow:hidden; background: linear-gradient(180deg, rgba(10,34,69,.9), rgba(8,25,52,.88)); border:1px solid rgba(81,174,255,.18); box-shadow: var(--shadow); }
.course-thumb-wrap { aspect-ratio: 16/9; overflow:hidden; border-bottom:1px solid rgba(255,255,255,.06); }
.course-thumb { width:100%; height:100%; object-fit:cover; }
.course-card-body { padding: 22px; }
.course-meta-row { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:14px; }
.badge { display:inline-flex; align-items:center; gap:8px; border-radius:999px; padding:10px 14px; font-size: .9rem; font-weight:700; }
.badge-soft { background: rgba(26, 199, 255, .1); border:1px solid rgba(77, 185, 255, .22); color:#d7f6ff; }
.price { font-size: 2rem; font-weight: 900; color: #15d0ff; letter-spacing:-.04em; }
.course-card h3 { margin:0 0 10px; font-size: 2rem; line-height:1.05; letter-spacing:-.05em; }
.course-card p { margin:0 0 14px; color: var(--muted); line-height:1.55; }
.bullets { margin: 0; padding-left: 18px; color: var(--muted); display:grid; gap:8px; }
.bullets.small { font-size:.97rem; }
.course-actions { margin-top: 18px; display:flex; gap:12px; flex-wrap:wrap; }
.strip-card { display:grid; grid-template-columns: 1.2fr .8fr; gap: 24px; align-items:center; border-radius: 30px; padding: 28px; border:1px solid rgba(80, 174, 255, .16); background: linear-gradient(180deg, rgba(10,34,69,.86), rgba(6,25,52,.82)); box-shadow: var(--shadow); }
.strip-card h3 { margin:0 0 10px; font-size: 2.6rem; letter-spacing:-.05em; line-height:1.05; }
.strip-card p { margin:0; color: var(--muted); line-height:1.6; }
.strip-card ul { margin:18px 0 0; padding-left:18px; color: var(--muted); display:grid; gap:8px; }
.page-hero { padding: 64px 0 22px; }
.page-header { max-width: 920px; }
.page-header h1 { font-size: clamp(2.8rem, 5vw, 4.8rem); line-height:1; letter-spacing:-.06em; margin:0 0 14px; }
.page-header p { margin:0; color: var(--muted); font-size:1.2rem; line-height:1.6; }
.detail-layout { display:grid; grid-template-columns: 1.05fr .95fr; gap: 34px; align-items:start; }
.detail-media img { border-radius: 28px; border:1px solid rgba(81,174,255,.18); box-shadow: var(--shadow); }
.detail-side { display:grid; gap: 18px; }
.meta-box, .content-box, .form-box { border-radius: 24px; padding: 24px; background: linear-gradient(180deg, rgba(10,34,69,.88), rgba(7,25,52,.84)); border:1px solid rgba(80,174,255,.16); box-shadow: var(--shadow); }
.meta-list { display:grid; gap:12px; }
.meta-item { display:flex; justify-content:space-between; gap:12px; padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,.08); }
.meta-item:last-child { border-bottom:0; padding-bottom:0; }
.meta-item span:first-child { color: var(--muted); }
.split-grid { display:grid; grid-template-columns: repeat(2,1fr); gap:22px; margin-top: 24px; }
.content-box h2, .content-box h3, .meta-box h3, .form-box h2, .form-box h3 { margin:0 0 14px; letter-spacing:-.04em; }
.content-box p, .meta-box p, .form-box p { color: var(--muted); line-height:1.65; }
.notice { padding:14px 16px; border-radius:18px; background: rgba(103,240,180,.08); border:1px solid rgba(103,240,180,.2); color:#d8fff1; margin-bottom:18px; }
.alert { padding:14px 16px; border-radius:18px; background: rgba(255,102,129,.08); border:1px solid rgba(255,102,129,.24); color:#ffd9e0; margin-bottom:18px; }
.form-grid { display:grid; grid-template-columns: repeat(2,1fr); gap:16px; }
.form-group { display:grid; gap:8px; }
.form-group.full { grid-column: 1 / -1; }
label { font-weight: 700; }
input, textarea, select {
  width:100%; border-radius:16px; border:1px solid rgba(86,173,255,.18); background: rgba(255,255,255,.05); color:#fff;
  padding:14px 15px; font: inherit;
}
textarea { min-height: 130px; resize: vertical; }
input::placeholder, textarea::placeholder { color:#89a7c7; }
.info-grid { display:grid; grid-template-columns: repeat(3,1fr); gap:22px; }
.info-card { padding:24px; border-radius:24px; background: linear-gradient(180deg, rgba(10,34,69,.88), rgba(7,25,52,.84)); border:1px solid rgba(80,174,255,.16); }
.info-card i { font-size:1.3rem; color:#19d5ff; display:inline-flex; margin-bottom:10px; }
.table-of-points { display:grid; gap:16px; }
.point-card { padding:18px; border-radius:18px; background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); }
.site-footer { margin-top: 40px; border-top:1px solid rgba(255,255,255,.08); background: rgba(1, 12, 27, .56); }
.footer-grid { display:grid; grid-template-columns: 1.3fr .8fr .9fr 1fr; gap: 28px; padding: 42px 0 28px; }
.footer-logo { height:44px; width:auto; margin-bottom:18px; }
.footer-links { list-style:none; margin:0; padding:0; display:grid; gap:12px; color: var(--muted); }
.footer-links a:hover { color:#fff; }
.legal-data { margin-top:18px; display:grid; gap:8px; color: var(--muted); }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; padding: 18px 0 28px; color: var(--muted); border-top:1px solid rgba(255,255,255,.08); }
.contact-list li { display:flex; gap:10px; align-items:flex-start; }
.space-top { margin-top: 22px; }
.mt-0{margin-top:0}
@media (max-width: 1080px) {
  .hero-grid, .detail-layout, .section-head, .strip-card { grid-template-columns: 1fr; }
  .catalog-grid, .card-grid.cols-3, .info-grid, .footer-grid, .split-grid, .form-grid, .panel-cards { grid-template-columns: 1fr; }
  .site-nav { position:absolute; top:100%; left:20px; right:20px; display:none; flex-direction:column; align-items:flex-start; padding:18px; border-radius:18px; background: rgba(1, 12, 27, .96); border:1px solid rgba(80,174,255,.16); box-shadow: var(--shadow); }
  .site-nav.is-open { display:flex; }
  .menu-toggle { display:inline-flex; }
  .btn-nav { display:none; }
}
@media (max-width: 640px) {
  .container { width: min(100% - 24px, 1200px); }
  .hero { padding-top: 48px; }
  .display-title { font-size: 3rem; }
  .section-title, .page-header h1 { font-size: 2.4rem; }
  .course-card h3 { font-size: 1.7rem; }
  .footer-bottom { flex-direction:column; }
}


/* Ajustes V6: ritmo visual premium, separadores visibles y fondos diferenciados */
main {
  position: relative;
  background: #031126;
}
.hero {
  position: relative;
  padding: 82px 0 72px;
  background:
    radial-gradient(circle at 8% 12%, rgba(0, 215, 255, .13), transparent 30%),
    radial-gradient(circle at 90% 4%, rgba(69, 164, 255, .18), transparent 28%),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(135deg, rgba(2, 13, 31, .96), rgba(5, 30, 60, .92));
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}
.hero::after,
.section-lined::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .78), rgba(255,255,255,.16), transparent);
  box-shadow: 0 0 26px rgba(34, 211, 238, .28);
  pointer-events: none;
}
.hero .container,
.section-lined > .container {
  position: relative;
  z-index: 1;
}
.info-panel,
.course-card,
.service-card,
.solution-card,
.strip-card {
  backdrop-filter: blur(10px);
}
.section {
  padding: 72px 0;
}
.section-lined {
  position: relative;
  overflow: hidden;
  padding: 88px 0;
  border-top: 1px solid rgba(80, 174, 255, 0.18);
  border-bottom: 1px solid rgba(80, 174, 255, 0.12);
  isolation: isolate;
}
.section-lined::before {
  content: "";
  position: absolute;
  inset: -12px;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px);
  background-size: 58px 58px;
  opacity: .64;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.35), black 18%, black 82%, rgba(0,0,0,.45));
}
.section-academia {
  background:
    radial-gradient(circle at 18% 0%, rgba(0, 215, 255, .18), transparent 32%),
    radial-gradient(circle at 92% 18%, rgba(41, 184, 255, .15), transparent 30%),
    linear-gradient(180deg, #061d39 0%, #04162d 48%, #031126 100%);
  box-shadow: inset 0 40px 70px rgba(0, 215, 255, .045);
}
.section-services {
  background:
    radial-gradient(circle at 82% 0%, rgba(87, 111, 255, .15), transparent 34%),
    radial-gradient(circle at 12% 90%, rgba(0, 215, 255, .10), transparent 32%),
    linear-gradient(180deg, #020b1b 0%, #071a33 52%, #041126 100%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.section-solutions {
  background:
    radial-gradient(circle at 0% 24%, rgba(21, 234, 216, .12), transparent 34%),
    radial-gradient(circle at 75% 85%, rgba(21, 136, 255, .12), transparent 32%),
    linear-gradient(180deg, #04162c 0%, #021127 58%, #010a18 100%);
}
.section-academia .section-kicker,
.section-services .section-kicker,
.section-solutions .section-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 28px;
  color: #6ff7ff;
  text-shadow: 0 0 18px rgba(0, 215, 255, .25);
}
.section-academia .section-kicker::before,
.section-services .section-kicker::before,
.section-solutions .section-kicker::before {
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #15ead8;
  box-shadow: 0 0 16px rgba(21, 234, 216, .72);
}
.section-head-compact {
  margin-bottom: 34px;
}
.section-head-compact .section-kicker {
  margin-bottom: 0;
}
.catalog-grid {
  align-items: stretch;
}
.course-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  background:
    linear-gradient(180deg, rgba(11, 43, 83, .92), rgba(7, 24, 51, .92));
  border-color: rgba(93, 190, 255, .24);
}
.course-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
}
.course-actions {
  margin-top: auto;
  padding-top: 22px;
}
.course-actions .btn-primary,
.course-actions .btn-secondary {
  min-width: 148px;
}
.section-services .service-card {
  background:
    linear-gradient(180deg, rgba(12, 34, 65, .72), rgba(5, 17, 38, .86));
  border-color: rgba(80, 174, 255, .2);
}
.section-solutions .strip-card {
  background:
    radial-gradient(circle at 0% 0%, rgba(0, 215, 255, .10), transparent 38%),
    linear-gradient(135deg, rgba(10, 34, 69, .92), rgba(3, 15, 34, .88));
  border-color: rgba(86, 202, 255, .22);
}
.section-solutions .solution-card {
  background: rgba(255,255,255,.035);
  border-color: rgba(110, 207, 255, .18);
}
.page-hero-academia {
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 215, 255, .13), transparent 30%),
    linear-gradient(180deg, rgba(4, 24, 51, .86), rgba(2, 12, 27, .35));
  border-bottom: 1px solid rgba(80, 174, 255, .18);
}
.site-footer {
  margin-top: 0;
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 215, 255, .08), transparent 26%),
    linear-gradient(180deg, rgba(1, 12, 27, .96), rgba(1, 8, 18, .98));
}
@media (max-width: 640px) {
  .hero { padding: 52px 0 58px; }
  .section-lined { padding: 62px 0; }
}


/* Ajustes V7: hero más limpio, sin repetir servicios/academia del resto del home */
.hero-clean {
  padding: 88px 0 78px;
}
.hero-grid-clean {
  grid-template-columns: minmax(0, 1.04fr) minmax(360px, .72fr);
  align-items: center;
  gap: 64px;
}
.hero-copy .display-title {
  max-width: 840px;
}
.eyebrow-simple {
  padding: 10px 16px;
  margin-bottom: 24px;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-size: .82rem;
  color: #c9f5ff;
}
.hero-clean .lead {
  max-width: 720px;
  font-size: 1.18rem;
}
.hero-focus-card {
  position: relative;
  overflow: hidden;
  border-radius: 34px;
  padding: 30px;
  min-height: 470px;
  border: 1px solid rgba(84, 188, 255, .22);
  background:
    radial-gradient(circle at 16% 8%, rgba(0, 215, 255, .18), transparent 34%),
    radial-gradient(circle at 88% 18%, rgba(69, 164, 255, .16), transparent 30%),
    linear-gradient(180deg, rgba(12, 36, 72, .86), rgba(5, 18, 40, .78));
  box-shadow: var(--shadow);
  backdrop-filter: blur(12px);
}
.hero-focus-card::before {
  content: "";
  position: absolute;
  inset: -12px;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 46px 46px;
  opacity: .58;
  mask-image: radial-gradient(circle at 50% 42%, black, transparent 72%);
}
.focus-orbit {
  position: absolute;
  right: -90px;
  top: -100px;
  width: 280px;
  height: 280px;
  border-radius: 999px;
  border: 1px solid rgba(85, 215, 255, .16);
  background: radial-gradient(circle, rgba(0, 215, 255, .13), transparent 64%);
  box-shadow: 0 0 90px rgba(0, 215, 255, .14);
}
.focus-badge {
  position: relative;
  display: inline-flex;
  align-items: center;
  width: fit-content;
  border-radius: 999px;
  padding: 9px 13px;
  margin-bottom: 22px;
  color: #d8fbff;
  background: rgba(0, 215, 255, .09);
  border: 1px solid rgba(87, 210, 255, .22);
  font-size: .84rem;
  font-weight: 800;
}
.hero-focus-card h2 {
  position: relative;
  margin: 0;
  font-size: clamp(1.8rem, 2.5vw, 2.6rem);
  line-height: 1.02;
  letter-spacing: -.05em;
}
.hero-focus-card > p {
  position: relative;
  margin: 16px 0 0;
  color: var(--muted);
  line-height: 1.62;
  font-size: 1.03rem;
}
.focus-list {
  position: relative;
  display: grid;
  gap: 14px;
  margin-top: 30px;
}
.focus-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;
  padding: 15px;
  border-radius: 20px;
  border: 1px solid rgba(255,255,255,.1);
  background: rgba(255,255,255,.04);
}
.focus-item span {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #25d7ff;
  background: rgba(0, 215, 255, .08);
  border: 1px solid rgba(0, 215, 255, .18);
  font-size: 1.2rem;
}
.focus-item strong {
  display: block;
  color: #fff;
  font-size: 1rem;
  line-height: 1.25;
}
.focus-item small {
  display: block;
  margin-top: 4px;
  color: var(--muted);
  line-height: 1.4;
  font-size: .91rem;
}
@media (max-width: 1080px) {
  .hero-grid-clean { grid-template-columns: 1fr; gap: 34px; }
  .hero-focus-card { min-height: auto; }
}
@media (max-width: 640px) {
  .hero-clean { padding: 52px 0 62px; }
  .hero-focus-card { padding: 22px; border-radius: 26px; }
  .focus-item { grid-template-columns: 42px 1fr; }
  .focus-item span { width: 42px; height: 42px; }
}


/* Ajustes V8: hero más limpio, sin badge ni botones superiores */
.hero-clean .lead { margin-bottom: 0; }
.hero-copy { padding-top: 18px; }
@media (max-width: 760px) { .hero-copy { padding-top: 0; } }

/* V11: Hero construido en HTML/CSS, sin imagen hero. Estilo IA + laptop premium */
.hero-ai-web {
  position: relative;
  overflow: hidden;
  padding: 88px 0 0;
  min-height: 720px;
  background:
    radial-gradient(circle at 9% 18%, rgba(0, 215, 255, .16), transparent 30%),
    radial-gradient(circle at 84% 24%, rgba(21, 136, 255, .26), transparent 34%),
    radial-gradient(circle at 68% 82%, rgba(0, 215, 255, .10), transparent 34%),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(135deg, #020b1a 0%, #051832 45%, #061f3d 100%);
  background-size: auto, auto, auto, 58px 58px, 58px 58px, auto;
}
.hero-ai-web::before {
  content: "";
  position: absolute;
  inset: -12px;
  background:
    linear-gradient(115deg, rgba(0, 215, 255, .10), transparent 26%),
    linear-gradient(245deg, rgba(21, 136, 255, .18), transparent 34%);
  pointer-events: none;
  opacity: .82;
}
.hero-ai-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(560px, 1.18fr);
  gap: 46px;
  align-items: center;
}
.hero-ai-copy {
  max-width: 650px;
  padding: 42px 0 52px;
}
.hero-ai-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 24px;
  color: #51f0ff;
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .18em;
}
.hero-ai-kicker::before {
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 999px;
  background: #67f0b4;
  box-shadow: 0 0 0 7px rgba(103, 240, 180, .12), 0 0 22px rgba(103, 240, 180, .72);
}
.hero-ai-copy .display-title {
  max-width: 720px;
  margin-bottom: 24px;
  font-size: clamp(3.2rem, 6.1vw, 6.15rem);
  letter-spacing: -.075em;
}
.hero-ai-copy .lead {
  max-width: 620px;
  color: #c0d3ea;
  font-size: 1.16rem;
  line-height: 1.72;
}
.hero-ai-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 32px;
}
.hero-ai-stage {
  position: relative;
  min-height: 520px;
  display: grid;
  place-items: center;
  isolation: isolate;
}
.hero-ai-stage::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 22px;
  width: 82%;
  height: 145px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(21, 136, 255, .34), rgba(0, 215, 255, .10) 35%, transparent 70%);
  filter: blur(10px);
  transform: perspective(700px) rotateX(58deg);
  z-index: -1;
}
.ai-laptop {
  position: relative;
  width: min(760px, 100%);
  transform: perspective(1200px) rotateX(0deg) rotateY(-6deg) rotateZ(-1deg);
  transform-origin: center;
  filter: drop-shadow(0 34px 70px rgba(0, 0, 0, .42));
}
.ai-screen {
  position: relative;
  min-height: 346px;
  border-radius: 25px 25px 18px 18px;
  padding: 20px;
  border: 1px solid rgba(100, 196, 255, .32);
  background:
    radial-gradient(circle at 70% 0%, rgba(0, 215, 255, .14), transparent 34%),
    linear-gradient(180deg, rgba(4, 17, 39, .98), rgba(8, 28, 60, .95));
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    inset 0 -16px 46px rgba(0, 115, 255, .12),
    0 0 0 10px rgba(3, 13, 30, .72);
  overflow: hidden;
}
.ai-screen::before {
  content: "";
  position: absolute;
  inset: -12px;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .38;
  pointer-events: none;
}
.ai-screen-topbar {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
  color: #bcecff;
}
.ai-screen-topbar span {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.24);
}
.ai-screen-topbar span:nth-child(1) { background: #22d3ee; }
.ai-screen-topbar span:nth-child(2) { background: #67f0b4; }
.ai-screen-topbar span:nth-child(3) { background: #3b82f6; }
.ai-screen-topbar b {
  margin-left: auto;
  font-size: .78rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #72efff;
}
.ai-dashboard-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.2fr .76fr;
  gap: 14px;
}
.ai-chart-card,
.ai-metric-card,
.ai-status-card,
.ai-agent-card {
  position: relative;
  border-radius: 18px;
  padding: 16px;
  border: 1px solid rgba(96, 191, 255, .18);
  background: rgba(1, 12, 28, .56);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.ai-dashboard-grid .wide { grid-column: span 1; }
.ai-chart-card small,
.ai-metric-card small,
.ai-status-card small,
.ai-agent-card small {
  display: block;
  margin-bottom: 10px;
  color: #9ec4e8;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ai-line-chart {
  display: flex;
  align-items: end;
  gap: 8px;
  height: 98px;
  padding: 10px 0 2px;
}
.ai-line-chart span {
  flex: 1;
  min-width: 10px;
  border-radius: 999px 999px 4px 4px;
  background: linear-gradient(180deg, #67f0b4, #1fc4ff 55%, rgba(21, 136, 255, .28));
  box-shadow: 0 0 18px rgba(31, 196, 255, .22);
}
.ai-chart-card em {
  position: absolute;
  top: 17px;
  right: 16px;
  padding: 6px 9px;
  border-radius: 999px;
  color: #031126;
  background: #67f0b4;
  font-size: .78rem;
  font-style: normal;
  font-weight: 900;
}
.ai-metric-card strong {
  display: block;
  color: #fff;
  font-size: 3rem;
  letter-spacing: -.08em;
  line-height: 1;
}
.ai-status-card p {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin: 9px 0;
  color: #c9ddf3;
  font-size: .86rem;
}
.ai-status-card b {
  color: #67f0b4;
}
.ai-agent-card {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: center;
}
.ai-agent-card i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  color: #67f0b4;
  border-radius: 14px;
  background: rgba(103, 240, 180, .08);
  border: 1px solid rgba(103, 240, 180, .16);
  font-size: 1.35rem;
}
.ai-agent-card strong {
  display: block;
  color: #eff9ff;
  font-size: .95rem;
  line-height: 1.36;
}
.ai-keyboard {
  position: relative;
  height: 98px;
  margin: -8px auto 0;
  width: 88%;
  border-radius: 0 0 30px 30px;
  background:
    linear-gradient(90deg, transparent 0 4%, rgba(255,255,255,.08) 4% 4.4%, transparent 4.4% 100%),
    linear-gradient(180deg, rgba(16, 46, 86, .96), rgba(3, 13, 30, .98));
  border: 1px solid rgba(100, 196, 255, .18);
  transform: perspective(720px) rotateX(62deg);
  transform-origin: top center;
  box-shadow: inset 0 16px 40px rgba(255,255,255,.035), 0 30px 80px rgba(0,0,0,.34);
}
.ai-glow {
  position: absolute;
  left: 20%;
  right: 12%;
  bottom: -8px;
  height: 36px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(0, 215, 255, .75), rgba(21, 136, 255, .65), transparent);
  filter: blur(8px);
  opacity: .9;
}
.ai-card {
  position: absolute;
  z-index: 5;
  width: 172px;
  border-radius: 20px;
  padding: 16px;
  border: 1px solid rgba(81, 174, 255, .22);
  background: rgba(3, 18, 40, .78);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 50px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.045);
}
.ai-card i {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin-bottom: 14px;
  border-radius: 15px;
  color: #24d8ff;
  background: rgba(0, 215, 255, .09);
  border: 1px solid rgba(0, 215, 255, .18);
  font-size: 1.26rem;
}
.ai-card strong,
.ai-card span {
  display: block;
}
.ai-card strong {
  color: #fff;
  font-weight: 900;
  line-height: 1.16;
}
.ai-card span {
  margin-top: 8px;
  color: #b4c8e0;
  font-size: .82rem;
  line-height: 1.35;
}
.ai-card-build { left: 0; top: 26px; }
.ai-card-quality { left: -20px; bottom: 68px; }
.ai-card-academy { right: 0; top: 144px; }
.hero-ai-proof {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0;
  margin-top: 24px;
  padding: 24px 0 28px;
  border-top: 1px solid rgba(80, 174, 255, .18);
  background: linear-gradient(90deg, rgba(1, 12, 27, .2), rgba(1, 12, 27, .42), rgba(1, 12, 27, .2));
}
.hero-ai-proof > div {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;
  padding: 0 24px;
  border-right: 1px solid rgba(255,255,255,.08);
}
.hero-ai-proof > div:last-child { border-right: 0; }
.hero-ai-proof i {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #19d5ff;
  background: rgba(0, 215, 255, .08);
  border: 1px solid rgba(0, 215, 255, .16);
  font-size: 1.22rem;
}
.hero-ai-proof strong,
.hero-ai-proof span {
  display: block;
}
.hero-ai-proof strong { color: #fff; font-weight: 900; }
.hero-ai-proof span { margin-top: 3px; color: var(--muted); font-size: .92rem; line-height: 1.35; }

@media (max-width: 1180px) {
  .hero-ai-grid { grid-template-columns: 1fr; }
  .hero-ai-copy { max-width: 860px; padding-bottom: 10px; }
  .hero-ai-copy .display-title { max-width: 940px; }
  .hero-ai-stage { min-height: 560px; }
  .hero-ai-proof { grid-template-columns: repeat(2, 1fr); row-gap: 22px; }
  .hero-ai-proof > div:nth-child(2) { border-right: 0; }
}
@media (max-width: 760px) {
  .hero-ai-web { padding: 54px 0 0; min-height: auto; }
  .hero-ai-copy .display-title { font-size: clamp(2.7rem, 13vw, 4.2rem); }
  .hero-ai-copy .lead { font-size: 1.05rem; }
  .hero-ai-stage { min-height: auto; padding-top: 18px; }
  .ai-laptop { transform: none; }
  .ai-screen { min-height: 300px; padding: 15px; border-radius: 22px; }
  .ai-dashboard-grid { grid-template-columns: 1fr; }
  .ai-card { display: none; }
  .ai-keyboard { height: 68px; }
  .hero-ai-proof { grid-template-columns: 1fr; padding: 22px 0; }
  .hero-ai-proof > div { border-right: 0; padding: 0; }
}

/* V12: corrección de proporción del hero IA para evitar scroll pesado y desalineación */
.hero-ai-web {
  padding: 70px 0 0 !important;
  min-height: auto !important;
}
.hero-ai-grid {
  grid-template-columns: minmax(0, .92fr) minmax(520px, 1.08fr) !important;
  align-items: center !important;
  gap: 40px !important;
}
.hero-ai-copy {
  max-width: 760px !important;
  padding: 18px 0 44px !important;
}
.hero-ai-copy .display-title {
  max-width: 760px !important;
  font-size: clamp(3.15rem, 5.25vw, 5.35rem) !important;
  line-height: .94 !important;
  letter-spacing: -.07em !important;
  margin-bottom: 20px !important;
}
.hero-ai-copy .lead {
  max-width: 620px !important;
  font-size: 1.12rem !important;
  line-height: 1.66 !important;
}
.hero-ai-actions {
  margin-top: 26px !important;
}
.hero-ai-stage {
  min-height: 430px !important;
  align-self: center !important;
  transform: translateY(8px);
}
.hero-ai-stage::before {
  bottom: 6px !important;
  height: 118px !important;
  width: 76% !important;
}
.ai-laptop {
  width: min(660px, 100%) !important;
  transform: perspective(1200px) rotateY(-5deg) rotateZ(-1deg) !important;
}
.ai-screen {
  min-height: 300px !important;
  padding: 17px !important;
  border-radius: 24px 24px 16px 16px !important;
}
.ai-screen-topbar {
  margin-bottom: 13px !important;
}
.ai-dashboard-grid {
  gap: 12px !important;
}
.ai-chart-card,
.ai-metric-card,
.ai-status-card,
.ai-agent-card {
  padding: 13px !important;
  border-radius: 16px !important;
}
.ai-line-chart {
  height: 76px !important;
  gap: 7px !important;
}
.ai-metric-card strong {
  font-size: 2.45rem !important;
}
.ai-agent-card strong {
  font-size: .86rem !important;
}
.ai-keyboard {
  height: 76px !important;
  width: 86% !important;
}
.ai-card {
  width: 154px !important;
  padding: 13px !important;
  border-radius: 18px !important;
}
.ai-card i {
  width: 38px !important;
  height: 38px !important;
  margin-bottom: 10px !important;
}
.ai-card span {
  font-size: .78rem !important;
}
.ai-card-build { left: -18px !important; top: 18px !important; }
.ai-card-quality { left: -30px !important; bottom: 44px !important; }
.ai-card-academy { right: -22px !important; top: 118px !important; }
.hero-ai-proof {
  margin-top: 8px !important;
  padding: 20px 0 24px !important;
}
.hero-ai-proof > div {
  grid-template-columns: 44px 1fr !important;
  gap: 12px !important;
  padding: 0 22px !important;
}
.hero-ai-proof i {
  width: 44px !important;
  height: 44px !important;
}

@media (max-width: 1180px) {
  .hero-ai-grid {
    grid-template-columns: 1fr !important;
  }
  .hero-ai-copy {
    max-width: 880px !important;
  }
  .hero-ai-copy .display-title {
    max-width: 920px !important;
  }
  .hero-ai-stage {
    min-height: 500px !important;
  }
}

@media (max-width: 760px) {
  .hero-ai-web { padding: 46px 0 0 !important; }
  .hero-ai-copy { padding: 0 0 18px !important; }
  .hero-ai-copy .display-title {
    font-size: clamp(2.55rem, 12vw, 3.8rem) !important;
  }
  .hero-ai-stage {
    min-height: auto !important;
    transform: none !important;
  }
  .hero-ai-actions {
    display: none !important;
  }
  .ai-laptop {
    transform: none !important;
  }
}

/* V13: Hero más corto, creativo y sin extenderse verticalmente */
.hero-impact {
  position: relative;
  overflow: hidden;
  padding: 72px 0 66px;
  background:
    radial-gradient(circle at 10% 10%, rgba(0, 215, 255, .14), transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(21, 136, 255, .24), transparent 34%),
    radial-gradient(circle at 64% 84%, rgba(21, 234, 216, .08), transparent 32%),
    linear-gradient(90deg, rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(135deg, #020b1a 0%, #051a35 54%, #06284b 100%);
  background-size: auto, auto, auto, 58px 58px, 58px 58px, auto;
  border-bottom: 1px solid rgba(80, 174, 255, .16);
}
.hero-impact::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .72), rgba(255,255,255,.12), transparent);
  box-shadow: 0 0 26px rgba(34, 211, 238, .24);
}
.hero-impact-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(500px, 1.14fr);
  gap: 52px;
  align-items: center;
}
.hero-impact-copy {
  max-width: 720px;
}
.hero-impact-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  color: #7df7ff;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.hero-impact-kicker span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #67f0b4;
  box-shadow: 0 0 0 7px rgba(103, 240, 180, .12), 0 0 22px rgba(103, 240, 180, .38);
}
.hero-impact-copy .display-title {
  max-width: 720px;
  margin: 0;
  font-size: clamp(3rem, 5.15vw, 5.15rem);
  line-height: .96;
  letter-spacing: -.075em;
}
.hero-impact-copy .lead {
  max-width: 630px;
  margin-top: 22px;
  font-size: 1.12rem;
  line-height: 1.72;
}
.hero-impact-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}
.hero-cockpit {
  position: relative;
  min-height: 430px;
  overflow: hidden;
  border-radius: 34px;
  padding: 24px;
  background:
    radial-gradient(circle at 16% 10%, rgba(0, 215, 255, .16), transparent 32%),
    radial-gradient(circle at 92% 12%, rgba(89, 164, 255, .18), transparent 28%),
    linear-gradient(180deg, rgba(10, 34, 69, .88), rgba(5, 16, 34, .74));
  border: 1px solid rgba(84, 188, 255, .2);
  box-shadow: 0 28px 80px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05);
  isolation: isolate;
}
.hero-cockpit::before {
  content: "";
  position: absolute;
  inset: -12px;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 46px 46px;
  opacity: .45;
  mask-image: radial-gradient(circle at 52% 48%, black, transparent 76%);
  pointer-events: none;
}
.cockpit-glow {
  position: absolute;
  width: 350px;
  height: 160px;
  left: 32%;
  bottom: -70px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0, 215, 255, .26), rgba(21, 136, 255, .12) 38%, transparent 70%);
  filter: blur(8px);
  pointer-events: none;
}
.cockpit-top,
.cockpit-main,
.cockpit-flow,
.cockpit-products {
  position: relative;
  z-index: 1;
}
.cockpit-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}
.cockpit-top span {
  color: #67f0b4;
  font-size: .75rem;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.cockpit-top strong {
  color: #d8fbff;
  font-size: .9rem;
}
.cockpit-main {
  display: grid;
  grid-template-columns: 1.18fr .82fr;
  gap: 16px;
}
.cockpit-assistant,
.cockpit-metric,
.cockpit-products article {
  border: 1px solid rgba(255,255,255,.11);
  background: rgba(3, 16, 34, .62);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.cockpit-assistant {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 14px;
  align-items: center;
  min-height: 160px;
  border-radius: 24px;
  padding: 18px;
}
.assistant-icon {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: 18px;
  color: #67f0b4;
  background: rgba(103, 240, 180, .08);
  border: 1px solid rgba(103, 240, 180, .2);
  font-size: 1.35rem;
}
.cockpit-assistant small,
.cockpit-metric small {
  display: block;
  margin-bottom: 8px;
  color: #6ff7ff;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.cockpit-assistant p {
  margin: 0;
  color: #eaf2ff;
  font-size: 1.22rem;
  line-height: 1.28;
  font-weight: 900;
  letter-spacing: -.04em;
}
.cockpit-metric {
  min-height: 160px;
  border-radius: 24px;
  padding: 18px;
}
.cockpit-metric strong {
  display: block;
  color: #fff;
  font-size: 3.3rem;
  line-height: .95;
  letter-spacing: -.08em;
}
.metric-bars {
  display: flex;
  align-items: end;
  gap: 8px;
  height: 44px;
  margin-top: 18px;
}
.metric-bars span {
  flex: 1;
  min-width: 8px;
  border-radius: 999px 999px 4px 4px;
  background: linear-gradient(180deg, #67f0b4, #1fc4ff 70%, rgba(31,196,255,.18));
  box-shadow: 0 0 18px rgba(31,196,255,.18);
}
.metric-bars span:nth-child(1) { height: 40%; }
.metric-bars span:nth-child(2) { height: 62%; }
.metric-bars span:nth-child(3) { height: 48%; }
.metric-bars span:nth-child(4) { height: 82%; }
.metric-bars span:nth-child(5) { height: 68%; }
.cockpit-flow {
  display: grid;
  grid-template-columns: 1fr 34px 1fr 34px 1fr;
  align-items: center;
  gap: 10px;
  margin: 18px 0;
}
.cockpit-flow div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 48px;
  border-radius: 18px;
  border: 1px solid rgba(31, 196, 255, .16);
  background: rgba(31, 196, 255, .07);
  color: #dffbff;
  font-weight: 900;
  font-size: .92rem;
}
.cockpit-flow div i { color: #1fc4ff; }
.cockpit-flow b {
  height: 1px;
  background: linear-gradient(90deg, rgba(31,196,255,.15), rgba(31,196,255,.9), rgba(31,196,255,.15));
  box-shadow: 0 0 14px rgba(31,196,255,.25);
}
.cockpit-products {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.cockpit-products article {
  min-height: 118px;
  border-radius: 20px;
  padding: 15px;
}
.cockpit-products small {
  display: block;
  color: #1fc4ff;
  font-weight: 900;
  letter-spacing: .14em;
}
.cockpit-products strong {
  display: block;
  margin-top: 8px;
  color: #fff;
  line-height: 1.15;
}
.cockpit-products span {
  display: block;
  margin-top: 8px;
  color: var(--muted);
  font-size: .88rem;
  line-height: 1.35;
}

@media (max-width: 1080px) {
  .hero-impact-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .hero-impact-copy,
  .hero-impact-copy .display-title,
  .hero-impact-copy .lead {
    max-width: 850px;
  }
}
@media (max-width: 760px) {
  .hero-impact {
    padding: 52px 0 54px;
  }
  .hero-impact-copy .display-title {
    font-size: clamp(2.55rem, 13vw, 4.1rem);
  }
  .hero-cockpit {
    min-height: auto;
    padding: 18px;
    border-radius: 26px;
  }
  .cockpit-main,
  .cockpit-products {
    grid-template-columns: 1fr;
  }
  .cockpit-flow {
    grid-template-columns: 1fr;
  }
  .cockpit-flow b {
    height: 18px;
    width: 1px;
    margin: 0 auto;
    background: linear-gradient(180deg, rgba(31,196,255,.15), rgba(31,196,255,.9), rgba(31,196,255,.15));
  }
  .cockpit-top {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* V14: Hero con imagen de fondo, compacto e impactante */
.hero-bg-v14 {
  position: relative;
  overflow: hidden;
  min-height: 620px;
  display: flex;
  align-items: center;
  padding: 72px 0 76px;
  background-color: #031126;
  background-image:
    linear-gradient(90deg, rgba(2, 12, 27, .98) 0%, rgba(2, 12, 27, .92) 28%, rgba(2, 12, 27, .62) 52%, rgba(2, 12, 27, .30) 72%, rgba(2, 12, 27, .48) 100%),
    linear-gradient(180deg, rgba(2, 12, 27, .10) 0%, rgba(2, 12, 27, .08) 58%, rgba(2, 12, 27, .72) 100%),
    url('../img/hero-bg-v14.png');
  background-size: cover, cover, cover;
  background-position: center, center, center right;
  border-bottom: 1px solid rgba(80, 174, 255, .16);
}
.hero-bg-v14::before {
  content: "";
  position: absolute;
  inset: -12px;
  pointer-events: none;
  background:
    radial-gradient(circle at 18% 22%, rgba(0, 215, 255, .12), transparent 28%),
    radial-gradient(circle at 82% 14%, rgba(44, 156, 255, .18), transparent 35%);
  mix-blend-mode: screen;
}
.hero-bg-v14::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .72), rgba(255,255,255,.12), transparent);
  box-shadow: 0 0 26px rgba(34, 211, 238, .24);
}
.hero-bg-content {
  position: relative;
  z-index: 1;
  width: min(1200px, calc(100% - 40px));
}
.hero-bg-copy {
  width: min(620px, 100%);
}
.hero-bg-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: #7df7ff;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.hero-bg-kicker span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #67f0b4;
  box-shadow: 0 0 0 7px rgba(103, 240, 180, .12), 0 0 22px rgba(103, 240, 180, .38);
}
.hero-bg-copy .display-title {
  margin: 0;
  max-width: 650px;
  font-size: clamp(3.1rem, 5.4vw, 5.45rem);
  line-height: .95;
  letter-spacing: -.08em;
  text-wrap: balance;
}
.hero-bg-copy .lead {
  margin-top: 22px;
  max-width: 610px;
  color: #c7d9ef;
  font-size: 1.14rem;
  line-height: 1.7;
}
.hero-bg-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 28px;
}

@media (min-width: 1500px) {
  .hero-bg-v14 {
    min-height: 660px;
    background-position: center, center, center right;
  }
}

@media (max-width: 1080px) {
  .hero-bg-v14 {
    min-height: auto;
    padding: 72px 0 64px;
    background-image:
      linear-gradient(90deg, rgba(2, 12, 27, .96) 0%, rgba(2, 12, 27, .82) 58%, rgba(2, 12, 27, .70) 100%),
      linear-gradient(180deg, rgba(2, 12, 27, .08) 0%, rgba(2, 12, 27, .70) 100%),
      url('../img/hero-bg-v14.png');
    background-position: center, center, 58% center;
  }
  .hero-bg-copy {
    width: min(760px, 100%);
  }
}

@media (max-width: 640px) {
  .hero-bg-v14 {
    padding: 52px 0 54px;
    background-position: center, center, 64% center;
  }
  .hero-bg-copy .display-title {
    font-size: clamp(2.55rem, 12vw, 4rem);
  }
  .hero-bg-copy .lead {
    font-size: 1.05rem;
  }
  .hero-bg-actions .btn {
    width: 100%;
  }
}

/* V15 UX: hero más comercial, con imagen IA abstracta de fondo (sin robot ni texto) */
.hero-v15-ux {
  position: relative;
  overflow: hidden;
  min-height: 590px;
  display: flex;
  align-items: center;
  padding: 72px 0 70px;
  isolation: isolate;
  background-color: #031126;
  background-image:
    linear-gradient(90deg, rgba(2, 12, 27, .98) 0%, rgba(2, 12, 27, .92) 34%, rgba(2, 12, 27, .66) 54%, rgba(2, 12, 27, .18) 78%, rgba(2, 12, 27, .52) 100%),
    radial-gradient(circle at 18% 24%, rgba(31, 196, 255, .13), transparent 28%),
    radial-gradient(circle at 82% 18%, rgba(69, 164, 255, .20), transparent 32%),
    url('../img/hero/hero-ai-abstract-v15.png');
  background-size: cover, auto, auto, cover;
  background-position: center, center, center, center right;
  border-bottom: 1px solid rgba(80, 174, 255, .16);
}
.hero-v15-ux::before {
  content: "";
  position: absolute;
  inset: -12px;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(90deg, rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: linear-gradient(to bottom, transparent, black 12%, black 78%, transparent);
}
.hero-v15-ux::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .72), rgba(255,255,255,.14), transparent);
  box-shadow: 0 0 26px rgba(34, 211, 238, .25);
}
.hero-v15-shell {
  display: grid;
  grid-template-columns: minmax(0, 640px) minmax(320px, 430px);
  align-items: end;
  justify-content: space-between;
  gap: 48px;
  position: relative;
  z-index: 1;
}
.hero-v15-copy {
  max-width: 650px;
}
.hero-v15-kicker {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  color: #83fbff;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.hero-v15-kicker span {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #67f0b4;
  box-shadow: 0 0 0 7px rgba(103, 240, 180, .12), 0 0 22px rgba(103, 240, 180, .38);
}
.hero-v15-copy .display-title {
  margin: 0;
  max-width: 650px;
  font-size: clamp(3rem, 4.75vw, 5rem);
  line-height: .96;
  letter-spacing: -.08em;
  text-wrap: balance;
}
.hero-v15-copy .lead {
  margin-top: 20px;
  max-width: 570px;
  color: #c7d9ef;
  font-size: 1.12rem;
  line-height: 1.7;
}
.hero-v15-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 26px;
}
.hero-v15-panel {
  align-self: end;
  margin-bottom: 8px;
  border-radius: 28px;
  border: 1px solid rgba(80, 174, 255, .20);
  background: linear-gradient(180deg, rgba(4, 20, 43, .70), rgba(6, 24, 50, .58));
  box-shadow: 0 24px 70px rgba(0, 0, 0, .24), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(12px);
  padding: 18px;
}
.hero-v15-panel-title {
  color: #77faff;
  font-size: .74rem;
  font-weight: 900;
  letter-spacing: .20em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.hero-v15-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}
.hero-v15-grid article {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: center;
  border-radius: 18px;
  border: 1px solid rgba(80, 174, 255, .15);
  background: rgba(255,255,255,.045);
  padding: 12px;
}
.hero-v15-grid i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #1fc4ff;
  background: rgba(31, 196, 255, .10);
  border: 1px solid rgba(31,196,255,.20);
  font-size: 1.05rem;
  grid-row: span 2;
}
.hero-v15-grid strong {
  display: block;
  color: #fff;
  line-height: 1.1;
}
.hero-v15-grid span {
  display: block;
  color: var(--muted);
  font-size: .88rem;
  margin-top: 2px;
}

@media (max-width: 1080px) {
  .hero-v15-ux {
    min-height: auto;
    padding: 64px 0 58px;
    background-image:
      linear-gradient(90deg, rgba(2, 12, 27, .98) 0%, rgba(2, 12, 27, .90) 58%, rgba(2, 12, 27, .72) 100%),
      radial-gradient(circle at 20% 20%, rgba(31, 196, 255, .13), transparent 30%),
      radial-gradient(circle at 82% 18%, rgba(69, 164, 255, .18), transparent 32%),
      url('../img/hero/hero-ai-abstract-v15.png');
    background-position: center, center, center, 62% center;
  }
  .hero-v15-shell {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 26px;
  }
  .hero-v15-copy,
  .hero-v15-copy .display-title,
  .hero-v15-copy .lead {
    max-width: 760px;
  }
  .hero-v15-panel {
    max-width: 560px;
    margin-bottom: 0;
  }
}

@media (max-width: 640px) {
  .hero-v15-ux {
    padding: 50px 0 48px;
  }
  .hero-v15-copy .display-title {
    font-size: clamp(2.5rem, 11.5vw, 3.75rem);
  }
  .hero-v15-copy .lead {
    font-size: 1.04rem;
  }
  .hero-v15-actions .btn {
    width: 100%;
  }
  .hero-v15-panel {
    display: none;
  }
}


/* V17: hero comercial con imagen fuerte de fondo, sin panel técnico adicional */
.hero-v17-premium {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 0;
  min-height: 680px;
  display: flex;
  align-items: center;
  background:
    linear-gradient(90deg, rgba(2,12,28,.98) 0%, rgba(2,12,28,.92) 28%, rgba(2,12,28,.60) 52%, rgba(2,12,28,.18) 100%),
    url('../img/hero/hero-v17-background.png') center right / cover no-repeat;
}
.hero-v17-premium::before {
  content: "";
  position: absolute;
  inset: -12px;
  background:
    radial-gradient(circle at 13% 23%, rgba(0,215,255,.16), transparent 30%),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px);
  background-size: auto, 58px 58px, 58px 58px;
  pointer-events: none;
  z-index: -1;
}
.hero-v17-premium::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .82), rgba(255,255,255,.14), transparent);
  box-shadow: 0 0 30px rgba(34, 211, 238, .3);
  pointer-events: none;
}
.hero-v17-content {
  min-height: 680px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
}
.hero-v17-copy {
  width: min(100%, 660px);
  padding: 76px 0 68px;
}
.hero-v17-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .95rem;
  font-weight: 900;
  color: #b6ff4d;
  text-shadow: 0 0 20px rgba(182,255,77,.24);
}
.hero-v17-kicker span {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #b6ff4d;
  box-shadow: 0 0 0 7px rgba(182,255,77,.11), 0 0 18px rgba(182,255,77,.55);
}
.hero-v17-copy .display-title {
  max-width: 660px;
  margin: 0 0 22px;
  font-size: clamp(4rem, 6.8vw, 6.4rem);
  line-height: .94;
  letter-spacing: -.08em;
  text-wrap: balance;
}
.hero-v17-copy .lead {
  max-width: 620px;
  margin: 0 0 30px;
  font-size: 1.25rem;
  line-height: 1.62;
  color: #d7e8ff;
}
.hero-v17-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.hero-v17-proof {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.hero-v17-proof span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 11px 14px;
  border-radius: 999px;
  border: 1px solid rgba(96,192,255,.22);
  background: rgba(4, 18, 37, .52);
  color: #e5f6ff;
  font-size: .94rem;
  font-weight: 800;
  backdrop-filter: blur(10px);
}
.hero-v17-proof i {
  color: #16d9ff;
}
@media (max-width: 1180px) {
  .hero-v17-premium {
    background-position: 62% center;
  }
  .hero-v17-copy {
    width: min(100%, 620px);
  }
}
@media (max-width: 920px) {
  .hero-v17-premium {
    min-height: auto;
    background:
      linear-gradient(180deg, rgba(2,12,28,.88) 0%, rgba(2,12,28,.78) 100%),
      url('../img/hero/hero-v17-background.png') 62% center / cover no-repeat;
  }
  .hero-v17-content {
    min-height: auto;
  }
  .hero-v17-copy {
    width: 100%;
    padding: 58px 0 54px;
  }
  .hero-v17-copy .display-title {
    max-width: 760px;
    font-size: clamp(3rem, 10vw, 5rem);
  }
  .hero-v17-copy .lead {
    max-width: 720px;
    font-size: 1.12rem;
  }
}
@media (max-width: 640px) {
  .hero-v17-copy {
    padding: 48px 0 42px;
  }
  .hero-v17-kicker {
    font-size: .78rem;
    letter-spacing: .13em;
  }
  .hero-v17-copy .display-title {
    font-size: clamp(2.75rem, 13vw, 4rem);
  }
  .hero-v17-copy .lead {
    font-size: 1rem;
  }
  .hero-v17-proof span {
    font-size: .88rem;
  }
}


/* V18: hero reestructurado. Copy compacto + visual potente controlado */
.hero-v18-structured {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding: 76px 0 72px;
  min-height: 640px;
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 15% 18%, rgba(0, 215, 255, .14), transparent 30%),
    radial-gradient(circle at 92% 14%, rgba(32, 137, 255, .20), transparent 30%),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(135deg, #031126 0%, #061d3d 48%, #082e58 100%);
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}
.hero-v18-structured::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .82), rgba(255,255,255,.14), transparent);
  box-shadow: 0 0 30px rgba(34, 211, 238, .3);
  pointer-events: none;
}
.hero-v18-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(520px, 1.14fr);
  align-items: center;
  gap: 54px;
}
.hero-v18-copy {
  max-width: 610px;
}
.hero-v18-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .9rem;
  font-weight: 900;
  color: #b6ff4d;
  text-shadow: 0 0 20px rgba(182,255,77,.24);
}
.hero-v18-kicker span {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #b6ff4d;
  box-shadow: 0 0 0 7px rgba(182,255,77,.11), 0 0 18px rgba(182,255,77,.55);
}
.hero-v18-copy .display-title {
  margin: 0 0 20px;
  max-width: 610px;
  font-size: clamp(3.6rem, 5.6vw, 5.65rem);
  line-height: .94;
  letter-spacing: -.078em;
  text-wrap: balance;
}
.hero-v18-copy .lead {
  max-width: 580px;
  margin: 0 0 28px;
  font-size: 1.18rem;
  line-height: 1.62;
  color: #d7e8ff;
}
.hero-v18-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.hero-v18-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
.hero-v18-proof span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(96,192,255,.22);
  background: rgba(3, 16, 35, .52);
  color: #e6f6ff;
  border-radius: 999px;
  padding: 10px 13px;
  font-weight: 800;
  font-size: .9rem;
  backdrop-filter: blur(10px);
}
.hero-v18-proof i {
  color: #16d9ff;
}
.hero-v18-visual {
  position: relative;
  min-height: 410px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.hero-v18-visual::before {
  content: "";
  position: absolute;
  width: 84%;
  height: 66%;
  right: 2%;
  bottom: 4%;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(0, 193, 255, .24), rgba(0, 193, 255, 0) 68%);
  filter: blur(38px);
  pointer-events: none;
}
.hero-v18-image-wrap {
  position: relative;
  width: 100%;
  border-radius: 34px;
  padding: 14px;
  background: linear-gradient(135deg, rgba(44, 183, 255, .20), rgba(255,255,255,.04));
  border: 1px solid rgba(96, 192, 255, .18);
  box-shadow: 0 34px 90px rgba(0,0,0,.44), inset 0 1px 0 rgba(255,255,255,.06);
  transform: perspective(1200px) rotateY(-4deg) rotateX(1deg);
}
.hero-v18-image {
  width: 100%;
  border-radius: 26px;
  border: 1px solid rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}
.hero-v18-metric,
.hero-v18-stack {
  position: absolute;
  z-index: 2;
  border: 1px solid rgba(96, 192, 255, .20);
  background: rgba(3, 15, 34, .68);
  backdrop-filter: blur(14px);
  box-shadow: 0 22px 48px rgba(0,0,0,.32);
}
.hero-v18-metric {
  display: grid;
  gap: 2px;
  min-width: 128px;
  padding: 16px 18px;
  border-radius: 22px;
}
.hero-v18-metric strong {
  font-size: 2.1rem;
  line-height: 1;
  color: #fff;
  letter-spacing: -.05em;
}
.hero-v18-metric span {
  color: var(--muted);
  font-size: .88rem;
  font-weight: 700;
}
.metric-one {
  top: 8%;
  right: 3%;
}
.metric-two {
  bottom: 7%;
  left: -2%;
}
.hero-v18-stack {
  left: 10%;
  top: -5%;
  display: flex;
  gap: 8px;
  padding: 10px;
  border-radius: 999px;
}
.hero-v18-stack span {
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(0, 194, 255, .10);
  color: #dff6ff;
  font-size: .85rem;
  font-weight: 900;
}
@media (max-width: 1180px) {
  .hero-v18-grid {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .hero-v18-copy {
    max-width: 850px;
  }
  .hero-v18-copy .display-title,
  .hero-v18-copy .lead {
    max-width: 820px;
  }
  .hero-v18-visual {
    max-width: 820px;
    width: 100%;
    margin: 0 auto;
  }
}
@media (max-width: 760px) {
  .hero-v18-structured {
    padding: 52px 0 44px;
    min-height: auto;
  }
  .hero-v18-copy .display-title {
    font-size: clamp(2.8rem, 13vw, 4.2rem);
  }
  .hero-v18-copy .lead {
    font-size: 1.02rem;
  }
  .hero-v18-visual {
    min-height: auto;
  }
  .hero-v18-image-wrap {
    padding: 10px;
    border-radius: 24px;
    transform: none;
  }
  .hero-v18-image {
    border-radius: 18px;
  }
  .hero-v18-metric,
  .hero-v18-stack {
    display: none;
  }
}


/* V19: hero con imagen de fondo a todo el ancho, estructura limpia y legible */
.hero-v19-full {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 680px;
  padding: 0;
  display: flex;
  align-items: center;
  background:
    linear-gradient(90deg, rgba(2, 12, 28, .96) 0%, rgba(2, 12, 28, .88) 34%, rgba(2, 12, 28, .42) 68%, rgba(2, 12, 28, .18) 100%),
    url('../img/hero/hero-v19-full-bg.png') center center / cover no-repeat;
}
.hero-v19-full::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .82), rgba(255,255,255,.14), transparent);
  box-shadow: 0 0 30px rgba(34, 211, 238, .32);
  pointer-events: none;
}
.hero-v19-content {
  position: relative;
  z-index: 1;
  min-height: 680px;
  display: flex;
  align-items: center;
}
.hero-v19-copy {
  width: min(100%, 660px);
  padding: 72px 0 68px;
}
.hero-v19-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .92rem;
  font-weight: 900;
  color: #b6ff4d;
  text-shadow: 0 0 20px rgba(182,255,77,.24);
}
.hero-v19-kicker span {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #b6ff4d;
  box-shadow: 0 0 0 7px rgba(182,255,77,.11), 0 0 18px rgba(182,255,77,.55);
}
.hero-v19-copy .display-title {
  max-width: 660px;
  margin: 0 0 22px;
  font-size: clamp(4rem, 6.6vw, 6.2rem);
  line-height: .94;
  letter-spacing: -.08em;
  text-wrap: balance;
}
.hero-v19-copy .lead {
  max-width: 620px;
  margin: 0 0 30px;
  font-size: 1.22rem;
  line-height: 1.62;
  color: #d8eaff;
}
.hero-v19-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.hero-v19-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}
.hero-v19-proof span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 13px;
  border-radius: 999px;
  border: 1px solid rgba(96, 192, 255, .22);
  background: rgba(3, 16, 35, .58);
  color: #e6f6ff;
  font-size: .9rem;
  font-weight: 800;
  backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.hero-v19-proof i {
  color: #16d9ff;
}
@media (max-width: 1100px) {
  .hero-v19-full {
    min-height: 620px;
    background-position: 58% center;
  }
  .hero-v19-content {
    min-height: 620px;
  }
  .hero-v19-copy {
    width: min(100%, 620px);
  }
}
@media (max-width: 760px) {
  .hero-v19-full {
    min-height: auto;
    background:
      linear-gradient(180deg, rgba(2, 12, 28, .88) 0%, rgba(2, 12, 28, .78) 100%),
      url('../img/hero/hero-v19-full-bg.png') 68% center / cover no-repeat;
  }
  .hero-v19-content {
    min-height: auto;
  }
  .hero-v19-copy {
    width: 100%;
    padding: 52px 0 46px;
  }
  .hero-v19-kicker {
    font-size: .78rem;
    letter-spacing: .13em;
  }
  .hero-v19-copy .display-title {
    font-size: clamp(2.8rem, 13vw, 4.15rem);
  }
  .hero-v19-copy .lead {
    font-size: 1.02rem;
  }
  .hero-v19-proof {
    display: none;
  }
}


/* V20: hero con imagen completa dentro del hero, sin recorte por background-cover */
.hero-v20-fit {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 640px;
  padding: 0;
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 10% 14%, rgba(0, 215, 255, .13), transparent 28%),
    radial-gradient(circle at 92% 12%, rgba(69, 164, 255, .18), transparent 26%),
    linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
    linear-gradient(135deg, #031126 0%, #061d3d 52%, #082e58 100%);
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}
.hero-v20-bg {
  position: absolute;
  inset: -12px;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right center;
  opacity: .96;
  z-index: -2;
  pointer-events: none;
  filter: saturate(1.05) contrast(1.03);
}
.hero-v20-fit::before {
  content: "";
  position: absolute;
  inset: -12px;
  z-index: -1;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(2,12,28,.98) 0%, rgba(2,12,28,.94) 30%, rgba(2,12,28,.72) 48%, rgba(2,12,28,.18) 78%, rgba(2,12,28,.04) 100%),
    linear-gradient(180deg, rgba(2,12,28,.10) 0%, rgba(2,12,28,.08) 55%, rgba(2,12,28,.28) 100%);
}
.hero-v20-fit::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(66, 214, 255, .82), rgba(255,255,255,.14), transparent);
  box-shadow: 0 0 30px rgba(34, 211, 238, .32);
  pointer-events: none;
}
.hero-v20-content {
  position: relative;
  z-index: 1;
  min-height: 640px;
  display: flex;
  align-items: center;
}
.hero-v20-copy {
  width: min(100%, 640px);
  padding: 64px 0 60px;
}
.hero-v20-kicker {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 22px;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .92rem;
  font-weight: 900;
  color: #b6ff4d;
  text-shadow: 0 0 20px rgba(182,255,77,.24);
}
.hero-v20-kicker span {
  width: 12px;
  height: 12px;
  border-radius: 999px;
  background: #b6ff4d;
  box-shadow: 0 0 0 7px rgba(182,255,77,.11), 0 0 18px rgba(182,255,77,.55);
}
.hero-v20-copy .display-title {
  max-width: 640px;
  margin: 0 0 22px;
  font-size: clamp(3.65rem, 6.1vw, 5.75rem);
  line-height: .94;
  letter-spacing: -.08em;
  text-wrap: balance;
}
.hero-v20-copy .lead {
  max-width: 610px;
  margin: 0 0 28px;
  font-size: 1.18rem;
  line-height: 1.62;
  color: #d8eaff;
}
.hero-v20-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
.hero-v20-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 26px;
}
.hero-v20-proof span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 10px 13px;
  border-radius: 999px;
  border: 1px solid rgba(96, 192, 255, .22);
  background: rgba(3, 16, 35, .58);
  color: #e6f6ff;
  font-size: .9rem;
  font-weight: 800;
  backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.hero-v20-proof i {
  color: #16d9ff;
}
@media (max-width: 1100px) {
  .hero-v20-fit {
    min-height: 600px;
  }
  .hero-v20-content {
    min-height: 600px;
  }
  .hero-v20-bg {
    object-position: 62% center;
    opacity: .72;
  }
  .hero-v20-fit::before {
    background: linear-gradient(90deg, rgba(2,12,28,.96) 0%, rgba(2,12,28,.90) 45%, rgba(2,12,28,.48) 100%);
  }
}
@media (max-width: 760px) {
  .hero-v20-fit {
    min-height: auto;
  }
  .hero-v20-bg {
    object-fit: cover;
    object-position: 68% center;
    opacity: .38;
  }
  .hero-v20-content {
    min-height: auto;
  }
  .hero-v20-copy {
    width: 100%;
    padding: 52px 0 46px;
  }
  .hero-v20-kicker {
    font-size: .78rem;
    letter-spacing: .13em;
  }
  .hero-v20-copy .display-title {
    font-size: clamp(2.8rem, 13vw, 4.15rem);
  }
  .hero-v20-copy .lead {
    font-size: 1.02rem;
  }
  .hero-v20-proof {
    display: none;
  }
}


/* V21: cards visibles del hero */
.hero-v21-card-grid {
  width: min(100%, 620px);
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.hero-v21-card {
  position: relative;
  min-height: 104px;
  display: grid;
  grid-template-columns: 46px 1fr;
  column-gap: 13px;
  align-items: center;
  padding: 18px 18px;
  border-radius: 22px;
  border: 1px solid rgba(100, 205, 255, .34);
  background:
    linear-gradient(135deg, rgba(7, 35, 68, .88), rgba(2, 15, 32, .80));
  box-shadow:
    0 20px 46px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(16px);
  color: #eef8ff;
  overflow: hidden;
}
.hero-v21-card::before {
  content: "";
  position: absolute;
  inset: -12px;
  background: radial-gradient(circle at 12% 18%, rgba(0, 215, 255, .22), transparent 34%);
  pointer-events: none;
  opacity: .85;
}
.hero-v21-card:hover {
  transform: translateY(-2px);
  border-color: rgba(122, 224, 255, .56);
  box-shadow:
    0 24px 54px rgba(0,0,0,.42),
    0 0 34px rgba(0, 191, 255, .12),
    inset 0 1px 0 rgba(255,255,255,.10);
}
.hero-v21-card-primary {
  background:
    linear-gradient(135deg, rgba(31, 196, 255, .96), rgba(69, 164, 255, .92));
  color: #001326;
  border-color: rgba(181, 240, 255, .70);
}
.hero-v21-card-primary::before {
  background: radial-gradient(circle at 10% 16%, rgba(255,255,255,.36), transparent 34%);
}
.hero-v21-icon {
  position: relative;
  z-index: 1;
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  background: rgba(0, 195, 255, .12);
  border: 1px solid rgba(0, 215, 255, .28);
  color: #19d5ff;
  font-size: 1.1rem;
}
.hero-v21-card-primary .hero-v21-icon {
  background: rgba(0, 19, 38, .12);
  border-color: rgba(0, 19, 38, .18);
  color: #001326;
}
.hero-v21-card strong,
.hero-v21-card small {
  position: relative;
  z-index: 1;
  grid-column: 2;
}
.hero-v21-card strong {
  font-size: 1.02rem;
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: -.02em;
}
.hero-v21-card small {
  margin-top: 4px;
  color: rgba(220, 239, 255, .78);
  line-height: 1.35;
  font-weight: 600;
}
.hero-v21-card-primary small {
  color: rgba(0, 19, 38, .72);
}
.hero-v21-arrow {
  position: absolute;
  z-index: 1;
  right: 16px;
  bottom: 15px;
  opacity: .9;
}
@media (max-width: 760px) {
  .hero-v21-card-grid {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-top: 24px;
  }
  .hero-v21-card {
    min-height: 92px;
    padding: 15px;
  }
}


/* V22: hero con imagen limpia sin cards quemados + beneficios HTML visibles */
.hero-v20-fit {
  min-height: 690px;
}
.hero-v20-bg {
  content: url('../img/hero/hero-v22-clean-bg.png');
  object-fit: contain;
  object-position: right center;
  opacity: 1;
}
.hero-v20-fit::before {
  background:
    linear-gradient(90deg, rgba(2,12,28,.98) 0%, rgba(2,12,28,.94) 31%, rgba(2,12,28,.76) 48%, rgba(2,12,28,.22) 78%, rgba(2,12,28,.05) 100%),
    linear-gradient(180deg, rgba(2,12,28,.08) 0%, rgba(2,12,28,.06) 56%, rgba(2,12,28,.24) 100%);
}
.hero-v20-content {
  min-height: 690px;
}
.hero-v20-copy {
  width: min(100%, 660px);
  padding: 62px 0 54px;
}
.hero-v20-copy .display-title {
  max-width: 660px;
  font-size: clamp(3.55rem, 6vw, 5.65rem);
}
.hero-v20-copy .lead {
  max-width: 620px;
}
.hero-v22-actions {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 28px;
}
.hero-v22-benefits {
  width: min(100%, 900px);
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid rgba(96, 192, 255, .18);
  border-radius: 26px;
  background: linear-gradient(135deg, rgba(3, 16, 35, .64), rgba(5, 29, 58, .38));
  box-shadow: 0 24px 54px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter: blur(16px);
  overflow: hidden;
}
.hero-v22-benefit {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 14px;
  align-items: center;
  padding: 18px 18px;
  border-right: 1px solid rgba(255,255,255,.09);
}
.hero-v22-benefit:last-child {
  border-right: 0;
}
.hero-v22-benefit-icon {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  border: 1px solid rgba(88, 197, 255, .28);
  background: rgba(0, 191, 255, .08);
  color: #17d7ff;
  font-size: 1.2rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.hero-v22-benefit strong {
  display: block;
  color: #ffffff;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: -.02em;
  margin-bottom: 5px;
}
.hero-v22-benefit small {
  display: block;
  color: rgba(216, 234, 255, .78);
  font-weight: 600;
  line-height: 1.35;
}
.hero-v21-card-grid,
.hero-v20-proof {
  display: none !important;
}
@media (max-width: 1180px) {
  .hero-v22-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 760px;
  }
  .hero-v22-benefit:nth-child(2) {
    border-right: 0;
  }
  .hero-v22-benefit:nth-child(1),
  .hero-v22-benefit:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,.09);
  }
}
@media (max-width: 760px) {
  .hero-v20-fit {
    min-height: auto;
  }
  .hero-v20-content {
    min-height: auto;
  }
  .hero-v20-bg {
    object-fit: cover;
    object-position: 68% center;
    opacity: .40;
  }
  .hero-v22-benefits {
    grid-template-columns: 1fr;
    margin-top: 24px;
  }
  .hero-v22-benefit,
  .hero-v22-benefit:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.09);
  }
  .hero-v22-benefit:last-child {
    border-bottom: 0;
  }
}


/* V27: Hero full image, sin márgenes laterales ni marco */
.hero-v27-image-full {
  position: relative;
  overflow: hidden;
  padding: 0;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}
.hero-v27-image {
  width: 100%;
  height: auto;
  display: block;
}
@media (max-width: 760px) {
  .hero-v27-image {
    min-height: 520px;
    object-fit: cover;
    object-position: 30% center;
  }
}


/* V28: Hero responsive con imagen específica para monitor, laptop, tablet y móvil */
.hero-v28-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}
.hero-v28-picture,
.hero-v28-image {
  display: block;
  width: 100%;
}
.hero-v28-image {
  height: auto;
  margin: 0;
}
@media (min-width: 1537px) {
  .hero-v28-image {
    width: 100%;
  }
}
@media (max-width: 1536px) {
  .hero-v28-image {
    width: 100%;
    height: auto;
  }
}
@media (max-width: 640px) {
  .hero-v28-image {
    width: 100%;
    height: auto;
  }
}


/* V29: Hero responsive final con último diseño en escritorio grande */
.hero-v29-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}
.hero-v29-picture,
.hero-v29-image {
  display: block;
  width: 100%;
}
.hero-v29-image {
  height: auto;
  margin: 0;
}
@media (max-width: 640px) {
  .hero-v29-image {
    width: 100%;
    height: auto;
  }
}


/* V30: Hero responsive corregido para escritorio grande */
.hero-v30-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}
.hero-v30-picture,
.hero-v30-image {
  display: block;
  width: 100%;
}
.hero-v30-image {
  width: 100%;
  height: auto;
  margin: 0;
}
@media (min-width: 1537px) {
  .hero-v30-image {
    width: 100%;
    height: auto;
  }
}
@media (max-width: 640px) {
  .hero-v30-image {
    width: 100%;
    height: auto;
  }
}


/* V34: Hero estable por breakpoint.
   1024 y 1025 ya no cambian de composición.
   Desktop/laptop usan imagen ancha con blur incorporado, sin corte inferior. */
.hero-v34-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}

.hero-v34-picture,
.hero-v34-image {
  display: block;
  width: 100%;
}

.hero-v34-image {
  width: 100%;
  height: auto;
  margin: 0;
}

@media (max-width: 1199px) {
  .hero-v34-responsive {
    background: #020c1c;
  }

  .hero-v34-image {
    width: 100%;
    height: auto;
    object-fit: contain;
  }
}


/* V35: Fix del quiebre 1200px.
   La versión tablet se mantiene hasta 1366px para evitar que a 1200px
   cambie a una composición horizontal que achica/corta el hero. */
.hero-v35-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}

.hero-v35-picture,
.hero-v35-image {
  display: block;
  width: 100%;
}

.hero-v35-image {
  width: 100%;
  height: auto;
  margin: 0;
  object-fit: contain;
}

/* Hasta 1366 mantenemos la composición tipo tablet, que es la que se ve correcta */
@media (max-width: 1366px) {
  .hero-v35-image {
    width: 100%;
    height: auto;
    object-fit: contain;
  }
}

/* Desde laptop real ya entra la horizontal */
@media (min-width: 1367px) and (max-width: 1536px) {
  .hero-v35-image {
    width: 100%;
    height: auto;
  }
}

/* Desktop grande */
@media (min-width: 1537px) {
  .hero-v35-image {
    width: 100%;
    height: auto;
  }
}


/* V36: Fix final del quiebre 1367px.
   Se elimina la versión laptop intermedia porque rompía la composición.
   Tablet cubre 641px - 1536px.
   Monitor entra desde 1537px. */
.hero-v36-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}

.hero-v36-picture,
.hero-v36-image {
  display: block;
  width: 100%;
}

.hero-v36-image {
  width: 100%;
  height: auto;
  margin: 0;
  object-fit: contain;
}

/* Móvil */
@media (max-width: 640px) {
  .hero-v36-image {
    width: 100%;
    height: auto;
  }
}

/* Tablet, laptop chica y laptop mediana: mantenemos la composición estable */
@media (min-width: 641px) and (max-width: 1536px) {
  .hero-v36-image {
    width: 100%;
    height: auto;
  }
}

/* Monitor / escritorio grande */
@media (min-width: 1537px) {
  .hero-v36-image {
    width: 100%;
    height: auto;
  }
}


/* V37: Hero estable definitivo.
   Se elimina el cambio a monitor/laptop porque el salto de breakpoint rompía el diseño.
   Desde 641px hacia arriba se usa una sola composición estable.
   Resultado: no se corta, no se deforma y no aparecen laterales raros. */
.hero-v37-responsive {
  position: relative;
  overflow: hidden;
  padding: 0 !important;
  min-height: auto;
  background: #020c1c;
  border-bottom: 1px solid rgba(66, 214, 255, .22);
}

.hero-v37-picture,
.hero-v37-image {
  display: block;
  width: 100%;
}

.hero-v37-image {
  width: 100%;
  height: auto;
  margin: 0;
  object-fit: contain;
  object-position: center;
}

/* Móvil usa imagen vertical */
@media (max-width: 640px) {
  .hero-v37-image {
    width: 100%;
    height: auto;
  }
}

/* Desde tablet hasta monitor se mantiene el mismo hero estable */
@media (min-width: 641px) {
  .hero-v37-image {
    width: 100%;
    height: auto;
  }
}


/* V38: Academia HTML premium, más vendedora y sin imagen estática */
.academia-v38 {
  padding-top: clamp(70px, 7vw, 110px);
  padding-bottom: clamp(72px, 7vw, 108px);
}

.academy-v38-head {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: end;
  margin-bottom: clamp(28px, 4vw, 48px);
}

.academy-v38-title-block {
  max-width: 760px;
}

.academy-v38-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #83f9ff;
  background: rgba(0, 195, 255, .08);
  border: 1px solid rgba(65, 218, 255, .25);
  box-shadow: 0 0 32px rgba(0, 195, 255, .10);
  border-radius: 999px;
  padding: 10px 16px;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-weight: 900;
  font-size: .78rem;
  margin-bottom: 18px;
}

.academy-v38-title-block h2 {
  font-size: clamp(2.8rem, 5vw, 5.35rem);
  line-height: .96;
  letter-spacing: -.07em;
  margin: 0;
  max-width: 860px;
}

.academy-v38-title-block p {
  color: rgba(219, 234, 254, .78);
  font-size: clamp(1rem, 1.5vw, 1.22rem);
  line-height: 1.65;
  margin: 20px 0 0;
  max-width: 760px;
}

.academy-v38-proof {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  padding: 18px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(7, 26, 58, .82), rgba(4, 17, 40, .78));
  border: 1px solid rgba(83, 191, 255, .18);
  box-shadow: 0 22px 60px rgba(0,0,0,.24);
  backdrop-filter: blur(16px);
}

.academy-v38-proof div {
  min-height: 92px;
  display: grid;
  align-content: center;
  gap: 6px;
  text-align: center;
  border-radius: 20px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.06);
}

.academy-v38-proof strong {
  color: #22d3ff;
  font-size: clamp(1.6rem, 2.5vw, 2.25rem);
  line-height: 1;
  letter-spacing: -.05em;
}

.academy-v38-proof span {
  color: rgba(226, 239, 255, .72);
  font-weight: 800;
  font-size: .86rem;
}

.academy-v38-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 2.4vw, 32px);
  align-items: stretch;
}

.academy-v38-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  border-radius: 32px;
  background:
    radial-gradient(circle at 18% 0%, rgba(0, 220, 255, .12), transparent 32%),
    linear-gradient(180deg, rgba(10, 33, 67, .94), rgba(5, 20, 43, .94));
  border: 1px solid rgba(82, 192, 255, .20);
  box-shadow: 0 26px 76px rgba(0,0,0,.32);
  backdrop-filter: blur(14px);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.academy-v38-card:hover {
  transform: translateY(-6px);
  border-color: rgba(68, 215, 255, .40);
  box-shadow: 0 34px 90px rgba(0,0,0,.38), 0 0 40px rgba(0, 203, 255, .08);
}

.academy-v38-card-blue {
  background:
    radial-gradient(circle at 22% 0%, rgba(40, 142, 255, .16), transparent 34%),
    linear-gradient(180deg, rgba(9, 37, 76, .94), rgba(5, 20, 43, .94));
}

.academy-v38-card-violet {
  background:
    radial-gradient(circle at 22% 0%, rgba(150, 88, 255, .18), transparent 34%),
    linear-gradient(180deg, rgba(13, 32, 70, .94), rgba(5, 20, 43, .94));
}

.academy-v38-media {
  position: relative;
  aspect-ratio: 16 / 8.8;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.academy-v38-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.02);
  transition: transform .35s ease;
}

.academy-v38-card:hover .academy-v38-media img {
  transform: scale(1.07);
}

.academy-v38-media-overlay {
  position: absolute;
  inset: -12px;
  background:
    linear-gradient(180deg, rgba(2, 12, 28, .05), rgba(2, 12, 28, .62)),
    radial-gradient(circle at 88% 20%, rgba(0, 210, 255, .18), transparent 28%);
}

.academy-v38-status,
.academy-v38-tool {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  font-weight: 900;
  letter-spacing: -.01em;
  backdrop-filter: blur(14px);
}

.academy-v38-status {
  left: 18px;
  top: 18px;
  padding: 9px 13px;
  color: #e8fbff;
  font-size: .82rem;
  background: rgba(3, 21, 45, .76);
  border: 1px solid rgba(74, 203, 255, .26);
}

.academy-v38-tool {
  right: 18px;
  bottom: 18px;
  padding: 8px 12px;
  color: #061424;
  font-size: .78rem;
  background: linear-gradient(90deg, #41e4ff, #36a3ff);
  box-shadow: 0 12px 28px rgba(0, 174, 255, .20);
}

.academy-v38-card-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: clamp(22px, 2vw, 30px);
}

.academy-v38-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
}

.academy-v38-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #19d6ff;
  border: 1px solid rgba(53, 205, 255, .26);
  background: rgba(0, 179, 255, .08);
  font-size: 1.35rem;
}

.academy-v38-topline strong {
  color: #18d8ff;
  font-size: clamp(2rem, 3vw, 2.85rem);
  line-height: 1;
  letter-spacing: -.07em;
}

.academy-v38-card h3 {
  margin: 0 0 13px;
  font-size: clamp(1.8rem, 2.35vw, 2.55rem);
  line-height: 1.02;
  letter-spacing: -.06em;
}

.academy-v38-card p {
  margin: 0 0 18px;
  color: rgba(220, 233, 250, .78);
  line-height: 1.58;
  font-size: 1.02rem;
}

.academy-v38-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}

.academy-v38-meta span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  padding: 8px 11px;
  font-weight: 800;
  font-size: .82rem;
  color: rgba(235, 246, 255, .82);
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.academy-v38-list {
  display: grid;
  gap: 11px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}

.academy-v38-list li {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 10px;
  align-items: start;
  color: rgba(220, 233, 250, .84);
  line-height: 1.42;
}

.academy-v38-list i {
  color: #23d5ff;
  margin-top: 2px;
}

.academy-v38-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: auto;
}

.academy-v38-actions .btn {
  min-height: 54px;
  border-radius: 17px;
  padding: 13px 16px;
}

.academy-v38-trust {
  margin-top: clamp(26px, 3vw, 38px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-radius: 28px;
  overflow: hidden;
  background: rgba(2, 15, 35, .58);
  border: 1px solid rgba(82, 192, 255, .16);
  box-shadow: 0 20px 60px rgba(0,0,0,.22);
  backdrop-filter: blur(16px);
}

.academy-v38-trust-item {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: center;
  padding: 18px 20px;
  border-right: 1px solid rgba(255,255,255,.08);
}

.academy-v38-trust-item:last-child {
  border-right: 0;
}

.academy-v38-trust-item i {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #23d5ff;
  background: rgba(0, 179, 255, .08);
  border: 1px solid rgba(53, 205, 255, .22);
  font-size: 1.18rem;
}

.academy-v38-trust-item span {
  color: rgba(220, 233, 250, .78);
  line-height: 1.35;
}

.academy-v38-trust-item strong {
  color: #fff;
}

@media (max-width: 1180px) {
  .academy-v38-head {
    grid-template-columns: 1fr;
  }

  .academy-v38-proof {
    max-width: 760px;
  }

  .academy-v38-grid {
    grid-template-columns: 1fr;
  }

  .academy-v38-card {
    display: grid;
    grid-template-columns: minmax(280px, .95fr) 1.05fr;
    min-height: auto;
  }

  .academy-v38-media {
    aspect-ratio: auto;
    min-height: 100%;
  }

  .academy-v38-media img {
    height: 100%;
  }

  .academy-v38-trust {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .academy-v38-trust-item:nth-child(2) {
    border-right: 0;
  }

  .academy-v38-trust-item:nth-child(1),
  .academy-v38-trust-item:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
}

@media (max-width: 760px) {
  .academia-v38 {
    padding-top: 58px;
  }

  .academy-v38-proof {
    grid-template-columns: 1fr;
  }

  .academy-v38-card {
    display: flex;
  }

  .academy-v38-media {
    aspect-ratio: 16 / 9;
  }

  .academy-v38-actions {
    grid-template-columns: 1fr;
  }

  .academy-v38-trust {
    grid-template-columns: 1fr;
  }

  .academy-v38-trust-item {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .academy-v38-trust-item:last-child {
    border-bottom: 0;
  }
}


/* V39: Academia HTML estilo landing premium */
.academia-v39 {
  padding: clamp(70px, 7vw, 104px) 0 clamp(72px, 7vw, 110px);
  background:
    radial-gradient(circle at 50% 0%, rgba(39, 211, 255, .12), transparent 30%),
    radial-gradient(circle at 12% 25%, rgba(0, 157, 255, .11), transparent 30%),
    radial-gradient(circle at 90% 45%, rgba(102, 79, 255, .12), transparent 30%),
    linear-gradient(180deg, #041a34 0%, #031327 58%, #020d1d 100%);
}

.academia-v39 .academy-v39-container {
  width: min(1420px, calc(100% - 48px));
}

.academy-v39-header {
  text-align: center;
  max-width: 980px;
  margin: 0 auto clamp(34px, 4vw, 50px);
}

.academy-v39-title-line {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 22px;
  margin: 0 auto 16px;
}

.academy-v39-title-line span {
  display: block;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(28, 214, 255, .70), transparent);
}

.academy-v39-title-line span:first-child {
  background: linear-gradient(90deg, transparent, rgba(28, 214, 255, .70));
}

.academy-v39-title-line span:last-child {
  background: linear-gradient(90deg, rgba(28, 214, 255, .70), transparent);
}

.academy-v39-icon-main {
  width: 64px;
  height: 64px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  color: #dffbff;
  font-size: 1.7rem;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.26), transparent 40%),
    linear-gradient(180deg, rgba(0, 198, 255, .30), rgba(20, 91, 255, .18));
  border: 1px solid rgba(77, 218, 255, .38);
  box-shadow: 0 0 34px rgba(0, 199, 255, .18);
}

.academy-v39-header h2 {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .27em;
  font-size: clamp(2.4rem, 4vw, 4.35rem);
  line-height: 1;
  font-weight: 900;
}

.academy-v39-header p {
  margin: 16px 0 0;
  color: rgba(222, 238, 255, .76);
  font-size: clamp(1.02rem, 1.6vw, 1.35rem);
  line-height: 1.55;
}

.academy-v39-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(22px, 2.2vw, 34px);
  align-items: stretch;
}

.academy-v39-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  border-radius: 28px;
  background:
    radial-gradient(circle at 18% 0%, rgba(0, 213, 255, .13), transparent 34%),
    linear-gradient(180deg, rgba(8, 31, 65, .94), rgba(4, 17, 38, .97));
  border: 1px solid rgba(87, 190, 255, .24);
  box-shadow: 0 26px 80px rgba(0,0,0,.34);
  min-height: 665px;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.academy-v39-card:hover {
  transform: translateY(-5px);
  border-color: rgba(40, 218, 255, .46);
  box-shadow: 0 34px 90px rgba(0,0,0,.42), 0 0 44px rgba(0, 199, 255, .09);
}

.academy-v39-card-jmeter {
  background:
    radial-gradient(circle at 18% 0%, rgba(54, 142, 255, .15), transparent 34%),
    linear-gradient(180deg, rgba(8, 31, 70, .94), rgba(4, 17, 38, .97));
}

.academy-v39-card-karate {
  background:
    radial-gradient(circle at 18% 0%, rgba(99, 102, 241, .17), transparent 34%),
    linear-gradient(180deg, rgba(8, 31, 70, .94), rgba(4, 17, 38, .97));
}

.academy-v39-media {
  position: relative;
  aspect-ratio: 16 / 8.4;
  overflow: hidden;
  border-bottom: 1px solid rgba(255,255,255,.07);
  background: #031126;
}

.academy-v39-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.01);
  transition: transform .35s ease;
}

.academy-v39-card:hover .academy-v39-media img {
  transform: scale(1.055);
}

.academy-v39-media-shade {
  position: absolute;
  inset: -12px;
  background:
    linear-gradient(180deg, rgba(2, 12, 28, .05), rgba(2, 12, 28, .58)),
    radial-gradient(circle at 85% 18%, rgba(0, 203, 255, .18), transparent 25%);
}

.academy-v39-status,
.academy-v39-chip {
  position: absolute;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  font-weight: 900;
  backdrop-filter: blur(14px);
}

.academy-v39-status {
  top: 16px;
  left: 16px;
  padding: 9px 13px;
  color: #f4fbff;
  font-size: .83rem;
  background: rgba(2, 15, 35, .76);
  border: 1px solid rgba(77, 214, 255, .28);
}

.academy-v39-chip {
  right: 16px;
  bottom: 16px;
  padding: 8px 13px;
  font-size: .78rem;
  color: #061424;
  background: linear-gradient(90deg, #4cf4ff, #35a8ff);
  box-shadow: 0 12px 30px rgba(0, 190, 255, .20);
}

.academy-v39-body {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: clamp(22px, 2vw, 30px);
}

.academy-v39-price-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 18px;
}

.academy-v39-mini-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #19d7ff;
  border: 1px solid rgba(53, 205, 255, .25);
  background: rgba(0, 179, 255, .075);
  font-size: 1.25rem;
}

.academy-v39-price-row strong {
  color: #17d7ff;
  font-size: clamp(2.2rem, 3vw, 3rem);
  line-height: 1;
  letter-spacing: -.07em;
}

.academy-v39-card h3 {
  margin: 0 0 12px;
  font-size: clamp(2rem, 2.35vw, 2.75rem);
  line-height: 1.02;
  letter-spacing: -.06em;
}

.academy-v39-card p {
  margin: 0 0 17px;
  color: rgba(221, 234, 250, .78);
  line-height: 1.52;
  font-size: 1.02rem;
}

.academy-v39-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-bottom: 18px;
}

.academy-v39-meta span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  padding: 7px 10px;
  font-weight: 800;
  font-size: .81rem;
  color: rgba(232, 246, 255, .84);
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.academy-v39-list {
  display: grid;
  gap: 10px;
  margin: 0 0 22px;
  padding: 0;
  list-style: none;
}

.academy-v39-list li {
  display: grid;
  grid-template-columns: 22px 1fr;
  gap: 10px;
  align-items: start;
  color: rgba(220, 233, 250, .84);
  line-height: 1.38;
  font-size: .98rem;
}

.academy-v39-list i {
  color: #24d9ff;
  margin-top: 2px;
}

.academy-v39-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: auto;
}

.academy-v39-actions .btn {
  min-height: 54px;
  border-radius: 17px;
  padding: 13px 16px;
}

.academy-v39-benefits {
  margin-top: clamp(28px, 3vw, 38px);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-radius: 24px;
  overflow: hidden;
  background: rgba(2, 15, 35, .62);
  border: 1px solid rgba(82, 192, 255, .16);
  box-shadow: 0 20px 60px rgba(0,0,0,.22);
  backdrop-filter: blur(14px);
}

.academy-v39-benefits div {
  display: grid;
  grid-template-columns: 50px 1fr;
  grid-template-areas:
    "icon title"
    "icon text";
  gap: 2px 14px;
  align-items: center;
  padding: 18px 20px;
  border-right: 1px solid rgba(255,255,255,.08);
}

.academy-v39-benefits div:last-child {
  border-right: 0;
}

.academy-v39-benefits i {
  grid-area: icon;
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  color: #23d5ff;
  background: rgba(0, 179, 255, .08);
  border: 1px solid rgba(53, 205, 255, .22);
  font-size: 1.18rem;
}

.academy-v39-benefits strong {
  grid-area: title;
  color: #fff;
  line-height: 1.15;
}

.academy-v39-benefits span {
  grid-area: text;
  color: rgba(220, 233, 250, .72);
}

@media (max-width: 1180px) {
  .academy-v39-grid {
    grid-template-columns: 1fr;
  }

  .academy-v39-card {
    display: grid;
    grid-template-columns: minmax(300px, .95fr) 1.05fr;
    min-height: auto;
  }

  .academy-v39-media {
    aspect-ratio: auto;
    min-height: 100%;
  }

  .academy-v39-media img {
    height: 100%;
  }

  .academy-v39-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .academy-v39-benefits div:nth-child(2) {
    border-right: 0;
  }

  .academy-v39-benefits div:nth-child(1),
  .academy-v39-benefits div:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
}

@media (max-width: 760px) {
  .academia-v39 .academy-v39-container {
    width: min(100%, calc(100% - 24px));
  }

  .academy-v39-title-line {
    gap: 12px;
  }

  .academy-v39-icon-main {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    font-size: 1.35rem;
  }

  .academy-v39-header h2 {
    letter-spacing: .18em;
  }

  .academy-v39-card {
    display: flex;
  }

  .academy-v39-media {
    aspect-ratio: 16 / 9;
  }

  .academy-v39-actions {
    grid-template-columns: 1fr;
  }

  .academy-v39-benefits {
    grid-template-columns: 1fr;
  }

  .academy-v39-benefits div {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .academy-v39-benefits div:last-child {
    border-bottom: 0;
  }
}


/* V41: Mejora de iconos Academia + precios actualizados */
.academy-v39-mini-icon {
  width: 64px;
  height: 64px;
  border-radius: 21px;
  font-size: 1.55rem;
  position: relative;
  overflow: hidden;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.045),
    0 14px 34px rgba(0,0,0,.22),
    0 0 28px rgba(0, 213, 255, .12);
}

.academy-v39-mini-icon::before {
  content: "";
  position: absolute;
  inset: -35%;
  background: radial-gradient(circle, rgba(255,255,255,.20), transparent 45%);
  opacity: .55;
}

.academy-v39-mini-icon i {
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 0 10px rgba(35, 216, 255, .26));
}

.academy-v39-card-playwright .academy-v39-mini-icon {
  color: #53f5ff;
  background:
    radial-gradient(circle at 35% 20%, rgba(83,245,255,.20), transparent 40%),
    linear-gradient(180deg, rgba(0, 184, 255, .16), rgba(0, 76, 153, .08));
  border-color: rgba(83, 245, 255, .34);
}

.academy-v39-card-jmeter .academy-v39-mini-icon {
  color: #39b8ff;
  background:
    radial-gradient(circle at 35% 20%, rgba(57,184,255,.22), transparent 40%),
    linear-gradient(180deg, rgba(38, 128, 255, .18), rgba(0, 76, 153, .08));
  border-color: rgba(57, 184, 255, .34);
}

.academy-v39-card-karate .academy-v39-mini-icon {
  color: #7df7d6;
  background:
    radial-gradient(circle at 35% 20%, rgba(125,247,214,.22), transparent 40%),
    linear-gradient(180deg, rgba(25, 220, 180, .15), rgba(0, 76, 153, .08));
  border-color: rgba(125, 247, 214, .34);
}

.academy-v39-card-playwright .academy-v39-price-row strong,
.academy-v39-card-jmeter .academy-v39-price-row strong,
.academy-v39-card-karate .academy-v39-price-row strong {
  text-shadow: 0 0 22px rgba(20, 216, 255, .18);
}

.academy-v39-benefits i {
  font-size: 1.35rem;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.04),
    0 0 26px rgba(0, 199, 255, .10);
}


/* V43: Curso próximo a dictarse resaltado + nuevas imágenes limpias */
.academy-v39-card-playwright {
  border-color: rgba(41, 225, 255, .72) !important;
  box-shadow:
    0 30px 92px rgba(0,0,0,.42),
    0 0 0 1px rgba(41, 225, 255, .24),
    0 0 44px rgba(20, 201, 255, .22) !important;
}

.academy-v39-card-playwright::before {
  content: "Próximo inicio";
  position: absolute;
  z-index: 6;
  top: 18px;
  right: 18px;
  padding: 9px 14px;
  border-radius: 999px;
  background: linear-gradient(90deg, #19dfff, #47a8ff);
  color: #031126;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .02em;
  box-shadow: 0 12px 28px rgba(0, 199, 255, .26);
}

.academy-v39-card-playwright .academy-v39-media {
  border-bottom-color: rgba(41, 225, 255, .28);
}

.academy-v39-card-playwright .academy-v39-status {
  border-color: rgba(41, 225, 255, .46);
  box-shadow: 0 0 24px rgba(0, 209, 255, .18);
}

.academy-v39-media img {
  object-fit: cover;
  object-position: center;
}

@media (max-width: 760px) {
  .academy-v39-card-playwright::before {
    top: 14px;
    right: 14px;
    font-size: .72rem;
  }
}


/* V44: Imágenes 4K limpias en cursos, sin textos duplicados encima */
.academy-v39-status,
.academy-v39-chip,
.academy-v39-card-playwright::before {
  display: none !important;
  content: none !important;
}

/* Las nuevas imágenes son 3840x1440, ratio 8:3 */
.academy-v39-media {
  aspect-ratio: 8 / 3 !important;
}

.academy-v39-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Playwright resaltado solo con borde/glow, sin etiqueta extra */
.academy-v39-card-playwright {
  border-color: rgba(41, 225, 255, .82) !important;
  box-shadow:
    0 32px 98px rgba(0,0,0,.44),
    0 0 0 1px rgba(41, 225, 255, .30),
    0 0 52px rgba(20, 201, 255, .26) !important;
}

.academy-v39-card-playwright .academy-v39-media {
  border-bottom-color: rgba(41, 225, 255, .32) !important;
  box-shadow: inset 0 0 0 1px rgba(41, 225, 255, .20);
}


/* V45: Imágenes optimizadas al tamaño real del card.
   Tamaño exportado: 1200x450 px, ratio 8:3.
   Evita cargar 4K dentro de miniaturas pequeñas. */
.academy-v39-media {
  aspect-ratio: 8 / 3 !important;
}

.academy-v39-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

/* Sin textos duplicados dentro/sobre la imagen */
.academy-v39-status,
.academy-v39-chip,
.academy-v39-card-playwright::before {
  display: none !important;
  content: none !important;
}

/* El próximo curso queda destacado solo por borde/glow */
.academy-v39-card-playwright {
  border-color: rgba(41, 225, 255, .82) !important;
  box-shadow:
    0 32px 98px rgba(0,0,0,.44),
    0 0 0 1px rgba(41, 225, 255, .30),
    0 0 52px rgba(20, 201, 255, .26) !important;
}

.academy-v39-card-playwright .academy-v39-media {
  border-bottom-color: rgba(41, 225, 255, .32) !important;
  box-shadow: inset 0 0 0 1px rgba(41, 225, 255, .20);
}


/* V46: fecha visible en Playwright en lugar del icono */
.academy-v39-mini-date {
  min-width: 108px;
  height: 58px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  color: #ebfbff;
  border: 1px solid rgba(53, 205, 255, .28);
  background: linear-gradient(135deg, rgba(0, 196, 255, .16), rgba(15, 88, 255, .16));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 0 26px rgba(30, 206, 255, .14);
  font-size: .95rem;
  font-weight: 900;
  letter-spacing: -.02em;
  white-space: nowrap;
}
@media (max-width: 480px) {
  .academy-v39-mini-date {
    min-width: 94px;
    padding: 0 14px;
    font-size: .88rem;
  }
}


/* V47: JMeter y Karate muestran Próximamente en lugar de icono */
.academy-v39-mini-soon {
  min-width: 132px;
  color: #eafbff;
  background:
    radial-gradient(circle at 20% 10%, rgba(255,255,255,.14), transparent 38%),
    linear-gradient(135deg, rgba(15, 87, 160, .25), rgba(91, 51, 210, .18));
  border-color: rgba(90, 213, 255, .30);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 0 26px rgba(82, 180, 255, .13);
}

.academy-v39-card-jmeter .academy-v39-mini-soon {
  border-color: rgba(57, 184, 255, .36);
  color: #dff4ff;
}

.academy-v39-card-karate .academy-v39-mini-soon {
  border-color: rgba(125, 247, 214, .34);
  color: #e7fff8;
}

@media (max-width: 480px) {
  .academy-v39-mini-soon {
    min-width: 118px;
    font-size: .82rem;
  }
}


/* V48: miniaturas nuevas con iconos de software, tamaño real del card */
.academy-v39-media {
  aspect-ratio: 8 / 3 !important;
}

.academy-v39-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.academy-v39-status,
.academy-v39-chip,
.academy-v39-card-playwright::before {
  display: none !important;
  content: none !important;
}

/* Reducimos overlay para que las imágenes nuevas se vean claras */
.academy-v39-media-shade {
  background: linear-gradient(180deg, rgba(2, 12, 28, .02), rgba(2, 12, 28, .22)) !important;
}


/* V50: imágenes finales de Academia listas para servidor */
.academy-v39-media {
  aspect-ratio: 16 / 8.4 !important;
}

.academy-v39-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.academy-v39-status,
.academy-v39-chip,
.academy-v39-card-playwright::before {
  display: none !important;
  content: none !important;
}

/* Imagen más visible, sin oscurecer demasiado */
.academy-v39-media-shade {
  background: linear-gradient(180deg, rgba(2, 12, 28, .02), rgba(2, 12, 28, .18)) !important;
}

/* Playwright resaltado como próximo curso */
.academy-v39-card-playwright {
  border-color: rgba(41, 225, 255, .82) !important;
  box-shadow:
    0 32px 98px rgba(0,0,0,.44),
    0 0 0 1px rgba(41, 225, 255, .30),
    0 0 52px rgba(20, 201, 255, .26) !important;
}

.academy-v39-card-playwright .academy-v39-media {
  border-bottom-color: rgba(41, 225, 255, .32) !important;
  box-shadow: inset 0 0 0 1px rgba(41, 225, 255, .20);
}


/* V51: mejora de lectura en textos de cards Academia */
.academy-v39-card h3 {
  letter-spacing: -.055em;
}

.academy-v39-card p {
  color: rgba(229, 241, 255, .84) !important;
  line-height: 1.48 !important;
}

.academy-v39-list {
  gap: 12px !important;
}

.academy-v39-list li {
  color: rgba(229, 241, 255, .88) !important;
  line-height: 1.36 !important;
}

.academy-v39-list li span {
  display: block;
}

.academy-v39-meta span {
  color: rgba(238, 248, 255, .90) !important;
}


/* V52: beneficios Academia integrados y más premium */
.academy-v52-benefits {
  margin-top: clamp(30px, 3vw, 42px) !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  border-radius: 26px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(0, 210, 255, .10), transparent 36%),
    linear-gradient(180deg, rgba(7, 25, 55, .88), rgba(3, 15, 34, .92)) !important;
  border: 1px solid rgba(79, 205, 255, .18) !important;
  box-shadow:
    0 22px 64px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.04) !important;
  backdrop-filter: blur(16px) !important;
}

.academy-v52-benefit-item {
  position: relative;
  display: grid !important;
  grid-template-columns: 58px 1fr !important;
  gap: 16px !important;
  align-items: center !important;
  padding: 20px 24px !important;
  min-height: 104px !important;
  border-right: 1px solid rgba(255,255,255,.08) !important;
  transition: background .25s ease, transform .25s ease;
}

.academy-v52-benefit-item:last-child {
  border-right: 0 !important;
}

.academy-v52-benefit-item::before {
  content: "";
  position: absolute;
  inset: -12px;
  background:
    linear-gradient(135deg, rgba(38, 215, 255, .11), transparent 42%),
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.06), transparent 40%);
  opacity: 0;
  transition: opacity .25s ease;
}

.academy-v52-benefit-item:hover {
  background: rgba(19, 53, 94, .22) !important;
}

.academy-v52-benefit-item:hover::before {
  opacity: 1;
}

.academy-v52-benefit-item i {
  position: relative;
  z-index: 1;
  width: 58px !important;
  height: 58px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 18px !important;
  color: #28e2ff !important;
  font-size: 1.42rem !important;
  background:
    radial-gradient(circle at 35% 18%, rgba(255,255,255,.16), transparent 40%),
    linear-gradient(180deg, rgba(0, 183, 255, .14), rgba(0, 91, 180, .08)) !important;
  border: 1px solid rgba(60, 210, 255, .28) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.035),
    0 0 26px rgba(0, 198, 255, .12) !important;
}

.academy-v52-benefit-item div {
  position: relative;
  z-index: 1;
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
}

.academy-v52-benefit-item strong {
  display: block !important;
  color: #f5f9ff !important;
  font-size: 1.08rem !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: -.02em !important;
  margin-bottom: 5px !important;
}

.academy-v52-benefit-item span {
  display: block !important;
  color: rgba(220, 234, 250, .75) !important;
  font-size: .94rem !important;
  line-height: 1.35 !important;
}

@media (max-width: 1100px) {
  .academy-v52-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .academy-v52-benefit-item:nth-child(2) {
    border-right: 0 !important;
  }

  .academy-v52-benefit-item:nth-child(1),
  .academy-v52-benefit-item:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
  }
}

@media (max-width: 640px) {
  .academy-v52-benefits {
    grid-template-columns: 1fr !important;
  }

  .academy-v52-benefit-item {
    min-height: auto !important;
    padding: 18px 18px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.08) !important;
  }

  .academy-v52-benefit-item:last-child {
    border-bottom: 0 !important;
  }
}


/* V55: Landing premium para páginas detalle de cursos */
.course-landing {
  position: relative;
  overflow: hidden;
  padding: clamp(54px, 7vw, 92px) 0 clamp(42px, 5vw, 70px);
  background:
    radial-gradient(circle at 14% 14%, rgba(0, 210, 255, .12), transparent 30%),
    radial-gradient(circle at 84% 12%, rgba(93, 83, 255, .16), transparent 32%),
    linear-gradient(180deg, rgba(2, 13, 31, .96), rgba(3, 20, 43, .96));
  border-bottom: 1px solid rgba(78, 190, 255, .13);
}
.course-landing::before {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px);
  background-size:58px 58px;
  opacity:.6;
  pointer-events:none;
}
.course-hero-v55 {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(440px, 1.05fr);
  align-items: center;
  gap: clamp(34px, 5vw, 72px);
}
.course-v55-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:18px;
  padding:10px 14px;
  border-radius:999px;
  color:#8df1ff;
  border:1px solid rgba(72, 215, 255, .23);
  background: rgba(0, 200, 255, .065);
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:900;
}
.course-v55-eyebrow span {
  width:9px;
  height:9px;
  border-radius:50%;
  background:#66f0b4;
  box-shadow:0 0 0 6px rgba(102,240,180,.10);
}
.course-hero-copy-v55 h1 {
  margin:0;
  max-width: 780px;
  font-size: clamp(3.4rem, 6.1vw, 6.7rem);
  line-height:.93;
  letter-spacing:-.075em;
  font-weight:900;
}
.course-v55-lead {
  max-width:720px;
  margin:24px 0 0;
  color:rgba(225,239,255,.82);
  font-size:clamp(1.06rem,1.4vw,1.28rem);
  line-height:1.65;
}
.course-v55-tags {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}
.course-v55-tags span {
  padding:9px 13px;
  border-radius:999px;
  color:#dff8ff;
  font-weight:800;
  font-size:.9rem;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.10);
}
.course-v55-actions {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.course-hero-visual-v55 {
  position:relative;
}
.course-hero-image-v55 {
  border-radius:34px;
  overflow:hidden;
  border:1px solid rgba(75, 205, 255, .25);
  background:#020b1c;
  box-shadow:0 34px 110px rgba(0,0,0,.36), 0 0 48px rgba(0, 192, 255, .10);
}
.course-hero-image-v55 img {
  width:100%;
  aspect-ratio:16/8.4;
  object-fit:cover;
  object-position:center;
}
.course-hero-stats-v55 {
  position:relative;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:12px;
  margin:-34px 28px 0;
}
.course-hero-stats-v55 div {
  padding:18px 16px;
  border-radius:22px;
  background:rgba(4, 18, 39, .84);
  border:1px solid rgba(82, 202, 255, .20);
  box-shadow:0 20px 54px rgba(0,0,0,.24);
  backdrop-filter:blur(12px);
}
.course-hero-stats-v55 strong {
  display:block;
  color:#24d8ff;
  font-size:clamp(1.5rem,2vw,2.15rem);
  line-height:1;
  letter-spacing:-.05em;
}
.course-hero-stats-v55 span {
  display:block;
  margin-top:5px;
  color:rgba(222,237,255,.72);
  font-size:.86rem;
  line-height:1.25;
}
.course-section-v55 {
  padding: clamp(44px, 6vw, 76px) 0 clamp(64px, 7vw, 100px);
  background:
    radial-gradient(circle at 80% 12%, rgba(0, 170, 255, .09), transparent 30%),
    linear-gradient(180deg, rgba(2,16,36,.94), rgba(2,12,28,.98));
}
.course-layout-v55 {
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:28px;
  align-items:start;
}
.course-main-v55 {
  display:grid;
  gap:24px;
}
.course-panel-v55,
.course-enroll-card-v55 {
  border-radius:28px;
  background:
    radial-gradient(circle at 10% 0%, rgba(0, 202, 255, .09), transparent 38%),
    linear-gradient(180deg, rgba(8,31,65,.88), rgba(4,18,40,.91));
  border:1px solid rgba(81,174,255,.17);
  box-shadow:0 24px 80px rgba(0,0,0,.25);
  padding:clamp(22px,2.3vw,32px);
}
.course-section-head-v55 {
  display:grid;
  grid-template-columns:58px 1fr;
  gap:18px;
  align-items:start;
  margin-bottom:22px;
}
.course-section-head-v55.compact { margin-bottom:18px; }
.course-section-head-v55 > span {
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:18px;
  color:#031126;
  background:linear-gradient(90deg,#26dfff,#44a5ff);
  font-weight:950;
  box-shadow:0 14px 34px rgba(0,190,255,.22);
}
.course-section-head-v55 h2 {
  margin:0;
  font-size:clamp(1.9rem,3vw,3rem);
  line-height:1.02;
  letter-spacing:-.06em;
}
.course-section-head-v55 p {
  margin:8px 0 0;
  color:rgba(220,234,250,.74);
  line-height:1.55;
}
.course-path-grid-v55 {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.course-path-grid-v55 article,
.course-deliverable-grid-v55 article {
  border-radius:22px;
  padding:20px;
  background:rgba(255,255,255,.038);
  border:1px solid rgba(255,255,255,.085);
}
.course-path-grid-v55 i,
.course-deliverable-grid-v55 i {
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:16px;
  color:#21d8ff;
  background:rgba(0, 190, 255, .08);
  border:1px solid rgba(55, 203, 255, .22);
  margin-bottom:16px;
  font-size:1.25rem;
}
.course-path-grid-v55 h3 {
  margin:0 0 8px;
  font-size:1.18rem;
}
.course-path-grid-v55 p {
  margin:0;
  color:rgba(220,234,250,.76);
  line-height:1.48;
}
.course-roadmap-v55 {
  position:relative;
  display:grid;
  gap:14px;
}
.course-roadmap-item-v55 {
  display:grid;
  grid-template-columns:62px 1fr;
  gap:16px;
  align-items:start;
  padding:16px;
  border-radius:20px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.085);
}
.course-roadmap-item-v55 span {
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  color:#26dfff;
  font-weight:950;
  border:1px solid rgba(55,203,255,.24);
  background:rgba(0,180,255,.07);
}
.course-roadmap-item-v55 p {
  margin:8px 0 0;
  color:rgba(231,242,255,.82);
  line-height:1.45;
}
.course-two-col-v55 {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px;
}
.course-check-list-v55 {
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:14px;
}
.course-check-list-v55 li {
  display:grid;
  grid-template-columns:24px 1fr;
  gap:12px;
  color:rgba(231,242,255,.82);
  line-height:1.42;
}
.course-check-list-v55 i {
  color:#28dfff;
  margin-top:2px;
}
.course-deliverable-grid-v55 {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.course-deliverable-grid-v55 article {
  display:grid;
  grid-template-columns:54px 1fr;
  gap:14px;
  align-items:center;
}
.course-deliverable-grid-v55 i {
  margin:0;
}
.course-deliverable-grid-v55 span {
  color:rgba(235,246,255,.84);
  line-height:1.38;
  font-weight:700;
}
.course-side-v55 {
  position:sticky;
  top:96px;
}
.course-enroll-card-v55 {
  display:grid;
  gap:16px;
}
.course-side-kicker-v55 {
  color:#2bdcff;
  text-transform:uppercase;
  letter-spacing:.16em;
  font-size:.78rem;
  font-weight:950;
}
.course-side-price-v55 {
  color:#20d8ff;
  font-size:3.4rem;
  letter-spacing:-.08em;
  line-height:.9;
}
.course-enroll-card-v55 p {
  margin:0;
  color:rgba(231,242,255,.82);
  font-weight:800;
}
.course-side-list-v55 {
  display:grid;
  gap:12px;
  padding:16px 0;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.course-side-list-v55 div {
  display:grid;
  grid-template-columns:24px 1fr;
  gap:10px;
  color:rgba(221,235,250,.78);
  line-height:1.35;
}
.course-side-list-v55 i { color:#24d8ff; }
.course-enroll-card-v55 .btn { width:100%; }
.course-landing-jmeter .course-section-head-v55 > span,
.course-landing-jmeter .btn-primary { background:linear-gradient(90deg,#38bdf8,#ff8a2f); }
.course-landing-karate .course-section-head-v55 > span,
.course-landing-karate .btn-primary { background:linear-gradient(90deg,#2af5d4,#35a8ff); }
@media (max-width: 1120px) {
  .course-hero-v55 { grid-template-columns:1fr; }
  .course-layout-v55 { grid-template-columns:1fr; }
  .course-side-v55 { position:relative; top:auto; }
}
@media (max-width: 780px) {
  .course-path-grid-v55,
  .course-two-col-v55,
  .course-deliverable-grid-v55,
  .course-hero-stats-v55 { grid-template-columns:1fr; }
  .course-hero-stats-v55 { margin:14px 0 0; }
  .course-section-head-v55 { grid-template-columns:1fr; }
  .course-section-head-v55 > span { width:48px; height:48px; }
  .course-hero-copy-v55 h1 { font-size:clamp(2.7rem,13vw,4.2rem); }
}


/* V56: Landing de curso en una sola sección unificada */
.course-onepage-v56 {
  position: relative;
  padding: clamp(44px, 5vw, 72px) 0 clamp(66px, 6vw, 96px);
  background:
    radial-gradient(circle at 18% 10%, rgba(0, 211, 255, .14), transparent 30%),
    radial-gradient(circle at 84% 16%, rgba(78, 118, 255, .14), transparent 30%),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(135deg, #020b1a, #031735 55%, #021026);
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}

.course-onepage-container-v56 {
  width: min(1260px, calc(100% - 40px));
}

.course-shell-v56 {
  overflow: hidden;
  border-radius: 36px;
  border: 1px solid rgba(82, 196, 255, .18);
  background:
    radial-gradient(circle at 15% 0%, rgba(0, 205, 255, .10), transparent 30%),
    linear-gradient(180deg, rgba(7, 30, 64, .88), rgba(3, 16, 37, .94));
  box-shadow: 0 32px 100px rgba(0,0,0,.34);
}

.course-mainrow-v56 {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(340px, .9fr) minmax(280px, .52fr);
  gap: 28px;
  align-items: stretch;
  padding: clamp(28px, 4vw, 46px);
}

.course-copy-v56 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.course-kicker-v56 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  align-self: flex-start;
  margin-bottom: 20px;
  padding: 10px 14px;
  border-radius: 999px;
  color: #88f2ff;
  background: rgba(0, 190, 255, .075);
  border: 1px solid rgba(72, 218, 255, .22);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .13em;
}

.course-kicker-v56 span {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #54f0b4;
  box-shadow: 0 0 0 6px rgba(84, 240, 180, .11);
}

.course-copy-v56 h1 {
  margin: 0;
  max-width: 720px;
  font-size: clamp(3.05rem, 5.4vw, 5.6rem);
  line-height: .94;
  letter-spacing: -.075em;
  font-weight: 950;
}

.course-lead-v56 {
  margin: 20px 0 0;
  max-width: 650px;
  color: rgba(225, 239, 255, .80);
  font-size: clamp(1.04rem, 1.3vw, 1.22rem);
  line-height: 1.58;
}

.course-tags-v56 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.course-tags-v56 span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 13px;
  border-radius: 999px;
  font-weight: 900;
  font-size: .82rem;
  color: rgba(235, 250, 255, .94);
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.course-actions-v56 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.course-visual-v56 {
  position: relative;
  align-self: center;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(74, 209, 255, .24);
  background: #041229;
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
  min-height: 260px;
}

.course-visual-v56 img {
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
  object-position: center;
}

.course-enroll-v56 {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  padding: 26px;
  border-radius: 28px;
  border: 1px solid rgba(86, 194, 255, .18);
  background:
    radial-gradient(circle at 18% 0%, rgba(0, 213, 255, .10), transparent 35%),
    linear-gradient(180deg, rgba(9, 34, 70, .88), rgba(4, 18, 42, .92));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

.course-enroll-v56 > span {
  color: #7beeff;
  font-size: .8rem;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.course-enroll-v56 > strong {
  display: block;
  margin-top: 12px;
  color: #18d7ff;
  font-size: clamp(2.4rem, 3.2vw, 3.3rem);
  line-height: 1;
  letter-spacing: -.07em;
}

.course-enroll-v56 > p {
  margin: 10px 0 18px;
  color: rgba(239, 249, 255, .88);
  font-weight: 900;
}

.course-enroll-list-v56 {
  display: grid;
  gap: 10px;
  margin-bottom: 22px;
}

.course-enroll-list-v56 div {
  display: grid;
  grid-template-columns: 24px 1fr;
  gap: 10px;
  align-items: start;
  color: rgba(222, 238, 255, .78);
  line-height: 1.38;
  font-weight: 700;
}

.course-enroll-list-v56 i {
  color: #20d7ff;
  margin-top: 2px;
}

.course-enroll-v56 .btn {
  width: 100%;
  min-height: 52px;
  margin-top: 10px;
}

.course-stats-v56 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255,255,255,.075);
  border-bottom: 1px solid rgba(255,255,255,.075);
  background: rgba(0,0,0,.16);
}

.course-stats-v56 div {
  padding: 22px 28px;
  border-right: 1px solid rgba(255,255,255,.075);
}

.course-stats-v56 div:last-child {
  border-right: 0;
}

.course-stats-v56 strong,
.course-stats-v56 span {
  display: block;
}

.course-stats-v56 strong {
  color: #fff;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  line-height: 1.05;
  letter-spacing: -.045em;
}

.course-stats-v56 span {
  margin-top: 5px;
  color: rgba(210, 231, 250, .68);
  font-weight: 800;
  font-size: .86rem;
}

.course-unified-content-v56 {
  display: grid;
  gap: 0;
  padding: clamp(28px, 4vw, 44px);
}

.course-roadmap-v56,
.course-program-v56,
.course-bottom-grid-v56 {
  padding: clamp(24px, 3vw, 34px) 0;
  border-bottom: 1px solid rgba(255,255,255,.075);
}

.course-roadmap-v56 {
  padding-top: 0;
}

.course-bottom-grid-v56 {
  padding-bottom: 0;
  border-bottom: 0;
}

.course-block-head-v56 {
  display: grid;
  grid-template-columns: 58px 1fr;
  gap: 18px;
  align-items: start;
  margin-bottom: 22px;
}

.course-block-head-v56 > span {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  color: #031126;
  font-weight: 950;
  background: linear-gradient(90deg, #35e1ff, #49a7ff);
  box-shadow: 0 14px 30px rgba(0, 195, 255, .18);
}

.course-block-head-v56 h2 {
  margin: 0;
  font-size: clamp(1.9rem, 3vw, 3rem);
  line-height: 1.04;
  letter-spacing: -.06em;
}

.course-block-head-v56 p {
  margin: 8px 0 0;
  color: rgba(221, 237, 255, .70);
  line-height: 1.5;
  max-width: 820px;
}

.course-path-v56 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 16px;
}

.course-path-v56 article {
  display: grid;
  grid-template-columns: 54px 1fr;
  gap: 14px;
  padding: 20px;
  border-radius: 22px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.08);
}

.course-path-v56 i {
  width: 54px;
  height: 54px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  color: #25dcff;
  background: rgba(0, 190, 255, .08);
  border: 1px solid rgba(73, 211, 255, .22);
  font-size: 1.25rem;
}

.course-path-v56 h3 {
  margin: 0 0 6px;
  font-size: 1.12rem;
  letter-spacing: -.03em;
}

.course-path-v56 p {
  margin: 0;
  color: rgba(219, 235, 252, .70);
  line-height: 1.45;
}

.course-module-list-v56 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}

.course-module-list-v56 div {
  display: grid;
  grid-template-columns: 48px 1fr;
  gap: 14px;
  align-items: start;
  padding: 18px;
  border-radius: 20px;
  background: rgba(255,255,255,.032);
  border: 1px solid rgba(255,255,255,.075);
}

.course-module-list-v56 span {
  color: #27dcff;
  font-weight: 950;
}

.course-module-list-v56 p {
  margin: 0;
  color: rgba(227, 240, 255, .78);
  line-height: 1.45;
}

.course-bottom-grid-v56 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}

.course-bottom-grid-v56 > div {
  padding: 22px;
  border-radius: 24px;
  background: rgba(255,255,255,.032);
  border: 1px solid rgba(255,255,255,.075);
}

.course-bottom-grid-v56 h2 {
  margin: 0 0 16px;
  font-size: 1.45rem;
  letter-spacing: -.04em;
}

.course-bottom-grid-v56 ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 12px;
}

.course-bottom-grid-v56 li {
  display: grid;
  grid-template-columns: 23px 1fr;
  gap: 10px;
  color: rgba(226, 239, 255, .78);
  line-height: 1.42;
}

.course-bottom-grid-v56 i {
  color: #23d7ff;
  margin-top: 2px;
}

.course-onepage-jmeter .course-block-head-v56 > span,
.course-onepage-jmeter .btn-primary {
  background: linear-gradient(90deg, #36b9ff, #ff9d2e);
}

.course-onepage-karate .course-block-head-v56 > span,
.course-onepage-karate .btn-primary {
  background: linear-gradient(90deg, #34e8ff, #5bffcb);
}

@media (max-width: 1180px) {
  .course-mainrow-v56 {
    grid-template-columns: 1fr 1fr;
  }

  .course-enroll-v56 {
    grid-column: 1 / -1;
  }

  .course-path-v56,
  .course-bottom-grid-v56 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .course-onepage-container-v56 {
    width: min(100%, calc(100% - 24px));
  }

  .course-shell-v56 {
    border-radius: 28px;
  }

  .course-mainrow-v56 {
    grid-template-columns: 1fr;
    padding: 22px;
  }

  .course-copy-v56 h1 {
    font-size: clamp(2.6rem, 12vw, 4rem);
  }

  .course-stats-v56 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .course-stats-v56 div:nth-child(2) {
    border-right: 0;
  }

  .course-stats-v56 div:nth-child(1),
  .course-stats-v56 div:nth-child(2) {
    border-bottom: 1px solid rgba(255,255,255,.075);
  }

  .course-module-list-v56 {
    grid-template-columns: 1fr;
  }

  .course-block-head-v56 {
    grid-template-columns: 1fr;
  }

  .course-actions-v56 {
    display: grid;
  }
}


/* V57: Infografía HTML de ruta del curso + explicación por fase */
.course-route-html-v57 {
  position: relative;
  padding: clamp(24px, 3vw, 36px) 0;
  border-bottom: 1px solid rgba(255,255,255,.075);
}

.course-route-title-v57 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: start;
  margin-bottom: 26px;
}

.course-route-title-v57 span {
  display: inline-flex;
  color: #2dd8ff;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .82rem;
  font-weight: 950;
  margin-bottom: 10px;
}

.course-route-title-v57 h2 {
  margin: 0;
  max-width: 850px;
  font-size: clamp(2.2rem, 3.6vw, 4.3rem);
  line-height: .98;
  letter-spacing: -.07em;
}

.course-route-title-v57 p {
  margin: 12px 0 0;
  max-width: 820px;
  color: rgba(221, 238, 255, .72);
  font-size: 1.04rem;
  line-height: 1.55;
}

.course-route-title-v57 > strong {
  justify-self: end;
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 16px;
  border-radius: 999px;
  color: #e9fbff;
  font-size: .85rem;
  font-weight: 950;
  background: rgba(0, 195, 255, .08);
  border: 1px solid rgba(72, 218, 255, .22);
  white-space: nowrap;
}

.course-route-track-v57 {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch;
  margin: 34px 0 24px;
}

.course-route-track-v57::before {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  top: 58%;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(35, 216, 255, .15), rgba(35, 216, 255, .80), rgba(105, 255, 205, .72));
  box-shadow: 0 0 22px rgba(0, 210, 255, .20);
  z-index: 0;
}

.course-route-step-v57 {
  position: relative;
  z-index: 1;
  min-height: 190px;
  padding: 18px 14px 20px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 50% 15%, rgba(255,255,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(8, 35, 72, .96), rgba(4, 18, 42, .96));
  border: 1px solid rgba(79, 205, 255, .16);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
  text-align: center;
}

.course-route-step-v57:nth-child(even) {
  transform: translateY(22px);
}

.course-route-number-v57 {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #031126;
  background: linear-gradient(90deg, #34e7ff, #4da8ff);
  font-size: .9rem;
  font-weight: 950;
}

.course-route-step-v57 i {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  margin: 22px auto 14px;
  border-radius: 24px;
  color: #22dcff;
  font-size: 2rem;
  background: rgba(0, 190, 255, .08);
  border: 1px solid rgba(72, 218, 255, .24);
  box-shadow: 0 0 28px rgba(0, 200, 255, .12);
}

.course-route-step-v57 h3 {
  margin: 0 0 8px;
  color: #f6fbff;
  font-size: 1.03rem;
  line-height: 1.16;
  letter-spacing: -.025em;
}

.course-route-step-v57 p {
  margin: 0;
  color: rgba(218, 235, 252, .72);
  font-size: .88rem;
  line-height: 1.35;
}

.course-route-result-v57 {
  display: grid;
  grid-template-columns: 62px 1fr;
  gap: 16px;
  align-items: center;
  margin: 36px 0 30px;
  padding: 20px;
  border-radius: 26px;
  background:
    radial-gradient(circle at 10% 0%, rgba(53, 225, 255, .15), transparent 38%),
    linear-gradient(90deg, rgba(6, 34, 75, .92), rgba(7, 23, 52, .92));
  border: 1px solid rgba(79, 205, 255, .18);
}

.course-route-result-v57 i {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #051326;
  background: linear-gradient(90deg, #35e1ff, #49a7ff);
  font-size: 1.5rem;
}

.course-route-result-v57 h3 {
  margin: 0 0 4px;
  font-size: 1.28rem;
  letter-spacing: -.035em;
}

.course-route-result-v57 p {
  margin: 0;
  color: rgba(221, 238, 255, .72);
  line-height: 1.45;
}

.course-phase-title-v57 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 34px 0 22px;
}

.course-phase-title-v57::before,
.course-phase-title-v57::after {
  content: "";
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, transparent, rgba(80, 190, 255, .30));
}

.course-phase-title-v57::after {
  background: linear-gradient(90deg, rgba(80, 190, 255, .30), transparent);
}

.course-phase-title-v57 i {
  color: #28dcff;
  font-size: 1.45rem;
}

.course-phase-title-v57 h2 {
  margin: 0;
  font-size: clamp(1.55rem, 2.3vw, 2.25rem);
  letter-spacing: -.05em;
  white-space: nowrap;
}

.course-phase-grid-v57 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
}

.course-phase-card-v57 {
  display: grid;
  grid-template-columns: 46px 56px 1fr;
  gap: 14px;
  align-items: start;
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.034);
  border: 1px solid rgba(255,255,255,.08);
}

.course-phase-card-v57 > span {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 14px;
  color: #031126;
  background: linear-gradient(90deg, #34e7ff, #4da8ff);
  font-weight: 950;
}

.course-phase-card-v57 > i {
  width: 56px;
  height: 56px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  color: #22dcff;
  background: rgba(0, 190, 255, .08);
  border: 1px solid rgba(72, 218, 255, .20);
  font-size: 1.32rem;
}

.course-phase-card-v57 h3 {
  margin: 0 0 10px;
  font-size: 1.12rem;
  letter-spacing: -.035em;
}

.course-phase-card-v57 ul {
  margin: 0;
  padding-left: 18px;
  color: rgba(224, 240, 255, .76);
  line-height: 1.45;
  display: grid;
  gap: 6px;
}

.course-onepage-jmeter .course-route-number-v57,
.course-onepage-jmeter .course-phase-card-v57 > span,
.course-onepage-jmeter .course-route-result-v57 i {
  background: linear-gradient(90deg, #36b9ff, #ff9d2e);
}

.course-onepage-karate .course-route-number-v57,
.course-onepage-karate .course-phase-card-v57 > span,
.course-onepage-karate .course-route-result-v57 i {
  background: linear-gradient(90deg, #34e8ff, #5bffcb);
}

@media (max-width: 1180px) {
  .course-route-track-v57 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .course-route-track-v57::before {
    display: none;
  }

  .course-route-step-v57:nth-child(even) {
    transform: none;
  }

  .course-phase-grid-v57 {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 760px) {
  .course-route-title-v57 {
    grid-template-columns: 1fr;
  }

  .course-route-title-v57 > strong {
    justify-self: start;
  }

  .course-route-track-v57 {
    grid-template-columns: 1fr;
  }

  .course-route-step-v57 {
    min-height: auto;
    text-align: left;
    display: grid;
    grid-template-columns: 68px 1fr;
    grid-template-areas:
      "icon title"
      "icon text";
    gap: 4px 14px;
    padding: 18px 18px 18px 70px;
  }

  .course-route-step-v57 i {
    grid-area: icon;
    margin: 0;
    width: 58px;
    height: 58px;
    font-size: 1.45rem;
  }

  .course-route-step-v57 h3 {
    grid-area: title;
    align-self: end;
  }

  .course-route-step-v57 p {
    grid-area: text;
  }

  .course-route-number-v57 {
    top: 18px;
    left: 18px;
  }

  .course-route-result-v57 {
    grid-template-columns: 1fr;
  }

  .course-phase-title-v57 {
    justify-content: flex-start;
  }

  .course-phase-title-v57::before,
  .course-phase-title-v57::after {
    display: none;
  }

  .course-phase-title-v57 h2 {
    white-space: normal;
  }

  .course-phase-grid-v57 {
    grid-template-columns: 1fr;
  }

  .course-phase-card-v57 {
    grid-template-columns: 42px 1fr;
  }

  .course-phase-card-v57 > i {
    display: none;
  }
}


/* V58: landing de ventas enfocada en ruta + temario */
.course-sales-v58 {
  padding: clamp(34px, 4vw, 58px) 0 clamp(58px, 6vw, 90px);
  background:
    radial-gradient(circle at 12% 12%, rgba(0, 210, 255, .12), transparent 30%),
    radial-gradient(circle at 82% 6%, rgba(76, 132, 255, .13), transparent 32%),
    linear-gradient(90deg, rgba(255,255,255,.024) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.024) 1px, transparent 1px),
    linear-gradient(135deg, #020b1a, #031a39 55%, #031126);
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}

.course-sales-container-v58 {
  width: min(1280px, calc(100% - 40px));
}

.course-sales-shell-v58 {
  overflow: hidden;
  border-radius: 34px;
  border: 1px solid rgba(84, 197, 255, .18);
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 208, 255, .10), transparent 30%),
    linear-gradient(180deg, rgba(7, 30, 64, .90), rgba(3, 16, 38, .96));
  box-shadow: 0 34px 100px rgba(0,0,0,.34);
}

.course-sales-hero-v58 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: clamp(24px, 4vw, 48px);
  padding: clamp(30px, 5vw, 58px);
  border-bottom: 1px solid rgba(255,255,255,.075);
}

.course-sales-kicker-v58 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  padding: 10px 16px;
  border-radius: 999px;
  color: #dff9ff;
  background: linear-gradient(90deg, rgba(0, 145, 255, .24), rgba(0, 210, 255, .12));
  border: 1px solid rgba(80, 210, 255, .26);
  font-size: .86rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .13em;
}

.course-sales-kicker-v58 i {
  color: #38ddff;
  font-size: 1.1rem;
}

.course-sales-copy-v58 h1 {
  margin: 24px 0 12px;
  max-width: 930px;
  font-size: clamp(3.1rem, 6vw, 6.2rem);
  line-height: .92;
  letter-spacing: -.08em;
  font-weight: 950;
}

.course-sales-copy-v58 > p {
  margin: 0;
  max-width: 920px;
  color: rgba(220, 238, 255, .78);
  font-size: clamp(1.08rem, 1.45vw, 1.35rem);
  line-height: 1.55;
}

.course-sales-stats-v58 {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-top: 28px;
}

.course-sales-stats-v58 div {
  min-height: 82px;
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 12px;
  align-items: center;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.085);
}

.course-sales-stats-v58 i {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #24d9ff;
  background: rgba(0, 190, 255, .08);
  border: 1px solid rgba(72, 218, 255, .20);
}

.course-sales-stats-v58 strong {
  color: rgba(245, 250, 255, .95);
  font-size: .92rem;
  line-height: 1.2;
}

.course-sales-actions-v58 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.course-sales-enroll-v58 {
  align-self: stretch;
  padding: 26px;
  border-radius: 28px;
  border: 1px solid rgba(83, 204, 255, .20);
  background:
    radial-gradient(circle at 15% 0%, rgba(0, 210, 255, .13), transparent 34%),
    linear-gradient(180deg, rgba(9, 34, 70, .92), rgba(4, 18, 42, .96));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 20px 60px rgba(0,0,0,.25);
}

.course-sales-enroll-v58 > span {
  color: #7beeff;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.course-sales-enroll-v58 > strong {
  display: block;
  margin-top: 12px;
  color: #18d7ff;
  font-size: clamp(2.7rem, 4vw, 4rem);
  line-height: 1;
  letter-spacing: -.07em;
}

.course-sales-enroll-v58 > p {
  margin: 10px 0 20px;
  color: rgba(244, 250, 255, .92);
  font-weight: 900;
}

.course-sales-enroll-v58 div {
  display: grid;
  gap: 4px;
  padding: 14px 0;
  border-top: 1px solid rgba(255,255,255,.075);
}

.course-sales-enroll-v58 small {
  color: rgba(218, 235, 255, .58);
  font-weight: 800;
}

.course-sales-enroll-v58 b {
  color: rgba(245,250,255,.92);
  line-height: 1.35;
}

.course-sales-enroll-v58 .btn {
  width: 100%;
  margin-top: 18px;
}

.course-sales-route-v58 {
  padding: clamp(30px, 5vw, 58px);
}

.course-route-heading-v58 span {
  color: #2cdcff;
  text-transform: uppercase;
  letter-spacing: .18em;
  font-weight: 950;
  font-size: .82rem;
}

.course-route-heading-v58 h2 {
  margin: 10px 0 28px;
  max-width: 940px;
  font-size: clamp(2.1rem, 4vw, 4.3rem);
  line-height: 1;
  letter-spacing: -.07em;
}

.course-route-flow-v58 {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 34px;
}

.course-route-flow-v58::before {
  content: "";
  position: absolute;
  left: 5%;
  right: 5%;
  top: 54%;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(35, 216, 255, .25), rgba(35, 216, 255, .82), rgba(86, 255, 197, .68));
  box-shadow: 0 0 22px rgba(0, 210, 255, .20);
}

.course-flow-card-v58 {
  position: relative;
  z-index: 1;
  min-height: 200px;
  padding: 18px 14px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 50% 16%, rgba(255,255,255,.10), transparent 34%),
    linear-gradient(180deg, rgba(8, 35, 72, .96), rgba(4, 18, 42, .96));
  border: 1px solid rgba(79, 205, 255, .16);
  box-shadow: 0 18px 44px rgba(0,0,0,.22);
  text-align: center;
}

.course-flow-card-v58:nth-child(even) {
  transform: translateY(22px);
}

.course-flow-card-v58 > span {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #031126;
  background: linear-gradient(90deg, #34e7ff, #4da8ff);
  font-weight: 950;
}

.course-flow-card-v58 i {
  width: 70px;
  height: 70px;
  display: grid;
  place-items: center;
  margin: 26px auto 14px;
  border-radius: 24px;
  color: #22dcff;
  font-size: 2rem;
  background: rgba(0, 190, 255, .08);
  border: 1px solid rgba(72, 218, 255, .24);
  box-shadow: 0 0 28px rgba(0, 200, 255, .12);
}

.course-flow-card-v58 h3 {
  margin: 0 0 8px;
  color: #f6fbff;
  font-size: 1.03rem;
  line-height: 1.16;
}

.course-flow-card-v58 p {
  margin: 0;
  color: rgba(218, 235, 252, .72);
  font-size: .88rem;
  line-height: 1.35;
}

.course-syllabus-v58 {
  display: grid;
  gap: 16px;
}

.course-week-v58 {
  display: grid;
  grid-template-columns: 58px 86px minmax(0, 1fr) minmax(280px, .75fr);
  gap: 20px;
  align-items: center;
  padding: 22px;
  border-radius: 26px;
  background: rgba(255,255,255,.035);
  border: 1px solid rgba(255,255,255,.085);
  box-shadow: 0 18px 46px rgba(0,0,0,.18);
}

.course-week-number-v58 {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #031126;
  background: linear-gradient(90deg, #35e1ff, #49a7ff);
  font-weight: 950;
  font-size: 1.1rem;
}

.course-week-icon-v58 {
  width: 78px;
  height: 78px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  color: #28dcff;
  background: rgba(0, 190, 255, .08);
  border: 1px solid rgba(72, 218, 255, .22);
  font-size: 2rem;
}

.course-week-main-v58 h3 {
  margin: 0 0 10px;
  font-size: clamp(1.25rem, 1.9vw, 1.8rem);
  line-height: 1.1;
  letter-spacing: -.045em;
}

.course-week-main-v58 p {
  margin: 0;
  color: rgba(222, 238, 255, .74);
  line-height: 1.48;
}

.course-week-result-v58 {
  margin-top: 12px;
  display: inline-flex;
  gap: 8px;
  align-items: center;
  padding: 9px 12px;
  border-radius: 999px;
  color: rgba(240, 250, 255, .92);
  background: rgba(0, 190, 255, .07);
  border: 1px solid rgba(72, 218, 255, .15);
  font-weight: 800;
  font-size: .88rem;
}

.course-week-result-v58 i {
  color: #35e1ff;
}

.course-week-sessions-v58 {
  display: grid;
  gap: 12px;
  padding-left: 20px;
  border-left: 1px solid rgba(255,255,255,.10);
}

.course-week-sessions-v58 div {
  display: grid;
  grid-template-columns: 22px 1fr;
  color: rgba(234, 245, 255, .86);
  line-height: 1.35;
  font-weight: 800;
}

.course-week-sessions-v58 i {
  color: #2fdcff;
  font-size: 1.2rem;
}

.course-week-green .course-week-number-v58,
.course-flow-green > span { background: linear-gradient(90deg, #59e673, #1ac46c); }
.course-week-purple .course-week-number-v58,
.course-flow-purple > span { background: linear-gradient(90deg, #b565ff, #7c35ff); }
.course-week-orange .course-week-number-v58,
.course-flow-orange > span { background: linear-gradient(90deg, #ff9b2f, #ff682e); }
.course-week-cyan .course-week-number-v58,
.course-flow-cyan > span { background: linear-gradient(90deg, #35e1ff, #1ba9bd); }

.course-sales-final-v58 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 30px clamp(30px, 5vw, 58px);
  background:
    radial-gradient(circle at 10% 0%, rgba(0, 213, 255, .18), transparent 34%),
    linear-gradient(90deg, rgba(8, 38, 82, .95), rgba(3, 18, 42, .95));
  border-top: 1px solid rgba(255,255,255,.075);
}

.course-sales-final-v58 div {
  display: flex;
  align-items: center;
  gap: 18px;
}

.course-sales-final-v58 i {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #031126;
  background: linear-gradient(90deg, #35e1ff, #49a7ff);
  font-size: 1.6rem;
}

.course-sales-final-v58 strong {
  max-width: 780px;
  font-size: clamp(1.3rem, 2vw, 2rem);
  line-height: 1.12;
  letter-spacing: -.04em;
}

@media (max-width: 1180px) {
  .course-sales-hero-v58 {
    grid-template-columns: 1fr;
  }

  .course-sales-stats-v58 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .course-route-flow-v58 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .course-route-flow-v58::before {
    display: none;
  }

  .course-flow-card-v58:nth-child(even) {
    transform: none;
  }

  .course-week-v58 {
    grid-template-columns: 54px 72px 1fr;
  }

  .course-week-sessions-v58 {
    grid-column: 3;
    padding-left: 0;
    border-left: 0;
    border-top: 1px solid rgba(255,255,255,.10);
    padding-top: 14px;
  }
}


.course-checkout-coupon-v74::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 42%;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  border: 2px solid rgba(83, 237, 255, .55);
  transform: translate(-50%, -50%) scale(.2);
  opacity: 0;
  pointer-events: none;
  z-index: 3;
}

.course-checkout-coupon-v74.coupon-celebrated-v75::after {
  animation: couponBurstRingV75 1s ease-out both;
}

@keyframes couponBurstRingV75 {
  0% { opacity: 0; transform: translate(-50%, -50%) scale(.2); }
  15% { opacity: .85; }
  100% { opacity: 0; transform: translate(-50%, -50%) scale(13); }
}

@media (max-width: 720px) {
  .course-sales-container-v58 {
    width: min(100%, calc(100% - 24px));
  }

  .course-sales-shell-v58 {
    border-radius: 26px;
  }

  .course-sales-hero-v58,
  .course-sales-route-v58 {
    padding: 22px;
  }

  .course-sales-copy-v58 h1 {
    font-size: clamp(2.6rem, 12vw, 4rem);
  }

  .course-sales-stats-v58,
  .course-route-flow-v58 {
    grid-template-columns: 1fr;
  }

  .course-week-v58 {
    grid-template-columns: 44px 1fr;
    gap: 14px;
  }

  .course-week-icon-v58 {
    display: none;
  }

  .course-week-main-v58,
  .course-week-sessions-v58 {
    grid-column: 2;
  }

  .course-week-result-v58 {
    border-radius: 16px;
    align-items: flex-start;
  }

  .course-sales-final-v58 {
    display: grid;
    padding: 24px;
  }

  .course-sales-final-v58 div {
    align-items: flex-start;
  }

  .course-sales-final-v58 .btn {
    width: 100%;
  }
}


/* V60: logos oficiales/remotos donde aplica en ruta y temario */
.course-logo-img-v60 {
  width: 70px;
  height: 70px;
  object-fit: contain;
  display: block;
  margin: 26px auto 14px;
  padding: 10px;
  border-radius: 24px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(72, 218, 255, .24);
  box-shadow: 0 0 28px rgba(0, 200, 255, .14);
}

.course-week-icon-v58 .course-logo-img-v60 {
  width: 78px;
  height: 78px;
  margin: 0;
  padding: 10px;
  border-radius: 24px;
}

.course-logo-karate-v60 {
  background: rgba(5, 15, 32, .96);
}

.course-logo-img-v60 + h3 {
  margin-top: 0;
}

@media (max-width: 720px) {
  .course-logo-img-v60 {
    width: 58px;
    height: 58px;
    margin: 0;
    border-radius: 18px;
  }
}


/* V61: Ruta/temario más visible y logos con fallback */
.course-sales-v58 {
  padding-top: clamp(72px, 7vw, 104px) !important;
}

.course-sales-container-v58 {
  width: min(1360px, calc(100% - 36px)) !important;
}

.course-sales-shell-v58 {
  border-color: rgba(83, 211, 255, .30) !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 208, 255, .16), transparent 32%),
    radial-gradient(circle at 86% 8%, rgba(88, 115, 255, .16), transparent 30%),
    linear-gradient(180deg, rgba(8, 35, 74, .96), rgba(3, 16, 38, .98)) !important;
}

.course-route-heading-v58 {
  scroll-margin-top: 120px;
}

.course-route-heading-v58 h2 {
  max-width: 980px !important;
  font-size: clamp(2.3rem, 4.3vw, 5rem) !important;
  line-height: .96 !important;
  color: #f4f8ff !important;
  text-shadow: 0 12px 34px rgba(0,0,0,.24);
}

.course-route-heading-v58 span {
  color: #6eefff !important;
  text-shadow: 0 0 24px rgba(0, 220, 255, .25);
}

.course-route-flow-v58 {
  gap: 18px !important;
  margin-bottom: 42px !important;
}

.course-flow-card-v58 {
  min-height: 218px !important;
  padding: 20px 16px !important;
  background:
    radial-gradient(circle at 50% 12%, rgba(72, 219, 255, .18), transparent 36%),
    linear-gradient(180deg, rgba(13, 47, 95, .98), rgba(5, 23, 52, .98)) !important;
  border-color: rgba(84, 215, 255, .30) !important;
  box-shadow:
    0 22px 54px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.055) !important;
}

.course-flow-card-v58 h3 {
  color: #ffffff !important;
  font-size: 1.08rem !important;
  font-weight: 950 !important;
}

.course-flow-card-v58 p {
  color: rgba(226, 244, 255, .86) !important;
  font-weight: 700 !important;
}

.course-week-v58 {
  background:
    radial-gradient(circle at 0% 0%, rgba(61, 209, 255, .105), transparent 34%),
    linear-gradient(180deg, rgba(10, 38, 78, .93), rgba(5, 22, 50, .96)) !important;
  border-color: rgba(104, 211, 255, .23) !important;
  box-shadow:
    0 22px 58px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.05) !important;
}

.course-week-main-v58 h3 {
  color: #ffffff !important;
  font-weight: 950 !important;
}

.course-week-main-v58 p {
  color: rgba(232, 244, 255, .86) !important;
  font-size: .99rem !important;
}

.course-week-sessions-v58 {
  border-left-color: rgba(96, 218, 255, .18) !important;
}

.course-week-sessions-v58 div {
  color: rgba(244, 250, 255, .94) !important;
  font-size: .96rem !important;
}

.course-week-result-v58 {
  color: #effcff !important;
  background: rgba(0, 204, 255, .12) !important;
  border-color: rgba(78, 222, 255, .28) !important;
}

.course-sales-final-v58 {
  background:
    radial-gradient(circle at 8% 0%, rgba(0, 213, 255, .25), transparent 36%),
    linear-gradient(90deg, rgba(11, 55, 111, .98), rgba(4, 22, 52, .98)) !important;
}

/* Logos oficiales/remotos con fallback visible si algún SVG externo no carga */
.course-logo-wrap-v61 {
  width: 70px;
  height: 70px;
  display: grid;
  place-items: center;
  margin: 26px auto 14px;
  border-radius: 24px;
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(72, 218, 255, .24);
  box-shadow: 0 0 30px rgba(0, 200, 255, .16);
  overflow: hidden;
}

.course-logo-wrap-v61 .course-logo-img-v60 {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 10px !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.course-logo-fallback-v61 {
  display: none;
  width: 100%;
  height: 100%;
  place-items: center;
  color: #04172f;
  font-size: 1.28rem;
  font-weight: 950;
  letter-spacing: -.04em;
}

.course-logo-wrap-karate-v61 {
  background: rgba(5, 15, 32, .98);
}

.course-logo-wrap-karate-v61 .course-logo-fallback-v61 {
  color: #6fffe0;
}

.course-week-icon-v58 .course-logo-wrap-v61 {
  width: 78px;
  height: 78px;
  margin: 0;
}

@media (max-width: 1180px) {
  .course-sales-v58 {
    padding-top: 82px !important;
  }

  .course-route-flow-v58 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  .course-sales-v58 {
    padding-top: 62px !important;
  }

  .course-route-heading-v58 h2 {
    font-size: clamp(2.25rem, 11vw, 3.7rem) !important;
  }

  .course-flow-card-v58 {
    min-height: auto !important;
  }

  .course-logo-wrap-v61 {
    width: 58px;
    height: 58px;
    margin: 0;
    border-radius: 18px;
  }

  .course-week-sessions-v58 {
    border-left: 0 !important;
  }
}


/* V62: Landing híbrida — hero oscuro + ruta/temario claro para mejor lectura y logos */
.course-sales-v58 {
  padding-top: clamp(76px, 7vw, 108px) !important;
  background:
    radial-gradient(circle at 12% 10%, rgba(0, 210, 255, .14), transparent 30%),
    radial-gradient(circle at 85% 10%, rgba(84, 116, 255, .14), transparent 31%),
    linear-gradient(90deg, rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.026) 1px, transparent 1px),
    linear-gradient(135deg, #020b1a, #031a39 56%, #031126) !important;
  background-size: auto, auto, 58px 58px, 58px 58px, auto !important;
}

.course-sales-shell-v58 {
  overflow: hidden !important;
  border-color: rgba(91, 210, 255, .26) !important;
  background: transparent !important;
  box-shadow: 0 36px 110px rgba(0,0,0,.36) !important;
}

/* Top oscuro premium */
.course-sales-hero-v58 {
  background:
    radial-gradient(circle at 15% 0%, rgba(0, 210, 255, .16), transparent 34%),
    radial-gradient(circle at 88% 8%, rgba(95, 113, 255, .16), transparent 34%),
    linear-gradient(180deg, rgba(8, 34, 74, .98), rgba(4, 18, 43, .98)) !important;
  border-bottom: 0 !important;
}

.course-sales-copy-v58 h1 {
  color: #f3f8ff !important;
  text-shadow: 0 18px 44px rgba(0,0,0,.26);
}

.course-sales-copy-v58 > p {
  color: rgba(225, 240, 255, .82) !important;
}

/* Ruta y temario en fondo claro */
.course-sales-route-v58 {
  position: relative;
  background:
    radial-gradient(circle at 8% 5%, rgba(22, 144, 255, .10), transparent 30%),
    radial-gradient(circle at 95% 0%, rgba(0, 214, 255, .10), transparent 32%),
    linear-gradient(90deg, rgba(20, 60, 120, .045) 1px, transparent 1px),
    linear-gradient(rgba(20, 60, 120, .045) 1px, transparent 1px),
    linear-gradient(180deg, #f7fbff 0%, #edf5ff 100%) !important;
  background-size: auto, auto, 42px 42px, 42px 42px, auto !important;
  color: #071833 !important;
  border-top: 1px solid rgba(9, 38, 86, .08);
}

.course-sales-route-v58::before {
  content: "";
  position: absolute;
  inset: -12px;
  pointer-events: none;
  background:
    radial-gradient(circle at 88% 10%, rgba(9, 102, 255, .08), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.45), transparent 28%);
}

.course-sales-route-v58 > * {
  position: relative;
  z-index: 1;
}

.course-route-heading-v58 span {
  color: #076df5 !important;
  text-shadow: none !important;
}

.course-route-heading-v58 h2 {
  color: #061431 !important;
  max-width: 980px !important;
  text-shadow: none !important;
}

/* Cards superiores de ruta: claras, con color y sombras suaves */
.course-route-flow-v58::before {
  background: linear-gradient(90deg, rgba(35, 100, 255, .18), rgba(0, 170, 255, .72), rgba(31, 210, 170, .72)) !important;
  box-shadow: 0 10px 30px rgba(0, 115, 255, .18) !important;
}

.course-flow-card-v58 {
  color: #071833 !important;
  background:
    radial-gradient(circle at 50% 12%, rgba(0, 166, 255, .10), transparent 35%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,252,255,.96)) !important;
  border-color: rgba(30, 108, 210, .16) !important;
  box-shadow:
    0 18px 42px rgba(15, 55, 110, .13),
    inset 0 1px 0 rgba(255,255,255,.85) !important;
}

.course-flow-card-v58 h3 {
  color: #071833 !important;
  text-shadow: none !important;
}

.course-flow-card-v58 p {
  color: #415575 !important;
  font-weight: 750 !important;
}

/* Iconos/logos sobre fondo blanco */
.course-flow-card-v58 i,
.course-week-icon-v58 {
  color: #0871f2 !important;
  background: #ffffff !important;
  border-color: rgba(8, 113, 242, .18) !important;
  box-shadow: 0 12px 28px rgba(15, 81, 168, .10) !important;
}

.course-logo-wrap-v61,
.course-logo-img-v60 {
  background: #ffffff !important;
}

/* Temario semanal claro */
.course-week-v58 {
  color: #071833 !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(0, 178, 255, .08), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,252,255,.98)) !important;
  border-color: rgba(24, 90, 170, .14) !important;
  box-shadow:
    0 18px 46px rgba(15, 55, 110, .12),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.course-week-main-v58 h3 {
  color: #071833 !important;
  text-shadow: none !important;
}

.course-week-main-v58 p {
  color: #334765 !important;
  font-weight: 650 !important;
}

.course-week-sessions-v58 {
  border-left-color: rgba(22, 90, 170, .14) !important;
}

.course-week-sessions-v58 div {
  color: #14284a !important;
  font-weight: 850 !important;
}

.course-week-sessions-v58 i {
  color: #0871f2 !important;
}

.course-week-result-v58 {
  color: #06264d !important;
  background: rgba(0, 164, 255, .08) !important;
  border-color: rgba(8, 113, 242, .18) !important;
}

.course-week-result-v58 i {
  color: #0a83ff !important;
}

/* Acentos de color en modo claro */
.course-week-green .course-week-number-v58,
.course-flow-green > span {
  background: linear-gradient(90deg, #2fd66f, #12b65c) !important;
  color: #031126 !important;
}

.course-week-purple .course-week-number-v58,
.course-flow-purple > span {
  background: linear-gradient(90deg, #b565ff, #7c35ff) !important;
  color: #ffffff !important;
}

.course-week-orange .course-week-number-v58,
.course-flow-orange > span {
  background: linear-gradient(90deg, #ff9b2f, #ff682e) !important;
  color: #071833 !important;
}

.course-week-cyan .course-week-number-v58,
.course-flow-cyan > span {
  background: linear-gradient(90deg, #35e1ff, #1ba9bd) !important;
  color: #031126 !important;
}

/* CTA final claro/azul, separado del footer oscuro */
.course-sales-final-v58 {
  background:
    radial-gradient(circle at 8% 0%, rgba(0, 213, 255, .18), transparent 34%),
    linear-gradient(90deg, #06366f, #031a39) !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
}

.course-sales-final-v58 strong {
  color: #f4fbff !important;
}

/* Mejor comportamiento responsive */
@media (max-width: 1180px) {
  .course-sales-route-v58 {
    padding-inline: clamp(22px, 4vw, 42px) !important;
  }
}

@media (max-width: 720px) {
  .course-sales-v58 {
    padding-top: 64px !important;
  }

  .course-sales-route-v58 {
    padding: 24px 18px !important;
  }

  .course-week-v58 {
    border-radius: 22px !important;
  }

  .course-week-main-v58,
  .course-week-sessions-v58 {
    grid-column: 1 / -1 !important;
  }

  .course-week-number-v58 {
    width: 44px !important;
    height: 44px !important;
  }
}


/* V63: menos números repetidos + logos oficiales visibles */
.course-flow-card-v58 > span {
  display: none !important;
}

.course-week-number-v58 {
  display: none !important;
}

/* Como quitamos el número de la fila, reajustamos la grilla del temario */
.course-week-v58 {
  grid-template-columns: 86px minmax(0, 1fr) minmax(280px, .75fr) !important;
}

/* Más aire y mejor foco visual en logos */
.course-flow-card-v58 {
  padding-top: 24px !important;
}

.course-week-icon-v58 {
  justify-self: center;
}

/* Forzamos cápsulas blancas para que los logos oficiales contrasten bien */
.course-logo-wrap-v61,
.course-logo-wrap-v61 .course-logo-img-v60,
.course-logo-img-v60 {
  background: #ffffff !important;
}

.course-logo-wrap-v61 {
  width: 82px !important;
  height: 82px !important;
  margin: 18px auto 16px !important;
  border-radius: 26px !important;
  border: 1px solid rgba(8, 113, 242, .16) !important;
  box-shadow:
    0 16px 34px rgba(15, 81, 168, .12),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.course-logo-wrap-v61 .course-logo-img-v60 {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 12px !important;
}

/* Los iconos conceptuales dejan de verse transparentes: pasan a badges sólidos */
.course-flow-card-v58 > i,
.course-week-icon-v58 > i {
  color: #071833 !important;
  background: linear-gradient(180deg, #ffffff, #edf7ff) !important;
  border: 1px solid rgba(8, 113, 242, .18) !important;
  box-shadow:
    0 14px 30px rgba(15, 81, 168, .13),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
}

.course-flow-card-v58 h3 {
  margin-top: 4px !important;
}

/* Cards de ruta más limpias sin número arriba */
.course-flow-card-v58 {
  min-height: 210px !important;
}

/* Temario en claro: más legible, menos ruido */
.course-week-v58 {
  padding: 24px 28px !important;
}

.course-week-main-v58 h3 {
  font-size: clamp(1.32rem, 1.95vw, 1.9rem) !important;
}

.course-week-sessions-v58 div {
  font-size: .98rem !important;
}

/* Si falla el SVG externo, se muestra el fallback de texto */
.course-logo-fallback-v61 {
  display: none;
  width: 100%;
  height: 100%;
  place-items: center;
  color: #061431;
  font-size: 1.25rem;
  font-weight: 950;
}

@media (max-width: 1180px) {
  .course-week-v58 {
    grid-template-columns: 76px minmax(0, 1fr) !important;
  }

  .course-week-sessions-v58 {
    grid-column: 2 !important;
  }
}

@media (max-width: 720px) {
  .course-week-v58 {
    grid-template-columns: 1fr !important;
  }

  .course-week-icon-v58 {
    justify-self: start;
  }

  .course-week-main-v58,
  .course-week-sessions-v58 {
    grid-column: 1 / -1 !important;
  }

  .course-logo-wrap-v61 {
    width: 62px !important;
    height: 62px !important;
    margin: 0 0 8px !important;
    border-radius: 18px !important;
  }
}




/* V65: sin bloque de herramientas arriba; logos oficiales solo donde aportan en la ruta */
.course-flow-card-v58 .course-logo-wrap-v61,
.course-week-icon-v58 .course-logo-wrap-v61 {
  width: 76px !important;
  height: 76px !important;
  margin: 0 auto !important;
  border-radius: 22px !important;
  background: #ffffff !important;
  border: 1px solid rgba(8, 113, 242, .16) !important;
  box-shadow: 0 14px 30px rgba(7, 24, 51, .08), inset 0 1px 0 rgba(255,255,255,.98) !important;
}

.course-flow-card-v58 .course-logo-img-v60,
.course-week-icon-v58 .course-logo-img-v60 {
  padding: 12px !important;
  object-fit: contain !important;
}

.course-flow-card-v58 > i,
.course-week-icon-v58 > i {
  width: 76px;
  height: 76px;
  display: grid;
  place-items: center;
  margin: 0 auto;
  border-radius: 22px;
  background: #fff;
  color: #1167ff !important;
  border: 1px solid rgba(8, 113, 242, .16);
  box-shadow: 0 14px 30px rgba(7, 24, 51, .08), inset 0 1px 0 rgba(255,255,255,.98);
  font-size: 2rem !important;
}

.course-flow-card-v58 h3,
.course-flow-card-v58 p {
  max-width: 100%;
}

.course-flow-card-v58 {
  gap: 14px;
}

.course-week-icon-v58 {
  flex: 0 0 96px !important;
}

.course-logo-fallback-v61 {
  font-weight: 900 !important;
  color: #061b3d !important;
}

.course-logo-wrap-jenkins-v61,
.course-logo-wrap-playwright-v61,
.course-logo-wrap-jmeter-v61,
.course-logo-wrap-karate-v61 {
  background: #ffffff !important;
}

@media (max-width: 720px) {
  .course-flow-card-v58 .course-logo-wrap-v61,
  .course-week-icon-v58 .course-logo-wrap-v61,
  .course-flow-card-v58 > i,
  .course-week-icon-v58 > i {
    width: 62px;
    height: 62px;
    border-radius: 18px;
  }
}


/* V66: ruta superior con contenido más vendedor y distinto al detalle */
.course-route-flow-v58 {
  align-items: stretch;
}

.course-flow-card-v58 {
  min-height: 230px !important;
  padding: 22px 16px 18px !important;
}

.course-flow-card-v58 > i,
.course-flow-card-v58 .course-logo-wrap-v61 {
  margin-top: 20px !important;
  margin-bottom: 14px !important;
}

.course-flow-card-v58 h3 {
  font-size: 1.12rem !important;
  line-height: 1.12 !important;
  letter-spacing: -.02em;
  min-height: 2.3em;
  display: grid;
  place-items: center;
}

.course-flow-card-v58 p {
  font-size: .92rem !important;
  line-height: 1.42 !important;
  max-width: 22ch;
  margin-inline: auto;
}

.course-flow-card-v58 > i {
  background: #ffffff !important;
  border-color: rgba(8, 113, 242, .14) !important;
  box-shadow: 0 18px 36px rgba(6, 27, 61, .12), inset 0 1px 0 rgba(255,255,255,.96) !important;
}

.course-flow-blue > i { color: #1b6dff !important; }
.course-flow-green > i { color: #1db954 !important; }
.course-flow-purple > i { color: #7d4dff !important; }
.course-flow-orange > i { color: #ff7a1a !important; }
.course-flow-cyan > i { color: #12b5cb !important; }

@media (max-width: 720px) {
  .course-flow-card-v58 {
    min-height: auto !important;
  }
  .course-flow-card-v58 h3 {
    min-height: 0;
  }
  .course-flow-card-v58 p {
    max-width: 28ch;
  }
}


/* V67: ruta del curso incrustada como imagen en la landing */
.course-route-image-v67 {
  margin-bottom: clamp(28px, 4vw, 46px);
  border-radius: 30px;
  overflow: hidden;
  background: #f7fbff;
  border: 1px solid rgba(24, 90, 170, .14);
  box-shadow:
    0 22px 56px rgba(15, 55, 110, .14),
    inset 0 1px 0 rgba(255,255,255,.95);
}

.course-route-image-v67 picture,
.course-route-image-v67 img {
  display: block;
  width: 100%;
}

.course-route-image-v67 img {
  height: auto;
  object-fit: contain;
}

@media (max-width: 760px) {
  .course-route-image-v67 {
    border-radius: 22px;
    margin-bottom: 26px;
  }
}


/* V68: temario visual como imagen debajo de la ruta */
.course-temario-image-v68 {
  margin-top: clamp(22px, 3vw, 36px);
  border-radius: 30px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid rgba(24, 90, 170, .14);
  box-shadow:
    0 24px 60px rgba(15, 55, 110, .14),
    inset 0 1px 0 rgba(255,255,255,.96);
}

.course-temario-image-v68 picture,
.course-temario-image-v68 img {
  display: block;
  width: 100%;
}

.course-temario-image-v68 img {
  height: auto;
  object-fit: contain;
}

@media (max-width: 760px) {
  .course-temario-image-v68 {
    border-radius: 22px;
    margin-top: 22px;
  }
}


/* V69: encabezado del curso + checkout lateral más vendedor */
.course-sales-hero-v58 {
  position: relative;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 390px) !important;
  align-items: stretch !important;
  min-height: 560px;
}

.course-sales-hero-v58::before {
  content: "";
  position: absolute;
  inset: -12px;
  pointer-events: none;
  background:
    radial-gradient(circle at 26% 34%, rgba(0, 214, 255, .13), transparent 28%),
    linear-gradient(120deg, rgba(255,255,255,.045), transparent 34%);
  opacity: .9;
}

.course-sales-hero-v58 > * {
  position: relative;
  z-index: 1;
}

.course-sales-copy-v58 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.course-sales-kicker-v58 {
  box-shadow: 0 12px 30px rgba(0, 194, 255, .12);
}

.course-sales-copy-v58 h1 {
  max-width: 760px !important;
  font-size: clamp(3.6rem, 7vw, 7.2rem) !important;
  line-height: .88 !important;
  letter-spacing: -.09em !important;
}

.course-sales-copy-v58 > p {
  max-width: 760px !important;
  font-size: clamp(1.12rem, 1.42vw, 1.38rem) !important;
  color: rgba(231, 244, 255, .86) !important;
}

.course-sales-stats-v58 {
  max-width: 860px;
}

.course-sales-stats-v58 div {
  background:
    radial-gradient(circle at 15% 0%, rgba(49, 214, 255, .09), transparent 34%),
    rgba(255,255,255,.05) !important;
  border-color: rgba(116, 221, 255, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035);
}

.course-sales-stats-v58 strong {
  color: rgba(248,252,255,.96) !important;
}

/* Checkout card */
.course-checkout-v69 {
  position: relative;
  align-self: center !important;
  min-height: auto !important;
  padding: 28px !important;
  border-radius: 32px !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(38, 221, 255, .18), transparent 32%),
    linear-gradient(180deg, rgba(7, 35, 76, .96), rgba(3, 16, 38, .98)) !important;
  border-color: rgba(86, 218, 255, .25) !important;
  box-shadow:
    0 30px 80px rgba(0,0,0,.28),
    inset 0 1px 0 rgba(255,255,255,.055) !important;
}

.course-checkout-head-v69 {
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.course-checkout-head-v69 > span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #7ef3ff;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.course-checkout-head-v69 > span::before {
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #55f2a6;
  box-shadow: 0 0 0 6px rgba(85, 242, 166, .12);
}

.course-checkout-head-v69 strong {
  display: block;
  margin-top: 14px;
  color: #21dfff;
  font-size: clamp(3.4rem, 5vw, 4.6rem);
  line-height: .9;
  letter-spacing: -.08em;
  font-weight: 950;
}

.course-checkout-head-v69 p {
  margin: 10px 0 0;
  color: #ffffff;
  font-weight: 950;
}

.course-checkout-info-v69 {
  display: grid;
  gap: 10px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.course-checkout-info-v69 div {
  display: grid;
  grid-template-columns: 36px 1fr;
  grid-template-areas:
    "icon label"
    "icon value";
  gap: 2px 12px;
  align-items: center;
  padding: 0 !important;
  border: 0 !important;
}

.course-checkout-info-v69 i {
  grid-area: icon;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #29ddff;
  background: rgba(0, 194, 255, .09);
  border: 1px solid rgba(84, 220, 255, .18);
}

.course-checkout-info-v69 small {
  grid-area: label;
  color: rgba(217, 236, 255, .58);
  font-size: .76rem;
  font-weight: 900;
}

.course-checkout-info-v69 b {
  grid-area: value;
  color: rgba(248,252,255,.94);
  line-height: 1.32;
  font-size: .93rem;
}

.course-checkout-steps-v69 {
  padding: 18px 0 8px;
}

.course-checkout-steps-v69 h3 {
  margin: 0 0 14px;
  color: #f5fbff;
  font-size: 1.12rem;
  letter-spacing: -.03em;
}

.course-checkout-steps-v69 ol {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.course-checkout-steps-v69 li {
  display: grid;
  grid-template-columns: 34px 1fr;
  gap: 12px;
  align-items: start;
}

.course-checkout-steps-v69 li > span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  color: #061431;
  background: linear-gradient(90deg, #35e1ff, #49a7ff);
  font-weight: 950;
  box-shadow: 0 10px 22px rgba(0, 196, 255, .14);
}

.course-checkout-steps-v69 strong {
  display: block;
  color: #ffffff;
  font-size: .95rem;
  line-height: 1.2;
}

.course-checkout-steps-v69 small {
  display: block;
  margin-top: 3px;
  color: rgba(219, 236, 255, .67);
  line-height: 1.32;
}

.course-checkout-main-v69 {
  width: 100%;
  min-height: 54px !important;
  margin-top: 18px !important;
  font-weight: 950 !important;
  box-shadow: 0 18px 36px rgba(0, 183, 255, .18);
}

.course-checkout-note-v69 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 42px;
  margin-top: 10px;
  color: rgba(229, 245, 255, .82);
  text-decoration: none;
  font-weight: 900;
  font-size: .9rem;
  border-radius: 999px;
  transition: background .2s ease, color .2s ease;
}

.course-checkout-note-v69:hover {
  color: #ffffff;
  background: rgba(255,255,255,.055);
}

.course-checkout-note-v69 i {
  color: #2ce0ff;
}

@media (max-width: 1180px) {
  .course-sales-hero-v58 {
    grid-template-columns: 1fr !important;
    min-height: auto;
  }

  .course-checkout-v69 {
    width: min(100%, 560px);
    align-self: start !important;
  }
}

@media (max-width: 720px) {
  .course-sales-copy-v58 h1 {
    font-size: clamp(3rem, 14vw, 4.7rem) !important;
  }

  .course-checkout-v69 {
    padding: 22px !important;
    border-radius: 26px !important;
  }

  .course-checkout-head-v69 strong {
    font-size: 3.35rem;
  }
}


/* V70: checkout simple, sin pasos */
.course-checkout-simple-v70 {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.course-checkout-simple-info-v70 {
  display: grid;
  gap: 10px;
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.course-checkout-simple-info-v70 div {
  display: grid !important;
  grid-template-columns: 38px 1fr;
  grid-template-areas:
    "icon label"
    "icon value";
  gap: 2px 12px !important;
  align-items: center !important;
  padding: 12px 0 !important;
  border: 0 !important;
}

.course-checkout-simple-info-v70 i {
  grid-area: icon;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  color: #29ddff;
  background: rgba(0, 194, 255, .09);
  border: 1px solid rgba(84, 220, 255, .18);
}

.course-checkout-simple-info-v70 span {
  grid-area: label;
  color: rgba(217, 236, 255, .60);
  font-size: .76rem;
  font-weight: 900;
}

.course-checkout-simple-info-v70 strong {
  grid-area: value;
  color: rgba(248,252,255,.94);
  font-size: .95rem;
  line-height: 1.3;
}

.course-checkout-highlight-v70 {
  display: grid;
  grid-template-columns: 38px 1fr;
  gap: 12px;
  align-items: start;
  margin-top: 18px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(0, 203, 255, .08);
  border: 1px solid rgba(80, 220, 255, .16);
}

.course-checkout-highlight-v70 i {
  color: #51f2b0;
  font-size: 1.2rem;
  margin-top: 2px;
}

.course-checkout-highlight-v70 span {
  color: rgba(232, 246, 255, .78);
  font-size: .9rem;
  line-height: 1.35;
  font-weight: 750;
}

.course-checkout-simple-v70 .course-checkout-main-v69 {
  margin-top: 18px !important;
}

.course-checkout-steps-v69 {
  display: none !important;
}


/* V71: hero limpio, sin cards de métricas ni botones repetidos */
.course-sales-hero-v58 {
  min-height: 500px !important;
}

.course-sales-copy-v58 {
  justify-content: center !important;
}

.course-sales-copy-v58 h1 {
  margin-bottom: 18px !important;
}

.course-sales-copy-v58 > p {
  max-width: 820px !important;
  margin-top: 0 !important;
}

.course-checkout-simple-v70 {
  align-self: center !important;
}

/* Oculta cualquier bloque residual de acciones/métricas en el hero */
.course-sales-copy-v58 > .course-sales-stats-v58,
.course-sales-copy-v58 > .course-sales-actions-v58 {
  display: none !important;
}

@media (max-width: 1180px) {
  .course-sales-hero-v58 {
    min-height: auto !important;
  }
}


/* V72: encabezado y checkout más limpios */
.course-sales-kicker-v58,
.course-checkout-highlight-v70 {
  display: none !important;
}

.course-sales-copy-v58 h1 {
  margin-top: 0 !important;
}

.course-checkout-simple-v70 .course-checkout-main-v69 {
  margin-top: 20px !important;
}


/* V73: checkout mínimo sin modalidad, duración ni horario */
.course-checkout-simple-info-v70 {
  display: none !important;
}

.course-checkout-simple-v70 {
  justify-content: center !important;
}

.course-checkout-simple-v70 .course-checkout-main-v69 {
  margin-top: 24px !important;
}


/* V74: cupón WEBINAR + checkout interno Culqi */
.course-checkout-coupon-v74 {
  justify-content: center !important;
}

.course-coupon-box-v74 {
  padding: 18px 0;
  border-bottom: 1px solid rgba(255,255,255,.09);
}

.course-coupon-box-v74 label {
  display: block;
  margin-bottom: 9px;
  color: #7ef3ff;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.course-coupon-row-v74 {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
}

.course-coupon-row-v74 input {
  width: 100%;
  min-height: 46px;
  border-radius: 15px;
  border: 1px solid rgba(84, 220, 255, .20);
  background: rgba(255,255,255,.055);
  color: #ffffff;
  padding: 0 14px;
  font-weight: 850;
  outline: none;
}

.course-coupon-row-v74 input::placeholder {
  color: rgba(218, 237, 255, .42);
}

.course-coupon-row-v74 input:focus {
  border-color: rgba(47, 220, 255, .55);
  box-shadow: 0 0 0 4px rgba(0, 206, 255, .10);
}

.course-coupon-row-v74 button {
  min-height: 46px;
  border: 0;
  border-radius: 15px;
  padding: 0 16px;
  cursor: pointer;
  font-weight: 950;
  color: #031126;
  background: linear-gradient(90deg, #35e1ff, #49a7ff);
}

.course-coupon-box-v74 small {
  display: block;
  margin-top: 9px;
  color: rgba(228, 242, 255, .70);
  line-height: 1.32;
}

.course-coupon-box-v74 small.is-success {
  color: #6ff2b7;
}

.course-coupon-box-v74 small.is-error {
  color: #ffb4b4;
}

.course-price-summary-v74 {
  display: grid;
  gap: 10px;
  padding: 18px 0 4px;
}

.course-price-summary-v74 div {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  padding: 0 !important;
  border: 0 !important;
}

.course-price-summary-v74 span {
  color: rgba(219, 237, 255, .66);
  font-weight: 800;
}

.course-price-summary-v74 strong {
  color: #ffffff;
  font-weight: 950;
}

.course-price-summary-v74 .discount-line strong {
  color: #6ff2b7;
}

.course-price-summary-v74 .total-line {
  margin-top: 6px;
  padding-top: 14px !important;
  border-top: 1px solid rgba(255,255,255,.09) !important;
}

.course-price-summary-v74 .total-line span {
  color: #ffffff;
}

.course-price-summary-v74 .total-line strong {
  color: #21dfff;
  font-size: 1.5rem;
}

/* Checkout interno */
.checkout-page-v74 {
  padding: clamp(58px, 6vw, 92px) 0;
  background:
    radial-gradient(circle at 12% 10%, rgba(0, 210, 255, .12), transparent 30%),
    radial-gradient(circle at 84% 6%, rgba(76, 132, 255, .13), transparent 32%),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(135deg, #020b1a, #031a39 55%, #031126);
  background-size: auto, auto, 58px 58px, 58px 58px, auto;
}

.checkout-container-v74 {
  width: min(1120px, calc(100% - 40px));
}

.checkout-shell-v74 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: clamp(24px, 4vw, 48px);
  align-items: center;
  padding: clamp(28px, 5vw, 58px);
  border-radius: 34px;
  border: 1px solid rgba(84, 197, 255, .20);
  background:
    radial-gradient(circle at 12% 0%, rgba(0, 208, 255, .12), transparent 30%),
    linear-gradient(180deg, rgba(7, 30, 64, .94), rgba(3, 16, 38, .98));
  box-shadow: 0 34px 100px rgba(0,0,0,.34);
}

.checkout-kicker-v74 {
  display: inline-flex;
  width: fit-content;
  padding: 10px 16px;
  border-radius: 999px;
  color: #7ef3ff;
  background: rgba(0, 195, 255, .08);
  border: 1px solid rgba(80, 220, 255, .18);
  font-size: .78rem;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .15em;
}

.checkout-copy-v74 h1 {
  margin: 22px 0 14px;
  font-size: clamp(3rem, 5.6vw, 5.8rem);
  line-height: .92;
  letter-spacing: -.08em;
}

.checkout-copy-v74 p {
  max-width: 620px;
  color: rgba(225, 240, 255, .78);
  font-size: 1.1rem;
  line-height: 1.55;
}

.checkout-coupon-ok-v74 {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-top: 18px;
  padding: 12px 15px;
  border-radius: 999px;
  color: #6ff2b7;
  background: rgba(74, 240, 170, .08);
  border: 1px solid rgba(74, 240, 170, .18);
  font-weight: 900;
}

.checkout-card-v74 {
  padding: 28px;
  border-radius: 28px;
  background:
    radial-gradient(circle at 18% 0%, rgba(38, 221, 255, .14), transparent 32%),
    linear-gradient(180deg, rgba(7, 35, 76, .96), rgba(3, 16, 38, .98));
  border: 1px solid rgba(86, 218, 255, .24);
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
}

.checkout-card-v74 h2 {
  margin: 0 0 18px;
  font-size: 1.25rem;
}

.checkout-lines-v74 {
  display: grid;
  gap: 12px;
  margin-bottom: 22px;
}

.checkout-lines-v74 div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}

.checkout-lines-v74 span {
  color: rgba(219, 237, 255, .66);
  font-weight: 800;
}

.checkout-lines-v74 strong {
  color: #ffffff;
  font-weight: 950;
}

.checkout-lines-v74 .discount strong {
  color: #6ff2b7;
}

.checkout-lines-v74 .total {
  margin-top: 10px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,.10);
}

.checkout-lines-v74 .total span {
  color: #fff;
}

.checkout-lines-v74 .total strong {
  color: #21dfff;
  font-size: 1.7rem;
}

.checkout-pay-v74 {
  width: 100%;
  min-height: 54px;
}

.checkout-note-v74 {
  display: block;
  margin-top: 14px;
  color: rgba(223, 239, 255, .60);
  line-height: 1.45;
  font-size: .84rem;
}

.checkout-back-v74 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 18px;
  color: #7ef3ff;
  font-weight: 900;
}

@media (max-width: 880px) {
  .course-coupon-row-v74 {
    grid-template-columns: 1fr;
  }

  .checkout-shell-v74 {
    grid-template-columns: 1fr;
  }
}


/* V75: info del curso a la izquierda + celebración al aplicar cupón */
.course-hero-info-v75 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
  max-width: 860px;
}

.course-hero-info-v75 span {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 40px;
  padding: 9px 13px;
  border-radius: 999px;
  color: rgba(239, 250, 255, .92);
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(94, 218, 255, .15);
  font-size: .88rem;
  font-weight: 900;
  line-height: 1.2;
}

.course-hero-info-v75 i {
  color: #2ce0ff;
  font-size: 1rem;
}

.course-checkout-head-v75 > span::before {
  display: none !important;
}

.course-checkout-head-v75 > span {
  color: #7ef3ff;
}

.course-checkout-head-v75 {
  padding-bottom: 20px;
}

.course-checkout-head-v75 strong {
  margin-top: 10px !important;
}

/* Celebración cupón */
.course-checkout-coupon-v74 {
  overflow: hidden;
}

.course-confetti-v75 {
  position: absolute;
  inset: -12px;
  pointer-events: none;
  overflow: hidden;
  border-radius: inherit;
  z-index: 4;
}

.course-confetti-v75 span {
  position: absolute;
  left: 50%;
  top: 56%;
  width: 12px;
  height: 20px;
  border-radius: 3px;
  background: var(--c);
  opacity: 0;
  transform: translate(-50%, -50%) rotate(0deg);
}

.course-confetti-v75 span.is-circle {
  width: 14px;
  height: 14px;
  border-radius: 999px;
}

.course-confetti-v75.is-active span {
  animation: couponConfettiV75 1.5s cubic-bezier(.16,.84,.22,1) var(--d) forwards;
}

@keyframes couponConfettiV75 {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) scale(.35) rotate(0deg);
  }
  14% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--x)), calc(-50% + var(--y))) scale(1.12) rotate(var(--r));
  }
}

.coupon-celebrated-v75 {
  animation: couponCardPulseV75 1.05s ease both;
}

@keyframes couponCardPulseV75 {
  0% {
    box-shadow:
      0 30px 80px rgba(0,0,0,.28),
      inset 0 1px 0 rgba(255,255,255,.055);
  }
  38% {
    box-shadow:
      0 30px 90px rgba(0,0,0,.32),
      0 0 0 10px rgba(87, 242, 183, .18),
      0 0 90px rgba(53, 225, 255, .34),
      inset 0 1px 0 rgba(255,255,255,.08);
  }
  100% {
    box-shadow:
      0 30px 80px rgba(0,0,0,.28),
      inset 0 1px 0 rgba(255,255,255,.055);
  }
}

.course-coupon-box-v74 small.is-success::after {
  content: " 🎉";
}

@media (max-width: 720px) {
  .course-hero-info-v75 {
    display: grid;
  }

  .course-hero-info-v75 span {
    border-radius: 16px;
  }
}


/* V77: badges del hero más brillantes + inicio/horario corregidos */
.course-hero-info-v77 {
  gap: 12px !important;
  margin-top: 28px !important;
}

.course-hero-info-v77 span {
  position: relative;
  overflow: hidden;
  min-height: 46px !important;
  padding: 11px 16px !important;
  color: #f6fdff !important;
  background:
    radial-gradient(circle at 16% 0%, rgba(73, 232, 255, .22), transparent 34%),
    linear-gradient(180deg, rgba(11, 53, 103, .78), rgba(4, 22, 52, .72)) !important;
  border: 1px solid rgba(90, 233, 255, .48) !important;
  box-shadow:
    0 0 0 1px rgba(88, 218, 255, .08),
    0 0 18px rgba(35, 218, 255, .18),
    inset 0 1px 0 rgba(255,255,255,.13) !important;
  text-shadow: 0 0 14px rgba(108, 237, 255, .22);
  font-size: .94rem !important;
  letter-spacing: .01em;
}

.course-hero-info-v77 span::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.18) 45%, transparent 70%);
  transform: translateX(-140%);
  animation: heroBadgeShineV77 3.2s ease-in-out infinite;
}

.course-hero-info-v77 span:nth-child(2)::before {
  animation-delay: .35s;
}

.course-hero-info-v77 span:nth-child(3)::before {
  animation-delay: .7s;
}

.course-hero-info-v77 i {
  position: relative;
  z-index: 1;
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #061431 !important;
  background: linear-gradient(90deg, #35e1ff, #62f2b0);
  box-shadow: 0 0 20px rgba(53, 225, 255, .38);
}

@keyframes heroBadgeShineV77 {
  0%, 52% { transform: translateX(-140%); }
  72%, 100% { transform: translateX(140%); }
}

@media (max-width: 720px) {
  .course-hero-info-v77 span {
    border-radius: 18px !important;
  }
}


/* V79: checkout limpio */
.course-coupon-box-v74 small:empty {
  display: none !important;
}

.course-checkout-note-v69 {
  display: none !important;
}

.course-price-summary-v74 .discount-line span,
.checkout-lines-v74 .discount span {
  color: rgba(219, 237, 255, .72);
}


/* V80: sección final con video + botón comprar ahora */
.course-video-cta-v80 {
  margin-top: clamp(28px, 4vw, 46px);
  padding: clamp(22px, 4vw, 40px);
  border-radius: 34px;
  background:
    radial-gradient(circle at 14% 0%, rgba(0, 210, 255, .14), transparent 32%),
    radial-gradient(circle at 86% 12%, rgba(98, 242, 176, .10), transparent 30%),
    linear-gradient(180deg, rgba(6, 39, 84, .96), rgba(3, 18, 43, .98));
  border: 1px solid rgba(90, 220, 255, .22);
  box-shadow:
    0 28px 70px rgba(7, 24, 51, .18),
    inset 0 1px 0 rgba(255,255,255,.08);
}

.course-video-copy-v80 {
  max-width: 860px;
  margin-bottom: 22px;
}

.course-video-copy-v80 span {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 12px;
  color: #7ef3ff;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.course-video-copy-v80 h2 {
  margin: 0;
  max-width: 860px;
  color: #f5fbff;
  font-size: clamp(2rem, 3.4vw, 3.4rem);
  line-height: 1.02;
  letter-spacing: -.06em;
}

.course-video-copy-v80 p {
  margin: 14px 0 0;
  max-width: 780px;
  color: rgba(226, 242, 255, .74);
  font-size: 1.02rem;
  line-height: 1.55;
}

.course-video-frame-v80 {
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  aspect-ratio: 16 / 9;
  background:
    radial-gradient(circle at 52% 45%, rgba(50, 225, 255, .20), transparent 28%),
    linear-gradient(135deg, rgba(2, 14, 34, .96), rgba(5, 43, 95, .96));
  border: 1px solid rgba(92, 220, 255, .22);
  box-shadow:
    0 24px 60px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.08);
}

.course-video-frame-v80::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .65;
}

.course-video-placeholder-v80 {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 24px;
}

.course-video-placeholder-v80 button {
  width: clamp(76px, 9vw, 112px);
  height: clamp(76px, 9vw, 112px);
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 999px;
  color: #061431;
  cursor: pointer;
  background: linear-gradient(90deg, #35e1ff, #62f2b0);
  box-shadow:
    0 0 0 12px rgba(53, 225, 255, .10),
    0 24px 60px rgba(0, 210, 255, .28);
}

.course-video-placeholder-v80 button i {
  font-size: clamp(2.4rem, 4vw, 3.4rem);
  transform: translateX(3px);
}

.course-video-placeholder-v80 div {
  margin-top: 18px;
}

.course-video-placeholder-v80 strong {
  display: block;
  color: #ffffff;
  font-size: clamp(1.25rem, 2.4vw, 2rem);
  letter-spacing: -.04em;
}

.course-video-placeholder-v80 span {
  display: block;
  margin-top: 6px;
  color: rgba(225, 240, 255, .72);
  font-weight: 800;
}

.course-video-buy-v80 {
  width: min(100%, 360px);
  min-height: 58px;
  margin: 24px auto 0;
  display: flex !important;
  justify-content: center;
  font-weight: 950 !important;
  box-shadow: 0 18px 42px rgba(0, 183, 255, .22);
}

@media (max-width: 760px) {
  .course-video-cta-v80 {
    border-radius: 26px;
  }
  .course-video-frame-v80 {
    border-radius: 22px;
  }
  .course-video-buy-v80 {
    width: 100%;
  }
}


/* V81: CTA final de video más fuerte, ancho completo y directo a compra */
.course-video-cta-v81 {
  padding-bottom: clamp(28px, 4vw, 46px) !important;
}

.course-video-cta-v81 .course-video-copy-v80 h2 {
  max-width: 980px;
}

.course-video-final-buy-v81 {
  margin-top: 26px;
}

.course-video-buy-full-v81 {
  width: 100% !important;
  min-height: clamp(72px, 7vw, 96px) !important;
  display: flex !important;
  align-items: center;
  justify-content: space-between !important;
  gap: 18px;
  padding: 18px clamp(20px, 4vw, 34px) !important;
  border-radius: 26px !important;
  text-decoration: none !important;
  color: #031126 !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.46), transparent 28%),
    linear-gradient(90deg, #fff06b 0%, #62f2b0 42%, #35e1ff 100%) !important;
  border: 1px solid rgba(255,255,255,.38);
  box-shadow:
    0 24px 64px rgba(0, 218, 255, .26),
    0 0 0 8px rgba(53, 225, 255, .08),
    inset 0 1px 0 rgba(255,255,255,.55) !important;
  position: relative;
  overflow: hidden;
}

.course-video-buy-full-v81::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.38) 45%, transparent 72%);
  transform: translateX(-130%);
  animation: videoCtaShineV81 3s ease-in-out infinite;
}

.course-video-buy-full-v81:hover {
  transform: translateY(-3px);
  box-shadow:
    0 30px 78px rgba(0, 218, 255, .34),
    0 0 0 10px rgba(98, 242, 176, .11),
    inset 0 1px 0 rgba(255,255,255,.62) !important;
}

.course-video-buy-full-v81 span,
.course-video-buy-full-v81 strong {
  position: relative;
  z-index: 1;
}

.course-video-buy-full-v81 span {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: clamp(1.02rem, 2vw, 1.45rem);
  font-weight: 950;
  letter-spacing: -.03em;
}

.course-video-buy-full-v81 span i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #031126;
  background: rgba(255,255,255,.45);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
}

.course-video-buy-full-v81 strong {
  font-size: clamp(1.9rem, 4.5vw, 3.2rem);
  line-height: .9;
  font-weight: 950;
  letter-spacing: -.08em;
}

.course-video-final-buy-v81 small {
  display: block;
  margin-top: 12px;
  color: rgba(232, 246, 255, .72);
  text-align: center;
  font-weight: 850;
}

@keyframes videoCtaShineV81 {
  0%, 48% {
    transform: translateX(-130%);
  }
  70%, 100% {
    transform: translateX(130%);
  }
}

@media (max-width: 720px) {
  .course-video-buy-full-v81 {
    flex-direction: column;
    justify-content: center !important;
    text-align: center;
    border-radius: 22px !important;
  }

  .course-video-buy-full-v81 span {
    justify-content: center;
  }
}


/* V82: quitar mensaje inferior del CTA final */
.course-video-final-buy-v81 small {
  display: none !important;
}


/* V83: responsive final para móvil, tablet, laptop y monitor */
/* Base: evita cortes raros y asegura layout fluido */
html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

.course-sales-v58,
.course-sales-shell-v58,
.course-sales-hero-v58,
.course-sales-route-v58,
.course-video-cta-v80,
.checkout-page-v74 {
  box-sizing: border-box;
}

.course-sales-container-v58 {
  width: min(100%, 1500px) !important;
  padding-inline: clamp(16px, 2.6vw, 48px) !important;
}

.course-sales-shell-v58 {
  width: 100% !important;
}

.course-sales-copy-v58 h1 {
  overflow-wrap: balance;
}

.course-sales-copy-v58 > p,
.course-video-copy-v80 p {
  text-wrap: pretty;
}

/* Monitor grande */
@media (min-width: 1536px) {
  .course-sales-container-v58 {
    max-width: 1500px !important;
  }

  .course-sales-hero-v58 {
    grid-template-columns: minmax(0, 1fr) 400px !important;
    padding: clamp(54px, 5vw, 78px) !important;
    gap: 54px !important;
  }

  .course-sales-copy-v58 h1 {
    max-width: 830px !important;
    font-size: clamp(5.6rem, 5.7vw, 7.7rem) !important;
  }

  .course-checkout-coupon-v74 {
    max-width: 400px;
  }

  .course-route-image-v67,
  .course-temario-image-v68,
  .course-video-cta-v80 {
    max-width: 1340px;
    margin-inline: auto;
  }
}

/* Laptop / escritorio estándar */
@media (min-width: 1181px) and (max-width: 1535px) {
  .course-sales-container-v58 {
    max-width: 1320px !important;
  }

  .course-sales-hero-v58 {
    grid-template-columns: minmax(0, 1fr) 380px !important;
    gap: 38px !important;
    padding: clamp(40px, 4.2vw, 58px) !important;
  }

  .course-sales-copy-v58 h1 {
    font-size: clamp(4.25rem, 5.8vw, 6.5rem) !important;
    max-width: 760px !important;
  }

  .course-hero-info-v77 span {
    font-size: .86rem !important;
  }
}

/* Tablet horizontal y laptop pequeña */
@media (min-width: 901px) and (max-width: 1180px) {
  .course-sales-container-v58 {
    padding-inline: 24px !important;
  }

  .course-sales-hero-v58 {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding: 38px !important;
  }

  .course-sales-copy-v58 h1 {
    max-width: 820px !important;
    font-size: clamp(4rem, 8vw, 5.9rem) !important;
  }

  .course-checkout-coupon-v74 {
    width: min(100%, 620px) !important;
    justify-self: start;
  }

  .course-hero-info-v77 {
    max-width: 850px;
  }

  .course-route-image-v67,
  .course-temario-image-v68 {
    border-radius: 26px !important;
  }

  .course-video-cta-v80 {
    padding: 30px !important;
  }
}

/* Tablet vertical */
@media (min-width: 721px) and (max-width: 900px) {
  .course-sales-container-v58 {
    padding-inline: 18px !important;
  }

  .course-sales-hero-v58 {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 32px !important;
    border-radius: 28px 28px 0 0 !important;
  }

  .course-sales-copy-v58 h1 {
    font-size: clamp(3.6rem, 10vw, 5rem) !important;
    line-height: .92 !important;
    letter-spacing: -.075em !important;
  }

  .course-sales-copy-v58 > p {
    font-size: 1.02rem !important;
    max-width: 680px !important;
  }

  .course-hero-info-v77 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .course-hero-info-v77 span:last-child {
    grid-column: 1 / -1;
  }

  .course-checkout-coupon-v74 {
    width: 100% !important;
    max-width: 620px !important;
  }

  .course-sales-route-v58 {
    padding: 26px 18px 30px !important;
  }

  .course-route-image-v67,
  .course-temario-image-v68 {
    border-radius: 24px !important;
  }

  .course-video-copy-v80 h2 {
    font-size: clamp(2rem, 7vw, 3rem) !important;
  }

  .course-video-buy-full-v81 {
    min-height: 82px !important;
  }
}

/* Móvil: lectura cómoda, sin cortes. Las infografías se vuelven desplazables */
@media (max-width: 720px) {
  .site-header,
  .site-header .container {
    max-width: 100%;
  }

  .course-sales-v58 {
    padding-top: 62px !important;
  }

  .course-sales-container-v58 {
    width: 100% !important;
    padding-inline: 12px !important;
  }

  .course-sales-shell-v58 {
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  .course-sales-hero-v58 {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
    padding: 26px 18px 28px !important;
    min-height: auto !important;
  }

  .course-sales-copy-v58 h1 {
    font-size: clamp(2.82rem, 15.5vw, 4.45rem) !important;
    line-height: .91 !important;
    letter-spacing: -.075em !important;
    margin-bottom: 14px !important;
  }

  .course-sales-copy-v58 > p {
    font-size: .98rem !important;
    line-height: 1.52 !important;
  }

  .course-hero-info-v77 {
    display: grid !important;
    gap: 10px !important;
    margin-top: 20px !important;
  }

  .course-hero-info-v77 span {
    width: 100%;
    justify-content: flex-start;
    min-height: 46px !important;
    padding: 11px 13px !important;
    font-size: .86rem !important;
    white-space: normal;
  }

  .course-checkout-coupon-v74 {
    width: 100% !important;
    max-width: none !important;
    padding: 22px !important;
    border-radius: 24px !important;
  }

  .course-checkout-head-v75 strong,
  .course-checkout-head-v69 strong {
    font-size: clamp(3.2rem, 16vw, 4rem) !important;
  }

  .course-coupon-row-v74 {
    grid-template-columns: 1fr !important;
  }

  .course-coupon-row-v74 button,
  .course-checkout-main-v69 {
    width: 100%;
    min-height: 50px !important;
  }

  .course-price-summary-v74 .total-line {
    align-items: flex-start !important;
  }

  .course-sales-route-v58 {
    padding: 22px 12px 26px !important;
  }

  /* Infografías: mantienen legibilidad con scroll horizontal en móvil */
  .course-route-image-v67,
  .course-temario-image-v68 {
    overflow-x: auto !important;
    overflow-y: hidden !important;
    border-radius: 20px !important;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
  }

  .course-route-image-v67 img {
    width: auto !important;
    min-width: 760px !important;
    max-width: none !important;
    height: auto !important;
  }

  .course-temario-image-v68 img {
    width: auto !important;
    min-width: 780px !important;
    max-width: none !important;
    height: auto !important;
  }

  .course-route-image-v67::after,
  .course-temario-image-v68::after {
    content: "Desliza para ver completo →";
    position: sticky;
    left: 12px;
    bottom: 10px;
    display: inline-flex;
    margin: 8px 0 10px 12px;
    padding: 8px 12px;
    border-radius: 999px;
    color: #061431;
    background: rgba(255,255,255,.92);
    border: 1px solid rgba(8,113,242,.14);
    font-size: .78rem;
    font-weight: 950;
    box-shadow: 0 8px 20px rgba(15,55,110,.12);
  }

  .course-video-cta-v80 {
    margin-top: 24px !important;
    padding: 22px 14px !important;
    border-radius: 22px !important;
  }

  .course-video-copy-v80 h2 {
    font-size: clamp(1.75rem, 9vw, 2.6rem) !important;
    line-height: 1.04 !important;
  }

  .course-video-copy-v80 p {
    font-size: .95rem !important;
  }

  .course-video-frame-v80 {
    border-radius: 18px !important;
    aspect-ratio: 16 / 10;
  }

  .course-video-placeholder-v80 strong {
    font-size: 1.15rem !important;
  }

  .course-video-placeholder-v80 span {
    font-size: .85rem !important;
  }

  .course-video-buy-full-v81 {
    width: 100% !important;
    min-height: 88px !important;
    padding: 18px 16px !important;
  }

  .course-video-buy-full-v81 strong {
    font-size: 2.25rem !important;
  }

  .course-video-final-buy-v81 {
    margin-top: 20px !important;
  }
}

/* Móvil pequeño */
@media (max-width: 390px) {
  .course-sales-copy-v58 h1 {
    font-size: clamp(2.45rem, 14.5vw, 3.4rem) !important;
  }

  .course-checkout-coupon-v74 {
    padding: 18px !important;
  }

  .course-video-buy-full-v81 span {
    font-size: .98rem !important;
  }

  .course-video-buy-full-v81 strong {
    font-size: 2rem !important;
  }
}


/* V84: fix móvil para imágenes de ruta y temario.
   En móvil ya no se muestran recortadas con scroll horizontal:
   ahora se adaptan al ancho disponible. */
@media (max-width: 720px) {
  .course-route-image-v67,
  .course-temario-image-v68 {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    border-radius: 18px !important;
  }

  .course-route-image-v67 picture,
  .course-temario-image-v68 picture,
  .course-route-image-v67 img,
  .course-temario-image-v68 img {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    object-fit: contain !important;
  }

  .course-route-image-v67::after,
  .course-temario-image-v68::after {
    content: none !important;
    display: none !important;
  }

  .course-sales-route-v58 {
    padding-inline: 12px !important;
  }
}

/* Ajuste extra para móviles muy angostos */
@media (max-width: 390px) {
  .course-route-image-v67,
  .course-temario-image-v68 {
    border-radius: 16px !important;
  }
}


/* V85: móvil no achica infografías; usa cards HTML legibles */
.course-route-mobile-v85,
.course-temario-mobile-v85 {
  display: none;
}

/* Desktop/tablet siguen usando las imágenes bonitas */
@media (min-width: 721px) {
  .course-route-image-v67,
  .course-temario-image-v68 {
    display: block !important;
  }
}

/* Mobile: ocultamos imágenes enormes y mostramos contenido remaquetado */
@media (max-width: 720px) {
  .course-route-image-v67,
  .course-temario-image-v68 {
    display: none !important;
  }

  .course-route-mobile-v85,
  .course-temario-mobile-v85 {
    display: grid;
    gap: 14px;
  }

  .course-route-mobile-v85 {
    margin-bottom: 24px;
  }

  .course-route-mobile-card-v85 {
    display: grid;
    grid-template-columns: 42px 62px 1fr;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border-radius: 22px;
    background:
      radial-gradient(circle at 8% 0%, rgba(0, 191, 255, .10), transparent 32%),
      #ffffff;
    border: 1px solid rgba(24, 90, 170, .13);
    box-shadow: 0 14px 34px rgba(15, 55, 110, .10);
  }

  .course-route-mobile-card-v85 > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: #061431;
    font-weight: 950;
    background: linear-gradient(90deg, #35e1ff, #62f2b0);
  }

  .course-route-mobile-card-v85 > i,
  .course-route-mobile-card-v85 .course-logo-wrap-v61 {
    width: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    border-radius: 18px !important;
    background: #f8fbff !important;
    color: #0871f2 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
  }

  .course-route-mobile-card-v85 h3 {
    margin: 0;
    color: #061431;
    font-size: 1.02rem;
    line-height: 1.12;
    letter-spacing: -.025em;
  }

  .course-route-mobile-card-v85 p {
    margin: 5px 0 0;
    color: rgba(6, 20, 49, .68);
    font-size: .87rem;
    line-height: 1.32;
    font-weight: 800;
  }

  .course-temario-mobile-v85 {
    margin-top: 16px;
  }

  .course-week-mobile-v85 {
    padding: 18px;
    border-radius: 24px;
    background:
      radial-gradient(circle at 0% 0%, rgba(0, 191, 255, .10), transparent 34%),
      #ffffff;
    border: 1px solid rgba(24, 90, 170, .13);
    box-shadow: 0 16px 38px rgba(15, 55, 110, .11);
  }

  .course-week-mobile-v85 header {
    display: grid;
    grid-template-columns: 42px 58px 1fr;
    gap: 12px;
    align-items: center;
    margin-bottom: 12px;
  }

  .course-week-mobile-v85 header > span {
    width: 38px;
    height: 38px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: #061431;
    font-weight: 950;
    background: linear-gradient(90deg, #35e1ff, #62f2b0);
  }

  .course-week-mobile-v85 header > i,
  .course-week-mobile-v85 header .course-logo-wrap-v61 {
    width: 56px !important;
    height: 56px !important;
    margin: 0 !important;
    border-radius: 18px !important;
    background: #f8fbff !important;
    color: #0871f2 !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
  }

  .course-week-mobile-v85 h3 {
    margin: 0;
    color: #061431;
    font-size: 1.08rem;
    line-height: 1.12;
    letter-spacing: -.035em;
  }

  .course-week-mobile-v85 p {
    margin: 0 0 12px;
    color: rgba(6, 20, 49, .72);
    font-size: .92rem;
    line-height: 1.42;
    font-weight: 760;
  }

  .course-week-mobile-sessions-v85 {
    display: grid;
    gap: 8px;
    margin: 12px 0;
    padding: 12px;
    border-radius: 16px;
    background: rgba(8, 113, 242, .045);
    border: 1px solid rgba(8, 113, 242, .10);
  }

  .course-week-mobile-sessions-v85 div {
    display: flex;
    gap: 8px;
    color: #061431;
    font-size: .87rem;
    line-height: 1.3;
    font-weight: 850;
  }

  .course-week-mobile-sessions-v85 i {
    color: #0871f2;
    margin-top: 1px;
  }

  .course-week-mobile-v85 > strong {
    display: flex;
    gap: 8px;
    align-items: flex-start;
    padding: 10px 12px;
    border-radius: 999px;
    color: #06405f;
    background: rgba(53, 225, 255, .10);
    border: 1px solid rgba(53, 225, 255, .18);
    font-size: .84rem;
    line-height: 1.25;
  }

  .course-week-mobile-v85 > strong i {
    color: #00bfe8;
    margin-top: 1px;
  }

  .course-week-blue header > span,
  .course-flow-blue > span {
    background: linear-gradient(90deg, #35e1ff, #49a7ff);
  }

  .course-week-green header > span,
  .course-flow-green > span {
    background: linear-gradient(90deg, #62f2b0, #39d66d);
  }

  .course-week-purple header > span,
  .course-flow-purple > span {
    background: linear-gradient(90deg, #b565ff, #7d4dff);
    color: #ffffff;
  }

  .course-week-orange header > span,
  .course-flow-orange > span {
    background: linear-gradient(90deg, #ffcf4a, #ff7a1a);
  }

  .course-week-cyan header > span,
  .course-flow-cyan > span {
    background: linear-gradient(90deg, #35e1ff, #12b5cb);
  }
}

@media (max-width: 390px) {
  .course-route-mobile-card-v85,
  .course-week-mobile-v85 header {
    grid-template-columns: 38px 52px 1fr;
    gap: 9px;
  }

  .course-route-mobile-card-v85 {
    padding: 13px;
  }

  .course-route-mobile-card-v85 h3,
  .course-week-mobile-v85 h3 {
    font-size: .98rem;
  }

  .course-route-mobile-card-v85 p,
  .course-week-mobile-v85 p {
    font-size: .84rem;
  }
}


/* V86: móvil con imagen por card, no texto HTML */
@media (max-width: 720px) {
  .course-route-mobile-images-v86,
  .course-temario-mobile-images-v86 {
    display: grid !important;
    gap: 14px !important;
  }

  .course-route-mobile-images-v86 img,
  .course-temario-mobile-images-v86 img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 22px;
    box-shadow: 0 16px 38px rgba(15, 55, 110, .12);
    border: 1px solid rgba(24, 90, 170, .10);
    background: #ffffff;
  }

  .course-route-mobile-images-v86 {
    margin-bottom: 24px;
  }

  .course-temario-mobile-images-v86 {
    margin-top: 14px;
  }

  /* Apaga estilos previos de cards HTML para que no interfieran */
  .course-route-mobile-images-v86 article,
  .course-temario-mobile-images-v86 article {
    display: none !important;
  }
}

@media (max-width: 390px) {
  .course-route-mobile-images-v86 img,
  .course-temario-mobile-images-v86 img {
    border-radius: 18px;
  }
}


/* V87: imágenes móviles rehechas al tamaño real del card, sin cortes de texto */
@media (max-width: 720px) {
  .course-route-mobile-images-v86,
  .course-temario-mobile-images-v86 {
    width: 100% !important;
    max-width: 100% !important;
    gap: 12px !important;
  }

  .course-route-mobile-images-v86 img,
  .course-temario-mobile-images-v86 img {
    width: 100% !important;
    max-width: 430px !important;
    margin-inline: auto !important;
    height: auto !important;
    object-fit: contain !important;
    border-radius: 18px !important;
  }

  .course-temario-mobile-images-v86 img {
    border-radius: 20px !important;
  }
}


/* V88: móvil limpio.
   En móvil SOLO se muestran las imágenes por card.
   Se ocultan las infografías completas y cualquier card HTML anterior. */
@media (max-width: 720px) {
  /* Oculta infografías completas de desktop/tablet */
  .course-route-image-v67,
  .course-temario-image-v68 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* Oculta cualquier estructura HTML antigua por si queda cacheada/renderizada */
  .course-route-mobile-card-v85,
  .course-week-mobile-v85 {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* Muestra únicamente las imágenes por card */
  .course-route-mobile-images-v86,
  .course-temario-mobile-images-v86 {
    display: grid !important;
    visibility: visible !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 14px !important;
  }

  .course-route-mobile-images-v86 img,
  .course-temario-mobile-images-v86 img {
    display: block !important;
    visibility: visible !important;
    width: 100% !important;
    max-width: 430px !important;
    height: auto !important;
    margin-inline: auto !important;
    object-fit: contain !important;
    border-radius: 18px !important;
    background: #ffffff !important;
    box-shadow: 0 16px 38px rgba(15, 55, 110, .12) !important;
    border: 1px solid rgba(24, 90, 170, .10) !important;
  }

  .course-route-mobile-images-v86 {
    margin-bottom: 22px !important;
  }

  .course-temario-mobile-images-v86 {
    margin-top: 18px !important;
  }
}

/* Desktop/tablet: se mantienen solo las infografías completas */
@media (min-width: 721px) {
  .course-route-mobile-v85,
  .course-temario-mobile-v85,
  .course-route-mobile-images-v86,
  .course-temario-mobile-images-v86 {
    display: none !important;
  }

  .course-route-image-v67,
  .course-temario-image-v68 {
    display: block !important;
    visibility: visible !important;
    height: auto !important;
    max-height: none !important;
  }
}


/* V89: móvil real + cache busting.
   Refuerza glow y bordes en teléfono físico. */
@media (max-width: 720px) {
  .course-hero-info-v77 span {
    border-color: rgba(96, 236, 255, .72) !important;
    box-shadow:
      0 0 0 1px rgba(100, 235, 255, .18),
      0 0 22px rgba(35, 218, 255, .24),
      inset 0 1px 0 rgba(255,255,255,.18) !important;
  }

  .course-hero-info-v77 i {
    box-shadow:
      0 0 0 4px rgba(53, 225, 255, .12),
      0 0 22px rgba(53, 225, 255, .42) !important;
  }

  .course-checkout-coupon-v74 {
    border-color: rgba(86, 218, 255, .36) !important;
    box-shadow:
      0 28px 70px rgba(0,0,0,.34),
      0 0 0 1px rgba(53, 225, 255, .08),
      inset 0 1px 0 rgba(255,255,255,.07) !important;
  }

  .course-coupon-row-v74 input:focus {
    border-color: rgba(53, 225, 255, .75) !important;
    box-shadow: 0 0 0 4px rgba(53, 225, 255, .14) !important;
  }
}


/* V90: títulos móviles para Ruta y Temario */
.course-mobile-section-title-v90 {
  display: none;
}

@media (max-width: 720px) {
  .course-mobile-section-title-v90 {
    display: block !important;
    margin: 8px 2px 14px;
    padding: 18px 16px;
    border-radius: 22px;
    background:
      radial-gradient(circle at 10% 0%, rgba(53, 225, 255, .16), transparent 34%),
      linear-gradient(180deg, #ffffff, #f6fbff);
    border: 1px solid rgba(24, 90, 170, .12);
    box-shadow: 0 14px 34px rgba(15, 55, 110, .10);
  }

  .course-mobile-section-title-v90 span {
    display: inline-flex;
    width: fit-content;
    margin-bottom: 8px;
    padding: 7px 12px;
    border-radius: 999px;
    color: #061431;
    background: linear-gradient(90deg, #35e1ff, #62f2b0);
    font-size: .76rem;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .16em;
    box-shadow: 0 10px 22px rgba(0, 194, 255, .14);
  }

  .course-mobile-section-title-v90 h2 {
    margin: 0;
    color: #061431;
    font-size: clamp(1.55rem, 7vw, 2.1rem);
    line-height: 1.02;
    letter-spacing: -.055em;
    font-weight: 950;
  }

  .course-mobile-section-title-v90 p {
    margin: 8px 0 0;
    color: rgba(6, 20, 49, .68);
    font-size: .92rem;
    line-height: 1.42;
    font-weight: 760;
  }

  .course-mobile-temario-title-v90 {
    margin-top: 24px;
  }
}


/* V91: al aplicar WEBINAR se oculta el campo y botón Aplicar */
.course-checkout-coupon-v74.coupon-applied-v91 .course-coupon-row-v74 {
  display: none !important;
}

.course-checkout-coupon-v74.coupon-applied-v91 .course-coupon-box-v74 {
  padding-bottom: 14px;
}

.course-checkout-coupon-v74.coupon-applied-v91 [data-coupon-message] {
  display: block !important;
  margin-top: 0 !important;
  padding: 12px 14px;
  border-radius: 16px;
  color: #061431 !important;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  border: 1px solid rgba(255,255,255,.28);
  box-shadow: 0 14px 30px rgba(0, 216, 180, .16);
  font-weight: 950;
}

.course-checkout-coupon-v74.coupon-applied-v91 [data-coupon-message] b {
  color: #061431 !important;
}

.course-checkout-coupon-v74.coupon-applied-v91 .course-coupon-box-v74 label {
  margin-bottom: 10px;
}


/* V92: CTA final como oferta directa, sin mencionar cupón */
.course-video-cta-v81 .course-video-copy-v80 h2 {
  max-width: 960px;
}

.course-video-buy-full-v81 {
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.50), transparent 28%),
    linear-gradient(90deg, #fff06b 0%, #62f2b0 48%, #35e1ff 100%) !important;
}

.course-video-buy-full-v81 span {
  font-size: clamp(1.02rem, 2vw, 1.38rem);
}

.checkout-coupon-ok-v74 {
  color: #061431 !important;
  background: linear-gradient(90deg, #62f2b0, #35e1ff) !important;
  border-color: rgba(255,255,255,.30) !important;
}


/* V93: copy final del video + CTA de oferta más claro */
.course-video-cta-v81 .course-video-copy-v80 h2 {
  max-width: 960px;
}

.course-video-cta-v81 .course-video-copy-v80 p {
  max-width: 900px;
}

.course-video-buy-full-v81 span {
  max-width: 760px;
  line-height: 1.12;
}

@media (max-width: 720px) {
  .course-video-buy-full-v81 span {
    font-size: 1rem !important;
    line-height: 1.18;
  }
}


/* V94: CTA final más directo a compra */
.course-video-buy-full-v81 span {
  font-weight: 950 !important;
  letter-spacing: -.02em;
}

.course-video-buy-full-v81 strong {
  white-space: nowrap;
}


/* V95: Fix móvil de cards de Academia en el index.
   El problema venía de max-width 1180px:
   .academy-v39-media quedaba con min-height:100%.
   En móvil eso hacía que la imagen ocupe casi todo el card. */
@media (max-width: 760px) {
  .academia-v39 {
    padding-top: 54px !important;
  }

  .academia-v39 .academy-v39-container {
    width: min(100%, calc(100% - 22px)) !important;
  }

  .academy-v39-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .academy-v39-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  .academy-v39-media {
    aspect-ratio: auto !important;
    min-height: 0 !important;
    height: clamp(172px, 50vw, 220px) !important;
    max-height: 230px !important;
    width: 100% !important;
    flex: 0 0 auto !important;
  }

  .academy-v39-media img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    transform: none !important;
  }

  .academy-v39-card:hover .academy-v39-media img {
    transform: none !important;
  }

  .academy-v39-media-shade {
    inset: 0 !important;
    background:
      linear-gradient(180deg, rgba(2,12,28,.03), rgba(2,12,28,.46)),
      radial-gradient(circle at 80% 18%, rgba(0,203,255,.18), transparent 30%) !important;
  }

  .academy-v39-status {
    top: 12px !important;
    left: 12px !important;
    max-width: calc(100% - 24px) !important;
    padding: 8px 11px !important;
    font-size: .78rem !important;
  }

  .academy-v39-chip {
    right: 12px !important;
    bottom: 12px !important;
    padding: 8px 11px !important;
    font-size: .75rem !important;
  }

  .academy-v39-body {
    padding: 18px !important;
  }

  .academy-v39-price-row {
    margin-bottom: 14px !important;
  }

  .academy-v39-price-row strong {
    font-size: clamp(2.05rem, 9vw, 2.6rem) !important;
  }

  .academy-v39-mini-date {
    min-height: 42px !important;
    padding: 0 14px !important;
    font-size: .86rem !important;
  }

  .academy-v39-card h3 {
    font-size: clamp(1.7rem, 8vw, 2.15rem) !important;
    line-height: 1.05 !important;
    margin-bottom: 10px !important;
  }

  .academy-v39-card p {
    font-size: .94rem !important;
    line-height: 1.46 !important;
    margin-bottom: 13px !important;
  }

  .academy-v39-meta {
    margin-bottom: 14px !important;
  }

  .academy-v39-list {
    gap: 8px !important;
    margin-bottom: 18px !important;
  }

  .academy-v39-list li {
    font-size: .91rem !important;
    line-height: 1.32 !important;
  }

  .academy-v39-actions {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .academy-v39-actions .btn {
    width: 100% !important;
    min-height: 50px !important;
  }

  .academy-v39-benefits {
    margin-top: 22px !important;
    border-radius: 22px !important;
  }
}

/* Móvil pequeño */
@media (max-width: 390px) {
  .academy-v39-media {
    height: 176px !important;
  }

  .academy-v39-body {
    padding: 16px !important;
  }

  .academy-v39-card h3 {
    font-size: 1.55rem !important;
  }
}


/* V96: Servicios en formato horizontal, distinto a cards verticales de Academia */
.services-v96 {
  position: relative;
}

.services-v96-head {
  align-items: center !important;
}

.services-v96-head .section-title {
  max-width: 860px;
}

.services-v96-head .section-text {
  max-width: 650px;
}

.services-v96-list {
  display: grid;
  gap: 18px;
  margin-top: 30px;
}

.services-v96-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  padding: 24px;
  border-radius: 28px;
  background:
    radial-gradient(circle at 4% 20%, rgba(0, 217, 255, .14), transparent 28%),
    linear-gradient(180deg, rgba(10, 37, 76, .78), rgba(4, 18, 42, .90));
  border: 1px solid rgba(83, 210, 255, .24);
  box-shadow:
    0 24px 70px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.055);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.services-v96-card::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 5px;
  background: linear-gradient(180deg, #35e1ff, #62f2b0);
  opacity: .95;
}

.services-v96-card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,.055) 45%, transparent 75%);
  transform: translateX(-120%);
  transition: transform .55s ease;
}

.services-v96-card:hover {
  transform: translateY(-3px);
  border-color: rgba(67, 224, 255, .44);
  box-shadow:
    0 30px 82px rgba(0,0,0,.32),
    0 0 42px rgba(0, 210, 255, .10),
    inset 0 1px 0 rgba(255,255,255,.07);
}

.services-v96-card:hover::after {
  transform: translateX(120%);
}

.services-v96-icon {
  width: 74px;
  height: 74px;
  display: grid;
  place-items: center;
  border-radius: 24px;
  color: #33e9ff;
  background:
    radial-gradient(circle at 35% 20%, rgba(53, 225, 255, .24), transparent 48%),
    rgba(0, 179, 255, .075);
  border: 1px solid rgba(87, 222, 255, .28);
  box-shadow: 0 18px 40px rgba(0,0,0,.20), 0 0 28px rgba(0, 213, 255, .12);
  font-size: 1.75rem;
}

.services-v96-content {
  min-width: 0;
}

.services-v96-content > span {
  display: inline-flex;
  margin-bottom: 7px;
  color: #6ff7ff;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.services-v96-content h3 {
  margin: 0;
  color: #f4f8ff;
  font-size: clamp(1.65rem, 2.4vw, 2.25rem);
  line-height: 1.03;
  letter-spacing: -.055em;
}

.services-v96-content p {
  margin: 10px 0 0;
  max-width: 780px;
  color: rgba(221, 234, 250, .76);
  font-size: 1rem;
  line-height: 1.55;
}

.services-v96-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 13px;
}

.services-v96-tags small {
  display: inline-flex;
  min-height: 28px;
  align-items: center;
  padding: 0 10px;
  border-radius: 999px;
  color: rgba(235, 248, 255, .86);
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.08);
  font-size: .78rem;
  font-weight: 850;
}

.services-v96-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 158px;
  min-height: 48px;
  padding: 0 17px;
  border-radius: 999px;
  color: #061431;
  text-decoration: none;
  font-weight: 950;
  background: linear-gradient(90deg, #35e1ff, #62f2b0);
  box-shadow: 0 16px 34px rgba(0, 210, 255, .18);
  white-space: nowrap;
}

.services-v96-link:hover {
  filter: brightness(1.05);
}

.services-v96-qa::before {
  background: linear-gradient(180deg, #62f2b0, #35e1ff);
}

.services-v96-perf::before {
  background: linear-gradient(180deg, #4aa3ff, #35e1ff);
}

.services-v96-qa .services-v96-icon {
  color: #62f2b0;
  border-color: rgba(98, 242, 176, .28);
  background:
    radial-gradient(circle at 35% 20%, rgba(98, 242, 176, .20), transparent 48%),
    rgba(98, 242, 176, .065);
}

.services-v96-perf .services-v96-icon {
  color: #60b7ff;
  border-color: rgba(96, 183, 255, .30);
  background:
    radial-gradient(circle at 35% 20%, rgba(96, 183, 255, .22), transparent 48%),
    rgba(96, 183, 255, .065);
}

@media (max-width: 980px) {
  .services-v96-card {
    grid-template-columns: 74px minmax(0, 1fr);
  }

  .services-v96-link {
    grid-column: 2;
    width: fit-content;
  }
}

@media (max-width: 640px) {
  .services-v96-head {
    display: block !important;
  }

  .services-v96-list {
    gap: 14px;
    margin-top: 22px;
  }

  .services-v96-card {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 14px;
    padding: 18px;
    border-radius: 22px;
  }

  .services-v96-icon {
    width: 54px;
    height: 54px;
    border-radius: 18px;
    font-size: 1.3rem;
  }

  .services-v96-content h3 {
    font-size: 1.35rem;
  }

  .services-v96-content p {
    font-size: .92rem;
    line-height: 1.45;
  }

  .services-v96-tags {
    display: none;
  }

  .services-v96-link {
    grid-column: 1 / -1;
    width: 100%;
    min-height: 46px;
  }
}


/* V97: header de Servicios limpio, similar a Academia */
.services-v97-header {
  max-width: 980px;
  margin: 0 auto clamp(28px, 4vw, 44px);
  text-align: center;
}

.services-v97-title-line {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 18px;
  align-items: center;
  margin-bottom: 18px;
}

.services-v97-title-line > span {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(79, 219, 255, .55), transparent);
  box-shadow: 0 0 22px rgba(0, 213, 255, .20);
}

.services-v97-icon-main {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #38e8ff;
  background:
    radial-gradient(circle at 36% 18%, rgba(60, 232, 255, .25), transparent 42%),
    linear-gradient(180deg, rgba(0, 198, 255, .18), rgba(20, 91, 255, .12));
  border: 1px solid rgba(77, 218, 255, .38);
  box-shadow: 0 0 34px rgba(0, 199, 255, .18);
  font-size: 1.45rem;
}

.services-v97-header h2 {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .27em;
  font-size: clamp(2.4rem, 4vw, 4.35rem);
  line-height: 1;
  font-weight: 900;
  color: #f4f8ff;
}

.services-v96-list {
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  .services-v97-title-line {
    gap: 12px;
  }

  .services-v97-icon-main {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    font-size: 1.35rem;
  }

  .services-v97-header h2 {
    letter-spacing: .18em;
  }
}


/* V98: Servicios ampliados, sin botón Conversemos y ancho alineado a los 3 cards de Academia */
.services-v96 > .container {
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
}

.services-v98-list {
  width: 100%;
  max-width: none;
}

.services-v98-list .services-v96-card {
  grid-template-columns: 86px minmax(0, 1fr) !important;
  min-height: 178px;
}

.services-v98-list .services-v96-link {
  display: none !important;
}

.services-v98-ai::before {
  background: linear-gradient(180deg, #b565ff, #35e1ff);
}

.services-v98-devops::before {
  background: linear-gradient(180deg, #62f2b0, #4aa3ff);
}

.services-v98-agents::before {
  background: linear-gradient(180deg, #ffcf4a, #35e1ff);
}

.services-v98-ai .services-v96-icon {
  color: #b565ff;
  border-color: rgba(181, 101, 255, .32);
  background:
    radial-gradient(circle at 35% 20%, rgba(181, 101, 255, .22), transparent 48%),
    rgba(181, 101, 255, .065);
}

.services-v98-devops .services-v96-icon {
  color: #62f2b0;
  border-color: rgba(98, 242, 176, .32);
  background:
    radial-gradient(circle at 35% 20%, rgba(98, 242, 176, .20), transparent 48%),
    rgba(98, 242, 176, .065);
}

.services-v98-agents .services-v96-icon {
  color: #ffcf4a;
  border-color: rgba(255, 207, 74, .34);
  background:
    radial-gradient(circle at 35% 20%, rgba(255, 207, 74, .22), transparent 48%),
    rgba(255, 207, 74, .065);
}

@media (max-width: 1180px) {
  .services-v96 > .container {
    width: min(100% - 48px, 1200px) !important;
  }
}

@media (max-width: 980px) {
  .services-v98-list .services-v96-card {
    grid-template-columns: 74px minmax(0, 1fr) !important;
  }
}

@media (max-width: 640px) {
  .services-v96 > .container {
    width: min(100% - 24px, 1200px) !important;
  }

  .services-v98-list .services-v96-card {
    grid-template-columns: 58px minmax(0, 1fr) !important;
    min-height: auto;
  }
}


/* V99: Soluciones enfocado en Misalud.pe beta */
.solutions-v99 .solutions-v99-card {
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
  margin-inline: auto;
  grid-template-columns: minmax(0, 1fr) minmax(420px, .86fr);
  align-items: center;
  gap: clamp(34px, 5vw, 72px);
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .16), transparent 36%),
    radial-gradient(circle at 94% 18%, rgba(98, 242, 176, .12), transparent 30%),
    linear-gradient(135deg, rgba(10, 42, 82, .92), rgba(3, 16, 38, .90));
  border-color: rgba(86, 202, 255, .26);
}

.solutions-v99-copy {
  max-width: 720px;
}

.solutions-v99-badge {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 18px;
  padding: 9px 14px;
  border-radius: 999px;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-size: .82rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 16px 34px rgba(0, 210, 255, .16);
}

.solutions-v99-copy h3 {
  font-size: clamp(3.6rem, 6vw, 6.5rem) !important;
  letter-spacing: -.09em !important;
  line-height: .88 !important;
  margin-bottom: 18px !important;
}

.solutions-v99-copy p {
  max-width: 660px;
  color: rgba(226, 242, 255, .78);
  font-size: 1.08rem;
  line-height: 1.62;
}

.solutions-v99-copy ul {
  margin-top: 22px !important;
  display: grid;
  gap: 10px;
  padding-left: 0 !important;
  list-style: none;
}

.solutions-v99-copy li {
  position: relative;
  padding-left: 28px;
  color: rgba(226, 242, 255, .78);
  line-height: 1.42;
}

.solutions-v99-copy li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  width: 19px;
  height: 19px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #061431;
  background: #62f2b0;
  font-size: .72rem;
  font-weight: 950;
}

.solutions-v99-grid {
  display: grid;
  gap: 18px;
}

.solutions-v99-module {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  column-gap: 16px;
  align-items: center;
  min-height: 138px;
  padding: 22px !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .12), transparent 36%),
    rgba(255,255,255,.04) !important;
  border-color: rgba(110, 207, 255, .20) !important;
}

.solutions-v99-module::before {
  content: "";
  position: absolute;
  inset: 0;
  width: 4px;
  background: linear-gradient(180deg, #35e1ff, #62f2b0);
}

.solutions-v99-module i {
  grid-row: span 2;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #35e1ff;
  background: rgba(53, 225, 255, .08);
  border: 1px solid rgba(53, 225, 255, .24);
  font-size: 1.35rem;
}

.solutions-v99-module h3 {
  margin: 0 0 6px !important;
  font-size: clamp(1.55rem, 2.2vw, 2.15rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -.055em !important;
}

.solutions-v99-module p {
  margin: 0 !important;
  color: rgba(226, 242, 255, .72);
  line-height: 1.48;
  font-size: .98rem;
}

@media (max-width: 1080px) {
  .solutions-v99 .solutions-v99-card {
    width: min(100% - 48px, 1200px) !important;
    grid-template-columns: 1fr;
  }

  .solutions-v99-copy {
    max-width: 900px;
  }
}

@media (max-width: 640px) {
  .solutions-v99 .solutions-v99-card {
    width: min(100% - 24px, 1200px) !important;
    padding: 24px !important;
    border-radius: 26px !important;
  }

  .solutions-v99-copy h3 {
    font-size: clamp(3.1rem, 16vw, 4.4rem) !important;
  }

  .solutions-v99-copy p {
    font-size: .96rem;
  }

  .solutions-v99-module {
    grid-template-columns: 54px minmax(0, 1fr);
    min-height: auto;
    padding: 18px !important;
  }

  .solutions-v99-module i {
    width: 50px;
    height: 50px;
    border-radius: 17px;
    font-size: 1.12rem;
  }

  .solutions-v99-module h3 {
    font-size: 1.35rem !important;
  }

  .solutions-v99-module p {
    font-size: .9rem;
  }
}


/* V100: título SOLUCIONES y se elimina el kicker "Solución en beta" */
.solutions-v100-header {
  max-width: 980px;
  margin: 0 auto clamp(28px, 4vw, 44px);
  text-align: center;
}

.solutions-v100-title-line {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 18px;
  align-items: center;
  margin-bottom: 18px;
}

.solutions-v100-title-line > span {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(79, 219, 255, .55), transparent);
  box-shadow: 0 0 22px rgba(0, 213, 255, .20);
}

.solutions-v100-icon-main {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 20px;
  color: #62f2b0;
  background:
    radial-gradient(circle at 36% 18%, rgba(98, 242, 176, .26), transparent 42%),
    linear-gradient(180deg, rgba(0, 198, 255, .16), rgba(20, 91, 255, .10));
  border: 1px solid rgba(98, 242, 176, .38);
  box-shadow: 0 0 34px rgba(0, 199, 255, .16);
  font-size: 1.45rem;
}

.solutions-v100-header h2 {
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .27em;
  font-size: clamp(2.4rem, 4vw, 4.35rem);
  line-height: 1;
  font-weight: 900;
  color: #f4f8ff;
}

.solutions-v100 .solutions-v99-card {
  margin-top: 0 !important;
}

@media (max-width: 760px) {
  .solutions-v100-title-line {
    gap: 12px;
  }

  .solutions-v100-icon-main {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    font-size: 1.35rem;
  }

  .solutions-v100-header h2 {
    letter-spacing: .18em;
  }
}


/* V102: Servicios mejorados - bento horizontal responsive.
   Objetivo: ocupar el ancho de Academia, pero evitar filas gigantes vacías. */
.services-v96 > .container {
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
}

.services-v98-list {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(18px, 2vw, 26px) !important;
  margin-top: 0 !important;
}

.services-v98-list .services-v96-card {
  min-height: 248px !important;
  display: grid !important;
  grid-template-columns: 82px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 20px !important;
  padding: clamp(22px, 2.4vw, 32px) !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .16), transparent 34%),
    radial-gradient(circle at 96% 0%, rgba(98, 242, 176, .07), transparent 32%),
    linear-gradient(180deg, rgba(10, 39, 78, .88), rgba(4, 18, 42, .95)) !important;
  border-color: rgba(83, 210, 255, .28) !important;
  box-shadow:
    0 24px 70px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
}

.services-v98-list .services-v96-card::before {
  width: 6px !important;
}

.services-v98-list .services-v96-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(67, 224, 255, .48) !important;
  box-shadow:
    0 34px 86px rgba(0,0,0,.34),
    0 0 46px rgba(0, 210, 255, .11),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.services-v98-list .services-v96-icon {
  width: 70px !important;
  height: 70px !important;
  border-radius: 24px !important;
  font-size: 1.62rem !important;
}

.services-v98-list .services-v96-content > span {
  margin-bottom: 9px !important;
  font-size: .78rem !important;
  letter-spacing: .17em !important;
}

.services-v98-list .services-v96-content h3 {
  max-width: 560px;
  font-size: clamp(1.9rem, 2.65vw, 2.55rem) !important;
  line-height: .98 !important;
  letter-spacing: -.07em !important;
}

.services-v98-list .services-v96-content p {
  max-width: 620px;
  margin-top: 13px !important;
  color: rgba(225, 240, 255, .78) !important;
  font-size: 1.02rem !important;
  line-height: 1.56 !important;
}

.services-v98-list .services-v96-tags {
  margin-top: 18px !important;
}

.services-v98-list .services-v96-tags small {
  min-height: 30px !important;
  padding: 0 11px !important;
  background: rgba(255,255,255,.065) !important;
  border-color: rgba(255,255,255,.10) !important;
}

/* Variación visual por servicio */
.services-v96-dev {
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .18), transparent 34%),
    linear-gradient(180deg, rgba(9, 42, 84, .90), rgba(4, 18, 42, .95)) !important;
}

.services-v96-qa {
  background:
    radial-gradient(circle at 0% 0%, rgba(98, 242, 176, .14), transparent 34%),
    linear-gradient(180deg, rgba(8, 44, 70, .90), rgba(4, 18, 42, .95)) !important;
}

.services-v96-perf {
  background:
    radial-gradient(circle at 0% 0%, rgba(74, 163, 255, .16), transparent 34%),
    linear-gradient(180deg, rgba(10, 37, 82, .90), rgba(4, 18, 42, .95)) !important;
}

.services-v98-ai {
  background:
    radial-gradient(circle at 0% 0%, rgba(181, 101, 255, .16), transparent 34%),
    linear-gradient(180deg, rgba(25, 31, 80, .90), rgba(4, 18, 42, .95)) !important;
}

.services-v98-devops {
  background:
    radial-gradient(circle at 0% 0%, rgba(98, 242, 176, .13), transparent 34%),
    radial-gradient(circle at 92% 0%, rgba(74, 163, 255, .08), transparent 32%),
    linear-gradient(180deg, rgba(8, 41, 68, .90), rgba(4, 18, 42, .95)) !important;
}

.services-v98-agents {
  background:
    radial-gradient(circle at 0% 0%, rgba(255, 207, 74, .15), transparent 34%),
    linear-gradient(180deg, rgba(48, 42, 48, .90), rgba(4, 18, 42, .95)) !important;
}

/* Tablet: una columna, pero card horizontal */
@media (max-width: 1080px) {
  .services-v96 > .container {
    width: min(100% - 48px, 1200px) !important;
  }

  .services-v98-list {
    grid-template-columns: 1fr !important;
  }

  .services-v98-list .services-v96-card {
    min-height: 190px !important;
  }

  .services-v98-list .services-v96-content h3 {
    max-width: 760px;
  }

  .services-v98-list .services-v96-content p {
    max-width: 860px;
  }
}

/* Móvil: compacto, legible y sin cards gigantes */
@media (max-width: 640px) {
  .services-v96 > .container {
    width: min(100% - 24px, 1200px) !important;
  }

  .services-v98-list {
    gap: 14px !important;
  }

  .services-v98-list .services-v96-card {
    grid-template-columns: 56px minmax(0, 1fr) !important;
    gap: 14px !important;
    min-height: auto !important;
    padding: 18px !important;
    border-radius: 22px !important;
  }

  .services-v98-list .services-v96-icon {
    width: 52px !important;
    height: 52px !important;
    border-radius: 18px !important;
    font-size: 1.2rem !important;
  }

  .services-v98-list .services-v96-content > span {
    margin-bottom: 6px !important;
    font-size: .69rem !important;
    letter-spacing: .14em !important;
  }

  .services-v98-list .services-v96-content h3 {
    font-size: clamp(1.28rem, 6.8vw, 1.65rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -.055em !important;
  }

  .services-v98-list .services-v96-content p {
    margin-top: 8px !important;
    font-size: .9rem !important;
    line-height: 1.42 !important;
  }

  .services-v98-list .services-v96-tags {
    display: none !important;
  }
}

/* Móvil pequeño */
@media (max-width: 390px) {
  .services-v98-list .services-v96-card {
    grid-template-columns: 1fr !important;
  }

  .services-v98-list .services-v96-icon {
    margin-bottom: 2px;
  }
}


/* V103: Soluciones como showcase de producto Misalud.pe, distinto a Servicios/Academia */
.solutions-v103 {
  background:
    radial-gradient(circle at 10% 0%, rgba(98, 242, 176, .11), transparent 30%),
    radial-gradient(circle at 92% 18%, rgba(53, 225, 255, .14), transparent 34%),
    linear-gradient(180deg, #04162c 0%, #021127 58%, #010a18 100%);
}

.solutions-v103 .solutions-v100-header {
  margin-bottom: clamp(28px, 4vw, 48px);
}

.solutions-v103-shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(480px, 1.14fr);
  gap: clamp(30px, 5vw, 72px);
  align-items: center;
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
  padding: clamp(28px, 4vw, 54px);
  border-radius: 38px;
  background:
    radial-gradient(circle at 0% 0%, rgba(98, 242, 176, .15), transparent 34%),
    radial-gradient(circle at 88% 0%, rgba(53, 225, 255, .13), transparent 34%),
    linear-gradient(135deg, rgba(10, 42, 82, .92), rgba(3, 16, 38, .92));
  border: 1px solid rgba(86, 202, 255, .25);
  box-shadow:
    0 36px 90px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.06);
  overflow: hidden;
}

.solutions-v103-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 46px 46px;
  opacity: .42;
  mask-image: linear-gradient(90deg, black, transparent 92%);
}

.solutions-v103-copy,
.solutions-v103-product,
.solutions-v103-bottom {
  position: relative;
  z-index: 1;
}

.solutions-v103-badge {
  display: inline-flex;
  width: fit-content;
  margin-bottom: 18px;
  padding: 9px 14px;
  border-radius: 999px;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-size: .82rem;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
  box-shadow: 0 16px 34px rgba(0, 210, 255, .16);
}

.solutions-v103-copy h3 {
  margin: 0 0 18px;
  color: #f4f8ff;
  font-size: clamp(4rem, 7vw, 7rem);
  line-height: .84;
  letter-spacing: -.1em;
}

.solutions-v103-copy p {
  margin: 0;
  max-width: 660px;
  color: rgba(226, 242, 255, .78);
  font-size: clamp(1rem, 1.25vw, 1.14rem);
  line-height: 1.62;
}

.solutions-v103-points {
  display: grid;
  gap: 12px;
  margin-top: 24px;
}

.solutions-v103-points div {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  color: rgba(226, 242, 255, .82);
  line-height: 1.38;
  font-weight: 780;
}

.solutions-v103-points i {
  color: #62f2b0;
  margin-top: 1px;
}

.solutions-v103-product {
  min-height: 430px;
}

.solutions-v103-browser {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background:
    radial-gradient(circle at 70% 0%, rgba(53, 225, 255, .18), transparent 34%),
    linear-gradient(180deg, rgba(8, 31, 65, .96), rgba(3, 14, 34, .98));
  border: 1px solid rgba(86, 202, 255, .24);
  box-shadow:
    0 28px 70px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.07);
}

.solutions-v103-browser-top {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 52px;
  padding: 0 18px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}

.solutions-v103-browser-top span {
  width: 11px;
  height: 11px;
  border-radius: 999px;
  background: rgba(255,255,255,.26);
}

.solutions-v103-browser-top span:nth-child(1) {
  background: #62f2b0;
}

.solutions-v103-browser-top span:nth-child(2) {
  background: #35e1ff;
}

.solutions-v103-browser-top span:nth-child(3) {
  background: #ffcf4a;
}

.solutions-v103-browser-top strong {
  margin-left: auto;
  color: rgba(235, 248, 255, .82);
  font-size: .88rem;
}

.solutions-v103-ui {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  min-height: 360px;
}

.solutions-v103-ui aside {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 22px 14px;
  border-right: 1px solid rgba(255,255,255,.07);
  background: rgba(255,255,255,.025);
}

.solutions-v103-ui aside i {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #35e1ff;
  background: rgba(53,225,255,.075);
  border: 1px solid rgba(53,225,255,.18);
}

.solutions-v103-ui main {
  padding: 24px;
}

.solutions-v103-ui-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 24px;
}

.solutions-v103-ui-head small {
  display: block;
  color: #6ff7ff;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-size: .7rem;
  margin-bottom: 8px;
}

.solutions-v103-ui-head strong {
  display: block;
  color: #f4f8ff;
  font-size: clamp(1.5rem, 2.4vw, 2.25rem);
  line-height: 1;
  letter-spacing: -.055em;
}

.solutions-v103-ui-head span {
  padding: 8px 11px;
  border-radius: 999px;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-weight: 950;
  font-size: .76rem;
}

.solutions-v103-flow {
  display: grid;
  gap: 14px;
}

.solutions-v103-flow article {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 16px;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.solutions-v103-flow article i {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #62f2b0;
  background: rgba(98, 242, 176, .07);
  border: 1px solid rgba(98, 242, 176, .18);
}

.solutions-v103-flow article strong {
  display: block;
  color: #f4f8ff;
  font-size: 1.02rem;
  margin-bottom: 3px;
}

.solutions-v103-flow article p {
  margin: 0;
  color: rgba(226,242,255,.68);
  font-size: .9rem;
  line-height: 1.35;
}

.solutions-v103-floating-card {
  position: absolute;
  right: clamp(18px, 3vw, 42px);
  bottom: -28px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  width: min(360px, 70%);
  padding: 16px;
  border-radius: 22px;
  background: linear-gradient(90deg, rgba(98,242,176,.98), rgba(53,225,255,.98));
  color: #061431;
  box-shadow: 0 24px 58px rgba(0, 210, 255, .22);
}

.solutions-v103-floating-card i {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.42);
}

.solutions-v103-floating-card strong,
.solutions-v103-floating-card span {
  display: block;
}

.solutions-v103-floating-card strong {
  font-size: 1rem;
  line-height: 1.1;
}

.solutions-v103-floating-card span {
  color: rgba(6, 20, 49, .68);
  font-weight: 850;
  font-size: .84rem;
}

.solutions-v103-bottom {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-top: 8px;
}

.solutions-v103-bottom article {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.solutions-v103-bottom i {
  grid-row: span 2;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: #35e1ff;
  background: rgba(53,225,255,.075);
  border: 1px solid rgba(53,225,255,.18);
}

.solutions-v103-bottom strong {
  color: #f4f8ff;
  line-height: 1.05;
}

.solutions-v103-bottom span {
  color: rgba(226,242,255,.66);
  font-size: .9rem;
}

/* Tablet */
@media (max-width: 1080px) {
  .solutions-v103-shell {
    width: min(100% - 48px, 1200px) !important;
    grid-template-columns: 1fr;
  }

  .solutions-v103-product {
    min-height: auto;
  }

  .solutions-v103-floating-card {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 16px;
  }
}

/* Móvil */
@media (max-width: 640px) {
  .solutions-v103-shell {
    width: min(100% - 24px, 1200px) !important;
    padding: 22px;
    border-radius: 26px;
    gap: 24px;
  }

  .solutions-v103-copy h3 {
    font-size: clamp(3.2rem, 18vw, 4.8rem);
  }

  .solutions-v103-badge {
    font-size: .72rem;
    padding: 8px 11px;
  }

  .solutions-v103-copy p {
    font-size: .94rem;
    line-height: 1.52;
  }

  .solutions-v103-points {
    gap: 10px;
    margin-top: 18px;
  }

  .solutions-v103-product {
    min-height: auto;
  }

  .solutions-v103-browser {
    border-radius: 22px;
  }

  .solutions-v103-ui {
    grid-template-columns: 1fr;
  }

  .solutions-v103-ui aside {
    display: flex;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
    padding: 12px;
  }

  .solutions-v103-ui aside i {
    width: 38px;
    height: 38px;
    border-radius: 14px;
  }

  .solutions-v103-ui main {
    padding: 18px;
  }

  .solutions-v103-ui-head {
    display: grid;
    gap: 12px;
  }

  .solutions-v103-flow article {
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 13px;
    border-radius: 17px;
  }

  .solutions-v103-flow article i {
    width: 38px;
    height: 38px;
    border-radius: 13px;
  }

  .solutions-v103-bottom {
    grid-template-columns: 1fr;
  }

  .solutions-v103-bottom article {
    border-radius: 18px;
  }
}

/* Móvil pequeño */
@media (max-width: 390px) {
  .solutions-v103-shell {
    padding: 18px;
  }

  .solutions-v103-flow article,
  .solutions-v103-bottom article,
  .solutions-v103-floating-card {
    grid-template-columns: 1fr;
  }
}


/* V104: Soluciones Misalud.pe sin repetición y responsive refinado */
.solutions-v104-shell {
  grid-template-columns: minmax(0, .82fr) minmax(520px, 1.18fr) !important;
  gap: clamp(34px, 5vw, 76px) !important;
}

.solutions-v104-copy p {
  max-width: 680px !important;
}

.solutions-v104-points div {
  font-weight: 850;
}

.solutions-v104-product {
  min-height: 470px !important;
}

.solutions-v104-browser {
  transform: perspective(1200px) rotateY(-4deg) rotateX(1deg);
  transform-origin: center;
}

.solutions-v104-ui main {
  padding: 26px !important;
}

.solutions-v104-timeline {
  position: relative;
  display: grid;
  gap: 14px;
  padding-left: 10px;
}

.solutions-v104-timeline::before {
  content: "";
  position: absolute;
  left: 25px;
  top: 24px;
  bottom: 24px;
  width: 2px;
  background: linear-gradient(180deg, #62f2b0, #35e1ff);
  opacity: .7;
  box-shadow: 0 0 18px rgba(53, 225, 255, .26);
}

.solutions-v104-timeline article {
  position: relative;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 16px 16px 16px 0;
}

.solutions-v104-timeline article > span {
  position: relative;
  z-index: 1;
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 18px;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-weight: 950;
  box-shadow: 0 16px 34px rgba(0, 210, 255, .16);
}

.solutions-v104-timeline article > div {
  padding: 16px;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.solutions-v104-timeline strong {
  display: block;
  color: #f4f8ff;
  font-size: 1.03rem;
  margin-bottom: 4px;
}

.solutions-v104-timeline p {
  margin: 0;
  color: rgba(226,242,255,.68);
  font-size: .9rem;
  line-height: 1.35;
}

.solutions-v104-floating-card {
  bottom: -34px !important;
  width: min(390px, 76%) !important;
}

.solutions-v104-bottom {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}

.solutions-v104-bottom article {
  position: relative;
  overflow: hidden;
  padding: 22px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .10), transparent 34%),
    rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.solutions-v104-bottom article::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18px;
  bottom: 18px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #62f2b0, #35e1ff);
}

.solutions-v104-bottom span {
  display: inline-flex;
  margin-bottom: 10px;
  color: #6ff7ff;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.solutions-v104-bottom strong {
  display: block;
  color: #f4f8ff;
  font-size: clamp(1.2rem, 1.7vw, 1.55rem);
  line-height: 1.06;
  letter-spacing: -.04em;
  margin-bottom: 8px;
}

.solutions-v104-bottom p {
  margin: 0;
  color: rgba(226,242,255,.68);
  font-size: .92rem;
  line-height: 1.45;
}

/* Tablet */
@media (max-width: 1080px) {
  .solutions-v104-shell {
    grid-template-columns: 1fr !important;
  }

  .solutions-v104-browser {
    transform: none;
  }

  .solutions-v104-product {
    min-height: auto !important;
  }

  .solutions-v104-floating-card {
    width: 100% !important;
  }

  .solutions-v104-bottom {
    grid-template-columns: 1fr;
  }
}

/* Tablet vertical */
@media (min-width: 641px) and (max-width: 1080px) {
  .solutions-v104-bottom {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Móvil */
@media (max-width: 640px) {
  .solutions-v104-shell {
    padding: 22px !important;
    gap: 24px !important;
  }

  .solutions-v104-copy h3 {
    font-size: clamp(3rem, 17vw, 4.5rem) !important;
  }

  .solutions-v104-timeline {
    padding-left: 0;
  }

  .solutions-v104-timeline::before {
    display: none;
  }

  .solutions-v104-timeline article {
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    padding: 0;
  }

  .solutions-v104-timeline article > span {
    width: 40px;
    height: 40px;
    border-radius: 14px;
    font-size: .82rem;
  }

  .solutions-v104-timeline article > div {
    padding: 13px;
    border-radius: 17px;
  }

  .solutions-v104-timeline strong {
    font-size: .96rem;
  }

  .solutions-v104-timeline p {
    font-size: .82rem;
  }

  .solutions-v104-floating-card {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    padding: 14px !important;
    border-radius: 18px !important;
  }

  .solutions-v104-bottom {
    margin-top: 0;
    gap: 12px;
  }

  .solutions-v104-bottom article {
    padding: 18px;
    border-radius: 20px;
  }

  .solutions-v104-bottom strong {
    font-size: 1.15rem;
  }
}

/* Móvil pequeño */
@media (max-width: 390px) {
  .solutions-v104-shell {
    padding: 18px !important;
  }

  .solutions-v104-timeline article,
  .solutions-v104-floating-card {
    grid-template-columns: 1fr !important;
  }

  .solutions-v104-ui aside {
    overflow-x: auto;
  }
}


/* V105: Misalud.pe con Copiloto Médico IA + análisis de imágenes IA */
.solutions-v105 {
  background:
    radial-gradient(circle at 10% 0%, rgba(181, 101, 255, .11), transparent 30%),
    radial-gradient(circle at 92% 18%, rgba(53, 225, 255, .14), transparent 34%),
    linear-gradient(180deg, #04162c 0%, #021127 58%, #010a18 100%);
}

.solutions-v105-shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(520px, 1.18fr);
  gap: clamp(34px, 5vw, 76px);
  align-items: center;
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
  padding: clamp(28px, 4vw, 56px);
  border-radius: 38px;
  background:
    radial-gradient(circle at 0% 0%, rgba(181, 101, 255, .13), transparent 35%),
    radial-gradient(circle at 94% 0%, rgba(53, 225, 255, .14), transparent 34%),
    linear-gradient(135deg, rgba(10, 42, 82, .92), rgba(3, 16, 38, .94));
  border: 1px solid rgba(86, 202, 255, .25);
  box-shadow:
    0 36px 90px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.06);
  overflow: hidden;
}

.solutions-v105-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 46px 46px;
  opacity: .42;
  mask-image: linear-gradient(90deg, black, transparent 92%);
}

.solutions-v105-copy,
.solutions-v105-product,
.solutions-v105-bottom {
  position: relative;
  z-index: 1;
}

.solutions-v105-copy h3 {
  margin: 0 0 18px;
  color: #f4f8ff;
  font-size: clamp(4rem, 7vw, 7rem);
  line-height: .84;
  letter-spacing: -.1em;
}

.solutions-v105-copy > p {
  margin: 0;
  max-width: 700px;
  color: rgba(226, 242, 255, .80);
  font-size: clamp(1rem, 1.25vw, 1.14rem);
  line-height: 1.62;
}

.solutions-v105-highlights {
  display: grid;
  gap: 14px;
  margin-top: 26px;
}

.solutions-v105-highlights article {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 16px;
  border-radius: 22px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.solutions-v105-highlights i {
  width: 50px;
  height: 50px;
  display: grid;
  place-items: center;
  border-radius: 17px;
  color: #b565ff;
  background: rgba(181, 101, 255, .10);
  border: 1px solid rgba(181, 101, 255, .22);
  font-size: 1.15rem;
}

.solutions-v105-highlights article:nth-child(2) i {
  color: #35e1ff;
  background: rgba(53, 225, 255, .08);
  border-color: rgba(53, 225, 255, .22);
}

.solutions-v105-highlights strong {
  display: block;
  color: #f4f8ff;
  line-height: 1.05;
  margin-bottom: 5px;
}

.solutions-v105-highlights span {
  display: block;
  color: rgba(226,242,255,.68);
  line-height: 1.38;
  font-size: .94rem;
}

.solutions-v105-note {
  margin-top: 16px !important;
  padding: 14px 16px;
  border-radius: 18px;
  color: rgba(226,242,255,.76) !important;
  background: rgba(98, 242, 176, .055);
  border: 1px solid rgba(98, 242, 176, .15);
  font-size: .92rem !important;
}

.solutions-v105-device {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  background:
    radial-gradient(circle at 70% 0%, rgba(181, 101, 255, .16), transparent 34%),
    radial-gradient(circle at 100% 30%, rgba(53,225,255,.12), transparent 36%),
    linear-gradient(180deg, rgba(8, 31, 65, .96), rgba(3, 14, 34, .98));
  border: 1px solid rgba(86, 202, 255, .24);
  box-shadow:
    0 28px 70px rgba(0,0,0,.36),
    inset 0 1px 0 rgba(255,255,255,.07);
  transform: perspective(1200px) rotateY(-4deg) rotateX(1deg);
  transform-origin: center;
}

.solutions-v105-top {
  display: flex;
  align-items: center;
  gap: 8px;
  height: 52px;
  padding: 0 18px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  background: rgba(255,255,255,.035);
}

.solutions-v105-top span {
  width: 11px;
  height: 11px;
  border-radius: 999px;
  background: rgba(255,255,255,.26);
}

.solutions-v105-top span:nth-child(1) { background: #62f2b0; }
.solutions-v105-top span:nth-child(2) { background: #35e1ff; }
.solutions-v105-top span:nth-child(3) { background: #ffcf4a; }

.solutions-v105-top strong {
  margin-left: auto;
  color: rgba(235, 248, 255, .82);
  font-size: .88rem;
}

.solutions-v105-screen {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  min-height: 390px;
}

.solutions-v105-sidebar {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 22px 14px;
  border-right: 1px solid rgba(255,255,255,.07);
  background: rgba(255,255,255,.025);
}

.solutions-v105-sidebar i {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 16px;
  color: #35e1ff;
  background: rgba(53,225,255,.075);
  border: 1px solid rgba(53,225,255,.18);
}

.solutions-v105-panel {
  padding: 26px;
}

.solutions-v105-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 24px;
}

.solutions-v105-panel-head small {
  display: block;
  color: #6ff7ff;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
  font-size: .7rem;
  margin-bottom: 8px;
}

.solutions-v105-panel-head strong {
  display: block;
  color: #f4f8ff;
  font-size: clamp(1.45rem, 2.3vw, 2.2rem);
  line-height: 1;
  letter-spacing: -.055em;
}

.solutions-v105-panel-head span {
  padding: 8px 11px;
  border-radius: 999px;
  color: #061431;
  background: linear-gradient(90deg, #b565ff, #35e1ff);
  font-weight: 950;
  font-size: .76rem;
}

.solutions-v105-ai-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 14px;
}

.solutions-v105-ai-card {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  min-height: 126px;
  padding: 16px;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.solutions-v105-ai-card.is-main {
  grid-column: 1 / -1;
  min-height: 136px;
  background:
    radial-gradient(circle at 0% 0%, rgba(181,101,255,.16), transparent 34%),
    rgba(255,255,255,.052);
}

.solutions-v105-ai-card i {
  width: 44px;
  height: 44px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: #b565ff;
  background: rgba(181,101,255,.10);
  border: 1px solid rgba(181,101,255,.20);
}

.solutions-v105-ai-card:nth-child(2) i {
  color: #62f2b0;
  background: rgba(98,242,176,.08);
  border-color: rgba(98,242,176,.20);
}

.solutions-v105-ai-card:nth-child(3) i {
  color: #35e1ff;
  background: rgba(53,225,255,.08);
  border-color: rgba(53,225,255,.20);
}

.solutions-v105-ai-card strong {
  display: block;
  color: #f4f8ff;
  font-size: 1rem;
  margin-bottom: 4px;
}

.solutions-v105-ai-card p {
  margin: 0;
  color: rgba(226,242,255,.68);
  font-size: .88rem;
  line-height: 1.35;
}

.solutions-v105-floating-card {
  position: absolute;
  right: clamp(18px, 3vw, 42px);
  bottom: -34px;
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 13px;
  align-items: center;
  width: min(420px, 76%);
  padding: 16px;
  border-radius: 22px;
  background: linear-gradient(90deg, rgba(181,101,255,.98), rgba(53,225,255,.98));
  color: #061431;
  box-shadow: 0 24px 58px rgba(0, 210, 255, .22);
}

.solutions-v105-floating-card i {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: rgba(255,255,255,.42);
}

.solutions-v105-floating-card strong,
.solutions-v105-floating-card span {
  display: block;
}

.solutions-v105-floating-card strong {
  font-size: 1rem;
  line-height: 1.1;
}

.solutions-v105-floating-card span {
  color: rgba(6, 20, 49, .68);
  font-weight: 850;
  font-size: .84rem;
}

.solutions-v105-bottom {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 22px;
}

.solutions-v105-bottom article {
  position: relative;
  overflow: hidden;
  padding: 22px;
  border-radius: 24px;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .10), transparent 34%),
    rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.solutions-v105-bottom article::before {
  content: "";
  position: absolute;
  left: 0;
  top: 18px;
  bottom: 18px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #b565ff, #35e1ff);
}

.solutions-v105-bottom i {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 15px;
  color: #35e1ff;
  background: rgba(53,225,255,.075);
  border: 1px solid rgba(53,225,255,.18);
  margin-bottom: 14px;
}

.solutions-v105-bottom span {
  display: inline-flex;
  margin-bottom: 10px;
  color: #6ff7ff;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.solutions-v105-bottom strong {
  display: block;
  color: #f4f8ff;
  font-size: clamp(1.2rem, 1.7vw, 1.55rem);
  line-height: 1.06;
  letter-spacing: -.04em;
  margin-bottom: 8px;
}

.solutions-v105-bottom p {
  margin: 0;
  color: rgba(226,242,255,.68);
  font-size: .92rem;
  line-height: 1.45;
}

/* Tablet */
@media (max-width: 1080px) {
  .solutions-v105-shell {
    grid-template-columns: 1fr;
    width: min(100% - 48px, 1200px) !important;
  }

  .solutions-v105-device {
    transform: none;
  }

  .solutions-v105-floating-card {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    margin-top: 16px;
  }
}

/* Tablet vertical */
@media (min-width: 641px) and (max-width: 1080px) {
  .solutions-v105-bottom {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Móvil */
@media (max-width: 640px) {
  .solutions-v105-shell {
    width: min(100% - 24px, 1200px) !important;
    padding: 22px;
    border-radius: 26px;
    gap: 24px;
  }

  .solutions-v105-copy h3 {
    font-size: clamp(3rem, 17vw, 4.5rem);
  }

  .solutions-v105-copy > p {
    font-size: .94rem;
    line-height: 1.52;
  }

  .solutions-v105-highlights {
    gap: 12px;
    margin-top: 20px;
  }

  .solutions-v105-highlights article {
    grid-template-columns: 44px minmax(0, 1fr);
    padding: 14px;
    border-radius: 18px;
  }

  .solutions-v105-highlights i {
    width: 40px;
    height: 40px;
    border-radius: 14px;
  }

  .solutions-v105-note {
    font-size: .84rem !important;
  }

  .solutions-v105-device {
    transform: none;
    border-radius: 22px;
  }

  .solutions-v105-screen {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .solutions-v105-sidebar {
    display: flex;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
    padding: 12px;
    overflow-x: auto;
  }

  .solutions-v105-sidebar i {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    border-radius: 14px;
  }

  .solutions-v105-panel {
    padding: 18px;
  }

  .solutions-v105-panel-head {
    display: grid;
    gap: 12px;
  }

  .solutions-v105-ai-grid {
    grid-template-columns: 1fr;
  }

  .solutions-v105-ai-card,
  .solutions-v105-ai-card.is-main {
    grid-column: auto;
    min-height: auto;
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 13px;
    border-radius: 17px;
  }

  .solutions-v105-ai-card i {
    width: 38px;
    height: 38px;
    border-radius: 13px;
  }

  .solutions-v105-ai-card strong {
    font-size: .96rem;
  }

  .solutions-v105-ai-card p {
    font-size: .82rem;
  }

  .solutions-v105-floating-card {
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 14px;
    border-radius: 18px;
  }

  .solutions-v105-bottom {
    grid-template-columns: 1fr;
    gap: 12px;
    margin-top: 0;
  }

  .solutions-v105-bottom article {
    padding: 18px;
    border-radius: 20px;
  }

  .solutions-v105-bottom strong {
    font-size: 1.15rem;
  }
}

/* Móvil pequeño */
@media (max-width: 390px) {
  .solutions-v105-shell {
    padding: 18px;
  }

  .solutions-v105-highlights article,
  .solutions-v105-ai-card,
  .solutions-v105-ai-card.is-main,
  .solutions-v105-floating-card {
    grid-template-columns: 1fr;
  }
}


/* V106: Copy IA más claro + próximos cursos sin botones */
.solutions-v105-panel-head strong {
  max-width: 560px;
  text-wrap: balance;
}

.solutions-v105-copy > p,
.solutions-v105-highlights span,
.solutions-v105-note,
.solutions-v105-ai-card p {
  text-wrap: pretty;
}

.course-actions-soon-v106,
.academy-v38-actions-soon-v106,
.academy-v39-actions-soon-v106 {
  display: flex !important;
  justify-content: flex-start;
  align-items: center;
  margin-top: auto;
}

.course-soon-note-v106,
.academy-soon-note-v106 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  padding: 0 16px;
  border-radius: 999px;
  color: rgba(235, 248, 255, .86);
  background:
    radial-gradient(circle at 10% 0%, rgba(53,225,255,.15), transparent 34%),
    rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
  font-weight: 950;
  font-size: .9rem;
}

.course-soon-note-v106 i,
.academy-soon-note-v106 i {
  color: #35e1ff;
}

.academy-v39-actions-soon-v106,
.academy-v38-actions-soon-v106 {
  grid-template-columns: 1fr !important;
}

.academy-v39-actions-soon-v106 .academy-soon-note-v106,
.academy-v38-actions-soon-v106 .academy-soon-note-v106 {
  width: fit-content;
}

@media (max-width: 1080px) {
  .solutions-v105-panel-head strong {
    max-width: none;
  }
}

@media (max-width: 720px) {
  .solutions-v105-panel-head strong {
    font-size: clamp(1.22rem, 6vw, 1.7rem) !important;
    line-height: 1.06 !important;
  }

  .solutions-v105-copy > p {
    font-size: .94rem !important;
    line-height: 1.52 !important;
  }

  .course-actions-soon-v106,
  .academy-v38-actions-soon-v106,
  .academy-v39-actions-soon-v106 {
    width: 100%;
  }

  .course-soon-note-v106,
  .academy-soon-note-v106 {
    width: 100%;
    min-height: 48px;
  }
}

@media (max-width: 390px) {
  .solutions-v105-panel-head strong {
    font-size: 1.18rem !important;
  }
}


/* V107: quitar badge final Próximamente y alinear footer al ancho principal */
.course-actions-soon-v106,
.academy-v38-actions-soon-v106,
.academy-v39-actions-soon-v106,
.course-soon-note-v106,
.academy-soon-note-v106 {
  display: none !important;
}

.site-footer .container,
.site-footer .footer-grid,
.site-footer .footer-bottom {
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.site-footer .footer-grid {
  display: grid;
}

@media (max-width: 1180px) {
  .site-footer .container,
  .site-footer .footer-grid,
  .site-footer .footer-bottom {
    width: min(100% - 48px, 1200px) !important;
  }
}

@media (max-width: 640px) {
  .site-footer .container,
  .site-footer .footer-grid,
  .site-footer .footer-bottom {
    width: min(100% - 24px, 1200px) !important;
  }
}


/* V108: SEO accesible */
.seo-visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}


/* V109: SEO course page */
.breadcrumb-seo-course-v109 {
  position: absolute !important;
}


/* V110: SEO visible + conversión para index y curso */
.home-seo-shell-v110,
.home-faq-shell-v110 {
  width: min(100% - 72px, 1500px) !important;
  max-width: 1500px !important;
  margin-inline: auto;
}

.home-seo-shell-v110,
.home-faq-shell-v110,
.course-seo-visible-v110 {
  position: relative;
}

.home-seo-head-v110 {
  max-width: 980px;
  margin-bottom: 28px;
}

.home-seo-head-v110 span,
.home-faq-copy-v110 span,
.course-seo-head-v110 span,
.course-build-v110 span,
.course-faq-title-v110 span {
  display: inline-flex;
  margin-bottom: 12px;
  color: #6ff7ff;
  font-size: .78rem;
  font-weight: 950;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.home-seo-head-v110 h2,
.home-faq-copy-v110 h2,
.course-seo-head-v110 h2,
.course-build-v110 h2,
.course-faq-title-v110 h2 {
  margin: 0;
  color: #f4f8ff;
  font-size: clamp(2.3rem, 4.2vw, 4.6rem);
  line-height: .98;
  letter-spacing: -.07em;
}

.home-seo-head-v110 p,
.home-faq-copy-v110 p,
.course-seo-head-v110 p,
.course-build-v110 p {
  max-width: 820px;
  margin: 16px 0 0;
  color: rgba(226, 242, 255, .76);
  font-size: 1.04rem;
  line-height: 1.62;
}

.home-seo-grid-v110,
.course-audience-grid-v110 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.home-seo-grid-v110 article,
.course-audience-grid-v110 article {
  padding: 24px;
  border-radius: 26px;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.12), transparent 34%),
    rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
  box-shadow: 0 22px 60px rgba(0,0,0,.20);
}

.home-seo-grid-v110 i,
.course-audience-grid-v110 i {
  width: 52px;
  height: 52px;
  display: grid;
  place-items: center;
  margin-bottom: 18px;
  border-radius: 18px;
  color: #35e1ff;
  background: rgba(53,225,255,.08);
  border: 1px solid rgba(53,225,255,.20);
  font-size: 1.25rem;
}

.home-seo-grid-v110 h3,
.course-audience-grid-v110 h3 {
  margin: 0 0 10px;
  color: #f4f8ff;
  font-size: clamp(1.35rem, 2vw, 1.85rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}

.home-seo-grid-v110 p,
.course-audience-grid-v110 p {
  margin: 0;
  color: rgba(226,242,255,.70);
  line-height: 1.5;
}

.home-faq-shell-v110 {
  display: grid;
  grid-template-columns: minmax(0, .72fr) minmax(520px, 1fr);
  gap: clamp(28px, 5vw, 70px);
  align-items: start;
}

.home-faq-list-v110,
.course-faq-list-v110 {
  display: grid;
  gap: 12px;
}

.home-faq-list-v110 details,
.course-faq-list-v110 details {
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
  overflow: hidden;
}

.home-faq-list-v110 summary,
.course-faq-list-v110 summary {
  cursor: pointer;
  padding: 18px 20px;
  color: #f4f8ff;
  font-weight: 900;
  list-style: none;
}

.home-faq-list-v110 summary::-webkit-details-marker,
.course-faq-list-v110 summary::-webkit-details-marker {
  display: none;
}

.home-faq-list-v110 summary::after,
.course-faq-list-v110 summary::after {
  content: "+";
  float: right;
  color: #35e1ff;
  font-weight: 950;
}

.home-faq-list-v110 details[open] summary::after,
.course-faq-list-v110 details[open] summary::after {
  content: "–";
}

.home-faq-list-v110 p,
.course-faq-list-v110 p {
  margin: 0;
  padding: 0 20px 18px;
  color: rgba(226,242,255,.70);
  line-height: 1.52;
}

.course-seo-visible-v110 {
  margin-top: clamp(30px, 5vw, 60px);
  padding: clamp(26px, 4vw, 46px);
  border-radius: 34px;
  background:
    radial-gradient(circle at 0% 0%, rgba(53, 225, 255, .12), transparent 34%),
    linear-gradient(135deg, rgba(10, 42, 82, .88), rgba(3, 16, 38, .92));
  border: 1px solid rgba(86, 202, 255, .22);
}

.course-seo-head-v110 {
  max-width: 980px;
  margin-bottom: 24px;
}

.course-build-v110 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .58fr);
  gap: 28px;
  align-items: center;
  margin-top: 22px;
  padding: 24px;
  border-radius: 26px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.course-build-v110 ul {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.course-build-v110 li {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  color: rgba(226,242,255,.82);
  font-weight: 850;
}

.course-build-v110 li i {
  color: #62f2b0;
  margin-top: 2px;
}

.course-faq-visible-v110 {
  margin-top: 26px;
}

.course-faq-title-v110 {
  margin-bottom: 16px;
}

/* Tablet */
@media (max-width: 1080px) {
  .home-seo-shell-v110,
  .home-faq-shell-v110 {
    width: min(100% - 48px, 1200px) !important;
  }

  .home-seo-grid-v110,
  .course-audience-grid-v110 {
    grid-template-columns: 1fr;
  }

  .home-faq-shell-v110,
  .course-build-v110 {
    grid-template-columns: 1fr;
  }
}

/* Móvil */
@media (max-width: 640px) {
  .home-seo-shell-v110,
  .home-faq-shell-v110 {
    width: min(100% - 24px, 1200px) !important;
  }

  .home-seo-head-v110 h2,
  .home-faq-copy-v110 h2,
  .course-seo-head-v110 h2,
  .course-build-v110 h2,
  .course-faq-title-v110 h2 {
    font-size: clamp(1.9rem, 10vw, 2.75rem);
  }

  .home-seo-head-v110 p,
  .home-faq-copy-v110 p,
  .course-seo-head-v110 p,
  .course-build-v110 p {
    font-size: .94rem;
    line-height: 1.5;
  }

  .home-seo-grid-v110 article,
  .course-audience-grid-v110 article,
  .course-build-v110 {
    padding: 18px;
    border-radius: 22px;
  }

  .course-seo-visible-v110 {
    padding: 20px;
    border-radius: 26px;
  }

  .home-faq-list-v110 summary,
  .course-faq-list-v110 summary {
    padding: 16px;
    font-size: .95rem;
  }

  .home-faq-list-v110 p,
  .course-faq-list-v110 p {
    padding: 0 16px 16px;
    font-size: .9rem;
  }
}


/* V111: Checkout con datos del alumno + Culqi Online */
.checkout-page-v111{background:radial-gradient(circle at 12% 0%,rgba(53,225,255,.12),transparent 30%),linear-gradient(180deg,#031126,#020814)}
.checkout-shell-v111{align-items:start!important}.checkout-copy-v111{display:grid;gap:18px}.checkout-buyer-v111{margin-top:10px;display:grid;gap:14px;padding:20px;border-radius:24px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09)}
.checkout-buyer-v111 h2{margin:0 0 4px;color:#f4f8ff;font-size:clamp(1.45rem,2vw,2rem);letter-spacing:-.045em}.checkout-buyer-v111 label{display:grid;gap:7px;color:rgba(226,242,255,.78);font-weight:850}.checkout-buyer-v111 label span small{color:rgba(226,242,255,.56);font-weight:700}
.checkout-buyer-v111 input[type="text"],.checkout-buyer-v111 input[type="email"],.checkout-buyer-v111 input[type="tel"]{width:100%;min-height:50px;padding:0 14px;border-radius:16px;color:#f4f8ff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.13);outline:none}.checkout-buyer-v111 input:focus{border-color:rgba(53,225,255,.65);box-shadow:0 0 0 4px rgba(53,225,255,.10)}
.checkout-terms-v111{display:grid!important;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:10px!important;margin-top:4px}.checkout-terms-v111 input{margin-top:3px}.checkout-terms-v111 a{color:#6ff7ff}.checkout-error-v111,.checkout-warning-v111{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border-radius:18px;line-height:1.35;font-weight:850}.checkout-error-v111{color:#fff4f4;background:rgba(255,76,76,.14);border:1px solid rgba(255,76,76,.28)}.checkout-warning-v111{color:#fff8e3;background:rgba(255,207,74,.12);border:1px solid rgba(255,207,74,.24)}.checkout-pay-v111.is-loading{opacity:.72;pointer-events:none}.checkout-pay-v111.is-loading::after{content:"Procesando...";margin-left:8px}.culqi-container-v111{display:none}.checkout-message-v111{max-width:760px;margin:0 auto;text-align:center}
.thanks-course-v111{min-height:70vh;padding:clamp(90px,10vw,140px) 0 70px;background:radial-gradient(circle at 12% 0%,rgba(53,225,255,.14),transparent 30%),linear-gradient(180deg,#031126,#020814)}.thanks-container-v111{width:min(100% - 72px,960px)!important}.thanks-shell-v111{text-align:center;padding:clamp(28px,5vw,54px);border-radius:34px;background:radial-gradient(circle at 0% 0%,rgba(98,242,176,.12),transparent 34%),linear-gradient(135deg,rgba(10,42,82,.92),rgba(3,16,38,.94));border:1px solid rgba(86,202,255,.24);box-shadow:0 30px 80px rgba(0,0,0,.30)}.thanks-icon-v111{width:74px;height:74px;display:grid;place-items:center;margin:0 auto 18px;border-radius:999px;color:#061431;background:linear-gradient(90deg,#62f2b0,#35e1ff);font-size:2rem}.thanks-icon-v111.is-error{background:linear-gradient(90deg,#ff7a7a,#ffcf4a)}.thanks-icon-v111.is-pending{background:linear-gradient(90deg,#ffcf4a,#35e1ff)}.thanks-shell-v111 h1{margin:0 0 12px;color:#f4f8ff;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.96;letter-spacing:-.07em}.thanks-shell-v111 p{margin:0 auto 18px;max-width:680px;color:rgba(226,242,255,.76);line-height:1.56}.thanks-summary-v111{display:grid;gap:10px;margin:24px auto;max-width:640px;text-align:left}.thanks-summary-v111 div{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08)}.thanks-summary-v111 span{color:rgba(226,242,255,.62)}.thanks-summary-v111 strong{color:#f4f8ff;text-align:right}.thanks-note-v111{font-weight:850}.thanks-actions-v111{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
@media(max-width:1080px){.checkout-shell-v111{grid-template-columns:1fr!important}.checkout-card-v111{width:100%}}@media(max-width:640px){.checkout-buyer-v111{padding:16px;border-radius:20px}.checkout-terms-v111{grid-template-columns:20px minmax(0,1fr)}.thanks-container-v111{width:min(100% - 24px,960px)!important}.thanks-summary-v111 div{display:grid;gap:4px}.thanks-summary-v111 strong{text-align:left;word-break:break-word}.thanks-actions-v111 .btn{width:100%}}


/* V116: UX checkout, overlay gris Culqi y confirmación sin saltar de pantalla */
.checkout-steps-v116 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 6px 0 8px;
}

.checkout-steps-v116 span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 12px;
  border-radius: 999px;
  color: rgba(235, 248, 255, .9);
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
  font-weight: 900;
  font-size: .84rem;
}

.checkout-steps-v116 i {
  color: #35e1ff;
}

.culqi-page-backdrop-v116 {
  position: fixed;
  inset: 0;
  z-index: 9998;
  display: grid;
  place-items: end center;
  padding: 24px;
  background: rgba(114, 122, 135, .64);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

.culqi-page-backdrop-v116 span {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  padding: 0 14px;
  border-radius: 999px;
  color: #061431;
  background: rgba(255,255,255,.92);
  box-shadow: 0 18px 50px rgba(0,0,0,.24);
  font-weight: 950;
  font-size: .88rem;
}

body.culqi-active-v116 .site-header,
body.culqi-active-v116 main,
body.culqi-active-v116 .site-footer {
  filter: grayscale(.15) brightness(.68);
  transition: filter .18s ease;
}

.payment-result-v116 {
  position: fixed;
  inset: 0;
  z-index: 10020;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(2, 8, 20, .70);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}

.payment-result-v116[hidden] {
  display: none !important;
}

.payment-result-card-v116 {
  position: relative;
  width: min(100%, 620px);
  padding: clamp(24px, 4vw, 42px);
  border-radius: 30px;
  text-align: center;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.14), transparent 34%),
    linear-gradient(135deg, rgba(10,42,82,.98), rgba(3,16,38,.98));
  border: 1px solid rgba(86,202,255,.26);
  box-shadow: 0 32px 90px rgba(0,0,0,.42);
}

.payment-result-close-v116 {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 999px;
  color: rgba(235,248,255,.9);
  background: rgba(255,255,255,.08);
  cursor: pointer;
  font-size: 1.35rem;
  line-height: 1;
}

.payment-result-icon-v116 {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  border-radius: 999px;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-size: 2rem;
}

.payment-result-v116.is-error .payment-result-icon-v116 {
  background: linear-gradient(90deg, #ff7a7a, #ffcf4a);
}

.payment-result-v116.is-pending .payment-result-icon-v116 {
  background: linear-gradient(90deg, #ffcf4a, #35e1ff);
}

.payment-result-card-v116 h2 {
  margin: 0 0 10px;
  color: #f4f8ff;
  font-size: clamp(2rem, 5vw, 3.6rem);
  line-height: .96;
  letter-spacing: -.07em;
}

.payment-result-card-v116 p {
  margin: 0 auto 18px;
  max-width: 520px;
  color: rgba(226,242,255,.78);
  line-height: 1.5;
}

.payment-result-summary-v116 {
  display: grid;
  gap: 9px;
  margin: 20px auto;
  text-align: left;
}

.payment-result-summary-v116 div {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.08);
}

.payment-result-summary-v116 span {
  color: rgba(226,242,255,.62);
}

.payment-result-summary-v116 strong {
  color: #f4f8ff;
  text-align: right;
}

.payment-result-actions-v116 {
  display: flex;
  justify-content: center;
  gap: 12px;
  flex-wrap: wrap;
}

@media (max-width: 640px) {
  .checkout-steps-v116 {
    display: grid;
    grid-template-columns: 1fr;
  }

  .culqi-page-backdrop-v116 {
    padding: 16px;
  }

  .payment-result-card-v116 {
    border-radius: 24px;
  }

  .payment-result-summary-v116 div {
    display: grid;
    gap: 4px;
  }

  .payment-result-summary-v116 strong {
    text-align: left;
    word-break: break-word;
  }

  .payment-result-actions-v116 .btn {
    width: 100%;
  }
}


/* V117: Checkout en una sola secuencia: curso -> datos -> resumen -> pagar */
.checkout-page-v117 {
  padding-top: clamp(84px, 8vw, 122px);
}

.checkout-container-v117 {
  width: min(100% - 72px, 980px) !important;
  max-width: 980px !important;
}

.checkout-shell-v117 {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 22px !important;
  align-items: stretch !important;
  padding: clamp(22px, 3.2vw, 42px) !important;
  border-radius: 34px !important;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.12), transparent 34%),
    radial-gradient(circle at 100% 0, rgba(98,242,176,.08), transparent 32%),
    linear-gradient(135deg, rgba(10,42,82,.92), rgba(3,16,38,.96)) !important;
  border: 1px solid rgba(86,202,255,.24) !important;
  box-shadow: 0 36px 90px rgba(0,0,0,.28) !important;
}

.checkout-copy-v117 {
  max-width: none !important;
}

.checkout-copy-v117 .checkout-kicker-v74 {
  margin-bottom: 12px;
}

.checkout-copy-v117 h1 {
  max-width: 820px;
  margin-bottom: 14px !important;
  font-size: clamp(2.8rem, 7vw, 5.6rem) !important;
  line-height: .9 !important;
  letter-spacing: -.08em !important;
}

.checkout-copy-v117 > p {
  max-width: 740px !important;
  margin-bottom: 14px !important;
  font-size: clamp(.98rem, 1.5vw, 1.12rem) !important;
  line-height: 1.5 !important;
}

.checkout-steps-v116 {
  margin: 12px 0 18px !important;
}

.checkout-coupon-ok-v74 {
  max-width: 100% !important;
}

.checkout-buyer-v117 {
  max-width: 100%;
  margin-top: 18px !important;
}

.checkout-buyer-v117 {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px !important;
}

.checkout-buyer-v117 h2,
.checkout-buyer-v117 .checkout-terms-v111 {
  grid-column: 1 / -1;
}

.checkout-buyer-v117 label {
  min-width: 0;
}

.checkout-card-v117 {
  position: static !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: clamp(20px, 3vw, 32px) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 0 0, rgba(98,242,176,.10), transparent 32%),
    linear-gradient(135deg, rgba(8,31,65,.96), rgba(3,14,34,.98)) !important;
  border-color: rgba(98,242,176,.22) !important;
}

.checkout-card-v117 h2 {
  font-size: clamp(1.55rem, 2.2vw, 2.1rem) !important;
  margin-bottom: 4px !important;
}

.checkout-card-intro-v117 {
  margin: 0 0 18px;
  color: rgba(226,242,255,.68);
  line-height: 1.45;
}

.checkout-card-v117 .checkout-lines-v74 {
  margin-top: 0 !important;
}

.checkout-card-v117 .checkout-lines-v74 > div {
  min-height: 42px;
}

.checkout-card-v117 .checkout-lines-v74 .total {
  padding-top: 18px !important;
  margin-top: 8px !important;
}

.checkout-card-v117 .checkout-pay-v111 {
  width: 100% !important;
  min-height: 58px !important;
  margin-top: 20px !important;
  font-size: 1rem !important;
  border-radius: 18px !important;
  box-shadow:
    0 20px 48px rgba(0, 194, 255, .22),
    inset 0 1px 0 rgba(255,255,255,.25) !important;
}

.checkout-card-v117 .checkout-note-v74 {
  display: block;
  margin-top: 14px;
  text-align: center;
}

@media (max-width: 1080px) {
  .checkout-container-v117 {
    width: min(100% - 48px, 980px) !important;
  }

  .checkout-shell-v117 {
    padding: 28px !important;
  }
}

@media (max-width: 640px) {
  .checkout-page-v117 {
    padding-top: 76px;
  }

  .checkout-container-v117 {
    width: min(100% - 24px, 980px) !important;
  }

  .checkout-shell-v117 {
    padding: 18px !important;
    border-radius: 26px !important;
    gap: 18px !important;
  }

  .checkout-copy-v117 h1 {
    font-size: clamp(2.35rem, 14vw, 3.8rem) !important;
  }

  .checkout-buyer-v117 {
    grid-template-columns: 1fr;
    padding: 16px !important;
  }

  .checkout-card-v117 {
    padding: 18px !important;
    border-radius: 22px !important;
  }

  .checkout-card-v117 .checkout-pay-v111 {
    min-height: 56px !important;
  }
}


/* V118: Al confirmar en Culqi se muestra loading y pago exitoso redirige a página confirmada */
.culqi-page-backdrop-v116.is-processing,
.culqi-page-backdrop-v116.is-success {
  place-items: center;
}

.culqi-page-backdrop-v116.is-processing span,
.culqi-page-backdrop-v116.is-success span {
  min-height: 56px;
  padding: 0 22px;
  border-radius: 18px;
  font-size: .95rem;
}

.culqi-page-backdrop-v116.is-processing span::before {
  content: "";
  width: 18px;
  height: 18px;
  margin-right: 10px;
  border-radius: 50%;
  border: 3px solid rgba(6, 20, 49, .18);
  border-top-color: #061431;
  animation: nalabSpinV118 .8s linear infinite;
}

.culqi-page-backdrop-v116.is-success span::before {
  content: "✓";
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  margin-right: 10px;
  border-radius: 999px;
  color: white;
  background: #13b981;
  font-weight: 950;
}

@keyframes nalabSpinV118 {
  to { transform: rotate(360deg); }
}


/* V119: Se quita el botón final de S/300 en la landing del curso */
.course-video-final-note-v119 {
  display: flex;
  justify-content: center;
  margin-top: 18px;
}

.course-video-final-note-v119 span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 680px;
  padding: 14px 18px;
  border-radius: 999px;
  color: rgba(235, 248, 255, .86);
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
  font-weight: 850;
  line-height: 1.35;
  text-align: center;
}

.course-video-final-note-v119 i {
  color: #62f2b0;
  flex: 0 0 auto;
}

@media (max-width: 640px) {
  .course-video-final-note-v119 span {
    border-radius: 18px;
    align-items: flex-start;
    text-align: left;
  }
}


/* V120: Reordenamiento UX de venta del curso Playwright */
.course-quick-nav-v120 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.course-quick-nav-v120 a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 13px;
  border-radius: 999px;
  color: rgba(235, 248, 255, .88);
  background: rgba(255,255,255,.055);
  border: 1px solid rgba(255,255,255,.10);
  font-weight: 900;
  font-size: .86rem;
  text-decoration: none;
}

.course-quick-nav-v120 a:hover {
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  border-color: transparent;
}

.course-video-cta-v120 {
  margin-top: clamp(26px, 4vw, 46px) !important;
  margin-bottom: clamp(24px, 4vw, 44px) !important;
  border: 1px solid rgba(98, 242, 176, .22) !important;
  background:
    radial-gradient(circle at 0 0, rgba(98, 242, 176, .13), transparent 32%),
    radial-gradient(circle at 100% 0, rgba(53, 225, 255, .12), transparent 34%),
    linear-gradient(135deg, rgba(10,42,82,.92), rgba(3,16,38,.96)) !important;
}

.course-video-actions-v120 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}

.course-video-actions-v120 .btn {
  min-height: 50px;
}

.course-seo-visible-v110 {
  margin-top: clamp(24px, 4vw, 42px) !important;
  margin-bottom: clamp(24px, 4vw, 42px) !important;
}

.course-sales-route-v58 {
  scroll-margin-top: 110px;
}

#video-curso,
#inscripcion,
#course-faq-title {
  scroll-margin-top: 110px;
}

.course-faq-final-v120 {
  margin-top: clamp(30px, 5vw, 58px);
}

.course-faq-visible-v120 {
  padding: clamp(24px, 4vw, 42px);
  border-radius: 32px;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.10), transparent 32%),
    linear-gradient(135deg, rgba(10,42,82,.88), rgba(3,16,38,.92));
  border: 1px solid rgba(86,202,255,.18);
}

@media (max-width: 640px) {
  .course-quick-nav-v120 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .course-quick-nav-v120 a,
  .course-video-actions-v120 .btn {
    width: 100%;
    justify-content: center;
  }

  .course-video-actions-v120 {
    display: grid;
    grid-template-columns: 1fr;
  }

  .course-faq-visible-v120 {
    padding: 18px;
    border-radius: 24px;
  }
}


/* V121: Ajustes de conversión sin llenar la landing de chips */
.course-sales-copy-v58 h1 {
  max-width: 980px;
}

.course-quick-nav-v121 {
  gap: 8px !important;
  opacity: .92;
}

.course-quick-nav-v121 a {
  min-height: 34px !important;
  padding: 0 11px !important;
  font-size: .8rem !important;
}

.course-enroll-value-v121 {
  display: grid;
  gap: 9px;
  margin: 16px 0;
  padding: 14px;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.course-enroll-value-v121 div {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  color: rgba(226,242,255,.82);
  font-weight: 850;
  line-height: 1.25;
}

.course-enroll-value-v121 i {
  color: #62f2b0;
}

.course-coupon-box-v121 label {
  color: #6ff7ff !important;
}

.course-coupon-box-v121 input {
  font-weight: 900;
  text-transform: uppercase;
}

.course-takeaways-v121 {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(420px, 1fr);
  gap: clamp(22px, 4vw, 44px);
  align-items: center;
  margin: clamp(26px, 4vw, 46px) 0;
  padding: clamp(24px, 4vw, 42px);
  border-radius: 32px;
  background:
    radial-gradient(circle at 0 0, rgba(98,242,176,.12), transparent 34%),
    linear-gradient(135deg, rgba(10,42,82,.90), rgba(3,16,38,.94));
  border: 1px solid rgba(98,242,176,.20);
}

.course-takeaways-copy-v121 span,
.course-includes-v121 h3,
.course-faq-cta-v121 h3 {
  color: #6ff7ff;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.course-takeaways-copy-v121 h2 {
  margin: 8px 0 12px;
  color: #f4f8ff;
  font-size: clamp(2rem, 3.8vw, 4rem);
  line-height: .98;
  letter-spacing: -.065em;
}

.course-takeaways-copy-v121 p {
  margin: 0;
  color: rgba(226,242,255,.72);
  line-height: 1.55;
}

.course-takeaways-list-v121 {
  display: grid;
  gap: 12px;
}

.course-takeaways-list-v121 div {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 12px 14px;
  border-radius: 16px;
  color: rgba(226,242,255,.82);
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
  font-weight: 850;
}

.course-takeaways-list-v121 i {
  color: #62f2b0;
  margin-top: 2px;
}

.course-includes-v121 {
  margin-top: 18px;
  padding: 20px;
  border-radius: 24px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.course-includes-v121 h3 {
  margin: 0 0 14px;
  font-size: .82rem;
}

.course-includes-v121 > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 16px;
}

.course-includes-v121 span {
  display: flex;
  gap: 8px;
  color: rgba(226,242,255,.80);
  font-weight: 850;
}

.course-includes-v121 i {
  color: #62f2b0;
}

.course-faq-cta-v121 {
  margin-top: 20px;
  padding: 22px;
  border-radius: 24px;
  text-align: center;
  background:
    radial-gradient(circle at 0 0, rgba(98,242,176,.12), transparent 34%),
    rgba(255,255,255,.045);
  border: 1px solid rgba(98,242,176,.18);
}

.course-faq-cta-v121 h3 {
  margin: 0 0 8px;
  font-size: .82rem;
}

.course-faq-cta-v121 p {
  margin: 0 auto 16px;
  max-width: 560px;
  color: rgba(226,242,255,.72);
}

.course-mobile-sticky-cta-v121 {
  display: none;
}

@media (max-width: 1080px) {
  .course-takeaways-v121 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .course-quick-nav-v121 {
    display: flex !important;
    overflow-x: auto;
    padding-bottom: 3px;
  }

  .course-quick-nav-v121 a {
    flex: 0 0 auto;
  }

  .course-takeaways-v121 {
    padding: 18px;
    border-radius: 24px;
  }

  .course-takeaways-copy-v121 h2 {
    font-size: clamp(1.85rem, 10vw, 2.7rem);
  }

  .course-includes-v121 > div {
    grid-template-columns: 1fr;
  }

  .course-mobile-sticky-cta-v121 {
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 12000;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    min-height: 54px;
    padding: 0 16px;
    border-radius: 18px;
    text-decoration: none;
    color: #061431;
    background: linear-gradient(90deg, #62f2b0, #35e1ff);
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
    font-weight: 950;
  }

  .course-mobile-sticky-cta-v121 span,
  .course-mobile-sticky-cta-v121 strong {
    color: #061431;
  }

  body {
    padding-bottom: 72px;
  }
}


/* V122: tercera revisión UX - menos chips, estructura más clara y oferta sin cupón visible */
.course-sales-copy-v58 h1 {
  font-size: clamp(4rem, 8vw, 8.2rem) !important;
  line-height: .88 !important;
  letter-spacing: -.085em !important;
  max-width: 920px !important;
}

.course-sales-copy-v58 p {
  max-width: 760px !important;
}

.course-hero-info-v75,
.course-quick-nav-v120,
.course-quick-nav-v121 {
  display: none !important;
}

.course-hero-meta-v122 {
  display: grid;
  grid-template-columns: minmax(120px, .5fr) minmax(260px, 1fr) minmax(120px, .55fr);
  gap: 10px;
  max-width: 760px;
  margin-top: 22px;
  padding: 14px;
  border-radius: 22px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.course-hero-meta-v122 div {
  min-width: 0;
}

.course-hero-meta-v122 strong {
  display: block;
  margin-bottom: 4px;
  color: #6ff7ff;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.course-hero-meta-v122 span {
  display: block;
  color: rgba(235,248,255,.88);
  font-weight: 850;
  line-height: 1.28;
}

.course-checkout-head-v75 {
  position: relative;
}

.course-price-note-v122 {
  display: block;
  margin-top: 4px;
  color: rgba(226,242,255,.66);
  font-size: .86rem;
  font-weight: 800;
}

.course-enroll-value-v122 {
  gap: 8px !important;
  margin: 14px 0 !important;
  padding: 12px !important;
  border-radius: 18px !important;
}

.course-enroll-value-v122 div {
  grid-template-columns: 20px minmax(0, 1fr) !important;
  font-size: .9rem;
}

.course-special-price-v122 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 8px 0 14px;
  padding: 12px 13px;
  border-radius: 18px;
  color: #061431;
  background: linear-gradient(90deg, #bfffe1, #35e1ff);
  font-weight: 950;
  line-height: 1.25;
}

.course-special-price-v122 i {
  flex: 0 0 auto;
}

.course-checkout-v69 .course-price-summary-v74 {
  margin-top: 8px !important;
}

.course-checkout-main-v69 {
  min-height: 56px !important;
  font-size: 1rem !important;
}

.course-video-actions-v122 {
  justify-content: flex-start;
}

.course-video-actions-v122 .btn {
  min-width: 220px;
}

.course-takeaways-v121 {
  margin-top: clamp(22px, 3.4vw, 38px) !important;
}

@media (max-width: 1080px) {
  .course-sales-copy-v58 h1 {
    font-size: clamp(3.2rem, 10vw, 6.5rem) !important;
  }

  .course-hero-meta-v122 {
    grid-template-columns: 1fr;
    max-width: none;
  }
}

@media (max-width: 640px) {
  .course-sales-copy-v58 h1 {
    font-size: clamp(2.75rem, 13vw, 4.4rem) !important;
    line-height: .9 !important;
  }

  .course-hero-meta-v122 {
    padding: 12px;
    border-radius: 18px;
  }

  .course-hero-meta-v122 div {
    padding-bottom: 9px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .course-hero-meta-v122 div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .course-video-actions-v122 .btn {
    min-width: 0;
  }

  .course-special-price-v122 {
    border-radius: 16px;
  }
}


/* V123: Precio regular S/600 + cupón manual sin mostrar el código */
.course-coupon-box-v123 {
  margin: 12px 0 14px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.course-coupon-box-v123 label {
  display: block;
  margin-bottom: 8px;
  color: #6ff7ff;
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.course-coupon-box-v123 input {
  text-transform: uppercase;
}

.course-coupon-box-v123 small {
  display: block;
  min-height: 18px;
  margin-top: 8px;
  font-weight: 850;
}

.course-coupon-box-v123 small.is-success {
  color: #62f2b0;
}

.course-coupon-box-v123 small.is-error {
  color: #ffb4b4;
}

.course-checkout-v69.coupon-applied-v91 .course-coupon-box-v123 {
  background: rgba(98,242,176,.08);
  border-color: rgba(98,242,176,.24);
}


/* V124: Checkout con la misma experiencia visual del curso */
.checkout-page-v124 {
  padding-top: clamp(88px, 8vw, 126px);
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.12), transparent 30%),
    radial-gradient(circle at 100% 0, rgba(98,242,176,.08), transparent 32%),
    linear-gradient(180deg, #031126, #020814);
}

.checkout-container-v124 {
  width: min(100% - 72px, 1440px) !important;
  max-width: 1440px !important;
}

.checkout-shell-v124 {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 520px) !important;
  gap: clamp(28px, 5vw, 76px) !important;
  align-items: start !important;
  padding: clamp(28px, 5vw, 62px) !important;
  border-radius: 34px !important;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.10), transparent 35%),
    linear-gradient(135deg, rgba(10,42,82,.92), rgba(3,16,38,.96)) !important;
  border: 1px solid rgba(86,202,255,.24) !important;
  box-shadow: 0 36px 90px rgba(0,0,0,.28) !important;
}

.checkout-copy-v124 {
  display: grid;
  gap: 22px;
  max-width: none !important;
}

.checkout-copy-v124 h1 {
  max-width: 820px;
  margin: 0 !important;
  color: #f4f8ff;
  font-size: clamp(4rem, 8vw, 7.8rem) !important;
  line-height: .88 !important;
  letter-spacing: -.085em !important;
}

.checkout-copy-v124 > p {
  max-width: 720px !important;
  margin: 0 !important;
  color: rgba(226,242,255,.78);
  font-size: clamp(1rem, 1.5vw, 1.16rem) !important;
  line-height: 1.55 !important;
}

.checkout-course-meta-v124 {
  display: grid;
  grid-template-columns: minmax(140px, .5fr) minmax(160px, .5fr) minmax(260px, 1fr);
  gap: 10px;
  max-width: 820px;
  padding: 14px;
  border-radius: 22px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.checkout-course-meta-v124 strong {
  display: block;
  margin-bottom: 4px;
  color: #6ff7ff;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.checkout-course-meta-v124 span {
  color: rgba(235,248,255,.88);
  font-weight: 850;
  line-height: 1.28;
}

.checkout-steps-v116 {
  display: none !important;
}

.checkout-section-title-v124 {
  display: flex;
  align-items: center;
  gap: 12px;
  grid-column: 1 / -1;
}

.checkout-section-title-v124 span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-weight: 950;
  font-size: .82rem;
}

.checkout-section-title-v124 h2 {
  margin: 0 !important;
  color: #f4f8ff;
  font-size: clamp(1.6rem, 2.3vw, 2.2rem) !important;
  letter-spacing: -.05em;
}

.checkout-buyer-v124 {
  margin-top: 0 !important;
  padding: clamp(18px, 3vw, 26px) !important;
  border-radius: 28px !important;
}

.checkout-card-v124 {
  position: sticky !important;
  top: 104px !important;
  padding: clamp(20px, 3vw, 30px) !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 0 0, rgba(98,242,176,.10), transparent 32%),
    linear-gradient(135deg, rgba(8,31,65,.96), rgba(3,14,34,.98)) !important;
  border: 1px solid rgba(98,242,176,.20) !important;
}

.checkout-card-v124 .checkout-card-intro-v117 {
  margin-bottom: 16px;
}

.checkout-coupon-v124 {
  margin: 14px 0 16px;
  padding: 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.checkout-coupon-v124 label {
  display: block;
  margin-bottom: 8px;
  color: #6ff7ff;
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.checkout-coupon-v124 > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.checkout-coupon-v124 input {
  min-height: 46px;
  padding: 0 13px;
  border-radius: 14px;
  color: #f4f8ff;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.13);
  outline: none;
  text-transform: uppercase;
  font-weight: 850;
}

.checkout-coupon-v124 input:focus {
  border-color: rgba(53,225,255,.65);
  box-shadow: 0 0 0 4px rgba(53,225,255,.10);
}

.checkout-coupon-v124 button {
  min-height: 46px;
  padding: 0 15px;
  border: 0;
  border-radius: 14px;
  cursor: pointer;
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
  font-weight: 950;
}

.checkout-coupon-v124 small {
  display: block;
  min-height: 18px;
  margin-top: 8px;
  font-weight: 850;
}

.checkout-coupon-v124 small.is-success {
  color: #62f2b0;
}

.checkout-coupon-v124 small.is-error {
  color: #ffb4b4;
}

.checkout-pay-v124 {
  width: 100% !important;
  min-height: 58px !important;
  border-radius: 18px !important;
}

@media (max-width: 1080px) {
  .checkout-container-v124 {
    width: min(100% - 48px, 1200px) !important;
  }

  .checkout-shell-v124 {
    grid-template-columns: 1fr !important;
  }

  .checkout-card-v124 {
    position: static !important;
  }

  .checkout-course-meta-v124 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .checkout-page-v124 {
    padding-top: 76px;
  }

  .checkout-container-v124 {
    width: min(100% - 24px, 1200px) !important;
  }

  .checkout-shell-v124 {
    padding: 18px !important;
    border-radius: 26px !important;
    gap: 18px !important;
  }

  .checkout-copy-v124 h1 {
    font-size: clamp(2.9rem, 15vw, 4.7rem) !important;
  }

  .checkout-course-meta-v124 {
    padding: 12px;
    border-radius: 18px;
  }

  .checkout-course-meta-v124 div {
    padding-bottom: 9px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .checkout-course-meta-v124 div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .checkout-buyer-v124 {
    grid-template-columns: 1fr !important;
    padding: 16px !important;
    border-radius: 22px !important;
  }

  .checkout-coupon-v124 > div {
    grid-template-columns: 1fr;
  }

  .checkout-card-v124 {
    padding: 18px !important;
    border-radius: 22px !important;
  }
}


/* V125: Checkout con precio cerrado, sin reingresar cupón */
.checkout-locked-price-v125 {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  margin: 14px 0 16px;
  padding: 13px 14px;
  border-radius: 18px;
  color: rgba(235, 248, 255, .88);
  background: rgba(98, 242, 176, .075);
  border: 1px solid rgba(98, 242, 176, .20);
  font-weight: 850;
  line-height: 1.35;
}

.checkout-locked-price-v125 i {
  color: #62f2b0;
  flex: 0 0 auto;
  margin-top: 1px;
}

.checkout-card-v124 .checkout-lines-v74 {
  margin-top: 12px !important;
}

/* Ocultamos estilos de cupón del checkout por si el navegador conserva caché vieja */
.checkout-coupon-v124 {
  display: none !important;
}

@media (max-width: 1080px) {
  .checkout-shell-v124 {
    grid-template-columns: 1fr !important;
  }

  .checkout-card-v124 {
    position: static !important;
  }
}


/* V126: Mensaje final de checkout + página de confirmación con la misma estructura */
.thanks-page-v126 {
  min-height: 76vh;
  padding: clamp(88px, 8vw, 126px) 0 72px;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.12), transparent 30%),
    radial-gradient(circle at 100% 0, rgba(98,242,176,.08), transparent 32%),
    linear-gradient(180deg, #031126, #020814);
}

.thanks-container-v126 {
  width: min(100% - 72px, 1440px) !important;
  max-width: 1440px !important;
  margin-inline: auto;
}

.thanks-shell-v126 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 520px);
  gap: clamp(28px, 5vw, 76px);
  align-items: start;
  padding: clamp(28px, 5vw, 62px);
  border-radius: 34px;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.10), transparent 35%),
    linear-gradient(135deg, rgba(10,42,82,.92), rgba(3,16,38,.96));
  border: 1px solid rgba(86,202,255,.24);
  box-shadow: 0 36px 90px rgba(0,0,0,.28);
}

.thanks-copy-v126 {
  display: grid;
  gap: 22px;
}

.thanks-kicker-v126 {
  display: inline-flex;
  width: fit-content;
  min-height: 32px;
  align-items: center;
  padding: 0 14px;
  border-radius: 999px;
  color: #6ff7ff;
  background: rgba(53,225,255,.08);
  border: 1px solid rgba(53,225,255,.20);
  font-size: .76rem;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.thanks-copy-v126 h1 {
  max-width: 860px;
  margin: 0;
  color: #f4f8ff;
  font-size: clamp(4rem, 8vw, 7.8rem);
  line-height: .88;
  letter-spacing: -.085em;
}

.thanks-copy-v126 p {
  max-width: 760px;
  margin: 0;
  color: rgba(226,242,255,.78);
  font-size: clamp(1rem, 1.5vw, 1.16rem);
  line-height: 1.55;
}

.thanks-copy-v126 p strong {
  color: #f4f8ff;
}

.thanks-course-meta-v126 {
  display: grid;
  grid-template-columns: minmax(140px, .5fr) minmax(160px, .5fr) minmax(260px, 1fr);
  gap: 10px;
  max-width: 820px;
  padding: 14px;
  border-radius: 22px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.09);
}

.thanks-course-meta-v126 strong {
  display: block;
  margin-bottom: 4px;
  color: #6ff7ff;
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.thanks-course-meta-v126 span {
  color: rgba(235,248,255,.88);
  font-weight: 850;
  line-height: 1.28;
}

.thanks-next-v126 {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  max-width: 820px;
  padding: 14px 16px;
  border-radius: 18px;
  color: rgba(235,248,255,.88);
  background: rgba(98,242,176,.075);
  border: 1px solid rgba(98,242,176,.20);
  font-weight: 850;
  line-height: 1.4;
}

.thanks-next-v126 i {
  color: #62f2b0;
  flex: 0 0 auto;
  margin-top: 2px;
}

.thanks-card-v126 {
  position: sticky;
  top: 104px;
  padding: clamp(20px, 3vw, 30px);
  border-radius: 30px;
  background:
    radial-gradient(circle at 0 0, rgba(98,242,176,.10), transparent 32%),
    linear-gradient(135deg, rgba(8,31,65,.96), rgba(3,14,34,.98));
  border: 1px solid rgba(98,242,176,.20);
}

.thanks-card-v126 h2 {
  margin: 18px 0 16px;
  color: #f4f8ff;
  font-size: clamp(1.6rem, 2.3vw, 2.2rem);
  letter-spacing: -.05em;
}

.thanks-status-v126 {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 13px 14px;
  border-radius: 18px;
  color: rgba(235,248,255,.88);
  font-weight: 850;
  line-height: 1.35;
}

.thanks-status-v126.is-paid {
  background: rgba(98,242,176,.075);
  border: 1px solid rgba(98,242,176,.20);
}

.thanks-status-v126.is-error {
  background: rgba(255, 76, 76, .12);
  border: 1px solid rgba(255, 76, 76, .22);
}

.thanks-status-v126.is-pending,
.thanks-status-v126.is-missing {
  background: rgba(255, 207, 74, .10);
  border: 1px solid rgba(255, 207, 74, .22);
}

.thanks-status-v126 i {
  flex: 0 0 auto;
  margin-top: 1px;
}

.thanks-status-v126.is-paid i {
  color: #62f2b0;
}

.thanks-status-v126.is-error i {
  color: #ff8b8b;
}

.thanks-status-v126.is-pending i,
.thanks-status-v126.is-missing i {
  color: #ffcf4a;
}

.thanks-summary-v126 {
  display: grid;
  gap: 11px;
}

.thanks-summary-v126 div {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 0 0 11px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.thanks-summary-v126 span {
  color: rgba(226,242,255,.62);
  font-weight: 850;
}

.thanks-summary-v126 strong {
  color: #f4f8ff;
  text-align: right;
  word-break: break-word;
}

.thanks-summary-v126 .is-discount strong {
  color: #62f2b0;
}

.thanks-summary-v126 .is-total {
  margin-top: 4px;
  padding-top: 14px;
  border-top: 1px solid rgba(255,255,255,.12);
  border-bottom: 0;
}

.thanks-summary-v126 .is-total span,
.thanks-summary-v126 .is-total strong {
  color: #35e1ff;
  font-size: 1.15rem;
  font-weight: 950;
}

.thanks-actions-v126 {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

.thanks-actions-v126 .btn {
  width: 100%;
  min-height: 52px;
}

@media (max-width: 1080px) {
  .thanks-container-v126 {
    width: min(100% - 48px, 1200px) !important;
  }

  .thanks-shell-v126 {
    grid-template-columns: 1fr;
  }

  .thanks-card-v126 {
    position: static;
  }

  .thanks-course-meta-v126 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .thanks-page-v126 {
    padding-top: 76px;
  }

  .thanks-container-v126 {
    width: min(100% - 24px, 1200px) !important;
  }

  .thanks-shell-v126 {
    padding: 18px;
    border-radius: 26px;
    gap: 18px;
  }

  .thanks-copy-v126 h1 {
    font-size: clamp(2.9rem, 15vw, 4.7rem);
  }

  .thanks-course-meta-v126 {
    padding: 12px;
    border-radius: 18px;
  }

  .thanks-course-meta-v126 div {
    padding-bottom: 9px;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }

  .thanks-course-meta-v126 div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .thanks-card-v126 {
    padding: 18px;
    border-radius: 22px;
  }

  .thanks-summary-v126 div {
    display: grid;
    gap: 4px;
  }

  .thanks-summary-v126 strong {
    text-align: left;
  }
}


/* V127: Secuencia de botones más clara */
.course-actions-single-v127 {
  grid-template-columns: 1fr !important;
}

.course-actions-single-v127 .btn {
  width: 100%;
  justify-content: center;
}


/* V128: Card de curso con un solo botón real */
.course-actions-single-v128 {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.course-actions-single-v128 .btn {
  width: 100%;
  justify-content: center;
}

/* Seguridad visual: en tarjetas de cursos, si por caché queda un segundo botón, se oculta */
.course-card .course-actions .btn-secondary,
.academy-course-card .course-actions .btn-secondary {
  display: none !important;
}

.course-card .course-actions,
.academy-course-card .course-actions {
  grid-template-columns: 1fr !important;
}


/* V129: Un solo botón en tarjetas de academia, todos los renderers */
.academy-actions-single-v129 {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.academy-actions-single-v129 .btn {
  width: 100% !important;
  justify-content: center !important;
}

/* Seguridad visual para renderers antiguos */
.academy-v38-actions .btn-secondary,
.academy-v39-actions .btn-secondary,
.course-card .course-actions .btn-secondary,
.academy-course-card .course-actions .btn-secondary {
  display: none !important;
}

.academy-v38-actions,
.academy-v39-actions,
.course-card .course-actions,
.academy-course-card .course-actions {
  grid-template-columns: 1fr !important;
}


/* V139: Panel interno de inscripciones */
.admin-login-v139,
.admin-panel-v139 {
  min-height: 76vh;
  padding: clamp(92px, 8vw, 128px) 0 72px;
  background:
    radial-gradient(circle at 0 0, rgba(53,225,255,.12), transparent 30%),
    radial-gradient(circle at 100% 0, rgba(98,242,176,.08), transparent 32%),
    linear-gradient(180deg, #031126, #020814);
}

.admin-login-card-v139 {
  width: min(100% - 32px, 520px);
  margin: 0 auto;
  padding: clamp(24px, 4vw, 38px);
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(8,31,65,.96), rgba(3,14,34,.98));
  border: 1px solid rgba(86,202,255,.22);
  box-shadow: 0 30px 80px rgba(0,0,0,.32);
}

.admin-login-card-v139 span,
.admin-hero-v139 span {
  display: inline-flex;
  width: fit-content;
  min-height: 30px;
  align-items: center;
  padding: 0 13px;
  border-radius: 999px;
  color: #6ff7ff;
  background: rgba(53,225,255,.08);
  border: 1px solid rgba(53,225,255,.20);
  font-size: .72rem;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.admin-login-card-v139 h1,
.admin-hero-v139 h1 {
  margin: 16px 0 10px;
  color: #f4f8ff;
  font-size: clamp(2.7rem, 6vw, 5.4rem);
  line-height: .9;
  letter-spacing: -.075em;
}

.admin-login-card-v139 p,
.admin-hero-v139 p {
  color: rgba(226,242,255,.72);
  line-height: 1.55;
}

.admin-login-card-v139 form {
  display: grid;
  gap: 12px;
  margin-top: 22px;
}

.admin-login-card-v139 label,
.admin-filters-v139 label {
  color: rgba(235,248,255,.82);
  font-weight: 850;
}

.admin-login-card-v139 input,
.admin-filters-v139 input,
.admin-filters-v139 select {
  width: 100%;
  min-height: 46px;
  margin-top: 7px;
  padding: 0 13px;
  border-radius: 14px;
  color: #f4f8ff;
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.13);
  outline: none;
}

.admin-login-card-v139 input:focus,
.admin-filters-v139 input:focus,
.admin-filters-v139 select:focus {
  border-color: rgba(53,225,255,.65);
  box-shadow: 0 0 0 4px rgba(53,225,255,.10);
}

.admin-alert-v139 {
  margin: 16px 0;
  padding: 12px 14px;
  border-radius: 16px;
  font-weight: 850;
}

.admin-alert-v139.is-error {
  color: #ffd7d7;
  background: rgba(255, 76, 76, .12);
  border: 1px solid rgba(255, 76, 76, .22);
}

.admin-container-v139 {
  width: min(100% - 48px, 1480px) !important;
  max-width: 1480px !important;
}

.admin-hero-v139 {
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: end;
  margin-bottom: 24px;
}

.admin-hero-actions-v139 {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.admin-kpis-v139 {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 18px;
}

.admin-kpis-v139 div,
.admin-card-v139,
.admin-filters-v139 {
  border-radius: 24px;
  background: rgba(8,31,65,.82);
  border: 1px solid rgba(86,202,255,.18);
}

.admin-kpis-v139 div {
  padding: 16px;
}

.admin-kpis-v139 span {
  display: block;
  color: rgba(226,242,255,.62);
  font-size: .78rem;
  font-weight: 900;
}

.admin-kpis-v139 strong {
  display: block;
  margin-top: 6px;
  color: #35e1ff;
  font-size: 1.25rem;
}

.admin-filters-v139 {
  display: grid;
  grid-template-columns: minmax(220px, 1.5fr) minmax(160px, .7fr) repeat(2, minmax(150px, .7fr)) minmax(120px, .5fr) auto;
  gap: 12px;
  align-items: end;
  padding: 16px;
  margin-bottom: 18px;
}

.admin-filter-actions-v139 {
  display: flex;
  gap: 8px;
}

.admin-grid-v139 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 440px);
  gap: 18px;
  align-items: start;
}

.admin-card-v139 {
  padding: 18px;
}

.admin-card-head-v139 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}

.admin-card-head-v139 h2 {
  margin: 0;
  color: #f4f8ff;
  letter-spacing: -.04em;
}

.admin-card-head-v139 small {
  color: rgba(226,242,255,.58);
}

.admin-table-wrap-v139 {
  overflow-x: auto;
}

.admin-table-v139 {
  width: 100%;
  border-collapse: collapse;
  min-width: 1100px;
}

.admin-table-v139 th,
.admin-table-v139 td {
  padding: 13px 12px;
  border-bottom: 1px solid rgba(255,255,255,.075);
  color: rgba(235,248,255,.85);
  vertical-align: top;
  text-align: left;
}

.admin-table-v139 th {
  color: #6ff7ff;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.admin-table-v139 td strong,
.admin-table-v139 td small {
  display: block;
}

.admin-table-v139 td small {
  margin-top: 4px;
  color: rgba(226,242,255,.55);
}

.admin-table-v139 tr.is-selected {
  background: rgba(53,225,255,.06);
}

.admin-badge-v139,
.admin-pill-v139 {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  padding: 0 9px;
  border-radius: 999px;
  font-size: .75rem;
  font-weight: 950;
}

.admin-badge-v139.is-ok,
.admin-pill-v139.is-ok {
  color: #061431;
  background: linear-gradient(90deg, #62f2b0, #35e1ff);
}

.admin-badge-v139.is-warn,
.admin-pill-v139.is-warn {
  color: #201600;
  background: #ffcf4a;
}

.admin-badge-v139.is-error,
.admin-pill-v139.is-error {
  color: #fff;
  background: #ef4444;
}

.admin-badge-v139.is-muted,
.admin-pill-v139.is-muted {
  color: rgba(235,248,255,.72);
  background: rgba(255,255,255,.09);
}

.admin-link-v139 {
  color: #6ff7ff;
  font-weight: 950;
  text-decoration: none;
}

.admin-detail-v139 {
  position: sticky;
  top: 104px;
}

.admin-detail-grid-v139 {
  display: grid;
  gap: 10px;
}

.admin-detail-grid-v139 div {
  display: grid;
  gap: 4px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

.admin-detail-grid-v139 span {
  color: rgba(226,242,255,.58);
  font-weight: 850;
}

.admin-detail-grid-v139 strong {
  color: #f4f8ff;
  word-break: break-word;
}

.admin-subsection-v139 {
  margin-top: 18px;
}

.admin-subsection-v139 h3 {
  margin: 0 0 10px;
  color: #6ff7ff;
  font-size: .85rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.admin-log-row-v139 {
  display: grid;
  gap: 4px;
  padding: 12px;
  margin-bottom: 8px;
  border-radius: 16px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.075);
}

.admin-log-row-v139 strong {
  color: #f4f8ff;
  word-break: break-word;
}

.admin-log-row-v139 span,
.admin-log-row-v139 small,
.admin-empty-v139 p,
.admin-subsection-v139 p {
  color: rgba(226,242,255,.62);
}

.admin-log-row-v139 small {
  word-break: break-word;
}

.admin-empty-v139 {
  min-height: 320px;
  display: grid;
  place-items: center;
  text-align: center;
  color: rgba(226,242,255,.70);
}

.admin-empty-v139 i {
  color: #35e1ff;
  font-size: 2.4rem;
}

.admin-empty-v139 h2 {
  color: #f4f8ff;
  margin-bottom: 0;
}

@media (max-width: 1180px) {
  .admin-kpis-v139 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .admin-filters-v139,
  .admin-grid-v139 {
    grid-template-columns: 1fr;
  }

  .admin-detail-v139 {
    position: static;
  }
}

@media (max-width: 720px) {
  .admin-container-v139 {
    width: min(100% - 24px, 1480px) !important;
  }

  .admin-hero-v139 {
    display: grid;
    align-items: start;
  }

  .admin-hero-actions-v139,
  .admin-filter-actions-v139 {
    display: grid;
  }

  .admin-kpis-v139 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .admin-card-v139,
  .admin-filters-v139 {
    border-radius: 18px;
    padding: 14px;
  }
}
