/* Fuentes alojadas en la propia web (fonts/), sin depender de Google Fonts.
   Las comparten todas las páginas, también el calendario. */
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-600.woff2') format('woff2');font-weight:600;font-display:swap;}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-700.woff2') format('woff2');font-weight:700;font-display:swap;}
@font-face{font-family:'Barlow Condensed';src:url('../fonts/barlow-condensed-800.woff2') format('woff2');font-weight:800;font-display:swap;}
@font-face{font-family:'Barlow';src:url('../fonts/barlow-400.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:'Barlow';src:url('../fonts/barlow-500.woff2') format('woff2');font-weight:500;font-display:swap;}
@font-face{font-family:'Barlow';src:url('../fonts/barlow-600.woff2') format('woff2');font-weight:600;font-display:swap;}

:root{
  --paper: #eeece4;
  --black: #101012;
  --black-2: #1b1b1f;
  --black-3: #242429;
  --yellow: #f7c500;
  --yellow-dim: #8a6a00;
  --ink: #1b1b1d;
  --ink-muted: #55534c;
  --ink-inv: #f7f6f2;
  --ink-inv-muted: #b6b5ae;
  --line: #ddd8c8;
  --line-dark: #333338;
  --radius: 4px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html, body{overflow-x:clip; max-width:100%;}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Barlow', -apple-system, sans-serif;
  font-size:17px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{
  font-family:'Barlow Condensed','Barlow',sans-serif;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:0.01em;
  margin:0;
  line-height:0.95;
}
p{margin:0;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
.btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:14px 28px;
  border-radius:var(--radius);
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700;
  font-size:19px;
  text-transform:uppercase;
  letter-spacing:0.03em;
  border:2px solid transparent;
  cursor:pointer;
  transition:transform .15s ease, background .15s ease, border-color .15s ease, color .15s ease;
}
.btn:hover{transform:translateY(-2px);}
.btn-fill{background:var(--yellow);color:#111;}
.btn-fill:hover{background:#ffd633;}
.btn-outline{border-color:var(--yellow-dim);color:var(--yellow-dim);background:transparent;}
.btn-outline:hover{background:var(--yellow);color:#111;border-color:var(--yellow);}
.btn:focus-visible, a:focus-visible, button:focus-visible{
  outline:3px solid var(--yellow-dim);
  outline-offset:2px;
}
@media (max-width:640px){
  .cta-row{flex-direction:column;align-items:center;justify-content:center;gap:14px;}
  .cta-row .btn{width:100%;max-width:320px;justify-content:center;}
}

/* Franja de anuncio — justo encima de la cabecera; enlaza a la página de la lotería */
.announce{
  display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:6px 10px;
  background:var(--yellow);color:#111;text-align:center;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:0.05em;font-size:15px;
  padding:9px 16px;
}
.announce-ticket{
  display:inline-block;white-space:nowrap;
  background:#111;color:var(--yellow);
  padding:2px 12px;border:2px dashed var(--yellow);border-radius:4px;
  font-size:17px;letter-spacing:0.14em;line-height:1.3;
}
.announce-more{margin-left:8px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap;}
.announce:hover .announce-more{text-decoration-thickness:2px;}
.announce-short{display:none;}
/* En el móvil, textos cortos y todo en una sola línea */
@media (max-width:640px){
  .announce{flex-wrap:nowrap;gap:8px;font-size:14px;padding:8px 10px;letter-spacing:0.03em;}
  .announce-long{display:none;}
  .announce-short{display:inline;white-space:nowrap;}
  .announce-ticket{font-size:15px;padding:1px 8px;letter-spacing:0.08em;}
}
@media (max-width:350px){
  .announce{font-size:13px;gap:6px;padding:8px 6px;}
  .announce-ticket{font-size:14px;padding:1px 6px;}
}

/* NAV — header & menu: black chrome */
header{
  position:sticky;top:0;z-index:100;
  border-bottom:1px solid var(--line-dark);
}
/* Blur lives on a decorative layer, not on header itself: if header carried
   backdrop-filter directly, it would become the containing block for any
   position:fixed element inside it (like the mobile menu), breaking its
   full-screen positioning. */
header::before{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(0,0,0,1);
  backdrop-filter:blur(6px);
  pointer-events:none;
}
.nav-inner{
  position:relative;z-index:1;
  display:flex;align-items:center;justify-content:space-between;
  height:72px;
}
.brand{display:flex;align-items:center;gap:12px;}
.brand img{height:34px;width:auto;}
.brand-name{
  font-family:'Barlow Condensed',sans-serif;
  font-weight:800;
  font-size:20px;
  letter-spacing:0.02em;
  text-transform:uppercase;
  color:var(--yellow);
  white-space:nowrap;
}
nav.links{display:flex;gap:32px;}
nav.links a{
  font-family:'Barlow Condensed',sans-serif;
  font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:0.04em;
  color:var(--ink-inv-muted);
  padding:6px 2px;border-bottom:2px solid transparent;
  transition:color .15s ease, border-color .15s ease;
}
nav.links a:hover, nav.links a.active{color:var(--yellow);border-color:var(--yellow);}
.lang-switch{
  border:1px solid var(--line-dark);border-radius:var(--radius);
  padding:4px 10px !important;margin-left:8px;
}
.lang-switch:hover{border-color:var(--yellow);}
.menu-toggle{display:none;background:none;border:none;color:var(--ink-inv);font-size:28px;cursor:pointer;}

/* Con el calendario y las noticias son 8 secciones: algo menos de aire entre enlaces en pantallas medianas */
@media (max-width:1320px){nav.links{gap:22px;}}
@media (max-width:1180px){nav.links{gap:16px;}}
@media (max-width:1100px){
  nav.links{
    position:fixed;top:72px;left:0;right:0;bottom:0;
    background:var(--black);
    opacity:1;
    z-index:150;
    flex-direction:column;
    padding:24px;
    gap:0;
    transform:translateX(100%);
    transition:transform .25s ease;
    visibility:hidden;
  }
  nav.links.open{transform:translateX(0);visibility:visible;}
  nav.links a{padding:16px 0;border-bottom:1px solid var(--line-dark);width:100%;}
  .menu-toggle{display:block;}
}

/* TOPAKETA — featured event, first block on the home. Black band with
   yellow accents so it reads as the headline before the hero. */
.topaketa{
  background:var(--black);color:var(--ink-inv);
  padding:56px 0;border-bottom:4px solid var(--yellow);
  position:relative;overflow:hidden;
}
.topaketa::before{
  content:"";position:absolute;left:-12%;bottom:-60%;
  width:560px;height:560px;
  background:radial-gradient(circle, rgba(247,197,0,0.14) 0%, rgba(247,197,0,0) 70%);
  pointer-events:none;
}
.topaketa-inner{position:relative;display:grid;grid-template-columns:auto 1fr;gap:48px;align-items:center;}
.topaketa-date{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  width:170px;aspect-ratio:1/1;
  background:var(--yellow);color:#111;border-radius:12px;
  font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;line-height:0.9;
}
.topaketa-date .day{font-size:84px;}
.topaketa-date .month{font-size:32px;letter-spacing:0.04em;}
.topaketa-date .year{font-size:18px;letter-spacing:0.08em;margin-top:6px;opacity:0.75;}
.topaketa-date .label{font-size:18px;letter-spacing:0.08em;margin-bottom:6px;}
/* Próximas fechas de un evento que se repite: la siguiente, en amarillo */
.topaketa-dates{margin-top:24px;}
.topaketa-dates strong{
  display:block;margin-bottom:10px;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;
  text-transform:uppercase;letter-spacing:0.06em;color:var(--yellow);
}
.topaketa-dates ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.topaketa-dates li{
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;text-transform:uppercase;letter-spacing:0.03em;
  color:var(--ink-inv);border:1.5px solid var(--line-dark);border-radius:999px;padding:4px 14px;
}
.topaketa-dates li.is-next{background:var(--yellow);border-color:var(--yellow);color:#111;}
.topaketa-tag{
  display:inline-block;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;
  text-transform:uppercase;letter-spacing:0.06em;
  color:#111;background:var(--yellow);
  padding:5px 14px;border-radius:999px;margin-bottom:18px;
}
.topaketa h2{font-size:clamp(36px,5vw,60px);color:var(--ink-inv);}
.topaketa-sub{margin-top:14px;font-size:19px;color:var(--ink-inv-muted);max-width:72ch;}
.topaketa-sub.topaketa-sub-es{margin-top:4px;}
.topaketa-facts{
  list-style:none;margin:28px 0 0;padding:0;
  display:flex;flex-wrap:wrap;gap:12px 36px;
}
.topaketa-facts li{display:flex;flex-direction:column;gap:2px;}
.topaketa-facts strong{
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;
  text-transform:uppercase;letter-spacing:0.06em;color:var(--yellow);
}
.topaketa-facts span{font-size:18px;font-weight:600;color:var(--ink-inv);}
.topaketa-meet{
  margin-top:24px;padding:16px 20px;
  border-left:3px solid var(--yellow);background:var(--black-2);
  border-radius:0 var(--radius) var(--radius) 0;
}
.topaketa-meet p{font-size:16px;color:var(--ink-inv);}
.topaketa-meet p + p{margin-top:6px;color:var(--ink-inv-muted);}
.topaketa .cta-row{margin-top:28px;}
.topaketa .btn-outline{border-color:var(--yellow);color:var(--yellow);}
.topaketa .btn-outline:hover{color:#111;}
/* Main sign-up button: larger, with a soft pulsing glow to draw the eye */
.btn-topaketa{
  font-size:22px;padding:18px 36px;
  box-shadow:0 0 0 0 rgba(247,197,0,0.6);
  animation:topaketa-pulse 2.2s ease-out infinite;
}
.btn-topaketa:hover{animation:none;box-shadow:0 6px 24px rgba(247,197,0,0.45);}
@keyframes topaketa-pulse{
  0%{box-shadow:0 0 0 0 rgba(247,197,0,0.6);}
  70%{box-shadow:0 0 0 16px rgba(247,197,0,0);}
  100%{box-shadow:0 0 0 0 rgba(247,197,0,0);}
}
@media (prefers-reduced-motion:reduce){.btn-topaketa{animation:none;}}
@media (max-width:820px){
  .topaketa{padding:40px 0;}
  .topaketa-inner{grid-template-columns:1fr;gap:28px;}
  .topaketa-date{width:auto;aspect-ratio:auto;flex-direction:row;gap:12px;align-items:baseline;padding:14px 20px;justify-self:start;}
  .topaketa-date .day{font-size:48px;}
  .topaketa-date .month{font-size:28px;}
  .topaketa-date .year{font-size:18px;margin-top:0;}
  .topaketa-date .label{font-size:18px;margin-bottom:0;}
}

/* HERO — full-bleed photo slider with a dark brand overlay, so any photo
   (stock placeholder or real club photo) reads as part of the same dark
   chrome as the header/footer, never as a raw stock image dropped in. */
.hero{
  position:relative;
  padding:120px 0 100px;
  overflow:hidden;
  border-bottom:none;
}
.hero-inner{position:relative;z-index:2;max-width:920px;}
.eyebrow-tag{
  display:inline-block;
  font-family:'Barlow Condensed',sans-serif;
  font-weight:700;font-size:15px;text-transform:uppercase;letter-spacing:0.06em;
  color:var(--yellow-dim);
  border:1px solid var(--yellow-dim);
  padding:6px 14px;border-radius:999px;
  margin-bottom:24px;
}
.hero h1{font-size:clamp(42px,6vw,72px);color:var(--ink-inv);}
.hero h1 em{font-style:normal;color:var(--yellow);}
.hero .sub{margin-top:22px;font-size:19px;color:var(--ink-inv-muted);max-width:60ch;}
.cta-row{display:flex;gap:16px;flex-wrap:wrap;}
.hero .cta-row{margin-top:36px;}

/* Slider — shared by the home hero and the interior .page-hero sections.
   Real <img> elements (not CSS background-image) so the photos are still
   indexable with descriptive alt text, not just decorative paint. */
.hero-slider{position:absolute;inset:0;z-index:0;background:var(--black);}
.hero-slide{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;object-position:center;
  opacity:0;transition:opacity 1.6s ease;
  filter:grayscale(15%) contrast(1.05);
}
.hero-slide.is-active{opacity:1;}
.hero-slider-overlay{
  position:absolute;inset:0;z-index:1;
  background:
    radial-gradient(circle at 85% 0%, rgba(247,197,0,0.22) 0%, rgba(247,197,0,0) 45%),
    linear-gradient(100deg, rgba(16,16,18,0.94) 0%, rgba(16,16,18,0.82) 45%, rgba(16,16,18,0.55) 100%);
}

/* Page hero — a lighter version of the same treatment, for the opening
   section of interior pages (kicker + H1 + lead stay exactly as they are,
   just promoted onto a dark photo band instead of the plain light page). */
.page-hero{
  position:relative;
  overflow:hidden;
  padding:100px 0;
  border-bottom:none;
}
.page-hero .wrap{position:relative;z-index:2;}
.page-hero .section-head .kicker{color:var(--yellow);}
.page-hero .section-head h1,
.page-hero .section-head h2{color:var(--ink-inv);}
.page-hero .section-head p.lead{color:var(--ink-inv-muted);}
.page-hero .hero-slide{filter:grayscale(25%) contrast(1.05);}
.page-hero .hero-slider-overlay{
  background:
    radial-gradient(circle at 12% 100%, rgba(247,197,0,0.16) 0%, rgba(247,197,0,0) 45%),
    linear-gradient(100deg, rgba(16,16,18,0.9) 0%, rgba(16,16,18,0.78) 55%, rgba(16,16,18,0.6) 100%);
}
@media (prefers-reduced-motion: reduce){
  .hero-slide{transition:none;}
}

/* SECTION shared — light page background */
section{padding:80px 0;border-bottom:1px solid var(--line);}
main section:last-child{border-bottom:none;}
.section-head{max-width:640px;margin-bottom:48px;}
.kicker{
  color:var(--yellow-dim);font-family:'Barlow Condensed',sans-serif;font-weight:700;
  font-size:15px;text-transform:uppercase;letter-spacing:0.06em;display:block;margin-bottom:10px;
}
.section-head h1,.section-head h2{font-size:clamp(30px,4vw,44px);}
.section-head p.lead{margin-top:14px;color:var(--ink-muted);font-size:18px;}

/* Prose — plain running text on the light page, not boxed */
.prose{max-width:70ch;}
.prose p{color:var(--ink-muted);font-size:17px;margin-bottom:18px;}
.prose p:last-child{margin-bottom:0;}

/* Deporte cards — boxed info panels stay black */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.card{
  background:var(--black-2);
  border:1px solid var(--line-dark);
  border-radius:var(--radius);
  padding:28px;
}
.card .num{
  font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:15px;
  color:var(--yellow);letter-spacing:0.05em;text-transform:uppercase;display:block;margin-bottom:14px;
}
.card h3{font-size:24px;margin-bottom:10px;color:var(--ink-inv);}
.card p{color:var(--ink-inv-muted);font-size:16px;}

@media (max-width:820px){.grid-3{grid-template-columns:1fr;}}

/* Hub cards (home quick nav) — boxed, stay black */
.grid-hub{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.hub-card{
  display:block;
  background:var(--black-2);
  border:1px solid var(--line-dark);
  border-radius:var(--radius);
  padding:28px;
  transition:transform .15s ease, border-color .15s ease;
}
.hub-card:hover{transform:translateY(-4px);border-color:var(--yellow-dim);}
.hub-card h3{color:var(--ink-inv);}
.hub-card p{color:var(--ink-inv-muted);}
.hub-card .arrow{
  display:inline-block;margin-top:16px;color:var(--yellow);
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:15px;
  text-transform:uppercase;letter-spacing:0.04em;
}
.hub-card:hover .arrow{text-decoration:underline;}
@media (max-width:900px){.grid-hub{grid-template-columns:1fr 1fr;}}
@media (max-width:560px){.grid-hub{grid-template-columns:1fr;}}

/* Stat band — boxed, stays black */
.stat-band{
  display:flex;justify-content:space-around;flex-wrap:wrap;gap:24px;
  background:var(--black-2);border:1px solid var(--line-dark);border-radius:var(--radius);
  padding:36px 24px;margin-bottom:56px;
}
.stat{text-align:center;}
.stat strong{
  display:block;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:22px;color:var(--yellow);
  text-transform:uppercase;letter-spacing:0.03em;
}
.stat span{color:var(--ink-inv-muted);font-size:14px;}

/* Benefits — plain text on the light page, not boxed */
.benefits{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.benefit-col h3{
  font-size:20px;color:var(--ink);display:flex;align-items:center;gap:10px;margin-bottom:20px;
  text-transform:none;font-weight:700;
}
.benefit-col h3 .dot{width:10px;height:10px;background:var(--yellow-dim);border-radius:2px;flex:none;}
.benefit-item{
  display:flex;gap:14px;padding:16px 0;border-top:1px solid var(--line);
}
.benefit-item:last-child{border-bottom:1px solid var(--line);}
.benefit-item .check{
  flex:none;width:20px;height:20px;border-radius:50%;
  border:2px solid var(--yellow-dim);
  margin-top:2px;
}
.benefit-item h4{font-size:16px;font-weight:600;color:var(--ink);margin-bottom:4px;text-transform:none;font-family:'Barlow',sans-serif;}
.benefit-item p{font-size:15px;color:var(--ink-muted);}

@media (max-width:820px){.benefits{grid-template-columns:1fr;gap:32px;}}

/* Facilities (Instalaciones) — boxed, stay black, reuse .card look */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media (max-width:820px){.grid-2{grid-template-columns:1fr;}}
.facility-address,.facility-phone{color:var(--ink-inv-muted);font-size:15px;margin-bottom:4px;}
/* Sin mapas incrustados (cargarían cookies de Google): foto propia + enlace a Google Maps */
.facility-photo{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line-dark);margin-top:18px;}
.facility-link{margin-top:18px;}

/* Escuela: bloque destacado de waterpolo femenino (fondo negro, acento amarillo) */
.girls-band{background:var(--black);border-bottom:none;padding:72px 0;}
.girls-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.girls-photo{width:100%;height:100%;max-height:460px;object-fit:cover;border-radius:var(--radius);border:3px solid var(--yellow);}
.girls-body .kicker{color:var(--yellow);}
.girls-body h2{color:var(--ink-inv);font-size:clamp(32px,4.5vw,52px);}
.girls-lead{color:var(--ink-inv-muted);font-size:18px;margin-top:16px;}
.girls-list{list-style:none;margin:24px 0 28px;padding:0;display:grid;gap:14px;}
.girls-list li{border-left:4px solid var(--yellow);padding:4px 0 4px 16px;}
.girls-list strong{display:block;color:var(--ink-inv);font-size:17px;}
.girls-list span{color:var(--ink-inv-muted);font-size:15px;}
@media (max-width:820px){.girls-inner{grid-template-columns:1fr;gap:28px;}.girls-photo{max-height:280px;}}

/* Enlaces dentro de texto corrido (escuela, horarios): subrayados para que se vean */
.section-head p.lead a,.flex-note p a,.schedule-sub-head p a,.schedule-table-block h4 a{text-decoration:underline;text-underline-offset:2px;}

/* Páginas legales (aviso legal, privacidad, cookies) */
.legal h2{font-size:26px;margin:40px 0 14px;}
.legal h2:first-child{margin-top:0;}
.legal ul{color:var(--ink-muted);font-size:17px;margin:0 0 18px;padding-left:22px;}
.legal li{margin-bottom:6px;}
.legal a{text-decoration:underline;}
.legal strong{color:var(--ink);}

/* Positions — boxed, stay black */
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.pos-card{
  background:var(--black-2);border:1px solid var(--line-dark);border-radius:var(--radius);
  padding:24px;text-align:left;
}
.pos-card .quote{font-size:19px;color:var(--yellow);font-style:normal;font-weight:600;margin-bottom:8px;}
.pos-card .role{
  font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:0.04em;
  color:var(--ink-inv-muted);font-size:14px;text-transform:uppercase;
}
@media (max-width:900px){.grid-4{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.grid-4{grid-template-columns:1fr;}}

/* FAQ — plain text on the light page, not boxed */
.faq-item{border-top:1px solid var(--line);}
.faq-item:last-child{border-bottom:1px solid var(--line);}
.faq-q{
  width:100%;text-align:left;background:none;border:none;color:var(--ink);
  font-family:'Barlow',sans-serif;font-size:18px;font-weight:600;
  padding:22px 4px;display:flex;justify-content:space-between;align-items:center;
  cursor:pointer;gap:16px;
}
.faq-q .plus{
  flex:none;width:22px;height:22px;position:relative;
}
.faq-q .plus::before,.faq-q .plus::after{
  content:"";position:absolute;background:var(--yellow-dim);
  top:50%;left:50%;transform:translate(-50%,-50%);
}
.faq-q .plus::before{width:14px;height:2px;}
.faq-q .plus::after{width:2px;height:14px;transition:transform .2s ease, opacity .2s ease;}
.faq-item.open .plus::after{transform:translate(-50%,-50%) rotate(90deg);opacity:0;}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s ease;}
.faq-a p{padding:0 4px 22px;color:var(--ink-muted);font-size:16px;max-width:70ch;}

/* Schedule table — the table itself is a boxed info panel, stays black */
table{width:100%;border-collapse:collapse;}
thead th{
  text-align:left;font-family:'Barlow Condensed',sans-serif;font-weight:700;
  text-transform:uppercase;letter-spacing:0.04em;font-size:14px;color:var(--yellow);
  padding:14px 16px;border-bottom:2px solid var(--yellow-dim);
}
tbody td{
  padding:14px 16px;border-bottom:1px solid var(--line-dark);font-size:16px;color:var(--ink-inv);
}
tbody td.cat{font-weight:700;color:var(--yellow);white-space:nowrap;}
tbody tr td.cat[rowspan]{vertical-align:top;}
.table-wrap{
  background:var(--black-2);
  overflow-x:auto;border:1px solid var(--line-dark);border-radius:var(--radius);margin-bottom:32px;
}
td.off{color:var(--ink-inv-muted);}
.flex-note{
  display:flex;gap:20px;align-items:flex-start;background:var(--black-2);
  border:1px solid var(--line-dark);border-radius:var(--radius);padding:24px;
}
.flex-note h4{font-size:18px;color:var(--ink-inv);margin-bottom:6px;}
.flex-note p{color:var(--ink-inv-muted);font-size:15px;}
.flex-note + .flex-note{margin-top:16px;}
.flex-note .cta-row{margin-top:16px;}
.flex-note .btn-outline{border-color:var(--yellow);color:var(--yellow);}
.flex-note .btn-outline:hover{color:#111;}

/* Schedule: pretemporada / temporada subsections — headings on the light page */
.schedule-sub{margin-bottom:48px;}
.schedule-sub:last-child{margin-bottom:0;}
.schedule-sub-head{margin-bottom:22px;}
.schedule-sub-head h3{font-size:24px;color:var(--yellow-dim);margin-bottom:6px;}
.schedule-sub-head p{color:var(--ink-muted);font-size:16px;max-width:70ch;}
.schedule-table-block{margin-bottom:28px;}
.schedule-table-block:last-child{margin-bottom:0;}
.schedule-table-block h4{
  font-size:18px;color:var(--ink);margin-bottom:10px;
  text-transform:none;font-family:'Barlow',sans-serif;font-weight:600;
}
th.facility{text-align:center;}
.facility-gobela{background:rgba(247,197,0,0.07);}
.facility-fadura{background:rgba(247,197,0,0.16);}
.col-divide{border-left:2px solid var(--yellow);}
.schedule-note{color:var(--ink-muted);font-size:14px;margin-bottom:12px;}
.schedule-note strong{color:var(--ink);}
.schedule-pool{color:var(--ink-muted);font-size:13px;}

/* Steps — plain text on the light page, not boxed */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;counter-reset:step;}
.step{position:relative;padding-top:20px;}
.step::before{
  counter-increment:step;content:counter(step);
  font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:52px;color:var(--yellow-dim);
  display:block;margin-bottom:8px;line-height:1;opacity:0.85;
}
.step h3{font-size:22px;margin-bottom:10px;color:var(--ink);}
.step p{color:var(--ink-muted);font-size:16px;}
@media (max-width:820px){.steps{grid-template-columns:1fr;}}

/* Backpack — pills are small boxed chips, stay black */
.backpack{display:flex;flex-wrap:wrap;gap:16px;}
.pack-item{
  background:var(--black-2);border:1px solid var(--line-dark);border-radius:999px;
  padding:12px 22px;font-family:'Barlow Condensed',sans-serif;font-weight:600;
  font-size:16px;letter-spacing:0.02em;color:var(--ink-inv);
}

/* Final CTA — full-bleed yellow band, unaffected by the light/dark split */
.final-cta{
  background:var(--yellow);color:#111;border-bottom:none;
  text-align:center;padding:88px 0;
}
.final-cta h1,.final-cta h2{color:#111;font-size:clamp(32px,5vw,52px);max-width:clamp(16ch,60vw,42ch);margin:0 auto;}
.final-cta p{color:#3a3000;font-size:18px;margin-top:18px;max-width:56ch;margin-left:auto;margin-right:auto;}
.final-cta .cta-row{justify-content:center;margin-top:32px;}
.final-cta .btn-fill{background:#111;color:var(--yellow);}
.final-cta .btn-fill:hover{background:#000;}
.final-cta .btn-outline{border-color:#111;color:#111;}
.final-cta .btn-outline:hover{background:#111;color:var(--yellow);}

/* CTA band — the same vibrant yellow moment as the Contacto page,
   reused as a compact closing block on the other pages. */
.cta-band{
  background:var(--yellow);color:#111;border-bottom:none;
  text-align:center;padding:64px 0;
}
.cta-band h2{color:#111;font-size:clamp(28px,4vw,40px);max-width:clamp(20ch,65vw,46ch);margin:0 auto;}
.cta-band p{color:#3a3000;font-size:17px;margin-top:14px;max-width:56ch;margin-left:auto;margin-right:auto;}
.cta-band .cta-row{justify-content:center;margin-top:28px;}
.cta-band .btn-fill{background:#111;color:var(--yellow);}
.cta-band .btn-fill:hover{background:#000;}
.cta-band .btn-outline{border-color:#111;color:#111;}
.cta-band .btn-outline:hover{background:#111;color:var(--yellow);}

/* Footer — black chrome like the header, text inverted for contrast */
footer{padding:40px 0;background:#000;border-top:1px solid var(--line-dark);}
.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.footer-brand{display:flex;align-items:center;gap:10px;color:var(--ink-inv-muted);font-size:14px;}
.footer-brand img{height:22px;}
.footer-text{display:flex;flex-direction:column;gap:2px;}
.footer-address{font-size:12px;opacity:0.8;}
.footer-links{display:flex;flex-wrap:wrap;gap:12px 24px;}
.footer-legal{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;margin-top:4px;}
.footer-legal a{color:var(--ink-inv-muted);text-decoration:underline;}
.footer-legal a:hover{color:var(--yellow);}
.footer-links a{color:var(--ink-inv-muted);font-size:15px;}
.footer-links a:hover{color:var(--yellow);}

@media (max-width:600px){
  .footer-inner{flex-direction:column;align-items:flex-start;gap:18px;}
  .footer-links{flex-wrap:wrap;gap:10px 18px;}
  .footer-links a{font-size:13px;}
}

/* Quiénes somos — historia con foto, filosofía en banda oscura, valores numerados */
.about-grid{display:grid;grid-template-columns:1.1fr 0.9fr;gap:56px;align-items:center;}
.about-text h2{font-size:clamp(30px,4vw,44px);margin-bottom:24px;}
.about-text .prose p.about-lead{font-size:21px;line-height:1.5;color:var(--ink);border-left:4px solid var(--yellow);padding-left:20px;}
.about-photo{margin:0;position:relative;}
.about-photo::before{content:"";position:absolute;inset:18px -18px -18px 18px;background:var(--yellow);border-radius:var(--radius);z-index:0;}
.about-photo img{position:relative;z-index:1;display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);}
@media (max-width:820px){
  .about-grid{grid-template-columns:1fr;gap:40px;}
  .about-photo{margin-right:18px;}
  .about-photo img{aspect-ratio:3/2;}
}

.philo-band{position:relative;overflow:hidden;padding:110px 0;border-bottom:none;background:var(--black);}
.philo-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(30%);}
.philo-overlay{position:absolute;inset:0;background:linear-gradient(100deg,rgba(16,16,18,0.94) 0%,rgba(16,16,18,0.86) 60%,rgba(16,16,18,0.7) 100%);}
.philo-band .wrap{position:relative;z-index:1;}
.philo-band .section-head{margin-bottom:28px;}
.philo-band .kicker{color:var(--yellow);}
.philo-band h2{color:var(--ink-inv);}
.philo-text{max-width:860px;position:relative;padding-left:56px;}
.philo-text::before{content:"\201C";position:absolute;left:0;top:-18px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:110px;line-height:1;color:var(--yellow);}
.philo-text p{color:var(--ink-inv);font-size:clamp(20px,2.3vw,26px);line-height:1.45;font-weight:500;}
@media (max-width:520px){.philo-text{padding-left:0;padding-top:48px;}.philo-text::before{top:-10px;font-size:90px;}}

.value-card{border-top:4px solid var(--yellow);}
.value-card .num{font-size:40px;line-height:1;margin-bottom:16px;}
.value-card h3{font-size:22px;}

.about-approach{background:#e5e2d6;}

/* Protección del menor — tarjeta negra con el delegado y su correo (proteccion-menor.php) */
.protect-card{
  background:var(--black-2);border:1px solid var(--line-dark);border-left:4px solid var(--yellow);
  border-radius:var(--radius);padding:28px;margin-bottom:48px;
  display:flex;align-items:center;justify-content:space-between;gap:24px 40px;flex-wrap:wrap;
}
.protect-main{flex:1 1 420px;max-width:64ch;}
.protect-side{flex:0 1 auto;max-width:100%;}
.protect-card .protect-side .cta-row{margin-top:0;}
.protect-head{max-width:820px;}
.protect-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px;}
.protect-grid .protect-item h2{margin-top:0;}
.protect-grid .protect-item:last-child:nth-child(odd){grid-column:1/-1;max-width:90ch;}
.protect-grid p{color:var(--ink-muted);font-size:17px;margin-bottom:18px;}
.protect-grid p:last-child,.protect-grid ul:last-child{margin-bottom:0;}
@media (max-width:860px){.protect-grid{grid-template-columns:1fr;gap:36px;}}
.protect-card .num{
  font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:15px;
  color:var(--yellow);letter-spacing:0.05em;text-transform:uppercase;display:block;margin-bottom:10px;
}
.protect-card h2{font-size:clamp(28px,4vw,38px);color:var(--ink-inv);margin-bottom:12px;}
.protect-card p{color:var(--ink-inv-muted);font-size:17px;}
.protect-card .cta-row{margin-top:20px;}
.protect-card .btn{text-transform:none;letter-spacing:0;font-size:18px;overflow-wrap:anywhere;}
.protect-card .protect-note{margin-top:16px;font-size:14px;}
@media (max-width:640px){.protect-card .btn{font-size:15px;padding:14px 16px;}}
/* Quiénes somos — franja que enlaza a la página de protección del menor */
.protect-band{padding:56px 0;}
.protect-band-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.protect-band-inner > div{max-width:62ch;}
.protect-band h2{font-size:clamp(26px,3.4vw,36px);margin-bottom:10px;}
.protect-band p{color:var(--ink-muted);font-size:17px;}

/* Lotería del club (loteria.php y eu/loteria.php) — página suelta, sin menú ni pie */
.lottery{background:var(--black);color:var(--ink-inv);min-height:100vh;}
.lottery-top{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px;}
.lottery-top .brand-name{color:var(--ink-inv);}
.lottery-top .lang-switch{color:var(--ink-inv);font-family:'Barlow Condensed',sans-serif;font-weight:700;letter-spacing:0.05em;}
.lottery section{border-bottom:1px solid var(--line-dark);padding:64px 0;}
.lottery .kicker{color:var(--yellow);}
.lottery h1{font-size:clamp(40px,7vw,76px);color:var(--ink-inv);max-width:16ch;}
.lottery h2{font-size:clamp(28px,4vw,40px);color:var(--ink-inv);margin-bottom:24px;}
.lottery .lead{color:var(--ink-inv-muted);font-size:19px;max-width:60ch;margin-top:32px;}
.lottery-hero{padding-top:40px !important;}
.lottery-hero .wrap{text-align:center;}
.lottery-hero h1,.lottery-hero .lead{margin-left:auto;margin-right:auto;}
.lottery-ticket{
  display:inline-flex;flex-direction:column;align-items:center;margin-top:36px;
  background:var(--yellow);color:#111;border-radius:10px;padding:18px 40px 16px;
  outline:3px dashed #111;outline-offset:-12px;
  font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;
}
.lottery-ticket-label{font-weight:700;font-size:16px;letter-spacing:0.12em;}
.lottery-ticket-num{font-weight:800;font-size:clamp(64px,13vw,128px);line-height:1;letter-spacing:0.08em;}
.lottery-ticket-club{font-weight:700;font-size:15px;letter-spacing:0.1em;}
.lottery-sum{display:flex;align-items:stretch;gap:16px;flex-wrap:wrap;}
.lottery-sum-item{
  flex:1 1 160px;background:var(--black-2);border:1px solid var(--line-dark);border-radius:var(--radius);
  padding:22px;display:flex;flex-direction:column;gap:4px;
}
.lottery-sum-item strong{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:52px;line-height:1;color:var(--ink-inv);}
.lottery-sum-item span{color:var(--ink-inv-muted);font-size:16px;}
.lottery-sum-item.is-total{border-color:var(--yellow);border-left-width:4px;}
.lottery-sum-item.is-total strong{color:var(--yellow);}
.lottery-sum-op{align-self:center;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:40px;color:var(--yellow);}
.lottery-note{color:var(--ink-inv-muted);font-size:18px;max-width:62ch;margin-top:20px;}
.lottery-contact .lottery-note{margin-top:0;}
.lottery-ways{list-style:none;margin:28px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.lottery-ways li{
  background:var(--black-2);border:1px solid var(--line-dark);border-left:4px solid var(--yellow);
  border-radius:var(--radius);padding:22px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;
}
.lottery-ways strong{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:24px;text-transform:uppercase;}
.lottery-ways span{color:var(--ink-inv-muted);}
.lottery-ways .btn{margin-top:10px;text-transform:none;}
.lottery-luck{
  margin-top:40px;font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;
  font-size:clamp(40px,7vw,72px);line-height:1;color:var(--yellow);
}
.lottery-prize{border-bottom:none !important;}
/* Después del sorteo: aviso de premio (mediano) o premio gordo (grande) */
.lottery-win{text-align:center;}
.lottery-win .wrap{max-width:820px;background:var(--yellow);color:#111;border-radius:14px;padding:36px 28px;}
.lottery-win .kicker{color:#111;}
.lottery-win h1{color:#111;margin:6px auto 10px;}
.lottery-win-text{font-size:20px;font-weight:600;}
.lottery-win-amount{margin:14px 0 4px;font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;}
.lottery-win-amount strong{display:block;font-weight:800;font-size:clamp(48px,9vw,84px);line-height:1;}
.lottery-win-amount span{font-weight:700;font-size:18px;letter-spacing:.06em;}
.lottery-win-how{background:#111;color:var(--ink-inv);border-radius:10px;padding:20px 22px;margin-top:22px;text-align:left;}
.lottery-win-how h2{color:var(--yellow);font-size:26px;margin:0 0 8px;}
.lottery-win-how p{color:var(--ink-inv);font-size:18px;line-height:1.55;}
.lottery-win.is-gordo .wrap{max-width:none;border-radius:0;padding:56px 24px 48px;
  background:radial-gradient(circle at 20% 20%,#fff3a6 0,transparent 35%),radial-gradient(circle at 80% 70%,#ffe066 0,transparent 40%),var(--yellow);}
.lottery-win.is-gordo h1{font-size:clamp(56px,12vw,140px);line-height:.95;}
.lottery-win.is-gordo .lottery-win-text{font-size:24px;}
.lottery-win.is-gordo .lottery-win-amount strong{font-size:clamp(72px,14vw,160px);}
.lottery-win.is-gordo .lottery-win-how{max-width:820px;margin-left:auto;margin-right:auto;}
.lottery-hero-title{font-size:clamp(32px,5vw,48px);}
.announce-win{background:#111;color:var(--yellow);}
.announce-win .announce-ticket{background:var(--yellow);color:#111;}
.announce-win.is-gordo{font-size:20px;padding-top:14px;padding-bottom:14px;animation:announce-pulse 1.6s ease-in-out infinite;}
@keyframes announce-pulse{50%{background:#2a2400;}}
@media (prefers-reduced-motion:reduce){.announce-win.is-gordo{animation:none;}}
.lottery-foot{color:var(--ink-inv-muted);font-size:14px;padding-top:8px;padding-bottom:32px;}
@media (max-width:640px){
  .lottery section{padding:48px 0;}
  .lottery-ticket{padding:14px 24px 12px;}
  .lottery-ways{grid-template-columns:1fr;}
  .lottery-sum{flex-direction:column;gap:10px;}
  .lottery-sum-op{display:none;}
  .lottery-sum-item{flex:none;flex-direction:row;align-items:center;gap:16px;padding:14px 18px;}
  .lottery-sum-item strong{font-size:38px;min-width:2.4ch;}
}
@media (max-width:420px){.lottery-top .brand-name{display:none;}}
/* Lotería — estilo claro (28-oct-2026): arriba el amarillo del club con billete negro,
   el resto sobre papel. Va detrás de las reglas de arriba y solo cambia colores. */
.lottery{background:var(--paper);color:var(--ink);}
.lottery-top{background:var(--yellow);max-width:none;padding-left:max(24px,calc((100% - 1072px)/2));padding-right:max(24px,calc((100% - 1072px)/2));}
.lottery-top .brand-name,.lottery-top .lang-switch{color:#111;}
.lottery-top .lang-switch{border-color:#111;}
.lottery-hero{background:var(--yellow);border-bottom:none !important;padding-bottom:80px !important;
  background-image:repeating-linear-gradient(135deg,rgba(0,0,0,.035) 0 18px,transparent 18px 36px);}
.lottery .lottery-hero .kicker{color:#111;}
.lottery h1,.lottery h2{color:#111;}
.lottery .lead{color:#3a3000;}
.lottery-ticket{background:var(--black);color:var(--yellow);outline:3px dashed var(--yellow);outline-offset:-12px;box-shadow:0 20px 40px rgba(0,0,0,.25);transform:rotate(-2deg);}
.lottery-ticket-label,.lottery-ticket-club{color:var(--ink-inv);}
.lottery section{border-bottom:1px solid var(--line);}
.lottery .kicker{color:var(--yellow-dim);}
.lottery-note{color:var(--ink-muted);}
.lottery-sum-item{background:#fff;border-color:var(--line);}
.lottery-sum-item strong{color:var(--ink);}
.lottery-sum-item span{color:var(--ink-muted);}
.lottery-sum-item.is-total{background:var(--black);border-color:var(--black);border-left:4px solid var(--yellow);}
.lottery-sum-item.is-total strong{color:var(--yellow);}
.lottery-sum-item.is-total span{color:var(--ink-inv-muted);}
.lottery-sum-op{color:var(--ink);}
.lottery-ways li{background:#fff;border-color:var(--line);border-left-color:var(--yellow);}
.lottery-ways span{color:var(--ink-muted);}
.lottery-luck{color:#111;background:var(--yellow);display:inline-block;padding:6px 18px 2px;transform:rotate(-1.5deg);}
.lottery-foot{color:var(--ink-muted);}

/* Escuela: bloque de cuotas (sin precios) */
.fee{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);background:var(--black);color:var(--ink-inv);border-radius:var(--radius);overflow:hidden}
.fee-price{background:var(--yellow);color:var(--black);padding:36px 32px;display:flex;flex-direction:column;justify-content:center}
.fee-label{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:15px}
.fee-amount{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:56px;line-height:1;margin:8px 0 4px;text-transform:uppercase}
.fee-when{margin:14px 0 0;font-size:15px;border-top:2px solid rgba(0,0,0,.2);padding-top:12px}
.fee-body{padding:36px 32px}
.fee-body h3{font-family:'Barlow Condensed',sans-serif;font-size:26px;margin:0 0 10px;color:var(--yellow);text-transform:uppercase}
.fee-body p{margin:0 0 14px;color:var(--ink-inv-muted)}
.fee-body p strong{color:var(--ink-inv)}
.fee-body ul{margin:0 0 22px;padding:0;list-style:none}
.fee-body li{padding:6px 0 6px 26px;position:relative;border-bottom:1px solid var(--line-dark)}
.fee-body li:before{content:"";position:absolute;left:0;top:15px;width:12px;height:3px;background:var(--yellow)}
@media (max-width:760px){.fee{grid-template-columns:1fr}.fee-price,.fee-body{padding:28px 22px}.fee-amount{font-size:44px}}
.fee-btn-dark{align-self:flex-start;margin-top:20px;background:var(--black);color:var(--yellow);border:2px solid var(--black)}
.fee-btn-dark:hover{background:transparent;color:var(--black)}

/* NOTICIAS — listado (noticias/, eu/berriak/), noticia y bloque de portada */
.news-hero{background:var(--black);color:var(--ink-inv);padding:72px 0 40px;border-bottom:4px solid var(--yellow);}
.news-hero .kicker{color:var(--yellow);}
.news-hero h1{color:var(--ink-inv);}
.news-hero .section-head{margin-bottom:28px;}
.news-hero .section-head p.lead{color:var(--ink-inv-muted);}
.news-filters{display:flex;flex-wrap:wrap;gap:8px;}
.news-filters a{
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:16px;text-transform:uppercase;letter-spacing:0.04em;
  border:1.5px solid var(--line-dark);border-radius:999px;padding:5px 15px;color:var(--ink-inv);
}
.news-filters a:hover{border-color:var(--yellow);}
.news-filters a.is-on{background:var(--yellow);border-color:var(--yellow);color:#111;}
.news-list{padding:56px 0 80px;}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media (max-width:900px){.news-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.news-grid{grid-template-columns:1fr;}}
.news-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .15s ease, border-color .15s ease;}
.news-card:hover{transform:translateY(-3px);border-color:var(--yellow-dim);}
.news-card-link{display:flex;flex-direction:column;height:100%;}
.news-card-photo{position:relative;background:var(--black);}
.news-card-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.news-card-score{
  position:absolute;left:12px;bottom:12px;background:var(--black);color:var(--yellow);
  font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:24px;padding:2px 12px;border-radius:3px;font-variant-numeric:tabular-nums;
}
.news-card-body{padding:16px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1;}
.news-card-body h3{font-size:23px;line-height:1.08;text-wrap:balance;}
.news-card-body p{color:var(--ink-muted);font-size:15px;}
.news-card-body time{margin-top:auto;color:var(--ink-muted);font-size:14px;}
.news-chip{
  align-self:flex-start;background:var(--black);color:var(--yellow);font-family:'Barlow Condensed',sans-serif;font-weight:700;
  font-size:13px;text-transform:uppercase;letter-spacing:0.08em;padding:3px 9px;border-radius:3px;
}
.news-empty{font-size:18px;color:var(--ink-muted);}
.news-pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:40px;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:18px;}
.news-other-lang{margin-top:32px;color:var(--ink-muted);}
.news-other-lang a{text-decoration:underline;}

/* Portada: últimas noticias */
.news-home{padding:72px 0;}
.news-home-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:32px;}
.news-home-head h2{font-size:clamp(30px,4vw,44px);}
.news-related{padding:64px 0;border-top:1px solid var(--line);}

/* Una noticia */
.news-preview-bar{background:var(--yellow);color:#111;text-align:center;padding:10px 16px;font-weight:600;}
.news-preview-bar a{text-decoration:underline;margin-left:8px;}
.news-article-head{background:var(--black);color:var(--ink-inv);padding:48px 0 120px;}
.news-crumbs{display:flex;gap:8px;flex-wrap:wrap;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;font-size:15px;color:var(--yellow);margin-bottom:14px;}
.news-crumbs span{color:var(--ink-inv-muted);}
.news-crumbs a:hover{text-decoration:underline;}
.news-article-head h1{font-size:clamp(34px,5.4vw,62px);color:var(--ink-inv);max-width:22ch;text-wrap:balance;}
.news-meta{margin-top:14px;color:var(--ink-inv-muted);font-size:16px;}
.news-article-wrap{margin-top:-96px;}
.news-figure{margin:0;}
.news-figure img{width:100%;max-height:640px;aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius);background:var(--black-2);}
.news-figure figcaption{margin-top:8px;color:var(--ink-muted);font-size:14px;}
.news-score{
  background:var(--black);color:var(--ink-inv);border-bottom:4px solid var(--yellow);border-radius:var(--radius);
  padding:20px 24px;margin-top:20px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;
}
.news-score-top{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--ink-inv-muted);font-size:15px;}
.news-score-main{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;width:100%;}
.news-score-team{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:clamp(18px,2.6vw,28px);line-height:1.05;text-align:right;}
.news-score-away{text-align:left;}
.news-score-num{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:clamp(44px,8vw,80px);color:var(--yellow);font-variant-numeric:tabular-nums;white-space:nowrap;line-height:1;}
.news-quarters{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap;justify-content:center;}
.news-quarters li{border:1.5px solid var(--line-dark);border-radius:4px;padding:3px 10px;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:17px;font-variant-numeric:tabular-nums;}
.news-quarters li span{color:var(--ink-inv-muted);margin-right:2px;}
.news-score-link{color:var(--yellow);font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;}
.news-score-link:hover{text-decoration:underline;}
.news-body{max-width:70ch;margin:40px auto 72px;display:flex;flex-direction:column;gap:24px;}
.news-lead{font-size:21px;line-height:1.45;font-weight:600;color:var(--ink);}
.news-text p,.news-text li{font-size:18px;line-height:1.65;color:var(--ink);}
.news-text p + p,.news-text ul,.news-text h2{margin-top:18px;}
.news-text h2{font-size:28px;}
.news-text ul{padding-left:22px;}
.news-text a{text-decoration:underline;text-underline-offset:3px;}
.news-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.news-gallery img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:var(--radius);}
@media (max-width:600px){.news-gallery{grid-template-columns:1fr 1fr;}}
.news-tags{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex-wrap:wrap;}
.news-tags a{display:block;border:1.5px solid var(--line);border-radius:999px;padding:4px 13px;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:14px;letter-spacing:0.04em;}
.news-tags a:hover{border-color:var(--yellow-dim);}
.news-share{display:flex;gap:10px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);padding-top:24px;}
.news-share > span{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;color:var(--ink-muted);margin-right:4px;}
.news-share .btn{padding:10px 18px;font-size:16px;}
button.btn{cursor:pointer;}
@media (max-width:600px){
  .news-article-head{padding:32px 0 88px;}
  .news-article-wrap{margin-top:-68px;}
  .news-score-main{gap:10px;}
}

/* ---------- Zona de socios y tienda (socios/, eu/bazkideak/) ---------- */
.soc-page{padding:0 0 80px;}
.soc-narrow{max-width:560px;padding-top:48px;}
.soc-wide{padding-top:40px;}
.soc-page h1{font-size:clamp(32px,4.5vw,46px);margin:0 0 12px;}
.soc-page h2{font-size:24px;margin:0 0 10px;}
.soc-lead{font-size:18px;color:var(--ink-muted);margin:0 0 24px;max-width:640px;}
.soc-hint{display:block;font-size:14px;color:var(--ink-muted);font-weight:400;}
.soc-flash{background:#fff3bf;border-left:4px solid var(--yellow);padding:12px 16px;margin:0 0 20px;font-weight:600;}
.soc-error{background:#fbe6e4;border-left:4px solid #b3261e;color:#7a1712;padding:12px 16px;margin:0 0 20px;}
.soc-error p{margin:0;}
.soc-form{display:flex;flex-direction:column;gap:16px;margin:0 0 20px;}
.soc-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;}
.soc-form input[type=email],.soc-form input[type=password],.soc-form input[type=text],.soc-form input[type=number],.soc-form input[type=date],.soc-form textarea,.soc-form select{
  font:inherit;font-weight:400;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);width:100%;}
.soc-form input:focus,.soc-form textarea:focus,.soc-form select:focus{outline:3px solid var(--yellow);outline-offset:1px;border-color:var(--ink);}
.soc-form .btn{align-self:flex-start;}
.soc-check{flex-direction:row!important;align-items:flex-start;gap:10px!important;font-weight:400!important;}
.soc-check input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--black);}
.soc-links{margin:0 0 32px;}
.soc-box{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px;margin:0 0 24px;}
.soc-box p:last-child{margin-bottom:0;}
.soc-box-wait{border-left:4px solid var(--yellow);}
.soc-bar{background:var(--black);}
.soc-bar-inner{display:flex;gap:4px;flex-wrap:wrap;align-items:center;padding-top:6px;padding-bottom:6px;}
.soc-bar a{color:var(--ink-inv-muted);text-decoration:none;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:8px 12px;border-radius:var(--radius);}
.soc-bar a[aria-current],.soc-bar a:hover{color:var(--yellow);}
.soc-bar-out{margin-left:auto;}
.soc-badge{display:inline-block;min-width:22px;padding:0 6px;border-radius:11px;background:var(--yellow);color:#111;text-align:center;font-size:14px;}
.soc-athletes ul{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-wrap:wrap;gap:10px;}
.soc-athletes li{background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px 14px;}
.soc-athletes li span{color:var(--ink-muted);font-size:14px;margin-left:6px;}
.soc-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:28px 0;}
.soc-card{background:var(--black);color:var(--ink-inv);text-decoration:none;border-radius:6px;padding:22px;border-bottom:4px solid var(--yellow);display:flex;flex-direction:column;gap:6px;transition:transform .15s;}
.soc-card:hover{transform:translateY(-2px);}
.soc-card strong{font-family:'Barlow Condensed',sans-serif;font-size:26px;text-transform:uppercase;color:var(--yellow);}
.soc-card span{color:var(--ink-inv-muted);font-size:15px;}
.soc-account summary{cursor:pointer;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:20px;}
.soc-account[open] summary{margin-bottom:14px;}
.soc-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px;}
.soc-product a{display:flex;flex-direction:column;gap:6px;text-decoration:none;color:inherit;}
.soc-product-img{display:block;aspect-ratio:1/1;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.soc-product-img img{width:100%;height:100%;object-fit:cover;transition:transform .25s;}
.soc-product a:hover img{transform:scale(1.03);}
.soc-product strong{font-family:'Barlow Condensed',sans-serif;font-size:21px;text-transform:uppercase;line-height:1.1;}
.soc-noimg{object-fit:contain!important;padding:22%;opacity:.35;filter:grayscale(1);}
.soc-price{font-weight:600;color:var(--yellow-dim);}
.soc-price-big{font-size:28px;font-family:'Barlow Condensed',sans-serif;font-weight:800;margin:0 0 14px;color:var(--ink);}
.soc-back{margin:0 0 16px;}
.soc-back a{color:var(--ink-muted);}
.soc-detail{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:start;}
.soc-detail-img{margin:0;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;aspect-ratio:1/1;}
.soc-detail-img img{width:100%;height:100%;object-fit:cover;}
.soc-thumbs{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap;}
.soc-thumbs button{padding:0;border:2px solid transparent;border-radius:4px;background:none;cursor:pointer;width:72px;height:72px;overflow:hidden;}
.soc-thumbs button[aria-current]{border-color:var(--yellow);}
.soc-thumbs img{width:100%;height:100%;object-fit:cover;}
.soc-desc{margin:0 0 20px;color:var(--ink-muted);}
.soc-buy fieldset{border:0;padding:0;margin:0;}
.soc-buy legend{font-weight:600;margin-bottom:8px;}
.soc-pack-note{margin:0;padding:10px 12px;background:var(--paper);border-left:4px solid var(--yellow);border-radius:4px;font-weight:600;}
.soc-buy fieldset.soc-pack-item{padding:12px 0 2px;border-top:1px solid var(--line);}
.soc-pack-item legend{float:left;width:100%;font-family:'Barlow Condensed',sans-serif;font-size:19px;text-transform:uppercase;}
.soc-pack-item .soc-choices{clear:both;}
.soc-pack-item .soc-choices + .soc-choices{margin-top:8px;}
.soc-choices{display:flex;flex-wrap:wrap;gap:8px;}
.soc-choices label{flex-direction:row;font-weight:600;}
.soc-choices input{position:absolute;opacity:0;width:1px;height:1px;}
.soc-choices span{display:inline-block;min-width:48px;text-align:center;padding:9px 14px;border:1.5px solid var(--line);border-radius:var(--radius);background:#fff;cursor:pointer;}
.soc-choices input:checked + span{background:var(--black);color:var(--yellow);border-color:var(--black);}
.soc-choices input:focus-visible + span{outline:3px solid var(--yellow);outline-offset:1px;}
.soc-qty input{max-width:110px;}
.soc-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:6px;margin:0 0 16px;}
.soc-table th,.soc-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;color:var(--ink);font-size:16px;}
.soc-table thead th{border-bottom:1px solid var(--line);letter-spacing:0;}
.soc-table thead th{font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;font-size:15px;color:var(--ink-muted);}
.soc-table tfoot th{font-size:18px;}
.soc-table .num{text-align:right;white-space:nowrap;}
.soc-qty-in{width:72px;padding:8px;border:1.5px solid var(--line);border-radius:var(--radius);font:inherit;}
.soc-link-btn{background:none;border:0;padding:0;font:inherit;color:#b3261e;text-decoration:underline;cursor:pointer;}
.soc-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.soc-confirm{max-width:640px;}
.soc-orders{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px;}
.soc-order{background:#fff;border:1px solid var(--line);border-left:4px solid var(--yellow);border-radius:6px;padding:16px 18px;}
.soc-order-anulado{opacity:.6;border-left-color:var(--line);}
.soc-order-entregado{border-left-color:#2f6b3a;}
.soc-order-head{display:flex;gap:12px;flex-wrap:wrap;align-items:baseline;}
.soc-order-head span{color:var(--ink-muted);font-size:15px;}
.soc-state{margin-left:auto;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;color:var(--ink)!important;}
.soc-order-lines{list-style:none;padding:0;margin:10px 0;}
.soc-order-lines li{display:flex;gap:8px;padding:4px 0;border-top:1px dashed var(--line);}
.soc-order-lines .num{margin-left:auto;}
.soc-order-foot{display:flex;gap:16px;align-items:center;flex-wrap:wrap;}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
@media (max-width:760px){
  .soc-detail{grid-template-columns:1fr;gap:20px;}
  .soc-table thead{display:none;}
  .soc-table tr{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:12px 14px;border-bottom:1px solid var(--line);}
  .soc-table td,.soc-table th{border:0;padding:0;}
  .soc-table td[data-label]:not([data-label=""])::before{content:attr(data-label) ": ";color:var(--ink-muted);font-size:14px;}
  .soc-table tfoot tr{grid-template-columns:1fr auto;}
  .soc-table tfoot th:empty{display:none;}
  .soc-bar-out{margin-left:0;}
}

.soc-tag{display:inline-block;align-self:flex-start;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.04em;padding:2px 8px;border-radius:3px;background:var(--yellow);color:#111;}
.soc-tag-off{background:#e4e1d6;color:var(--ink-muted);}
.soc-deadline{background:#fff3bf;padding:10px 14px;border-radius:4px;margin:0 0 16px;}
.soc-order-lines .soc-hint{display:inline;}
@media (max-width:760px){.soc-bar a{padding:6px 8px;font-size:15px;}}
/* Marco de las fotos de producto: tarjeta blanca con borde amarillo abajo */
.soc-product a{background:#fff;border:1px solid var(--line);border-bottom:4px solid var(--yellow);border-radius:8px;padding:10px 10px 14px;box-shadow:0 1px 2px rgba(16,16,18,.06);transition:box-shadow .2s,transform .2s;height:100%;}
.soc-product a:hover{box-shadow:0 10px 24px rgba(16,16,18,.12);transform:translateY(-2px);}
.soc-product-img{border:0;border-radius:5px;background:var(--paper);margin-bottom:6px;}
.soc-product strong,.soc-product .soc-price,.soc-product .soc-tag{margin-left:4px;}
.soc-detail-img{background:#fff;padding:12px;border-bottom:4px solid var(--yellow);border-radius:8px;box-shadow:0 1px 2px rgba(16,16,18,.06);}
.soc-detail-img img{border-radius:5px;background:var(--paper);}
.soc-thumbs button{background:#fff;padding:3px;border:2px solid var(--line);border-radius:6px;}
.soc-thumbs button img{border-radius:3px;}
/* Botón «Socios» a la derecha, fuera del menú (así el menú no crece) */
.nav-socios-btn{display:inline-flex;align-items:center;gap:7px;margin-left:22px;flex:none;
  font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:16px;text-transform:uppercase;letter-spacing:.04em;
  color:var(--yellow);border:1.5px solid var(--yellow);border-radius:999px;padding:6px 14px 6px 11px;
  transition:background .15s ease,color .15s ease;}
.nav-socios-btn:hover,.nav-socios-btn.active{background:var(--yellow);color:#111;}
/* Contacto: bloque «Dónde entrenamos» */
.contact-pools .card{display:flex;flex-direction:column;gap:6px;}
.contact-pools .facility-link{align-self:flex-start;margin-top:8px;}
.contact-pools-more{margin-top:18px;}
.contact-pools-more a{text-decoration:underline;text-underline-offset:3px;}
nav.links:has(+ .nav-socios-btn){margin-left:auto;}
.nav-inner:has(.nav-socios-btn){gap:24px;}
nav.links a{white-space:nowrap;}
.brand{flex:none;}
@media (max-width:1100px){.nav-socios-btn{margin-left:auto;margin-right:14px;}}
@media (max-width:420px){.nav-socios-btn{padding:7px;} .nav-socios-btn span{display:none;}}

/* Carnet de socio (Mi zona) */
.soc-carnets{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px;margin:6px 0 14px;}
.soc-carnet{position:relative;overflow:hidden;aspect-ratio:1.586/1;max-width:420px;border-radius:14px;padding:18px 20px;color:var(--ink-inv);
  background:radial-gradient(circle at 100% 0%,rgba(247,197,0,.28) 0%,rgba(247,197,0,0) 55%),linear-gradient(135deg,#1b1b1f 0%,#101012 70%);
  box-shadow:0 10px 28px rgba(16,16,18,.25);display:flex;flex-direction:column;justify-content:space-between;}
.soc-carnet::after{content:"";position:absolute;left:0;right:0;bottom:0;height:8px;background:var(--yellow);}
.soc-carnet-top{display:flex;align-items:center;gap:12px;}
.soc-carnet-top img{border-radius:50%;border:2px solid var(--yellow);background:#fff;}
.soc-carnet-top div{display:flex;flex-direction:column;line-height:1.05;}
.soc-carnet-top strong{font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;font-size:22px;color:var(--yellow);letter-spacing:.02em;}
.soc-carnet-top div span{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.14em;color:var(--ink-inv-muted);}
.soc-carnet-season{margin-left:auto;align-self:flex-start;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:14px;border:1px solid rgba(247,197,0,.6);color:var(--yellow);padding:2px 8px;border-radius:3px;}
.soc-carnet-no span{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:13px;letter-spacing:.14em;color:var(--ink-inv-muted);}
.soc-carnet-no strong{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:44px;letter-spacing:.12em;line-height:1;font-variant-numeric:tabular-nums;}
.soc-carnet-no em{font-style:normal;font-size:24px;letter-spacing:.04em;color:var(--ink-inv-muted);}
.soc-carnet-name{font-family:'Barlow Condensed',sans-serif;font-weight:700;text-transform:uppercase;font-size:20px;letter-spacing:.03em;padding-bottom:6px;display:flex;justify-content:space-between;gap:10px;align-items:baseline;}
@media (max-width:420px){.soc-carnets{grid-template-columns:1fr;}.soc-carnet-no strong{font-size:38px;}}
/* Lotería tras el sorteo: ajustes que tienen que ganar a los estilos generales de .lottery */
.lottery .lottery-win{border-bottom:none;}
.lottery .lottery-win h1{margin-left:auto;margin-right:auto;max-width:none;}
.lottery .lottery-win-how h2{color:var(--yellow);font-size:26px;margin:0 0 8px;}
.lottery .lottery-win.is-gordo{padding:0;background:radial-gradient(circle at 20% 20%,#fff3a6 0,transparent 35%),radial-gradient(circle at 80% 70%,#ffe066 0,transparent 40%),var(--yellow);}
.lottery .lottery-win.is-gordo .wrap{background:none;}

/* ---------- Eventos: Agenda en Actualidad (noticias/) y extras del bloque de la portada ---------- */
.news-hero.has-agenda{padding-bottom:34px;border-bottom:0;}
.news-hero .section-head:last-child{margin-bottom:0;}
.act-jump{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}
.act-jump a{font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:18px;text-transform:uppercase;letter-spacing:.04em;padding:9px 18px;border-radius:999px;border:1.5px solid var(--yellow);color:var(--yellow);}
.act-jump a.is-on,.act-jump a:hover{background:var(--yellow);color:#111;}
.act-jump a span{display:inline-block;background:#111;color:var(--yellow);border-radius:999px;padding:0 8px;margin-left:6px;font-size:15px;}
.agenda{background:#18181b;color:var(--ink-inv);padding:44px 0 52px;border-bottom:4px solid var(--yellow);}
.agenda-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;}
.agenda-head h2{color:var(--yellow);margin:0;font-size:clamp(30px,4vw,42px);}
.agenda-head a{color:var(--ink-inv);text-decoration:underline;text-underline-offset:3px;font-weight:600;white-space:nowrap;}
.agenda-empty{color:var(--ink-inv-muted);font-size:18px;}
.agenda-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start;}
.ev-card{background:#232327;border:1px solid #34343a;border-radius:10px;overflow:hidden;display:flex;flex-direction:column;}
.ev-card.is-feat{border-color:var(--yellow);}
.ev-card img{width:100%;height:150px;object-fit:cover;display:block;}
.ev-card-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:10px;flex:1;}
.ev-card-top{display:flex;gap:14px;align-items:flex-start;}
.ev-card-date{flex:none;background:var(--yellow);color:#111;border-radius:6px;text-align:center;font-family:'Barlow Condensed',sans-serif;font-weight:800;line-height:1;padding:6px 10px 7px;min-width:62px;}
.ev-card-date small{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;}
.ev-card-date b{display:block;font-size:30px;}
.ev-card-date i{font-style:normal;display:block;font-size:14px;text-transform:uppercase;}
.ev-card-tag{display:block;font-family:'Barlow Condensed',sans-serif;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--yellow);margin-bottom:2px;}
.ev-card h3{color:#fff;font-size:22px;margin:0;line-height:1.1;}
.ev-card-sub{color:var(--ink-inv-muted);font-size:15px;margin:0;}
.ev-card ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:15px;color:var(--ink-inv-muted);}
.ev-card ul b{color:#fff;font-weight:600;}
.ev-card-note{font-size:14px;color:#ffd633;margin:0;}
.ev-card .btn{align-self:flex-start;margin-top:auto;padding:10px 18px;font-size:16px;}
.ev-card.is-past .ev-card-date{background:#3a3a40;color:#fff;}
.agenda-row.is-light .ev-card{background:#fff;border-color:var(--line);}
.agenda-row.is-light .ev-card h3{color:var(--ink);}
.agenda-row.is-light .ev-card .btn-outline{color:var(--ink);border-color:var(--ink);}
.news-list-head{margin-bottom:22px;}
.news-filters.is-light{margin-bottom:26px;}
.news-filters.is-light a{color:var(--ink);border-color:var(--line);}
.news-filters.is-light a:hover{border-color:var(--ink);}
.news-filters.is-light a.is-on{background:var(--ink);border-color:var(--ink);color:#fff;}
@media (max-width:900px){
  .agenda-row:not(.is-all){display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-bottom:6px;}
  .agenda-row:not(.is-all) .ev-card{flex:0 0 82%;scroll-snap-align:start;}
  .agenda-row.is-all{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){.agenda-row.is-all{grid-template-columns:1fr;} .agenda-head{flex-direction:column;align-items:flex-start;}}
/* Bloque de la portada con foto (opcional): la foto de fondo, oscurecida para que se lea el texto */
.topaketa.has-photo{background:linear-gradient(90deg,rgba(10,10,12,.94) 0%,rgba(10,10,12,.82) 55%,rgba(10,10,12,.6) 100%),var(--ev-photo) center/cover no-repeat,var(--black);}
.topaketa-note{color:#ffd633;font-size:15px;margin:4px 0 0;}
.topaketa-date.is-range .day{font-size:56px;white-space:nowrap;}
@media (max-width:820px){.topaketa-date.is-range .day{font-size:40px;}}

/* Galería de socios (fotos de Drive) */
.gal{padding:28px max(16px,env(safe-area-inset-right,0px)) 56px max(16px,env(safe-area-inset-left,0px));}
@media (min-width:900px){.gal{padding:36px 32px 64px;}}
.gal-crumbs{font-size:15px;color:var(--muted,#666);margin-bottom:10px;}
.gal-crumbs a{color:inherit;}
.gal-head{margin-bottom:18px;}
.gal-head h1{margin:0;}
.gal-meta{margin:4px 0 0;color:var(--muted,#666);}
.gal-albums{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;list-style:none;margin:0 0 28px;padding:0;}
.gal-albums a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;background:#fff;border-radius:8px;overflow:hidden;border-bottom:4px solid var(--yellow);box-shadow:0 1px 2px rgba(16,16,18,.06);transition:box-shadow .2s,transform .2s;}
.gal-albums a:hover{box-shadow:0 10px 24px rgba(16,16,18,.12);transform:translateY(-2px);}
.gal-albums img,.gal-folder{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;}
.gal-folder{display:flex;align-items:center;justify-content:center;background:#fff;border-bottom:1px solid #eee;}
.gal-folder path{fill:var(--yellow);}
.gal-card-txt{display:block;padding:10px 12px 12px;}
.gal-card-txt strong{display:block;font-family:'Barlow Condensed',sans-serif;font-size:20px;text-transform:uppercase;line-height:1.1;}
.gal-card-txt em{font-style:normal;color:#666;font-size:14px;}
.gal-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:4px;}
@media (min-width:900px){.gal-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:6px;}}
.gal-grid button{padding:0;border:0;background:#ddd;cursor:zoom-in;aspect-ratio:1;overflow:hidden;display:block;}
.gal-grid img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s;}
.gal-grid button:hover img{transform:scale(1.04);}
.gal-grid button:focus-visible{outline:3px solid var(--yellow);outline-offset:2px;}
.gal-box{position:fixed;inset:0;z-index:2000;background:#0b0b0d;display:flex;align-items:center;justify-content:center;}
.gal-box[hidden]{display:none;}
.gal-box img{max-width:94vw;max-height:84vh;object-fit:contain;}
.gal-bt{position:absolute;background:rgba(0,0,0,.35);border:0;color:#fff;font-size:40px;line-height:1;width:52px;height:52px;border-radius:50%;cursor:pointer;}
.gal-bt:focus-visible{outline:3px solid var(--yellow);}
.gal-prev{left:max(10px,env(safe-area-inset-left,0px));top:50%;transform:translateY(-50%);}
.gal-next{right:max(10px,env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);}
.gal-x{top:calc(10px + env(safe-area-inset-top,0px));right:max(10px,env(safe-area-inset-right,0px));font-size:32px;}
.gal-bar{position:absolute;left:0;right:0;bottom:calc(14px + env(safe-area-inset-bottom,0px));display:flex;justify-content:center;gap:18px;color:#ddd;font-size:15px;}
.gal-bar a{color:var(--yellow);}
@media (prefers-reduced-motion:reduce){.gal-albums a,.gal-grid img{transition:none;}}
@media (min-width:700px){.gal-albums{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;}}
@media (max-width:480px){.gal-card-txt strong{font-size:17px;}.gal-folder svg{width:52px;height:39px;}}

/* «Quiero probar» (probar.php): usa los estilos de los formularios de socios (.soc-form) */
.probar-page{padding-bottom:64px;}
.probar-page .kicker{display:block;margin-top:8px;}
.probar-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.probar-quien{border:0;padding:0;margin:0;display:flex;gap:20px;flex-wrap:wrap;}
.probar-quien legend{font-weight:600;margin-bottom:8px;width:100%;}
.probar-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:end;}
@media(max-width:560px){.probar-row{grid-template-columns:1fr;}}
.probar-form .soc-error ul{margin:6px 0 0;padding-left:20px;}
.probar-form [hidden]{display:none!important;}
/* Formulario único (includes/formulario.php): el motivo arriba, en lista */
.form-motivo{flex-direction:column;gap:10px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;}
.form-motivo legend{font-size:18px;padding:0 6px;margin-left:-6px;width:auto;}
.form-fields,.form-dep{display:flex;flex-direction:column;gap:16px;}
.form-hint-probar{margin-top:-8px;}
.contact-form-sec .section-head{text-align:left;margin-bottom:24px;}
.contact-form-sec .soc-narrow{padding-top:0;}

/* Portada: franja «Esta semana en el club» (includes/semana.php) */
.wk{padding:64px 0;background:var(--paper);}
.wk-head{margin-bottom:22px;}
.wk-head h2{font-size:clamp(28px,4vw,40px);}
.wk-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px;}
.wk-grid.wk-n2{grid-template-columns:1fr 1fr;}
.wk-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:10px;color:var(--ink);text-decoration:none;}
.wk-card .wk-more{margin-top:auto;}
a.wk-card{transition:transform .15s ease,border-color .15s ease;}
a.wk-card:hover{transform:translateY(-3px);border-color:var(--yellow-dim);}
.wk-k{font:700 12px 'Barlow Condensed',sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--yellow-dim);}
.wk-match{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;padding:12px 0;border-top:1px solid var(--line);}
.wk-k + .wk-match{border-top:0;padding-top:4px;}
.wk-when{font:800 15px 'Barlow Condensed',sans-serif;text-transform:uppercase;line-height:1.1;text-align:center;background:var(--black);color:var(--yellow);border-radius:6px;padding:6px 8px;min-width:58px;align-self:start;}
.wk-when b{display:block;font-size:24px;color:#fff;}
.wk-cat{font:700 12px 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.08em;color:var(--ink-muted);}
.wk-vs{font-weight:600;line-height:1.25;}
.wk-where{font-size:13px;color:var(--ink-muted);}
.wk-home{display:inline-block;background:var(--yellow);color:#111;font:800 11px 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.06em;padding:1px 6px;border-radius:3px;margin-left:4px;vertical-align:1px;}
.wk-more{font:800 14px 'Barlow Condensed',sans-serif;text-transform:uppercase;letter-spacing:.06em;color:var(--ink);text-decoration:underline;text-underline-offset:3px;}
.wk-news img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:6px;background:var(--black);}
.wk-news h3{font:700 20px/1.15 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:4px 0 0;}
.wk-news p{font-size:14px;color:var(--ink-muted);}
.wk-try{background:var(--yellow);border-color:var(--yellow);}
.wk-try h3{font:800 28px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;}
.wk-try p{font-size:15px;}
.wk-try .btn{background:#111;color:var(--yellow);border-color:#111;align-self:flex-start;margin-top:auto;}
.wk-try .btn:hover{background:#000;color:#fff;}
.wk-try .wk-k{color:#111;}
@media(max-width:860px){.wk-grid,.wk-grid.wk-n2{grid-template-columns:1fr;}.wk{padding:44px 0;}}

/* ---------- Menú: desplegable «Club» ---------- */
.nav-group{position:relative;display:flex;align-items:center;}
.nav-group-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:0;border-bottom:2px solid transparent;cursor:pointer;
  font-family:'Barlow Condensed',sans-serif;font-weight:600;font-size:16px;text-transform:uppercase;letter-spacing:0.04em;
  color:var(--ink-inv-muted);padding:6px 2px;transition:color .15s ease,border-color .15s ease;}
.nav-group-btn svg{transition:transform .15s ease;}
.nav-group-btn:hover,.nav-group.active .nav-group-btn,.nav-group.open .nav-group-btn{color:var(--yellow);}
.nav-group.active .nav-group-btn{border-color:var(--yellow);}
.nav-group.open .nav-group-btn svg{transform:rotate(180deg);}
.nav-sub{display:none;position:absolute;top:calc(100% + 14px);left:-18px;min-width:230px;background:var(--black-2);border:1px solid var(--line-dark);
  border-top:3px solid var(--yellow);border-radius:0 0 var(--radius) var(--radius);padding:8px 0;box-shadow:0 14px 30px rgba(0,0,0,.45);z-index:200;}
.nav-group.open .nav-sub{display:flex;flex-direction:column;}
nav.links .nav-sub a{padding:10px 18px;border-bottom:0;white-space:nowrap;}
nav.links .nav-sub a:hover,nav.links .nav-sub a.active{background:var(--black-3);}
@media (max-width:1100px){
  .nav-group{flex-direction:column;align-items:stretch;width:100%;}
  .nav-group-btn{justify-content:space-between;width:100%;padding:16px 0;border-bottom:1px solid var(--line-dark);text-align:left;}
  .nav-group.active .nav-group-btn{border-color:var(--line-dark);}
  .nav-sub{position:static;box-shadow:none;border:0;border-left:3px solid var(--yellow);border-radius:0;background:none;padding:0 0 0 14px;min-width:0;}
  nav.links .nav-sub a{padding:13px 0;border-bottom:1px solid var(--line-dark);}
  nav.links .nav-sub a:hover{background:none;}
}

/* ---------- Pie en columnas ---------- */
footer{padding:56px 0 0;}
.footer-cols{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;padding-bottom:40px;}
.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px;}
.footer-logo{display:flex;align-items:center;gap:12px;color:var(--yellow);font-family:'Barlow Condensed',sans-serif;font-weight:800;text-transform:uppercase;font-size:22px;line-height:1;}
.footer-logo img{height:44px;width:44px;border-radius:50%;}
.footer-logo small{display:block;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--ink-inv-muted);margin-top:4px;}
.footer-address{margin:0;color:var(--ink-inv-muted);font-size:14px;line-height:1.5;}
.footer-insta{display:inline-flex;align-items:center;gap:8px;color:var(--ink-inv-muted);font-size:15px;}
.footer-insta:hover{color:var(--yellow);}
.footer-col h2{font-family:'Barlow Condensed',sans-serif;font-size:15px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--yellow);margin:0 0 14px;}
.footer-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.footer-col a{color:var(--ink-inv-muted);font-size:15px;}
.footer-col a:hover{color:var(--yellow);}
.footer-pdf{font-size:10px;font-weight:700;letter-spacing:.06em;border:1px solid var(--line-dark);border-radius:3px;padding:0 4px;margin-left:4px;vertical-align:2px;}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;padding-top:18px;padding-bottom:22px;border-top:1px solid var(--line-dark);color:var(--ink-inv-muted);font-size:13px;}
.footer-bottom .footer-legal{margin:0;font-size:13px;}
@media (max-width:900px){.footer-cols{grid-template-columns:1fr 1fr;gap:32px 24px;}.footer-brand{grid-column:1 / -1;}}
@media (max-width:480px){.footer-cols{gap:28px 16px;}.footer-col a{font-size:14px;}.footer-bottom{flex-direction:column;}}
/* Zona de socios: tarjeta de protección del menor */
.soc-menor{border-left:4px solid var(--yellow);}
.soc-menor h2{margin:0 0 10px;}
.soc-menor p{margin:0 0 12px;}
.soc-menor-who{font-size:15px;color:var(--ink-muted,#555);}
.soc-menor-who strong{font-size:19px;color:var(--ink,#111);}
.soc-menor-mail a{word-break:break-all;font-weight:600;}

/* ---------- Tienda pública (catálogo, se pide por Contacto) ---------- */
.shop-page section{padding-top:56px;}
.soc-preview{background:var(--yellow);color:#111;padding:8px 14px;border-radius:var(--radius);font-weight:600;margin:0 0 18px;}
.shop-grid{list-style:none;margin:32px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px;}
.shop-item{background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;}
.shop-img{display:block;aspect-ratio:1/1;background:#fff;border-bottom:1px solid var(--line);}
.shop-img img{width:100%;height:100%;object-fit:contain;}
.shop-img .shop-noimg{object-fit:scale-down;opacity:.5;}
.shop-body{padding:18px 18px 20px;display:flex;flex-direction:column;gap:8px;flex:1;}
.shop-body h2{font-size:22px;margin:0;}
.shop-price{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:26px;margin:0;color:var(--ink);}
.shop-desc{margin:0;color:var(--ink-muted);font-size:15px;}
.shop-opts{margin:0;font-size:14px;color:var(--ink-muted);}
.shop-opts span{font-weight:600;color:var(--ink);}
.shop-want{margin-top:auto;align-self:flex-start;}
.shop-bar{position:sticky;bottom:0;z-index:20;margin:28px 0 0;padding:14px 18px calc(14px + env(safe-area-inset-bottom,0px));background:var(--ink);color:#fff;border-radius:6px 6px 0 0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;box-shadow:0 -6px 20px rgba(0,0,0,.15);}
.shop-bar[hidden]{display:none;}
.shop-bar p{margin:0;min-width:0;}
.shop-bar-names{color:rgba(255,255,255,.75);}
.shop-bar-actions{display:flex;gap:10px;flex-wrap:wrap;}
.shop-bar .btn-outline{color:#fff;border-color:rgba(255,255,255,.6);background:transparent;}
.shop-empty{margin:28px 0;color:var(--ink-muted);font-size:18px;}
.shop-info{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:44px 0 0;}
.shop-info > div{background:#fff;border:1px solid var(--line);border-radius:6px;padding:22px;}
.shop-info h2{font-size:22px;margin:0 0 8px;}
.shop-info p{margin:0 0 14px;color:var(--ink-muted);}
.shop-members{border-left:4px solid var(--yellow) !important;}
@media (max-width:760px){.shop-info{grid-template-columns:1fr;}}

/* Zona de socios → Actividades */
.act-list{display:flex;flex-direction:column;gap:20px;margin:24px 0 8px;}
.act-card{display:grid;grid-template-columns:104px minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden;}
.act-date{background:var(--black);color:var(--ink-inv);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:22px 6px 14px;font-family:'Barlow Condensed',sans-serif;text-transform:uppercase;text-align:center;}
.act-date span{font-size:14px;color:var(--ink-inv-muted);font-weight:600;}
.act-date b{font-size:46px;line-height:1;color:var(--yellow);font-weight:800;}
.act-date i{font-style:normal;font-weight:700;letter-spacing:.06em;}
.act-body{padding:18px 20px;display:flex;flex-direction:column;gap:12px;min-width:0;}
.act-head{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;justify-content:space-between;}
.act-head h2{margin:0;font-size:26px;}
.act-state{font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;background:#eceae2;color:var(--ink-muted);white-space:nowrap;}
.act-state.act-abierta{background:#fbefd9;color:#8a4d00;}
.act-sub{margin:0;color:var(--ink-muted);}
.act-meta{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 18px;font-size:15px;color:var(--ink-muted);}
.act-meta b{color:var(--ink);}
.act-note{margin:0;background:#fff8d6;border:1px solid #efe1a0;border-radius:4px;padding:8px 12px;font-size:15px;}
.act-count p{margin:0 0 6px;font-size:15px;}
.act-meter{height:8px;border-radius:999px;background:#eceae2;overflow:hidden;}
.act-meter i{display:block;height:100%;background:#2f6b3a;}
.act-names{margin-top:6px;font-size:15px;}
.act-names summary{cursor:pointer;font-weight:600;}
.act-names p{margin:6px 0 0;color:var(--ink-muted);}
.act-who{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:12px;}
.act-kid{background:#faf9f5;border:1px solid var(--line);border-radius:6px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;}
.act-kid-top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between;}
.act-kid-name{font-weight:600;}
.act-kid-name small{color:var(--ink-muted);font-weight:400;margin-left:4px;}
.act-pill{font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap;background:#eceae2;color:var(--ink-muted);}
.act-pill-apuntado{background:#e5f0e4;color:#2f6b3a;}
.act-pill-espera{background:#fbefd9;color:#8a4d00;}
.act-kid-sum{margin:0;font-size:14px;color:var(--ink-muted);}
.act-kid-actions{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:flex-start;}
.act-form{flex:0 1 auto;}
.act-form[open]{flex-basis:100%;order:2;}
.act-kid-actions{align-items:center;}
.act-kid-actions .btn{padding:8px 16px;font-size:16px;}
.act-form > summary{list-style:none;display:inline-block;cursor:pointer;}
.act-form > summary::-webkit-details-marker{display:none;}
.act-form[open] > summary{margin-bottom:10px;}
.act-fields{border:2px solid var(--yellow);border-radius:6px;padding:14px;background:#fffdf3;}
.act-two{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.act-q{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:6px 18px;}
.act-q legend{font-weight:600;margin-bottom:6px;width:100%;}
@media (max-width:560px){.act-card{grid-template-columns:1fr;}.act-date{flex-direction:row;gap:10px;justify-content:flex-start;padding:8px 16px;}.act-date b{font-size:30px;}.act-body{padding:14px;}}

/* Patrocinadores en el pie (includes/patrocinadores.php): solo sale si hay alguno activo */
.sponsors{padding:0 0 40px;margin-bottom:40px;border-bottom:1px solid var(--line-dark);}
.sponsors h2{margin:0 0 18px;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-inv-muted);font-weight:600;}
.sponsors ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:14px;}
.sponsor a,.sponsor span{display:flex;align-items:center;justify-content:center;width:150px;height:76px;padding:12px 16px;background:#fff;border-radius:var(--radius);transition:transform .2s;}
.sponsor.is-main a,.sponsor.is-main span{width:210px;height:96px;}
.sponsor img{max-width:100%;max-height:100%;object-fit:contain;transition:filter .25s,opacity .25s;}
.sponsor a:hover,.sponsor a:focus-visible{transform:translateY(-2px);}
.sponsors.is-grey .sponsor img{filter:grayscale(1);opacity:.75;}
.sponsors.is-grey .sponsor a:hover img,.sponsors.is-grey .sponsor a:focus-visible img{filter:none;opacity:1;}
.sponsors.is-loop .sponsors-track{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.sponsors.is-loop ul{flex-wrap:nowrap;width:max-content;animation:sponsors-run calc(var(--n) * 4s) linear infinite;}
.sponsors.is-loop .sponsors-track:hover ul,.sponsors.is-loop .sponsors-track:focus-within ul{animation-play-state:paused;}
@keyframes sponsors-run{to{transform:translateX(calc(-50% - 7px));}}
@media (prefers-reduced-motion:reduce){.sponsors.is-loop ul{animation:none;flex-wrap:wrap;width:auto;}.sponsors.is-loop .sponsor[aria-hidden]{display:none;}.sponsors.is-loop .sponsors-track{-webkit-mask-image:none;mask-image:none;}}
@media (max-width:480px){.sponsor a,.sponsor span{width:120px;height:62px;padding:10px 12px;}.sponsor.is-main a,.sponsor.is-main span{width:160px;height:78px;}}

/* Solicitud de baja (zona de socios → Mi cuenta): discreta, con tono triste */
.soc-baja-link{margin:18px 0 0;font-size:13px;}
.soc-baja-link a{color:var(--ink-muted);}
.soc-baja-sad{font-size:56px;line-height:1;margin:8px 0 6px;filter:grayscale(.2);}
.soc-baja-note{border-left:4px solid var(--yellow);}
.soc-baja-note p{margin:0 0 8px;}
.soc-baja-note p:last-child{margin:0;}
.soc-baja-form fieldset{border:0;padding:0;margin:0;display:grid;gap:8px;}
.soc-baja-form legend{font-weight:600;margin-bottom:6px;}
.soc-name-form{margin:0 0 18px;padding-bottom:18px;border-bottom:1px solid var(--line);}
