:root{--font-heading:"Bebas Neue", sans-serif;--font-body:"Source Sans 3", sans-serif;--bg:#fff;--surface:#fff;--surface-strong:#f5f5f5;--ink:#0f0f11;--muted:#52545a;--accent:#b42318;--accent-2:#1f2937;--line:#e5e7eb;--ok:#1f7a45;--accent-indigo:#273e9f;--accent-amber:#a44e1f;--accent-olive:#45602c}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);background:linear-gradient(#fff 0%,#fcfcfd 100%);line-height:1.5}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}a{color:inherit}.skip-link{z-index:999;color:#000;background:#fff;padding:.5rem .75rem;position:absolute;top:0;left:-9999px}.skip-link:focus{top:.5rem;left:.5rem}.shell{width:min(1060px,100% - 2.5rem);margin-inline:auto}.site-header{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffed;position:sticky;top:0}.site-header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:54px;display:flex}.brand-mark{color:var(--ink);align-items:center;gap:0;text-decoration:none;display:flex}.brand-mark:hover,.brand-mark:focus-visible{opacity:.8;outline:none}.brand-logo-shell{align-items:center;height:clamp(2.1rem,4.8vw,2.65rem);display:inline-flex}.brand-logo-svg{width:auto;height:100%;line-height:0;display:block}.brand-logo-svg svg{width:auto;height:100%;display:block}.brand-text{display:none}.site-nav{flex-wrap:wrap;gap:.2rem;display:flex}.site-nav-link{color:#2a2c31;border:0;border-radius:0;padding:.2rem .45rem;font-size:.93rem;text-decoration:none}.site-nav-link:hover,.site-nav-link:focus-visible{color:var(--ink);text-underline-offset:.2rem;background:0 0;outline:none;text-decoration:underline}.header-social{align-items:center;gap:.15rem;display:flex}.header-social-link{width:2rem;height:2rem;color:var(--ink);opacity:.5;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;transition:opacity .18s,color .18s,background .18s;display:flex}.header-social-link:hover,.header-social-link:focus-visible{opacity:1;background:color-mix(in srgb, currentColor 10%, transparent);outline:none}.header-social-link[data-network=spotify]:hover,.header-social-link[data-network=spotify]:focus-visible{color:#1db954}.header-social-link[data-network=threads]:hover,.header-social-link[data-network=threads]:focus-visible{color:#101010;opacity:.85}.header-social-link[data-network=tiktok]:hover,.header-social-link[data-network=tiktok]:focus-visible{color:#fe2c55}.header-social-link[data-network=instagram]:hover,.header-social-link[data-network=instagram]:focus-visible{color:#c13584}.page{padding-block:1.15rem 3.6rem;animation:.36s ease-out both rise-in}.page>section+section{margin-top:1.1rem}.section-title{justify-content:space-between;align-items:baseline;gap:.75rem;margin:0 0 1.15rem;display:flex}.section-title h2,.section-title h3,.section-title h1{font-family:var(--font-heading);letter-spacing:.02em;margin:0;font-size:clamp(1.55rem,3.2vw,2rem);line-height:1}.section-title a{color:var(--accent);letter-spacing:.01em;font-size:.9rem}.grid-hero{grid-template-columns:2fr 1fr;gap:1.4rem;display:grid}.hero-main,.hero-rail,.section-block,.newsletter-panel,.ad-slot{background:var(--surface)}.hero-main{align-items:stretch;min-height:380px;padding:0;display:flex;overflow:hidden}.hero-container{flex-direction:column;width:100%;display:flex;position:relative}.hero-media{aspect-ratio:auto;z-index:1;width:100%;height:100%;margin:0;position:absolute;top:0;left:0;overflow:hidden}.hero-media img{object-fit:cover;filter:saturate(1.03)contrast(1.03);width:100%;height:100%}.hero-media-fallback{background:linear-gradient(120deg,#f4f4f6 0%,#fff 55%),repeating-linear-gradient(90deg,#b4231814 0 1px,#0000 1px 28px)}.hero-overlay{z-index:2;background:linear-gradient(#0003 0%,#00000085 60%,#000000b8 100%);flex-direction:column;justify-content:flex-end;min-height:40%;padding:2rem 1.5rem 1.5rem;display:flex;position:absolute;bottom:0;left:0;right:0}.hero-content{color:#fff}.hero-content .kicker{background:var(--accent);color:#fff;letter-spacing:.05em;text-transform:uppercase;border:none;border-radius:999px;padding:.15rem .6rem;font-size:.82rem;display:inline-block}.hero-content .hero-eyebrow{letter-spacing:.05em;text-transform:uppercase;color:#ffffffd9;margin:.5rem 0 0;font-size:.84rem}.hero-content h1{font-family:var(--font-heading);color:#fff;text-shadow:0 2px 8px #0006;margin:.7rem 0 .6rem;font-size:clamp(2rem,5vw,3.2rem);line-height:1}.hero-content>p:not(.hero-meta):not(.hero-link){color:#ffffffe6;max-width:55ch;margin:0;font-size:.95rem;line-height:1.4}.hero-content .hero-meta{letter-spacing:.02em;text-transform:uppercase;color:#ffffffbf;margin-top:.8rem;font-size:.82rem}.hero-link{color:#fff;border-bottom:2px solid #fff;margin-top:1rem;padding-bottom:.15rem;font-weight:500;text-decoration:none;transition:opacity .3s;display:inline-block}.hero-link:hover,.hero-link:focus-visible{opacity:.8}.hero-rail{border-left:1px solid var(--line);padding:.2rem 0 0 1.15rem}.hero-rail .section-title h2{font-size:clamp(1.35rem,2.8vw,1.65rem)}.hero-rail .section-title{margin-bottom:.7rem}.hero-rail ul,.latest-list,.thematic-list,.discovery-list,.quick-list{margin:0;padding:0;list-style:none}.hero-rail li+li,.latest-list li+li,.thematic-list li+li,.discovery-list li+li,.quick-list li+li{margin-top:.95rem}.editorial-teaser{border-bottom:1px solid var(--line);background:0 0;padding:.95rem 0;text-decoration:none;display:block}.editorial-teaser:hover,.editorial-teaser:focus-visible{color:var(--accent);outline:none}.editorial-teaser h3,.editorial-teaser h4{margin:0;line-height:1.15}.editorial-teaser p{color:var(--muted);max-width:60ch;margin:.45rem 0 0;line-height:1.45}.teaser-meta{letter-spacing:.03em;text-transform:uppercase;color:#6b6e75;margin-bottom:.3rem;font-size:.78rem;display:inline-block}.inline-note{color:var(--muted);padding:.4rem 0;font-size:.94rem}.card-meta{color:var(--muted);margin-top:.4rem;font-size:.85rem}.block-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem;margin-top:1.7rem;display:grid}.section-block{border-top:2px solid var(--ink);padding:1.45rem 0 .7rem}.section-latest .latest-list li:nth-child(odd) .editorial-teaser{padding-right:1.2rem}.section-latest .latest-list li:nth-child(2n) .editorial-teaser{padding-left:1.2rem}.thematic-block{border-top-width:1px}.thematic-block:first-child{border-top-color:var(--accent)}.thematic-block:nth-child(2){border-top-color:var(--accent-indigo)}.thematic-block:nth-child(3){border-top-color:var(--accent-olive)}.section-block .section-title h2,.section-block .section-title h3{font-size:clamp(1.45rem,2.9vw,1.95rem)}.section-block h3{font-family:var(--font-heading);margin:0 0 .65rem;font-size:clamp(1.4rem,2.8vw,1.8rem);line-height:1}.playlists-grid,.agenda-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.95rem;display:grid}.section-playlists .section-title a{color:var(--accent-indigo)}.playlist-teaser h3{font-family:var(--font-heading);letter-spacing:.02em;font-size:clamp(1.2rem,2.2vw,1.6rem)}.section-discovery .section-title a{color:var(--accent-olive)}.section-discovery .editorial-teaser{padding-block:1.1rem}.section-agenda{border-top-color:var(--accent-amber)}.section-agenda .section-title a{color:var(--accent-amber)}.agenda-city-filter{flex-wrap:wrap;gap:.42rem;margin:-.2rem 0 .95rem;display:flex}.city-pill{letter-spacing:.03em;text-transform:uppercase;color:#3a3d45;background:#f5f6f8;border-radius:999px;align-items:center;min-height:30px;padding:0 .62rem;font-size:.76rem;display:inline-flex}.city-pill.active{color:#7a2f16;background:#f3dfd3}.agenda-shell{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1rem;display:grid}.agenda-spotlight{background:linear-gradient(#fff 0%,#fffaf6 100%);border-left:3px solid #a44e1f;padding:1rem .95rem .95rem;text-decoration:none;display:block}.agenda-tag{color:#7b3418;letter-spacing:.04em;text-transform:uppercase;background:#fde9dd;border-radius:999px;align-items:center;min-height:26px;padding:0 .58rem;font-size:.72rem;display:inline-flex}.agenda-spotlight h3{font-family:var(--font-heading);margin:.68rem 0 .38rem;font-size:clamp(1.5rem,3vw,2.1rem);line-height:.95}.agenda-spotlight p{color:#535862;margin:0}.agenda-date{color:#7b3418;letter-spacing:.04em;text-transform:uppercase;margin-top:.85rem;font-size:.83rem;display:inline-block}.agenda-grid{grid-template-columns:1fr;gap:0}.agenda-grid .editorial-teaser{padding-block:.78rem}.badge,.sponsored-badge{border-radius:999px;align-items:center;padding:.1rem .45rem;font-size:.75rem;display:inline-flex}.badge{color:#134438;background:#dce8e1}.sponsored-badge{color:#8a321a;background:#f3dfd3}.newsletter-panel{border-top:2px solid var(--ink);background:linear-gradient(#fff 0%,#fcfcfd 100%),radial-gradient(circle at 90% 0,#273e9f12,#0000 50%);margin-top:1.7rem;padding:1.45rem 0 1.05rem}.newsletter-panel h3{font-family:var(--font-heading);margin:0;font-size:clamp(1.5rem,3vw,2rem)}.newsletter-panel p{color:var(--muted);margin:.3rem 0 .8rem}.newsletter-form{grid-template-columns:1fr auto;gap:.55rem;display:grid}.newsletter-form input,.newsletter-form button{border:1px solid var(--line);min-height:44px;font:inherit;border-radius:0}.newsletter-form input{background:#fff;padding:.5rem .7rem}.newsletter-form button{background:var(--accent);color:#fff;border-color:var(--accent);cursor:pointer;padding:.5rem .95rem}.newsletter-form button:disabled{opacity:.65;cursor:not-allowed}.form-note{margin-top:.45rem;font-size:.9rem}.form-note.ok{color:var(--ok)}.form-note.error{color:#8a1a1a}.ad-slot{border-top:1px solid var(--line);margin-top:1.3rem;padding:.9rem 0}.ad-slot p{color:var(--muted);margin:0}.ad-slot-link{padding:.6rem 0;text-decoration:none;display:block}.ad-slot-link h3{font-family:var(--font-heading);margin:.4rem 0 0;font-size:clamp(1.35rem,2.5vw,1.75rem);line-height:1}.ad-slot-link p{max-width:64ch;margin-top:.5rem;line-height:1.45}.slot-cta{letter-spacing:.04em;text-transform:uppercase;border-bottom:1px solid;margin-top:.7rem;padding-bottom:.1rem;font-size:.84rem;display:inline-block}.ad-slot-link.premium{border-left:3px solid #111113;padding-left:.85rem}.ad-slot-link.intermediate{border-left:3px solid #4b5563;padding-left:.85rem}.ad-slot-link.remnant{border-left:3px solid #9ca3af;padding-left:.85rem}.article-outer{max-width:1140px;padding-inline:var(--page-pad,1.25rem);margin-inline:auto;padding-bottom:4rem}.article-columns{grid-template-columns:1fr 288px;align-items:start;gap:3rem;display:grid}.article-main{min-width:0}@media (max-width:860px){.article-columns{grid-template-columns:1fr;gap:0}}.article-sidebar{flex-direction:column;gap:0;display:flex;position:sticky;top:1.5rem}@media (max-width:860px){.article-sidebar{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:2rem;position:static}}.sidebar-module{border-bottom:1px solid var(--line);padding:1.1rem 0 1.25rem}.sidebar-module:last-child{border-bottom:none}.sidebar-module-title{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 .85rem;font-size:.78rem;font-weight:700}.sidebar-article-list{flex-direction:column;margin:0 0 .75rem;padding:0;list-style:none;display:flex}.sidebar-article-link{border-bottom:1px solid var(--line);flex-direction:column;gap:.15rem;padding:.55rem 0;text-decoration:none;transition:color .15s;display:flex}.sidebar-article-link:last-child{border-bottom:none}.sidebar-article-link:hover .sidebar-article-title{color:var(--accent)}.sidebar-article-title{color:var(--fg);font-size:.925rem;font-weight:600;line-height:1.35;transition:color .15s}.sidebar-article-date{color:var(--muted);font-size:.78rem}.sidebar-more-link{color:var(--accent);letter-spacing:.01em;font-size:.82rem;text-decoration:none;display:inline-block}.sidebar-more-link:hover{text-decoration:underline}.sidebar-related-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.sidebar-related-link{align-items:baseline;gap:.4rem;padding:.3rem 0;text-decoration:none;transition:color .15s;display:flex}.sidebar-related-link:hover{color:var(--accent)}.sidebar-related-type{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);flex-shrink:0;font-size:.7rem;font-weight:700}.sidebar-related-name{color:var(--fg);font-size:.875rem;line-height:1.3}.newsletter-inline{background:var(--surface,#f8f9fb);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;margin:2.25rem 0;padding:1.5rem 1.75rem}.newsletter-inline--compact{border:none;border-top:1px solid var(--line);background:0 0;border-radius:0;margin:0;padding:1.1rem 0 1.25rem}.newsletter-inline--success{text-align:center}.newsletter-confirm{color:var(--muted);margin:0;font-size:.95rem}.newsletter-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 .3rem;font-size:.73rem;font-weight:700}.newsletter-headline{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--fg);margin:0 0 .4rem;font-size:1.35rem;line-height:1.1}.newsletter-inline--compact .newsletter-headline{letter-spacing:0;font-family:inherit;font-size:.925rem;font-weight:600}.newsletter-subline{color:var(--muted);margin:0 0 .95rem;font-size:.94rem;line-height:1.55}.newsletter-form{flex-wrap:wrap;gap:.5rem;display:flex}@media (max-width:540px){.newsletter-form{flex-direction:column}}.newsletter-input{border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:6px;outline:none;flex:160px;min-width:0;padding:.55rem .85rem;font-size:.9rem;transition:border-color .15s}.newsletter-input:focus{border-color:var(--accent)}.newsletter-submit{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.55rem 1.15rem;font-size:.9rem;font-weight:600;transition:opacity .15s}.newsletter-submit:disabled{opacity:.6;cursor:default}.newsletter-submit:not(:disabled):hover{opacity:.88}.newsletter-error{color:var(--error,#d9534f);margin:.5rem 0 0;font-size:.85rem}.article-layout{max-width:780px;margin-inline:auto;padding-bottom:3rem}.article-hero{background:var(--line);border-radius:10px;margin:0 0 1.75rem;overflow:hidden}.article-hero img{object-fit:cover;width:100%;height:clamp(200px,44vw,460px);display:block}.article-header{border-bottom:1px solid var(--line);margin-bottom:1.85rem;padding-bottom:1.25rem}.article-title{font-family:var(--font-heading);letter-spacing:-.01em;margin:.45rem 0 .8rem;font-size:clamp(2.1rem,5vw,3.2rem);line-height:.95}.article-lead{color:var(--fg);margin:0 0 .85rem;font-size:1.14rem;font-weight:400;line-height:1.62}.article-byline{color:var(--muted);letter-spacing:.01em;margin:0;font-size:.875rem}.article-byline strong{color:var(--fg);font-weight:600}.article-body{font-size:1.07rem;line-height:1.72}.article-block+.article-block{margin-top:1.85rem}.article-block-title{font-family:var(--font-heading);letter-spacing:-.005em;margin:0 0 .7rem;font-size:clamp(1.45rem,2.6vw,1.85rem);line-height:1}.article-body p{margin:0 0 .95rem}.article-body strong{font-weight:700}.article-inline-link{color:var(--accent);text-underline-offset:.12rem;text-decoration:underline;text-decoration-thickness:1px}.article-block--image{margin:1.5rem 0}.article-block--image img{object-fit:cover;border-radius:7px;width:100%;height:auto;display:block}.article-block--inline{max-width:31rem}.article-image-caption{color:var(--muted);margin-top:.55rem;font-size:.875rem;line-height:1.45}.article-embed-frame{aspect-ratio:16/9;background:#0f0f11;border-radius:8px;width:100%;position:relative;overflow:hidden}.article-embed-frame iframe{border:0;width:100%;height:100%;position:absolute;inset:0}.article-block--spotify{margin:1.5rem 0}.article-spotify-frame{border-radius:12px;width:100%;overflow:hidden}.article-spotify-frame--compact{height:152px}.article-spotify-frame--expanded{height:352px}.article-spotify-frame iframe{border:0;width:100%;height:100%;display:block}.article-footer-nav{border-top:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-top:2rem;padding-top:1.1rem;display:flex}.article-footer-nav a{border:1px solid var(--line);border-radius:999px;padding:.28rem .75rem;font-size:.9rem;text-decoration:none;transition:border-color .15s,color .15s}.article-footer-nav a:hover{border-color:var(--accent);color:var(--accent)}.article-hero-full{margin:0 calc(-1 * var(--page-pad,1.25rem)) 2.5rem;background:var(--surface-strong);border-radius:0;display:block;overflow:hidden}.article-hero-full img{object-fit:cover;width:100%;height:clamp(280px,56vw,580px);display:block}@media (max-width:640px){.article-hero-full{margin-left:calc(-1 * var(--page-pad,1.25rem));margin-right:calc(-1 * var(--page-pad,1.25rem));border-radius:0;margin-bottom:2rem}}.article-meta-top{align-items:center;gap:1rem;margin-bottom:.8rem;font-size:.85rem;display:flex}.article-category{background:var(--accent);color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:3px;padding:.35rem .7rem;font-size:.75rem;font-weight:600;display:inline-block}.article-date{color:var(--muted);letter-spacing:.01em;font-size:.875rem}.article-related-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:2.8rem;padding-top:2rem;padding-bottom:1.8rem}.article-related-title{font-family:var(--font-heading);letter-spacing:-.005em;margin:0 0 1.2rem;font-size:clamp(1.35rem,2.4vw,1.75rem);line-height:1}.article-related-rail{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.article-related-item{background:var(--surface-strong);border-radius:6px;flex-direction:column;gap:.45rem;padding:1rem 1.1rem;text-decoration:none;transition:background-color .2s,transform .2s;display:flex}.article-related-item:hover{background-color:#efefef;transform:translateY(-2px)}.article-related-type{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-size:.7rem;font-weight:700}.article-related-name{color:var(--ink);font-size:.95rem;font-weight:600}.article-related-arrow{color:var(--accent);margin-top:.2rem;font-size:.85rem}.arc-section{border-top:1px solid var(--line);margin-top:2.4rem;padding-top:1.6rem}.arc-section__title{font-family:var(--font-heading);letter-spacing:-.005em;margin:0 0 1rem;font-size:clamp(1.2rem,2vw,1.5rem);line-height:1}.arc-row{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-wrap:nowrap;gap:.65rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.arc-row::-webkit-scrollbar{height:4px}.arc-row::-webkit-scrollbar-track{background:0 0}.arc-row::-webkit-scrollbar-thumb{background:var(--line);border-radius:2px}.arc-chip{background:var(--surface-strong);border-radius:6px;flex-direction:column;flex:0 0 96px;width:96px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:flex;overflow:hidden}.arc-chip:hover{transform:translateY(-2px);box-shadow:0 4px 14px #0000001a}.arc-chip__img-wrap{background:var(--line);flex-shrink:0;width:96px;height:96px;overflow:hidden}.arc-chip__img{object-fit:cover;width:100%;height:100%;display:block}.arc-chip__placeholder{background:linear-gradient(135deg, var(--line) 0%, var(--surface-strong) 100%);width:100%;height:100%}.arc-chip__body{flex-direction:column;gap:.1rem;padding:.4rem .45rem .5rem;display:flex}.arc-chip__type{text-transform:uppercase;letter-spacing:.06em;color:var(--accent);font-size:.6rem;font-weight:700}.arc-chip__name{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;font-weight:600;line-height:1.25;display:-webkit-box;overflow:hidden}.article-footer-nav{border-top:none;margin-top:2.5rem;padding-top:0;display:block}.article-footer-nav-title{font-family:var(--font-heading);letter-spacing:-.005em;margin:0 0 1.1rem;font-size:clamp(1.3rem,2.2vw,1.65rem);line-height:1}.article-footer-nav-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.article-footer-nav-list li{margin:0}.article-footer-nav-list a{border:1px solid var(--line);color:var(--ink);border-radius:4px;padding:.65rem .95rem;font-size:.95rem;font-weight:500;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:block}.article-footer-nav-list a:hover{border-color:var(--accent);color:var(--accent);background-color:#b423180a}.sidebar-article-grid{flex-direction:column;gap:1rem;margin:0 0 1rem;padding:0;list-style:none;display:flex}.sidebar-article-card{flex-direction:column;gap:.6rem;display:flex}.sidebar-article-image-link{background:var(--surface-strong);aspect-ratio:16/9;border-radius:5px;text-decoration:none;display:block;overflow:hidden}.sidebar-article-image{object-fit:cover;width:100%;height:100%;transition:transform .2s;display:block}.sidebar-article-image-link:hover .sidebar-article-image{transform:scale(1.05)}.sidebar-article-content{padding:0 .1rem}.sidebar-article-title-link{color:inherit;text-decoration:none}.sidebar-article-title{color:var(--ink);margin:0;font-size:.95rem;font-weight:600;line-height:1.35;transition:color .15s}.sidebar-article-title-link:hover .sidebar-article-title{color:var(--accent)}.sidebar-article-date{color:var(--muted);margin-top:.25rem;font-size:.75rem;display:block}.sidebar-cta-link{color:var(--accent);letter-spacing:.01em;font-size:.85rem;font-weight:500;text-decoration:none;transition:opacity .15s;display:inline-block}.sidebar-cta-link:hover{opacity:.8}.inline-links{flex-wrap:wrap;gap:.45rem;margin:1rem 0;display:flex}.inline-links a{border:1px solid var(--line);border-radius:999px;padding:.28rem .7rem;text-decoration:none}.site-footer{border-top:1px solid var(--line);background:linear-gradient(#f5f5f8 0%,#fbfbfd 58%,#fff 100%),repeating-linear-gradient(90deg,#b4231808 0 1px,#0000 1px 28px);margin-top:2rem}.site-footer-inner{grid-template-columns:minmax(0,1.35fr) repeat(3,minmax(170px,1fr));gap:1.4rem;padding-block:2.2rem 1.4rem;display:grid}.site-footer-brand{flex-direction:column;gap:.65rem;display:flex}.footer-brand-link{opacity:.82;align-items:center;transition:opacity .2s;display:inline-flex}.footer-brand-link:hover,.footer-brand-link:focus-visible{opacity:1}.footer-tagline{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;max-width:26ch;margin:0;font-size:.84rem}.footer-lead{color:#444851;max-width:48ch;margin:0;font-size:.95rem;line-height:1.65}.footer-actions{flex-wrap:wrap;gap:.65rem .85rem;margin-top:.2rem;display:flex}.footer-primary-link,.footer-secondary-link{align-items:center;min-height:40px;font-size:.88rem;text-decoration:none;display:inline-flex}.footer-primary-link{background:var(--ink);color:#fff;padding:0 .9rem}.footer-secondary-link{color:var(--accent-indigo);border-bottom:1px solid #0000;padding:0 .2rem}.footer-secondary-link:hover,.footer-secondary-link:focus-visible{border-bottom-color:var(--accent-indigo)}.footer-social{gap:1rem;margin-top:1rem;display:flex}.footer-social a{color:var(--ink);opacity:.55;justify-content:center;align-items:center;transition:opacity .15s;display:flex}.footer-social a:hover,.footer-social a:focus-visible{opacity:1}.footer-column-nav{align-content:start;gap:.7rem;display:grid}.footer-column-title{font-family:var(--font-heading);letter-spacing:.03em;text-transform:uppercase;margin:0;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1}.footer-link-list{gap:.5rem;display:grid}.footer-link-list a{color:var(--muted);font-size:.9rem;line-height:1.35;text-decoration:none}.footer-link-list a:hover,.footer-link-list a:focus-visible,.footer-primary-link:hover,.footer-primary-link:focus-visible{color:var(--ink);text-underline-offset:.18rem;text-decoration:underline}.footer-primary-link:hover,.footer-primary-link:focus-visible{color:#fff;opacity:.93;text-decoration:none}.site-footer-bottom{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding-block:.85rem 1.1rem;display:flex}.footer-copyright{color:#9095a0;max-width:72ch;margin:0;font-size:.8rem}.footer-legal-nav{flex-wrap:wrap;gap:.4rem 1rem;display:flex}.footer-legal-nav a{color:#9095a0;font-size:.8rem;text-decoration:none}.footer-legal-nav a:hover,.footer-legal-nav a:focus-visible{color:var(--accent);text-underline-offset:.15rem;text-decoration:underline}@keyframes rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.grid-hero,.block-grid,.playlists-grid,.agenda-grid,.agenda-shell{grid-template-columns:1fr}.site-header-inner{min-height:56px}.site-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.newsletter-form{grid-template-columns:1fr}.page{padding-block:.9rem 2.6rem}.hero-main{aspect-ratio:16/9;min-height:0;overflow:hidden}.hero-container{height:100%}.hero-overlay{min-height:35%;padding:1.5rem 1rem 1rem}.hero-content h1{font-size:clamp(1.5rem,4vw,2.2rem)}.section-latest .latest-list li:nth-child(odd) .editorial-teaser,.section-latest .latest-list li:nth-child(2n) .editorial-teaser{padding-inline:0}.ad-slot-link{padding:.45rem 0}}@media (max-width:640px){.site-footer-inner{grid-template-columns:1fr}.site-footer-bottom{align-items:flex-start}}.public-breadcrumbs{color:var(--muted);margin:0 0 1.15rem;font-size:.84rem}.public-breadcrumbs ol{flex-wrap:wrap;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}.public-breadcrumbs li{align-items:center;gap:.4rem;display:inline-flex}.public-breadcrumbs li:not(:last-child):after{content:"/";color:#9095a0}.public-breadcrumbs a{color:inherit;text-decoration:none}.public-breadcrumbs a:hover,.public-breadcrumbs a:focus-visible{color:var(--accent);text-underline-offset:.15rem;text-decoration:underline}.public-ad-slot{border:1px solid var(--line);background:linear-gradient(#f8f1eb 0%,#fffdfb 100%);margin:1.6rem 0}.public-ad-slot-link{color:inherit;gap:.5rem;padding:1rem 1.1rem;text-decoration:none;display:grid}.public-ad-slot--wide .public-ad-slot-link{grid-template-columns:minmax(0,1fr) auto;align-items:center}.public-ad-slot-pill{text-transform:uppercase;letter-spacing:.06em;color:#6d4a2d;background:#ffffffbd;border:1px solid #0000002e;width:-moz-fit-content;width:fit-content;padding:.16rem .45rem;font-size:.72rem;display:inline-block}.public-ad-slot h2{font-family:var(--font-heading);margin:.18rem 0 0;font-size:clamp(1.12rem,2vw,1.45rem);line-height:1}.public-ad-slot p{color:#5e626b;max-width:62ch;margin:.35rem 0 0;line-height:1.55}.public-ad-slot-link:hover h2,.public-ad-slot-link:focus-visible h2{color:var(--accent)}.public-faq-block{margin-top:2rem}.public-faq-list{gap:.8rem;margin-top:.95rem;display:grid}.public-faq-item{border-top:1px solid var(--line);padding-top:.8rem}.public-faq-item summary{cursor:pointer;font-family:var(--font-heading);font-size:1.02rem;list-style:none}.public-faq-item summary::-webkit-details-marker{display:none}.public-faq-item p{color:var(--muted);max-width:70ch;margin:.6rem 0 0;line-height:1.65}.editorial-continuation{border-top:2px solid var(--ink);background:var(--surface-strong);gap:1rem;margin-top:2rem;padding:1.15rem 1.1rem;display:grid}.editorial-continuation h2{font-family:var(--font-heading);margin:0;font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:1}.editorial-continuation p{color:var(--muted);max-width:70ch;margin:.5rem 0 0;line-height:1.6}.editorial-continuation ul{flex-wrap:wrap;gap:.55rem;margin:0;padding:0;list-style:none;display:flex}.editorial-continuation a{border:1px solid var(--line);color:inherit;background:#fff;padding:.34rem .65rem;text-decoration:none;display:inline-block}.editorial-continuation a:hover,.editorial-continuation a:focus-visible{border-color:var(--accent);color:var(--accent)}.entity-detail-slot{margin-top:1.8rem}@media (max-width:860px){.public-ad-slot--wide .public-ad-slot-link{grid-template-columns:1fr}}.entity-page{padding-top:1.8rem}.entity-intro{max-width:72ch;margin-bottom:2rem}.entity-intro h1,.entity-detail-header h1{font-family:var(--font-heading);margin:0;font-size:clamp(2.2rem,6vw,3.8rem);line-height:.95}.entity-intro p,.entity-lead{color:var(--muted);max-width:62ch;margin:.9rem 0 0;font-size:1.08rem}.entity-tagline{color:var(--accent,#b42318);letter-spacing:.01em;margin:.5rem 0 0;font-size:.95rem;font-weight:600}.artists-hub-ranking-tagline{color:var(--muted);margin:0;font-size:.8rem;font-style:italic}.entity-list{margin:0;padding:0;list-style:none}.entity-list-item{border-top:1px solid var(--line);grid-template-columns:220px minmax(0,1fr);gap:.95rem;padding:1rem 0;display:grid}.entity-list-item:last-child{border-bottom:1px solid var(--line)}.entity-thumb-link{display:block}.entity-thumb{object-fit:cover;border-radius:6px;width:100%;height:148px;display:block}.entity-list-copy h2{font-family:var(--font-heading);margin:0;font-size:clamp(1.35rem,2.5vw,1.75rem);line-height:1}.entity-title-link{text-decoration:none}.entity-title-link:hover,.entity-title-link:focus-visible{text-underline-offset:.18rem;text-decoration:underline}.entity-list-copy p{color:var(--muted);max-width:64ch;margin:.48rem 0 0;line-height:1.45}.entity-meta-line{color:#646873;letter-spacing:.03em;text-transform:uppercase;font-size:.84rem}.entity-empty,.entity-empty-inline{color:var(--muted)}.entity-empty{border-top:1px solid var(--line);padding:1.2rem 0}.entity-empty h2,.entity-empty h1{margin:0}.entity-empty p{margin:.6rem 0 0}.entity-detail{border-bottom:1px solid var(--line);padding-bottom:1.6rem}.entity-detail-header{max-width:80ch}.entity-back-link{margin:0 0 .9rem;font-size:.9rem}.entity-back-link a{color:var(--muted);text-decoration:none}.entity-back-link a:hover,.entity-back-link a:focus-visible{color:var(--accent);text-underline-offset:.15rem;text-decoration:underline}.entity-kicker{text-transform:uppercase;letter-spacing:.06em;color:#666a73;margin:0 0 .45rem;font-size:.78rem}.entity-hero-cta{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;display:flex}.entity-hero-cta-link{border:1px solid var(--line);color:var(--ink);letter-spacing:.01em;background:#fff;border-radius:999px;align-items:center;padding:.5rem .95rem;font-size:.85rem;font-weight:600;text-decoration:none;transition:border-color .15s,color .15s,background .15s,transform .15s;display:inline-flex}.entity-hero-cta-link:hover,.entity-hero-cta-link:focus-visible{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.entity-hero-cta-link--primary{color:#0a2a13;background:#1ed760;border-color:#1ed760}.entity-hero-cta-link--primary:hover,.entity-hero-cta-link--primary:focus-visible{color:#051a0a;background:#14b850;border-color:#14b850;transform:translateY(-1px)}.entity-hero{background:var(--surface-strong);margin:1.35rem 0 0;overflow:hidden}.entity-hero img{object-fit:cover;width:100%;height:clamp(200px,36vw,440px);display:block}.entity-hero--artists{aspect-ratio:1;border-radius:12px;max-width:16rem;margin-inline:0}.entity-hero--artists img{aspect-ratio:1;object-fit:cover;height:100%}.entity-detail--artists{grid-template-columns:minmax(0,1fr) 16rem;align-items:start;column-gap:2rem;display:grid}.entity-detail--artists>.entity-detail-header{max-width:none}.entity-detail--artists>.entity-hero{margin-top:0}.entity-detail--artists>:not(.entity-detail-header):not(.entity-hero){grid-column:1/-1}.entity-hero--songs,.entity-hero--releases{border-radius:8px;max-width:16rem}.entity-hero--songs img,.entity-hero--releases img{aspect-ratio:1;height:auto}.entity-detail--songs{grid-template-columns:minmax(0,1fr) 16rem;align-items:start;column-gap:2rem;display:grid}.entity-detail--songs>.entity-detail-header{max-width:none}.entity-detail--songs>.entity-hero{margin-top:0}.entity-detail--songs>:not(.entity-detail-header):not(.entity-hero){grid-column:1/-1}.entity-detail-body{margin-top:1.5rem}.entity-story-grid{grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr);align-items:start;gap:1.5rem;display:grid}.entity-story-block h2,.entity-panel h2,.entity-context-rail h2{font-family:var(--font-heading);margin:0;font-size:clamp(1.35rem,2.5vw,1.8rem);line-height:.98}.entity-story-copy{color:var(--fg);max-width:68ch;margin:.8rem 0 0;font-size:1.04rem;line-height:1.7}.entity-story-copy--secondary{color:var(--muted)}.entity-sidebar{gap:1rem;display:grid}.entity-panel{border:1px solid var(--line);background:var(--surface-strong);padding:1rem 1.05rem}.entity-panel--muted p{color:var(--muted);margin:.7rem 0 0;line-height:1.6}.entity-facts{gap:.75rem;margin:.9rem 0 0;display:grid}.entity-fact-row{border-top:1px solid #00000014;gap:.15rem;padding-top:.75rem;display:grid}.entity-fact-row:first-child{border-top:0;padding-top:0}.entity-facts dt{color:#5c6068;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.8rem}.entity-facts dd{margin:0;line-height:1.5}.entity-linked-inline a{color:var(--accent)}.entity-inline-links{margin-top:1.2rem}.entity-inline-links h3{margin:0;font-size:1rem}.entity-inline-links ul{flex-wrap:wrap;gap:.4rem;margin:.55rem 0 0;padding:0;list-style:none;display:flex}.entity-inline-links li{border:1px solid var(--line);padding:.22rem .6rem;font-size:.9rem}.entity-inline-links--official li a{text-decoration:none}.entity-inline-links--official li a:hover,.entity-inline-links--official li a:focus-visible{color:var(--accent)}.entity-lyrics-block{border-top:1px solid var(--line);margin-top:1.6rem;padding-top:1.2rem}.entity-lyrics-block h3{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.05em;color:var(--ink);margin:0 0 .7rem;font-size:1.05rem}.entity-lyrics-body{color:var(--ink);white-space:pre-wrap;word-wrap:break-word;background:0 0;border:0;margin:0;padding:0;font-family:inherit;font-size:1rem;line-height:1.65}.entity-lyrics-source{color:var(--muted);margin:.8rem 0 0;font-size:.78rem;font-style:italic}.entity-context-rail{margin-top:2rem}.entity-context-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem;margin:.95rem 0 0;padding:0;list-style:none;display:grid}.entity-context-card{align-content:start;gap:.8rem;display:grid}.entity-context-card--event{border-bottom:1px solid var(--line);align-items:flex-start;gap:1rem;padding:.75rem 0;display:flex}.entity-context-card--event:last-child{border-bottom:none}.entity-context-card-meta{text-align:center;flex-direction:column;flex-shrink:0;align-items:center;min-width:52px;display:flex}.entity-context-date{color:var(--accent,#b42318);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:700;line-height:1.3}.entity-context-city{color:var(--muted);margin-top:2px;font-size:.7rem}.entity-context-thumb{aspect-ratio:1;object-fit:cover;background:var(--surface-strong);width:100%;display:block}.entity-context-card h3{margin:0;font-size:1.02rem;line-height:1.2}.entity-context-card p{color:var(--muted);margin:.45rem 0 0;line-height:1.55}.entity-context-kind,.entity-article-kicker{letter-spacing:.06em;margin:0 0 .3rem;font-size:.68rem}.entity-context-rail--compact .entity-context-list--compact{grid-template-columns:repeat(4,1fr);gap:.7rem 1rem}.entity-context-rail--compact .entity-context-card--compact{border-top:1px solid var(--line);grid-template-columns:64px 1fr;gap:.5rem;padding-top:.55rem;display:grid}.entity-context-rail--compact .entity-context-card--compact:nth-child(-n+4){border-top:0;padding-top:0}.entity-context-rail--compact .entity-context-thumb--compact{aspect-ratio:auto;border-radius:4px;width:64px;height:64px}.entity-context-rail--compact .entity-context-card h3{font-size:.97rem;line-height:1.18}.entity-context-rail--compact .entity-context-card p{margin-top:.3rem;font-size:.86rem;line-height:1.35}.entity-event-rail{border-top:1px solid var(--line);gap:0;margin:.95rem 0 0;padding:0;list-style:none;display:grid}.entity-event-row{border-bottom:1px solid var(--line)}.entity-event-link{color:var(--ink);grid-template-columns:56px 1fr auto;align-items:center;gap:1rem;padding:.85rem .25rem;text-decoration:none;transition:background .12s;display:grid}.entity-event-link:hover,.entity-event-link:focus-visible{background:#00000006;outline:none}.entity-event-link--static{cursor:default}.entity-event-link--static:hover{background:0 0}.entity-event-date{color:var(--accent,#b42318);justify-items:center;line-height:1;display:grid}.entity-event-date-day{font-family:var(--font-heading);letter-spacing:-.02em;font-size:1.6rem;font-weight:800}.entity-event-date-month{letter-spacing:.08em;margin-top:.18rem;font-size:.68rem;font-weight:700}.entity-event-body{min-width:0}.entity-event-title{color:var(--ink);margin:0;font-size:1rem;font-weight:600;line-height:1.25}.entity-event-link:hover .entity-event-title,.entity-event-link:focus-visible .entity-event-title{text-underline-offset:.18rem;text-decoration:underline}.entity-event-location{color:var(--muted);margin:.22rem 0 0;font-size:.82rem;line-height:1.35}.entity-event-action{color:var(--muted);font-size:1.05rem;transition:transform .15s,color .15s}.entity-event-link:hover .entity-event-action{color:var(--accent,#b42318);transform:translate(3px)}@media (max-width:540px){.entity-event-link{grid-template-columns:48px 1fr;gap:.8rem;padding:.75rem 0}.entity-event-action{display:none}.entity-event-date-day{font-size:1.4rem}}.entity-related-articles--compact .entity-article-list--compact li{grid-template-columns:108px 1fr;gap:.72rem;padding:.78rem 0}.entity-related-articles--compact .entity-article-thumb{border-radius:4px;height:78px}.entity-related-articles--compact .entity-article-list h3{font-size:.97rem;line-height:1.25}.entity-related-articles--compact .entity-article-list p{margin-top:.28rem;font-size:.85rem;line-height:1.35}.entity-related-articles{margin-top:2rem}.entity-related-articles .section-title{margin-bottom:.8rem}.entity-article-list{margin:0;padding:0;list-style:none}.entity-article-list li{border-top:1px solid var(--line);grid-template-columns:170px minmax(0,1fr);gap:.9rem;padding:.9rem 0;display:grid}.entity-article-list li:last-child{border-bottom:1px solid var(--line)}.entity-article-thumb{object-fit:cover;width:100%;height:112px;display:block}.entity-article-list h3{margin:0;font-size:1.02rem}.entity-article-list p{color:var(--muted);margin:.45rem 0 0}@media (max-width:860px){.entity-story-grid,.entity-list-item,.entity-article-list li,.entity-detail--artists{grid-template-columns:1fr}.entity-detail--artists>.entity-detail-header{grid-row:2}.entity-detail--artists>.entity-hero{grid-row:1}.entity-hero--artists{border-radius:10px;max-width:12rem;margin-inline:auto}.entity-hero--songs,.entity-hero--releases{max-width:100%}.entity-detail--songs{grid-template-columns:1fr}.entity-detail--songs>.entity-detail-header{grid-row:2}.entity-detail--songs>.entity-hero{grid-row:1;max-width:10rem;margin-inline:auto}.entity-context-rail--compact .entity-context-list--compact{grid-template-columns:repeat(2,1fr)}.entity-context-rail--compact .entity-context-card--compact{grid-template-columns:64px 1fr;gap:.5rem}.entity-context-rail--compact .entity-context-card--compact:nth-child(-n+4){border-top:1px solid var(--line);padding-top:.55rem}.entity-context-rail--compact .entity-context-card--compact:nth-child(-n+2){border-top:0;padding-top:0}.entity-context-rail--compact .entity-context-thumb--compact{width:64px;height:64px}.entity-related-articles--compact .entity-article-list--compact li{grid-template-columns:96px 1fr}.entity-related-articles--compact .entity-article-thumb{height:72px}}.concerts-page{padding-top:1.8rem}.concerts-intro{max-width:78ch;margin-bottom:1.4rem}.concerts-intro p{color:var(--muted);margin:0;font-size:1.05rem}.concerts-list{margin:0;padding:0;list-style:none}.concert-item{border-top:1px solid var(--line);padding:1.05rem 0}.concert-item:last-child{border-bottom:1px solid var(--line)}.concert-item-meta{color:#666a73;text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.82rem}.concert-item h2{font-family:var(--font-heading);margin:.3rem 0 0;font-size:clamp(1.55rem,3.2vw,2.3rem);line-height:.95}.concert-item h2 a{text-decoration:none}.concert-item h2 a:hover,.concert-item h2 a:focus-visible{text-underline-offset:.18rem;text-decoration:underline}.concert-item-location,.concert-item-artist,.concert-item-summary{color:var(--muted);margin:.55rem 0 0}.concert-item-actions{flex-wrap:wrap;gap:.75rem;margin-top:.85rem;display:flex}.concert-item-actions a{text-decoration:none}.concert-item-actions a:hover,.concert-item-actions a:focus-visible{text-underline-offset:.18rem;text-decoration:underline}.concert-detail{border-bottom:1px solid var(--line);padding-bottom:1.25rem}.concert-detail-header h1{font-family:var(--font-heading);margin:0;font-size:clamp(2.2rem,6vw,4rem);line-height:.93}.concert-kicker{text-transform:uppercase;letter-spacing:.06em;color:#666a73;margin:0 0 .45rem;font-size:.8rem}.concert-meta-row{color:#444953;margin:.7rem 0 0}.concert-status-note{color:#7a620b;margin:.6rem 0 0;font-size:.9rem}.concert-lead{color:var(--muted);max-width:66ch;margin:.85rem 0 0}.concert-hero{width:100%;height:clamp(220px,41vw,560px);margin:1.25rem 0 0;position:relative}.concert-hero img{object-fit:cover;width:100%;height:100%;display:block}.concert-detail-body{gap:.9rem;margin-top:1.2rem;display:grid}.concert-facts h2{margin:0;font-size:1rem}.concert-facts p{color:var(--muted);margin:.45rem 0 0}.concert-facts ul{flex-wrap:wrap;gap:.45rem;margin:.45rem 0 0;padding:0;list-style:none;display:flex}.concert-facts li{border:1px solid var(--line);padding:.24rem .6rem;font-size:.92rem}.concert-footer-actions{flex-wrap:wrap;align-items:center;gap:.9rem;margin-top:1.4rem;display:flex}.ticket-link{color:#fff;background:var(--ink);border:1px solid var(--ink);padding:.36rem .68rem;text-decoration:none}.ticket-link:hover,.ticket-link:focus-visible{background:#252932}.ticket-pending{color:var(--muted);margin:0}.concerts-error h1{font-family:var(--font-heading);margin:0;font-size:clamp(1.7rem,4vw,2.4rem)}.concerts-error p{margin:.7rem 0 0}.concert-detail--v2{border-bottom:1px solid var(--line);padding-bottom:1.6rem}.concert-back-link{margin:0 0 .9rem;font-size:.9rem}.concert-back-link a{color:var(--muted);text-decoration:none}.concert-back-link a:hover,.concert-back-link a:focus-visible{color:var(--accent);text-underline-offset:.15rem;text-decoration:underline}.concert-hero--v2{background:var(--surface-strong);margin:1.3rem 0 0;overflow:hidden}.concert-hero--v2 img{object-fit:cover;width:100%;height:clamp(240px,44vw,600px);display:block}.concert-detail-body--v2{margin-top:1.5rem}.concert-path-note{color:var(--muted);max-width:74ch;margin:.65rem 0 0;font-size:.92rem}.concert-status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:2px;margin:.5rem 0 0;padding:.18rem .55rem;font-size:.78rem;font-weight:600;display:inline-block}.concert-status-badge--pending{color:#7a620b;background:#fff8e0;border:1px solid #e8d880}.concert-status-badge--cancelled{color:#821212;background:#fef2f2;border:1px solid #fbbf9a}.concert-status-badge--verified{color:#1a6b46;background:#f0faf5;border:1px solid #b3e5cc}.concert-artists-section{margin-top:1.35rem}.concert-artists-section h3{text-transform:uppercase;letter-spacing:.05em;color:#555a64;margin:0;font-size:.96rem}.concert-artist-list{flex-wrap:wrap;gap:.4rem;margin:.55rem 0 0;padding:0;list-style:none;display:flex}.concert-artist-list li{border:1px solid var(--line);background:var(--surface-strong);padding:.24rem .6rem;font-size:.92rem}.concert-artist-list li a{color:var(--ink);text-decoration:none}.concert-artist-list li a:hover,.concert-artist-list li a:focus-visible{color:var(--accent)}.concert-official-links{margin-top:1.35rem}.concert-official-links h3{text-transform:uppercase;letter-spacing:.05em;color:#555a64;margin:0;font-size:.96rem}.concert-link-list{flex-wrap:wrap;gap:.55rem;margin:.55rem 0 0;padding:0;list-style:none;display:flex}.concert-link-item{border:1px solid var(--ink);color:var(--ink);background:0 0;padding:.32rem .72rem;font-size:.9rem;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.concert-link-item:hover,.concert-link-item:focus-visible,.concert-link-item--primary{background:var(--ink);color:#fff}.concert-link-item--primary:hover,.concert-link-item--primary:focus-visible{background:#252932;border-color:#252932}.concert-cta-block{border:1px solid var(--line);background:var(--surface-strong);margin-top:1rem;padding:1rem 1.05rem}.concert-cta-block--empty p{color:var(--muted);margin:0;font-size:.9rem}.concert-cta-btn{text-align:center;background:var(--ink);color:#fff;letter-spacing:.04em;width:100%;padding:.72rem 1rem;font-size:.95rem;font-weight:600;text-decoration:none;display:block}.concert-cta-btn:hover,.concert-cta-btn:focus-visible{background:#252932}.concert-footer-nav{border-top:1px solid var(--line);margin-top:1.8rem;padding-top:1rem;font-size:.9rem}.concert-footer-nav a{color:var(--muted);text-decoration:none}.concert-footer-nav a:hover,.concert-footer-nav a:focus-visible{color:var(--accent);text-decoration:underline}.concert-error{padding:1.2rem 0}.concert-error h1{font-family:var(--font-heading);margin:0;font-size:clamp(1.7rem,4vw,2.4rem)}.concert-error p{margin:.7rem 0 0}.entity-hero--festivals,.entity-hero--playlists{border-radius:4px;max-width:100%}.entity-hero--festivals img,.entity-hero--playlists img{aspect-ratio:auto;height:clamp(240px,44vw,580px)}.entity-playlist-cta{margin-top:1.5rem}.entity-playlist-cta-btn{background:var(--ink);color:#fff;letter-spacing:.04em;border:1px solid var(--ink);padding:.55rem 1.2rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:background .15s;display:inline-block}.entity-playlist-cta-btn:hover,.entity-playlist-cta-btn:focus-visible{background:#252932;border-color:#252932}.entity-festival-tickets{margin-top:1.5rem}.entity-festival-tickets-btn{background:var(--accent);color:#fff;letter-spacing:.03em;border:2px solid var(--accent);border-radius:4px;padding:.65rem 1.4rem;font-size:1rem;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;display:inline-block}.entity-festival-tickets-btn:hover,.entity-festival-tickets-btn:focus-visible{background:color-mix(in srgb, var(--accent) 80%, #000);border-color:color-mix(in srgb, var(--accent) 80%, #000)}.concerts-hub-outer{padding-top:1.8rem}.concerts-hub-container{width:100%}.concerts-hub-header{border-bottom:3px solid var(--ink);margin-bottom:2.2rem;padding-bottom:1.4rem}.concerts-hub-intro{color:var(--muted);max-width:72ch;margin:.9rem 0 0;font-size:1.05rem}.concerts-hub-hero,.concerts-hub-featured,.concerts-hub-agenda{margin-bottom:2rem}.concerts-hub-section-title{font-family:var(--font-heading);color:var(--ink);text-transform:uppercase;letter-spacing:.03em;border-top:2px solid var(--ink);margin:0 0 1rem;padding-top:.85rem;font-size:clamp(1.35rem,2.8vw,1.85rem);line-height:1}.concerts-hub-agenda-intro{color:var(--muted);max-width:74ch;margin:-.25rem 0 .95rem;font-size:.95rem}.concerts-hub-featured-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem 1.2rem;display:grid}.concerts-hub-featured-list>*{border-top:1px solid var(--line);padding-top:.85rem}.concerts-hub-agenda-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;margin:0;padding:0;list-style:none;display:grid}.concerts-hub-footer-nav{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.8rem}.concerts-hub-footer-nav-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.03em;margin:0 0 .8rem;font-size:1.1rem}.concerts-hub-footer-nav-copy{color:var(--muted);max-width:74ch;margin:0 0 .8rem;font-size:.92rem}.concerts-hub-footer-nav-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.concerts-hub-footer-nav-list li{display:inline-block}.concerts-hub-footer-nav-list a{border:1px solid var(--line);color:inherit;border-radius:4px;padding:.35rem .65rem;font-size:.92rem;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:inline-block}.concerts-hub-footer-nav-list a:hover{border-color:var(--accent);color:var(--accent);background-color:#b423180a}.concerts-hub-empty{text-align:center;color:var(--muted);padding:2rem 0}.concerts-hub-filter-bar{flex-wrap:wrap;gap:.42rem;margin:0 0 1.1rem;display:flex}.concerts-hub-date-filters{flex-wrap:wrap;gap:.85rem;margin:0 0 1rem;display:flex}.concerts-hub-date-filter{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);flex-direction:column;gap:.25rem;font-size:.76rem;display:inline-flex}.concerts-hub-date-input{border:1px solid var(--line);min-height:34px;font:inherit;color:var(--ink);background:#fff;padding:.25rem .5rem}.concerts-hub-city-pill{cursor:pointer;letter-spacing:.04em;text-transform:uppercase;background:var(--surface-strong);color:#3a3d45;min-height:30px;font-size:.76rem;font-family:var(--font-body);border:1px solid #0000;border-radius:999px;align-items:center;padding:0 .72rem;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.concerts-hub-city-pill:hover{color:#7a2f16;background:#f0d9cc}.concerts-hub-city-pill.active{color:#7a2f16;background:#fde9dd;border-color:#e2a88a}.concerts-hub-view-toggle{border:1px solid var(--line);border-radius:3px;gap:0;width:-moz-fit-content;width:fit-content;margin-bottom:1.4rem;display:flex;overflow:hidden}.concerts-hub-view-btn{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);align-items:center;padding:.28rem .72rem;font-size:.78rem;transition:background .15s,color .15s;display:inline-flex}.concerts-hub-view-btn.active{background:var(--ink);color:#fff}.concerts-hub-view-btn.disabled{opacity:.45;cursor:not-allowed}.concerts-hub-agenda-note{color:var(--muted);margin:0 0 1rem;font-size:.9rem}.concerts-hub-event-list{margin:0;padding:0;list-style:none}.concerts-hub-event-row{border-top:1px solid var(--line)}.concerts-hub-event-row:last-child{border-bottom:1px solid var(--line)}.concerts-hub-event-link{color:inherit;grid-template-columns:68px 1fr auto;align-items:center;gap:.9rem 1rem;padding:1rem 0;text-decoration:none;transition:background .12s;display:grid}.concerts-hub-event-link:hover{background:#00000005}.concerts-hub-event-date{text-align:center;background:var(--surface-strong);border-top:3px solid #a44e1f;padding:.45rem .3rem}.concerts-hub-event-date-day{font-family:var(--font-heading);letter-spacing:.03em;text-transform:uppercase;color:#a44e1f;font-size:.82rem;line-height:1.1;display:block}.concerts-hub-event-body{min-width:0}.concerts-hub-event-meta{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.25rem;font-size:.72rem;display:block}.concerts-hub-event-title{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .2rem;font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1}.concerts-hub-event-location{color:var(--muted);margin:0;font-size:.85rem}.concerts-hub-event-action{text-transform:uppercase;letter-spacing:.05em;color:#7a2f16;margin-top:.34rem;font-size:.75rem;display:inline-block}.concerts-hub-event-thumb{flex-shrink:0;width:96px;height:68px;margin:0;overflow:hidden}.concerts-hub-event-thumb img{object-fit:cover;width:100%;height:100%;display:block}.concerts-hub-ticket-label{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--accent);align-items:center;padding-bottom:.05rem;font-size:.72rem;display:inline-flex}.concerts-hub-no-results{color:var(--muted);padding:1.5rem 0;font-size:.95rem}.concerts-hub-calendar-shell{gap:1rem;display:grid}.concerts-hub-calendar-header{grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem;display:grid}.concerts-hub-calendar-header h3{text-align:center;font-family:var(--font-heading);letter-spacing:.02em;margin:0;font-size:clamp(1.2rem,2.5vw,1.55rem)}.concerts-hub-calendar-nav{border:1px solid var(--line);min-height:34px;color:var(--ink);font:inherit;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:#fff;padding:0 .65rem;font-size:.78rem}.concerts-hub-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.32rem;display:grid}.concerts-hub-calendar-weekday{text-align:center;text-transform:uppercase;color:var(--muted);letter-spacing:.05em;padding:.2rem 0;font-size:.72rem}.concerts-hub-calendar-day{border:1px solid var(--line);min-height:58px;color:var(--ink);font:inherit;cursor:pointer;background:#fff;align-content:center;justify-items:center;gap:.12rem;transition:background .15s,border-color .15s,transform 50ms;display:grid;position:relative}.concerts-hub-calendar-day:hover:not(.out){background:#f8f8f9}.concerts-hub-calendar-day small{color:#7a2f16;font-size:.7rem;font-weight:600}.concerts-hub-calendar-day.out,.concerts-hub-calendar-day:disabled{color:#9aa0a8;cursor:default;background:#fbfbfc}.concerts-hub-calendar-day.has-events{background:#fff8f3;border-color:#e2a88a}.concerts-hub-calendar-day.selected{border-color:var(--ink);background:var(--ink);color:#fff;border-width:2px}.concerts-hub-calendar-day.selected small{color:#ffd9c2}.concerts-hub-calendar-panel{border-top:1px solid var(--line);padding-top:.85rem;scroll-margin-top:1rem}.concerts-hub-calendar-panel-title{color:var(--ink);margin:0 0 .6rem;font-size:.95rem;font-weight:600}.concerts-hub-calendar-panel-back{border:1px solid var(--line);color:var(--ink);font:inherit;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:#fff;margin:0 0 .6rem;padding:.35rem .7rem;font-size:.78rem;display:none}@media (max-width:640px){.concerts-hub-calendar-grid{gap:.2rem}.concerts-hub-calendar-day{min-height:44px;font-size:.92rem}.concerts-hub-calendar-day small{display:none}.concerts-hub-calendar-day.has-events:after{content:"";background:#c84a1a;border-radius:50%;width:5px;height:5px;position:absolute;bottom:4px}.concerts-hub-calendar-day.selected.has-events:after{background:#ffd9c2}.concerts-hub-calendar-header{grid-template-columns:auto 1fr auto;gap:.45rem}.concerts-hub-calendar-nav{min-width:36px;padding:0 .55rem;font-size:0}.concerts-hub-calendar-nav:before{letter-spacing:0;font-size:1rem}.concerts-hub-calendar-nav[data-dir=prev]:before{content:"←"}.concerts-hub-calendar-nav[data-dir=next]:before{content:"→"}.concerts-hub-calendar-panel-back{display:inline-block}}.concerts-hub-calendar-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.concerts-hub-calendar-list li{border-left:2px solid #e2a88a;padding-left:.55rem}.concerts-hub-calendar-list a{color:var(--ink);font-weight:600;text-decoration:none}.concerts-hub-calendar-list p{color:var(--muted);margin:.12rem 0 0;font-size:.84rem}.festivals-archive-shell{gap:1rem;display:grid}.festivals-archive-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.festivals-archive-label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);gap:.25rem;font-size:.76rem;display:grid}.festivals-archive-input,.festivals-archive-select{border:1px solid var(--line);min-height:35px;color:var(--ink);font:inherit;background:#fff;padding:.25rem .5rem}.festivals-archive-summary{color:var(--muted);margin-top:.3rem;font-size:.86rem;display:inline-block}.festivals-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.festivals-grid-card{display:flex}.festivals-grid-card-link{width:100%;color:inherit;border:1px solid var(--line);background:var(--surface);flex-direction:column;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.festivals-grid-card-link:hover{border-color:var(--accent);box-shadow:0 2px 8px #00000012}.festivals-grid-card-thumb{aspect-ratio:3/2;background:var(--surface-strong);flex-shrink:0;margin:0;overflow:hidden}.festivals-grid-card-thumb img{object-fit:cover;width:100%;height:100%;display:block}.festivals-grid-card-thumb-fallback{width:100%;height:100%;font-family:var(--font-heading);color:var(--muted);justify-content:center;align-items:center;font-size:3rem;display:flex}.festivals-grid-card-body{flex-direction:column;flex:1;gap:.2rem;padding:.75rem .85rem .9rem;display:flex}.festivals-grid-card-date{letter-spacing:.04em;text-transform:uppercase;color:var(--accent);font-size:.75rem}.festivals-grid-card-title{font-family:var(--font-heading);margin:0;font-size:clamp(1.1rem,2vw,1.45rem);line-height:1}.festivals-grid-card-city{color:var(--muted);margin:0;font-size:.83rem}.festivals-grid-card-summary{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:.3rem 0 0;font-size:.84rem;line-height:1.5;display:-webkit-box;overflow:hidden}@media (max-width:680px){.concerts-hub-event-link{grid-template-columns:56px 1fr}.concerts-hub-event-thumb{display:none}.concerts-hub-featured-list,.festivals-archive-controls{grid-template-columns:1fr}.festivals-grid{grid-template-columns:repeat(2,1fr)}}.artists-hub-outer{padding-top:1.8rem}.artists-hub-container{width:100%}.artists-hub-header{border-bottom:3px solid var(--ink);margin-bottom:1.8rem;padding-bottom:1.4rem}.artists-hub-intro{color:var(--muted);max-width:72ch;margin:.9rem 0 0;font-size:1.05rem}.artists-hub-section{margin-bottom:2.2rem}.artists-hub-section-title{font-family:var(--font-heading);color:var(--ink);text-transform:uppercase;letter-spacing:.03em;border-top:2px solid var(--ink);margin:0 0 1.1rem;padding-top:.85rem;font-size:clamp(1.35rem,2.8vw,1.85rem);line-height:1}.artists-hub-premium-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:1.2rem;display:grid}.artists-hub-main-card{color:inherit;border-top:1px solid var(--line);gap:.9rem;padding-top:.75rem;text-decoration:none;display:grid}.artists-hub-main-portrait{aspect-ratio:1;background:var(--surface-strong);border-radius:999px;width:min(74%,296px);margin:0 auto;overflow:hidden}.artists-hub-main-portrait img{object-fit:cover;width:100%;height:100%;display:block}.artists-hub-main-copy h3{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .3rem;font-size:clamp(1.4rem,2.5vw,1.95rem);line-height:.95}.artists-hub-main-copy p{color:var(--muted);margin:0;line-height:1.45}.artists-hub-secondary-list{gap:.7rem;display:grid}.artists-hub-secondary-card{color:inherit;border-top:1px solid var(--line);grid-template-columns:88px 1fr;gap:.8rem;padding-top:.65rem;text-decoration:none;display:grid}.artists-hub-secondary-portrait{background:var(--surface-strong);border-radius:999px;width:88px;height:88px;margin:0;overflow:hidden}.artists-hub-secondary-portrait img{object-fit:cover;width:100%;height:100%;display:block}.artists-hub-secondary-copy h3{font-family:var(--font-heading);margin:0 0 .2rem;font-size:clamp(1.12rem,2.05vw,1.5rem);line-height:1}.artists-hub-secondary-copy p{color:var(--muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:.84rem;line-height:1.36;display:-webkit-box;overflow:hidden}.artists-hub-portrait-fallback{width:100%;height:100%;font-family:var(--font-heading);color:var(--muted);background:var(--surface-strong);letter-spacing:.02em;justify-content:center;align-items:center;font-size:clamp(1.5rem,5vw,3rem);display:flex}.artists-hub-portrait-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.25rem;font-size:.7rem;display:block}.artists-hub-sort-tabs{border-bottom:2px solid var(--line);gap:0;margin-bottom:1.1rem;display:flex}.artists-hub-sort-tab{cursor:pointer;letter-spacing:.05em;text-transform:uppercase;font-size:.8rem;font-family:var(--font-body);color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;margin-bottom:-2px;padding:.45rem .85rem;transition:color .15s,border-color .15s;display:inline-flex}.artists-hub-sort-tab:hover{color:var(--ink)}.artists-hub-sort-tab.active{color:var(--ink);border-bottom-color:var(--ink)}.artists-hub-sort-tab.disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.artists-hub-view-toggle{gap:.35rem;margin-bottom:1rem;display:inline-flex}.artists-hub-view-btn{border:1px solid var(--line);min-height:30px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:#fff;border-radius:999px;align-items:center;padding:0 .62rem;font-size:.75rem;display:inline-flex}.artists-hub-view-btn.active{border-color:var(--ink);color:var(--ink)}.artists-hub-ranking-list{margin:0;padding:0;list-style:none}.artists-hub-ranking-item{border-top:1px solid var(--line)}.artists-hub-ranking-item:last-child{border-bottom:1px solid var(--line)}.artists-hub-ranking-link{color:inherit;grid-template-columns:3ch 44px 1fr;align-items:center;gap:0 1rem;padding:.62rem 0;text-decoration:none;transition:background .12s;display:grid}.artists-hub-ranking-link:hover{background:#00000005}.artists-hub-rank-number{font-family:var(--font-heading);color:var(--muted);letter-spacing:.02em;text-align:right;font-size:clamp(1.1rem,2.2vw,1.55rem);line-height:1}.artists-hub-ranking-portrait{background:var(--surface-strong);border-radius:50%;flex-shrink:0;width:44px;height:44px;margin:0;overflow:hidden}.artists-hub-ranking-portrait img{object-fit:cover;width:100%;height:100%;display:block}.artists-hub-ranking-portrait-fallback{width:100%;height:100%;font-family:var(--font-heading);color:var(--muted);justify-content:center;align-items:center;font-size:1.35rem;display:flex}.artists-hub-ranking-copy h3{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .18rem;font-size:clamp(1rem,1.8vw,1.3rem);line-height:1}.artists-hub-ranking-copy p{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:58ch;margin:0;font-size:.84rem;line-height:1.35;display:-webkit-box;overflow:hidden}.artists-hub-popularity-meta{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:.2rem;font-size:.72rem;display:inline-block}.artists-hub-ranking-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.72rem;margin:0;padding:0;list-style:none;display:grid}.artists-hub-ranking-card{color:inherit;border-top:1px solid var(--line);gap:.55rem;padding-top:.55rem;text-decoration:none;display:grid}.artists-hub-ranking-card-rank{font-family:var(--font-heading);color:var(--muted);letter-spacing:.02em;font-size:.9rem}.artists-hub-ranking-card-portrait{aspect-ratio:1;background:var(--surface-strong);border-radius:999px;width:100%;margin:0;overflow:hidden}.artists-hub-ranking-card-portrait img{object-fit:cover;width:100%;height:100%;display:block}.artists-hub-ranking-card-copy h3{font-family:var(--font-heading);margin:0 0 .16rem;font-size:clamp(.95rem,1.8vw,1.2rem);line-height:1}.artists-hub-ranking-card-copy p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.35}.artists-hub-footer-nav{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.8rem}.artists-hub-footer-nav-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.03em;margin:0 0 .8rem;font-size:1.1rem}.artists-hub-footer-nav-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.artists-hub-footer-nav-list li{display:inline-block}.artists-hub-footer-nav-list a{border:1px solid var(--line);color:inherit;border-radius:4px;padding:.35rem .65rem;font-size:.92rem;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:inline-block}.artists-hub-footer-nav-list a:hover{border-color:var(--accent);color:var(--accent);background-color:#b423180a}.artists-hub-empty{text-align:center;color:var(--muted);padding:2rem 0}@media (max-width:860px){.artists-hub-premium-grid{grid-template-columns:1fr}.artists-hub-main-portrait{width:min(66%,250px)}.artists-hub-secondary-card{grid-template-columns:72px 1fr}.artists-hub-secondary-portrait{width:72px;height:72px}.artists-hub-ranking-link{grid-template-columns:2.5ch 44px 1fr;gap:0 .7rem}}.news-hub-outer{padding-top:1.8rem}.news-hub-container{width:100%}.news-hub-header{margin-bottom:1.8rem;padding-bottom:1.4rem}.news-hub-intro{color:var(--muted);max-width:66ch;margin:.9rem 0 0;font-size:1.05rem}.news-hub-hero{margin-bottom:2.4rem}.news-hub-section-title{font-family:var(--font-heading);color:var(--ink);text-transform:uppercase;letter-spacing:.03em;border-top:2px solid var(--ink);margin:0 0 1.1rem;padding-top:.85rem;font-size:clamp(1.35rem,2.8vw,1.85rem);line-height:1}.news-hub-featured{margin-bottom:2.2rem}.news-hub-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.4rem;display:grid}.news-hub-recent{margin-bottom:2rem}.news-hub-recent-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem 1rem;margin:0;padding:0;list-style:none;display:grid}.news-hub-latest{margin-bottom:2rem}.news-hub-latest-list{margin:0;padding:0;list-style:none}.news-hub-latest-list>li{border-top:1px solid var(--line);padding:.85rem 0}.news-hub-latest-list>li:last-child{border-bottom:1px solid var(--line)}.news-hub-archive-row{color:inherit;grid-template-columns:52px 80px 1fr;align-items:start;gap:0 .85rem;text-decoration:none;transition:opacity .15s;display:grid}.news-hub-archive-row:hover{opacity:.8}.news-hub-archive-date{text-align:center}.news-hub-archive-date-day{font-family:var(--font-heading);color:var(--ink);font-size:1.5rem;line-height:1;display:block}.news-hub-archive-date-month{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:.68rem;display:block}.news-hub-archive-thumb{background:var(--surface-strong);aspect-ratio:4/3;margin:0;overflow:hidden}.news-hub-archive-thumb img{object-fit:cover;width:100%;height:100%;display:block}.news-hub-archive-copy h3{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .2rem;font-size:clamp(1.05rem,2vw,1.35rem);line-height:1}.news-hub-archive-copy p{color:var(--muted);max-width:64ch;margin:0;font-size:.88rem;line-height:1.4}.news-hub-archive-cat{letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin-bottom:.25rem;font-size:.68rem;display:block}.news-hub-footer-nav{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.8rem}.news-hub-footer-nav-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.03em;margin:0 0 .8rem;font-size:1.1rem}.news-hub-footer-nav-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.news-hub-footer-nav-list li{display:inline-block}.news-hub-footer-nav-list a{border:1px solid var(--line);color:inherit;border-radius:4px;padding:.35rem .65rem;font-size:.92rem;text-decoration:none;transition:border-color .15s,background-color .15s,color .15s;display:inline-block}.news-hub-footer-nav-list a:hover{border-color:var(--accent);color:var(--accent);background-color:#b423180a}.news-hub-empty{text-align:center;color:var(--muted);padding:2rem 0}.news-hub-archive-toolbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:1.1rem;padding-bottom:.9rem;display:flex}.news-hub-archive-search{border:1px solid var(--line);background:var(--surface,#fff);min-width:160px;color:var(--ink);border-radius:4px;flex:200px;padding:.45rem .7rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.news-hub-archive-search:focus{border-color:var(--accent);outline:none}.news-hub-archive-search::placeholder{color:var(--muted)}.news-hub-archive-sort{border:1px solid var(--line);background:var(--surface,#fff);color:var(--ink);cursor:pointer;border-radius:4px;flex:none;padding:.45rem .7rem;font-family:inherit;font-size:.9rem;transition:border-color .15s}.news-hub-archive-sort:focus{border-color:var(--accent);outline:none}.news-hub-archive-count{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap;flex:none;font-size:.78rem}.news-hub-archive-empty{color:var(--muted);padding:1.5rem 0;font-size:.95rem}.news-hub-pagination{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:1.4rem;padding-top:1rem;display:flex}.news-hub-pagination-btn{border:1px solid var(--line);background:var(--surface,#fff);min-width:2.1rem;height:2.1rem;color:var(--ink);cursor:pointer;border-radius:4px;padding:0 .45rem;font-family:inherit;font-size:.88rem;line-height:1;transition:border-color .15s,background-color .15s,color .15s}.news-hub-pagination-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.news-hub-pagination-btn:disabled{opacity:.35;cursor:default}.news-hub-pagination-btn--active{background:var(--ink);border-color:var(--ink);color:var(--paper,#fff);font-weight:600}.news-hub-pagination-btn--active:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:var(--paper,#fff)}.news-hub-pagination-ellipsis{color:var(--muted);padding:0 .2rem;font-size:.88rem;line-height:2.1rem}.news-hub-pagination-info{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);white-space:nowrap;margin-left:auto;font-size:.78rem}@media (max-width:480px){.news-hub-archive-toolbar{gap:.5rem}.news-hub-archive-search{flex-basis:100%}}@media (max-width:680px){.news-hub-featured-grid,.news-hub-recent-list{grid-template-columns:1fr}.news-hub-archive-row{grid-template-columns:44px 64px 1fr;gap:0 .6rem}}.songs-hub-outer{padding-top:1.8rem}.songs-hub-container{width:100%}.songs-hub-header{border-bottom:3px solid var(--ink);margin-bottom:1.8rem;padding-bottom:1.4rem}.songs-hub-intro{color:var(--muted);max-width:66ch;margin:.9rem 0 0;font-size:1.05rem}.songs-hub-section-title{font-family:var(--font-heading);color:var(--ink);text-transform:uppercase;letter-spacing:.03em;border-top:2px solid var(--ink);margin:0 0 1.1rem;padding-top:.85rem;font-size:clamp(1.35rem,2.8vw,1.85rem);line-height:1}.songs-hub-section{margin-bottom:2.2rem}.songs-hub-premium-intro{color:var(--muted);max-width:72ch;margin:-.2rem 0 .85rem;font-size:.92rem}.songs-hub-premium-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.9rem;display:grid}.songs-hub-lead-card{color:inherit;border-top:1px solid var(--line);gap:.8rem;padding-top:.75rem;text-decoration:none;display:grid}.songs-hub-lead-cover{aspect-ratio:4/3;background:var(--surface-strong);border-radius:8px;width:100%;margin:0;overflow:hidden}.songs-hub-lead-cover img{object-fit:cover;width:100%;height:100%;display:block}.songs-hub-lead-kicker{background:var(--ink);color:#fff;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;min-height:24px;padding:0 .5rem;font-size:.66rem;display:inline-flex}.songs-hub-lead-rank{font-family:var(--font-heading);color:var(--muted);letter-spacing:.03em;margin:.48rem 0 0;font-size:.88rem}.songs-hub-lead-card h3{font-family:var(--font-heading);margin:.25rem 0 .3rem;font-size:clamp(1.3rem,2.2vw,1.75rem);line-height:.95}.songs-hub-lead-card p{color:var(--muted);margin:0;line-height:1.38}.songs-hub-lead-copy{align-content:start;gap:.3rem;display:grid}.songs-hub-secondary-list{gap:.62rem;display:grid}.songs-hub-secondary-card{color:inherit;border-top:1px solid var(--line);grid-template-columns:86px 1fr;gap:.62rem;padding-top:.5rem;text-decoration:none;display:grid}.songs-hub-secondary-cover{background:var(--surface-strong);border-radius:6px;width:86px;height:72px;margin:0;overflow:hidden}.songs-hub-secondary-cover img{object-fit:cover;width:100%;height:100%;display:block}.songs-hub-secondary-rank{font-family:var(--font-heading);color:var(--muted);letter-spacing:.02em;font-size:.95rem}.songs-hub-secondary-card h3{font-family:var(--font-heading);margin:.18rem 0 .2rem;font-size:clamp(.95rem,1.7vw,1.25rem);line-height:1}.songs-hub-secondary-card p{color:var(--muted);margin:0;font-size:.83rem;line-height:1.35}.songs-hub-secondary-copy{align-content:start;gap:.16rem;display:grid}.songs-hub-ranking-list{margin:0;padding:0;list-style:none}.songs-hub-ranking-item{border-top:1px solid var(--line)}.songs-hub-ranking-item:last-child{border-bottom:1px solid var(--line)}.songs-hub-ranking-link{color:inherit;grid-template-columns:3ch 44px 1fr;align-items:center;gap:0 .8rem;padding:.62rem 0;text-decoration:none;transition:background .12s;display:grid}.songs-hub-ranking-link:hover{background:#00000005}.songs-hub-rank-number{font-family:var(--font-heading);color:var(--muted);letter-spacing:.02em;text-align:right;font-size:clamp(1.05rem,2vw,1.45rem);line-height:1}.songs-hub-song-thumb{background:var(--surface-strong);border-radius:4px;flex-shrink:0;width:44px;height:44px;margin:0;overflow:hidden}.songs-hub-song-thumb img{object-fit:cover;width:100%;height:100%;display:block}.songs-hub-song-thumb-fallback{width:100%;height:100%;font-family:var(--font-heading);color:var(--muted);background:var(--surface-strong);justify-content:center;align-items:center;font-size:1.2rem;display:flex}.songs-hub-song-copy h3{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .15rem;font-size:clamp(.98rem,1.8vw,1.25rem);line-height:1}.songs-hub-song-copy p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.35}.songs-hub-popularity-meta{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);margin-top:.2rem;font-size:.72rem;display:inline-block}.songs-hub-sort-tabs{border-bottom:2px solid var(--line);gap:0;margin-bottom:1.1rem;display:flex}.songs-hub-sort-tab{cursor:pointer;letter-spacing:.05em;text-transform:uppercase;font-size:.8rem;font-family:var(--font-body);color:var(--muted);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;margin-bottom:-2px;padding:.45rem .85rem;transition:color .15s,border-color .15s;display:inline-flex}.songs-hub-sort-tab.active{color:var(--ink);border-bottom-color:var(--ink)}.songs-hub-sort-tab.disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.songs-hub-view-toggle{gap:.35rem;margin-bottom:1rem;display:inline-flex}.songs-hub-view-btn{border:1px solid var(--line);min-height:30px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:#fff;border-radius:999px;align-items:center;padding:0 .62rem;font-size:.75rem;display:inline-flex}.songs-hub-view-btn.active{border-color:var(--ink);color:var(--ink)}.songs-hub-ranking-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.songs-hub-ranking-card{color:inherit;border-top:1px solid var(--line);gap:.5rem;padding-top:.55rem;text-decoration:none;display:grid}.songs-hub-ranking-card-rank{font-family:var(--font-heading);color:var(--muted);letter-spacing:.02em;font-size:.9rem}.songs-hub-ranking-card-cover{aspect-ratio:4/3;background:var(--surface-strong);border-radius:8px;width:100%;margin:0;overflow:hidden}.songs-hub-ranking-card-cover img{object-fit:cover;width:100%;height:100%;display:block}.songs-hub-ranking-card-copy h3{font-family:var(--font-heading);margin:0 0 .15rem;font-size:clamp(.85rem,1.4vw,1rem);line-height:1.1}.songs-hub-ranking-card-copy p{color:var(--muted);margin:0;font-size:.74rem;line-height:1.35}.songs-hub-footer-nav{border-top:1px solid var(--line);margin-top:2.5rem;padding-top:1.8rem}.songs-hub-footer-nav-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.songs-hub-footer-nav-list a{border:1px solid var(--line);color:inherit;border-radius:4px;padding:.35rem .65rem;font-size:.92rem;text-decoration:none;transition:border-color .15s,color .15s;display:inline-block}.songs-hub-footer-nav-list a:hover{border-color:var(--accent);color:var(--accent)}.songs-hub-empty{text-align:center;color:var(--muted);padding:2rem 0}@media (max-width:1100px){.songs-hub-ranking-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:860px){.songs-hub-premium-grid{grid-template-columns:1fr}.songs-hub-secondary-card{grid-template-columns:72px 1fr}.songs-hub-secondary-cover{width:72px;height:60px}.artists-hub-ranking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.songs-hub-ranking-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:680px){.entity-intro h1,.entity-detail-header h1{font-size:clamp(1.8rem,10vw,2.35rem);line-height:1}.entity-intro p,.entity-lead{max-width:100%;font-size:.98rem}.entity-thumb{height:136px}.entity-list-copy h2{font-size:clamp(1.2rem,6vw,1.45rem)}.entity-context-rail{margin-top:1.5rem}.songs-hub-section,.artists-hub-section,.concerts-hub-agenda,.concerts-hub-hero{margin-bottom:1.5rem}.songs-hub-lead-cover{aspect-ratio:16/10}.songs-hub-lead-card h3{font-size:clamp(1.2rem,6.5vw,1.55rem)}.songs-hub-lead-copy p{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.songs-hub-secondary-copy h3,.songs-hub-secondary-card p,.artists-hub-secondary-copy p,.entity-context-rail--compact .entity-context-card p,.entity-related-articles--compact .entity-article-list p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.concerts-hub-event-link{grid-template-columns:56px 1fr;align-items:start;gap:.5rem .62rem}}@media (max-width:600px){.artists-hub-ranking-grid{grid-template-columns:1fr}.songs-hub-ranking-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:380px){.songs-hub-ranking-grid{grid-template-columns:1fr}}.city-detail,.venue-detail{max-width:900px;padding-inline:var(--page-pad,1.25rem);margin-inline:auto;padding-bottom:3rem}.city-header,.venue-header{border-bottom:1px solid var(--line);margin-bottom:2rem;padding-bottom:1.5rem}.city-title-block,.venue-title-block{flex-direction:column;gap:.15rem;display:flex}.city-title-block h1,.venue-title-block h1{font-family:var(--font-heading);letter-spacing:-.01em;margin:0;font-size:clamp(2rem,4vw,2.8rem);line-height:1}.city-region,.city-country,.venue-city{color:var(--muted);margin:0;font-size:.95rem}.geo-editorial-intro{max-width:68ch;color:var(--ink-soft);margin:1rem 0 0;font-size:1rem;line-height:1.6}.venue-city a{color:var(--accent);text-decoration:none}.venue-city a:hover{text-decoration:underline}.city-body,.venue-body{flex-direction:column;gap:2.5rem;display:flex}.geo-event-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem;display:grid}.geo-event-card{background:var(--surface);border-radius:8px;flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.geo-event-card:hover{transform:translateY(-3px);box-shadow:0 4px 12px #00000014}.geo-event-image{object-fit:cover;background:var(--surface-strong);width:100%;height:150px}.geo-event-content{flex-direction:column;flex:1;gap:.35rem;padding:.95rem;display:flex}.geo-event-content h3{margin:0;font-size:.95rem;font-weight:600;line-height:1.2}.geo-event-content h3 a{color:var(--ink);text-decoration:none}.geo-event-content h3 a:hover{color:var(--accent)}.geo-event-meta,.geo-event-date{color:var(--muted);flex-wrap:wrap;gap:.5rem;margin:0;font-size:.78rem;display:flex}.geo-venues-list{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem;display:grid}.geo-venue-item{background:var(--surface);border:1px solid var(--line);border-radius:8px;flex-direction:column;gap:.5rem;padding:1.25rem;display:flex}.geo-venue-item h3{font-family:var(--font-heading);letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.15rem;line-height:1.1}.geo-venue-item h3 a{color:var(--ink);text-decoration:none}.geo-venue-item h3 a:hover{color:var(--accent)}.geo-venue-address{color:var(--muted);margin:0;font-size:.85rem;line-height:1.35}.geo-venue-item a[target=_blank]{color:var(--accent);border:1px solid var(--accent);border-radius:4px;margin-top:.5rem;padding:.35rem .65rem;font-size:.82rem;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.geo-venue-item a[target=_blank]:hover{background:var(--accent);color:#fff}.geo-articles-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.35rem;display:grid}.geo-article-card{background:var(--surface);border-radius:8px;flex-direction:column;transition:transform .15s;display:flex;overflow:hidden}.geo-article-card:hover{transform:translateY(-2px)}.geo-article-image{object-fit:cover;background:var(--surface-strong);width:100%;height:140px}.geo-article-card h3{margin:0;padding:.95rem .95rem 0;font-size:.95rem;font-weight:600;line-height:1.15}.geo-article-card h3 a{color:var(--ink);text-decoration:none}.geo-article-card h3 a:hover{color:var(--accent)}.venue-info{background:var(--surface-strong);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;padding:1.5rem;display:grid}.venue-address-block,.venue-capacity-block,.venue-website-block{flex-direction:column;gap:.5rem;display:flex}.venue-info h3{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0;font-size:.85rem;font-weight:700}.venue-info p{margin:0;font-size:1rem;line-height:1.35}.venue-website-link{background:var(--accent);color:#fff;border-radius:6px;padding:.5rem .95rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:opacity .15s;display:inline-block}.venue-website-link:hover{opacity:.88}.city-events-section,.city-venues-section,.city-artists-section,.city-festivals-section,.city-articles-section,.venue-events-section,.venue-artists-section,.venue-articles-section{flex-direction:column;gap:1.25rem;display:flex}.city-events-section h2,.city-venues-section h2,.city-artists-section h2,.city-festivals-section h2,.city-articles-section h2,.venue-events-section h2,.venue-artists-section h2,.venue-articles-section h2{font-family:var(--font-heading);letter-spacing:-.01em;margin:0 0 .75rem;font-size:clamp(1.35rem,2.5vw,1.75rem);line-height:1}.geo-related-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.1rem;display:grid}.geo-related-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;flex-direction:column;display:flex;overflow:hidden}.geo-related-image{object-fit:cover;background:var(--surface-strong);width:100%;height:140px}.geo-related-content{flex-direction:column;gap:.5rem;padding:.9rem;display:flex}.geo-related-card h3{margin:0;padding:.9rem;font-size:1rem;line-height:1.2}.geo-related-content h3{padding:0}.geo-related-card h3 a{color:var(--ink);text-decoration:none}.geo-related-card h3 a:hover{color:var(--accent)}.geo-related-card p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.45}@media (max-width:860px){.geo-event-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.geo-venues-list{grid-template-columns:1fr}.geo-articles-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.venue-info{grid-template-columns:1fr}}@media (max-width:600px){.geo-event-grid{grid-template-columns:1fr}.city-detail,.venue-detail{padding-inline:1rem}}.static-page{padding-block:2rem 4rem;animation:.36s ease-out both rise-in}.static-page-header{border-bottom:3px solid var(--ink);max-width:72ch;margin-bottom:2.4rem;padding-bottom:1.6rem}.static-page-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:.7rem;font-size:.76rem;font-weight:600;display:inline-block}.static-page-header h1{font-family:var(--font-heading);letter-spacing:.01em;margin:0 0 .7rem;font-size:clamp(2.2rem,6vw,3.8rem);line-height:.95}.static-page-header p{color:var(--muted);max-width:62ch;margin:0;font-size:1.08rem;line-height:1.6}.static-page-updated{color:#9095a0;letter-spacing:.02em;margin-top:.75rem;font-size:.8rem}.contact-channels{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2rem;margin:0 0 2.8rem;display:grid}.contact-channel-card{border:1px solid var(--line);border-top:3px solid var(--ink);background:#fff;flex-direction:column;gap:.55rem;padding:1.4rem 1.3rem 1.3rem;display:flex}.contact-channel-card--accent{border-top-color:var(--accent)}.contact-channel-card--indigo{border-top-color:var(--accent-indigo)}.contact-channel-card--olive{border-top-color:var(--accent-olive)}.contact-channel-card--amber{border-top-color:var(--accent-amber)}.contact-channel-icon{font-size:1.6rem;line-height:1}.contact-channel-card h2{font-family:var(--font-heading);letter-spacing:.02em;margin:0;font-size:clamp(1.3rem,2.5vw,1.65rem);line-height:1}.contact-channel-card p{color:var(--muted);flex:1;margin:0;font-size:.93rem;line-height:1.55}.contact-channel-email{color:var(--accent-indigo);word-break:break-all;border-bottom:1px solid #0000;margin-top:.4rem;font-size:.88rem;text-decoration:none;transition:border-color .2s;display:inline-block}.contact-channel-email:hover,.contact-channel-email:focus-visible{border-bottom-color:var(--accent-indigo)}.contact-section-title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.03em;border-top:2px solid var(--ink);margin:2.4rem 0 1rem;padding-top:.85rem;font-size:clamp(1.35rem,2.8vw,1.85rem);line-height:1}.contact-intro-block{background:var(--surface-strong);border-left:3px solid var(--accent);margin-bottom:2.4rem;padding:1.4rem 1.3rem}.contact-intro-block p{color:var(--muted);max-width:70ch;margin:0;font-size:.98rem;line-height:1.65}.contact-intro-block p+p{margin-top:.65rem}.contact-form-shell{border:1px solid var(--line);background:linear-gradient(#fbfbfc 0%,#fff 100%),repeating-linear-gradient(90deg,#b4231809 0 1px,#0000 1px 28px);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:1.4rem;margin:0 0 2.8rem;padding:1.4rem;display:grid}.contact-form-intro{align-content:start;gap:.7rem;display:grid}.contact-form-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.76rem;font-weight:600}.contact-form-intro h2{font-family:var(--font-heading);margin:0;font-size:clamp(1.5rem,3vw,2rem);line-height:.96}.contact-form-intro p{color:var(--muted);margin:0;line-height:1.65}.contact-form-note{font-size:.9rem}.contact-form-note a{color:var(--accent-indigo);text-underline-offset:.18rem}.contact-form{gap:1rem;display:grid}.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.contact-field{gap:.35rem;display:grid}.contact-field span{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:.82rem}.contact-field input,.contact-field select,.contact-field textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:0;padding:.82rem .9rem;transition:border-color .16s,box-shadow .16s}.contact-field textarea{resize:vertical;min-height:180px}.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 1px #0f0f1114}.contact-form-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.8rem;padding-top:.25rem;display:flex}.contact-form-preview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .16rem;font-size:.76rem}.contact-form-preview{color:var(--ink);margin:0;font-size:.92rem}.contact-form-submit{border:1px solid var(--ink);background:var(--ink);color:#fff;min-height:44px;font:inherit;cursor:pointer;justify-content:center;align-items:center;padding:0 1rem;transition:opacity .16s,transform .16s;display:inline-flex}.contact-form-submit:disabled{cursor:wait;opacity:.72}.contact-form-submit:hover,.contact-form-submit:focus-visible{opacity:.92}.contact-form-error{color:#9f1d1d;margin:0;font-size:.9rem}.contact-form-success{color:#156d3f;margin:0;font-size:.9rem}.contact-form-manual-fallback{color:var(--muted);margin:0;font-size:.86rem}.contact-form-manual-fallback a{color:var(--accent-indigo);text-underline-offset:.15rem}.contact-channel-routing{color:#6c7280;margin:.35rem 0 0;font-size:.82rem}.legal-body{max-width:74ch}.legal-body h2{font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;border-top:1px solid var(--line);margin:2rem 0 .7rem;padding-top:1.2rem;font-size:clamp(1.25rem,2.4vw,1.6rem);line-height:1}.legal-body h2:first-child{border-top:none;margin-top:0;padding-top:0}.legal-body p{color:var(--muted);margin:0 0 1rem;line-height:1.7}.legal-body ul,.legal-body ol{color:var(--muted);margin:0 0 1rem;padding-left:1.4rem;line-height:1.7}.legal-body li+li{margin-top:.4rem}.legal-body a{color:var(--accent-indigo);text-underline-offset:.18rem}.legal-body strong{color:var(--ink);font-weight:600}@media (max-width:860px){.contact-form-shell,.contact-channels,.contact-form-grid{grid-template-columns:1fr}}@media (max-width:600px){.static-page-header h1{font-size:clamp(1.9rem,8vw,2.8rem)}}.mob-menu-btn{cursor:pointer;z-index:52;background:0 0;border:none;border-radius:6px;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:6px;display:none;position:relative}.mob-menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hb-bar{background:var(--ink);transform-origin:50%;border-radius:2px;width:22px;height:2px;transition:transform .22s,opacity .18s;display:block}.mob-menu-btn.is-open .hb-bar:first-child{transform:translateY(7px)rotate(45deg)}.mob-menu-btn.is-open .hb-bar:nth-child(2){opacity:0;transform:scaleX(0)}.mob-menu-btn.is-open .hb-bar:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mob-nav{z-index:50;visibility:hidden;background:#fff;flex-direction:column;transition:transform .28s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;inset:0;overflow-y:auto;transform:translate(100%)}.mob-nav.is-open{visibility:visible;transform:translate(0)}.mob-nav-inner{flex-direction:column;gap:0;padding:5.5rem 1.5rem 2.5rem;display:flex}.mob-nav-link{font-family:var(--font-heading);letter-spacing:.03em;color:var(--ink);border-bottom:1px solid var(--line);padding:.95rem 0;font-size:clamp(2.2rem,10vw,3rem);line-height:1;text-decoration:none;display:block}.mob-nav-link:hover,.mob-nav-link:focus-visible{color:var(--accent);outline:none}.mob-nav-link:last-child{border-bottom:none}.mob-nav-social{flex-wrap:wrap;gap:.5rem;padding:1.75rem 0 .5rem;display:flex}.mob-nav-social-link{border:1px solid var(--line);color:var(--ink);letter-spacing:.01em;border-radius:2rem;align-items:center;gap:.55rem;padding:.6rem .85rem;font-size:.92rem;font-weight:500;text-decoration:none;transition:border-color .18s,color .18s,background .18s;display:flex}.mob-nav-social-link:hover,.mob-nav-social-link:focus-visible{background:color-mix(in srgb, currentColor 8%, transparent);border-color:currentColor;outline:none}.mob-nav-social-link[data-network=spotify]:hover,.mob-nav-social-link[data-network=spotify]:focus-visible{color:#1db954}.mob-nav-social-link[data-network=threads]:hover,.mob-nav-social-link[data-network=threads]:focus-visible{color:#101010}.mob-nav-social-link[data-network=tiktok]:hover,.mob-nav-social-link[data-network=tiktok]:focus-visible{color:#fe2c55}.mob-nav-social-link[data-network=instagram]:hover,.mob-nav-social-link[data-network=instagram]:focus-visible{color:#c13584}.mob-nav-backdrop{z-index:49;background:#00000059;animation:.2s fade-in;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@media (max-width:760px){.mob-menu-btn{display:flex}.site-nav{display:none}.site-header-inner{flex-direction:row;justify-content:space-between;align-items:center;min-height:52px;padding-block:0}}@media (min-width:761px){.mob-nav,.mob-nav-backdrop{display:none}}@media (max-width:900px){.playlists-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:540px){.playlists-grid{grid-template-columns:1fr}}@media (max-width:680px){.site-footer-inner{grid-template-columns:1fr}}@media (max-width:400px){.shell{width:min(100%,100% - 1.25rem)}}.mm-avatar-fallback{position:relative;overflow:hidden}.mm-avatar-fallback-logo{opacity:.3;mix-blend-mode:multiply;pointer-events:none;width:clamp(12px,20%,26px);height:auto;display:block;position:absolute;bottom:7%;right:7%}.cookie-banner{z-index:9000;background:var(--ink);color:#fff;padding:1rem 0;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 12px #0000002e}.cookie-banner-inner{align-items:center;gap:1.5rem;width:min(100%,1200px);margin:0 auto;padding:0 1.5rem;display:flex}.cookie-banner-copy{flex:1;min-width:0}.cookie-banner-title{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .2rem;font-size:1.1rem}.cookie-banner-text{color:#d1d5db;margin:0;font-size:.85rem;line-height:1.5}.cookie-banner-link{color:#fff;text-underline-offset:2px;text-decoration:underline}.cookie-banner-link:hover{color:#d1d5db}.cookie-banner-actions{flex-shrink:0;gap:.75rem;display:flex}.cookie-btn{font-family:var(--font-body);cursor:pointer;white-space:nowrap;border:none;border-radius:6px;padding:.5rem 1.1rem;font-size:.875rem;font-weight:600;transition:opacity .15s}.cookie-btn:hover{opacity:.85}.cookie-btn--reject{color:#d1d5db;background:0 0;border:1px solid #4b5563}.cookie-btn--reject:hover{color:#fff;border-color:#9ca3af}.cookie-btn--accept{background:var(--accent);color:#fff}@media (max-width:640px){.cookie-banner-inner{flex-direction:column;align-items:flex-start;gap:1rem}.cookie-banner-actions{width:100%}.cookie-btn{text-align:center;flex:1}}.adblock-popup{z-index:8900;background:var(--ink);color:#fff;border-radius:10px;width:calc(100vw - 2.5rem);max-width:360px;animation:.3s adblock-slide-in;position:fixed;bottom:1.25rem;right:1.25rem;box-shadow:0 4px 24px #00000038}@keyframes adblock-slide-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.adblock-popup-inner{align-items:flex-start;gap:.75rem;padding:1rem 1rem 1rem 1.1rem;display:flex}.adblock-popup-icon{color:var(--accent);flex-shrink:0;margin-top:.05rem;font-size:1.25rem}.adblock-popup-copy{flex:1;min-width:0}.adblock-popup-title{font-family:var(--font-heading);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .35rem;font-size:1rem}.adblock-popup-text{color:#d1d5db;margin:0;font-size:.8rem;line-height:1.55}.adblock-popup-close{color:#9ca3af;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.1rem .25rem;font-size:.85rem;line-height:1;transition:color .15s}.adblock-popup-close:hover{color:#fff}.google-ad-slot{overflow:hidden}.google-ad-slot--auto{width:100%;min-height:90px}.google-ad-slot--horizontal{width:100%}.google-ad-slot--rectangle{justify-content:center;width:100%;display:flex}.google-ad-slot--placeholder{background:repeating-linear-gradient(45deg,#f3f4f6,#f3f4f6 10px,#e5e7eb 10px 20px);border:1px dashed #d1d5db;border-radius:4px;justify-content:center;align-items:center;width:100%;min-height:90px;display:flex}.google-ad-slot--placeholder.google-ad-slot--rectangle{max-width:300px;min-height:250px;margin-inline:auto}.google-ad-slot-label{color:var(--muted);text-align:center;-webkit-user-select:none;user-select:none;padding:.5rem;font-size:.75rem}.article-ad-banner{margin:1.5rem 0}.article-ad-rect{text-align:center;margin:2rem 0}.sidebar-ad-rect{margin:1.5rem 0}.songs-hub-artist-name{color:var(--muted);margin:.1rem 0 .2rem;font-size:.8rem;line-height:1.3}.songs-hub-artist-link{color:var(--muted);text-decoration:none;transition:color .15s}.songs-hub-artist-link:hover{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.artists-hub-controls-row,.songs-hub-controls-row{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:8px;display:flex}.artists-hub-controls-row--secondary,.songs-hub-controls-row--secondary{margin-bottom:16px}.artists-hub-search-wrap,.songs-hub-search-wrap{margin-left:auto}.artists-hub-search-input,.songs-hub-search-input{border:1px solid var(--line,#e5e7eb);height:36px;color:var(--ink);background:#fff;border-radius:8px;width:220px;padding:0 12px;font-size:.875rem;transition:border-color .15s}.artists-hub-search-input:focus,.songs-hub-search-input:focus{border-color:var(--accent-indigo,#1d4ed8);outline:none}@media (max-width:600px){.artists-hub-search-wrap,.songs-hub-search-wrap{width:100%;margin-left:0}.artists-hub-search-input,.songs-hub-search-input{width:100%}}.artists-top-ranking,.songs-top-ranking{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.artists-top-ranking-item,.songs-top-ranking-item{border-top:1px solid var(--line)}.artists-top-ranking-item:last-child,.songs-top-ranking-item:last-child{border-bottom:1px solid var(--line)}.artists-top-ranking-link,.songs-top-ranking-link{color:var(--ink);grid-template-columns:2.5rem 96px 1fr;align-items:center;gap:0 1.25rem;padding:14px 0;text-decoration:none;transition:background .12s;display:grid}.artists-top-ranking-link:hover,.songs-top-ranking-link:hover{background:#00000005}.artists-top-ranking-num,.songs-top-ranking-num{color:var(--accent,#b42318);font-variant-numeric:tabular-nums;text-align:center;font-size:1.75rem;font-weight:900;line-height:1}.artists-top-ranking-portrait,.songs-top-ranking-cover{border-radius:8px;flex-shrink:0;width:96px;height:96px;margin:0;overflow:hidden}.artists-top-ranking-portrait img,.songs-top-ranking-cover img{object-fit:cover;width:100%;height:100%;display:block}.artists-top-ranking-fallback,.songs-top-ranking-fallback{background:var(--surface-strong);width:100%;height:100%;color:var(--muted);justify-content:center;align-items:center;font-size:2rem;font-weight:800;display:flex}.artists-top-ranking-copy h3,.songs-top-ranking-copy h3{font-family:var(--font-heading);letter-spacing:.01em;margin:0 0 .25rem;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:800;line-height:1.2}.artists-top-ranking-copy p,.songs-top-ranking-copy p{color:var(--muted);margin:0;font-size:.85rem;line-height:1.4}.songs-top-ranking-artist{color:var(--accent-indigo,#1d4ed8);margin:0 0 .2rem;font-size:.82rem;font-weight:600}@media (max-width:600px){.artists-top-ranking-link,.songs-top-ranking-link{grid-template-columns:2rem 72px 1fr;gap:0 .75rem}.artists-top-ranking-portrait,.songs-top-ranking-cover{width:72px;height:72px}.artists-top-ranking-num,.songs-top-ranking-num{font-size:1.3rem}}.artists-hub-sentinel,.songs-hub-sentinel,.news-hub-sentinel,.festivals-sentinel,.concerts-hub-sentinel{pointer-events:none;width:100%;height:1px}.artists-hub-loading,.songs-hub-loading,.news-hub-loading,.festivals-loading,.concerts-hub-loading{text-align:center;color:var(--muted);padding:1.5rem 0;font-size:.875rem;animation:1.2s ease-in-out infinite pulse-opacity}.artists-hub-end,.songs-hub-end,.news-hub-end,.festivals-end,.concerts-hub-end{text-align:center;color:var(--muted);opacity:.7;padding:1.5rem 0;font-size:.8125rem}.artists-hub-count,.songs-hub-count,.festivals-archive-count{color:var(--muted);margin:.5rem 0 1rem;font-size:.8125rem}@keyframes pulse-opacity{0%,to{opacity:1}50%{opacity:.4}}.playlists-hub-header{padding:2rem 0 1.5rem}.playlists-hub-container{width:min(100%,1200px);margin:0 auto;padding:0 1.5rem}.playlists-hub-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem;font-size:.75rem;font-weight:700}.playlists-hub-intro{color:var(--muted);max-width:600px;margin:.5rem 0 0}.playlists-hub-count{color:var(--muted);margin:0 0 1.5rem;font-size:.8rem}.playlists-hub-empty{color:var(--muted);padding:3rem 0}.playlists-hub-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem 1.25rem;margin:0 0 3rem;padding:0;list-style:none;display:grid}.playlists-hub-card{color:inherit;flex-direction:column;gap:.6rem;text-decoration:none;transition:transform .15s;display:flex}.playlists-hub-card:hover{transform:translateY(-2px)}.playlists-hub-card-img{aspect-ratio:1;background:var(--surface-strong);border-radius:8px;width:100%;overflow:hidden}.playlists-hub-card-img img{object-fit:cover;width:100%;height:100%;display:block}.playlists-hub-card-fallback{width:100%;height:100%}.playlists-hub-card-body{flex-direction:column;gap:.2rem;display:flex}.playlists-hub-card-title{margin:0;font-size:.925rem;font-weight:700;line-height:1.25}.playlists-hub-card-summary{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.78rem;line-height:1.4;display:-webkit-box;overflow:hidden}.playlists-hub-card-cta{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-top:.15rem;font-size:.72rem;font-weight:700}@media (max-width:540px){.playlists-hub-grid{grid-template-columns:repeat(2,1fr);gap:1rem .75rem}}.rich-text-body,.entity-rich-text-body,.festival-detail-richtext{color:var(--ink);margin-top:1.5rem;font-size:1rem;line-height:1.7}.rich-text-body p,.entity-rich-text-body p,.festival-detail-richtext p{margin:0 0 1rem}.rich-text-body h2,.entity-rich-text-body h2,.festival-detail-richtext h2{font-family:var(--font-heading);letter-spacing:.01em;margin:1.75rem 0 .5rem;font-size:1.35rem;font-weight:800}.rich-text-body h3,.entity-rich-text-body h3,.festival-detail-richtext h3{font-family:var(--font-heading);margin:1.25rem 0 .4rem;font-size:1.1rem;font-weight:700}.rich-text-body ul,.rich-text-body ol,.entity-rich-text-body ul,.entity-rich-text-body ol,.festival-detail-richtext ul,.festival-detail-richtext ol{margin:0 0 1rem 1.5rem;padding:0}.rich-text-body li,.entity-rich-text-body li,.festival-detail-richtext li{margin-bottom:.3rem}.rich-text-body a,.entity-rich-text-body a,.festival-detail-richtext a{color:var(--accent-indigo,#1d4ed8);text-underline-offset:2px;text-decoration:underline}.rich-text-body blockquote,.entity-rich-text-body blockquote,.festival-detail-richtext blockquote{border-left:3px solid var(--accent,#b42318);color:var(--muted);margin:1rem 0;padding:.5rem 1rem;font-style:italic}.rich-text-body code,.entity-rich-text-body code,.festival-detail-richtext code{background:var(--surface-strong);border-radius:4px;padding:1px 5px;font-family:monospace;font-size:.875em}.portal-layout{grid-template-columns:220px 1fr;align-items:start;gap:2.5rem;padding-bottom:4rem;display:grid}.portal-layout>main{min-width:0}@media (max-width:760px){.portal-layout{grid-template-columns:1fr;gap:0}}.portal-sidebar-inner{position:sticky;top:5rem}@media (max-width:760px){.portal-sidebar-inner{border-bottom:1px solid var(--line);margin-bottom:1.5rem;padding-bottom:1rem;position:static}}.portal-user-card{border-top:3px solid var(--ink);margin-bottom:.5rem;padding:1rem 0 1.25rem}@media (max-width:760px){.portal-user-card{display:none}}.portal-nav{flex-direction:column;display:flex}@media (max-width:760px){.portal-nav{flex-flow:wrap;gap:.25rem}}.portal-nav-link{color:var(--muted);border-left:3px solid #0000;align-items:center;gap:.6rem;margin-bottom:.15rem;padding:.55rem .75rem;font-size:.88rem;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex}.portal-nav-link:hover{color:var(--ink);background:var(--surface-strong)}.portal-nav-link--active{color:var(--ink);background:var(--surface-strong);border-left-color:var(--ink);font-weight:700}@media (max-width:760px){.portal-nav-link{border-bottom:2px solid #0000;border-left:none;margin-bottom:0;padding:.45rem .65rem;font-size:.82rem}.portal-nav-link--active{border-bottom-color:var(--ink);border-left-color:#0000}}.portal-sidebar-logout{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}@media (max-width:760px){.portal-sidebar-logout{display:none}}.portal-sidebar-logout-mobile{flex-shrink:0;margin-left:auto;display:none}@media (max-width:760px){.portal-sidebar-logout-mobile{align-items:center;display:flex}}.portal-account-section{border-top:2px solid var(--line);margin-top:3rem;padding-top:1.5rem}.portal-account-section__title{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:.03em;margin:0 0 1.25rem;font-size:clamp(1.2rem,2vw,1.5rem);line-height:1}.portal-account-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.1rem 0;display:flex}.portal-account-row:first-of-type{border-top:1px solid var(--line)}.portal-account-row--danger{border-bottom-color:#0000}.portal-account-row--mobile-only{display:none}@media (max-width:760px){.portal-account-row--mobile-only{display:flex}}.portal-account-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 .2rem;font-size:.72rem;font-weight:700}.portal-account-value{color:var(--ink);margin:0;font-size:.95rem}.portal-account-value-muted{color:var(--muted);max-width:50ch;margin:0;font-size:.88rem;line-height:1.5}.portal-deactivate-btn-trigger{min-height:36px;font:inherit;text-transform:uppercase;letter-spacing:.06em;color:#9a1e14;cursor:pointer;white-space:nowrap;background:#fff8f8;border:1px solid #e5a6a6;border-radius:0;flex-shrink:0;align-items:center;padding:0 .9rem;font-size:.78rem;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.portal-deactivate-btn-trigger:hover{border-color:var(--accent);background:#fef2f2}.portal-deactivate-confirm{border:1px solid #e5a6a6;border-left:3px solid var(--accent);background:#fff8f8;width:100%;margin-top:.5rem;padding:1rem 1.1rem}.portal-deactivate-warning{color:#5a1b14;margin:0 0 1rem;font-size:.9rem;line-height:1.6}.portal-deactivate-error{color:#821212;margin:0 0 .75rem;font-size:.88rem}.portal-deactivate-actions{flex-wrap:wrap;gap:.75rem;display:flex}.portal-deactivate-btn-confirm{min-height:38px;font:inherit;text-transform:uppercase;letter-spacing:.05em;background:var(--accent);color:#fff;border:1px solid var(--accent);cursor:pointer;align-items:center;padding:0 1rem;font-size:.82rem;font-weight:700;transition:opacity .15s;display:inline-flex}.portal-deactivate-btn-confirm:disabled{opacity:.6;cursor:not-allowed}.portal-deactivate-btn-confirm:hover:not(:disabled){opacity:.88}.portal-deactivate-btn-cancel{min-height:38px;font:inherit;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:0 0;align-items:center;padding:0 1rem;font-size:.82rem;transition:color .15s,border-color .15s;display:inline-flex}.portal-deactivate-btn-cancel:hover:not(:disabled){color:var(--ink);border-color:var(--ink)}.portal-deactivate-done{color:#1a6b46;margin:0;font-size:.9rem;font-weight:600}@media (max-width:480px){.portal-account-row{flex-direction:column;align-items:flex-start;gap:.75rem}.portal-deactivate-btn-trigger{justify-content:center;width:100%}}.portal-stats{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.portal-stat{border:1px solid var(--line);border-top:3px solid var(--ink);background:var(--surface-strong);flex-direction:column;min-width:110px;padding:1rem 1.25rem;display:flex}.portal-stat__num{font-family:var(--font-heading);color:var(--ink);margin-bottom:.2rem;font-size:clamp(1.8rem,4vw,2.4rem);line-height:1}.portal-stat__label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-size:.68rem;font-weight:700}.portal-form{max-width:560px}.portal-form-section{border-bottom:1px solid var(--line);margin-bottom:1.75rem;padding-bottom:1.75rem}.portal-form-section:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.portal-form-section--escucha{border-left:3px solid var(--accent);border-bottom:1px solid var(--line);background:#f5f5f5;margin-bottom:1.75rem;padding:1.2rem 1.2rem 1.4rem}.portal-form-toggle{cursor:pointer;align-items:flex-start;gap:.7rem;font-size:.95rem;line-height:1.5;display:flex}.portal-form-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:.25rem}.portal-form-toggle>span{flex-direction:column;gap:.25rem;display:flex}.portal-form-toggle-hint{color:var(--muted);font-size:.85rem;font-weight:400;line-height:1.5}.portal-form-field{gap:.35rem;margin-bottom:1rem;display:grid}.portal-form-field:last-child{margin-bottom:0}.portal-form-label{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-size:.75rem;font-weight:700}.portal-form-label--required:after{content:" *";color:var(--accent)}.portal-form-input,.portal-form-select,.portal-form-textarea{border:1px solid var(--line);width:100%;color:var(--ink);font:inherit;background:#fff;border-radius:0;padding:.65rem .85rem;font-size:.95rem;transition:border-color .15s}.portal-form-input:focus,.portal-form-select:focus,.portal-form-textarea:focus{border-color:var(--ink);outline:none;box-shadow:0 0 0 2px #0f0f110f}.portal-form-textarea{resize:vertical;min-height:130px;line-height:1.65}.portal-form-hint{color:var(--muted);margin-top:.2rem;font-size:.78rem;line-height:1.45}.portal-form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (max-width:480px){.portal-form-row{grid-template-columns:1fr}}.portal-form-actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.25rem;display:flex}.portal-form-submit{background:var(--ink);color:#fff;min-height:44px;font:inherit;letter-spacing:.04em;cursor:pointer;border:none;justify-content:center;align-items:center;padding:0 1.4rem;font-size:.88rem;font-weight:700;transition:background .15s,opacity .15s;display:inline-flex}.portal-form-submit:disabled{opacity:.5;cursor:not-allowed}.portal-form-submit:hover:not(:disabled){background:#252932}.portal-form-cancel{color:var(--muted);font-size:.88rem;text-decoration:none}.portal-form-cancel:hover{color:var(--ink);text-underline-offset:.15rem;text-decoration:underline}.portal-form-success{background:#f0faf5;border:1px solid #b3e5cc;border-left:4px solid #1a6b46;border-radius:0;padding:1.25rem}.portal-form-success p{color:#1a6b46;margin:0;font-weight:600}.portal-form-success p+p{margin-top:.4rem;font-size:.9rem;font-weight:400}.portal-form-error{border:1px solid #fbbf9a;border-left:4px solid var(--accent);background:#fef2f2;margin-bottom:1rem;padding:.8rem 1rem}.portal-form-error p{color:#821212;margin:0;font-size:.9rem}.rich-text-body hr,.entity-rich-text-body hr,.festival-detail-richtext hr{border:none;border-top:1px solid var(--line);margin:1.5rem 0}.festival-detail-page{padding-bottom:3rem}.festival-detail-layout{max-width:var(--content-max-width,1100px);padding:0 var(--page-gutter,1.25rem);grid-template-columns:260px 1fr;gap:2.5rem;margin:1.5rem auto 2rem;display:grid}.festival-detail-aside{flex-direction:column;gap:1.25rem;display:flex}.festival-detail-logo-wrap{aspect-ratio:1;background:var(--surface-strong);border-radius:12px;width:100%;overflow:hidden}.survey-tab{z-index:1100;background:var(--accent);color:#fff;font-family:var(--font-body);cursor:pointer;writing-mode:horizontal-tb;letter-spacing:.01em;border:none;border-radius:8px 0 0 8px;align-items:center;gap:.35rem;padding:.55rem .75rem .55rem .65rem;font-size:.82rem;font-weight:600;transition:background .2s,transform .2s;display:flex;position:fixed;bottom:40%;right:0;box-shadow:-2px 2px 8px #0000002e}.survey-tab:hover{background:#9a1e14;transform:translate(-3px)}.survey-tab-icon{font-size:1rem}.survey-backdrop{z-index:1200;pointer-events:none;justify-content:flex-end;align-items:flex-end;padding:1rem;display:flex;position:fixed;inset:0}.survey-panel{pointer-events:all;background:#fff;border-radius:12px;width:100%;max-width:420px;max-height:90dvh;animation:.25s survey-slide-in;overflow-y:auto;box-shadow:0 8px 40px #0000002e}@keyframes survey-slide-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.survey-panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem 1.25rem .75rem;display:flex}.survey-panel-title{font-family:var(--font-heading);letter-spacing:.03em;color:var(--ink);margin:0;font-size:1.2rem;line-height:1.2}.survey-panel-close{color:var(--muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:.25rem;font-size:1.1rem;line-height:1;transition:color .15s}.survey-panel-close:hover{color:var(--ink)}.survey-form{flex-direction:column;gap:1.1rem;padding:1rem 1.25rem 1.25rem;display:flex}.survey-fieldset{border:none;flex-direction:column;gap:.5rem;margin:0;padding:0;display:flex}.survey-legend{color:var(--ink);margin-bottom:.35rem;font-size:.875rem;font-weight:600}.survey-required{color:var(--accent)}.survey-stars{flex-wrap:wrap;align-items:center;gap:.15rem;display:flex}.survey-star{cursor:pointer;color:#d1d5db;background:0 0;border:none;padding:.1rem;font-size:1.75rem;line-height:1;transition:color .12s,transform .12s}.survey-star--active{color:#f59e0b}.survey-star:hover{transform:scale(1.15)}.survey-star-label{color:var(--muted);margin-left:.35rem;font-size:.78rem;font-style:italic}.survey-checks{flex-direction:column;gap:.35rem;display:flex}.survey-check-label{color:var(--ink);cursor:pointer;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.survey-check-input{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.survey-field{flex-direction:column;gap:.3rem;display:flex}.survey-label{color:var(--ink);font-size:.875rem;font-weight:600}.survey-textarea,.survey-input{font-family:var(--font-body);color:var(--ink);background:var(--surface-strong);border:1px solid var(--line);border-radius:6px;outline:none;width:100%;padding:.5rem .65rem;font-size:.875rem;transition:border-color .15s}.survey-textarea{resize:vertical;min-height:72px}.survey-textarea:focus,.survey-input:focus{border-color:var(--accent)}.survey-error{color:var(--accent);background:#fef2f2;border:1px solid #fca5a5;border-radius:4px;margin:0;padding:.4rem .6rem;font-size:.82rem}.survey-actions{align-items:center;gap:.75rem;display:flex}.survey-submit{background:var(--accent);color:#fff;font-family:var(--font-body);cursor:pointer;border:none;border-radius:6px;padding:.6rem 1.2rem;font-size:.9rem;font-weight:600;transition:background .15s,opacity .15s}.survey-submit:hover:not(:disabled){background:#9a1e14}.survey-submit:disabled{opacity:.6;cursor:not-allowed}.survey-skip{font-family:var(--font-body);color:var(--muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline;transition:color .15s}.survey-skip:hover:not(:disabled){color:var(--ink)}.survey-done{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1.5rem;display:flex}.survey-done-icon{font-size:2.5rem}.survey-done-title{font-family:var(--font-heading);letter-spacing:.03em;color:var(--ink);margin:0;font-size:1.2rem}.survey-done-text{color:var(--muted);margin:0;font-size:.875rem;line-height:1.5}.survey-done-close{background:var(--surface-strong);border:1px solid var(--line);font-family:var(--font-body);cursor:pointer;border-radius:6px;padding:.55rem 1.1rem;font-size:.875rem;transition:background .15s}.survey-done-close:hover{background:var(--line)}@media (max-width:500px){.survey-backdrop{align-items:flex-end;padding:0}.survey-panel{border-radius:12px 12px 0 0;max-width:100%;max-height:85dvh}}.festival-detail-logo{object-fit:contain;width:100%;height:100%;padding:8px;display:block}.festival-detail-logo-fallback{width:100%;height:100%}.festival-detail-meta{grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:.875rem;display:grid}.festival-detail-meta dt{color:var(--muted);white-space:nowrap;font-weight:600}.festival-detail-meta dd{color:var(--ink);margin:0}.festival-detail-artists h3{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 8px;font-size:.75rem;font-weight:700}.festival-detail-artists ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.festival-detail-artists li{font-size:.875rem}.festival-detail-artists a{color:var(--accent-indigo,#1d4ed8);font-weight:600;text-decoration:none}.festival-detail-artists a:hover{text-decoration:underline}.festival-detail-header{margin-bottom:1.5rem}.festival-detail-kicker{letter-spacing:.1em;text-transform:uppercase;color:var(--accent,#b42318);margin:0 0 .4rem;font-size:.72rem;font-weight:700}.festival-detail-header h1{margin:0 0 .6rem;line-height:1.1}.festival-detail-summary{color:var(--muted);margin:0;line-height:1.6}.festival-detail-section-label{text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 12px;font-size:.75rem;font-weight:700}.festival-detail-poster-section{margin-top:1.5rem}.festival-detail-poster-link{display:block}.festival-detail-poster{border-radius:10px;width:100%;max-width:480px;transition:opacity .15s;display:block;box-shadow:0 4px 24px #0000001a}.festival-detail-poster-link:hover .festival-detail-poster{opacity:.92}@media (max-width:760px){.festival-detail-layout{grid-template-columns:1fr}.festival-detail-aside{grid-template-columns:140px 1fr;align-items:start;gap:1rem;display:grid}.festival-detail-logo-wrap{width:140px;height:140px;aspect-ratio:unset}}.playlist-detail-page{padding-bottom:3rem}.playlist-detail-layout{grid-template-columns:280px 1fr;align-items:start;gap:2.5rem;width:min(100%,1200px);margin:2rem auto;padding:0 1.5rem;display:grid}.playlist-detail-aside{flex-direction:column;gap:1rem;display:flex;position:sticky;top:80px}.playlist-detail-cover{aspect-ratio:1;background:var(--surface-strong);border-radius:10px;width:100%;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000001f}.playlist-detail-cover-img{object-fit:cover;width:100%;height:100%;display:block}.playlist-detail-cover-fallback{width:100%;height:100%}.spotify-embed-wrapper{border-radius:12px;overflow:hidden}.spotify-embed-placeholder{height:80px;color:var(--muted);background:var(--surface-strong);border-radius:12px;justify-content:center;align-items:center;font-size:.85rem;display:flex}.spotify-embed-fallback-link{color:var(--accent-indigo);font-size:.875rem;font-weight:600;text-decoration:none}.spotify-embed-fallback-link:hover{text-decoration:underline}.tracklist-export{flex-shrink:0;gap:8px;display:flex}.tracklist-export-btn{border:1px solid var(--border,#e5e7eb);color:var(--ink,#0f172a);cursor:pointer;background:#fff;border-radius:6px;align-items:center;gap:5px;padding:5px 12px;font-size:.75rem;font-weight:600;transition:background .1s,border-color .1s;display:inline-flex}.tracklist-export-btn:hover{background:var(--surface-strong,#f3f4f6);border-color:var(--accent-indigo,#1d4ed8)}.tracklist-export-btn--secondary{color:var(--muted,#6b7280);background:0 0}.tracklist-export-btn--secondary:hover{background:var(--surface-strong,#f3f4f6);color:var(--ink,#0f172a)}.playlist-detail-cta-btn{text-align:center;color:#fff;background:#1db954;border-radius:8px;padding:.75rem 1rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:opacity .15s;display:block}.playlist-detail-cta-btn:hover{opacity:.88}.playlist-detail-header{margin-bottom:1.5rem}.playlist-detail-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 .35rem;font-size:.72rem;font-weight:700}.playlist-detail-header h1{margin:0 0 .5rem;line-height:1.1}.playlist-detail-summary{color:var(--muted);margin:0 0 .5rem;line-height:1.6}.playlist-detail-platform{color:var(--muted);margin:0;font-size:.8rem}.playlist-detail-section{margin-bottom:2rem}.playlist-detail-section h2{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line);margin:0 0 .75rem;padding-bottom:.4rem;font-size:.75rem;font-weight:700}.playlist-detail-artist-list{flex-wrap:wrap;gap:.4rem .6rem;margin:0;padding:0;list-style:none;display:flex}.playlist-detail-artist-link{color:var(--accent-indigo);border-bottom:1px solid #0000;font-size:.875rem;font-weight:600;text-decoration:none;transition:border-color .15s}.playlist-detail-artist-link:hover{border-color:var(--accent-indigo)}.playlist-detail-tracklist{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.playlist-detail-track{border-radius:6px;grid-template-columns:28px 40px 1fr;align-items:center;gap:.6rem;padding:.4rem .3rem;transition:background .1s;display:grid}.playlist-detail-track:hover{background:var(--surface-strong)}.playlist-detail-track-num{color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;font-size:.75rem}.playlist-detail-track-img{object-fit:cover;border-radius:4px;width:40px;height:40px}.playlist-detail-track-img--empty{background:var(--surface-strong);border-radius:4px}.playlist-detail-track-info{flex-direction:column;gap:.05rem;min-width:0;display:flex}.playlist-detail-track-title{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.875rem;font-weight:600;text-decoration:none;overflow:hidden}.playlist-detail-track-title:hover{color:var(--accent)}.playlist-detail-track-artist{color:var(--muted);font-size:.75rem}.playlist-detail-track-artist a{color:var(--muted);text-decoration:none}.playlist-detail-track-artist a:hover{color:var(--accent-indigo)}.playlist-detail-main{min-width:0}@media (max-width:760px){.playlist-detail-layout{grid-template-columns:1fr}.playlist-detail-aside{grid-template-columns:160px 1fr;align-items:start;gap:1rem;display:grid;position:static}.playlist-detail-cover{width:160px}}.servicios-layout{background:var(--bg);min-height:100dvh;color:var(--ink);flex-direction:column;display:flex}.servicios-notice{color:#92400e;text-align:center;background:#fef3c7;border-bottom:1px solid #fde68a;padding:.45rem 1rem;font-size:.78rem;font-weight:600}.servicios-hero{color:#fff;background:#0e0e0e;margin:-2rem -1.5rem 3rem;padding:0 1.5rem 3rem}.servicios-hero__private-badge{letter-spacing:.08em;text-transform:uppercase;color:#888;border-bottom:1px solid #1f1f1f;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.72rem;font-weight:700;display:flex}.servicios-hero__lock{font-size:.8rem}.servicios-hero__body{text-align:center;max-width:720px;margin:0 auto;padding:3.5rem 0 2.5rem}.servicios-hero__eyebrow{letter-spacing:.12em;text-transform:uppercase;color:#e23b2b;margin:0 0 1rem;font-size:.72rem;font-weight:700}.servicios-hero__title{font-family:var(--font-heading);letter-spacing:-.03em;color:#fff;margin:0 0 1.25rem;font-size:clamp(3rem,8vw,5.5rem);font-weight:900;line-height:.95}.servicios-hero__title-highlight{color:#f5c518}.servicios-hero__lead{color:#aaa;max-width:560px;margin:0 auto 2rem;font-size:1.05rem;line-height:1.65}.servicios-hero__actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;display:flex}.servicios-hero__btn-primary{color:#fff;letter-spacing:.04em;background:#e23b2b;border-radius:2px;padding:.85rem 1.75rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:background .15s;display:inline-block}.servicios-hero__btn-primary:hover{background:#c72e20}.servicios-hero__btn-ghost{color:#aaa;text-underline-offset:3px;font-size:.875rem;font-weight:600;text-decoration:underline;transition:color .15s;display:inline-block}.servicios-hero__btn-ghost:hover{color:#fff}.servicios-hero__pillars{background:#1f1f1f;border-top:1px solid #1f1f1f;border-bottom:1px solid #1f1f1f;grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.servicios-hero__pillar{text-align:center;background:#0e0e0e;flex-direction:column;align-items:center;gap:.25rem;padding:1.25rem 1rem;display:flex}.servicios-hero__pillar-value{font-family:var(--font-heading);color:#fff;letter-spacing:-.02em;font-size:1.4rem;font-weight:900}.servicios-hero__pillar-label{color:#666;font-size:.75rem;line-height:1.4}@media (max-width:640px){.servicios-hero{margin:-2rem -1.5rem 2rem}.servicios-hero__body{padding:2.5rem 0 2rem}.servicios-hero__title{font-size:3rem}.servicios-hero__pillars{grid-template-columns:1fr}.servicios-hero__pillar{padding:1rem}}.servicios-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:2rem 1.5rem 4rem}.servicios-footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:1.5rem;font-size:.8rem;line-height:1.7}.servicios-footer a{color:var(--muted);text-decoration:underline}.servicios-section-title{font-family:var(--font-heading);letter-spacing:.03em;margin:0 0 1rem;font-size:1.6rem}.servicios-featured{margin-bottom:2.5rem}.servicios-filters{flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;display:flex}.servicios-filter-pill{border:1.5px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:.35rem 1rem;font-size:.85rem;font-weight:600;transition:border-color .15s,background .15s,color .15s}.servicios-filter-pill:hover{border-color:var(--accent);color:var(--accent)}.servicios-filter-pill--active{background:var(--accent);border-color:var(--accent);color:#fff}.servicios-all{margin-top:1rem}.servicios-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem;display:grid}.servicios-empty{color:var(--muted);padding:2rem 0;font-size:.95rem}.servicios-card{background:var(--surface);border:1.5px solid var(--line);color:var(--ink);border-radius:10px;flex-direction:column;padding:1.35rem 1.25rem 1.25rem;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.servicios-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.servicios-card__badge{text-transform:uppercase;letter-spacing:.07em;color:var(--accent);margin-bottom:.6rem;font-size:.72rem;font-weight:700;display:inline-block}.servicios-card__title{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .6rem;font-size:1.25rem;line-height:1.2}.servicios-card__desc{color:var(--muted);flex:1;margin:0 0 .75rem;font-size:.88rem;line-height:1.55}.servicios-card__includes{color:var(--muted);margin:0 0 1rem;padding:0;font-size:.83rem;line-height:1.7;list-style:none}.servicios-card__footer{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;display:flex}.servicios-card__price{font-family:var(--font-heading);color:var(--ink);letter-spacing:.02em;font-size:1.35rem}.servicios-card__price--free{color:var(--ok)}.servicios-card__price--locked{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:600}.servicio-detail__locked{border-top:4px solid var(--accent);background:#f5f5f5;padding:1.6rem 1.4rem}.servicio-detail__locked-body{color:var(--muted);max-width:58ch;margin:.8rem 0 1.4rem;font-size:1rem;line-height:1.55}.servicio-detail__locked-actions{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.servicio-detail__locked-secondary{border:1px solid var(--ink);color:var(--ink);align-items:center;padding:.85rem 1.3rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.servicio-detail__locked-secondary:hover{background:var(--ink);color:#fff}.servicios-card__cta{color:var(--accent);font-size:.83rem;font-weight:700}.servicios-result{text-align:center;max-width:560px;margin:4rem auto;padding:0 1rem}.servicios-result__icon{margin-bottom:1rem;font-size:3.5rem;line-height:1}.servicios-result--success .servicios-result__icon{color:var(--ok)}.servicios-result__title{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 .75rem;font-size:2.2rem}.servicios-result__code{color:var(--muted);margin-bottom:1.5rem;font-size:.9rem}.servicios-result__code strong{color:var(--ink);font-weight:700}.servicios-result__body{color:var(--ink);margin-bottom:2rem;font-size:.97rem;line-height:1.7}.servicios-result__body p{margin:.5rem 0}.servicios-result__contact{color:var(--muted);font-size:.88rem}.servicios-result__contact a{color:var(--accent)}.servicios-result__back-btn{background:var(--accent);color:#fff;border-radius:6px;padding:.65rem 1.5rem;font-size:.9rem;font-weight:700;text-decoration:none;transition:opacity .15s;display:inline-block}.servicios-result__back-btn:hover{opacity:.88}.servicio-detail{max-width:1000px;margin:0 auto}.servicio-detail__back{margin-bottom:1.5rem}.servicio-detail__back a{color:var(--muted);font-size:.88rem;font-weight:600;text-decoration:none}.servicio-detail__back a:hover{color:var(--accent)}.servicio-detail__inner{grid-template-columns:1fr 1fr;align-items:start;gap:3rem;display:grid}.servicio-detail__meta{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.servicio-detail__category{text-transform:uppercase;letter-spacing:.07em;color:var(--accent);font-size:.75rem;font-weight:700}.servicio-detail__type-badge{color:#1e40af;background:#eff6ff;border-radius:999px;padding:.2rem .6rem;font-size:.72rem;font-weight:600}.servicio-detail__title{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 1rem;font-size:2.6rem;line-height:1.1}.servicio-detail__description{color:var(--muted);margin:0 0 1.25rem;font-size:.97rem;line-height:1.7}.servicio-detail__includes{margin:0 0 1rem;padding:0;font-size:.9rem;line-height:1.8;list-style:none}.servicio-detail__includes li{color:var(--ink)}.servicio-detail__includes span{color:var(--ok);font-weight:700}.servicio-detail__commitment{color:var(--muted);margin:.5rem 0;font-size:.85rem}.servicio-detail__disclaimer{color:#78350f;background:#fffbeb;border-left:3px solid #f59e0b;border-radius:4px;margin:1rem 0;padding:.75rem 1rem;font-size:.85rem}.servicio-detail__disclaimer p{margin:0}.servicio-detail__playlists{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.servicio-detail__spotify{color:#000;letter-spacing:.01em;background:#1ed760;border-radius:500px;align-items:center;gap:.5rem;margin:1rem 0;padding:.6rem 1rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex}.servicio-detail__spotify:hover{color:#000;background:#17c353;transform:scale(1.02)}.servicio-detail__price{align-items:baseline;gap:.5rem;margin:1.25rem 0 0;display:flex}.servicio-detail__price--free{font-family:var(--font-heading);color:var(--ok);font-size:1.8rem}.servicio-detail__price-amount{font-family:var(--font-heading);color:var(--ink);font-size:2.2rem}.servicio-detail__price-note{color:var(--muted);font-size:.82rem}.servicio-detail__form-section{position:sticky;top:2rem}.servicio-detail__form-title{font-family:var(--font-heading);letter-spacing:.02em;margin:0 0 1.25rem;font-size:1.5rem}.servicio-form{flex-direction:column;gap:1rem;display:flex}.servicio-form__fieldset{border:1.5px solid var(--line);border-radius:8px;margin:0;padding:1.1rem 1.1rem .75rem}.servicio-form__legend{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);padding:0 .35rem;font-size:.8rem;font-weight:700}.servicio-form__fieldset--fiscal{background:var(--surface-strong)}.servicio-form__variants{flex-direction:column;gap:.5rem;margin-top:.5rem;display:flex}.servicio-form__variant{border:1.5px solid var(--line);cursor:pointer;border-radius:6px;align-items:center;gap:.6rem;padding:.65rem .85rem;transition:border-color .12s,background .12s;display:flex}.servicio-form__variant--selected{border-color:var(--accent);background:#fff5f5}.servicio-form__variant input[type=radio]{accent-color:var(--accent);width:16px;height:16px}.servicio-form__variant-label{flex:1;font-size:.9rem;font-weight:600}.servicio-form__variant-price{font-family:var(--font-heading);color:var(--accent);font-size:1.1rem}.servicio-form__field{flex-direction:column;gap:.3rem;margin-top:.6rem;display:flex}.servicio-form__field label{color:var(--ink);font-size:.83rem;font-weight:600}.servicio-form__field input,.servicio-form__field select,.servicio-form__field textarea{border:1.5px solid var(--line);font-family:var(--font-body);color:var(--ink);background:#fff;border-radius:6px;padding:.55rem .75rem;font-size:.9rem;transition:border-color .12s}.servicio-form__field input:focus,.servicio-form__field select:focus,.servicio-form__field textarea:focus{border-color:var(--accent);outline:none}.servicio-form__field--checkbox{flex-direction:row;align-items:flex-start;gap:.5rem}.servicio-form__field--checkbox label{cursor:pointer;align-items:flex-start;gap:.5rem;font-size:.88rem;font-weight:400;display:flex}.servicio-form__field--checkbox input[type=checkbox]{accent-color:var(--accent);flex-shrink:0;width:16px;height:16px;margin-top:1px}.servicio-form__optional{color:var(--muted);font-weight:400}.servicio-form__error{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;padding:.75rem 1rem;font-size:.88rem}.servicio-form__submit{background:var(--accent);color:#fff;font-family:var(--font-body);cursor:pointer;text-align:center;border:none;border-radius:6px;padding:.8rem 1.5rem;font-size:1rem;font-weight:700;transition:opacity .15s}.servicio-form__submit:disabled{opacity:.55;cursor:not-allowed}.servicio-form__submit:not(:disabled):hover{opacity:.88}.servicio-form__stripe-notice{color:var(--muted);text-align:center;margin:0;font-size:.78rem}@media (max-width:720px){.servicio-detail__inner{grid-template-columns:1fr;gap:2rem}.servicio-detail__form-section{position:static}.servicio-detail__title{font-size:2rem}.servicios-grid{grid-template-columns:1fr}}:root{--em-paper:#f1ece1;--em-paper-d:#e8e1d2;--em-ink:#0d0c0a;--em-ink-soft:#2a2620;--em-muted:#8b8478;--em-rule:#0d0c0a2e;--em-red:#d72515;--em-red-deep:#a8190b;--em-serif:"Instrument Serif", "Times New Roman", serif;--em-sans:"Bricolage Grotesque", "Helvetica Neue", sans-serif;--em-mono:"JetBrains Mono", ui-monospace, monospace}.escucha-page{background:#fff;min-height:100vh}.escucha-container{max-width:520px;font-family:var(--em-sans);color:var(--em-paper);flex-direction:column;margin:0 auto;padding:0 0 4rem;display:flex}.escucha-header{border-bottom:1px solid #f1ece126;padding:28px 22px 20px}.escucha-masthead{font-family:var(--em-mono);letter-spacing:1.6px;text-transform:uppercase;opacity:.6;justify-content:space-between;align-items:center;margin-bottom:18px;font-size:10px;display:flex}.escucha-title{font-family:var(--em-serif);letter-spacing:-.04em;color:var(--em-paper);margin:0 0 10px;font-size:clamp(3.2rem,11vw,4.8rem);font-weight:400;line-height:.88}.escucha-title em{color:var(--em-red);font-style:italic}.escucha-claim{font-family:var(--em-sans);color:#f1ece1b8;max-width:38ch;margin:0;font-size:.97rem;line-height:1.5}.escucha-streak-bar{font-family:var(--em-mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--em-red);align-items:center;gap:6px;margin-top:12px;font-size:10px;display:flex}.escucha-streak-dot{background:var(--em-red);border-radius:50%;flex-shrink:0;width:6px;height:6px}.escucha-player-section{border-bottom:1px solid #f1ece11f;flex-direction:column;gap:14px;margin:0;padding:22px 22px 20px;display:flex}.escucha-player-label{font-family:var(--em-mono);letter-spacing:2px;text-transform:uppercase;color:#f1ece18c;margin:0;font-size:10px}.escucha-hidden-cover{aspect-ratio:1;background:var(--em-ink);flex-shrink:0;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.escucha-hidden-cover-label{font-family:var(--em-serif);color:var(--em-paper);letter-spacing:-.03em;z-index:2;text-align:center;font-size:clamp(3rem,14vw,5rem);font-style:italic;line-height:.9;position:relative}.escucha-hidden-cover-sub{font-family:var(--em-mono);letter-spacing:2px;color:var(--em-paper);opacity:.5;text-transform:uppercase;z-index:2;text-align:center;margin-top:8px;font-size:9px;position:relative}.escucha-custom-player{align-items:center;gap:14px;width:100%;display:flex}.escucha-play-btn{background:var(--em-red);width:56px;height:56px;color:var(--em-paper);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 4px 18px #d7251566}.escucha-play-btn:hover{transform:scale(1.06);box-shadow:0 6px 24px #d725158c}.escucha-play-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.escucha-play-btn.playing{background:var(--em-ink-soft);box-shadow:none}.escucha-play-btn svg{display:block}.escucha-progress-wrap{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.escucha-progress-bar{cursor:pointer;background:#f1ece126;width:100%;height:3px;position:relative}.escucha-progress-fill{background:var(--em-paper);height:100%;transition:width .25s linear}.escucha-progress-time{font-family:var(--em-mono);letter-spacing:1px;color:#f1ece180;font-variant-numeric:tabular-nums;font-size:10px}.escucha-progress-duration{opacity:.6}.escucha-no-audio{font-family:var(--em-mono);letter-spacing:1.5px;color:#f1ece173;text-align:center;text-transform:uppercase;font-size:11px}.escucha-listen-hint{font-family:var(--em-mono);letter-spacing:1.2px;color:#f1ece180;text-align:center;text-transform:uppercase;margin:0;font-size:11px}.escucha-btn-primary{background:var(--em-red);color:var(--em-paper);font-family:var(--em-sans);letter-spacing:-.01em;cursor:pointer;text-align:left;border:none;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:18px 22px;font-size:1.07rem;font-weight:600;transition:opacity .12s;display:flex}.escucha-btn-primary:after{content:"→";opacity:.8;font-size:1.2rem}.escucha-btn-primary:hover:not(:disabled){opacity:.9}.escucha-btn-primary:disabled{opacity:.35;cursor:not-allowed}.escucha-btn-secondary{color:var(--em-paper);font-family:var(--em-sans);cursor:pointer;text-align:left;background:0 0;border:1px solid #f1ece14d;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:18px 22px;font-size:1.07rem;font-weight:600;text-decoration:none;display:flex}.escucha-btn-secondary:after{content:"→";opacity:.6}.escucha-btn-secondary:hover{border-color:#f1ece199}.escucha-btn-ghost{color:#f1ece173;font-family:var(--em-mono);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;text-underline-offset:3px;text-align:center;background:0 0;border:none;width:100%;padding:8px;font-size:10px;text-decoration:underline}.escucha-btn-share{background:var(--em-paper);color:var(--em-ink);font-family:var(--em-sans);cursor:pointer;border:none;flex:1;justify-content:space-between;align-items:center;padding:16px 22px;font-size:1rem;font-weight:700;text-decoration:none;display:flex}.escucha-btn-share:hover{opacity:.9}.escucha-rule{align-items:center;gap:10px;margin:6px 0;padding:0 22px;display:flex}.escucha-rule:before,.escucha-rule:after{content:"";background:#f1ece12e;flex:1;height:1px}.escucha-rule-label{font-family:var(--em-mono);letter-spacing:2px;text-transform:uppercase;color:#f1ece166;white-space:nowrap;font-size:9px}.escucha-howto{flex-direction:column;gap:28px;padding:28px 22px;display:flex}.escucha-howto-title{font-family:var(--em-serif);letter-spacing:-.04em;color:var(--em-paper);margin:0;font-size:2.6rem;font-weight:400;line-height:.9}.escucha-howto-list{border-top:1px solid #f1ece126;flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.escucha-howto-list li{border-bottom:1px solid #f1ece126;align-items:flex-start;gap:16px;padding:16px 0;display:flex}.escucha-howto-icon{font-family:var(--em-serif);color:var(--em-red);flex-shrink:0;min-width:2rem;font-size:2rem;font-style:italic;line-height:1}.escucha-howto-list strong{color:var(--em-paper);margin-bottom:3px;font-size:.97rem;font-weight:600;display:block}.escucha-howto-list p{color:#f1ece199;margin:0;font-size:.88rem;line-height:1.5}.escucha-howto-note{font-family:var(--em-mono);letter-spacing:1.5px;color:#f1ece159;text-align:center;text-transform:uppercase;margin:0;font-size:10px}.escucha-form-section{flex-direction:column;gap:0;padding:22px;display:flex}.escucha-form-title{font-family:var(--em-serif);letter-spacing:-.04em;color:var(--em-paper);margin:0 0 22px;font-size:2.2rem;font-weight:400;line-height:.92}.escucha-form-title em{font-style:italic}.escucha-question{border-bottom:1px solid #f1ece11f;flex-direction:column;gap:10px;padding:18px 0;display:flex}.escucha-question-label{font-family:var(--em-mono);letter-spacing:1.8px;color:#f1ece18c;text-transform:uppercase;margin:0;font-size:10px}.escucha-question-label .req{color:var(--em-red)}.escucha-binary-btns{gap:8px;display:flex}.escucha-binary-btn{color:var(--em-paper);cursor:pointer;font-family:var(--em-sans);background:0 0;border:1px solid #f1ece140;flex:1;justify-content:space-between;align-items:center;padding:16px 12px;font-size:1rem;font-weight:600;transition:border-color .12s,background .12s;display:flex}.escucha-binary-btn.selected{background:var(--em-red);border-color:var(--em-red);color:var(--em-paper)}.escucha-input{width:100%;color:var(--em-paper);font-family:var(--em-serif);letter-spacing:-.02em;background:0 0;border:none;border-bottom:1.5px solid #f1ece166;outline:none;padding:10px 0;font-size:1.5rem;font-style:italic;transition:border-color .15s}.escucha-input:focus{border-bottom-color:var(--em-paper)}.escucha-input::placeholder{color:#f1ece14d;font-style:italic}.escucha-stars{gap:6px;display:flex}.escucha-star{height:52px;color:var(--em-paper);font-family:var(--em-serif);cursor:pointer;background:0 0;border:1px solid #f1ece140;flex:1;justify-content:center;align-items:center;padding:0;font-size:1.4rem;font-style:italic;transition:background .1s,border-color .1s;display:flex}.escucha-star.active{background:var(--em-ink-soft);border-color:var(--em-paper);color:var(--em-paper)}.escucha-star:hover{border-color:var(--em-paper)}.escucha-reveal-section{flex-direction:column;gap:0;display:flex}.escucha-already-badge{font-family:var(--em-mono);letter-spacing:2px;text-transform:uppercase;color:var(--em-red);border-bottom:1px solid #f1ece11f;margin:0;padding:14px 22px;font-size:10px}.escucha-reveal-cover{aspect-ratio:1;object-fit:cover;width:100%;display:block}.escucha-reveal-info{flex-direction:column;gap:6px;padding:22px 22px 0;display:flex}.escucha-reveal-artist{font-family:var(--em-mono);letter-spacing:2px;text-transform:uppercase;color:var(--em-red);margin:0;font-size:10px;font-weight:700}.escucha-reveal-title{font-family:var(--em-serif);letter-spacing:-.04em;color:var(--em-paper);margin:0;font-size:clamp(2.4rem,10vw,3.6rem);font-weight:400;line-height:.88}.escucha-reveal-title em{font-style:italic}.escucha-reveal-desc{color:#f1ece199;margin:4px 0 0;font-size:.9rem;line-height:1.55}.escucha-reveal-links{border-top:1px solid #f1ece126;gap:0;margin-top:16px;display:flex}.escucha-link-song,.escucha-link-spotify{font-family:var(--em-mono);letter-spacing:1.5px;text-transform:uppercase;text-align:center;color:#f1ece1a6;border-right:1px solid #f1ece126;flex:1;padding:14px 12px;font-size:10px;text-decoration:none;transition:color .12s}.escucha-link-song:last-child,.escucha-link-spotify:last-child{border-right:none}.escucha-link-song:hover{color:var(--em-paper)}.escucha-link-spotify:hover{color:#1db954}.escucha-guesses{border-top:1px solid #f1ece11f;flex-direction:column;gap:6px;padding:14px 22px;display:flex}.escucha-guess{font-family:var(--em-mono);letter-spacing:1.2px;text-transform:uppercase;margin:0;padding:0;font-size:11px}.escucha-guess.correct{color:#4ade80}.escucha-guess.wrong{color:#f1ece166}.escucha-streak-badge{font-family:var(--em-serif);letter-spacing:-.02em;color:var(--em-paper);border-top:1px solid #f1ece11f;padding:16px 22px;font-size:1.5rem;font-weight:400}.escucha-streak-max{font-family:var(--em-mono);letter-spacing:1.2px;color:#f1ece166;text-transform:uppercase;margin-top:2px;font-size:10px;display:block}.escucha-share{border-top:1px solid #f1ece11f;display:flex}.escucha-score-reveal{border-top:1px solid #f1ece11f;flex-direction:column;gap:12px;width:100%;padding:16px 22px;display:flex}.escucha-score-label{font-family:var(--em-mono);letter-spacing:2px;text-transform:uppercase;color:#f1ece166;margin:0;font-size:9px;font-weight:700}.escucha-score-pills{flex-wrap:wrap;gap:6px;display:flex}.escucha-score-pill{font-family:var(--em-mono);letter-spacing:1px;text-transform:uppercase;border:1px solid;padding:5px 10px;font-size:10px;font-weight:700}.escucha-score-pill.correct{color:#4ade80}.escucha-score-pill.wrong{color:#f1ece14d;border-color:#f1ece126}.escucha-score-pill.neutral{color:#f1ece166}.escucha-score-pill.bonus{color:#fbbf24}.escucha-score-total{align-items:baseline;gap:8px;display:flex}.escucha-score-number{font-family:var(--em-serif);color:var(--em-paper);letter-spacing:-.04em;font-size:5rem;font-style:italic;line-height:.85}.escucha-score-unit{font-family:var(--em-mono);letter-spacing:1.2px;text-transform:uppercase;color:#f1ece173;font-size:11px}.escucha-register-cta{border-top:1px solid #f1ece11f;flex-direction:column;gap:16px;width:100%;padding:22px;display:flex}.escucha-register-cta-text{color:#f1ece1b3;margin:0;font-size:.95rem;line-height:1.5}.escucha-register-cta-perks{flex-wrap:wrap;gap:6px;display:flex}.escucha-register-cta-perks span{font-family:var(--em-mono);letter-spacing:1px;text-transform:uppercase;color:#f1ece18c;border:1px solid #f1ece133;padding:4px 8px;font-size:10px}.escucha-register-section{flex-direction:column;gap:0;padding:22px;display:flex}.escucha-register-desc{color:#f1ece199;margin:0 0 22px;font-size:.9rem;line-height:1.5}.escucha-register-fine{font-family:var(--em-mono);letter-spacing:1.2px;color:#f1ece14d;text-align:center;text-transform:uppercase;margin:0;padding:16px 0 0;font-size:10px;line-height:1.6}.escucha-error{font-family:var(--em-mono);letter-spacing:1px;color:var(--em-red);text-transform:uppercase;margin:0;font-size:11px}.escucha-unavailable{text-align:center;padding:60px 22px}.escucha-unavailable p{font-family:var(--em-mono);letter-spacing:1.5px;color:#f1ece166;text-transform:uppercase;margin:0;font-size:11px}.escucha-done{font-family:var(--em-sans);color:#f1ece1cc;padding:32px 22px;font-size:1rem;line-height:1.5}.escucha-color-picker{flex-wrap:wrap;gap:8px;display:flex}.escucha-color-btn{cursor:pointer;border:2px solid #0000;border-radius:50%;flex-shrink:0;width:34px;height:34px;transition:transform .12s,border-color .12s}.escucha-color-btn:hover{transform:scale(1.15)}.escucha-color-btn.selected{border-color:var(--em-paper);transform:scale(1.1)}.escucha-invite-block{text-align:center;border-top:1px solid #f1ece11f;flex-direction:column;align-items:center;gap:10px;padding:20px 22px;display:flex}.escucha-invite-label{font-family:var(--em-mono);letter-spacing:2px;color:#f1ece166;text-transform:uppercase;margin:0;font-size:9px}.escucha-invite-code{font-family:var(--em-serif);letter-spacing:-.02em;color:var(--em-red);margin:0;font-size:2.4rem;font-style:italic;line-height:1}.escucha-checkbox-row{align-items:flex-start;gap:10px;padding:14px 0;display:flex}.escucha-checkbox-row input{accent-color:var(--em-red);flex-shrink:0;margin-top:3px}.escucha-checkbox-row label{font-family:var(--em-mono);letter-spacing:1.2px;color:#f1ece18c;cursor:pointer;text-transform:uppercase;font-size:10px;line-height:1.6}.escucha-game-grid{grid-template-columns:minmax(0,420px) 1fr;max-width:960px;min-height:calc(100vh - 53px);margin:0 auto;display:grid}.escucha-game-col-left{border-right:1px solid #f1ece11f;flex-direction:column;display:flex}.escucha-game-col-right{position:relative;overflow-x:hidden}@media (max-width:680px){.escucha-game-grid{grid-template-columns:1fr}.escucha-game-col-left{border-right:none}.escucha-game-col-right-desktop-only{display:none}}@media (max-width:480px){.escucha-container{max-width:100%}.escucha-header{padding:20px 16px 16px}.escucha-masthead{margin-bottom:12px}.escucha-player-section{gap:12px;padding:16px 16px 14px}.escucha-hidden-cover-label{font-size:clamp(2.4rem,12vw,3.2rem)}.escucha-play-btn{width:50px;height:50px}.escucha-form-section{padding:16px}.escucha-form-title{font-size:1.8rem}.escucha-question{padding:14px 0}.escucha-binary-btns{flex-direction:column}.escucha-binary-btn{padding:14px 12px;font-size:.95rem}.escucha-stars{gap:4px}.escucha-star{height:44px;font-size:1.2rem}.escucha-btn-primary,.escucha-btn-secondary{padding:16px;font-size:.98rem}.escucha-reveal-info{padding:16px 16px 0}.escucha-reveal-title{font-size:clamp(2rem,9vw,3rem)}.escucha-reveal-links{flex-wrap:wrap}.escucha-link-song,.escucha-link-spotify{padding:12px 8px;font-size:9px}.escucha-score-reveal{padding:14px 16px}.escucha-score-number{font-size:4rem}.escucha-register-cta,.escucha-register-section{padding:16px}.escucha-streak-badge{padding:14px 16px}.escucha-guesses,.escucha-already-badge{padding:12px 16px}.escucha-share{flex-direction:column}.escucha-btn-share{padding:14px 16px}.escucha-invite-block{padding:16px}.escucha-done{padding:24px 16px}}.marcador-container{flex-direction:column;gap:1.5rem;max-width:560px;margin:0 auto;padding:2rem 1.25rem 4rem;display:flex}.marcador-header{text-align:center}.marcador-month{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.82rem;font-weight:700}.marcador-title{font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;color:#f9fafb;margin:0;font-size:clamp(2.4rem,8vw,3.5rem);line-height:1}.marcador-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.marcador-entry{background:#1a1a1f;border:1px solid #2d2d36;border-radius:10px;align-items:center;gap:.75rem;padding:.85rem 1rem;transition:border-color .15s;display:flex}.marcador-entry.is-self{border-color:var(--accent);background:#b4231812}.marcador-position{font-family:var(--font-heading);text-align:center;flex-shrink:0;min-width:2rem;font-size:1.4rem;line-height:1}.marcador-pos-1{color:#f59e0b}.marcador-pos-2{color:#94a3b8}.marcador-pos-3{color:#cd7f32}.marcador-pos-other{color:#4b5563}.marcador-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.85rem;font-weight:700;display:flex}.marcador-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.marcador-alias{color:#f9fafb;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.marcador-streak{color:#9ca3af;font-size:.78rem}.marcador-score{flex-direction:column;flex-shrink:0;align-items:flex-end;display:flex}.marcador-score-num{font-family:var(--font-heading);color:#f9fafb;font-size:1.6rem;line-height:1}.marcador-score-label{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:.68rem}.marcador-no-played{color:#4b5563;font-size:.75rem;font-style:italic}.marcador-invite-cta{text-align:center;background:#1a1a1f;border:1px dashed #2d2d36;border-radius:10px;flex-direction:column;align-items:center;gap:.75rem;padding:1.25rem;display:flex}.marcador-invite-text{color:#9ca3af;margin:0;font-size:.92rem}@media (max-width:480px){.marcador-container{padding:1.5rem 1rem 3rem}.marcador-score-num{font-size:1.3rem}.escucha-container{padding:1.5rem 1rem 3rem}.escucha-star{font-size:2rem}}.apuestas-container{background:#1a1a1f;border:1px solid #2d2d36;border-radius:12px;flex-direction:column;gap:1.25rem;width:100%;padding:1.5rem;display:flex}.apuestas-header{flex-direction:column;gap:.4rem;display:flex}.apuestas-title{font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;color:#f3f4f6;margin:0;font-size:1.6rem}.apuestas-desc{color:#9ca3af;margin:0;font-size:.9rem}.apuestas-loading{color:#6b7280;text-align:center;margin:0;font-size:.9rem}.apuestas-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.apuesta-entry{flex-direction:column;gap:.2rem;display:flex}.apuesta-btn{cursor:pointer;text-align:left;background:#0f0f11;border:1px solid #3f3f4a;border-radius:8px;align-items:center;gap:.75rem;width:100%;padding:.65rem .75rem;transition:border-color .15s,background .15s;display:flex}.apuesta-entry.selected .apuesta-btn{border-color:var(--accent);background:#b423181f}.apuesta-entry.blocked .apuesta-btn{opacity:.45;cursor:not-allowed}.apuesta-entry.dimmed .apuesta-btn{opacity:.5;cursor:not-allowed}.apuesta-btn:hover:not(:disabled){border-color:#6b7280}.apuesta-entry.selected .apuesta-btn:hover{border-color:var(--accent)}.apuesta-cover{object-fit:cover;border-radius:4px;flex-shrink:0;width:44px;height:44px}.apuesta-cover-placeholder{background:#2d2d36;border-radius:4px;flex-shrink:0;width:44px;height:44px}.apuesta-info{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.apuesta-day{letter-spacing:.06em;text-transform:uppercase;color:#6b7280;font-size:.72rem;font-weight:600}.apuesta-song{color:#f9fafb;white-space:nowrap;text-overflow:ellipsis;font-size:.95rem;font-weight:700;overflow:hidden}.apuesta-artist{color:#9ca3af;white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;overflow:hidden}.apuesta-status{flex-shrink:0;justify-content:center;align-items:center;width:24px;display:flex}.apuesta-lock{font-size:.9rem}.apuesta-check{color:var(--accent);font-size:1rem;font-weight:700}.apuesta-circle{border:2px solid #3f3f4a;border-radius:50%;width:18px;height:18px;display:block}.apuesta-blocked-msg{color:#6b7280;margin:0 0 0 .75rem;padding-left:44px;font-size:.78rem}.apuestas-error{color:#f87171;margin:0;font-size:.88rem}.apuestas-confirmed{color:#4ade80;text-align:center;background:#1f7a4526;border:1px solid #4ade8040;border-radius:6px;padding:.6rem 1rem;font-size:.9rem;font-weight:700}.semana-container{flex-direction:column;gap:2rem;max-width:600px;margin:0 auto;padding:2rem 1.25rem 4rem;display:flex}.semana-breadcrumb{font-size:.88rem}.semana-breadcrumb a{color:#9ca3af;text-decoration:none}.semana-breadcrumb a:hover{color:#e5e7eb}.semana-header{text-align:center;flex-direction:column;gap:.5rem;display:flex}.semana-week-label{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:0;font-size:.82rem;font-weight:700}.semana-title{font-family:var(--font-heading);letter-spacing:.02em;text-transform:uppercase;color:#f9fafb;margin:0;font-size:clamp(2.4rem,8vw,3.5rem);line-height:1}.semana-summary{color:#9ca3af;max-width:50ch;margin:.5rem auto 0;font-size:.95rem;line-height:1.55}.semana-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.semana-entry{background:#1a1a1f;border:1px solid #2d2d36;border-radius:10px;align-items:center;gap:1rem;padding:1rem;display:flex}.semana-rank{font-family:var(--font-heading);color:var(--accent);text-align:center;flex-shrink:0;min-width:2.5rem;font-size:1.8rem;line-height:1}.semana-cover{object-fit:cover;border-radius:6px;flex-shrink:0;width:56px;height:56px}.semana-cover-placeholder{background:#2d2d36;border-radius:6px;flex-shrink:0;width:56px;height:56px}.semana-info{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.semana-artist{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:700;text-decoration:none;overflow:hidden}.semana-song{color:#f9fafb;white-space:nowrap;text-overflow:ellipsis;font-size:1rem;font-weight:700;text-decoration:none;overflow:hidden}.semana-song:hover,.semana-artist:hover{text-decoration:underline}.semana-spotify{color:#1db954;margin-top:.1rem;font-size:.8rem;text-decoration:none}.semana-spotify:hover{text-decoration:underline}.semana-votes{flex-direction:column;flex-shrink:0;align-items:center;min-width:3rem;display:flex}.semana-vote-count{font-family:var(--font-heading);color:#f9fafb;font-size:1.6rem;line-height:1}.semana-vote-label{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.semana-stats{color:#6b7280;justify-content:center;gap:.75rem;font-size:.85rem;display:flex}.semana-cta{justify-content:center;display:flex}@media (max-width:480px){.semana-container{padding:1.5rem 1rem 3rem}.semana-rank{min-width:2rem;font-size:1.4rem}.semana-cover,.semana-cover-placeholder{width:44px;height:44px}}.insignias-container{flex-direction:column;gap:2rem;max-width:560px;margin:0 auto;padding:2rem 1.25rem 4rem;display:flex}.insignias-header{text-align:center}.insignias-list{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.insignia-card{background:#1a1a1f;border:1px solid #2d2d36;border-radius:10px;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.insignia-emoji{flex-shrink:0;font-size:2rem;line-height:1}.insignia-info{flex-direction:column;gap:.15rem;display:flex}.insignia-label{color:#f9fafb;margin:0;font-size:1rem;font-weight:700}.insignia-desc{color:#9ca3af;margin:0;font-size:.85rem}.insignias-cta{justify-content:center;display:flex}.portal-dashboard{--portal-gap:2rem;--portal-card-bg:var(--surface,#fff);--portal-card-bg-strong:var(--surface-strong,#f7f5ee);--portal-card-border:var(--line,#e6e2d6);--portal-card-radius:0;--portal-shadow-hover:0 8px 20px -12px #0d0c0a2e;gap:var(--portal-gap);flex-direction:column;display:flex}.portal-hero{border-top:3px solid var(--ink);padding-top:1.25rem}.portal-hero__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 .4rem;font-size:.72rem;font-weight:700}.portal-hero__title{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--ink);margin:0 0 .5rem;font-size:clamp(2rem,5vw,3.2rem);line-height:.95}.portal-hero__sub{color:var(--muted);margin:0;font-size:.98rem;line-height:1.5}.portal-hero__link{color:var(--ink);text-underline-offset:3px;align-items:center;gap:4px;font-weight:600;text-decoration:underline;display:inline-flex}.portal-hero__link:hover{color:var(--accent)}.portal-status-banner{border-left:3px solid var(--ink);background:var(--surface-strong);align-items:flex-start;gap:.85rem;padding:.85rem 1rem;display:flex}.portal-status-banner--warning{color:#78350f;background:#fff8eb;border-left-color:#d97706}.portal-status-banner--ok{color:#14532d;background:#ecfdf3;border-left-color:#15803d}.portal-status-banner__title{margin:0 0 2px;font-size:.9rem;font-weight:700;line-height:1.3}.portal-status-banner__desc{opacity:.88;margin:0;font-size:.85rem;line-height:1.5}.portal-empty{border:1px solid var(--portal-card-border);border-top:3px solid var(--accent);background:var(--portal-card-bg);color:var(--ink);align-items:flex-start;gap:1rem;padding:1.5rem 1.25rem;display:flex}.portal-empty__title{margin:0 0 .35rem;font-size:1.1rem;font-weight:700;line-height:1.3}.portal-empty__desc{color:var(--muted);margin:0;font-size:.9rem;line-height:1.55}.portal-empty__desc a{color:var(--accent);font-weight:600;text-decoration:underline}.portal-stats{grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:1rem;margin-bottom:0;display:grid}.portal-stat{transition:transform .18s,box-shadow .18s,border-color .18s;position:relative}.portal-stat--link{color:inherit;cursor:pointer;text-decoration:none}.portal-stat--link:hover{box-shadow:var(--portal-shadow-hover);border-top-color:var(--accent);transform:translateY(-2px)}.portal-stat--warning{border-top-color:#d97706}.portal-stat--warning .portal-stat__num{color:#d97706}.portal-stat__arrow{opacity:0;color:var(--accent);transition:opacity .18s,transform .18s;position:absolute;top:.85rem;right:.95rem}.portal-stat--link:hover .portal-stat__arrow{opacity:1;transform:translate(2px)}.portal-section__head{margin-bottom:.9rem}.portal-section__title{font-family:var(--font-heading);color:var(--ink);align-items:center;gap:.5rem;margin:0 0 .2rem;font-size:1.25rem;line-height:1.1;display:inline-flex}.portal-section__title svg{color:var(--accent)}.portal-section__sub{color:var(--muted);margin:0;font-size:.82rem}.portal-next-steps{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.portal-next-step{border-top:1px solid var(--portal-card-border);grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:1rem 0;display:grid}.portal-next-step:last-child{border-bottom:1px solid var(--portal-card-border)}.portal-next-step__index{font-family:var(--font-heading);color:var(--accent);min-width:2.4rem;font-size:1.6rem;font-style:italic;line-height:1}.portal-next-step__title{color:var(--ink);align-items:center;gap:.4rem;margin:0 0 2px;font-size:.95rem;font-weight:700;display:inline-flex}.portal-next-step__title svg{color:var(--accent)}.portal-next-step__desc{color:var(--muted);margin:0;font-size:.85rem;line-height:1.5}.portal-next-step__cta{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;align-items:center;gap:.35rem;padding:.5rem .85rem;font-size:.75rem;font-weight:700;text-decoration:none;transition:background .15s;display:inline-flex}.portal-next-step__cta:hover{background:var(--accent)}@media (max-width:560px){.portal-next-step{grid-template-columns:auto 1fr;gap:.75rem}.portal-next-step__cta{grid-column:1/-1;justify-content:center;justify-self:stretch}}.portal-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:1rem;display:grid}.portal-action-card{border:1px solid var(--portal-card-border);background:var(--portal-card-bg);color:var(--ink);flex-direction:column;gap:.45rem;padding:1.25rem 1.25rem 1.5rem;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s;display:flex;position:relative}.portal-action-card:hover{box-shadow:var(--portal-shadow-hover);border-color:var(--ink);transform:translateY(-2px)}.portal-action-card__icon{background:var(--surface-strong);width:36px;height:36px;color:var(--accent);justify-content:center;align-items:center;margin-bottom:.3rem;transition:background .18s,color .18s;display:inline-flex}.portal-action-card:hover .portal-action-card__icon{background:var(--accent);color:#fff}.portal-action-card__title{margin:0;font-size:1rem;font-weight:700;line-height:1.25}.portal-action-card__desc{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.portal-action-card__arrow{color:var(--accent);opacity:0;transition:opacity .18s,transform .18s;position:absolute;bottom:1rem;right:1rem;transform:translate(-4px)}.portal-action-card:hover .portal-action-card__arrow{opacity:1;transform:translate(0)}.portal-artists-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:1rem;display:grid}.portal-artist-card{border:1px solid var(--portal-card-border);border-top:3px solid var(--ink);background:var(--portal-card-bg);padding:1rem 1.25rem;transition:border-top-color .18s}.portal-artist-card:hover{border-top-color:var(--accent)}.portal-artist-card__name{color:var(--ink);margin:0 0 .25rem;font-size:1rem;font-weight:700;line-height:1.3}.portal-artist-card__status{margin:0 0 .6rem;font-size:.75rem;font-weight:600}.portal-artist-card__status--ok{color:#166534}.portal-artist-card__status--draft{color:var(--muted)}.portal-artist-card__link{color:var(--accent);align-items:center;gap:4px;font-size:.78rem;font-weight:600;text-decoration:none;display:inline-flex}.portal-artist-card__link:hover{text-underline-offset:3px;text-decoration:underline}.portal-user-card__head{align-items:center;gap:.75rem;display:flex}.portal-user-card__avatar{background:var(--ink);color:#fff;width:40px;height:40px;font-family:var(--font-heading);letter-spacing:.01em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.95rem;font-weight:700;display:inline-flex}.portal-user-card__body{min-width:0}.portal-user-card__eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin:0 0 .1rem;font-size:.66rem;font-weight:700}.portal-user-card__name{color:var(--ink);overflow-wrap:anywhere;margin:0 0 .2rem;font-size:.92rem;font-weight:700;line-height:1.25}.portal-user-card__meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.4rem;margin:0;font-size:.75rem;display:flex}.portal-plan-chip{text-transform:uppercase;letter-spacing:.06em;border:1px solid;align-items:center;padding:1px 7px;font-size:.66rem;font-weight:700;line-height:1.6;display:inline-flex}.portal-plan-chip--free{color:#525252}.portal-plan-chip--radar{color:#0369a1}.portal-plan-chip--pro{color:#7c3aed}.portal-nav-link{border-radius:0;gap:.65rem}.portal-nav-link svg{color:var(--muted);transition:color .15s}.portal-nav-link:hover svg,.portal-nav-link--active svg{color:var(--accent)}@media (max-width:760px){.portal-nav{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin:0 -1rem;padding:0 1rem .5rem;overflow-x:auto}.portal-nav::-webkit-scrollbar{display:none}.portal-nav-link{scroll-snap-align:start;white-space:nowrap;flex-shrink:0}.bs-hero-grid{grid-template-columns:1fr!important;gap:32px!important}.bs-capsule{text-align:left!important;border-radius:0!important;grid-template-columns:1fr!important;gap:14px!important;padding:20px 24px!important}.bs-capsule+.bs-capsule{margin-top:0}}@media (max-width:720px){.bs-header-secondary{display:none!important}}@media (max-width:480px){.bs-header-tag{display:none!important}}@media (max-width:760px){.bs-hero-strip{grid-template-columns:1fr!important;gap:16px!important}.bs-hero-strip>p{justify-self:start!important}}