/* CTRL360 CES v1.2 — Migration Block 5
   ERP, virtualización, migraciones, diagnóstico y conocimiento técnico restante.
   Presentation-only: content, DOM order, URLs and behavior stay intact. */
:root{--ces5-green:#47d97f;--ces5-green-dark:#15995d;--ces5-blue:#218fd6;--ces5-ink:#0d1a22;--ces5-text:#22313b;--ces5-muted:#66747e;--ces5-line:#dfe7e3;--ces5-soft:#f6f9f7;--ces5-card:#fff;--ces5-radius:24px;--ces5-shadow:0 22px 64px rgba(18,35,28,.08);--ces5-max:1400px}
body.ces5-page{background:#fff;color:var(--ces5-text);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
body.ces5-page .wrap{max-width:var(--ces5-max)}
body.ces5-page h1,body.ces5-page h2,body.ces5-page h3{letter-spacing:-.035em;text-wrap:balance}
body.ces5-page p{line-height:1.72}
body.ces5-page .eyebrow{letter-spacing:.1em;text-transform:uppercase;font-size:.76rem;font-weight:800;color:var(--ces5-green-dark)}
body.ces5-page .btn{border-radius:999px;padding:.95rem 1.35rem;font-weight:750;transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
body.ces5-page .btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(18,35,28,.12)}
body.ces5-page .service-hero,body.ces5-page .enterprise-hero{position:relative;overflow:hidden;padding:clamp(88px,10vw,148px) 0 clamp(72px,9vw,118px);background:linear-gradient(135deg,#f9fbfa 0%,#f2f7f4 55%,#edf5f0 100%);border-bottom:1px solid var(--ces5-line)}
body.ces5-page .service-hero:before,body.ces5-page .enterprise-hero:before{content:"";position:absolute;inset:-18% -8% auto auto;width:min(54vw,780px);height:min(54vw,780px);background:radial-gradient(circle,rgba(71,217,127,.14),rgba(71,217,127,0) 68%);pointer-events:none}
body.ces5-page .service-hero h1,body.ces5-page .enterprise-hero h1{max-width:920px;font-size:clamp(2.7rem,5vw,5rem);line-height:1;color:var(--ces5-ink);margin:.8rem 0 1.35rem}
body.ces5-page .service-hero p,body.ces5-page .enterprise-hero p{max-width:790px;font-size:clamp(1.06rem,1.4vw,1.25rem);color:#52616b}
body.ces5-page .breadcrumb{font-size:.78rem;color:#748078;margin-bottom:.9rem}
body.ces5-page .section,body.ces5-page .enterprise-section{padding:clamp(76px,8.5vw,124px) 0}
body.ces5-page .section.soft{background:var(--ces5-soft)}
body.ces5-page .section-head{max-width:820px;margin-bottom:clamp(34px,4.5vw,58px)}
body.ces5-page .section-head h2{font-size:clamp(2.05rem,3.65vw,3.7rem);line-height:1.06;color:var(--ces5-ink)}

/* Knowledge / technical articles */
body.ces5-article .kp-article-hero .narrow{max-width:930px}
body.ces5-article .article-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:clamp(42px,6vw,76px);align-items:start}
body.ces5-article .article-body{max-width:820px}
body.ces5-article .article-lead{font-size:clamp(1.18rem,1.65vw,1.42rem);line-height:1.62;color:#3e5146;margin-bottom:36px;padding-bottom:28px;border-bottom:1px solid var(--ces5-line)}
body.ces5-article .article-section{padding:30px 0;border-top:1px solid var(--ces5-line)}
body.ces5-article .article-section:first-of-type{border-top:0}
body.ces5-article .article-section h2{font-size:clamp(1.7rem,2.7vw,2.45rem);line-height:1.08;color:var(--ces5-ink);margin:0 0 .9rem}
body.ces5-article .article-section p{font-size:1.02rem;color:#506058}
body.ces5-article .article-callout{border-left:3px solid var(--ces5-green);background:#f0f8f3;border-radius:0 18px 18px 0;padding:24px 26px;margin:30px 0}
body.ces5-article .article-callout b{color:var(--ces5-ink)}
body.ces5-article .article-side{position:sticky;top:110px;display:grid;gap:16px}
body.ces5-article .side-card{border:1px solid var(--ces5-line);border-radius:20px;padding:24px;background:#fff;box-shadow:0 9px 28px rgba(18,35,28,.04)}
body.ces5-article .side-card h3{color:var(--ces5-ink);margin:.5rem 0 .75rem}
body.ces5-article .tag{display:inline-flex;border-radius:999px;background:#eaf8ef;color:#147d50;padding:.38rem .6rem;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
body.ces5-article .related-link{display:block;padding:.72rem 0;color:var(--ces5-green-dark);font-weight:750;text-decoration:none;border-bottom:1px solid #edf2ef}

/* Problem library */
body.ces5-library .grid.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
body.ces5-library .resource-card{position:relative;border:1px solid var(--ces5-line);border-radius:22px;background:#fff;padding:clamp(24px,3vw,32px);box-shadow:0 8px 28px rgba(18,35,28,.035);transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
body.ces5-library .resource-card:hover{transform:translateY(-5px);box-shadow:var(--ces5-shadow);border-color:#c7ddd0}
body.ces5-library .resource-card h3{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.18;color:var(--ces5-ink);margin:.8rem 0 1.3rem}
body.ces5-library .resource-card .tag{display:inline-flex;border-radius:999px;background:#edf8f1;color:#157449;padding:.38rem .62rem;font-size:.69rem;font-weight:850;text-transform:uppercase;letter-spacing:.07em}
body.ces5-library .card-link{color:var(--ces5-green-dark);font-weight:800;text-decoration:none}

/* Situations / editorial cases */
body.ces5-situations .grid,body.ces5-situations .cases-grid{gap:18px}
body.ces5-situations .card,body.ces5-situations .case-card{border:1px solid var(--ces5-line);border-radius:22px;background:#fff;padding:clamp(24px,3vw,32px);box-shadow:0 8px 28px rgba(18,35,28,.035);transition:transform .28s ease,box-shadow .28s ease}
body.ces5-situations .card:hover,body.ces5-situations .case-card:hover{transform:translateY(-4px);box-shadow:var(--ces5-shadow)}
body.ces5-situations .card h3,body.ces5-situations .case-card h3{color:var(--ces5-ink)}

/* Diagnostic tool */
body.ces5-diagnostic .enterprise-hero{background:linear-gradient(135deg,#fbfcfb 0%,#f3f8f5 55%,#edf6f0 100%)}
body.ces5-diagnostic .assessment{max-width:1040px}
body.ces5-diagnostic .assessment-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:22px;align-items:start}
body.ces5-diagnostic .assessment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
body.ces5-diagnostic .assessment-options label{display:flex;align-items:center;gap:11px;min-height:72px;border:1px solid var(--ces5-line);border-radius:18px;background:#fff;padding:16px 18px;font-weight:700;color:#32433a;cursor:pointer;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}
body.ces5-diagnostic .assessment-options label:hover{border-color:#bcdac8;box-shadow:0 10px 28px rgba(18,35,28,.05);transform:translateY(-2px)}
body.ces5-diagnostic .assessment-options input{accent-color:var(--ces5-green-dark);width:18px;height:18px}
body.ces5-diagnostic .assessment-result{min-height:250px;border:1px solid #cfe2d6;border-radius:24px;background:linear-gradient(145deg,#f4faf6,#edf6f0);padding:clamp(26px,3vw,36px);box-shadow:var(--ces5-shadow)}
body.ces5-diagnostic .assessment-result h3{color:var(--ces5-ink);font-size:1.5rem}
body.ces5-diagnostic #assessmentBtn{margin-top:20px!important}

/* migration/project accents */
body.page-migraciones-multientorno.ces5-page .service-hero:before,body.page-virtualizacion-escritorios-servidores.ces5-page .service-hero:before{background:radial-gradient(circle,rgba(33,143,214,.12),rgba(33,143,214,0) 68%)}
body.page-migraciones-multientorno.ces5-page .eyebrow,body.page-virtualizacion-escritorios-servidores.ces5-page .eyebrow{color:#1779b6}

/* reveal */
body.ces5-page .ces5-reveal{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.22,1,.36,1),transform .72s cubic-bezier(.22,1,.36,1)}
body.ces5-page .ces5-reveal.is-visible{opacity:1;transform:none}

@media(max-width:980px){
 body.ces5-article .article-layout{grid-template-columns:1fr}
 body.ces5-article .article-side{position:static}
 body.ces5-diagnostic .assessment-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
 body.ces5-page .service-hero,body.ces5-page .enterprise-hero{padding:76px 0 68px}
 body.ces5-page .section,body.ces5-page .enterprise-section{padding:64px 0}
 body.ces5-library .grid.two,body.ces5-diagnostic .assessment-options{grid-template-columns:1fr}
 body.ces5-article .side-card{padding:20px}
}
@media(prefers-reduced-motion:reduce){body.ces5-page .ces5-reveal{opacity:1;transform:none;transition:none}}
