/*
 NIGHT ISSUE V12 — SOFT FUTURE
 Additive visual refinement over V11.
 Goal: softer premium typography + moderated geometry.
 No content/image/logo/radio logic/navigation logic changes.
*/

/* Softer, more premium headline family */
.display,
.section-title,
.article-head h1,
.page-head h1,
.card h3,
.card-body h3,
.artist-tile h3,
.release h4,
.release-tile h3,
.release-row h2{
  font-family:"Avenir Next","SF Pro Rounded","SF Pro Display","Helvetica Neue",Arial,sans-serif!important;
  text-rendering:optimizeLegibility;
}

/* Main section titles: smaller, softer, less brutal */
.section-title{
  font-size:clamp(32px,3.35vw,48px)!important;
  line-height:1.02!important;
  font-weight:620!important;
  letter-spacing:-.038em!important;
  text-transform:none!important;
  max-width:760px!important;
}

/* Hero / display typography */
.display{
  font-size:clamp(42px,4.6vw,70px)!important;
  line-height:1.01!important;
  font-weight:640!important;
  letter-spacing:-.042em!important;
  text-transform:none!important;
  max-width:880px!important;
}

/* Article / page title refinement */
.article-head h1{
  font-size:clamp(40px,4.6vw,64px)!important;
  line-height:1.015!important;
  font-weight:630!important;
  letter-spacing:-.042em!important;
}
.page-head h1{
  font-size:clamp(38px,4.1vw,58px)!important;
  line-height:1.015!important;
  font-weight:630!important;
  letter-spacing:-.038em!important;
}

/* Card titles: less "template", more magazine */
.card-body h3,
.card h3{
  font-size:clamp(18px,1.6vw,25px)!important;
  line-height:1.18!important;
  font-weight:600!important;
  letter-spacing:-.025em!important;
}
.artist-tile h3{
  font-size:clamp(21px,2vw,28px)!important;
  line-height:1.08!important;
  font-weight:620!important;
  letter-spacing:-.03em!important;
}

/* Micro labels: futuristic, but calmer */
.eyebrow,
.tag,
.section-kicker,
.rail-title,
.more,
.news-time,
.ni-radio-kicker,
.ni-radio-chip{
  font-family:"Avenir Next","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
  font-weight:650!important;
  letter-spacing:.09em!important;
}

/* Moderate geometry: premium rounded, never bubble-like */
.hero-main{
  border-radius:18px!important;
}
.hero-copy{
  border-radius:14px!important;
}
.page-head .wrap{
  border-radius:18px!important;
}
.card,
.review-card,
.artist-tile,
.release,
.release-tile{
  border-radius:16px!important;
}
.release img,
.release picture,
.release-tile img,
.card-media,
.card-media img{
  border-radius:14px!important;
}
.article-head{
  border-radius:16px 16px 0 0!important;
}
.article-cover{
  border-radius:0 0 16px 16px!important;
}
.article-body{
  border-radius:14px!important;
}
.select-card,
.newsletter,
.source-box,
.side-panel{
  border-radius:14px!important;
}

/* CTAs: softer rectangles, not pills */
.cta,
a.cta,
span.cta,
button.cta,
.cta-button,
.newsletter button{
  min-height:42px!important;
  padding-left:16px!important;
  border-radius:10px!important;
  font-family:"Avenir Next","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.075em!important;
  box-shadow:0 10px 28px rgba(255,96,57,.11)!important;
}
.hero-copy .cta,
.rail > .cta,
a.cta[href="/noticias/"]{
  min-height:42px!important;
}
.hero-copy .cta::after,
.rail > .cta::after,
a.cta[href="/noticias/"]::after,
.cta::after{
  min-width:40px!important;
  margin-left:13px!important;
  border-left:1px solid rgba(0,0,0,.20)!important;
  border-radius:0 10px 10px 0!important;
}

/* Fast News: keep editorial flatness, soften edges slightly */
.rail{
  border-radius:16px!important;
  padding:24px!important;
}
.news-item{
  border-radius:10px!important;
  padding:15px 10px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
  background:linear-gradient(90deg,rgba(255,96,57,.028),rgba(255,255,255,.012) 55%,transparent)!important;
}
.news-item:last-of-type{
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
.news-time{
  border-right:0!important;
  border:1px solid rgba(255,96,57,.22)!important;
  border-radius:7px!important;
  width:30px!important;
  height:30px!important;
  padding:0!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,96,57,.045)!important;
}
.news-item h3{
  font-family:"Avenir Next","SF Pro Text","Helvetica Neue",Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1.20!important;
  font-weight:580!important;
  letter-spacing:-.016em!important;
}

/* Navigation: softer active/hover treatment */
.nav a{
  border-radius:9px!important;
  padding:9px 11px!important;
  font-weight:520!important;
}
.nav a::after{
  left:11px!important;
  right:11px!important;
  bottom:3px!important;
}

/* Radio: retain same behavior, soften hardware look */
.ni-radio-bar{
  border-radius:14px!important;
  padding:9px 10px!important;
}
.ni-radio-btn{
  width:36px!important;
  height:36px!important;
  border-radius:10px!important;
}
.ni-radio-panel{
  border-radius:16px!important;
}
.ni-radio-close{
  border-radius:9px!important;
}
.ni-radio-chip{
  border-radius:8px!important;
}
.ni-radio-list-item{
  border-radius:8px!important;
}
.ni-radio-embed-card{
  border-radius:10px!important;
}
#niSpotifyEmbed iframe{
  border-radius:9px!important;
}

/* Mobile — directly addresses the screenshot */
@media(max-width:650px){
  .display{
    font-size:clamp(30px,8.4vw,38px)!important;
    line-height:1.04!important;
    font-weight:630!important;
    letter-spacing:-.038em!important;
  }
  .section-title{
    font-size:clamp(30px,8.5vw,38px)!important;
    line-height:1.04!important;
    font-weight:610!important;
    letter-spacing:-.035em!important;
  }
  .article-head h1{
    font-size:clamp(31px,8.8vw,40px)!important;
    line-height:1.04!important;
  }
  .page-head h1{
    font-size:clamp(32px,9vw,41px)!important;
    line-height:1.04!important;
  }
  .card-body h3,
  .card h3{
    font-size:17px!important;
    line-height:1.20!important;
    font-weight:580!important;
  }
  .artist-tile h3{
    font-size:clamp(21px,6.8vw,27px)!important;
  }

  .hero-main{
    border-radius:16px!important;
  }
  .hero-copy{
    border-radius:13px!important;
  }
  .page-head .wrap{
    border-radius:16px!important;
  }
  .card,
  .review-card,
  .artist-tile,
  .release,
  .release-tile{
    border-radius:14px!important;
  }

  .rail{
    border-radius:15px!important;
    padding:20px 16px!important;
  }
  .news-item{
    border-radius:9px!important;
    grid-template-columns:30px minmax(0,1fr)!important;
    gap:11px!important;
    padding:14px 8px!important;
  }
  .news-time{
    width:28px!important;
    height:28px!important;
    border-radius:7px!important;
    font-size:8.5px!important;
  }
  .news-item h3{
    font-size:13.5px!important;
    line-height:1.21!important;
  }

  .cta,
  a.cta,
  span.cta,
  button.cta,
  .cta-button,
  .newsletter button{
    min-height:40px!important;
    border-radius:9px!important;
    font-size:10px!important;
  }
  .hero-copy .cta,
  .rail > .cta,
  a.cta[href="/noticias/"]{
    min-height:40px!important;
  }
  .hero-copy .cta::after,
  .rail > .cta::after,
  a.cta[href="/noticias/"]::after,
  .cta::after{
    border-radius:0 9px 9px 0!important;
  }

  .ni-radio-bar{
    border-radius:13px!important;
  }
  .ni-radio-btn{
    width:35px!important;
    height:35px!important;
    border-radius:10px!important;
  }
  .ni-radio-panel{
    border-radius:14px!important;
  }
}

/* V23 desktop image audit: preserve VIOT face in landscape editorial crops. */
.card-media img[src*="viot-profile.webp"],
.article-cover img[src*="viot-profile.webp"]{
  object-position:center 18% !important;
}
