:root{--ink:#071629;--blue:#0d2c52;--cyan:#00dbc8;--lime:#dfff00;--bg:#f4f7f9;--card:#fff;--muted:#627081;--line:#dfe6ec;--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Catamaran",ui-sans-serif,system-ui,sans-serif;color:var(--ink);background:var(--bg);font-size:16px}a{color:inherit;text-decoration:none}button,input{font:inherit}
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{max-width:1240px;margin:auto;height:76px;padding:0 22px;display:grid;grid-template-columns:auto 1fr auto;gap:28px;align-items:center}
.brand{display:flex;align-items:center}.brand img{display:block;width:126px;height:auto;max-height:48px;object-fit:contain}.footer-brand img{width:110px;max-height:none}.search{max-width:620px;width:100%;margin:auto;display:flex;background:#f0f4f6;border:1px solid transparent;border-radius:14px;overflow:hidden}.search:focus-within{background:#fff;border-color:#b9c7d0}.search input{flex:1;border:0;background:transparent;outline:0;padding:12px 15px;min-width:0}.search button,.app-link{border:0;background:var(--ink);color:white;padding:12px 17px;border-radius:11px;font-weight:800;cursor:pointer}
.nav{max-width:1240px;margin:auto;padding:0 22px 12px;display:flex;gap:25px;overflow:auto;white-space:nowrap;font-size:14px;font-weight:800}.nav a:hover{color:#00a98e}
.ticker{height:42px;background:var(--ink);color:#fff;display:flex;align-items:center;gap:18px;padding:0 max(20px,calc((100% - 1196px)/2));overflow:hidden}.ticker strong{background:var(--lime);color:var(--ink);padding:4px 8px;border-radius:6px;font-size:12px;text-transform:uppercase}.ticker div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}
main{max-width:1240px;margin:auto;padding:28px 22px 70px}.hero{padding:22px 0 8px}.hero-title{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:22px}.hero-title>span,.eyebrow{font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#008e7f}.hero h1{font-size:clamp(38px,5.2vw,68px);line-height:.93;letter-spacing:-.055em;margin:0}.hero h1 em{font-style:normal;color:#00a991}
.hero-grid{display:grid;grid-template-columns:1.5fr 1fr;grid-template-rows:1fr 1fr;gap:14px;min-height:490px}.story.hero-story:first-child{grid-row:1/3}.story{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;justify-content:flex-end;min-height:210px;position:relative;overflow:hidden;transition:.2s transform,.2s box-shadow}.story:hover{transform:translateY(-2px);box-shadow:0 18px 45px rgba(5,25,45,.08)}.story:before{content:"";position:absolute;inset:0;background:linear-gradient(145deg,rgba(0,219,200,.08),transparent 45%,rgba(223,255,0,.12));pointer-events:none}.story .cat{font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#009b84;margin-bottom:10px}.story h3{font-size:21px;line-height:1.08;letter-spacing:-.025em;margin:0 0 12px;position:relative}.story.hero-story:first-child h3{font-size:clamp(28px,3vw,42px)}.story .meta{font-size:12px;color:var(--muted);position:relative}.story .arrow{position:absolute;right:18px;top:18px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#eef4f4;font-weight:900}
.skeleton{border-radius:var(--radius);background:linear-gradient(100deg,#e8edef 20%,#f5f7f8 40%,#e8edef 60%);background-size:200% 100%;animation:sk 1.3s infinite}.skeleton.big{grid-row:1/3}@keyframes sk{to{background-position:-200% 0}}
.quick-panel{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;margin:28px 0}.weather-card,.now-card{border-radius:var(--radius);padding:24px;background:#fff;border:1px solid var(--line)}.weather-card{display:grid;grid-template-columns:1fr auto;gap:16px;background:linear-gradient(145deg,#071629,#0c365d);color:#fff}.weather-card .eyebrow{color:var(--lime)}.weather-card h2{font-size:28px;margin:4px 0}.weather-card p{margin:0;color:#c7d4df}.weather-temp{font-size:52px;font-weight:900;letter-spacing:-.06em}.weather-card form{grid-column:1/-1;display:flex;gap:8px}.weather-card input{flex:1;border:1px solid #ffffff2b;background:#ffffff12;color:#fff;border-radius:10px;padding:10px}.weather-card button{border:0;background:var(--lime);color:var(--ink);border-radius:10px;padding:10px 14px;font-weight:900}.quick-links{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.quick-links a{padding:14px;border-radius:12px;background:#f2f6f6;font-weight:800;font-size:14px}.quick-links a:hover{background:#e6f9f5}
.portal-section{padding:62px 0 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.section-head h2{font-size:clamp(30px,4vw,44px);letter-spacing:-.04em;margin:4px 0 0}.section-head button{border:1px solid var(--line);background:#fff;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.stories{display:grid;gap:14px}.stories.four{grid-template-columns:repeat(4,1fr)}.stories.two{grid-template-columns:1fr 1fr}
.dark{background:var(--ink);color:white;border-radius:30px;padding:40px;margin-top:62px}.dark .eyebrow{color:var(--lime)}.dark .story{background:#0d2239;border-color:#20364c;color:#fff}.dark .story .meta{color:#aebdca}.dark .story .arrow{background:#17324d}.dark .section-head button{background:#16314b;color:#fff;border-color:#28445f}
.split{display:grid;grid-template-columns:1fr 1fr;gap:28px}.compact .story{min-height:175px}.compact .story h3{font-size:18px}
.search-results{position:fixed;z-index:80;inset:0;background:#f7fafb;padding:40px max(22px,calc((100% - 1196px)/2));overflow:auto}footer{max-width:1196px;margin:0 auto 40px;border-top:1px solid var(--line);padding:28px 0;display:flex;align-items:center;gap:24px;color:var(--muted)}.footer-brand{display:flex;align-items:center}.footer-brand img{width:110px;height:auto}.footer-brand+p{flex:1}footer>a{font-weight:900;color:#008e7f}
@media(max-width:900px){.header-inner{grid-template-columns:auto 1fr}.app-link{display:none}.hero-grid{grid-template-columns:1fr;grid-template-rows:auto}.story.hero-story:first-child{grid-row:auto}.stories.four{grid-template-columns:1fr 1fr}.split,.quick-panel{grid-template-columns:1fr}.quick-links{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.header-inner{height:auto;padding:12px 15px;grid-template-columns:1fr}.brand{font-size:28px}.nav{padding:0 15px 11px}.hero-title{display:block}.hero h1{font-size:42px}.hero-grid{min-height:0}.stories.four,.stories.two{grid-template-columns:1fr}.dark{margin-left:-10px;margin-right:-10px;padding:28px 18px;border-radius:22px}.quick-links{grid-template-columns:1fr}.weather-temp{font-size:42px}footer{margin:0 18px 30px;align-items:flex-start;flex-wrap:wrap}footer p{min-width:100%;order:3}}
.story{padding:0;min-height:240px;background:#0b1d31;color:#fff;border:0}
.story:before{display:none}
.story-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.001);transition:transform .35s ease}
.story:hover .story-img{transform:scale(1.035)}
.story-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,15,28,.06) 15%,rgba(5,15,28,.24) 48%,rgba(5,15,28,.92) 100%)}
.story-content{position:relative;z-index:2;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;min-height:240px;width:100%}
.story .cat{color:#dfff00;margin-bottom:8px;text-shadow:0 1px 5px rgba(0,0,0,.35)}
.story h3{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.45);margin-right:18px}
.story .meta{color:#d7e1e8}
.story.no-image{background:linear-gradient(145deg,#0c2a49,#071629)}
.hero-grid .story{min-height:240px}
.hero-grid .story.hero-story:first-child .story-content{min-height:494px;padding:30px}
.hero-grid .story.hero-story:first-child h3{font-size:clamp(32px,3.4vw,48px);max-width:92%}
.dark .story{background:#0d2239}
.article-page{background:#f3f6f8}
.article-page .header-inner{grid-template-columns:auto 1fr;justify-content:space-between}
.back-home{justify-self:end;font-weight:800;color:#0b7e72}
.article-wrap{max-width:1100px;margin:auto;padding:38px 22px 80px}
.article-card{background:#fff;border-radius:30px;padding:36px;box-shadow:0 24px 70px rgba(5,25,45,.08)}
.article-kicker{font-size:13px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#008e7f}
.article-card h1{font-size:clamp(38px,6vw,72px);line-height:.98;letter-spacing:-.045em;margin:14px 0 12px;max-width:1000px}
.article-meta{color:#6b7783;font-size:15px;margin-bottom:28px}
.article-card figure{margin:0 0 30px;border-radius:24px;overflow:hidden;background:#e9eef2}
.article-card figure img{display:block;width:100%;max-height:620px;object-fit:cover}
.article-card figcaption{font-size:12px;color:#7a8792;padding:9px 12px;background:#fff}
.article-summary{max-width:850px;margin:34px auto 0}
.article-summary>span{display:inline-block;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#008e7f;margin-bottom:10px}
.article-summary p{font-size:24px;line-height:1.45;margin:0;color:#1e2e3e}
.article-note{max-width:850px;margin:26px auto 0;padding:16px 18px;border-radius:14px;background:#f3f7f7;color:#66737d;font-size:14px}
.article-actions{max-width:850px;margin:22px auto 0;display:flex;gap:12px;flex-wrap:wrap}
.article-actions a{padding:12px 16px;border-radius:11px;font-weight:800;background:#eef3f4}
.article-actions .source-link{background:#071629;color:#fff}
.related-block{padding-top:54px}
.article-empty{background:#fff;border-radius:24px;padding:40px;text-align:center}
.article-empty h1{font-size:42px}
@media(max-width:620px){
  .article-wrap{padding:20px 12px 50px}
  .article-card{padding:20px;border-radius:22px}
  .article-card h1{font-size:38px}
  .article-summary p{font-size:20px}
  .hero-grid .story.hero-story:first-child .story-content{min-height:360px}
}
/* LEMO Portal v2 */
.hero-title{align-items:flex-end}
.hero-title>div>span{display:block;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#008e7f;margin-bottom:10px}
.ask-top{white-space:nowrap;padding:13px 17px;border-radius:13px;background:#071629;color:#fff;font-weight:900;box-shadow:0 10px 28px rgba(7,22,41,.12)}
.ask-top:hover{background:#0c3155}
.hero-grid{grid-template-columns:1.7fr 1fr 1fr;grid-template-rows:1fr 1fr;min-height:540px}
.hero-grid .story:first-child{grid-row:1/3;grid-column:1}
.hero-grid .story{min-height:260px}
.hero-grid .story:first-child .story-content{min-height:540px;padding:32px}
.hero-grid .story:first-child h3{font-size:clamp(34px,3.7vw,52px);max-width:92%}
.story{position:relative}
.story-hit{position:absolute;inset:0;z-index:3}
.story-content{z-index:2;pointer-events:none}
.personalize{margin:34px 0 14px;padding:26px;border-radius:24px;background:#fff;border:1px solid var(--line);display:grid;grid-template-columns:1fr 1.3fr;gap:24px;align-items:center}
.personalize h2{font-size:30px;line-height:1;margin:4px 0 7px;letter-spacing:-.035em}
.personalize p{margin:0;color:var(--muted)}
.interest-chips{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.interest-chips button{border:1px solid var(--line);background:#f4f7f8;color:#43515e;padding:10px 14px;border-radius:999px;font-weight:800;cursor:pointer}
.interest-chips button.active{background:#071629;color:#fff;border-color:#071629}
.local-section{background:linear-gradient(145deg,#ecfffb,#f8fff0);border-radius:30px;padding:38px;margin-top:54px}
.local-section .story{box-shadow:0 10px 28px rgba(0,80,70,.08)}
.world{background:linear-gradient(145deg,#edf2ff,#fff);border-radius:30px;padding:38px;margin-top:62px}
.world .eyebrow{color:#4562c8}
.now-card h2{font-size:28px;margin:5px 0 18px;letter-spacing:-.03em}
.portal-section[hidden]{display:none!important}
@media(max-width:980px){
  .hero-grid{grid-template-columns:1.35fr 1fr;grid-template-rows:repeat(4,auto);min-height:0}
  .hero-grid .story:first-child{grid-row:1/3;grid-column:1}
  .hero-grid .story:first-child .story-content{min-height:520px}
  .personalize{grid-template-columns:1fr}.interest-chips{justify-content:flex-start}
}
@media(max-width:700px){
  .hero-title{display:block}.ask-top{display:inline-flex;margin-top:18px}
  .hero-grid{grid-template-columns:1fr;display:grid}
  .hero-grid .story:first-child{grid-row:auto;grid-column:auto}
  .hero-grid .story:first-child .story-content{min-height:420px;padding:24px}
  .hero-grid .story:first-child h3{font-size:36px}
  .hero-grid .story{min-height:250px}
  .local-section,.world{margin-left:-10px;margin-right:-10px;padding:26px 16px;border-radius:22px}
  .personalize{padding:20px}
}


.portal-section,.hero{scroll-margin-top:132px}

/* Kill any legacy AI UI that may survive in cached markup */
.story-ai,
.ai-tools,
.ask-top,
.app-link {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Cinta de titulares continua, una sola linea en movil */
.ticker{gap:0!important;display:flex!important;flex-wrap:nowrap!important;padding-left:12px!important;padding-right:0!important;height:44px!important}
.ticker strong{flex:0 0 auto!important;white-space:nowrap!important;line-height:1!important;padding:9px 12px!important;border-radius:4px!important;margin-right:14px!important;font-size:12px!important}
.ticker .ticker-viewport{flex:1 1 0!important;min-width:0!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:clip!important}
.ticker .ticker-track{display:inline-block!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;width:max-content!important;animation:lemo-headlines 28s linear infinite!important;will-change:transform}
@keyframes lemo-headlines{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:600px){.ticker strong{font-size:11px!important;padding:9px 8px!important;margin-right:10px!important}.ticker{height:40px!important}}
/* Cabecera LEMO centrada como diseño aprobado */
.site-header .header-inner{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:16px!important;padding:22px 22px 16px!important}
.site-header .brand{justify-content:center!important;width:100%!important}
.site-header .brand img{width:clamp(190px,27vw,275px)!important;max-height:none!important;height:auto!important}
.site-header .search{max-width:760px!important;width:100%!important}
.site-header .nav{justify-content:flex-start!important}
@media(max-width:600px){.site-header .header-inner{padding:18px 16px 14px!important;gap:16px!important}.site-header .brand img{width:205px!important}.site-header .search{max-width:none!important}.site-header .nav{padding:0 16px 12px!important}}

/* Logo LEMO: transparente y ligeramente más pequeño */
.site-header .brand img{
  width:clamp(160px,23vw,230px)!important;
  max-height:none!important;
  height:auto!important;
  background:transparent!important;
}
.footer-brand img{
  width:100px!important;
  height:auto!important;
  background:transparent!important;
}
@media(max-width:600px){
  .site-header .brand img{width:175px!important}
}

/* Tipografía editorial LEMO — prueba DM Serif Display + Inter */
body,
button,
input,
textarea,
select,
.nav,
.ticker,
.story .cat,
.story .meta,
.eyebrow,
.article-kicker,
.article-meta,
.article-summary,
.article-note,
.article-actions,
.quick-links,
footer {
  font-family:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.hero h1,
.story h3,
.section-head h2,
.weather-card h2,
.now-card h2,
.personalize h2,
.article-card h1,
.article-empty h1 {
  font-family:"DM Serif Display",Georgia,"Times New Roman",serif;
  font-weight:400;
  letter-spacing:-.02em;
}

.hero h1{line-height:.98}
.story h3{line-height:1.04}
.section-head h2{line-height:1}
.article-card h1{line-height:1.02}

/* LEMO typography refresh · 2026-10-22 */
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@400;500;600;700;800&display=swap');

:root{
  --lemo-font-editorial:'DM Serif Display', Georgia, 'Times New Roman', serif;
  --lemo-font-ui:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

html,body,
button,input,select,textarea,
.site-nav,.ticker,.section-kicker,.meta,.category,.tag,
.story-card p,.story-card .summary,.footer,.pro-footer,
.contact-section,.legal-page,.legal-content{
  font-family:var(--lemo-font-ui)!important;
}

h1,h2,h3,
.hero-title,
.section-title,
.story-card h2,
.story-card h3,
.featured-card h2,
.featured-card h3,
.article-title,
.article-body h2,
.article-body h3{
  font-family:var(--lemo-font-editorial)!important;
  font-weight:400!important;
  letter-spacing:-0.02em!important;
}

.story-card h2,
.story-card h3{
  line-height:1.06!important;
}

.hero-title,
.article-title{
  line-height:1.02!important;
}

/* LEMO editorial type tuning · 2026-10-22 */
.hero h1,
.hero-title{
  font-size:clamp(38px,5.2vw,68px)!important;
  line-height:.96!important;
  letter-spacing:-.035em!important;
  max-width:18ch;
}

.section-head h2,
.section-title{
  font-size:clamp(28px,3.2vw,42px)!important;
  line-height:.98!important;
  letter-spacing:-.028em!important;
}

.story h3,
.story-card h2,
.story-card h3,
.featured-card h2,
.featured-card h3{
  line-height:1.02!important;
  letter-spacing:-.025em!important;
}

.story h3,
.story-card h3{
  font-size:clamp(22px,2.1vw,30px)!important;
}

.featured-card h2,
.featured-card h3{
  font-size:clamp(28px,3vw,44px)!important;
}

.article-card h1,
.article-title{
  font-size:clamp(40px,5vw,70px)!important;
  line-height:.98!important;
  letter-spacing:-.035em!important;
  max-width:19ch;
}

.story-card p,
.story-card .summary,
.hero p,
.article-deck{
  line-height:1.55!important;
}

@media(max-width:700px){
  .hero h1,
  .hero-title{
    font-size:clamp(34px,11vw,48px)!important;
    line-height:.98!important;
  }
  .story h3,
  .story-card h3{
    font-size:24px!important;
    line-height:1.04!important;
  }
  .section-head h2,
  .section-title{
    font-size:30px!important;
  }
  .article-card h1,
  .article-title{
    font-size:clamp(36px,10vw,50px)!important;
  }
}

/* lemo · velocidad Última hora */
.ticker .ticker-track{
  animation-duration:28s!important;
}
@media(max-width:700px){
  .ticker .ticker-track{
    animation-duration:22s!important;
  }
}

/* lemo · portada editorial / popular / eventos / prensa */
.editorial-band{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:22px;
  margin:26px 0 34px;
}
.popular-block,.events-block{
  background:#fff;
  border:1px solid #e8edf3;
  border-radius:22px;
  padding:22px;
  box-shadow:0 8px 30px rgba(10,25,45,.05);
}
.popular-block .section-head,.events-block .section-head{margin-bottom:14px}
.popular-list{display:grid}
.popular-item{
  display:grid;
  grid-template-columns:56px 1fr;
  gap:14px;
  align-items:start;
  padding:14px 0;
  border-top:1px solid #edf1f5;
}
.popular-item:first-child{border-top:0;padding-top:4px}
.popular-item>b{
  font-family:var(--lemo-font-editorial);
  font-size:48px;
  line-height:.9;
  font-weight:400;
  color:#cfd7e2;
}
.popular-item small{
  display:block;
  color:#64748b;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:4px;
}
.popular-item strong{
  display:block;
  font-family:var(--lemo-font-editorial);
  font-size:22px;
  line-height:1.04;
  font-weight:400;
}
.events-list{display:grid;gap:10px}
.event-item{
  display:grid;
  grid-template-columns:78px 1fr;
  gap:14px;
  align-items:center;
  padding:13px 0;
  border-top:1px solid #edf1f5;
}
.event-item:first-child{border-top:0}
.event-date{
  min-height:58px;
  display:grid;
  place-items:center;
  text-align:center;
  border-radius:14px;
  background:#041c47;
  color:#fff;
  padding:8px;
  font-weight:800;
  font-size:13px;
}
.event-item span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#0077e6;
  font-weight:800;
}
.event-item h3{
  margin:2px 0 3px;
  font-size:22px!important;
  line-height:1.04!important;
}
.event-item p{margin:0;color:#6b7789;font-size:13px}
.events-block .section-head>a{
  font:700 13px var(--lemo-font-ui);
  color:#062c6d;
  border:1px solid #dce4ee;
  border-radius:999px;
  padding:8px 12px;
}
.article-share{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  margin:20px 0 4px;
  padding-top:18px;
  border-top:1px solid #e7edf4;
}
.article-share>span{font-weight:800;margin-right:4px}
.article-share a,.article-share button{
  border:1px solid #dce4ee;
  border-radius:999px;
  background:#fff;
  color:#062c6d;
  padding:8px 12px;
  font:700 13px var(--lemo-font-ui);
  cursor:pointer;
}
.press-page .press-intro{
  font:500 clamp(20px,2vw,27px)/1.4 var(--lemo-font-ui);
  color:#40516a;
  max-width:850px;
  margin:16px 0 28px;
}
.press-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.press-grid section{
  padding:20px;
  background:#f7f9fc;
  border-radius:16px;
}
.press-grid h2{font-size:27px!important;margin:0 0 8px}
.press-grid p{margin:0;line-height:1.65;color:#3f4f65}
.press-grid a{color:#006fd6;font-weight:700}

/* una portada más jerárquica */
.hero-grid .story:first-child{
  min-height:520px;
}
.hero-grid .story:first-child h3{
  font-size:clamp(34px,4.4vw,62px)!important;
  line-height:.96!important;
}
.hero-grid .story:not(:first-child) h3{
  font-size:clamp(20px,1.9vw,28px)!important;
}
@media(max-width:850px){
  .editorial-band{grid-template-columns:1fr}
  .hero-grid .story:first-child{min-height:430px}
}
@media(max-width:600px){
  .popular-block,.events-block{padding:17px;border-radius:18px}
  .popular-item{grid-template-columns:44px 1fr}
  .popular-item>b{font-size:40px}
  .popular-item strong{font-size:20px}
  .event-item{grid-template-columns:68px 1fr}
  .press-grid{grid-template-columns:1fr}
  .hero-grid .story:first-child{min-height:380px}
}

/* lemo · provincias */
.province-picker{
  display:flex;gap:10px;align-items:center;flex-wrap:wrap;
  margin:0 0 18px;
}
.province-picker label{font-weight:800}
.province-picker select{
  border:1px solid #d9e1ea;border-radius:999px;padding:10px 14px;
  font:600 14px var(--lemo-font-ui);background:#fff;
}
.province-picker a{
  font-weight:700;color:#063a7a;
}
.province-grid{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;
}
.province-grid a{
  display:block;padding:14px 16px;border:1px solid #e1e7ee;border-radius:14px;
  background:#fff;font-weight:700;
}
.province-grid a:hover{background:#f4f7fb}
@media(max-width:800px){.province-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.province-grid{grid-template-columns:1fr}}

/* lemo · provincias visual fix */
body{margin:0}
.category-page{
  max-width:1200px;
  margin:0 auto;
  padding:72px 28px 90px;
}
.category-page .section-head{
  align-items:flex-end;
  margin-bottom:30px;
}
.category-page .section-head h1{
  margin:.25rem 0 .45rem;
  font-size:clamp(42px,5vw,68px)!important;
  line-height:.98!important;
}
.category-page .section-head p{
  margin:0;
  color:#506176;
  font-size:16px;
}
.province-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.province-grid a{
  display:flex!important;
  align-items:center;
  min-height:56px;
  padding:14px 17px!important;
  border:1px solid #dde5ee!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#10243f!important;
  text-decoration:none!important;
  font-family:var(--lemo-font-ui)!important;
  font-size:15px!important;
  font-weight:700!important;
  transition:.16s ease;
}
.province-grid a:hover{
  transform:translateY(-2px);
  border-color:#b7c6d7!important;
  box-shadow:0 8px 20px rgba(10,30,55,.08);
}
.category-page .site-header,
body>.site-header{overflow:visible}
body>.site-header .brand img{
  max-height:54px!important;
  width:auto!important;
  object-fit:contain!important;
}
@media(max-width:900px){
  .province-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .category-page{padding:44px 18px 70px}
  .province-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:430px){
  .province-grid{grid-template-columns:1fr!important}
}

/* lemo · resumen ampliado */
.extended-summary{
  display:grid;
  gap:18px;
}
.extended-summary>p{
  font-size:20px;
  line-height:1.62!important;
}
.extended-summary section{
  padding-top:14px;
  border-top:1px solid #e6ebf1;
}
.extended-summary h2{
  margin:0 0 8px;
  font-size:28px!important;
  line-height:1.05!important;
}
.extended-summary section p{
  margin:0;
  font-size:17px;
  line-height:1.65!important;
}

.extended-summary .key-facts ul{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  list-style:none;
  padding:0;
  margin:10px 0 0;
}
.extended-summary .key-facts li{
  padding:9px 12px;
  border-radius:999px;
  background:#f2f6fb;
  border:1px solid #dfe7f0;
  font:700 13px var(--lemo-font-ui);
  color:#18324f;
}

/* lemo · resumen largo continuo */
.long-summary{display:block}
.long-summary>span{display:block;margin-bottom:12px}
.long-summary>p{
  font-size:20px;
  line-height:1.72!important;
  max-width:78ch;
  white-space:normal;
}

/* lemo · trends, smart search, mobile dock */
.story-flags{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:5px}
.trend-badge,.also-badge{
  display:inline-flex;align-items:center;
  border-radius:999px;padding:5px 8px;
  font:800 10px/1 var(--lemo-font-ui);
  text-transform:uppercase;letter-spacing:.05em;
  backdrop-filter:blur(8px);
}
.trend-badge{background:#fff;color:#b00020}
.also-badge{background:rgba(5,24,52,.76);color:#fff}
.search-smart{position:relative}
.search-suggest{
  position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 8px);
  background:#fff;border:1px solid #dfe6ee;border-radius:16px;
  box-shadow:0 18px 45px rgba(10,25,50,.17);overflow:hidden;
  max-height:430px;overflow-y:auto;
}
.search-suggest>a{display:block;padding:11px 14px;border-bottom:1px solid #edf1f5}
.search-suggest>a:hover{background:#f6f8fb}
.search-suggest small{display:block;color:#718096;font-size:10px;text-transform:uppercase;font-weight:800}
.search-suggest strong{display:block;font-size:13px;line-height:1.3;color:#15263d}
.search-history{padding:10px 12px;display:flex;gap:6px;flex-wrap:wrap}
.search-history>span{width:100%;font-size:10px;text-transform:uppercase;font-weight:800;color:#718096}
.search-history button{border:1px solid #dce4ed;background:#fff;border-radius:999px;padding:6px 9px;font-size:11px}
.mobile-dock{display:none}
@media(max-width:700px){
  body{padding-bottom:72px}
  .mobile-dock{
    position:fixed;display:grid;grid-template-columns:repeat(5,1fr);
    left:10px;right:10px;bottom:10px;z-index:1500;
    background:rgba(255,255,255,.94);backdrop-filter:blur(18px);
    border:1px solid #dfe5ed;border-radius:18px;
    box-shadow:0 10px 35px rgba(11,29,52,.18);
    padding:7px 4px max(7px,env(safe-area-inset-bottom));
  }
  .mobile-dock a,.mobile-dock button{
    display:flex;flex-direction:column;align-items:center;gap:2px;
    border:0;background:none;color:#27384e;font:700 9px var(--lemo-font-ui);
  }
  .mobile-dock span{font-size:19px;line-height:1}
}

/* lemo · cabecera inteligente */
.site-header{
  position:sticky;
  top:0;
  z-index:1200;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);
}
@media(max-width:700px){
  .site-header .header-inner{min-height:58px}
  .site-header .brand img{max-height:42px!important}
}
.article-video{margin:22px 0;border-radius:18px;overflow:hidden;background:#000}
.article-video video{display:block;width:100%;max-height:70vh}

.article-topic{margin:10px 0 18px}
.article-topic a{
  display:inline-flex;
  padding:7px 10px;
  border:1px solid #dfe6ee;
  border-radius:999px;
  color:#0a5da8;
  font:800 12px var(--lemo-font-ui);
  text-decoration:none;
}
.article-video{margin:22px 0;border-radius:18px;overflow:hidden;background:#000}
.article-video video{display:block;width:100%;max-height:680px}

/* lemo · ticker continuo real */
.ticker .ticker-track{
  display:flex!important;
  width:max-content!important;
  overflow:visible!important;
  text-overflow:clip!important;
  animation:lemo-ticker-loop 26s linear infinite!important;
}
.ticker .ticker-copy{
  display:inline-block;
  flex:0 0 auto;
  white-space:nowrap;
  padding-right:28px;
}
@keyframes lemo-ticker-loop{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
@media(max-width:700px){
  .ticker .ticker-track{animation-duration:20s!important}
}

/* lemo · última hora más legible */
.ticker .ticker-track{
  animation-duration:50s!important;
}
@media(max-width:700px){
  .ticker .ticker-track{
    animation-duration:42s!important;
  }
}

/* lemo · herramientas, favoritos, reacciones y tema oscuro */
.header-tools{display:flex;align-items:center;gap:7px;margin-left:auto}
.tool-btn,.tool-link{border:1px solid #dfe6ee;background:#fff;color:#18283c;border-radius:999px;padding:7px 10px;font:700 11px var(--lemo-font-ui);cursor:pointer}
.story{position:relative}
.fav-card{position:absolute;z-index:8;right:9px;top:9px;border:0;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.92);font-size:19px;cursor:pointer}
.article-interactions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:18px 0}
.article-interactions button{border:1px solid #dce4ed;background:#fff;border-radius:999px;padding:8px 12px;cursor:pointer;font-weight:700}
.react-label{font-size:12px;color:#718096;font-weight:700}
html[data-theme="dark"] body{background:#09111d;color:#e9eef5}
html[data-theme="dark"] .site-header,html[data-theme="dark"] .portal-section,html[data-theme="dark"] .article-card,html[data-theme="dark"] .related-block{background:#0e1726!important;color:#e9eef5}
html[data-theme="dark"] .story.no-image,html[data-theme="dark"] .card,html[data-theme="dark"] .search-suggest{background:#121e30!important;color:#e9eef5}
html[data-theme="dark"] .nav a,html[data-theme="dark"] .tool-btn,html[data-theme="dark"] .tool-link{color:#e9eef5;background:#121e30;border-color:#2a3950}
html[data-theme="dark"] .no-image .story-summary{color:#bac6d6}
@media(max-width:800px){.header-tools{width:100%;justify-content:flex-end;padding:0 10px 8px}.tool-link{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:9999;background:#fff;color:#000;padding:8px 12px;border-radius:8px}
.skip-link:focus{left:8px}
:focus-visible{outline:3px solid #78b900;outline-offset:3px}
.search-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}
.search-filters select{border:1px solid #dbe3ec;border-radius:999px;padding:8px 12px;background:#fff}
.portal-section{content-visibility:auto;contain-intrinsic-size:600px}
.article-gallery{margin:24px 0}.article-gallery h2{font-family:"DM Serif Display",serif;font-size:28px}.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.gallery-grid img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px}.article-topics{margin:14px 0;font-size:13px;color:#64748b}.article-topics a{font-weight:800;text-decoration:underline}.live-feed{display:grid;gap:10px;max-width:860px}.live-feed article{background:#fff;border:1px solid #e6ecf2;border-radius:14px;padding:14px}.live-feed time{font-size:11px;font-weight:900;color:#b00020}

/* herramientas compactas junto al buscador */
.search-row{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:auto;
  min-width:0;
}
.search-row .search{margin:0}
.header-tools{
  display:flex;
  align-items:center;
  gap:6px;
  margin:0;
  width:auto;
  padding:0;
}
.tool-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  min-width:36px;
  padding:0;
  border:1px solid #dfe6ee;
  background:#fff;
  color:#18283c;
  border-radius:50%;
  font:700 17px/1 var(--lemo-font-ui);
  cursor:pointer;
  text-decoration:none;
}
.tool-icon:hover{background:#f4f7fa}
html[data-theme="dark"] .tool-icon{
  color:#e9eef5;
  background:#121e30;
  border-color:#2a3950;
}
@media(max-width:800px){
  .header-inner{flex-wrap:wrap}
  .search-row{width:100%;gap:7px}
  .search-row .search{flex:1;min-width:0}
  .tool-icon{width:34px;height:34px;min-width:34px;font-size:16px}
}

/* móvil · tarjetas de portada: solo titular sobre imagen */
@media(max-width:700px){
  .story:not(.no-image) .story-content .cat,
  .story:not(.no-image) .story-content .story-summary,
  .story:not(.no-image) .story-content .meta,
  .story:not(.no-image) .story-content .story-flags{
    display:none!important;
  }

  .story:not(.no-image) .story-content{
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    padding:22px 20px 24px!important;
    z-index:4!important;
  }

  .story:not(.no-image) .story-content h3{
    margin:0!important;
    color:#fff!important;
    font-family:"DM Serif Display",serif!important;
    font-size:clamp(26px,7vw,36px)!important;
    line-height:1.02!important;
    letter-spacing:-.025em!important;
    text-shadow:0 2px 12px rgba(0,0,0,.72)!important;
    display:-webkit-box!important;
    -webkit-line-clamp:4!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }

  .story:not(.no-image) .story-overlay{
    background:linear-gradient(
      to bottom,
      rgba(3,10,20,.02) 0%,
      rgba(3,10,20,.10) 36%,
      rgba(3,10,20,.62) 68%,
      rgba(3,10,20,.90) 100%
    )!important;
  }

  .story:not(.no-image){
    min-height:330px!important;
  }

  .story:not(.no-image) .story-img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }

  .fav-card{
    display:none!important;
  }
}


/* lemo · tarjetas de noticias: solo titular; resumen únicamente en la noticia */
.story .story-content > :not(h3){
  display:none!important;
}
.story .story-content h3{
  position:relative;
  z-index:5;
}
.fav-card{
  display:none!important;
}

/* móvil · impedir desplazamiento horizontal de toda la portada */
@media(max-width:700px){
  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body,main,.site-header,.header-inner,.nav,.ticker,.hero,.portal-section,
  .hero-grid,.stories,.quick-panel,.editorial-band,.personalize,
  .search-results,.pro-footer,.contact-section,.mobile-dock{
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  main{
    width:100%!important;
    overflow-x:hidden!important;
  }
  .header-inner{
    width:100%!important;
    overflow:hidden!important;
  }
  .search,.search-smart{
    width:100%!important;
    min-width:0!important;
  }
  .search input{
    min-width:0!important;
    max-width:100%!important;
  }
  .nav{
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
  }
  .ticker{
    width:100%!important;
    overflow:hidden!important;
  }
  .ticker-viewport{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .hero-title,.hero-title>div,.hero h1{
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:anywhere!important;
  }
  .story,.story-content,.story-img{
    max-width:100%!important;
    min-width:0!important;
  }
  .dark{
    margin-left:0!important;
    margin-right:0!important;
  }
}

/* lemo · titulares limitados a la mitad inferior de la imagen */
.story:not(.no-image) .story-overlay{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:0!important;
  height:50%!important;
  background:linear-gradient(
    to top,
    rgba(3,16,40,.94) 0%,
    rgba(3,16,40,.76) 42%,
    rgba(3,16,40,.28) 76%,
    rgba(3,16,40,0) 100%
  )!important;
}

.story:not(.no-image) .story-content{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:auto!important;
  bottom:0!important;
  max-height:50%!important;
  min-height:0!important;
  padding:20px 22px 22px!important;
  display:flex!important;
  align-items:flex-end!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

.story:not(.no-image) .story-content h3{
  margin:0!important;
  max-width:100%!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  line-clamp:4!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.hero-grid .story:not(.no-image):first-child .story-content{
  max-height:50%!important;
  min-height:0!important;
}

.hero-grid .story:not(.no-image):first-child h3{
  -webkit-line-clamp:4!important;
  line-clamp:4!important;
}

@media(max-width:700px){
  .story:not(.no-image) .story-overlay{
    height:46%!important;
  }

  .story:not(.no-image) .story-content,
  .hero-grid .story:not(.no-image):first-child .story-content{
    max-height:46%!important;
    min-height:0!important;
    padding:17px 18px 19px!important;
  }

  .story:not(.no-image) .story-content h3,
  .hero-grid .story:not(.no-image):first-child h3{
    -webkit-line-clamp:3!important;
    line-clamp:3!important;
  }
}

/* lemo · titular completo sin recortes, dentro de la mitad inferior */
.story:not(.no-image) .story-content{
  max-height:50%!important;
  overflow:visible!important;
}

.story:not(.no-image) .story-content h3{
  display:block!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  overflow:visible!important;
  text-overflow:clip!important;
  max-height:none!important;
  white-space:normal!important;
  font-size:clamp(18px,2.15vw,34px)!important;
  line-height:1.02!important;
}

.story:not(.no-image) .story-content h3.title-long{
  font-size:clamp(17px,1.85vw,29px)!important;
}

.story:not(.no-image) .story-content h3.title-very-long{
  font-size:clamp(15px,1.55vw,25px)!important;
  line-height:1.04!important;
}

.hero-grid .story:not(.no-image):first-child .story-content h3{
  font-size:clamp(24px,3vw,46px)!important;
}

.hero-grid .story:not(.no-image):first-child .story-content h3.title-long{
  font-size:clamp(22px,2.55vw,39px)!important;
}

.hero-grid .story:not(.no-image):first-child .story-content h3.title-very-long{
  font-size:clamp(20px,2.15vw,33px)!important;
}

@media(max-width:700px){
  .story:not(.no-image) .story-content,
  .hero-grid .story:not(.no-image):first-child .story-content{
    max-height:50%!important;
  }

  .story:not(.no-image) .story-content h3,
  .hero-grid .story:not(.no-image):first-child .story-content h3{
    font-size:clamp(23px,6.3vw,34px)!important;
    line-height:1.02!important;
  }

  .story:not(.no-image) .story-content h3.title-long,
  .hero-grid .story:not(.no-image):first-child .story-content h3.title-long{
    font-size:clamp(20px,5.5vw,29px)!important;
  }

  .story:not(.no-image) .story-content h3.title-very-long,
  .hero-grid .story:not(.no-image):first-child .story-content h3.title-very-long{
    font-size:clamp(17px,4.8vw,25px)!important;
    line-height:1.04!important;
  }
}

/* lemo · regla editorial definitiva: titular completo solo en mitad inferior */
.story:not(.no-image) .story-overlay{
  top:50%!important;
  bottom:0!important;
  height:50%!important;
  background:linear-gradient(
    to top,
    rgba(3,16,40,.96) 0%,
    rgba(3,16,40,.78) 48%,
    rgba(3,16,40,.24) 82%,
    rgba(3,16,40,0) 100%
  )!important;
}

.story:not(.no-image) .story-content,
.hero-grid .story:not(.no-image):first-child .story-content{
  top:50%!important;
  bottom:0!important;
  height:50%!important;
  max-height:50%!important;
  min-height:0!important;
  padding:18px 20px 20px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

.story:not(.no-image) .story-content h3,
.hero-grid .story:not(.no-image):first-child .story-content h3{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  max-width:100%!important;
  max-height:none!important;
  overflow:visible!important;
  white-space:normal!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  -webkit-box-orient:initial!important;
  font-size:28px!important;
  line-height:1.02!important;
  letter-spacing:-.025em!important;
}

.hero-grid .story:not(.no-image):first-child .story-content h3{
  font-size:42px!important;
}

@media(max-width:900px){
  .story:not(.no-image) .story-content h3,
  .hero-grid .story:not(.no-image):first-child .story-content h3{
    font-size:30px!important;
  }
}

@media(max-width:700px){
  .story:not(.no-image) .story-overlay{
    top:50%!important;
    height:50%!important;
  }
  .story:not(.no-image) .story-content,
  .hero-grid .story:not(.no-image):first-child .story-content{
    top:50%!important;
    height:50%!important;
    max-height:50%!important;
    padding:16px 18px 18px!important;
  }
  .story:not(.no-image) .story-content h3,
  .hero-grid .story:not(.no-image):first-child .story-content h3{
    font-size:30px!important;
    line-height:1.02!important;
  }
}

/* lemo · mejora de nitidez de imágenes de noticias */
.story-img,
.article-card figure img,
.gallery-grid img{
  image-rendering:auto;
  backface-visibility:hidden;
  transform:translateZ(0);
}

.story-img{
  object-position:center center;
}

@media(min-width:1200px){
  .story-img{
    transform:scale(1.0001);
  }
}
