
:root{
  --bg:#f5f1e8;--surface:#ffffff;--surface2:#f0eadf;--text:#182131;--muted:#667085;
  --gold:#c99a3d;--line:#ded7ca;--white:#fff;--shadow:0 18px 50px rgba(34,42,56,.12);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text);line-height:1.55}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1160px,calc(100% - 32px));margin:auto}
.header{position:sticky;top:0;z-index:20;background:rgba(245,241,232,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 0}
.logo{width:220px;max-width:52vw}
.nav{display:flex;gap:20px;color:#465166;font-weight:700;font-size:14px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:13px 18px;font-weight:800;cursor:pointer}
.btn-primary{background:var(--gold);color:#16110a}
.btn-secondary{background:#fff;border:1px solid var(--line);color:#253044}
.hero{padding:74px 0 50px;background:
 radial-gradient(circle at 80% 10%,rgba(201,154,61,.18),transparent 28%),
 linear-gradient(180deg,#f7f3eb 0%,#f5f1e8 100%)}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.eyebrow{color:var(--gold);font-size:13px;text-transform:uppercase;letter-spacing:.14em;font-weight:900}
h1{font-size:clamp(42px,7vw,78px);line-height:.98;margin:14px 0 20px;letter-spacing:-.045em}
h2{font-size:clamp(30px,4vw,46px);line-height:1.05;margin:0 0 16px}
h3{margin:0 0 10px}
.lead{font-size:20px;color:var(--muted);max-width:660px}
.hero-card{min-height:420px;border-radius:32px;padding:30px;display:flex;align-items:flex-end;box-shadow:var(--shadow);background:
 linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.72)),
 url('assets/rod-hanna-hero.jpg') center/cover}
.hero-card .glass{background:rgba(8,12,20,.78);backdrop-filter:blur(10px);padding:20px;border:1px solid rgba(255,255,255,.13);border-radius:22px;width:100%}
.price{font-size:28px;font-weight:900;color:var(--gold)}
.section{padding:68px 0}
.section-alt{background:#ece6da}
.filters{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;margin:26px 0 30px}
select,input{width:100%;background:#fff;color:var(--text);border:1px solid var(--line);border-radius:14px;padding:14px;font:inherit}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:24px;overflow:hidden;transition:.2s;box-shadow:0 12px 30px rgba(34,42,56,.08)}
.card:hover{transform:translateY(-4px);border-color:#cdbb9c}
.card-media{aspect-ratio:16/10;background:linear-gradient(135deg,#d9e0e9,#e8dcc7);display:flex;align-items:flex-end;padding:18px;position:relative;overflow:hidden}
.card-media.real{background:url('assets/rod-hanna-show.jpg') center/cover}
.card-media.real:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(0,0,0,.78))}
.badge{position:relative;z-index:2;background:var(--gold);color:#181006;padding:7px 10px;border-radius:999px;font-weight:900;font-size:12px}
.placeholder-title{font-size:34px;font-weight:900;opacity:.9}
.card-body{padding:20px}
.meta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}
.tag{font-size:12px;color:#4c5668;border:1px solid var(--line);padding:6px 9px;border-radius:999px;background:#fbf8f2}
.card-price{font-size:20px;font-weight:900;color:var(--gold);margin:8px 0 16px}
.card-actions{display:flex;gap:10px;flex-wrap:wrap}
.note{font-size:13px;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}
.step{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:22px}
.num{font-size:13px;color:var(--gold);font-weight:900;letter-spacing:.1em}
.footer{border-top:1px solid var(--line);padding:34px 0;color:var(--muted);background:#efe9de}
.hidden{display:none!important}

/* Artist page */
.artist-hero{position:relative;min-height:68vh;display:flex;align-items:flex-end;background:
 linear-gradient(180deg,rgba(5,8,14,.05),rgba(5,8,14,.92)),
 url('../../assets/rod-hanna-hero.jpg') center/cover}
.artist-hero .container{padding-bottom:58px}
.artist-title{font-size:clamp(48px,8vw,92px);margin:8px 0;letter-spacing:-.05em}
.artist-sub{font-size:20px;color:#eef1f6;max-width:760px}
.artist-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:start}
.info-box,.media-box{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:26px}
.gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.gallery img{width:100%;height:260px;object-fit:cover;border-radius:18px}
.video-link{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--surface2);border:1px solid var(--line);border-radius:18px;padding:18px;margin-top:12px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}
.kpi{background:var(--surface2);border-radius:16px;padding:16px}
.kpi strong{display:block;font-size:20px;color:var(--gold)}
.warning{margin-top:18px;padding:14px 16px;border-radius:14px;background:#1b1f29;border:1px solid #333c4c;color:#5f6877;font-size:13px}

@media(max-width:860px){
  .nav{display:none}
  .hero-grid,.artist-panel{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .filters{grid-template-columns:1fr}
}
@media(max-width:560px){
  .grid,.steps,.gallery,.kpis{grid-template-columns:1fr}
  .hero{padding-top:44px}
  .hero-card{min-height:350px}
  .gallery img{height:220px}
}


/* v0.4 — identidade inspirada em palco/luz da Nova Digital */
:root{--purple:#7b78f2;--purple-deep:#5c55d8;--magenta:#d83fc5;--ink:#15131d}
.header{background:rgba(255,255,255,.94);border-bottom:1px solid rgba(92,85,216,.15)}
.logo{width:118px;max-height:76px;object-fit:contain}
.nav{color:#29263a}
.btn-primary{background:linear-gradient(135deg,var(--purple-deep),var(--magenta));color:white;box-shadow:0 10px 24px rgba(92,85,216,.25)}
.eyebrow{color:var(--purple-deep)}
.hero-stage{position:relative;min-height:650px;padding:0;background-image:url('rod-hanna-hero-stage.jpg');background-position:center 42%;background-size:cover;display:flex;align-items:center;isolation:isolate}
.hero-stage:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.86) 38%,rgba(246,241,255,.61) 63%,rgba(123,120,242,.25) 100%)}
.hero-stage:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(123,120,242,.10))}
.hero-stage-inner{width:min(1160px,calc(100% - 32px));padding:76px 0}
.hero-copy{max-width:690px}
.hero-copy h1{color:var(--ink);text-shadow:0 2px 20px rgba(255,255,255,.7)}
.hero-copy .lead{color:#393449;max-width:630px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}
.featured-link{display:flex;flex-direction:column;padding:8px 0;color:#272238}
.featured-link span{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--purple-deep);font-weight:900}
.featured-link strong{font-size:15px}
.section-alt{background:#f0efff}
.badge{background:var(--purple);color:#fff}
.card-price,.price,.num,.kpi strong{color:var(--purple-deep)}
.card:hover{border-color:#aaa6f8}
.tag{background:#f7f6ff;border-color:#dddafe}
@media(max-width:860px){.hero-stage{min-height:590px;background-position:62% center}.hero-stage:before{background:linear-gradient(90deg,rgba(255,255,255,.95),rgba(255,255,255,.80) 72%,rgba(123,120,242,.22))}}
@media(max-width:560px){.hero-stage{min-height:620px;background-position:58% center}.hero-stage:before{background:linear-gradient(180deg,rgba(255,255,255,.90) 0%,rgba(255,255,255,.80) 62%,rgba(123,120,242,.28) 100%)}.hero-stage-inner{padding:58px 0}.hero-copy .lead{font-size:18px}}

/* v0.6 — fotos genéricas no catálogo */
.card-media.generic{
  background-position:center;
  background-size:cover;
}
.card-media.generic:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.02) 35%,rgba(0,0,0,.42) 100%);
}
.card-media.generic .badge{position:relative;z-index:2}
