:root { --ink:#10100f; --paper:#fcfcfa; --soft:#f1f0ed; --line:#d8d7d1; --red:#e9081d; --pink:#e60056; --muted:#686863; --serif:"Libre Baskerville", Georgia, serif; --sans:"DM Sans", Arial, sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:130px; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); }
a { color:inherit; text-decoration:none; } button { font:inherit; cursor:pointer; } .container { width:min(1180px, calc(100% - 48px)); margin-inline:auto; }
.skip-link { position:absolute; left:-999px; top:0; z-index:20; background:var(--ink); color:#fff; padding:12px; } .skip-link:focus { left:12px; }
.site-header { position:sticky; z-index:12; top:0; background:rgba(252,252,250,.97); border-bottom:1px solid var(--line); transition:box-shadow .2s; } .site-header.scrolled { box-shadow:0 3px 14px #0000000c; }
.utility-bar { height:30px; background:var(--ink); color:#fff; display:flex; justify-content:space-between; align-items:center; padding:0 max(24px, calc((100vw - 1180px)/2)); font-size:9px; letter-spacing:.13em; font-weight:700; } .utility-bar p { margin:0; } .utility-bar a { color:#fff; text-decoration:underline; text-underline-offset:3px; }
.brand-row { height:108px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; } .brand { height:92px; display:flex; align-items:center; justify-content:center; } .brand img { display:block; max-width:240px; max-height:90px; object-fit:contain; }
.menu-toggle { border:0; background:none; width:38px; height:36px; padding:9px 4px; display:flex; gap:5px; flex-direction:column; justify-content:center; } .menu-toggle span { width:25px; height:2px; display:block; background:var(--ink); transition:transform .2s; }
.header-tools { justify-self:end; display:flex; gap:9px; align-items:center; }.weather-slot { border:1px solid var(--ink); width:130px; height:42px; overflow:hidden; display:flex; flex-direction:column; padding:4px 8px; justify-content:center; } .weather-kicker { font-size:7px; line-height:1; font-weight:700; letter-spacing:.12em; color:var(--muted); } .weather-value { font-size:12px; font-weight:700; white-space:nowrap; margin-top:3px; transition:transform .35s ease, opacity .25s; } .weather-value.changing { transform:translateY(-12px); opacity:0; } .weather-value b { color:var(--red); font-size:13px; }
.search-trigger { width:39px; height:39px; border:1px solid var(--line); background:transparent; display:grid; place-items:center; } .search-trigger svg { fill:none; width:18px; stroke:var(--ink); stroke-width:1.8; } .instagram-link { width:39px; height:39px; border-radius:50%; display:grid; place-items:center; background:var(--red); color:#fff; font-size:11px; font-weight:700; }
.main-nav { border-top:1px solid var(--line); }.nav-content { display:flex; justify-content:center; gap:36px; height:38px; align-items:center; }.nav-content a { font-size:11px; font-weight:700; letter-spacing:.04em; position:relative; }.nav-content a::after { content:""; position:absolute; background:var(--red); width:0; height:2px; bottom:-13px; left:0; transition:width .2s; }.nav-content a:hover::after,.nav-content .active::after { width:100%; }
.mobile-menu { display:none; }
.urgent-strip { min-height:43px; display:flex; align-items:center; gap:14px; border-bottom:1px solid var(--line); font-size:12px; font-weight:600; }.urgent-badge { background:var(--red); color:#fff; padding:4px 7px; font-size:9px; letter-spacing:.1em; }.urgent-strip a { flex:1; }.urgent-strip a:hover { text-decoration:underline; }.urgent-time { color:var(--muted); font-size:10px; white-space:nowrap; }
.front-grid { display:grid; grid-template-columns:1.55fr .9fr .75fr; gap:22px; padding:30px 0 39px; border-bottom:1px solid var(--line); }.lead-story { border-right:1px solid var(--line); padding-right:22px; }.story-image,.card-image,.wide-image { display:block; background:center/cover no-repeat; }.story-image { height:300px; }.lead-content { max-width:680px; padding:16px 0 0; }.eyebrow { color:var(--red); margin:0 0 8px; font-size:10px; font-weight:700; letter-spacing:.12em; }.lead-story h1 { margin:0; font:700 clamp(23px,2.2vw,35px)/1.18 var(--serif); letter-spacing:-.035em; }.lead-story h1 a:hover,.story-card h2 a:hover,.story-card h3 a:hover,.wide-card h3 a:hover,.text-story h3 a:hover,.archive-item h3 a:hover { color:var(--red); }.lead-summary { margin:12px 0; color:#4e4e49; font:14px/1.6 var(--serif); }.story-meta,.story-card time,.wide-card time,.text-story time,.compact-story time { color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.06em; }.story-meta { display:flex; align-items:center; gap:8px; }.text-share { padding:0; border:0; background:none; color:var(--red); font-size:9px; font-weight:700; letter-spacing:.06em; }
.secondary-stories { display:grid; gap:22px; }.story-card { min-width:0; }.card-image { height:130px; margin-bottom:12px; }.story-card h2 { margin:0 0 12px; font:700 17px/1.3 var(--serif); letter-spacing:-.025em; }.story-card h3 { margin:0 0 12px; font:700 18px/1.35 var(--serif); letter-spacing:-.025em; }.latest-panel { background:var(--soft); padding:16px; }.panel-title { display:flex; gap:9px; align-items:center; border-bottom:2px solid var(--ink); padding-bottom:10px; }.panel-title span { width:7px;height:7px;border-radius:50%;background:var(--red); }.panel-title h2 { font-size:13px;margin:0;text-transform:uppercase;letter-spacing:.05em; }.latest-panel ol { list-style:none; padding:0; margin:0; }.latest-panel li { display:grid;grid-template-columns:37px 1fr; gap:5px; padding:14px 0; border-bottom:1px solid #d6d5d0; font:600 12px/1.35 var(--serif); }.latest-panel time { color:var(--red); font:700 9px var(--sans); }.latest-panel li a:hover { text-decoration:underline; }.all-latest { margin-top:15px; display:flex;justify-content:space-between; font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em; }.all-latest span,.section-heading a span { color:var(--red); font-size:15px; }
.ad { border:1px solid #d9d8d4; color:#6c6b68; background:#f6f5f2; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; }.ad span { font-size:8px;letter-spacing:.13em;font-weight:700; }.ad strong { margin-top:6px;color:#aaa8a1;font:700 15px var(--serif); }.ad small { margin-top:3px;font-size:9px; }.ad-horizontal { min-height:120px; margin:32px 0 54px; }.ad-inline { min-height:105px; margin:48px 0; }.ad-inline a { margin-top:8px; color:var(--red);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em; }
.section-block { padding:0 0 51px; }.section-heading { height:61px; display:flex;align-items:center;border-top:3px solid var(--ink);border-bottom:1px solid var(--line);gap:12px;margin-bottom:22px; }.section-index { margin:0;color:var(--red);font:700 12px var(--serif); }.section-heading h2 { margin:0;font:700 24px var(--serif);letter-spacing:-.04em; }.section-heading a { margin-left:auto;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em; }.three-grid,.culture-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:24px; }.three-grid > *+* { border-left:1px solid var(--line);padding-left:24px; }.text-story { background:var(--ink);color:#fff;padding:23px;min-height:100%;display:flex;flex-direction:column;align-items:flex-start; }.text-story .eyebrow { color:#ff4e5d; }.text-story h3 { margin:3px 0 14px;font:700 22px/1.38 var(--serif);letter-spacing:-.025em; }.text-story p:not(.eyebrow) { color:#dededa;font:13px/1.55 var(--serif); }.text-story time { margin-top:auto;color:#fff; }
.sports-layout { display:grid;grid-template-columns:1.7fr .9fr;gap:25px; }.wide-card { background:var(--soft);display:grid;grid-template-columns:1.2fr 1fr; }.wide-image { min-height:260px;position:relative; }.play-badge { position:absolute;bottom:15px;left:15px;width:40px;height:40px;border-radius:50%;background:var(--red);color:#fff;display:grid;place-items:center;font-size:14px;padding-left:2px; }.wide-card > div { padding:25px; }.wide-card h3 { margin:4px 0 12px;font:700 24px/1.35 var(--serif);letter-spacing:-.035em; }.wide-card p:not(.eyebrow) { color:#55554f;font:13px/1.55 var(--serif); }.compact-list { display:grid;gap:20px; }.compact-story { display:grid;grid-template-columns:115px 1fr;gap:13px;border-bottom:1px solid var(--line);padding-bottom:20px; }.mini-image { min-height:88px;background:center/cover no-repeat; }.compact-story h3 { margin:0 0 9px;font:700 16px/1.35 var(--serif);letter-spacing:-.02em; }
.archive-section { padding-bottom:62px; }.archive-grid { display:grid;grid-template-columns:repeat(4,1fr); }.archive-item { min-height:150px;padding:18px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line); }.archive-item:nth-child(4n) { border-right:0; }.archive-item time { color:var(--red);font-size:9px;font-weight:700;letter-spacing:.07em; }.archive-item h3 { margin:11px 0 0;font:700 16px/1.42 var(--serif);letter-spacing:-.02em; }.archive-item.is-hidden { display:none; }.load-more { display:block;margin:25px auto 0;border:1px solid var(--ink);padding:12px 18px;background:transparent;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em; }.load-more:hover { background:var(--ink);color:#fff; }
.site-footer { background:var(--ink);color:#fff;padding:47px 0 18px; }.footer-grid { display:grid;grid-template-columns:1.35fr .6fr 1fr;gap:45px; }.footer-logo { display:block;width:205px;max-height:77px;object-fit:contain;margin:-8px 0 10px -4px; }.footer-grid p { color:#c5c5c0;font:13px/1.65 var(--serif);margin:0; }.footer-grid h2 { color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 14px; }.footer-grid a { display:block;color:#e5e5e0;font-size:12px;margin:9px 0; }.footer-grid a:hover { color:#ff5362; }.footer-grid .footer-cta { color:#ff5362;font-size:11px;font-weight:700;text-transform:uppercase;line-height:1.5;letter-spacing:.06em;margin:14px 0; }.footer-bottom { margin-top:44px;padding-top:14px;border-top:1px solid #3a3a36;display:flex;gap:20px;color:#a4a4a0;font-size:9px; }.footer-bottom a { margin-left:auto; }.footer-bottom a+a { margin-left:0; }
.search-dialog { position:fixed;z-index:50;inset:0;background:#111111e8;display:none;align-items:flex-start;justify-content:center;padding:15vh 20px 20px;overflow:auto; }.search-dialog.open { display:flex; }.search-box { width:min(640px,100%);color:#fff;position:relative; }.search-box h2 { margin:0 0 30px;font:700 clamp(27px,4vw,45px) var(--serif);letter-spacing:-.05em; }.search-box label { display:block;font-size:11px;margin-bottom:8px; }.search-box input { width:100%;border:0;border-bottom:2px solid #fff;background:transparent;color:#fff;padding:11px 0;font:22px var(--serif);outline:0; }.search-box input::placeholder { color:#9f9f9b; }.search-status { color:#bbb;font-size:12px; }.search-results { display:grid;gap:1px;margin-top:18px; }.search-result { border-top:1px solid #555;padding:12px 0;color:#fff;font:14px/1.45 var(--serif); }.search-result span { display:block;color:#ff6672;font:700 9px var(--sans);letter-spacing:.08em;margin-bottom:4px; }.search-result:hover { color:#ff6672; }.close-search { position:absolute;right:0;top:-18px;border:0;background:none;color:#fff;font-size:30px;line-height:1; }
.image-city { background-image:linear-gradient(0deg,#0005,#0000),url('https://images.unsplash.com/photo-1449158743715-0a90ebb6d2d8?auto=format&fit=crop&w=1200&q=85'); }.image-politics { background-image:url('https://images.unsplash.com/photo-1529107386315-e1a2ed48a620?auto=format&fit=crop&w=700&q=80'); }.image-sports,.image-football { background-image:url('https://images.unsplash.com/photo-1579952363873-27f3bade9f55?auto=format&fit=crop&w=1000&q=85'); }.image-meeting { background-image:url('https://images.unsplash.com/photo-1497366754035-f200968a6e72?auto=format&fit=crop&w=800&q=80'); }.image-interview { background-image:url('https://images.unsplash.com/photo-1556761175-b413da4baf72?auto=format&fit=crop&w=800&q=80'); }.image-basket { background-image:url('https://images.unsplash.com/photo-1546519638-68e109498ffc?auto=format&fit=crop&w=500&q=75'); }.image-run { background-image:url('https://images.unsplash.com/photo-1552674605-db6ffd4facb5?auto=format&fit=crop&w=500&q=75'); }.image-art { background-image:url('https://images.unsplash.com/photo-1549490349-8643362247b5?auto=format&fit=crop&w=700&q=80'); }.image-music { background-image:url('https://images.unsplash.com/photo-1493225457124-a3eb161ffa5f?auto=format&fit=crop&w=700&q=80'); }.image-cinema { background-image:url('https://images.unsplash.com/photo-1485846234645-a62644f84728?auto=format&fit=crop&w=700&q=80'); }
@media (max-width:900px) { .front-grid { grid-template-columns:1.3fr .9fr; }.latest-panel { grid-column:1/-1; }.latest-panel ol { display:grid;grid-template-columns:repeat(5,1fr);gap:0; }.latest-panel li { display:block;padding:12px;border-bottom:0;border-right:1px solid #d6d5d0; }.latest-panel li:last-child { border:0; }.latest-panel time { display:block;margin-bottom:6px; }.sports-layout { grid-template-columns:1fr; }.compact-list { grid-template-columns:1fr 1fr; }.compact-story { border-top:1px solid var(--line);padding-top:15px; }.footer-grid { grid-template-columns:1.2fr .7fr 1fr;gap:25px; } }
@media (max-width:680px) { .container { width:min(100% - 30px, 580px); }.utility-bar { padding:0 15px; }.utility-bar p { font-size:8px; }.utility-bar a { font-size:8px; }.brand-row { height:71px; }.brand { height:68px; }.brand img { max-height:64px;max-width:174px; }.header-tools { gap:6px; }.weather-slot { width:92px;height:34px;padding:4px 6px; }.weather-kicker { font-size:6px; }.weather-value { font-size:10px;margin-top:2px; }.search-trigger,.instagram-link { width:32px;height:32px; }.search-trigger { display:none; }.main-nav { display:none; }.site-header { position:sticky; }.mobile-menu { position:fixed;z-index:11;top:101px;left:0;right:0;display:flex;flex-direction:column;background:var(--paper);border-bottom:1px solid var(--line);padding:0 15px;transform:translateY(-120%);transition:transform .25s;box-shadow:0 8px 14px #00000010; }.mobile-menu.open { transform:translateY(0); }.mobile-menu a { padding:13px 0;border-bottom:1px solid var(--line);font-size:12px;font-weight:700; }.urgent-strip { font-size:10px;gap:8px;min-height:39px; }.urgent-time { display:none; }.front-grid { display:block;padding:21px 0 30px; }.lead-story { border:0;padding:0 0 22px;border-bottom:1px solid var(--line); }.story-image { height:225px; }.lead-content { padding-top:12px; }.lead-story h1 { font-size:26px; }.lead-summary { font-size:13px; }.secondary-stories { grid-template-columns:1fr 1fr;gap:14px;padding:22px 0; }.card-image { height:105px;margin-bottom:9px; }.story-card h2 { font-size:14px; }.secondary-stories .eyebrow { margin-bottom:6px; }.latest-panel { padding:14px; }.latest-panel ol { display:block; }.latest-panel li { display:grid;padding:12px 0;border-right:0;border-bottom:1px solid #d6d5d0; }.latest-panel li:last-child { border-bottom:0; }.ad-horizontal { min-height:86px;margin:25px 0 37px; }.section-block { padding-bottom:37px; }.section-heading { height:52px;margin-bottom:16px; }.section-heading h2 { font-size:21px; }.three-grid,.culture-grid { grid-template-columns:1fr;gap:19px; }.three-grid > *+* { border-left:0;border-top:1px solid var(--line);padding-left:0;padding-top:19px; }.culture-grid .story-card { border-bottom:1px solid var(--line);padding-bottom:19px; }.culture-grid .story-card:last-child { border:0; }.culture-grid { gap:18px; }.text-story { min-height:190px; }.sports-layout { gap:17px; }.wide-card { grid-template-columns:1fr; }.wide-image { min-height:205px; }.wide-card > div { padding:18px; }.wide-card h3 { font-size:21px; }.compact-list { grid-template-columns:1fr;gap:0; }.compact-story { padding:15px 0; }.archive-grid { grid-template-columns:1fr 1fr; }.archive-item { min-height:135px;padding:14px; }.archive-item:nth-child(4n) { border-right:1px solid var(--line); }.archive-item:nth-child(2n) { border-right:0; }.archive-item h3 { font-size:14px; }.site-footer { padding-top:37px; }.footer-grid { grid-template-columns:1fr;gap:27px; }.footer-bottom { flex-wrap:wrap;margin-top:32px;gap:11px; }.footer-bottom a { margin-left:0; }.footer-logo { width:180px; }.search-dialog { padding-top:18vh; } }

/* Ajustes de portada: navegación, urgentes y publicidad lateral. */
.menu-toggle { visibility:hidden; }
.urgent-strip { min-height:61px; display:flex; align-items:center; gap:17px; margin-top:12px; padding:10px 16px; background:var(--red); color:#fff; font-size:15px; font-weight:700; box-shadow:inset 0 -3px 0 #b50018; }
.urgent-badge { background:var(--ink); color:#fff; padding:7px 9px; font-size:9px; letter-spacing:.12em; white-space:nowrap; }
.urgent-time { color:#ffe4e7; font-size:10px; font-weight:600; }
.latest-panel { align-self:start; position:sticky; top:141px; }
.ad-rail { min-height:250px; margin-top:18px; padding:15px; }
.ad-rail strong { font-size:18px; line-height:1.25; }
@media (max-width:900px) { .latest-panel { position:static; } .ad-rail { min-height:105px; margin-top:16px; } }
@media (max-width:680px) { .menu-toggle { visibility:visible; } .urgent-strip { font-size:12px; line-height:1.35; gap:9px; min-height:52px; margin-top:8px; padding:8px 10px; } .urgent-badge { font-size:8px; padding:6px; } .ad-rail { min-height:84px; } }

/* Página de noticia */
.article-shell { padding-top:28px; }.article-breadcrumb { display:flex; gap:8px; color:var(--muted); font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }.article-breadcrumb a:hover { color:var(--red); }.article-layout { display:grid; grid-template-columns:minmax(0, 760px) 280px; justify-content:space-between; gap:45px; padding:19px 0 56px; }.article-kicker { display:flex; gap:8px; align-items:center; color:var(--red); font-size:10px; font-weight:700; letter-spacing:.12em; }.article-urgent { background:var(--red); color:#fff; padding:4px 6px; font-size:8px; }.article-content h1 { margin:15px 0 17px; max-width:920px; font:700 clamp(31px,4.15vw,58px)/1.12 var(--serif); letter-spacing:-.055em; }.article-deck { margin:0 0 20px; color:#51514c; font:17px/1.65 var(--serif); }.article-info { display:flex; gap:10px; flex-wrap:wrap; padding:12px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font-size:9px; font-weight:700; letter-spacing:.06em; }.article-info span::before { content:'•'; color:var(--red); margin-right:10px; }.article-actions,.article-end-actions { display:flex; align-items:center; gap:8px; padding:13px 0; }.article-actions > span,.article-end-actions > span { margin-right:2px; color:var(--muted); font-size:9px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }.article-actions button,.article-actions a,.article-end-actions button,.article-end-actions a { border:1px solid var(--line); background:#fff; padding:7px 9px; font-size:9px; font-weight:700; }.article-actions button:hover,.article-actions a:hover,.article-end-actions button:hover,.article-end-actions a:hover { background:var(--ink); border-color:var(--ink); color:#fff; }.article-figure { margin:4px 0 8px; }.article-figure img { display:block; width:100%; max-height:510px; object-fit:cover; }.article-figure figcaption { padding-top:7px; color:var(--muted); font-size:9px; line-height:1.4; }.article-body { width:min(100%, 675px); margin:28px auto; }.article-body p { margin:0 0 20px; font:17px/1.8 var(--serif); }.article-body h2,.article-gallery h2 { margin:0 0 15px; font:700 27px/1.3 var(--serif); letter-spacing:-.045em; }.article-body blockquote { margin:32px 0; padding:0 0 0 21px; border-left:4px solid var(--red); font:700 23px/1.5 var(--serif); letter-spacing:-.03em; }.ad-article { min-height:130px; margin:38px 0; }.article-gallery { margin:42px 0; padding:23px; background:var(--soft); }.article-gallery h2 { font-size:23px; }.gallery-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }.gallery-grid img { width:100%; height:230px; object-fit:cover; }.article-video { position:relative; margin:38px 0; background:var(--ink); color:#fff; }.article-video img { display:block; width:100%; height:360px; object-fit:cover; opacity:.62; }.article-video button { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:62px; height:62px; border:0; border-radius:50%; background:var(--red); color:#fff; font-size:20px; padding-left:5px; }.article-video p { position:absolute; left:15px; bottom:0; font-size:9px; font-weight:700; letter-spacing:.06em; }.article-end-actions { border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.article-aside { align-self:start; position:sticky; top:141px; }.aside-latest { border-top:3px solid var(--ink); }.aside-latest .eyebrow { padding-top:12px; }.aside-latest a { display:block; padding:12px 0; border-bottom:1px solid var(--line); font:700 13px/1.43 var(--serif); }.aside-latest a:hover { color:var(--red); }.aside-latest time { display:block; margin-top:6px; color:var(--red); font:700 9px var(--sans); }.ad-article-rail { min-height:310px; margin-top:25px; }.related-section { padding:0 0 64px; }.related-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }.related-grid article { border-bottom:1px solid var(--line); padding-bottom:16px; }.related-image { display:block; height:170px; background:center/cover no-repeat; margin-bottom:12px; }.related-grid h3 { margin:0; font:700 18px/1.4 var(--serif); letter-spacing:-.03em; }.editor-pick { position:relative; }.editor-pick::before { content:'RECOMENDADA'; position:absolute; z-index:1; top:8px; left:8px; padding:5px 6px; background:var(--red); color:#fff; font-size:8px; font-weight:700; letter-spacing:.08em; }
@media (max-width:900px) { .article-layout { grid-template-columns:minmax(0, 1fr) 220px; gap:28px; }.article-aside { top:123px; }.ad-article-rail { min-height:220px; }.article-content h1 { font-size:clamp(31px,5vw,48px); } }
@media (max-width:680px) { .article-shell { padding-top:18px; }.article-layout { display:block; padding-bottom:38px; }.article-content h1 { margin-top:12px; font-size:32px; }.article-deck { font-size:15px; line-height:1.55; }.article-info { line-height:1.55; }.article-figure img { height:260px; }.article-body { margin:24px 0; }.article-body p { font-size:16px; line-height:1.75; }.article-body blockquote { font-size:20px; }.article-gallery { margin:30px 0; padding:16px; }.gallery-grid img { height:150px; }.article-video img { height:235px; }.article-aside { position:static; margin-top:30px; }.ad-article-rail { min-height:90px; margin-top:18px; }.related-section { padding-bottom:42px; }.related-grid { grid-template-columns:1fr; gap:20px; }.related-image { height:190px; } }
