
:root{
  --bg:#070707;
  --panel:#0b0b0b;
  --gold:#c9913d;
  --cream:#f2e8d6;
  --muted:#bcb2a1;
  --line:#5a4323;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--cream);
  font-family:Arial,Helvetica,sans-serif;
}
.hero{
  position:relative;
  min-height:32rem;
  border-bottom:2px solid var(--gold);
  overflow:hidden;
}
.hero-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 68%;
}
.hero-shade{
  position:absolute;
  inset:0;
  background:rgba(0,0,0,.43);
}
.hero-inner{
  position:relative;
  z-index:2;
  max-width:1480px;
  margin:auto;
  padding:2.5rem 3rem;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:2rem;
}
.brand-name{
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(2rem,3vw,3.2rem);
  line-height:1.08;
}
.brand-role{
  margin-top:.9rem;
  color:var(--gold);
  font-size:.9rem;
  letter-spacing:.08em;
}
.nav{
  display:flex;
  gap:2.2rem;
  flex-wrap:wrap;
}
.nav a{
  color:var(--cream);
  text-decoration:none;
  font-size:.95rem;
  letter-spacing:.04em;
  padding-bottom:.45rem;
}
.nav a.active{
  color:var(--gold);
  border-bottom:2px solid var(--gold);
}
main{
  max-width:1480px;
  margin:auto;
  padding:3rem;
}
.intro{
  padding-bottom:2.4rem;
  border-bottom:2px solid var(--gold);
}
h1,h2,h3,.subtitle,.footer-name{
  font-family:Georgia,'Times New Roman',serif;
  font-weight:400;
}
h1{
  font-size:clamp(3rem,5vw,5.2rem);
  margin:0;
}
.subtitle{
  font-size:clamp(1.8rem,3vw,3rem);
  margin:.4rem 0 .65rem;
}
.tagline{
  color:var(--gold);
  font-size:1.1rem;
}
.album-section,.catalog-section{
  padding:2.4rem 0;
  border-bottom:1px solid var(--line);
}
.section-heading h2{
  color:var(--gold);
  margin:0 0 .65rem;
  font-size:clamp(1.8rem,2.5vw,2.6rem);
}
.section-heading p{
  color:var(--muted);
  margin:0 0 2rem;
  letter-spacing:.08em;
  font-size:.9rem;
}
.album-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1.8rem;
  align-items:start;
}
.catalog-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:3rem 2.3rem;
}
.work-card{
  text-align:center;
}
.art-frame{
  width:100%;
  aspect-ratio:349/430;
  border:2px solid var(--gold);
  background:#0a0a0a;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.art-frame img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}
.work-card h3{
  font-size:1.35rem;
  margin:1rem 0 .55rem;
  line-height:1.2;
  min-height:2.7rem;
  display:flex;
  align-items:center;
  justify-content:center;
}
.work-card p{
  color:var(--muted);
  line-height:1.45;
  margin:.25rem auto 1rem;
  max-width:23rem;
  min-height:3.1rem;
}
.spotify{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:3rem;
  border:2px solid var(--gold);
  color:var(--gold);
  text-decoration:none;
  font-weight:700;
  font-size:.8rem;
  letter-spacing:.04em;
}
.spotify:hover{background:rgba(201,145,61,.08)}
.grandfather-section{
  padding:3rem 0 4rem;
  text-align:center;
}
.grandfather-section h2{
  color:var(--gold);
  font-size:clamp(1.8rem,2.5vw,2.6rem);
}
.grandfather-art{
  max-width:980px;
  margin:1.5rem auto 1rem;
  border:2px solid var(--gold);
}
.grandfather-art img{
  width:100%;
  height:auto;
  display:block;
}
.grandfather-section p{
  color:var(--muted);
  margin:1rem auto 1.4rem;
}
.wide-button{
  max-width:320px;
}
footer{
  border-top:2px solid var(--gold);
  padding:2.5rem 3rem 3rem;
  display:grid;
  grid-template-columns:1.3fr 1fr 1fr;
  gap:2rem;
  max-width:1600px;
  margin:auto;
  align-items:start;
}
.footer-name{
  font-size:1.5rem;
}
.footer-role,.footer-publisher{
  color:var(--gold);
  margin-top:.5rem;
  font-size:.8rem;
  letter-spacing:.05em;
}
.footer-nav{
  color:var(--cream);
  font-size:.85rem;
  line-height:1.8;
}

@media (max-width:1100px){
  .album-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-inner{flex-direction:column}
}
@media (max-width:700px){
  .hero{min-height:25rem}
  .hero-inner,main{padding:1.5rem}
  .nav{gap:1rem}
  .album-grid,.catalog-grid{grid-template-columns:1fr}
  .work-card h3,.work-card p{min-height:0}
  .grandfather-art{max-width:100%}
  footer{grid-template-columns:1fr;padding:2rem 1.5rem}
}

.footer-nav a{color:inherit;text-decoration:none}.footer-nav a:hover{color:var(--gold)}


.site-master-header{
  background:#000;
  border-bottom:1px solid #a66b22;
}
.site-master-header-inner{
  position:relative;
  width:min(100%,1024px);
  margin:0 auto;
}
.site-master-header-inner>img{
  display:block;
  width:100%;
  height:auto;
}
.site-hotspot{
  position:absolute;
  top:20%;
  height:55%;
  z-index:5;
}
.site-hotspot.home{left:44.3%;width:6%}
.site-hotspot.music{left:50.5%;width:7%}
.site-hotspot.about{left:58.0%;width:7%}
.site-hotspot.news{left:65.3%;width:7%}
.site-hotspot.contact{left:72.7%;width:9%}
.site-hotspot:focus{
  outline:2px solid #c9913d;
  outline-offset:2px;
}
