/* ══════════════════════════════════════════════════════════
   MUSEO DIGITAL · ESTHER MARISOL
   discografia.css · © 2026 E.A.S.M
══════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400;1,600&family=Cinzel:wght@400;600;700&family=IM+Fell+English:ital@0;1&display=swap');

:root{
  --arena:#D7CCC8;--marron:#4E342E;--terracota:#A0522D;
  --ocre:#C19A6B;--blanco:#FFFDF8;--tinta:#1C1008;
  --marron-deep:#160D06;--ocre-light:#DDB97A;
  --ocre-dim:rgba(193,154,107,.2);--arena-dim:rgba(215,204,200,.55);
  --yt:#FF0000;
  --serif:'Cormorant Garamond',Georgia,serif;
  --cinzel:'Cinzel',serif;--fell:'IM Fell English',serif;
  --ease:cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;}
body{font-family:var(--serif);background:var(--marron-deep);color:var(--arena);overflow-x:hidden;user-select:none;-webkit-user-select:none;}
img{display:block;max-width:100%;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");pointer-events:none;z-index:9999;mix-blend-mode:overlay;}

/* ── AUDIO ── */
.audio-control{position:fixed;bottom:2rem;right:2rem;z-index:1000;}
.audio-btn{width:52px;height:52px;border-radius:50%;background:rgba(28,16,8,.85);border:1.5px solid var(--ocre);color:var(--ocre-light);display:flex;align-items:center;justify-content:center;cursor:pointer;backdrop-filter:blur(12px);box-shadow:0 4px 28px rgba(0,0,0,.6);transition:border-color .3s,transform .3s,box-shadow .3s;position:relative;overflow:hidden;}
.audio-btn:hover{border-color:var(--ocre-light);transform:scale(1.08);}
.audio-btn.playing{animation:audioPulse 2s ease-in-out infinite;}
@keyframes audioPulse{0%,100%{box-shadow:0 4px 28px rgba(0,0,0,.6),0 0 0 0 rgba(193,154,107,.3);}50%{box-shadow:0 4px 28px rgba(0,0,0,.6),0 0 0 10px rgba(193,154,107,.0);}}
.audio-icon{font-size:1.1rem;position:relative;z-index:1;}
.audio-waves{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:2px;opacity:0;transition:opacity .3s;}
.audio-btn.playing .audio-icon{opacity:0;}
.audio-btn.playing .audio-waves{opacity:1;}
.audio-waves span{display:block;width:3px;background:var(--ocre-light);border-radius:2px;animation:wave 1.1s ease-in-out infinite;}
.audio-waves span:nth-child(1){height:8px;animation-delay:0s;}
.audio-waves span:nth-child(2){height:16px;animation-delay:.15s;}
.audio-waves span:nth-child(3){height:10px;animation-delay:.3s;}
.audio-waves span:nth-child(4){height:14px;animation-delay:.45s;}
@keyframes wave{0%,100%{transform:scaleY(.4);}50%{transform:scaleY(1);}}

/* ── NAV ── */
#navbar{position:fixed;top:0;left:0;right:0;z-index:500;border-bottom:1px solid transparent;transition:background .5s,border-color .5s;}
#navbar.scrolled{background:rgba(16,8,3,.94);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-bottom-color:rgba(193,154,107,.14);}
.nav-inner{max-width:1440px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;transition:padding .4s;}
#navbar.scrolled .nav-inner{padding:.7rem 2rem;}
.nav-logo{display:flex;align-items:center;gap:.75rem;flex-shrink:0;}
.nav-logo img{height:40px;width:40px;object-fit:contain;border-radius:50%;border:1px solid rgba(193,154,107,.3);transition:border-color .3s;}
.nav-logo:hover img{border-color:var(--ocre);}
.nav-logo-text{font-family:var(--cinzel);font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ocre-light);line-height:1.4;}
.nav-logo-text span{display:block;font-size:.48rem;color:rgba(215,204,200,.45);letter-spacing:.28em;}
.nav-links{display:flex;align-items:center;gap:1.4rem;}
.nav-links a{font-family:var(--cinzel);font-size:.54rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(215,204,200,.5);position:relative;padding-bottom:3px;transition:color .3s;white-space:nowrap;}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--ocre);transition:width .35s var(--ease);}
.nav-links a:hover,.nav-links a.active{color:var(--ocre-light);}
.nav-links a:hover::after,.nav-links a.active::after{width:100%;}
.nav-ham{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:5px;}
.nav-ham span{display:block;width:24px;height:1.5px;background:var(--ocre-light);transition:transform .35s var(--ease),opacity .35s,width .35s;}
.nav-ham.open span:nth-child(1){transform:rotate(45deg) translate(4.8px,4.8px);}
.nav-ham.open span:nth-child(2){opacity:0;width:0;}
.nav-ham.open span:nth-child(3){transform:rotate(-45deg) translate(4.8px,-4.8px);}
.nav-overlay{position:fixed;inset:0;z-index:800;background:var(--marron-deep);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6rem;opacity:0;pointer-events:none;transition:opacity .45s var(--ease);}
.nav-overlay.open{opacity:1;pointer-events:all;}
.nav-overlay-close{position:absolute;top:1.5rem;right:1.8rem;background:none;border:none;color:var(--ocre);font-size:1.8rem;cursor:pointer;transition:transform .3s,color .3s;}
.nav-overlay-close:hover{transform:rotate(90deg);color:var(--ocre-light);}
.nav-overlay-logo img{height:64px;width:64px;object-fit:contain;border-radius:50%;border:1px solid var(--ocre-dim);margin-bottom:.5rem;}
.nav-overlay-links{display:flex;flex-direction:column;align-items:center;gap:1rem;}
.nav-overlay-links a{font-family:var(--fell);font-style:italic;font-size:clamp(1.4rem,4.5vw,2rem);color:rgba(215,204,200,.8);transition:color .3s,transform .3s;}
.nav-overlay-links a:hover{color:var(--ocre);transform:translateX(6px);}
.nav-overlay-sign{font-family:var(--fell);font-style:italic;font-size:1.2rem;color:rgba(193,154,107,.3);letter-spacing:.2em;margin-top:.5rem;}

/* ── HERO ── */
.page-hero{position:relative;min-height:65vh;display:flex;align-items:flex-end;padding:0 2rem 5rem;overflow:hidden;}
.page-hero-bg{position:absolute;inset:0;background:linear-gradient(170deg,rgba(22,13,6,.08) 0%,rgba(22,13,6,.68) 55%,rgba(22,13,6,.98) 100%),url('../img/festi1.jpg') center/cover no-repeat;animation:heroBgZoom 20s ease-in-out infinite alternate;}
@keyframes heroBgZoom{from{transform:scale(1.04);}to{transform:scale(1.0);}}
.page-hero-content{position:relative;z-index:2;max-width:1300px;margin:0 auto;width:100%;}
.breadcrumb{display:flex;align-items:center;gap:.6rem;font-family:var(--cinzel);font-size:.5rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(193,154,107,.45);margin-bottom:1.4rem;}
.breadcrumb a{transition:color .3s;}
.breadcrumb a:hover{color:var(--ocre);}
.sep-icon{font-size:.4rem;}
.page-hero-tag{font-family:var(--cinzel);font-size:.58rem;letter-spacing:.45em;text-transform:uppercase;color:var(--ocre);margin-bottom:1rem;display:flex;align-items:center;gap:.9rem;}
.page-hero-tag::before{content:'';display:block;width:28px;height:1px;background:var(--ocre);}
.page-hero-title{font-family:var(--fell);font-style:italic;font-size:clamp(3rem,9vw,7.5rem);color:var(--blanco);line-height:.9;margin-bottom:1rem;text-shadow:0 6px 50px rgba(0,0,0,.5);}
.page-hero-title em{font-style:normal;font-family:var(--cinzel);font-size:.32em;letter-spacing:.3em;color:var(--ocre-light);display:block;margin-top:.2em;}
.page-hero-sub{font-family:var(--serif);font-weight:300;font-size:clamp(.85rem,2vw,1rem);color:var(--arena-dim);letter-spacing:.1em;text-transform:uppercase;display:flex;align-items:center;gap:.6rem;}
.page-hero-sub i{color:var(--ocre);}
.page-hero-stats{position:absolute;right:2rem;bottom:5rem;z-index:2;display:flex;flex-direction:column;background:rgba(16,8,3,.7);border:1px solid rgba(193,154,107,.15);backdrop-filter:blur(12px);}
.phs-item{padding:.9rem 1.8rem;text-align:center;}
.phs-num{display:block;font-family:var(--fell);font-style:italic;font-size:1.9rem;color:var(--ocre);line-height:1;}
.phs-label{display:block;font-family:var(--cinzel);font-size:.44rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(215,204,200,.38);margin-top:.2rem;}
.phs-sep{height:1px;background:rgba(193,154,107,.12);margin:0 1rem;}

/* ── FILTRO DÉCADAS ── */
.filter-band{background:rgba(0,0,0,.2);border-top:1px solid rgba(193,154,107,.08);border-bottom:1px solid rgba(193,154,107,.08);padding:1.2rem 2rem;}
.filter-inner{max-width:1300px;margin:0 auto;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:center;}
.filter-btn{font-family:var(--cinzel);font-size:.52rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(215,204,200,.4);background:none;border:1px solid rgba(193,154,107,.12);padding:.55rem 1.3rem;cursor:pointer;transition:all .3s var(--ease);}
.filter-btn:hover{color:var(--ocre);border-color:rgba(193,154,107,.35);}
.filter-btn.active{color:var(--tinta);background:var(--ocre);border-color:var(--ocre);}

/* ── SECCIONES COMUNES ── */
.section-header{text-align:center;margin-bottom:3.5rem;}
.section-tag{font-family:var(--cinzel);font-size:.56rem;letter-spacing:.4em;text-transform:uppercase;color:var(--ocre);margin-bottom:1rem;display:flex;align-items:center;justify-content:center;gap:.8rem;}
.section-tag::before{content:'';display:block;width:22px;height:1px;background:var(--ocre);}
.section-tag::after{content:'';display:block;width:22px;height:1px;background:var(--ocre);}
.section-title{font-family:var(--fell);font-style:italic;font-size:clamp(2rem,4.5vw,3.4rem);color:var(--blanco);line-height:1.05;}
.section-title em{font-style:normal;color:var(--ocre-light);}
.section-sub{font-family:var(--cinzel);font-size:.54rem;letter-spacing:.25em;text-transform:uppercase;color:rgba(215,204,200,.35);margin-top:.8rem;}

/* ── ÁLBUMES GRID ── */
.albums-section{padding:5rem 2rem 6rem;max-width:1400px;margin:0 auto;}

.albums-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1px;
  background:rgba(193,154,107,.08);
  border:1px solid rgba(193,154,107,.08);
}

.album-card{
  position:relative;overflow:hidden;
  background:rgba(26,16,8,.8);
  display:flex;flex-direction:column;
  transition:background .4s var(--ease);
  cursor:default;
}
.album-card:hover{background:rgba(42,26,14,.95);}
.album-card.hidden{display:none;}

/* Imagen — misma altura en todos */
.album-img-wrap{
  position:relative;
  width:100%;
  height:220px;
  overflow:hidden;flex-shrink:0;
}
.album-img-wrap img{
  width:100%;height:100%;
  object-fit:cover;object-position:center;
  filter:sepia(18%) contrast(1.06) brightness(.82);
  transition:transform .7s var(--ease),filter .7s;
}
.album-card:hover .album-img-wrap img{transform:scale(1.07);filter:sepia(5%) contrast(1.08) brightness(.96);}

/* Overlay sobre imagen */
.album-img-overlay{
  position:absolute;inset:0;
  background:linear-gradient(to top,rgba(22,13,6,.9) 0%,transparent 50%);
  display:flex;justify-content:space-between;align-items:flex-start;
  padding:.8rem 1rem;
  opacity:0;transition:opacity .4s;
}
.album-card:hover .album-img-overlay{opacity:1;}
.album-overlay-year{font-family:var(--cinzel);font-size:.46rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(193,154,107,.7);background:rgba(22,13,6,.65);padding:.25rem .6rem;border:1px solid rgba(193,154,107,.2);}
.album-overlay-listen{font-size:1.3rem;color:var(--ocre-light);text-shadow:0 2px 10px rgba(0,0,0,.7);}

/* Cuerpo tarjeta */
.album-body{padding:1.4rem 1.6rem 1.8rem;display:flex;flex-direction:column;flex:1;}
.album-num{font-family:var(--cinzel);font-size:.44rem;letter-spacing:.4em;text-transform:uppercase;color:rgba(193,154,107,.28);margin-bottom:.5rem;}
.album-title{font-family:var(--fell);font-style:italic;font-size:clamp(1.1rem,1.8vw,1.4rem);color:var(--blanco);line-height:1.15;margin-bottom:.5rem;}
.album-year-badge{display:inline-block;font-family:var(--cinzel);font-size:.46rem;letter-spacing:.22em;color:var(--ocre);background:rgba(193,154,107,.1);border:1px solid rgba(193,154,107,.2);padding:.2rem .65rem;margin-bottom:.8rem;}
.album-desc{font-family:var(--serif);font-size:.88rem;font-weight:300;color:rgba(215,204,200,.52);line-height:1.75;flex:1;}
.album-tag{margin-top:1rem;font-family:var(--cinzel);font-size:.46rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(193,154,107,.4);display:flex;align-items:center;gap:.4rem;border-top:1px solid rgba(193,154,107,.08);padding-top:.8rem;}
.album-tag i{color:var(--ocre);font-size:.6rem;}
.album-tag-special{color:var(--ocre);}

/* Barra animada */
.album-bar{position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--ocre),transparent);transform:scaleX(0);transition:transform .5s var(--ease);transform-origin:left;}
.album-card:hover .album-bar{transform:scaleX(1);}

/* Badge edición especial */
.album-featured-badge{
  position:absolute;top:1rem;right:0;
  font-family:var(--cinzel);font-size:.44rem;letter-spacing:.2em;text-transform:uppercase;
  color:var(--tinta);background:var(--ocre);
  padding:.3rem .9rem .3rem .7rem;
  clip-path:polygon(8px 0%,100% 0%,100% 100%,0% 100%);
}

/* ── ORNAMENTO ── */
.ornament{display:flex;align-items:center;gap:1.2rem;padding:0 2rem;max-width:1300px;margin:0 auto;padding-top:1rem;padding-bottom:1rem;}
.ornament-line{flex:1;height:1px;background:linear-gradient(to right,transparent,rgba(193,154,107,.18),transparent);}
.ornament-icon{font-size:.85rem;color:rgba(193,154,107,.35);width:38px;height:38px;border-radius:50%;border:1px solid rgba(193,154,107,.14);display:flex;align-items:center;justify-content:center;flex-shrink:0;}

/* ── SECCIÓN VIDEOCLIPS ── */
.video-section{
  padding:4rem 2rem 5rem;
  background:rgba(0,0,0,.18);
  border-top:1px solid rgba(193,154,107,.06);
}

/* Carrusel de videos */
.video-carousel-wrap{
  position:relative;
  overflow:hidden;
  padding:0 3rem;
  margin-top:2.5rem;
}

.video-carousel{
  display:flex;gap:1.2rem;
  transition:transform .5s var(--ease);
}

/* Tarjeta de video — todas igual */
.video-card{
  flex:0 0 calc(20% - .96rem);
  min-width:160px;
  display:flex;flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(193,154,107,.1);
  background:rgba(26,16,8,.7);
  transition:transform .35s var(--ease),border-color .35s;
  cursor:pointer;
}
.video-card:hover{transform:translateY(-5px) scale(1.02);border-color:rgba(193,154,107,.3);}

.video-thumb-wrap{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  flex-shrink:0;
}
.video-thumb-wrap img{
  width:100%;height:100%;
  object-fit:cover;
  filter:sepia(12%) contrast(1.05) brightness(.85);
  transition:transform .5s var(--ease),filter .5s;
  pointer-events:none;
}
.video-card:hover .video-thumb-wrap img{transform:scale(1.06);filter:sepia(4%) contrast(1.06) brightness(.95);}

/* Botón play */
.video-play{
  position:absolute;inset:0;
  background:rgba(22,13,6,.4);
  display:flex;align-items:center;justify-content:center;
  opacity:0;transition:opacity .35s;
}
.video-play i{font-size:2rem;color:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.7));transition:transform .3s var(--ease);}
.video-card:hover .video-play{opacity:1;}
.video-card:hover .video-play i{transform:scale(1.1);}

.video-info{padding:.5rem .7rem;display:flex;align-items:center;justify-content:space-between;}
.video-num{font-family:var(--cinzel);font-size:.44rem;letter-spacing:.25em;color:rgba(193,154,107,.4);}

/* Botones carrusel */
.vc-btn{
  position:absolute;top:40%;transform:translateY(-50%);z-index:10;
  width:40px;height:40px;
  background:rgba(16,8,3,.85);
  border:1px solid rgba(193,154,107,.22);
  color:var(--ocre-light);font-size:.85rem;cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  backdrop-filter:blur(8px);
  transition:background .3s,border-color .3s,transform .3s;
}
.vc-btn:hover{background:rgba(193,154,107,.18);border-color:var(--ocre);transform:translateY(-50%) scale(1.1);}
.vc-btn:disabled{opacity:.25;cursor:default;}
.vc-prev{left:.2rem;}
.vc-next{right:.2rem;}

/* Barra de progreso */
.video-progress{
  display:flex;align-items:center;gap:1.2rem;
  max-width:600px;margin:1.8rem auto 0;
  padding:0 1rem;
}
.video-progress-bar{flex:1;height:2px;background:rgba(193,154,107,.12);border-radius:1px;overflow:hidden;}
.video-progress-fill{height:100%;background:var(--ocre);transition:width .4s var(--ease);width:12%;}
.video-progress-label{font-family:var(--cinzel);font-size:.48rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(193,154,107,.4);white-space:nowrap;}

/* Botón YouTube */
.video-yt-cta{text-align:center;margin-top:2.5rem;}
.btn-youtube{
  display:inline-flex;align-items:center;gap:.8rem;
  font-family:var(--cinzel);font-size:.6rem;letter-spacing:.25em;text-transform:uppercase;
  color:#fff;background:var(--yt);
  padding:1rem 2.2rem;
  border:none;cursor:pointer;
  transition:background .3s,transform .3s var(--ease),box-shadow .3s;
  box-shadow:0 4px 20px rgba(255,0,0,.25);
}
.btn-youtube:hover{background:#cc0000;transform:translateY(-2px);box-shadow:0 8px 28px rgba(255,0,0,.35);}
.btn-youtube i{font-size:1.1rem;}

/* ── NAV ENTRE SALAS ── */
.sala-nav{
  display:grid;grid-template-columns:1fr auto 1fr;
  align-items:center;gap:1.5rem;
  max-width:1300px;margin:0 auto;
  padding:2.5rem 2rem 1rem;
  border-top:1px solid rgba(193,154,107,.1);
}
.sala-nav-btn{
  display:inline-flex;align-items:center;gap:.8rem;
  font-family:var(--cinzel);font-size:.56rem;
  letter-spacing:.25em;text-transform:uppercase;
  color:var(--ocre);border:1px solid rgba(193,154,107,.3);
  padding:.9rem 1.8rem;
  transition:all .3s var(--ease);
}
.sala-nav-btn:hover{background:var(--ocre);color:var(--tinta);border-color:var(--ocre);}
.sala-nav-btn:last-child{justify-self:end;}
.sala-nav-center{text-align:center;font-family:var(--cinzel);font-size:.48rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(193,154,107,.28);}

/* ── SCROLL REVEAL ── */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}

/* ── FOOTER ── */
footer{background:var(--marron-deep);border-top:1px solid rgba(193,154,107,.1);padding:5rem 2rem 0;position:relative;overflow:hidden;}
.footer-glow{position:absolute;top:-120px;left:50%;transform:translateX(-50%);width:600px;height:200px;background:radial-gradient(ellipse,rgba(193,154,107,.05) 0%,transparent 70%);pointer-events:none;}
.footer-inner{max-width:1200px;margin:0 auto;}
.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:4rem;padding-bottom:3rem;border-bottom:1px solid rgba(193,154,107,.1);}
.footer-logo{height:52px;width:52px;object-fit:contain;border-radius:50%;border:1px solid var(--ocre-dim);margin-bottom:1rem;}
.footer-brand{font-family:var(--fell);font-style:italic;font-size:clamp(1.8rem,3.5vw,2.6rem);color:var(--ocre-light);line-height:1;margin-bottom:.7rem;}
.footer-tagline{font-family:var(--cinzel);font-size:.5rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(215,204,200,.28);line-height:2;max-width:340px;}
.footer-nav-title{font-family:var(--cinzel);font-size:.56rem;letter-spacing:.3em;text-transform:uppercase;color:rgba(193,154,107,.5);margin-bottom:1.4rem;}
.footer-nav{display:flex;flex-direction:column;gap:.75rem;}
.footer-nav a{font-family:var(--cinzel);font-size:.52rem;letter-spacing:.16em;text-transform:uppercase;color:rgba(215,204,200,.32);transition:color .3s,transform .3s;display:inline-block;}
.footer-nav a:hover{color:var(--ocre);transform:translateX(4px);}
.footer-bottom{display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.5rem 0 7rem;gap:1.2rem;}
.footer-copy{font-family:var(--serif);font-size:.78rem;color:rgba(215,204,200,.25);letter-spacing:.07em;}
.footer-sign{display:flex;align-items:center;gap:1.6rem;font-family:var(--fell);font-style:italic;font-size:clamp(2rem,5vw,3.2rem);color:rgba(193,154,107,.38);letter-spacing:.2em;line-height:1;}
.footer-sign-line{display:block;width:clamp(30px,6vw,70px);height:1px;background:linear-gradient(to right,transparent,rgba(193,154,107,.3));}

/* ── RESPONSIVE ── */
@media(max-width:1280px){
  .albums-grid{grid-template-columns:repeat(3,1fr);}
  .nav-links{gap:1rem;}
  .nav-links a{font-size:.5rem;}
  .video-card{flex-basis:calc(25% - .9rem);}
}
@media(max-width:1024px){
  .nav-links{display:none;}
  .nav-ham{display:flex;}
  .albums-grid{grid-template-columns:repeat(2,1fr);}
  .page-hero-stats{display:none;}
  .footer-top{grid-template-columns:1fr 1fr;gap:2.5rem;}
  .footer-brand-col{grid-column:1/-1;}
  .video-card{flex-basis:calc(33.333% - .8rem);}
}
@media(max-width:768px){
  .albums-grid{grid-template-columns:repeat(2,1fr);}
  .page-hero{min-height:55vh;padding:0 1.2rem 3.5rem;}
  .albums-section{padding:4rem 1.2rem;}
  .video-section{padding:3rem 1.2rem 4rem;}
  .sala-nav{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;}
  .sala-nav-center{grid-column:1/-1;order:-1;}
  .video-carousel-wrap{padding:0 2.5rem;}
  .video-card{flex-basis:calc(50% - .6rem);}
}
@media(max-width:480px){
  .nav-inner{padding:.8rem 1.2rem;}
  .albums-grid{grid-template-columns:1fr;}
  .album-img-wrap{height:200px;}
  .filter-inner{gap:.4rem;}
  .filter-btn{padding:.45rem .9rem;font-size:.48rem;}
  .video-card{flex-basis:calc(50% - .6rem);}
  footer{padding:4rem 1.2rem 0;}
  .footer-bottom{padding:2rem 0 8rem;}
  .footer-top{grid-template-columns:1fr;}
  .footer-brand-col{grid-column:auto;}
  .audio-control{bottom:1.5rem;right:1.5rem;}
  .sala-nav{padding:2rem 1.2rem 1rem;}
  .sala-nav-btn{padding:.75rem 1.2rem;font-size:.5rem;}
}
