/* CareerLink - articles in a single coherent editorial panel */
.clai-main .clai-outer{max-width:1150px}
.clai-main .clai-article{width:100%;max-width:1080px;margin:0 auto}
.clai-main .clai-sheet{width:100%;padding:0;border:1px solid #e9ded4;border-radius:24px;background:#fff;box-shadow:0 24px 58px rgba(53,30,45,.09);overflow:hidden}
.clai-main .clai-intro{padding:39px 48px 22px;text-align:center;background:linear-gradient(130deg,#fffafa,#fff7ed)}
.clai-main .cl-crumbs{margin:0 0 22px;text-align:center;font-size:13px}
.clai-main .clai-kicker{justify-content:center;margin:0 auto 12px;font-size:12px;letter-spacing:.1em}
.clai-main .clai-kicker:before{width:24px}
.clai-main .cl-page-title{margin:9px auto 15px;max-width:870px;font-size:clamp(31px,4vw,52px);line-height:1.13;letter-spacing:-.035em;text-align:center}
.clai-main .cl-heading-subtitle{margin:12px auto 18px;max-width:800px;text-align:center;line-height:1.65;color:#74606b;font-size:16px}
.clai-main .clai-meta{justify-content:center;align-items:center;gap:9px 21px;margin:17px 0 5px;text-align:center}
.clai-main .clai-cover{margin:0;padding:0 48px 16px;background:#fff7ed}
.clai-main .clai-cover img{display:block;width:100%;height:auto;max-height:440px;object-fit:cover;object-position:center;border-radius:16px;margin:0;aspect-ratio:7/4}
.clai-main .clai-inner{padding:25px 60px 48px}
.clai-main .clai-post-content{background:none;border:0;box-shadow:none;padding:0;margin:32px 0;font-size:16px;line-height:1.83}
.clai-main .clai-post-content h2,.clai-main .clai-post-content h3{color:#53223f;scroll-margin-top:24px}
.clai-main .clai-post-content h2{font-size:clamp(23px,2.7vw,29px);margin:36px 0 13px}
.clai-main .clai-post-content h3{font-size:20px;margin:26px 0 11px}
.clai-main .clai-post-content p{margin:13px 0;line-height:1.86}
.clai-main .clai-post-content li{margin:5px 0}
.clai-main .clai-post-content ul,.clai-main .clai-post-content ol{padding-left:25px;margin:17px 0}
.clai-main .clai-post-content table,.clai-main .clai-requirements{width:100%;border-collapse:separate;border-spacing:0;border:1px solid #eadbd1;border-radius:12px;overflow:hidden;font-size:14px;table-layout:fixed;margin:20px 0 26px}
.clai-main .clai-post-content th,.clai-main .clai-post-content td,.clai-main .clai-requirements th,.clai-main .clai-requirements td{padding:13px 17px;text-align:left;vertical-align:top;border-bottom:1px solid #eee2db;overflow-wrap:anywhere}
.clai-main .clai-post-content thead,.clai-main .clai-requirements thead{background:#f7ebe5;color:#4c283a}
.clai-main .clai-post-content tr:nth-child(even),.clai-main .clai-requirements tr:nth-child(even){background:#fffaf5}
.clai-main .clai-post-content tr:last-child td,.clai-main .clai-requirements tr:last-child td,.clai-main .clai-requirements tr:last-child th{border-bottom:none}
.clai-main .clai-quick{padding:22px;background:#fff9f2;border:1px solid #f0e0d4;border-left:5px solid var(--clai-accent);border-radius:15px}
.clai-main .clai-quick h2{font-size:22px;color:#502a3f;margin:0 0 17px}
.clai-main .clai-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.clai-main .clai-quick-grid>div{padding:0 10px 0 0;min-width:0}
.clai-main .clai-quick-grid span{display:block;color:#745e68;font-size:12px;font-weight:750}
.clai-main .clai-quick-grid strong{font-size:14px;display:block;line-height:1.5;color:#352935;overflow-wrap:anywhere}
.clai-main .clai-toc{margin:27px 0 28px;padding:21px 24px;background:#f3f7f2;border-radius:15px;border:1px solid #e0eadd}
.clai-main .clai-toc>strong{display:block;color:#285c45;font-size:17px;margin-bottom:11px}
.clai-main .clai-toc ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 22px;list-style:decimal;padding-left:21px;margin:0}
.clai-main .clai-toc li{padding-left:1px;line-height:1.55;font-size:13px}
.clai-main .clai-toc a{color:#2b5c46;text-decoration:underline;text-decoration-color:#c4d6c8;text-underline-offset:3px}
.clai-main .clai-extra,.clai-main .clai-check,.clai-main .clai-related{margin-top:42px}
.clai-main .clai-block-head{display:flex;align-items:center;gap:13px;margin-bottom:20px}
.clai-main .clai-heading-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:#faece4;color:#d7503b;font-weight:900;font-size:24px;flex:none}
.clai-main .clai-block-head small{display:block;letter-spacing:.1em;text-transform:uppercase;color:#2f7358;font-weight:800;font-size:11px}
.clai-main .clai-block-head h2{font-size:25px;margin:3px 0 0;color:#52293e;line-height:1.3}
.clai-main .clai-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.clai-main .clai-step{background:#fffaf6;border:1px solid #eddfd5;border-radius:14px;padding:19px;display:flex;gap:13px;align-items:flex-start}
.clai-main .clai-step-number{display:grid;place-items:center;background:#542a45;color:#fff;font-weight:850;border-radius:50%;width:29px;height:29px;flex:none}
.clai-main .clai-step strong{display:block;color:#352836;font-size:15px}
.clai-main .clai-step p{margin:7px 0 0;font-size:13px;line-height:1.7;color:#6b6067}
.clai-main .clai-note{border-left:5px solid #dfa947;padding:16px 22px;margin:28px 0;border-radius:12px;background:#fff4df;font-size:14px;line-height:1.75;color:#5c473d}
.clai-main .clai-official{margin:35px 0 15px;display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(120deg,#f3e4eb,#fff4e9);border:1px solid #ecd6dd;border-radius:17px;padding:25px}
.clai-main .clai-official small{color:#8d3e62;font-weight:800;font-size:12px;letter-spacing:.07em}
.clai-main .clai-official h2{color:#52243e;font-size:23px;margin:6px 0}
.clai-main .clai-official p{font-size:14px;margin:0;color:#655260}
.clai-main .clai-official-link{display:inline-flex;align-items:center;justify-content:center;min-width:215px;max-width:100%;padding:13px 18px;text-align:center;border-radius:12px;background:#53223f;color:#fff!important;font-weight:800;font-size:13px;text-decoration:none}
.clai-main .clai-official-pending{font-size:12px;color:#744d60;font-weight:800;max-width:220px}
.clai-main .clai-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.clai-main .clai-related-card{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:14px;border:1px solid #eadbd4;background:#fffdfa}
.clai-main .clai-related-card>span{color:#2d7356;font-size:12px;font-weight:850}
.clai-main .clai-related-card h3{margin:0;color:#48273c;font-size:15px;line-height:1.4}
.clai-main .clai-related-card h3 a{color:inherit}
.clai-main .clai-read{color:#c74d35;font-size:13px;font-weight:850;margin-top:auto}
@media(max-width:800px){.clai-main .clai-intro{padding:28px 25px 20px}.clai-main .clai-cover{padding:0 25px 15px}.clai-main .clai-inner{padding:24px 27px 36px}.clai-main .clai-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clai-main .clai-related-grid{grid-template-columns:1fr 1fr}.clai-main .clai-toc ol{grid-template-columns:1fr}}
@media(max-width:560px){.clai-main .clai-outer{width:calc(100% - 24px)}.clai-main .clai-sheet{border-radius:18px}.clai-main .clai-intro{padding:25px 15px 18px}.clai-main .cl-page-title{font-size:clamp(27px,8vw,37px)}.clai-main .clai-meta{font-size:11px}.clai-main .clai-cover{padding:0 12px 8px}.clai-main .clai-cover img{border-radius:10px}.clai-main .clai-inner{padding:18px 16px 30px}.clai-main .clai-quick{padding:18px}.clai-main .clai-quick-grid{grid-template-columns:1fr 1fr;gap:12px}.clai-main .clai-toc{padding:17px 16px}.clai-main .clai-steps,.clai-main .clai-related-grid{grid-template-columns:1fr}.clai-main .clai-official{flex-direction:column;align-items:stretch}.clai-main .clai-official-link{width:100%}.clai-main .clai-block-head h2{font-size:21px}.clai-main .clai-post-content table,.clai-main .clai-requirements{font-size:12px}.clai-main .clai-post-content th,.clai-main .clai-post-content td,.clai-main .clai-requirements th,.clai-main .clai-requirements td{padding:9px 8px}}

/* v1.0.1 — editorial modules in the body instead of above the introduction */
.clai-main .clai-post-content > .clai-quick{margin:28px 0 30px;clear:both}
.clai-main .clai-post-content > .clai-toc{margin:27px 0 29px;clear:both}
.clai-main .clai-post-content > .clai-toc + h2,
.clai-main .clai-post-content > .clai-toc + h3{margin-top:15px}
@media(max-width:560px){
  .clai-main .clai-post-content > .clai-quick{margin:20px 0 24px}
  .clai-main .clai-post-content > .clai-toc{margin:23px 0}
}

/* v1.0.3 — recommendations: compact image cards, real category and tag */
.clai-main .clai-related {margin-top:35px; padding:0;}
.clai-main .clai-related-heading {margin-bottom:17px; gap:12px;}
.clai-main .clai-related-header-icon {width:43px;height:43px;border-radius:12px; background:#fff0e7;color:#e65f3e;border:1px solid #f3d8c7;}
.clai-main .clai-related-header-icon svg {display:block;stroke:currentColor;}
.clai-main .clai-related-heading small {font-size:10px;letter-spacing:.14em;color:#316b54;}
.clai-main .clai-related-heading h2 {margin:2px 0 0;font-size:clamp(19px,2.3vw,24px);line-height:1.26;color:#502440;}
.clai-main .clai-related-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;}
.clai-main .clai-related-card {display:flex;flex-direction:column;gap:0;min-width:0;overflow:hidden;padding:0;min-height:250px;background:#fff;border:1px solid #eadfd8;border-radius:15px;box-shadow:0 6px 19px rgba(73,43,57,.045);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.clai-main .clai-related-card .clai-related-visual {display:block;position:relative;width:100%;height:142px;flex:none;overflow:hidden;background:#f8f1ed;text-decoration:none;}
.clai-main .clai-related-card .clai-related-photo {display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center;transition:transform .35s ease;}
.clai-main .clai-related-photo-fallback {display:flex;align-items:center;justify-content:center;height:100%;width:100%;background:linear-gradient(135deg,#fbe2d5,#f0e6e9 53%,#e7f0e8);color:#9b496a;}
.clai-main .clai-related-body {display:flex;flex:1;min-height:0;flex-direction:column;gap:9px;padding:12px 14px 14px;}
.clai-main .clai-related-taxonomy {display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:21px;}
.clai-main .clai-related-taxonomy a, .clai-main .clai-related-taxonomy span {display:inline-flex;align-items:center;max-width:100%;padding:3px 8px;border-radius:6px;font-size:10px;line-height:1.4;text-decoration:none;font-weight:750;overflow-wrap:anywhere;}
.clai-main .clai-related-taxonomy .clai-related-category {background:#e8f3ec;color:#286346;}
.clai-main .clai-related-taxonomy .clai-related-tag {background:#fff0e8;color:#b8472d;}
.clai-main .clai-related-taxonomy a:hover {filter:brightness(.95);text-decoration:underline;}
.clai-main .clai-related-card h3 {margin:0;font-size:clamp(13px,1.4vw,15px);font-weight:800;line-height:1.45;color:#4a273e;}
.clai-main .clai-related-card h3 a {color:inherit;text-decoration:none;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;}
.clai-main .clai-related-card h3 a:hover {color:#c65237;text-decoration:underline;}
.clai-main .clai-related-card .clai-read {display:inline-flex;align-items:center;gap:7px;margin-top:auto;font-weight:850;font-size:12px;color:#d15437;text-decoration:none;}
.clai-main .clai-related-card .clai-read span {font-size:17px;line-height:1;transition:transform .2s ease;}
@media(hover:hover){
 .clai-main .clai-related-card:hover {transform:translateY(-5px);box-shadow:0 15px 30px rgba(73,43,57,.12);border-color:#efb59b;}
 .clai-main .clai-related-card:hover .clai-related-photo {transform:scale(1.045);}
 .clai-main .clai-related-card:hover .clai-read span {transform:translateX(4px);}
}
.clai-main .clai-related-card:focus-within {outline:2px solid #ef603e;outline-offset:2px;}
@media(max-width:830px){.clai-main .clai-related-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:560px){
 .clai-main .clai-related {margin-top:30px;}
 .clai-main .clai-related-grid{grid-template-columns:1fr;gap:12px;}
 .clai-main .clai-related-heading h2{font-size:19px;}
 .clai-main .clai-related-card{display:grid;grid-template-columns:minmax(104px,37%) minmax(0,1fr);min-height:144px;}
 .clai-main .clai-related-card .clai-related-visual{height:100%;min-height:144px;}
 .clai-main .clai-related-body{padding:11px 12px;gap:7px;}
 .clai-main .clai-related-card h3{font-size:13px;line-height:1.35;}
 .clai-main .clai-related-taxonomy a,.clai-main .clai-related-taxonomy span{font-size:9px;padding:3px 6px;}
}
@media(prefers-reduced-motion:reduce){.clai-main .clai-related-card,.clai-main .clai-related-card .clai-related-photo,.clai-main .clai-read span{transition:none!important;transform:none!important;}}


/* v1.0.4 — Corrección de "Continúa aprendiendo" en móviles.
 * Mantiene las tres columnas en escritorio. En teléfonos se apilan las tarjetas
 * y se limita la altura de la imagen, evitando columnas infinitas en Safari.
 */
@media screen and (max-width:600px) {
  .clai-main .clai-related {
    width:100%; max-width:100%; min-width:0; margin-top:26px;
  }
  .clai-main .clai-related .clai-related-grid {
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:13px!important;
    align-items:stretch!important;
    width:100%!important;
    min-width:0!important;
  }
  .clai-main .clai-related .clai-related-card {
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    grid-template-columns:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    margin:0!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#fff!important;
    border:1px solid #eddcd5!important;
    border-radius:14px!important;
  }
  .clai-main .clai-related .clai-related-card > .clai-related-visual {
    box-sizing:border-box!important;
    display:block!important;
    flex:0 0 auto!important;
    position:relative!important;
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:7 / 4!important;
    overflow:hidden!important;
    background:#f8f1ed!important;
    border-radius:0!important;
    margin:0!important;
  }
  .clai-main .clai-related .clai-related-card > .clai-related-visual > img.clai-related-photo {
    display:block!important;
    position:absolute!important;
    inset:0!important;
    box-sizing:border-box!important;
    width:100%!important;
    max-width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:100%!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center center!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    transform:none!important;
  }
  .clai-main .clai-related .clai-related-card > .clai-related-visual > .clai-related-photo-fallback {
    width:100%!important;height:100%!important;min-height:0!important;
    display:flex!important;position:absolute!important;inset:0!important;
  }
  .clai-main .clai-related .clai-related-card > .clai-related-body {
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    flex:0 0 auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:12px 14px 15px!important;
    gap:7px!important;
    align-items:stretch!important;
    overflow:visible!important;
  }
  .clai-main .clai-related .clai-related-taxonomy {
    display:flex!important;flex-wrap:wrap!important;
    min-height:0!important;gap:6px!important;
  }
  .clai-main .clai-related .clai-related-card h3 {
    margin:1px 0 3px!important;
    font-size:15px!important;
    line-height:1.45!important;
    overflow-wrap:anywhere!important;
  }
  .clai-main .clai-related .clai-related-card h3 a {
    display:block!important;
    overflow:visible!important;
    -webkit-line-clamp:unset!important;
    line-clamp:unset!important;
    text-decoration:none!important;
  }
  .clai-main .clai-related .clai-related-card .clai-read {
    align-self:flex-start!important;margin-top:4px!important;
    font-size:12px!important;text-decoration:none!important;
  }
  .clai-main .clai-related .clai-related-heading {
    display:flex!important;align-items:center!important;
    gap:10px!important;min-width:0!important;
  }
  .clai-main .clai-related .clai-related-heading > div {min-width:0!important;}
  .clai-main .clai-related .clai-related-heading h2 {
    font-size:clamp(17px,5vw,20px)!important;
    line-height:1.32!important;
    overflow-wrap:anywhere!important;
  }
  .clai-main .clai-related .clai-related-header-icon {
    flex:0 0 37px!important;width:37px!important;height:37px!important;
  }
}
