/* V13 — contenido dinámico, weather y ajustes de identidad */
.brand .club-logo{
  background:#fff;
  border-radius:50%;
  padding:3px;
  box-shadow:0 0 0 2px rgba(255,255,255,.18),0 5px 18px rgba(0,0,0,.22);
}
.cdh-logo-stack{
  background:#fff;
  border-radius:50%;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  overflow:hidden;
}
.cdh-intro.cdh-fly .cdh-logo-stack{box-shadow:0 5px 18px rgba(0,0,0,.22)}
.home-v12 .hero-v12-content{transform:translateY(-34px)}
.hero-mark{margin-bottom:8px;filter:drop-shadow(0 14px 30px rgba(0,0,0,.32));border-radius:50%}
@media(max-width:760px){
  .home-v12 .hero-v12-content{transform:translateY(-18px)}
  .hero-mark{width:min(220px,52vw)}
}

/* navegación V13 */
.links a{position:relative}
.links a[aria-current="page"]:after{content:"";position:absolute;left:8px;right:8px;bottom:5px;height:2px;background:var(--cyan);border-radius:2px}

/* clima */
.weather-shell{margin-top:28px;background:linear-gradient(135deg,var(--navy2),var(--navy));border-radius:26px;padding:28px;color:#fff;box-shadow:0 18px 45px #1112}
.weather-head{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:18px}
.weather-head h3{font-size:28px;margin:4px 0 0}
.weather-head p{margin:0;color:#c5d3df;font-size:14px}
.weather-grid{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:10px;overflow-x:auto;padding-bottom:4px}
.weather-card{min-width:128px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px}
.weather-day{font-weight:900;text-transform:capitalize}.weather-icon{font-size:28px;margin:9px 0 4px}.weather-temp{font-weight:900;font-size:19px}.weather-summary{font-size:12px;color:#d5e0e9;min-height:32px;margin:4px 0 12px}
.wind-box{border-top:1px solid rgba(255,255,255,.13);padding-top:10px}.wind-main{font-size:15px;font-weight:900}.wind-gust{font-size:12px;color:#c5d3df;margin-top:3px}.weather-error{padding:14px;border:1px solid #ffffff25;border-radius:14px;color:#e6edf3}
.weather-credit{margin:12px 2px 0;font-size:11px;color:#b6c3cf}.weather-credit a{text-decoration:underline}
@media(max-width:760px){.weather-shell{padding:20px;margin-top:20px}.weather-grid{grid-template-columns:repeat(7,132px)}}

/* rutas por modalidad */
.route-mode-nav{display:flex;gap:10px;flex-wrap:wrap;margin:26px 0 10px}.route-mode-nav a{padding:10px 16px;border-radius:999px;background:#fff;border:1px solid #dbe5eb;font-weight:900;color:var(--navy)}
.route-mode-section{scroll-margin-top:100px;margin-top:54px}.route-mode-section:first-of-type{margin-top:34px}.route-mode-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}.route-mode-heading h2{margin-bottom:0}.route-empty{background:#fff;border:1px dashed #c9d7df;border-radius:20px;padding:28px;color:#65717c;margin-top:18px}
.route-card .route-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}.route-card .route-actions .btn{margin-top:0}.btn.secondary{background:#eef7fb!important;color:var(--navy)!important;border:1px solid #d4e7ef}
.route-card .route-source{font-size:12px;color:#7a8792;margin:0 0 14px}

/* BTT News */
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}.news-card{background:#fff;border:1px solid #e0e7ec;border-radius:22px;overflow:hidden;display:flex;flex-direction:column;min-height:100%;box-shadow:0 10px 30px #1111}.news-card img{width:100%;height:210px;object-fit:cover}.news-card-body{padding:22px;display:flex;flex-direction:column;flex:1}.news-meta{display:flex;gap:8px;flex-wrap:wrap;font-size:12px;color:#74808b;text-transform:uppercase;letter-spacing:.04em;font-weight:800}.news-card h3{font-size:22px;line-height:1.2;margin:10px 0}.news-card p{color:#5d6873;line-height:1.55}.news-card .btn{margin-top:auto;align-self:flex-start;background:var(--navy);color:#fff}.news-empty{background:#fff;border:1px dashed #c9d7df;border-radius:20px;padding:32px;color:#65717c;margin-top:24px}.news-body{white-space:pre-line}.news-teaser{margin-top:26px}
@media(max-width:860px){.news-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.news-grid{grid-template-columns:1fr}}

/* galería dinámica */
.gallery figure{margin:0;position:relative}.gallery figure img{display:block}.gallery figcaption{font-size:12px;color:#65717c;padding:8px 4px 0}.gallery figure:nth-child(1){grid-column:span 7}.gallery figure:nth-child(2){grid-column:span 5}.gallery figure:nth-child(3),.gallery figure:nth-child(4),.gallery figure:nth-child(5){grid-column:span 4}
@media(max-width:760px){.gallery figure,.gallery figure:nth-child(n){grid-column:auto}}

/* próxima ruta dinámica */
.next-route-date{font-size:14px;color:#cbd6df;margin:12px 0 6px}.next-route-desc{line-height:1.55;color:#e4ebf1}.route-actions-wide{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}

/* nota CMS / gestión */
.content-note{background:#e9f8fc;border:1px solid #cbeaf3;border-radius:16px;padding:16px 18px;color:#365363;font-size:14px;margin-top:18px}
.route-search{margin:24px 0 6px;display:flex;gap:10px;align-items:center;background:#fff;border:1px solid #dbe5eb;border-radius:16px;padding:10px 14px;max-width:620px}.route-search input{border:0;outline:0;width:100%;font:inherit;color:var(--navy);background:transparent}.route-search span{font-size:20px}.route-count{font-size:12px;color:#6c7781;margin-top:8px}


/* Historia de Casas de Haro */
.town-history{background:linear-gradient(180deg,#f7fbfd 0%,#eef7f4 100%)}
.town-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px;margin-top:22px}
.town-history-grid .lead{font-size:17px;margin-top:0}
.history-source{margin:24px 0 0;padding-top:14px;border-top:1px solid #cfdde3;font-size:11px;line-height:1.5;color:#6e7b84}
.history-source a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:760px){.town-history-grid{grid-template-columns:1fr;gap:4px}.history-source{font-size:10.5px}}


/* V13 RC4 — pulido de identidad y navegación */
:root{
  --navy:#062a50;
  --navy2:#001934;
}

/* El logo ya contiene su propio fondo blanco interior: no añadimos un disco exterior. */
.brand .club-logo{
  background:transparent;
  border-radius:0;
  padding:0;
  box-shadow:none;
  filter:drop-shadow(0 3px 7px rgba(0,0,0,.24)) !important;
}
.cdh-logo-stack{
  background:transparent;
  border-radius:0;
  box-shadow:none;
  overflow:visible;
  filter:drop-shadow(0 20px 36px rgba(0,0,0,.26));
}
.cdh-intro.cdh-fly .cdh-logo-stack{
  box-shadow:none;
  filter:drop-shadow(0 3px 7px rgba(0,0,0,.24));
}

/* Página activa: solo color, sin línea que invada el texto. */
.links a[aria-current="page"]{
  color:var(--cyan2);
  font-weight:900;
}
.links a[aria-current="page"]:after{
  content:none !important;
  display:none !important;
}

/* V13 RC5 — contraste del logo */
/* Disco blanco exactamente del mismo cuadro que el logo, sin padding ni halo exterior. */
.brand .club-logo{
  background:#fff !important;
  border-radius:50% !important;
  padding:0 !important;
  box-shadow:none !important;
}

/* En portada, el fondo blanco hace que los calados y “CASAS DE HARO BTT” sean blancos,
   manteniendo el sol como único acento amarillo. */
.hero-mark{
  background:#fff !important;
  border-radius:50% !important;
  padding:0 !important;
  box-shadow:0 14px 30px rgba(0,0,0,.28) !important;
}

/* El giro inicial permanece como estaba. El disco blanco aparece solo al volar hacia la cabecera
   y tiene exactamente el mismo tamaño que el logo que aterriza. */
.cdh-intro.cdh-fly .cdh-logo-stack{
  background:#fff !important;
  border-radius:50% !important;
  overflow:hidden !important;
}

/* V13 RC6 — logo: fondo blanco ajustado al plato, idéntico en giro, portada y cabecera */
/* El blanco queda dentro del diámetro útil del plato (44% del cuadro),
   por lo que no aparece un círculo exterior mayor que los dientes. */
.brand .club-logo,
.hero-mark{
  background:radial-gradient(circle at 50% 50%, #fff 0 44%, transparent 44.25%) !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
.hero-mark{
  filter:drop-shadow(0 14px 30px rgba(0,0,0,.32)) !important;
}

/* Mismo fondo blanco desde el primer fotograma de la animación. */
.cdh-logo-stack{
  background:radial-gradient(circle at 50% 50%, #fff 0 44%, transparent 44.25%) !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:none !important;
}
.cdh-intro.cdh-fly .cdh-logo-stack{
  background:radial-gradient(circle at 50% 50%, #fff 0 44%, transparent 44.25%) !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:none !important;
}


/* V13 RC7 — logo simplificado: usamos el logo completo con fondo blanco, sin discos ni halos CSS */
.brand .club-logo,
.hero-mark{
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
.cdh-logo-stack{
  background:transparent !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:none !important;
}
.cdh-intro.cdh-fly .cdh-logo-stack{
  background:transparent !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:none !important;
}


/* V13 RC8 — logo definitivo aprobado */
.brand .club-logo, .hero-mark {
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
  filter:none !important;
}
.cdh-logo-stack, .cdh-intro.cdh-fly .cdh-logo-stack {
  background:transparent !important;
  border-radius:0 !important;
  overflow:visible !important;
  box-shadow:none !important;
}

/* V13 RC12 — responsive real en móvil y tablet */
html,body{max-width:100%;overflow-x:hidden}

@media(max-width:900px){
  .wrap{width:min(94%,1120px)}
  .top{position:sticky;top:0;z-index:80}
  .nav{min-height:auto!important;display:block!important;padding:7px 0 0!important}
  .brand{justify-content:flex-start!important;gap:8px!important;padding:0 0 7px!important;min-width:0}
  .brand .club-logo{width:46px!important;height:46px!important;flex:0 0 46px}
  .brand span{font-size:clamp(14px,4.4vw,18px)!important;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .brand small{font-size:.72em}
  .links{display:flex!important;gap:0!important;overflow-x:auto!important;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;border-top:1px solid rgba(255,255,255,.10);margin:0 -3%!important;padding:0 3%!important;justify-content:flex-start!important;max-width:none!important}
  .links::-webkit-scrollbar{display:none}
  .links a{flex:0 0 auto!important;scroll-snap-align:start;padding:10px 11px 11px!important;font-size:12px!important;line-height:1!important;white-space:nowrap}
  .menu-btn,.mobile-menu{display:none!important}

  /* En escritorio mantenemos la portada aprobada exacta. En móvil usamos el mismo concepto visual
     en una composición apilada: imagen completa arriba y textos debajo, sin solapes ni zoom agresivo. */
  .approved-hero-desktop{display:none!important}
  .home-v12{display:flex!important;flex-direction:column!important;min-height:0!important;background:#031b37!important;color:#fff!important;overflow:hidden!important;align-items:stretch!important}
  .home-v12:before{content:"";display:block;flex:0 0 auto;width:100%;aspect-ratio:1672/941;background:url('hero-casas-de-haro.webp') center center/contain no-repeat;background-color:#031b37}
  .home-v12 .hero-v12-content{width:100%!important;margin:0!important;padding:26px 5% 34px!important;transform:none!important;text-align:center!important;background:linear-gradient(180deg,#031b37 0%,#062a50 100%)}
  .hero-mark{display:none!important}
  .home-v12 .overline{font-size:15px!important;letter-spacing:.20em!important;line-height:1.2!important;margin:0 0 6px!important}
  .home-v12 h1{font-size:clamp(34px,10vw,46px)!important;letter-spacing:.055em!important;line-height:.98!important;margin:0 auto 12px!important;max-width:100%!important;overflow-wrap:anywhere}
  .home-v12 .cyan-rule{width:66px!important;margin:14px auto!important}
  .home-v12 .hero-v12-content>p[style]{font-size:15px!important;line-height:1.45!important;margin:0 auto 12px!important;max-width:34rem!important;padding:0 2px}
  .home-v12 .values{font-size:10px!important;letter-spacing:.11em!important;line-height:1.6!important;margin:0 auto!important;max-width:34rem!important}
  .home-v12 .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:min(100%,330px)!important;margin:22px auto 0!important}
  .home-v12 .hero-actions a{width:100%!important;padding:13px 16px!important;text-align:center!important}

  .wa-wrap{right:12px!important;bottom:12px!important;z-index:90!important}
  .wa-note{display:none!important}
  .wa{width:52px!important;height:52px!important;border-width:2px!important}

  .page-hero{padding:44px 0 30px!important}
  .page-hero h1{font-size:clamp(33px,9.5vw,46px)!important;line-height:1.04!important;margin:7px 0!important}
  .page-hero p{font-size:15px!important;line-height:1.5!important}
  .section{padding:48px 0!important}
  .section h2{font-size:clamp(30px,8.5vw,42px)!important;line-height:1.08}
  .lead{font-size:16px!important;line-height:1.55!important}

  .route .info{padding:26px!important}
  .route h3{font-size:27px!important;line-height:1.12!important}
  .stats{gap:14px 22px!important;margin:18px 0!important}
  .stat b{font-size:20px!important}
  .sponsors{grid-template-columns:1fr 1fr!important;gap:10px!important}
  .sponsor{min-height:125px!important;padding:14px!important}
  .sponsor img{max-width:125px!important;max-height:95px!important}
  .footer{padding:30px 0!important}
}

@media(max-width:520px){
  .brand{justify-content:center!important}
  .brand .club-logo{width:44px!important;height:44px!important;flex-basis:44px}
  .brand span{font-size:16px!important;max-width:calc(100vw - 78px)}
  .links a{font-size:11.5px!important;padding:10px 10px 11px!important}
  .home-v12:before{aspect-ratio:1672/941}
  .home-v12 .hero-v12-content{padding:24px 18px 30px!important}
  .home-v12 h1{font-size:36px!important}
  .sponsors{grid-template-columns:1fr!important}
  .club-partners-band{height:270px!important}
  .club-partner-card{padding:16px 0!important;gap:8px!important}
  .club-partner-card img{height:112px!important}
  .weather-shell{border-radius:20px!important}
  .route-mode-nav{gap:7px!important}
  .route-mode-nav a{padding:9px 13px!important;font-size:13px!important}
}

/* V13 final — rutas, autoría y enlaces legales */
.route-source{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 17px;color:#667480;font-size:13px}
.route-source span{display:inline-flex;align-items:center;gap:5px}
.mode-icon{display:inline-grid;place-items:center;min-width:42px;height:26px;padding:0 8px;border:1px solid #ffffff55;border-radius:999px;font-size:10px;letter-spacing:.08em;font-weight:950;background:#ffffff12}
.mode-icon-road{color:#c9f3ff}.mode-icon-btt{color:#a9f0cf}
.wikiloc-more{display:flex;justify-content:flex-end;margin:16px 0 2px}
.legal-links{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:18px;padding-top:18px;border-top:1px solid #ffffff1f;font-size:13px}
.legal-links a{color:#e9f7fb;text-decoration:underline;text-underline-offset:3px}
.footer p a{color:#e9f7fb;text-decoration:underline;text-underline-offset:3px}

/* SEO local fase 1 */
.seo-local-block{background:#fff}
.seo-local-block .lead{max-width:920px}
.seo-local-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.seo-local-note{max-width:920px;color:#5d6873;line-height:1.65;margin:16px 0 0}
.seo-local-note a{text-decoration:underline;text-underline-offset:3px;font-weight:800;color:var(--navy)}
@media(max-width:760px){.seo-local-links .btn{width:100%;text-align:center}}


/* BTT News — hemeroteca, filtros y galería múltiple */
.news-filters{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(150px,.7fr) minmax(180px,.8fr);gap:12px;margin:26px 0 8px;align-items:end}
.news-filters label{display:grid;gap:7px;font-size:12px;font-weight:900;color:#53616c;text-transform:uppercase;letter-spacing:.05em}
.news-filters input,.news-filters select{width:100%;border:1px solid #d7e3e9;background:#fff;color:var(--navy);border-radius:14px;padding:12px 13px;font:inherit;outline:none}
.news-filters input:focus,.news-filters select:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(19,185,232,.12)}
.news-count{font-size:12px;color:#71808b;margin:8px 0 24px}
.news-archive{display:grid;gap:42px}.news-year{display:grid;gap:16px}.news-year-head{display:flex;align-items:end;justify-content:space-between;gap:14px;border-bottom:1px solid #dce6eb;padding-bottom:10px}.news-year-head h2{margin:0;font-size:32px}.news-year-head span{font-size:12px;color:#71808b;font-weight:800}
.news-photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:18px}.news-photo-gallery figure{margin:0}.news-photo-gallery img{width:100%;height:150px;object-fit:cover;border-radius:12px;display:block}.news-photo-gallery figcaption{font-size:11px;color:#78858e;padding:6px 2px 0;line-height:1.35}.news-main-image{width:100%;height:250px;object-fit:cover}
@media(max-width:760px){.news-filters{grid-template-columns:1fr}.news-photo-gallery{grid-template-columns:1fr 1fr}.news-photo-gallery img{height:130px}.news-year-head h2{font-size:28px}}
@media(max-width:460px){.news-photo-gallery{grid-template-columns:1fr}.news-photo-gallery img{height:auto;aspect-ratio:4/3}}


/* CONTACT_MAP_V13_START */
.contact-wrap{position:fixed;right:18px;bottom:18px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.contact-note{background:var(--navy2,#031b37);color:#fff;padding:7px 10px;border-radius:10px;font-size:12px;font-weight:800;box-shadow:0 5px 18px #0003;white-space:nowrap}
.contact-actions{display:flex;gap:8px}
.contact-fab{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;color:#fff;border:3px solid #fff;box-shadow:0 8px 26px #0004;transition:transform .18s ease,box-shadow .18s ease}
.contact-fab:hover{transform:translateY(-2px);box-shadow:0 10px 28px #0005}
.contact-fab svg{width:25px;height:25px;fill:currentColor}
.contact-fab.telegram{background:#229ED9}
.contact-fab.email{background:var(--navy,#06264b)}
.location-section{background:linear-gradient(135deg,#eef8fb,#f7fbfd)}
.google-map-card{margin-top:28px;background:#fff;border:1px solid #dce7ec;border-radius:24px;overflow:hidden;box-shadow:0 18px 44px #09233b14}
.google-map-placeholder{min-height:360px;display:grid;place-items:center;text-align:center;padding:36px;background:linear-gradient(135deg,#e6f4f8,#f7fbfd)}
.google-map-placeholder-inner{max-width:620px}
.google-map-pin{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;margin:0 auto 16px;background:var(--navy,#06264b);color:#fff;font-size:30px;box-shadow:0 10px 24px #09233b2b}
.google-map-placeholder h3{font-size:30px;margin:0 0 8px;color:var(--navy,#06264b)}
.google-map-placeholder p{margin:6px 0;color:#5d6a73}
.google-map-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:20px}
.google-map-note{font-size:12px!important;margin-top:16px!important;color:#73808a!important}
.google-map-frame{display:block;width:100%;height:430px;border:0}
@media(max-width:760px){.contact-wrap{right:14px;bottom:14px}.contact-fab{width:46px;height:46px}.contact-fab svg{width:23px;height:23px}.contact-note{font-size:11px}.google-map-placeholder{min-height:320px;padding:28px 18px}.google-map-frame{height:360px}}
/* CONTACT_MAP_V13_END */

/* GOOGLE_MAP_ALWAYS_LOADED */
.google-map-actions-loaded{padding:0 18px 18px;margin-top:18px}

/* Telegram es el único acceso flotante de contacto. */
.wa-wrap{display:none!important}

/* Logotipos completos, proporcionados y nítidos dentro de cada tarjeta. */
.sponsor{height:230px!important;min-height:230px!important;padding:10px!important;overflow:hidden}
.sponsor img{display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important}
@media(max-width:760px){.sponsor{height:190px!important;min-height:190px!important;padding:8px!important}}

/* Carrusel de portada: un patrocinador cada vez, grande y centrado. */
.club-partners-band{height:270px!important}
.club-partner-card{grid-template-columns:minmax(260px,420px) 1fr!important;gap:40px!important;padding:20px 0!important}
.club-partner-card img{display:block;width:100%!important;height:220px!important;padding:10px!important;object-fit:contain!important;object-position:center!important}
@media(max-width:760px){
  .club-partners-band{height:360px!important}
  .club-partner-card{grid-template-columns:1fr!important;gap:12px!important;padding:18px 0!important;text-align:center}
  .club-partner-card img{width:min(100%,420px)!important;height:210px!important;margin:0 auto!important}
}



/* V13 RC15 — cabecera blanca con el archivo oficial y portada móvil corregida */
.top{background:#fff!important;color:var(--navy)!important;backdrop-filter:none!important}
.brand{color:var(--navy)!important}
.brand .club-logo{background:transparent!important;border-radius:0!important;object-fit:contain!important;filter:none!important}
.cdh-intro{background:#fff!important}
.cdh-intro.cdh-fly{background:rgba(255,255,255,0)!important}
@media(min-width:901px){.links{color:var(--navy)!important}}
@media(max-width:900px){
 .top{background:#fff!important}
 .brand{justify-content:center!important}
 .links{background:var(--navy2)!important;color:#fff!important;border-top:0!important}
 .home-v12:before{background-image:url('hero-portada-mobile-oficial.webp')!important;background-position:center!important;background-size:cover!important;background-repeat:no-repeat!important;aspect-ratio:16/9!important}
}


/* V13 RC16 — portada móvil restaurada: encuadre completo y logo oficial */
@media(max-width:900px){
  .home-v12:before{
    background-image:url('hero-casas-de-haro-oficial-85-sin-borde.webp')!important;
    background-position:center center!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    aspect-ratio:1672/941!important;
    background-color:#031b37!important;
  }
}

/* V13 RC17 — BTT News: imágenes completas dentro del espacio de la tarjeta */
.news-card .news-main-image{
  display:block!important;
  width:100%!important;
  height:250px!important;
  max-width:100%!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#eef3f6!important;
}
@media(max-width:760px){
  .news-card .news-main-image{height:240px!important}
}
@media(max-width:460px){
  .news-card .news-main-image{height:220px!important}
}

/* V13 RC18 — BTT News: proporción automática de cada imagen */
.news-card .news-main-image{
  display:block!important;
  width:100%!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
  background:transparent!important;
}

/* V13 RC19 — BTT News: imagen a sangre y proporción uniforme */
.news-card{
  align-items:stretch!important;
}
.news-card .news-main-image{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  aspect-ratio:4 / 3!important;
  object-fit:cover!important;
  object-position:center center!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  align-self:stretch!important;
}

/* V13 RC24 — navegación adaptada a móvil vertical y horizontal */
@media(max-width:900px){
  .links{
    display:grid!important;
    grid-template-columns:.85fr 1fr .75fr .9fr 1.25fr 1.55fr .85fr!important;
    gap:0!important;
    overflow:visible!important;
    margin:0 -3%!important;
    padding:0 3%!important;
    scroll-snap-type:none!important;
  }
  .links a{
    display:flex!important;
    flex:none!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    min-height:44px!important;
    width:auto!important;
    padding:0 2px!important;
    border-right:0!important;
    border-bottom:0!important;
    font-size:clamp(8.5px,2.55vw,12px)!important;
    line-height:1!important;
    overflow-wrap:normal!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
  .links a[href$="news.html"]{gap:0!important}
  .news-future-badge{
    position:absolute!important;
    top:3px!important;
    right:3px!important;
    z-index:1!important;
    box-sizing:border-box!important;
    flex:0 0 14px!important;
    width:14px!important;
    min-width:14px!important;
    height:14px!important;
    padding:0!important;
    overflow:visible!important;
    font-size:8px!important;
    box-shadow:0 0 0 1px rgba(255,255,255,.12)!important;
    transform:none!important;
  }
}

/* En horizontal, agrupamos las pestañas en el centro en lugar de estirarlas. */
@media(max-width:900px) and (orientation:landscape){
  .links{
    grid-template-columns:repeat(7,max-content)!important;
    column-gap:clamp(14px,3vw,24px)!important;
    justify-content:center!important;
  }
}
