
/* Amore Music Production Website v4.0 release-candidate refinements */
.hero-v31{background-image:linear-gradient(90deg,rgba(3,13,23,.86),rgba(3,13,23,.36)),url('../images/backgrounds/mediterranean-hero-desktop.webp')!important}
.hero-v31-heading .eyebrow{font-size:.86rem;letter-spacing:.32em;margin-bottom:.55rem}
.hero-v31-heading .release-badge{letter-spacing:.22em}
.hero-v31-copy{max-width:580px}.hero-v31-tagline{font-size:clamp(1.35rem,2.2vw,2.15rem);line-height:1.2}
.hero-actions{gap:.8rem;flex-wrap:wrap}.video-section{background:#061725;color:#fff}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}.video-card{border:1px solid rgba(214,177,91,.28);background:rgba(255,255,255,.035);border-radius:10px;overflow:hidden}.video-placeholder{aspect-ratio:16/9;display:grid;place-items:center;background:linear-gradient(135deg,rgba(214,177,91,.18),rgba(3,13,23,.95));font-size:2rem}.video-card-copy{padding:1.25rem}.video-type{color:#d6b15b;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}.video-card h3{margin:.35rem 0}.video-card p:last-child{opacity:.72;margin:0}
@media(max-width:800px){.hero-v31{background-image:linear-gradient(180deg,rgba(3,13,23,.7),rgba(3,13,23,.9)),url('../images/backgrounds/mediterranean-hero-mobile.webp')!important}.video-grid{grid-template-columns:1fr}.hero-v31-heading{text-align:center}.hero-v31-copy{text-align:center}.hero-actions{justify-content:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.reveal{transition:none!important;transform:none!important}}


/* v4.0 RC3 — final hero proofing for desktop, tablet and mobile */
.hero-v31-heading .hero-artist-name{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.72em;
  margin:.85rem 0 .65rem;
  color:#e2bd59;
  font-size:clamp(.9rem,1.05vw,1.08rem);
  font-weight:600;
  letter-spacing:.34em;
  line-height:1;
  white-space:nowrap;
}
.hero-v31-heading .hero-artist-name span:first-child{
  margin-right:-.34em;
}
.hero-v31-heading h1{
  font-size:clamp(3.6rem,7.25vw,7.35rem);
  line-height:.94;
}
.hero-v31-subtitle{
  margin-top:24px;
  font-size:clamp(1.9rem,2.75vw,2.95rem);
}
.hero-v31-stage{
  align-items:center;
}
.hero-v31-cover{
  width:min(92%,525px);
  margin-top:52px;
}
.hero-v31-cover::before{
  content:"Official debut album";
  top:-48px;
  left:50%;
  width:88%;
  padding:0 16px;
  transform:translateX(-50%);
  border:0;
  border-radius:0;
  background:
    linear-gradient(rgba(216,184,93,.55),rgba(216,184,93,.55)) left center/24% 1px no-repeat,
    linear-gradient(rgba(216,184,93,.55),rgba(216,184,93,.55)) right center/24% 1px no-repeat;
  color:#f2cf75;
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.18em;
  text-align:center;
  white-space:nowrap;
  backdrop-filter:none;
}
.hero-listen-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.62rem;
}
.button-play{
  font-size:.82em;
  line-height:1;
}
.social-links-header{
  gap:1.05rem;
}

@media(max-width:1220px){
  .hero-v31-cover{width:min(90%,470px);margin-top:48px}
  .hero-v31-heading h1{font-size:clamp(3.45rem,7vw,6.25rem)}
}
@media(max-width:900px){
  .hero-v31-heading .hero-artist-name{gap:.65em;margin-top:.75rem}
  .hero-v31-heading h1{font-size:clamp(3rem,11vw,5.1rem)}
  .hero-v31-subtitle{font-size:clamp(1.7rem,5.2vw,2.45rem);margin-top:18px}
  .hero-v31-cover{width:min(78vw,460px);margin-top:44px}
  .hero-v31-cover::before{top:-42px;width:94%;background-size:19% 1px}
}
@media(max-width:620px){
  .hero-v31-heading .hero-artist-name{
    gap:.55em;
    margin:.7rem 0 .55rem;
    font-size:.78rem;
    letter-spacing:.28em;
  }
  .hero-v31-heading .hero-artist-name span:first-child{margin-right:-.28em}
  .hero-v31-heading h1{font-size:clamp(2.55rem,14vw,4rem);line-height:.98}
  .hero-v31-subtitle{font-size:clamp(1.45rem,7vw,1.85rem);margin-top:16px}
  .hero-v31-cover{width:min(88vw,390px);margin-top:42px}
  .hero-v31-cover::before{top:-38px;width:100%;font-size:.62rem;letter-spacing:.13em;background-size:14% 1px}
  .social-links-header{gap:.7rem}
}


/* v4.0 RC4 — Listen Everywhere */
.listen-everywhere{
  background:linear-gradient(180deg,#071827 0%,#0b2031 100%);
  color:#fff;
  text-align:center;
  border-top:1px solid rgba(216,184,93,.22);
  border-bottom:1px solid rgba(216,184,93,.22);
}
.listen-everywhere .section-heading{max-width:760px;margin:0 auto 2rem}
.listen-everywhere .section-heading h2{color:#fff}
.listen-everywhere .section-heading p:not(.eyebrow){color:rgba(255,255,255,.78)}
.platform-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem;max-width:900px;margin:0 auto 1.15rem}
.platform-list span{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.78rem 1.15rem;border:1px solid rgba(216,184,93,.38);border-radius:999px;background:rgba(255,255,255,.045);color:#fff;font-weight:600;letter-spacing:.01em}
.platform-more{margin:.4rem 0 1.5rem;color:#e2bd59;font-size:.92rem;letter-spacing:.04em}
.listen-everywhere-actions{display:flex;justify-content:center;margin-bottom:1rem}
.platform-note{max-width:640px;margin:0 auto;color:rgba(255,255,255,.58);font-size:.84rem}
@media(max-width:620px){
  .platform-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}
  .platform-list span{min-height:46px;padding:.72rem .55rem;font-size:.92rem}
  .listen-everywhere .section-heading{margin-bottom:1.5rem}
}

/* v4.1 — Official vertical promo */
.promo-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 75% 42%,rgba(216,184,93,.12),transparent 32%),
    linear-gradient(180deg,#081927 0%,#0d2536 100%);
  color:#fff;
  border-top:1px solid rgba(216,184,93,.22);
  border-bottom:1px solid rgba(216,184,93,.22);
}
.promo-section::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(120deg,rgba(255,255,255,.025),transparent 38%);
}
.promo-shell{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(320px,.72fr);
  align-items:center;
  gap:clamp(3rem,8vw,7rem);
  max-width:1120px;
}
.promo-copy{max-width:570px}
.promo-copy h2{margin:.45rem 0 1.25rem;color:#fff;font-size:clamp(2.25rem,4vw,4.2rem);line-height:1.04}
.promo-copy>p:not(.eyebrow):not(.promo-duration):not(.promo-sound-note){color:rgba(255,255,255,.78);font-size:1.08rem;line-height:1.8}
.promo-duration{margin:1.7rem 0 .35rem;color:#e2bd59;font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem}
.promo-sound-note{margin:0;color:rgba(255,255,255,.52);font-size:.88rem}
.promo-player-wrap{display:flex;justify-content:center}
.promo-player-frame{
  position:relative;
  width:min(100%,410px);
  aspect-ratio:9/16;
  padding:8px;
  border:1px solid rgba(226,189,89,.5);
  border-radius:30px;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.025));
  box-shadow:0 30px 75px rgba(0,0,0,.45),0 0 45px rgba(216,184,93,.08);
}
.promo-player-frame::before{
  content:"";
  position:absolute;
  top:15px;
  left:50%;
  z-index:2;
  width:72px;
  height:5px;
  transform:translateX(-50%);
  border-radius:999px;
  background:rgba(255,255,255,.35);
  pointer-events:none;
}
.promo-video{display:block;width:100%;height:100%;object-fit:cover;border-radius:22px;background:#000}
@media(max-width:800px){
  .promo-shell{grid-template-columns:1fr;text-align:center;gap:2.5rem}
  .promo-copy{margin:0 auto}
  .promo-player-frame{width:min(88vw,390px)}
}
@media(max-width:480px){
  .promo-section{padding-top:4.25rem;padding-bottom:4.5rem}
  .promo-player-frame{width:min(92vw,360px);padding:6px;border-radius:25px}
  .promo-video{border-radius:19px}
}

/* v4.2 — YouTube teaser, custom poster and launch ribbon */
.latest-release-ribbon{
  display:block;
  position:relative;
  z-index:5;
  padding:.72rem 1rem;
  border-top:1px solid rgba(226,189,89,.24);
  border-bottom:1px solid rgba(226,189,89,.32);
  background:linear-gradient(90deg,#071726,#112f42 50%,#071726);
  color:#e2bd59;
  text-align:center;
  font-size:.76rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  transition:color .25s ease,background .25s ease;
}
.latest-release-ribbon:hover,.latest-release-ribbon:focus-visible{
  color:#fff;
  background:linear-gradient(90deg,#0b2233,#173e55 50%,#0b2233);
}
.promo-player-wrap{flex-direction:column;align-items:center;gap:1.35rem}
.promo-player-frame{overflow:hidden}
.promo-poster-button{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  padding:0;
  overflow:hidden;
  border:0;
  border-radius:22px;
  background:#000;
  cursor:pointer;
}
.promo-poster-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .45s ease,opacity .35s ease;
}
.promo-poster-button::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.18));
  transition:background .35s ease;
}
.promo-play-button{
  position:absolute;
  left:50%;
  top:50%;
  z-index:2;
  display:grid;
  place-items:center;
  width:86px;
  height:86px;
  transform:translate(-50%,-50%);
  border:1px solid rgba(255,239,178,.8);
  border-radius:50%;
  background:linear-gradient(145deg,rgba(232,201,111,.96),rgba(151,104,32,.94));
  box-shadow:0 16px 40px rgba(0,0,0,.48),0 0 0 9px rgba(226,189,89,.12);
  color:#071726;
  transition:transform .3s ease,box-shadow .3s ease;
}
.promo-play-icon{margin-left:5px;font-size:1.85rem;line-height:1}
.promo-poster-button:hover .promo-poster-image,
.promo-poster-button:focus-visible .promo-poster-image{transform:scale(1.035);filter:saturate(1.06) brightness(.92)}
.promo-poster-button:hover .promo-play-button,
.promo-poster-button:focus-visible .promo-play-button{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 18px 46px rgba(0,0,0,.55),0 0 0 13px rgba(226,189,89,.13)}
.promo-player-frame.is-loading .promo-poster-image{opacity:0}
.promo-youtube-embed{display:block;width:100%;height:100%;border:0;border-radius:22px;background:#000}
.promo-youtube-link{min-width:190px;text-align:center}
@media(max-width:480px){
  .latest-release-ribbon{padding:.68rem .75rem;font-size:.67rem;letter-spacing:.1em}
  .promo-poster-button,.promo-youtube-embed{border-radius:19px}
  .promo-play-button{width:74px;height:74px}
  .promo-play-icon{font-size:1.55rem}
}
@media(prefers-reduced-motion:reduce){
  .promo-poster-image,.promo-play-button{transition:none}
}
/* Official video thumbnails */
.video-thumbnail {
  position: relative;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #03101b;
}

.video-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .35s ease;
}

.video-thumbnail .video-play {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: 2rem;
  color: #fff;
  background: rgba(3, 13, 23, .18);
}

.video-card a:hover .video-thumbnail img,
.video-card a:focus-visible .video-thumbnail img {
  transform: scale(1.035);
}
