.hymy-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-pill);font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;line-height:1.2;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:background .15s,color .15s,border-color .15s}
.hymy-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.hymy-btn--primary{background:var(--burgundy);color:var(--on-burgundy);border-color:var(--burgundy)}
.hymy-btn--primary:hover{filter:brightness(1.08)}
.hymy-btn--secondary{background:transparent;color:var(--teal-deep);border-color:var(--teal-deep)}
.hymy-btn--secondary:hover{background:var(--surface-aqua)}
.hymy-btn--link{background:transparent;color:var(--teal-deep);padding-left:0;padding-right:0;border-color:transparent;text-decoration:underline;text-underline-offset:4px}
.hymy-card{display:flex;flex-direction:column;background:var(--surface-raised);border:1px solid var(--line);border-radius:var(--radius-md);overflow:hidden;color:var(--ink);font-family:var(--font-body);transition:box-shadow .15s}
.hymy-card:hover{box-shadow:var(--shadow-card)}
.hymy-card__media{position:relative;overflow:hidden;aspect-ratio:4/5;background:var(--cream);display:flex;align-items:center;justify-content:center;color:var(--ink-muted);font-size:13px;letter-spacing:1.5px;text-transform:uppercase}
.hymy-card__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.hymy-card__body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}
.hymy-card__name{font-family:var(--font-display);font-size:22px;line-height:1.3;font-weight:600;font-variation-settings:"opsz" 11;margin:0}
.hymy-card__meta{font-size:15px;line-height:1.5;color:var(--ink-muted);margin:0}
.hymy-tag{display:inline-block;align-self:flex-start;margin-top:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;line-height:1.2;background:var(--surface-aqua);color:var(--teal-deep)}
.hymy-tag--passage{background:var(--cream);color:var(--ink)}
.hymy-queue{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);background:var(--surface-aqua);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.6}
.hymy-queue__dot{display:inline-block;vertical-align:middle;width:11px;height:11px;margin:-2px 10px 0 0;border-radius:999px;border:2px solid var(--teal-deep);background:transparent}
.hymy-queue--open .hymy-queue__dot{background:var(--teal-deep)}
.hymy-queue--closed .hymy-queue__dot{border-color:var(--ink-muted)}
.hymy-queue__label{font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--teal-deep);display:block;margin-bottom:2px}
.hymy-queue--closed .hymy-queue__label{color:var(--ink-muted)}
.hymy-queue__text{margin:0}
.hymy-queue__action{margin-left:auto;flex:none}
.hymy-sh{font-family:var(--font-body);color:var(--ink);max-width:640px}
.hymy-sh__eyebrow{display:block;font-size:13px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--teal-deep);margin-bottom:var(--space-2)}
.hymy-sh__title{font-family:var(--font-display);font-size:48px;line-height:1.05;font-weight:600;font-variation-settings:"opsz" 11;margin:0}
.hymy-sh__script{font-family:var(--font-script);font-weight:400;font-size:1.15em;color:var(--teal-deep);margin-left:.15em}
.hymy-sh__lead{font-size:20px;line-height:1.5;color:var(--ink-muted);margin:var(--space-4) 0 0}
