/* Agenda e perfis: uma camada isolada, com cores e tipografia herdadas do tema. */
.vpb-agenda-grid,.vpb-flex-events.vpb-events-event_grid_3x1{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important}
.vpb-agenda-list{display:grid;gap:14px}
.vpb-agenda-event{min-width:0;overflow:hidden;border:1px solid var(--vpb-line,rgba(128,128,128,.2));border-radius:14px;background:var(--vpb-bg,#f4f1e9)}
.vpb-agenda-event-open{display:flex;flex-direction:column;width:100%;height:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;cursor:pointer;font:inherit}
.vpb-agenda-event-open:hover .vpb-agenda-event-title{color:var(--vpb-accent,#e72f58)}
.vpb-agenda-event-open:focus-visible{outline:3px solid var(--vpb-accent,#e72f58);outline-offset:-4px;border-radius:13px}
.vpb-agenda-event-cover{display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:rgba(128,128,128,.1)}
.vpb-agenda-media{display:block;position:relative;width:100%;height:100%;overflow:hidden}
.vpb-agenda-media img{display:block;width:100%!important;height:100%!important;object-fit:cover;object-position:center}
.vpb-agenda-placeholder{display:grid;width:100%;height:100%;place-items:center;color:var(--vpb-muted,#777);font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,rgba(128,128,128,.12),rgba(128,128,128,.02))}
.vpb-agenda-event-copy{display:flex;flex-direction:column;gap:9px;padding:20px;width:100%;box-sizing:border-box;flex:1}
.vpb-agenda-event-category{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--vpb-accent,#e72f58)}
.vpb-agenda-event-title{font:750 clamp(1.1rem,1.7vw,1.5rem)/1.2 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.025em;overflow-wrap:anywhere}
.vpb-agenda-event-copy time,.vpb-agenda-event-location{font-size:.82rem;line-height:1.5;opacity:.8}
.vpb-agenda-event-more{display:flex;justify-content:space-between;align-items:center;padding-top:12px;margin-top:auto;font-size:.76rem;font-weight:700}
.vpb-agenda-event-list .vpb-agenda-event-open{flex-direction:row;align-items:center}
.vpb-agenda-event-list .vpb-agenda-event-cover{flex:0 0 130px;width:130px;align-self:stretch;aspect-ratio:1/1}
.vpb-agenda-event-list .vpb-agenda-event-copy{min-width:0}
.vpb-agenda-page{padding:44px 0 70px}
.vpb-agenda-page-head{max-width:780px;margin-bottom:30px}
.vpb-agenda-page-head h1{font:800 clamp(2.2rem,5vw,4rem)/1.08 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.05em;margin:12px 0}
.vpb-agenda-page-head p{font-size:1rem;line-height:1.65;opacity:.8}
.vpb-agenda-count,.vpb-agenda-filter-context{font-size:.85rem;opacity:.8;margin:20px 0}
.vpb-agenda-empty{font-size:.92rem;line-height:1.65;opacity:.7;padding:12px 0;margin:0}
.vpb-agenda-pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:36px}
.vpb-agenda-pagination .page-numbers{display:inline-block;padding:10px 14px;border:1px solid var(--vpb-line,#ddd);border-radius:6px;font-size:.85rem}
.vpb-agenda-pagination .current{background:var(--vpb-accent,#e72f58);color:#fff}
body .vpb-event-modal-dialog{width:min(920px,calc(100vw - 28px));height:auto;aspect-ratio:auto;max-height:calc(100dvh - 40px)}
.vpb-event-modal-close{z-index:3;background:#111!important;color:#fff!important;border-radius:50%;width:34px;height:34px;font-size:1.5rem}
.vpb-event-popup-cover{margin:0 0 24px}
.vpb-event-popup-cover .vpb-agenda-media{aspect-ratio:16/9;border-radius:9px}
.vpb-event-popup-cover figcaption{font-size:.68rem;line-height:1.5;opacity:.65;margin-top:7px}
.vpb-event-modal-dialog .vpb-event-popup-title{font:750 clamp(1.65rem,3.6vw,2.8rem)/1.08 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.04em;margin:12px 36px 24px 0;color:inherit}
.vpb-event-popup-description{margin-bottom:22px;max-width:68ch}
.vpb-event-modal-dialog .vpb-event-popup-description p{font:.95rem/1.65 var(--vpb-sans,Arial,sans-serif);margin:0 0 12px}
.vpb-event-popup-related{border-top:1px solid rgba(255,255,255,.16);padding-top:24px;margin-top:28px}
.vpb-event-modal-dialog .vpb-event-popup-related>h3{font:750 1.15rem/1.3 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.02em;margin:0 0 18px}
.vpb-agenda-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.vpb-agenda-story{min-width:0}
.vpb-agenda-story>a{display:block;color:inherit;text-decoration:none!important}
.vpb-agenda-story-media{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:9px;background:rgba(128,128,128,.1)}
.vpb-agenda-story-media img{display:block;width:100%;height:100%;object-fit:cover}
.vpb-agenda-story-copy{display:block;padding-top:12px}
.vpb-agenda-story small{font-size:.7rem;opacity:.65}
.vpb-agenda-story h4{margin:7px 0 0;font:700 1rem/1.35 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.02em;overflow-wrap:anywhere}
.vpb-artist-page{padding:28px 0 70px}
.vpb-artist-hero{position:relative;display:flex;align-items:flex-end;min-height:260px;aspect-ratio:12/5;border-radius:16px;overflow:hidden;background:#1d1b24;color:#fff}
.vpb-artist-hero .vpb-artist-hero-media{position:absolute;inset:0}
.vpb-artist-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.85),transparent 85%);pointer-events:none}
.vpb-artist-hero-copy{position:relative;z-index:1;padding:clamp(24px,4vw,60px);max-width:900px}
.vpb-artist-hero h1{font:800 clamp(2.5rem,6.5vw,6rem)/1 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.055em;margin:16px 0}
.vpb-artist-hero p{font-size:clamp(.95rem,1.5vw,1.2rem);line-height:1.6;max-width:65ch;margin:0}
.vpb-artist-cover-credit{font-size:.7rem;opacity:.65;margin:9px 0 0}
.vpb-artist-nav{display:flex;gap:24px;overflow:auto;padding:22px 0;border-bottom:1px solid var(--vpb-line,#ddd)}
.vpb-artist-nav a{white-space:nowrap;font-size:.82rem;font-weight:700}
.vpb-artist-bio{max-width:75ch;margin:32px 0}
.vpb-artist-section{padding:40px 0;border-bottom:1px solid var(--vpb-line,#ddd);scroll-margin-top:100px}
.vpb-artist-section h2{font:750 clamp(1.5rem,2.6vw,2.2rem)/1.15 var(--vpb-sans,Arial,sans-serif);letter-spacing:-.035em;margin:0 0 24px}
.vpb-artist-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:24px}
.vpb-artist-section-head h2{margin:0}
.vpb-artist-section-head>a{font-size:.78rem;font-weight:700;white-space:nowrap}
.vpb-artist-release{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:center}
.vpb-artist-release h2{margin:14px 0}
.vpb-artist-release-meta{font-size:.85rem;opacity:.7}
.vpb-artist-player{display:block;max-width:100%;border:0;border-radius:12px;background:transparent}
.vpb-artist-player.is-video{aspect-ratio:16/9;height:auto}
.vpb-artist-listen{display:inline-block;font-size:.78rem;font-weight:700;margin-top:12px}
.vpb-artist-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.vpb-artist-links a{display:inline-flex;align-items:center;border:1px solid var(--vpb-line,#ccc);padding:10px 14px;border-radius:999px;font-size:.8rem;font-weight:600;overflow-wrap:anywhere}
.vpb-artist-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.vpb-artist-gallery figure{margin:0;min-width:0}
.vpb-artist-gallery img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px}
.vpb-artist-gallery figcaption{font-size:.72rem;line-height:1.5;opacity:.7;margin-top:8px}
.vpb-artist-community,.vpb-artist-extra-playlists{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.vpb-artist-community h3,.vpb-artist-extra-playlists h3{font:700 1.1rem/1.3 var(--vpb-sans,Arial,sans-serif);margin:0 0 14px}
.vpb-artist-extra-playlists{margin-top:28px}
@media(max-width:1024px){.vpb-agenda-grid,.vpb-flex-events.vpb-events-event_grid_3x1{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}.vpb-artist-hero{aspect-ratio:16/9}.vpb-artist-release{gap:24px}}
@media(max-width:640px){.vpb-agenda-grid,.vpb-flex-events.vpb-events-event_grid_3x1{grid-template-columns:1fr!important}.vpb-agenda-event-cover{aspect-ratio:4/3}.vpb-agenda-event-list .vpb-agenda-event-cover{flex-basis:90px;width:90px}.vpb-agenda-event-copy{padding:16px}.vpb-agenda-related-grid{grid-template-columns:1fr;gap:16px}.vpb-agenda-story>a{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:center}.vpb-agenda-story-copy{padding:0}.vpb-agenda-story h4{font-size:.92rem}.vpb-artist-release,.vpb-artist-community,.vpb-artist-extra-playlists{grid-template-columns:minmax(0,1fr)}.vpb-artist-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.vpb-artist-hero{aspect-ratio:4/3;min-height:280px}.vpb-artist-section-head{align-items:flex-start;flex-direction:column;gap:12px}.vpb-artist-section{padding:30px 0}.vpb-artist-nav{gap:20px}body .vpb-event-modal-dialog{max-height:calc(100dvh - 28px)}.vpb-artist-page{padding-top:16px}}

/* O resumo e as matérias ficam visíveis sem uma capa ocupar todo o popup. */
.vpb-event-popup-intro.has-cover{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:start}
.vpb-event-popup-cover{margin:0 0 20px}
.vpb-event-popup-cover .vpb-agenda-media{aspect-ratio:4/3}
.vpb-event-modal-dialog .vpb-event-popup-title{font-size:clamp(1.5rem,3vw,2.3rem);margin-top:9px}
.vpb-event-popup-copy{min-width:0}
@media(max-width:640px){.vpb-event-popup-intro.has-cover{grid-template-columns:1fr;gap:0}.vpb-event-popup-cover .vpb-agenda-media{aspect-ratio:2/1}.vpb-event-popup-cover{margin-bottom:18px}}
.vpb-events-event_compact .vpb-agenda-event-cover{flex-basis:80px;width:80px}
.vpb-events-event_compact .vpb-agenda-event-copy{padding:12px;gap:6px}
.vpb-events-event_compact .vpb-agenda-event-title{font-size:1rem}
.vpb-events-event_compact .vpb-agenda-event-copy time,.vpb-events-event_compact .vpb-agenda-event-location{font-size:.75rem}

.vpb-artist-hero-copy,.vpb-artist-release-copy,.vpb-artist-release-player,.vpb-artist-extra-playlists>article{min-width:0}
.vpb-artist-hero h1,.vpb-artist-section h2{overflow-wrap:anywhere}
.vpb-artist-hero{width:100%;max-width:100%;box-sizing:border-box}
.vpb-artist-hero-copy{width:100%;max-width:100%;box-sizing:border-box}
@media(max-width:640px){.vpb-artist-hero{min-height:0}}
/* Títulos do popup têm escala própria mesmo dentro de blocos com fonte ampliada. */
body .vpb-event-modal-dialog .vpb-event-popup-related>h3{font-size:1.15rem!important;line-height:1.3!important}
body .vpb-event-modal-dialog .vpb-agenda-story h4{font-size:1rem!important;line-height:1.35!important}
