/* Amore Music Production v3.0 — Phases 1 & 2 Premium Homepage */
:root{
  --premium-gold:#dfc06a;
  --premium-gold-soft:#f3df9d;
  --premium-ink:#04111e;
  --premium-navy:#061a2d;
  --premium-glass:rgba(4,17,30,.58);
  --premium-line:rgba(223,192,106,.35);
  --premium-text:rgba(255,255,255,.82);
}
html{scroll-behavior:smooth;}
body{overflow-x:hidden;}
.site-header{
  position:fixed;inset:0 0 auto;z-index:1000;
  background:linear-gradient(180deg,rgba(2,10,18,.72),rgba(2,10,18,.08));
  border-bottom:1px solid transparent;
  transition:background .35s ease,border-color .35s ease,box-shadow .35s ease,backdrop-filter .35s ease;
}
.site-header.is-scrolled{
  background:var(--premium-glass);
  border-bottom-color:rgba(255,255,255,.10);
  box-shadow:0 12px 38px rgba(0,0,0,.22);
  backdrop-filter:blur(20px) saturate(145%);
  -webkit-backdrop-filter:blur(20px) saturate(145%);
}
.nav-wrap{min-height:92px;transition:min-height .3s ease;}
.site-header.is-scrolled .nav-wrap{min-height:74px;}
.brand img{filter:drop-shadow(0 4px 15px rgba(0,0,0,.28));}
.primary-nav>a:not(.button){position:relative;}
.primary-nav>a:not(.button)::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--premium-gold);transition:right .25s ease;}
.primary-nav>a:not(.button):hover::after{right:0;}

.button{
  position:relative;overflow:hidden;border:1px solid var(--premium-gold);
  background:linear-gradient(135deg,#c59e3d,#ead27e);
  color:#07121c;box-shadow:0 10px 30px rgba(202,163,66,.22);
  transition:transform .25s ease,box-shadow .25s ease,filter .25s ease;
}
.button::before{content:"";position:absolute;inset:0;transform:translateX(-125%);background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.5) 50%,transparent 75%);transition:transform .65s ease;}
.button:hover{transform:translateY(-2px);box-shadow:0 15px 40px rgba(223,192,106,.35);filter:saturate(1.05);}
.button:hover::before{transform:translateX(125%);}
.button.button-ghost{background:rgba(5,18,31,.24);color:#fff;border-color:rgba(255,255,255,.42);backdrop-filter:blur(10px);}
.button.button-ghost:hover{border-color:var(--premium-gold);color:var(--premium-gold-soft);}

.hero.hero-v3{min-height:100svh;padding:132px 0 70px;isolation:isolate;}
.hero.hero-v3::before{transform:scale(1.055);animation:premium-drift 22s ease-in-out infinite alternate;will-change:transform;}
.hero.hero-v3::after{
  background:
   radial-gradient(circle at 77% 43%,rgba(223,192,106,.13),transparent 28%),
   linear-gradient(90deg,rgba(1,11,20,.96) 0%,rgba(3,18,31,.82) 43%,rgba(3,18,31,.34) 73%,rgba(3,18,31,.48) 100%),
   linear-gradient(0deg,rgba(2,13,23,.93) 0%,transparent 38%);
}
.hero-v3-layout{grid-template-columns:minmax(0,1.14fr) minmax(330px,.86fr);gap:clamp(52px,7vw,110px);}
.hero-v3-copy{max-width:790px;}
.release-badge{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;padding:9px 14px;border:1px solid rgba(223,192,106,.42);border-radius:999px;background:rgba(4,17,30,.35);color:var(--premium-gold-soft);font-size:.68rem;font-weight:600;letter-spacing:.17em;text-transform:uppercase;backdrop-filter:blur(10px);}
.release-badge::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--premium-gold);box-shadow:0 0 16px var(--premium-gold);}
.hero-v3 h1{text-shadow:0 10px 45px rgba(0,0,0,.32);}
.hero-v3-subtitle{color:var(--premium-gold-soft);}
.hero-v3-tagline{font-size:clamp(1.08rem,1.65vw,1.52rem);}
.hero-v3-description{font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.8;}
.language-signature{margin:26px 0 27px;padding:18px 0;border-color:var(--premium-line);}
.language-flags{gap:9px 10px;}
.language-chip{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(5,18,31,.34);font-size:.79rem;color:rgba(255,255,255,.9);backdrop-filter:blur(8px);}
.language-chip .flag{font-size:1.1rem;line-height:1;}
.language-extras{margin-top:12px;color:rgba(255,255,255,.72);}
.release-line{margin:19px 0 0;color:rgba(255,255,255,.72);font-size:.76rem;font-weight:500;letter-spacing:.11em;text-transform:uppercase;}
.hero-v3-cover{perspective:1100px;transform-style:preserve-3d;}
.hero-v3-cover::before{content:"Official debut album";right:-14px;background:rgba(4,17,30,.62);border-color:rgba(223,192,106,.42);}
.hero-v3-cover::after{content:"";position:absolute;inset:10% -10% -8% 12%;z-index:-1;border-radius:50%;background:radial-gradient(circle,rgba(223,192,106,.24),transparent 66%);filter:blur(25px);}
.hero-v3-cover img{border-radius:26px;box-shadow:0 42px 110px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.17);transform:rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(var(--float-y,0px));transition:transform .18s ease-out;animation:premium-cover-float 6.8s ease-in-out infinite;will-change:transform;}
.hero-v3-cover:hover img{box-shadow:0 52px 125px rgba(0,0,0,.62),0 0 45px rgba(223,192,106,.18),0 0 0 1px rgba(223,192,106,.38);}
.scroll-indicator{opacity:.82;}

.album-intro-v3{position:relative;}
.album-intro-v3::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 25%,rgba(223,192,106,.13),transparent 34%);pointer-events:none;}
.album-intro-grid{position:relative;}
.why-card,.track-card{transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease;}
.why-card:hover{transform:translateY(-7px);border-color:rgba(197,158,61,.32);box-shadow:0 22px 55px rgba(7,27,47,.12);}
.track-card:hover{transform:translateY(-7px);border-color:rgba(223,192,106,.34);box-shadow:0 26px 60px rgba(0,0,0,.22);}

@keyframes premium-drift{from{transform:scale(1.055) translate3d(-.4%,0,0)}to{transform:scale(1.105) translate3d(.6%,.25%,0)}}
@keyframes premium-cover-float{0%,100%{--float-y:0px}50%{--float-y:-12px}}

@media(max-width:1080px){.hero-v3-layout{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:48px}.language-chip{font-size:.72rem;padding:7px 9px}}
@media(max-width:820px){
 .site-header{background:rgba(3,15,27,.48);backdrop-filter:blur(14px)}
 .hero.hero-v3{padding:128px 0 82px;}
 .hero.hero-v3::after{background:linear-gradient(180deg,rgba(2,13,23,.88),rgba(2,13,23,.56) 42%,rgba(2,13,23,.95));}
 .hero-v3-layout{grid-template-columns:1fr;}
 .hero-v3-copy{text-align:center;margin-inline:auto;}
 .release-badge{margin-inline:auto;}
 .language-flags,.hero-actions{justify-content:center;}
 .release-line{text-align:center;}
 .hero-v3-cover{width:min(80vw,450px);}
}
@media(max-width:620px){
 .language-chip{width:42px;height:38px;justify-content:center;padding:0;}
 .language-chip .language-name{display:none;}
 .language-chip .flag{font-size:1.35rem;}
 .language-summary{display:none;}
 .release-line{font-size:.68rem;line-height:1.7;}
 .hero-v3-cover::before{font-size:.58rem;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero.hero-v3::before,.hero-v3-cover img{animation:none!important}.button,.why-card,.track-card{transition:none}}

/* v3.0 Phase 2.1 — desktop hero spacing and cover refinement */
@media (min-width:1081px){
  .hero-v3-layout{
    width:min(1600px,calc(100% - 72px));
    grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr);
    gap:clamp(88px,7vw,124px);
  }
  .hero-v3-copy{
    max-width:720px;
  }
  .hero-v3 h1{
    max-width:680px;
    font-size:clamp(3.25rem,6.25vw,6.55rem);
  }
  .hero-v3-cover{
    width:min(100%,530px);
    justify-self:end;
    margin-right:clamp(8px,1.3vw,24px);
  }
  .hero-v3-cover::before{
    top:-20px;
    right:-10px;
  }
  .hero-v3-cover::after{
    inset:8% -7% -10% 10%;
  }
}

@media (min-width:1081px) and (max-width:1320px){
  .hero-v3-layout{
    width:min(1240px,calc(100% - 48px));
    grid-template-columns:minmax(0,1fr) minmax(390px,.92fr);
    gap:72px;
  }
  .hero-v3 h1{
    max-width:620px;
    font-size:clamp(3.2rem,6vw,5.75rem);
  }
  .hero-v3-cover{width:min(100%,480px);margin-right:0;}
}

/* v3.0 Phase 2.2 — final desktop hero balance refinements */
@media (min-width:1081px){
  .brand{
    width:312px;
    max-width:40vw;
  }
  .brand img{
    max-height:72px;
  }
  .hero-v3-layout{
    width:min(1680px,calc(100% - 76px));
    grid-template-columns:minmax(0,.96fr) minmax(500px,1.04fr);
    gap:clamp(112px,8.2vw,156px);
  }
  .hero-v3-copy{
    max-width:650px;
  }
  .hero-v3 h1{
    max-width:620px;
    font-size:clamp(3.05rem,5.55vw,5.85rem);
    line-height:.97;
    letter-spacing:.018em;
  }
  .hero-v3-subtitle{
    margin-top:34px;
  }
  .hero-v3-tagline,
  .hero-v3-description,
  .language-signature{
    max-width:625px;
  }
  .language-signature{
    margin-top:34px;
    padding-top:22px;
  }
  .hero-v3-cover{
    width:min(100%,568px);
    justify-self:end;
    margin-right:clamp(-24px,-1.2vw,-8px);
  }
  .hero-v3-cover::before{
    top:-16px;
    right:-8px;
  }
  .hero-v3-cover::after{
    inset:7% -9% -11% 8%;
  }
  .hero-v3 .scroll-indicator::before{
    content:"Discover the journey";
    position:absolute;
    left:50%;
    bottom:58px;
    width:max-content;
    transform:translateX(-50%);
    color:rgba(255,255,255,.68);
    font-size:.63rem;
    font-weight:600;
    letter-spacing:.16em;
    text-transform:uppercase;
  }
}

@media (min-width:1081px) and (max-width:1320px){
  .brand{width:292px;}
  .hero-v3-layout{
    width:min(1280px,calc(100% - 52px));
    grid-template-columns:minmax(0,.94fr) minmax(430px,1.06fr);
    gap:88px;
  }
  .hero-v3-copy{max-width:590px;}
  .hero-v3 h1{
    max-width:570px;
    font-size:clamp(3rem,5.45vw,5.25rem);
  }
  .hero-v3-cover{
    width:min(100%,515px);
    margin-right:-8px;
  }
}
