:root{--ink:#101c35;--cream:#f7f8fb;--gold:#f4bd32;--red:#e35d55;--blue:#3972b8;--muted:#a9b4c5;--line:rgba(247,248,251,.16);--paper:#eef2f7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--cream);font-family:"Sora","DM Sans",Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 56px));margin:auto}header{position:sticky;top:0;z-index:10;background:rgba(16,28,53,.92);backdrop-filter:blur(15px);border-bottom:1px solid var(--line)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between}.brand img{display:block;width:160px;max-height:52px;object-fit:contain;object-position:left center}.links{display:flex;gap:27px;color:#e8edf5;font-size:13px}.links a{opacity:.85;transition:.2s color,.2s opacity}.links a:hover{color:var(--gold);opacity:1}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:99px;padding:13px 20px;background:var(--gold);color:var(--ink);font-weight:800;font-size:13px;transition:.25s transform,.25s box-shadow}.button:hover{transform:translateY(-3px);box-shadow:6px 7px 0 var(--red)}.intro{position:relative;overflow:hidden;padding:105px 0 95px;background:linear-gradient(130deg,#101c35 0%,#20395f 100%)}.intro:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(244,189,50,.3);border-radius:50%;right:-120px;top:-170px}.kicker{color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.17em;font-weight:800}.intro h1{position:relative;z-index:1;font-size:clamp(48px,7vw,94px);line-height:.94;letter-spacing:-.075em;max-width:820px;margin:17px 0 25px}.intro p{position:relative;z-index:1;color:#d5dce7;font-size:18px;max-width:600px;margin:0}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:70px 0 110px}.card{position:relative;min-height:290px;padding:25px;background:var(--paper);color:var(--ink);border-radius:16px;display:flex;flex-direction:column;overflow:hidden;transition:.3s transform,.3s background,.3s color}.card:before{content:"";position:absolute;width:115px;height:115px;border:1px solid rgba(57,114,184,.3);border-radius:50%;right:-35px;top:-35px}.card:hover{transform:translateY(-8px) rotate(-1deg);background:var(--gold)}.card .tag{position:relative;color:var(--blue);font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.card h2{position:relative;font-size:22px;line-height:1.12;letter-spacing:-.05em;margin:20px 0 12px}.card p{position:relative;color:#62708a;font-size:14px;margin:0 0 20px}.card a{position:relative;margin-top:auto;color:var(--blue);font-weight:800;font-size:13px}.article-head{padding:92px 0 45px;max-width:840px}.article-head h1{font-size:clamp(42px,6.7vw,84px);line-height:.96;letter-spacing:-.075em;margin:16px 0 22px}.article-head p{font-size:19px;color:#cbd4e0;max-width:650px}.back{display:inline-flex;color:var(--gold);font-size:13px;font-weight:800;margin-top:20px}.article-body{max-width:760px;padding-bottom:90px}.article-body h2{font-size:31px;line-height:1.08;letter-spacing:-.055em;margin:42px 0 12px;color:var(--cream)}.article-body h3{font-size:22px;line-height:1.12;letter-spacing:-.04em;margin:32px 0 8px;color:var(--cream)}.article-body p,.article-body li{font-family:"DM Sans",Arial,sans-serif;color:#c2ccdb;font-size:17px}.article-body strong{color:var(--cream)}.article-body ul{padding-left:25px}.article-body img{display:block;width:100%;height:auto;border-radius:16px;margin:27px 0}.article-body figure{margin:28px 0}.article-body blockquote{margin:34px 0;padding:20px 25px;border-left:4px solid var(--gold);background:#20395f;border-radius:0 14px 14px 0;font-size:20px;color:var(--cream)}.article-body hr{border:0;border-top:1px solid var(--line);margin:40px 0}.article-hero{margin:0 0 38px!important}.article-hero img{max-height:480px;object-fit:cover}.cta{margin-top:55px;background:var(--gold);color:var(--ink);border-radius:16px;padding:32px}.cta h2{margin:0 0 8px;font-size:28px;line-height:1.05;letter-spacing:-.05em}.cta p{color:var(--ink);margin:0 0 20px}.cta .button{background:var(--ink);color:var(--cream);box-shadow:none}.cta .button:hover{background:var(--blue)}footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted);font-size:12px}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-row img{width:145px}@media(max-width:800px){.wrap{width:min(100% - 40px,640px)}.links{display:none}.grid{grid-template-columns:1fr;padding:45px 0 75px}.intro{padding:70px 0}.article-head{padding:65px 0 35px}.article-body p,.article-body li{font-size:16px}.footer-row{display:block}.footer-row>*{display:block;margin-bottom:12px}}@media(max-width:500px){.brand img{width:140px}.nav{height:74px}.intro h1{font-size:clamp(46px,14vw,72px)}.article-head h1{font-size:clamp(42px,13vw,70px)}.article-body h2{font-size:27px}.cta{padding:25px}}
 .grid{grid-template-columns:repeat(3,1fr);align-items:stretch}.card{padding:0;overflow:hidden}.card>img{display:block;width:100%;height:180px;object-fit:cover;transition:transform .6s}.card:hover>img{transform:scale(1.06)}.card-art{height:180px;background:linear-gradient(135deg,var(--blue),var(--gold))}.card-content{padding:24px;display:flex;flex-direction:column;flex:1}.card-content h2{margin-top:15px}.card-content p{min-height:44px}.card-content a span{font-size:17px}@media(max-width:800px){.grid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.grid{grid-template-columns:1fr}.card>img,.card-art{height:210px}}
/* Movimiento editorial en los artículos */
.article-head h1{animation:articleTitleIn .9s cubic-bezier(.2,.8,.2,1) both}
.article-head .kicker,.article-head .back{animation:articleFadeIn .7s ease both;animation-delay:.12s}
.article-body .article-animate{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}
.article-body .article-animate.is-visible{opacity:1;transform:none}
.article-body img{transition:transform .8s cubic-bezier(.2,.8,.2,1),filter .8s;will-change:transform}
.article-body figure.article-animate.is-visible img,.article-body img.article-animate.is-visible{transform:scale(1.01);filter:saturate(1.08) contrast(1.02)}
@keyframes articleTitleIn{from{opacity:0;transform:translateY(35px);letter-spacing:-.03em}to{opacity:1;transform:none;letter-spacing:-.075em}}
@keyframes articleFadeIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.article-head h1,.article-head .kicker,.article-head .back{animation:none}.article-body .article-animate{opacity:1;transform:none;transition:none}}

/* Portada editorial del blog */
.blog-hero{padding:88px 0 78px}.blog-hero-grid{display:grid;grid-template-columns:1fr .82fr;gap:60px;align-items:end}.blog-hero h1{margin-bottom:24px}.featured{display:flex;flex-direction:column;gap:10px;color:var(--cream);background:#20395f;border-radius:18px;padding:14px;transform:rotate(2deg);transition:transform .4s,box-shadow .4s}.featured:hover{transform:rotate(0) translateY(-8px);box-shadow:12px 12px 0 var(--gold)}.featured img{display:block;width:100%;height:215px;object-fit:cover;border-radius:11px}.featured span{color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:800}.featured strong{font-size:22px;line-height:1.05;letter-spacing:-.05em;padding:0 6px 7px}@media(max-width:800px){.blog-hero-grid{grid-template-columns:1fr;gap:35px}.featured{transform:none}.featured img{height:220px}}

.load-more-wrap{text-align:center;padding:0 0 100px}.load-more{border:1px solid var(--blue);border-radius:999px;background:transparent;color:var(--blue);padding:15px 25px;font:800 13px "Sora",sans-serif;cursor:pointer;transition:.25s background,.25s color,.25s transform}.load-more:hover{background:var(--blue);color:var(--cream);transform:translateY(-3px)}
/* Lectura clara para los artículos */
body:has(.article-body){background:var(--paper);color:var(--ink)}
body:has(.article-body) header{background:rgba(247,248,251,.94);border-color:rgba(16,28,53,.14)}
body:has(.article-body) .links{color:var(--ink)}
body:has(.article-body) .article-head h1{color:var(--ink)}
body:has(.article-body) .article-head p{color:#53627a}
body:has(.article-body) .article-body{color:var(--ink)}
body:has(.article-body) .article-body h2,body:has(.article-body) .article-body h3{color:var(--ink)}
body:has(.article-body) .article-body p,body:has(.article-body) .article-body li{color:#33445d}
body:has(.article-body) .article-body strong{color:var(--ink)}
body:has(.article-body) .article-body blockquote{background:#dfeaf7;color:var(--ink)}
body:has(.article-body) .article-head,body:has(.article-body) .article-body{width:min(760px,100%);margin-left:auto;margin-right:auto}
body:has(.article-body) footer{border-color:rgba(16,28,53,.14);color:#53627a}
body:has(.article-body) .article-head,body:has(.article-body) .article-body{margin-left:auto;margin-right:auto}
body:has(.article-body){position:relative;overflow-x:hidden}
body:has(.article-body):before,body:has(.article-body):after{content:"";position:fixed;z-index:0;pointer-events:none;border-radius:50%;opacity:.55;filter:blur(.2px);animation:sideFloat 8s ease-in-out infinite}
body:has(.article-body):before{width:220px;height:220px;left:-92px;top:34vh;border:1px solid rgba(57,114,184,.35);box-shadow:0 0 0 28px rgba(244,189,50,.08),0 0 0 56px rgba(57,114,184,.06)}
body:has(.article-body):after{width:150px;height:150px;right:-55px;top:64vh;border:1px solid rgba(227,93,85,.35);box-shadow:0 0 0 22px rgba(227,93,85,.07),0 0 0 44px rgba(57,114,184,.06);animation-delay:-3s}
body:has(.article-body) main,body:has(.article-body) header,body:has(.article-body) footer{position:relative;z-index:1}
body:has(.article-body) .article-head,body:has(.article-body) .article-body{width:min(760px,calc(100% - 40px));margin-left:auto;margin-right:auto}
@keyframes sideFloat{50%{transform:translateY(-18px) rotate(8deg)}}
@media (prefers-color-scheme:dark){
  body:has(.article-body){background:var(--ink);color:var(--cream)}
  body:has(.article-body) header{background:rgba(16,28,53,.94);border-color:var(--line)}
  body:has(.article-body) .links{color:#e8edf5}
  body:has(.article-body) .article-head h1,body:has(.article-body) .article-body h2,body:has(.article-body) .article-body h3{color:var(--cream)}
  body:has(.article-body) .article-head p,body:has(.article-body) .article-body p,body:has(.article-body) .article-body li{color:#c2ccdb}
  body:has(.article-body) .article-body strong{color:var(--cream)}
  body:has(.article-body) .article-body blockquote{background:#20395f;color:var(--cream)}
  body:has(.article-body) footer{border-color:var(--line);color:var(--muted)}
}
