
:root{
  --ink:#0b0b0c; --paper:#ffffff; --soft:#f4f3f1; --line:#0b0b0c1a; --muted:#6b6b70;
  --pink:#e5007e; --pink-ink:#b80065;
  --head:"Archivo","Helvetica Neue",Arial,sans-serif; --text:"Inter","Helvetica Neue",Arial,sans-serif;
  --gutter:clamp(16px,4vw,48px);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:var(--text);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.wrap{width:min(1280px,100% - 2*var(--gutter));margin-inline:auto}
h1,h2,h3{font-family:var(--head);line-height:1.08;letter-spacing:-.015em}
.tag{display:inline-block;font:700 11px/1 var(--text);letter-spacing:.12em;text-transform:uppercase;color:var(--pink)}
.meta{font-size:13px;color:var(--muted)}
.meta b{color:var(--ink);font-weight:600}
a.card:hover h3,a.lead:hover h1,a.row:hover h3{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.proto{background:var(--pink);color:#fff;text-align:center;font-size:12px;padding:6px 12px;letter-spacing:.04em}

/* Barra superior */
.topbar{background:var(--ink);color:#ffffffb3;font-size:12px}
.topbar .wrap{display:flex;justify-content:space-between;align-items:center;height:34px;gap:16px}
.topbar nav{display:flex;gap:16px}
.topbar a:hover{color:#fff}

/* Cabecera compacta y sticky */
header.site{position:sticky;top:0;z-index:50;background:var(--ink);color:#fff;border-bottom:1px solid #ffffff1a}
header.site .wrap{display:flex;align-items:center;gap:28px;height:72px;transition:height .2s}
header.site.small .wrap{height:56px}
.logo img{height:40px;width:auto;transition:height .2s}
header.site.small .logo img{height:30px}
.mainnav{display:flex;gap:24px;font:700 13px/1 var(--text);letter-spacing:.06em;text-transform:uppercase}
.mainnav a{padding:8px 0;border-bottom:2px solid transparent}
.mainnav a:hover,.mainnav a.on{border-color:var(--pink)}
.hright{margin-left:auto;display:flex;align-items:center;gap:14px}
.search{display:flex;align-items:center;gap:8px;background:#ffffff14;border-radius:999px;padding:8px 14px;color:#ffffffb3;font-size:13px;min-width:180px}
.search svg{width:15px;height:15px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:700 13px/1 var(--text);letter-spacing:.04em;padding:12px 18px;border-radius:999px;background:var(--pink);color:#fff;border:0;cursor:pointer;white-space:nowrap}
.btn:hover{background:var(--pink-ink)}
.btn.dark{background:var(--ink)}
.burger{display:none;background:none;border:0;color:#fff;width:40px;height:40px}
@media (max-width:980px){.mainnav,.search{display:none}.burger{display:block}.hright .btn{padding:10px 14px}}

/* Temas */
.topics{border-bottom:1px solid var(--line);background:#fff}
.topics .wrap{display:flex;gap:8px;overflow-x:auto;padding:12px 0;scrollbar-width:none}
.topics a{flex:none;font-size:13px;font-weight:600;padding:7px 14px;border:1px solid var(--line);border-radius:999px}
.topics a:hover{border-color:var(--ink)}
.topics a.hot{background:var(--ink);color:#fff;border-color:var(--ink)}

/* Apertura */
.opening{padding:32px 0 48px}
.opening .wrap{display:grid;grid-template-columns:1.65fr 1fr;gap:40px}
.lead .img{aspect-ratio:16/9;overflow:hidden;border-radius:6px;background:var(--soft)}
.lead img{width:100%;height:100%;object-fit:cover}
.lead .tag{margin-top:20px}
.lead h1{font-size:clamp(30px,4vw,52px);font-weight:900;margin:10px 0 14px}
.lead p.dek{font-size:clamp(17px,1.4vw,19px);color:#36363b;max-width:720px;margin-bottom:12px}
.sidehead{display:flex;justify-content:space-between;align-items:baseline;border-bottom:3px solid var(--ink);padding-bottom:10px;margin-bottom:6px}
.sidehead h2{font-size:20px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.sidehead a{font-size:13px;font-weight:600;color:var(--pink)}
.row{display:grid;grid-template-columns:1fr 112px;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);align-items:start}
.row h3{font-size:18px;font-weight:800;margin:6px 0 8px}
.row .thumb{aspect-ratio:1;border-radius:4px;overflow:hidden;background:var(--soft)}
.row img{width:100%;height:100%;object-fit:cover}
.live::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--pink);margin-right:6px;vertical-align:1px;animation:pulse 1.6s infinite}
@keyframes pulse{50%{opacity:.25}}
@media (max-width:980px){.opening .wrap{grid-template-columns:1fr}}

/* Newsletter */
.news{background:var(--pink);color:#fff}
.news .wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:center;padding:36px 0}
.news h2{font-size:clamp(24px,2.6vw,34px);font-weight:900}
.news p{opacity:.9;margin-top:6px}
.news form{display:flex;gap:8px;background:#fff;border-radius:999px;padding:6px}
.news input{flex:1;border:0;outline:0;font:500 15px var(--text);padding:0 14px;min-width:0;background:transparent;color:var(--ink)}
.news small{display:block;margin-top:10px;opacity:.85;font-size:12px}
@media (max-width:820px){.news .wrap{grid-template-columns:1fr}}

/* Últimas + destacados */
.section{padding:56px 0}
.shead{display:flex;justify-content:space-between;align-items:baseline;border-bottom:3px solid var(--ink);padding-bottom:12px;margin-bottom:28px}
.shead h2{font-size:clamp(22px,2.4vw,30px);font-weight:900;text-transform:uppercase;letter-spacing:.01em}
.shead a{font-size:14px;font-weight:600;color:var(--pink)}
.latest{display:grid;grid-template-columns:3fr 1fr;gap:40px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}
.card .img{aspect-ratio:3/2;border-radius:6px;overflow:hidden;background:var(--soft);margin-bottom:14px}
.card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.card:hover img{transform:scale(1.03)}
.card h3{font-size:19px;font-weight:800;margin:8px 0 10px}
.picks{position:sticky;top:96px;align-self:start}
.picks ol{list-style:none;counter-reset:n}
.picks li{counter-increment:n;display:grid;grid-template-columns:40px 1fr;padding:14px 0;border-bottom:1px solid var(--line)}
.picks li::before{content:counter(n);font:900 30px/1 var(--head);color:var(--pink)}
.picks h3{font-size:16px;font-weight:700;line-height:1.3}
.adslot{margin-top:28px;border:1px dashed #0b0b0c40;border-radius:6px;aspect-ratio:300/250;display:grid;place-items:center;color:var(--muted);font-size:12px;text-align:center;padding:16px;background:var(--soft)}
@media (max-width:1080px){.latest{grid-template-columns:1fr}.picks{position:static}}
@media (max-width:820px){.grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.grid{grid-template-columns:1fr}.row{grid-template-columns:1fr 88px}}

/* Informes con datos */
.dark{background:var(--ink);color:#fff}
.dark .shead{border-color:#fff}
.dark .meta{color:#ffffff99}
.reports{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.report{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:10px;min-height:260px;transition:background .2s}
.report:hover{background:#ffffff17}
.report .num{font:900 clamp(40px,4vw,56px)/1 var(--head);color:var(--pink);letter-spacing:-.03em}
.report h3{font-size:17px;font-weight:700;line-height:1.3}
.report .meta{margin-top:auto}
@media (max-width:980px){.reports{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.reports{grid-template-columns:1fr}}

/* Entrevistas */
.quotes{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.quote{display:grid;grid-template-columns:160px 1fr;gap:24px;background:var(--soft);border-radius:8px;overflow:hidden}
.quote .img{height:100%;min-height:220px}
.quote img{width:100%;height:100%;object-fit:cover}
.quote .body{padding:24px 24px 24px 0;display:flex;flex-direction:column;gap:10px}
.quote blockquote{font:800 clamp(18px,1.6vw,22px)/1.25 var(--head)}
.quote blockquote::before{content:"“";display:block;font-size:56px;line-height:.6;color:var(--pink);margin-bottom:8px}
@media (max-width:900px){.quotes{grid-template-columns:1fr}}
@media (max-width:520px){.quote{grid-template-columns:1fr}.quote .body{padding:0 20px 20px}.quote .img{min-height:180px}}

/* Anúnciate */
.ads .wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center;border-radius:12px;background:var(--soft);padding:40px}
.ads h2{font-size:clamp(24px,2.6vw,34px);font-weight:900}
.ads p{color:#36363b;margin-top:8px;max-width:560px}
.ads .stats{display:flex;gap:28px;flex-wrap:wrap}
.ads .stats div{font-size:13px;color:var(--muted)}
.ads .stats b{display:block;font:900 26px/1.1 var(--head);color:var(--ink)}
@media (max-width:820px){.ads .wrap{grid-template-columns:1fr;padding:28px}}

/* Footer */
footer{background:var(--ink);color:#ffffffb3;margin-top:56px;padding:48px 0 28px;font-size:14px}
footer .top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:28px}
footer img{height:38px;width:auto;margin-bottom:14px}
footer h4{color:#fff;font:700 12px/1 var(--text);letter-spacing:.12em;text-transform:uppercase;margin-bottom:14px}
footer ul{list-style:none;display:grid;gap:8px}
footer a:hover{color:#fff}
footer .bottom{margin-top:36px;padding-top:20px;border-top:1px solid #ffffff1a;display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:12px}
@media (max-width:820px){footer .top{grid-template-columns:1fr 1fr}}

/* ================= Publicidad ================= */
.ad{position:relative;display:grid;place-items:center;text-align:center;background:repeating-linear-gradient(45deg,#f4f3f1,#f4f3f1 10px,#efeeeb 10px,#efeeeb 20px);border:1px solid var(--line);border-radius:6px;color:var(--muted);font-size:12px;line-height:1.4}
.ad::before{content:"Publicidad";position:absolute;top:-18px;left:0;font:600 10px/1 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.ad b{display:block;color:var(--ink);font:800 13px/1.3 var(--head);margin-bottom:2px}
.ad-billboard{width:min(970px,100%);height:250px;margin:28px auto 0}
.ad-wrap{padding:26px 0 6px}
.ad-mpu{width:300px;max-width:100%;height:250px;margin:28px auto 0}
.ad-half{width:300px;max-width:100%;height:600px;margin:28px auto 0}
.ad-inarticle{height:280px;margin:36px 0}
@media (max-width:760px){.ad-billboard{height:100px}.ad-billboard .lg{display:none}}
@media (min-width:761px){.ad-billboard .sm{display:none}}
.native{display:block;background:var(--soft);border-radius:6px;padding:0 0 16px;outline:1px solid var(--line)}
.native .img{border-radius:6px 6px 0 0;margin-bottom:12px;background:linear-gradient(135deg,#1d1d22,#3a2a33);display:grid;place-items:center;color:#fff;font:800 22px var(--head)}
.native .tag,.native h3,.native p{padding:0 16px}
.native .tag{color:var(--muted)}
.native p{font-size:14px;color:#46464b}
.anchor{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);display:none;justify-content:center;padding:6px 40px 6px 8px;box-shadow:0 -6px 20px #0000001a}
.anchor .ad{width:320px;height:50px}
.anchor .ad::before{display:none}
.anchor button{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:var(--ink);color:#fff;width:24px;height:24px;border-radius:50%;cursor:pointer}
@media (max-width:760px){.anchor{display:flex}body{padding-bottom:64px}}
.sponsor{display:flex;align-items:center;gap:10px;font-size:12px;color:#ffffff99;margin:-14px 0 24px}
.sponsor span.logo-ph{display:inline-grid;place-items:center;height:26px;padding:0 12px;border:1px dashed #ffffff55;border-radius:4px;color:#fff;font-weight:700}
.news .sponsor{color:#ffffffcc;margin:10px 0 0}
.news .sponsor span.logo-ph{border-color:#ffffff88}

/* ================= Post ================= */
.progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--pink);z-index:70}
.post-head{padding:36px 0 0}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:18px}
.crumbs a:hover{color:var(--ink)}
.post-head h1{font-size:clamp(32px,4.6vw,60px);font-weight:900;max-width:960px;margin:12px 0 18px}
.post-head .dek{font-size:clamp(18px,1.6vw,22px);color:#36363b;max-width:820px;line-height:1.45}
.byline{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin-top:26px}
.author{display:flex;align-items:center;gap:12px}
.avatar{width:44px;height:44px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font:800 15px var(--head)}
.author b{display:block;font-size:15px}
.share{display:flex;gap:8px}
.share a,.share button{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;background:#fff;cursor:pointer;font:700 12px var(--text);color:var(--ink)}
.share a:hover,.share button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.post-img{margin-top:28px}
.post-img img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:6px;background:var(--soft)}
.post-img figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.post-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:64px;padding:40px 0 20px}
.body{max-width:700px;font-size:18.5px;line-height:1.75;color:#1c1c20}
.body p{margin-bottom:1.25em}
.body p:first-of-type::first-letter{float:left;font:900 64px/0.9 var(--head);color:var(--pink);margin:6px 10px 0 0}
.body h2{font-size:28px;font-weight:900;margin:1.6em 0 .6em}
.keyfacts{background:var(--ink);color:#fff;border-radius:8px;padding:24px;margin:8px 0 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.keyfacts .t{grid-column:1/-1;font:700 11px/1 var(--text);letter-spacing:.14em;text-transform:uppercase;color:var(--pink)}
.keyfacts b{display:block;font:900 30px/1 var(--head);letter-spacing:-.02em}
.keyfacts span{font-size:13px;color:#ffffffb3;line-height:1.35;display:block;margin-top:6px}
@media (max-width:700px){.keyfacts{grid-template-columns:1fr 1fr}}
.pull{border-left:4px solid var(--pink);padding:4px 0 4px 24px;margin:36px 0;font:800 clamp(22px,2.2vw,28px)/1.25 var(--head);color:var(--ink)}
.pull cite{display:block;font:500 14px var(--text);color:var(--muted);font-style:normal;margin-top:12px}
.inline-news{background:var(--soft);border-radius:8px;padding:22px;margin:36px 0;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center}
.inline-news b{font:800 18px/1.25 var(--head);display:block}
.inline-news span{font-size:14px;color:var(--muted)}
@media (max-width:600px){.inline-news{grid-template-columns:1fr}}
.tags{display:flex;flex-wrap:wrap;gap:8px;margin:28px 0}
.tags a{font-size:13px;font-weight:600;padding:6px 12px;border-radius:999px;background:var(--soft)}
.tags a:hover{background:var(--ink);color:#fff}
.authorbox{display:flex;gap:16px;border-top:3px solid var(--ink);padding-top:20px;margin-top:20px}
.authorbox .avatar{width:56px;height:56px;flex:none}
.authorbox p{font-size:15px;color:#46464b}
.sidebar{position:relative}
.sticky{position:sticky;top:90px}
.sidebar .shead{margin-top:36px}
.sidebar .shead h2{font-size:20px}
@media (max-width:1000px){.post-layout{grid-template-columns:1fr}.sidebar .sticky{position:static}}
.related{border-top:1px solid var(--line);padding-top:48px}
.grid.g4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.grid.g4{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.grid.g4{grid-template-columns:1fr}}

/* ================= Medición, móvil y captación ================= */
.m-only{display:none}
@media (max-width:1000px){.m-only{display:grid}.ad-half{display:none}}
a.sponsor{text-decoration:none}
.capture{display:grid;gap:8px}
.capture .row1{display:flex;gap:8px;background:#fff;border-radius:999px;padding:6px;border:1px solid var(--line)}
.capture input[type=email]{flex:1;border:0;outline:0;font:500 15px var(--text);padding:0 14px;min-width:0;background:transparent;color:var(--ink)}
.capture .consent{display:flex;align-items:center;gap:8px;font-size:12px;opacity:.85;cursor:pointer}
.capture .consent a{text-decoration:underline}
.capture .ok{padding:12px 16px;font-weight:700}
.news form.capture{display:grid;background:none;padding:0}
.news .capture .row1{border:0}
.inline-news .capture{min-width:min(380px,100%)}
.inline-news .consent{color:var(--muted)}
/* Pop-up de salida (solo escritorio) */
.exit{position:fixed;inset:0;z-index:90;background:#0b0b0cb3;display:none;place-items:center;padding:16px}
.exit.on{display:grid}
.exit .box{position:relative;background:#fff;border-radius:12px;max-width:520px;width:100%;padding:36px 32px 28px;box-shadow:0 30px 80px #0006}
.exit .box h3{font:800 26px/1.15 var(--head);margin:8px 0 10px}
.exit .box p{color:var(--muted);margin-bottom:18px}
.exit .x{position:absolute;right:14px;top:12px;border:0;background:none;font-size:26px;cursor:pointer;color:var(--muted)}
/* Modo depuración de anuncios (?debug=ads) */
.adbadge{position:absolute;left:6px;bottom:6px;z-index:5;background:#0b0b0c;color:#fff;font:600 10px/1.3 ui-monospace,monospace;padding:4px 6px;border-radius:4px;text-align:left;pointer-events:none}
.adbadge b{color:#ff4f9a;font:inherit;display:inline;margin:0}
.native,.sponsor{position:relative}
.capture .consent input{flex:none;width:16px;height:16px;padding:0;margin:0;accent-color:var(--ink)}
.capture input[type=email]{width:100%}
.news .wrap>div,.inline-news>*{min-width:0}
