/* Modelo 64 · Ritmo — clases .ri */
.pmc-m-ritmo { min-height: 100vh; margin: 0; background: #110a1c; color: #f5f3ff; }
.ri { --k-ink: #f5f3ff; --k-muted: #d4cdea; --k-line: rgba(245,243,255,.15); --k-accent: var(--pmc-secondary-ink); --k-btn-r: 999px; --k-gap: 1.4rem; --k-q-bg: rgba(255,255,255,.06); --k-q-ink: #f5f3ff; --k-q-border: 1.5px solid rgba(245,243,255,.35); --k-h: var(--pmc-display); --k-h2-s: 1.8rem; --k-h2-w: 400; --k-photo-r: 1rem; }
.ri-head { position: relative; overflow: hidden; display: flex; flex-direction: column; align-items: flex-start; gap: .6rem; padding: 2.4rem 1.2rem 2.2rem; border-radius: 0 0 2rem 2rem; background: linear-gradient(135deg, var(--pmc-grad-a), var(--pmc-grad-b)); color: var(--pmc-on-both); }
.ri-lines { position: absolute; right: -2rem; top: 1rem; display: flex; flex-direction: column; gap: .7rem; transform: rotate(-18deg); }
.ri-lines i { display: block; height: .4rem; border-radius: 1rem; background: currentColor; opacity: .25; }
.ri-lines i:nth-child(1) { width: 9rem; } .ri-lines i:nth-child(2) { width: 13rem; } .ri-lines i:nth-child(3) { width: 7rem; } .ri-lines i:nth-child(4) { width: 11rem; } .ri-lines i:nth-child(5) { width: 5rem; }
.ri-beat { position: relative; margin: 0; font: 700 .85rem var(--pmc-font); letter-spacing: .35em; }
.ri-name { position: relative; font: 400 clamp(2.4rem, 12vw, 3rem)/.98 var(--pmc-display); transform: skewX(-8deg); }
.ri-tagline { position: relative; max-width: 22rem; font-weight: 500; line-height: 1.45; }
.ri-open { position: relative; }
.ri .k-main { min-height: 3.7rem; font-size: 1.1rem; background: #f5f3ff; color: #110a1c; }
.ri .k-tagbox .k-h2 { font-size: 1rem; letter-spacing: .2em; text-transform: uppercase; font-family: var(--pmc-font); font-weight: 700; color: var(--pmc-secondary-ink); }
.ri .k-tags li { border-color: var(--pmc-secondary); font-weight: 600; }
.ri .k-items .k-item { padding: 1rem 1.1rem; margin-bottom: .55rem; border: 0; border-radius: 1.1rem; background: rgba(255,255,255,.06); }
.ri .k-items .k-item:last-child { padding-bottom: 1rem; margin-bottom: 0; }
.ri .k-item-name { font-size: 1.1rem; font-weight: 700; }
.ri .k-price { color: var(--pmc-secondary-ink); font-weight: 800; }
.ri .k-when, .ri .k-reach { padding: 1.2rem; border-radius: 1.1rem; background: rgba(255,255,255,.06); }
.ri .k-qr { border-radius: .9rem; }
.ri .k-sbtn:first-child { background: #f5f3ff; color: #110a1c; border-color: #f5f3ff; }
.ri .k-links a { border-color: rgba(245,243,255,.35); }
.ri-foot a { color: #d4cdea; }
