/* Estilos exclusivos de /cursos/. Tokens, botones, header y footer vienen de /assets/global.css */
.center{text-align:center;}
.fade-in{animation:cf-up .6s cubic-bezier(.22,1,.36,1) both;}
.fade-in.d2{animation-delay:.12s;}
@keyframes cf-up{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.fade-in{animation:none;}}

h2{font-size:34px;margin-bottom:28px;}
p.eyebrow{margin-bottom:12px;}
.lead{color:var(--muted);font-size:18px;max-width:600px;}
.center .lead{margin:0 auto 28px;}
.small{font-size:13px;color:var(--muted);margin-top:14px;}
.small a{text-decoration:underline;}
.note{font-size:13px;color:var(--muted);margin-top:18px;text-align:center;}

/* HERO */
.c-hero{padding:80px 0 72px;}
.c-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;}
.c-hero h1{font-size:50px;margin:6px 0 18px;}
.c-hero .lead{margin-bottom:30px;}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px;}
.facts{display:flex;gap:8px;flex-wrap:wrap;}
.pill{display:inline-block;font-size:12px;font-weight:600;padding:6px 12px;border-radius:100px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:var(--ink);}
.pill-ok{background:rgba(37,211,102,.14);border-color:rgba(37,211,102,.35);color:#7ef0a8;}
.pill-pre{background:rgba(253,220,91,.12);border-color:rgba(253,220,91,.4);color:var(--gold);}
.hub-hero h1{font-size:54px;max-width:860px;margin:6px auto 18px;}
.cat-nav{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.cat-nav .btn{padding:11px 20px;font-size:14px;}

/* PORTADAS */
.cv{border-radius:22px;overflow:hidden;aspect-ratio:4/5;position:relative;box-shadow:0 30px 60px rgba(0,0,0,.45);}
.cv-img img{width:100%;height:100%;object-fit:cover;}
.cv-type{display:flex;flex-direction:column;justify-content:flex-end;padding:28px;border:1px solid rgba(255,255,255,.12);
  background:radial-gradient(120% 90% at 85% 10%, rgba(253,220,91,.35), transparent 55%),linear-gradient(160deg,#262626,#111);}
.cv-profesionales{background:radial-gradient(120% 90% at 85% 10%, rgba(120,170,255,.35), transparent 55%),linear-gradient(160deg,#232733,#101114);}
.cv-restaurantes{background:radial-gradient(120% 90% at 85% 10%, rgba(255,107,107,.38), transparent 55%),linear-gradient(160deg,#2b2020,#120f0f);}
.cv-tag{position:absolute;top:22px;left:22px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;background:var(--gold);color:var(--ink-on-gold);padding:6px 12px;border-radius:100px;}
.cv-title{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.1;letter-spacing:-.02em;}
.cv-sub{color:var(--muted);font-size:14px;margin-top:10px;}
.cv-big .cv-title{font-size:38px;}

/* HISTORIA */
.story p{font-size:19px;line-height:1.75;margin-bottom:20px;}
.story p:first-child{font-family:var(--font-display);font-size:28px;font-weight:400;line-height:1.3;}

/* GRIDS */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:900px;margin:0 auto;}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.pq{display:flex;gap:14px;align-items:flex-start;padding:22px 24px;border-radius:20px;}
.pq .chk{flex-shrink:0;width:28px;height:28px;border-radius:50%;background:var(--gold);color:var(--ink-on-gold);display:grid;place-items:center;font-weight:800;font-size:14px;}
.res{padding:28px;border-radius:20px;}
.res h3{font-size:20px;margin-bottom:10px;color:var(--gold);}
.res p{color:var(--muted);font-size:15px;}

/* PROGRAMA */
.mods{display:flex;flex-direction:column;gap:12px;}
.mod{border-radius:18px;padding:0;}
.mod summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:20px 24px;font-weight:400;font-family:var(--font-display);font-size:19px;}
.mod summary::-webkit-details-marker{display:none;}
.mod summary .n{font-size:12px;font-weight:600;color:var(--muted);white-space:nowrap;font-family:'Poppins',sans-serif;}
.mod summary::after{content:"+";font-size:22px;color:var(--gold);margin-left:8px;}
.mod[open] summary::after{content:"–";}
.mod ol{padding:0 24px 22px 48px;color:var(--muted);}
.mod li{padding:6px 0;border-top:1px solid rgba(255,255,255,.06);}

/* PROFE */
.about{display:grid;grid-template-columns:280px 1fr;gap:44px;align-items:center;max-width:900px;}
.about img{border-radius:22px;aspect-ratio:4/5;object-fit:cover;width:100%;}
.about h2{margin-bottom:14px;}
.about p{color:var(--muted);margin-bottom:12px;}

/* PRECIO */
.price-card{max-width:560px;margin:0 auto;padding:40px;text-align:center;}
.price-card h2{margin:14px 0 6px;font-size:28px;}
.price-card > p{color:var(--muted);margin-bottom:22px;}
.price{display:flex;align-items:baseline;justify-content:center;gap:12px;margin:10px 0 18px;flex-wrap:wrap;}
.price .now{font-family:var(--font-display);font-weight:400;font-size:56px;color:var(--gold);line-height:1;}
.price .old{font-size:24px;color:var(--muted);text-decoration:line-through;}
.price .cur{font-size:13px;color:var(--muted);width:100%;}
.price.sm{justify-content:flex-start;margin:0;gap:8px;}
.price.sm .now{font-size:26px;}
.price.sm .old{font-size:15px;}
.price.sm .cur{display:none;}
.inc{list-style:none;text-align:left;max-width:340px;margin:0 auto 26px;}
.inc li{padding:8px 0 8px 28px;position:relative;border-bottom:1px solid rgba(255,255,255,.07);font-size:15px;}
.inc li::before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:800;}
.btn-buy{justify-content:center;}
.price-card .btn-buy{width:100%;}
.upsell{margin-top:28px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);}
.upsell p{font-size:14px;color:var(--muted);margin-bottom:14px;}
.upsell strong{color:var(--ink);}

/* FAQ */
.faq{border-bottom:1px solid rgba(255,255,255,.1);}
.faq summary{cursor:pointer;list-style:none;padding:20px 32px 20px 0;font-weight:600;position:relative;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:4px;top:16px;font-size:22px;color:var(--gold);}
.faq[open] summary::after{content:"–";}
.faq p{color:var(--muted);padding-bottom:20px;}

.final h2{font-size:38px;max-width:760px;margin:0 auto 14px;}

/* HUB */
.cat h2{margin-bottom:6px;}
.cat-sub{color:var(--muted);margin-bottom:28px;}
.cgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.ccard{display:flex;flex-direction:column;overflow:hidden;border-radius:22px;transition:transform .2s ease, border-color .2s ease;}
.ccard:hover{transform:translateY(-4px);border-color:rgba(253,220,91,.45);}
.ccard .cv{border-radius:0;box-shadow:none;aspect-ratio:16/11;}
.ccard .cv-type{padding:22px;border:none;}
.ccard .cv-title{font-size:24px;}
.ccard-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1;}
.ccard-body h3{font-size:20px;}
.ccard-body p{color:var(--muted);font-size:14px;flex:1;}
.ccard-foot{display:flex;justify-content:space-between;align-items:center;margin-top:8px;}
.go{font-size:14px;font-weight:600;color:var(--gold);}

/* BARRA FIJA MÓVIL */
.sticky-buy{display:none;}
@media (max-width:860px){
  .c-hero-grid{grid-template-columns:1fr;gap:36px;}
  .c-hero .cv-big{max-width:340px;}
  .grid-3,.cgrid{grid-template-columns:1fr 1fr;}
  .about{grid-template-columns:1fr;}
  .about img{max-width:260px;}
}
@media (max-width:640px){
  section{padding:56px 0;}
  .wrap,.wrap-article{padding:0 16px;}
  .c-hero{padding:48px 0 48px;}
  .c-hero h1,.hub-hero h1{font-size:34px;}
  h2,.final h2{font-size:27px;}
  .story p{font-size:17px;}
  .story p:first-child{font-size:23px;}
  .grid-2,.grid-3,.cgrid{grid-template-columns:1fr;}
  .price-card{padding:28px 20px;}
  .hero-cta .btn{width:100%;justify-content:center;}
  .sticky-buy{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;gap:10px;align-items:center;justify-content:space-between;
    padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:rgba(12,12,12,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    border-top:1px solid rgba(255,255,255,.1);transform:translateY(110%);transition:transform .25s ease;}
  .sticky-buy.show{transform:none;}
  .sticky-buy span{font-size:12px;color:var(--muted);line-height:1.3;}
  .sticky-buy strong{color:var(--gold);}
  .sticky-buy .btn{padding:11px 16px;font-size:13px;white-space:nowrap;}
  footer{padding-bottom:90px;}
}
.cv-card{justify-content:center;align-items:center;}
.cv-glifo{font-family:var(--font-display);font-weight:400;font-size:64px;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.55);}
/* Portadas reales (16:9): se muestran completas, sin recortar el título */
.cv-img{aspect-ratio:16/9;}
.ccard .cv-img{aspect-ratio:16/9;}
.c-hero .cv-img.cv-big{max-width:none;}
/* Lista de logros al terminar el curso */
.logros{list-style:none;max-width:720px;margin:0 auto;padding:28px 32px;border-radius:20px;}
.logros li{position:relative;padding:12px 0 12px 32px;border-bottom:1px solid rgba(255,255,255,.08);font-size:16px;}
.logros li:last-child{border-bottom:none;}
.logros li::before{content:"✓";position:absolute;left:0;top:12px;color:var(--gold);font-weight:800;}
@media (max-width:640px){.logros{padding:20px;}}

/* SOLUCIONES, CLASES Y TEMARIO (landing-pages-con-ia) */
.sol-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.sol{padding:26px;border-radius:22px;display:flex;flex-direction:column;gap:14px;}
.sol-ico{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:rgba(253,220,91,.12);border:1px solid rgba(253,220,91,.35);color:var(--gold);flex-shrink:0;}
.sol-ico svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.sol p{font-size:15px;line-height:1.5;}
.sol p span{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;}
.sol-p{color:var(--muted);}
.sol-p span{color:var(--red,#ff5c5c);}
.sol-s{color:var(--ink);font-weight:500;padding-top:14px;border-top:1px solid rgba(255,255,255,.08);}
.sol-s span{color:var(--gold);}
.big-n{text-align:center;margin-bottom:32px;}
.big-n b{display:block;font-family:var(--font-display);font-weight:400;font-size:clamp(72px,14vw,130px);line-height:1;color:transparent;-webkit-text-stroke:1.5px var(--gold);}
.big-n span{display:block;color:var(--muted);margin-top:6px;}
.cl-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;max-width:900px;margin:0 auto;}
.cl{padding:30px;border-radius:22px;}
.cl .sol-ico{margin-bottom:16px;}
.cl h3{font-size:22px;margin-bottom:8px;}
.cl p{color:var(--muted);}
.lg{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;}
.lg>div{padding:18px 12px;border-radius:16px;border:1px dashed rgba(255,255,255,.22);background:rgba(255,255,255,.03);text-align:center;}
.lg b{display:block;font-family:var(--font-display);font-weight:400;font-size:26px;color:var(--ink);margin-bottom:2px;}
.lg span{font-size:12px;color:var(--gold);font-weight:600;}
@media (max-width:860px){
  .sol-grid{grid-template-columns:1fr 1fr;}
  .lg{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:640px){
  .sol-grid,.cl-grid{grid-template-columns:1fr;}
  .lg{grid-template-columns:repeat(2,1fr);}
}
