:root {
    --bs-body-font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, 'Apple Color Emoji', 'Segoe UI Emoji';
    --nm-black:#0a0a0b; --nm-white:#ffffff; --nm-muted:#8e9196;
    --nm-accent:#fdf34a; /* pop accent */
}

body { 
    background:#0a0a0b; 
    color:var(--nm-white); 
}

a { 
    text-decoration:none 
}

/* Navbar */
.navbar { 
    transition:background-color .3s ease, box-shadow .3s ease; 
}

.navbar-blur { 
    background:rgba(10,10,11,.45); 
    backdrop-filter: blur(10px); 
}

.navbar-solid { 
    background:#0a0a0b; 
    box-shadow: 0 10px 30px rgba(0,0,0,.35); 
}

.navbar-brand { 
    font-weight:800; 
    letter-spacing:.5px 
}

.navbar-logo {
  height: 56px;
  width: auto;
  display: block;
  transition: height .25s ease;
}

.navbar-solid .navbar-logo {
  height: 48px;
}

.navbar-blur .navbar-logo {
  height: 56px;
}

.nav-link { 
    font-weight:600 
}

/* Hero */
.hero { 
    position:relative; 
    min-height:100svh; 
    display:grid; 
    place-items:center; 
    overflow:hidden; 
}

.hero-media { 
    position:absolute; 
    inset:0; 
    z-index:-1; 
}

.hero-media img { 
    width:100%; 
    height:100%; 
    object-fit:cover; 
    filter: saturate(1.05) brightness(.84); 
}

.hero-overlay { 
    position:absolute; 
    inset:0; 
    background: radial-gradient(1200px 800px at 20% 10%, rgba(253,243,74,.20), transparent 40%), linear-gradient(to top, rgba(10,10,11,.70), rgba(10,10,11,.25)); 
}

.hero-content { 
    text-align:center; 
    padding: 0 1.25rem; 
}

.hero-badge { 
    display:inline-block; 
    padding:.5rem .9rem; 
    border:1px solid rgba(255,255,255,.25); 
    border-radius:999px; 
    color:#fff; 
    margin-bottom:1rem; 
    font-weight:600; 
}

.hero h1 { 
    font-size: clamp(2.4rem, 6vw, 5rem); 
    font-weight:800; 
    line-height:1.03; 
    letter-spacing:-.02em; 
}

.hero p { 
    color:var(--nm-muted); 
    font-size: clamp(1rem, 2.6vw, 1.25rem); 
    max-width: 56rem; 
    margin-inline:auto 
}

.cta-wrap { 
    display:flex; 
    gap:.75rem; 
    justify-content:center; 
    flex-wrap:wrap; 
    margin-top:1.25rem 
}

.btn-contrast { 
    background:var(--nm-white); 
    color:#0a0a0b; 
    border:none; 
    font-weight:800; 
}

.btn-contrast:hover { 
    background:#e6e6e6; 
    color: #0a0a0b;
}

.btn-outline { 
    border:1px solid rgba(255,255,255,.35); 
    color:#fff; 
    font-weight:700; 
}

/* Mosaic section */
.mosaic .card { 
    border:0; 
    border-radius:1rem; 
    overflow:hidden; 
    background:#141417; 
    box-shadow: 0 10px 30px rgba(0,0,0,.35); 
    transition: transform .3s ease, box-shadow .3s ease; 
}

.mosaic .card img { 
    height:100%; 
    object-fit:cover;
    transition: transform .7s cubic-bezier(.2,.8,.2,1); 
}

.mosaic .card:hover img { 
    transform: scale(1.06); 
}

.mosaic .card-title { 
    font-weight:800 
}

/* Releases */
.release-card { 
    border:0; 
    background:#141417; 
    border-radius:1rem; 
    overflow:hidden;
    position: relative; 
}

.release-art { 
    aspect-ratio:1/1; 
    object-fit:cover 
}

.pill { 
    display:inline-block; 
    font-weight:700; 
    border:1px solid rgba(255,255,255,.2); 
    border-radius:999px; 
    padding:.35rem .65rem; 
    font-size:.8rem; 
    color:#cfd2d6 
}

/* Make video previews behave like the cover images */
video.release-art {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 0; /* your cards already have rounded corners */
  display: block;
}

#artistas .card {
  background: none;              /* remove dark background */
  border: 0;
  overflow: hidden;
  border-radius: 1rem;
}

#artistas .card-img {
  width: 100%;
  height: 100%;
  object-fit: cover;              /* ensures full coverage */
  aspect-ratio: 4 / 5;            /* consistent ratio */
  display: block;
}

.release-card strong {
  color: #fff;
  font-weight: 700;
  text-shadow: 0 1px 4px rgba(0,0,0,0.5);
}

/* Newsletter */
.newsletter { 
    background:#141417; 
    border-radius:1.25rem 
}

/* Footer */
footer { 
    color:#b5b8bd 
}

/* Utility */
.section-title { 
    font-size: clamp(1.6rem, 3.5vw, 2.25rem); 
    font-weight:800; 
    letter-spacing:-.02em 
}