@import url('styles-base.css?v=20260729-tiempos-1');

:root{
  --red:#d72128;
  --red-dark:#ad151b;
  --green:#176f39;
  --green-soft:#edf7ef;
  --ink:#111111;
  --text:#2f2f2f;
  --muted:#666666;
  --line:#dddddd;
  --surface:#ffffff;
  --surface-soft:#f7f7f7;
  --black:#111111;
  --shadow:none;
  --radius:4px;
  --max:1080px;
}

body{
  color:var(--ink);
  background:#fff;
}
.topbar{
  background:#111;
}
.site-header{
  position:sticky;
  background:#fff;
  border-bottom:1px solid var(--line);
  backdrop-filter:none;
}
.navbar{padding:8px 0}
.brand-logo{width:52px;height:52px}
.nav-links a{
  padding:8px 9px;
  border-radius:0;
}
.nav-links a:hover,.nav-links a.active{
  background:transparent;
  color:var(--red-dark);
  text-decoration:underline;
  text-underline-offset:5px;
}
.btn{
  border-radius:4px;
  box-shadow:none;
  min-height:42px;
}
.btn:hover{transform:none}
.btn-primary,.btn-red{background:var(--red);color:#fff}
.btn-dark{background:#111;color:#fff}
.btn-light,.btn-outline,.btn-ghost{
  background:#fff;
  color:#111;
  border-color:#ccc;
}

.hero{
  min-height:auto;
  max-height:none;
  color:#111;
  background:#fff;
  border-bottom:1px solid var(--line);
}
.hero:before{
  opacity:.56;
  filter:contrast(1.1) saturate(1.08) brightness(1.04);
  background:url('../assets/hero-portada.jpg') center/cover no-repeat;
}
.hero .container{
  padding:84px 0 70px;
}
.hero-content{max-width:760px}
.hero h1{
  font-size:3.25rem;
  color:#111;
  text-transform:none;
}
.hero .lead{
  color:#333;
  font-size:1.1rem;
}
.hero-stats{
  background:transparent;
  border:1px solid var(--line);
  border-radius:0;
}
.hero-stats div{
  background:#fff;
  backdrop-filter:none;
}
.hero-stats span{color:#666}

.section{padding:56px 0}
.section.soft{background:#f7f7f7}
.section.dark{background:#111;color:#fff}
.section-title h2{
  font-size:2rem;
  line-height:1.15;
}
.section-title p{
  font-weight:500;
}
.eyebrow{
  color:#555;
  font-size:.72rem;
}
.eyebrow:before{background:var(--red)}
.feature-card,.card,.panel,.text-block,.race-card,.sponsor-card,.empty,.notice{
  border:1px solid var(--line);
  border-radius:4px;
  box-shadow:none;
  background:#fff;
}
.feature-card,.card,.panel,.text-block{padding:18px}
.feature-card .label,.status,.race-meta span{
  border-radius:4px;
}
.photo-band{
  grid-template-columns:1fr;
}
.photo-band figure{
  min-height:320px;
  border-radius:4px;
}
.photo-band figcaption{
  left:12px;
  bottom:12px;
}
.race-card{
  grid-template-columns:110px minmax(0,1fr) auto;
  padding:16px;
}
.sponsors-section{background:#fff}
.sponsor-grid{
  grid-template-columns:repeat(auto-fit,minmax(136px,1fr));
  gap:10px;
}
.sponsor-card{
  min-height:134px;
  padding:12px;
}
.sponsor-card img{height:72px}
.sponsor-card span{font-size:.72rem}
.page-hero{
  padding:54px 0;
}
.page-hero:before{
  opacity:.2;
  background:var(--page-image,url('../assets/gallery/ers-social-08.jpg')) center/cover no-repeat;
}
.page-hero h1{
  font-size:3rem;
}
.footer-logo{width:112px}

@media (max-width:620px){
  .hero .container{padding:52px 0}
  .hero h1{font-size:2.25rem}
  .race-card{grid-template-columns:1fr}
}
