:root{
  --bg:#FBF3E4; --card:#FFFDFA; --ink:#1B1330;
  --magenta:#E11D74; --cobalt:#1565C0; --marigold:#F7A40B;
  --lime:#7CB518; --turq:#00B5A5; --muted:#6B5E52; --border:#E8DCC4;
  --display:'Fraunces',Georgia,serif; --body:'DM Sans',system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:1080px;margin:0 auto;padding:0 clamp(1.1rem,4vw,2.5rem)}
a{color:var(--magenta);text-decoration:none}
h1,h2,h3{font-family:var(--display);line-height:1.05;letter-spacing:-.01em}
.eyebrow{font-family:var(--body);font-weight:700;text-transform:uppercase;letter-spacing:.16em;font-size:.74rem;color:var(--cobalt);display:flex;align-items:center;gap:.5rem;margin-bottom:.8rem}
.eyebrow::before{content:"◆";color:var(--magenta);font-size:.7em}
.sec{padding:clamp(3rem,7vw,5.5rem) 0}
.sec h2{font-size:clamp(1.8rem,5vw,2.8rem);font-weight:900;margin-bottom:1.6rem}

/* sticker buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--body);font-weight:700;font-size:.98rem;padding:.85rem 1.5rem;border-radius:999px;border:2.5px solid var(--ink);cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}
.btn--mag{background:var(--magenta);color:#fff;box-shadow:4px 4px 0 var(--ink)}
.btn--cobalt{background:transparent;color:var(--ink);box-shadow:4px 4px 0 var(--cobalt);border-color:var(--cobalt)}
.btn--mari{background:var(--marigold);color:var(--ink);box-shadow:4px 4px 0 var(--ink)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.btn--cobalt:hover{box-shadow:6px 6px 0 var(--cobalt)}

/* header */
header{position:sticky;top:0;z-index:50;background:rgba(251,243,228,.92);backdrop-filter:blur(8px);border-bottom:2px solid var(--ink)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0}
.brand{font-family:var(--display);font-weight:900;font-size:1.35rem;letter-spacing:-.02em;color:var(--ink)}
.brand b{color:var(--magenta)}
.nav ul{list-style:none;display:flex;gap:1.4rem;align-items:center}
.nav ul a{color:var(--ink);font-weight:500;font-size:.95rem}
.nav ul a:hover{color:var(--magenta)}
.nav .pill{font-size:.82rem;padding:.5rem 1rem;background:var(--magenta);color:#fff;border-radius:999px;font-weight:700;box-shadow:3px 3px 0 var(--ink)}
.lang{font-weight:700;font-size:.82rem;color:var(--muted);letter-spacing:.05em}
.lang b{color:var(--ink)}
@media(max-width:760px){.nav ul li.hide{display:none}}

/* papel picado bunting */
.bunting{height:26px;width:100%;background-size:48px 26px;background-repeat:repeat-x;
 background-image:
  linear-gradient(135deg,transparent 46%,var(--bg) 47%),
  linear-gradient(-135deg,transparent 46%,var(--bg) 47%),
  repeating-linear-gradient(90deg,var(--magenta) 0 12px,var(--cobalt) 12px 24px,var(--marigold) 24px 36px,var(--turq) 36px 48px);
 border-bottom:2px solid var(--ink)}

/* hero */
.hero{position:relative;background:linear-gradient(118deg,var(--magenta) 0%,#9d1557 42%,var(--cobalt) 100%);color:#fff;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:2.2rem;align-items:center;padding:clamp(2.5rem,6vw,4.5rem) clamp(1.1rem,4vw,2.5rem) clamp(3.5rem,8vw,5.5rem)}
.hero .kick{font-weight:700;text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;opacity:.95;margin-bottom:.7rem}
.hero h1{font-size:clamp(2.6rem,8vw,5rem);font-weight:900;color:#fff;text-shadow:3px 3px 0 rgba(27,19,48,.35)}
.hero p.sub{font-size:clamp(1.02rem,2.2vw,1.25rem);margin:1rem 0 .3rem;max-width:34ch;font-weight:500}
.hero p.sub--en{opacity:.85;font-size:.95rem;margin-bottom:1.6rem}
.hero .cta{display:flex;gap:.8rem;flex-wrap:wrap}
.hero .btn--mag{background:#fff;color:var(--magenta)}
.azulejo{position:relative;border-radius:18px;overflow:hidden;border:4px solid #fff;outline:3px solid var(--cobalt);outline-offset:4px;box-shadow:8px 8px 0 rgba(27,19,48,.3);aspect-ratio:1/1}
.azulejo img{width:100%;height:100%;object-fit:cover;display:block}
.hero .azulejo{aspect-ratio:1/1}
.hero .azulejo img{object-position:center}
.video{position:relative;aspect-ratio:16/9;border:2px solid var(--ink);border-radius:16px;overflow:hidden;box-shadow:6px 6px 0 var(--magenta)}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.nod{display:grid;grid-template-columns:120px 1fr;gap:1.2rem;align-items:center;margin-top:1.8rem;padding:1.1rem 1.2rem;background:var(--bg);border:2px dashed var(--cobalt);border-radius:16px}
.nod img{width:120px;height:120px;object-fit:cover;border-radius:10px;border:2px solid var(--ink)}
@media(max-width:560px){.nod{grid-template-columns:1fr;text-align:center}.nod img{margin:0 auto}}
.hero-cut{position:absolute;left:0;right:0;bottom:-1px;height:40px;background:
 radial-gradient(circle at 16px -6px,transparent 14px,var(--bg) 15px) repeat-x;background-size:32px 40px}
@media(max-width:760px){.hero .wrap{grid-template-columns:1fr;text-align:center}.azulejo{max-width:320px;margin:0 auto;order:-1}.hero .cta{justify-content:center}.hero p.sub{margin-left:auto;margin-right:auto}}

/* color stripe rule */
.stripe{height:8px;background:repeating-linear-gradient(90deg,var(--magenta) 0 34px,var(--marigold) 34px 68px,var(--cobalt) 68px 102px,var(--lime) 102px 136px)}

/* releases */
.featured{display:grid;grid-template-columns:240px 1fr;gap:1.6rem;background:var(--card);border:2px solid var(--ink);border-radius:20px;padding:1.4rem;box-shadow:6px 6px 0 var(--cobalt);align-items:center;margin-bottom:1.6rem}
.featured img{width:100%;border-radius:12px;border:2px solid var(--ink);display:block}
.tag{display:inline-block;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;padding:.3rem .7rem;border-radius:999px;background:var(--marigold);color:var(--ink);border:2px solid var(--ink);margin-bottom:.6rem}
.tag--world{background:var(--lime)}
.featured h3{font-size:1.7rem;font-weight:900;margin-bottom:.2rem}
.featured .ver{color:var(--muted);font-weight:500;margin-bottom:.9rem}
.links{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.6rem}
.links a{font-size:.85rem;font-weight:700;padding:.45rem .9rem;border-radius:999px;background:var(--bg);border:2px solid var(--ink);color:var(--ink)}
.links a:hover{background:var(--magenta);color:#fff}
@media(max-width:560px){.featured{grid-template-columns:1fr}}

/* listen */
.platforms{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.8rem}
.platforms a{display:flex;align-items:center;justify-content:center;padding:1rem;background:var(--card);border:2px solid var(--ink);border-radius:14px;font-weight:700;color:var(--ink);transition:.12s}
.platforms a:nth-child(4n+1):hover{background:var(--cobalt);color:#fff}
.platforms a:nth-child(4n+2):hover{background:var(--turq);color:#fff}
.platforms a:nth-child(4n+3):hover{background:var(--lime);color:var(--ink)}
.platforms a:nth-child(4n):hover{background:var(--marigold);color:var(--ink)}

/* shows */
.shows{background:var(--card);border:2px solid var(--ink);border-left:10px solid var(--cobalt);border-radius:16px;padding:1.6rem;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.shows p{color:var(--muted);font-weight:500}

/* tienda band */
.js-cta-band{border-radius:18px;padding:clamp(1.75rem,4vw,2.75rem);background:linear-gradient(118deg,var(--magenta),var(--cobalt));color:#fff;text-align:center;border:2px solid var(--ink);box-shadow:6px 6px 0 var(--marigold)}
.js-cta-band h2{color:#fff;margin-bottom:.4em}
.js-cta-band p{color:#fff;opacity:.95;max-width:46ch;margin:0 auto 1.3em}
.js-cta-band .btn--mag{background:#fff;color:var(--magenta)}

/* about */
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:2rem;align-items:center;position:relative}
.about .azulejo{outline-color:var(--magenta);box-shadow:8px 8px 0 var(--marigold)}
.about p{margin-bottom:1rem}
.about .es{font-size:1.08rem}
.about .en{color:var(--muted);font-size:.95rem}
@media(max-width:760px){.about{grid-template-columns:1fr}}

/* contact */
.contact{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}
.field label{font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.field input,.field textarea{font:inherit;padding:.7rem .9rem;border:2px solid var(--border);border-radius:10px;background:var(--card)}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--magenta)}
.social a{display:inline-block;margin:.3rem .5rem .3rem 0;font-weight:700;padding:.5rem 1rem;border:2px solid var(--ink);border-radius:999px;color:var(--ink)}
.social a:hover{background:var(--cobalt);color:#fff}
@media(max-width:680px){.contact{grid-template-columns:1fr}}

/* footer */
footer{background:var(--cobalt);color:#fff;margin-top:3rem;border-top:8px solid var(--magenta)}
footer .wrap{padding:2.5rem clamp(1.1rem,4vw,2.5rem);display:flex;flex-wrap:wrap;gap:1.2rem;justify-content:space-between;align-items:center}
footer a{color:var(--marigold)}
footer .chile{font-size:1.4rem}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
