/* SVG Podcasts – front-end (studio showcase, archive cards, audio player, embed).
   Structure, animation and sensible defaults only. Colours, typography, spacing and sizes
   are overridden by the Elementor widgets' Style controls (higher specificity). */

.svgp {
	--svgp-accent: #178a8c;
	--svgp-navy: #0e3a5c;
	--svgp-ink: #14202b;
	--svgp-muted: #62727f;
	--svgp-line: #e2e8ee;
	--svgp-gap: 24px;
	--svgp-radius: 18px;
	--svgp-star: #d49b00;
	--svgp-on-accent: #fff;
	--svgp-wave: rgba(20, 32, 43, 0.22);
	--svgp-progress: var(--svgp-accent);
	box-sizing: border-box;
	width: 100%;
	color: var(--svgp-ink);
	font-family: "Roboto Condensed", "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
	font-stretch: condensed;
	font-size: 17px;
	line-height: 1.4;
}

.svgp *,
.svgp *::before,
.svgp *::after {
	box-sizing: border-box;
}

.svgp [hidden] {
	display: none !important;
}

.svgp-sr {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Reset parent-theme link / button / form styling inside the widgets */
.svgp a,
.svgp a:hover,
.svgp a:focus {
	color: inherit;
	text-decoration: none;
}

.svgp a:focus-visible,
.svgp button:focus-visible,
.svgp select:focus-visible,
.svgp input:focus-visible,
.svgp [role="slider"]:focus-visible,
.svgp summary:focus-visible {
	outline: 2px solid var(--svgp-accent);
	outline-offset: 2px;
	box-shadow: none;
}

.svgp button {
	font-family: inherit;
}

.svgp-ico {
	display: block;
	flex: none;
	width: 1.15em;
	height: 1.15em;
}

.svgp-empty {
	margin: 2rem 0;
	color: var(--svgp-muted);
	text-align: center;
}

/* ---------- Grid ---------- */
.svgp-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--svgp-gap);
}

/* ---------- Card ---------- */
.svgp-card {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	overflow: hidden;
	border: 1px solid var(--svgp-line);
	border-radius: var(--svgp-radius);
	background-color: #fff;
	box-shadow: 0 6px 22px rgba(14, 58, 92, 0.1);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.svgp-hover--lift .svgp-card:hover,
.svgp-hover--lift .svgp-card:focus-within {
	transform: translateY(-4px);
	box-shadow: 0 16px 34px rgba(14, 58, 92, 0.18);
}

.svgp-card__cover {
	position: relative;
	flex: none;
	overflow: hidden;
	aspect-ratio: 1;
	background: linear-gradient(135deg, #0a2540, #178a8c);
}

.svgp .svgp-card__img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.svgp-hover--lift .svgp-card:hover .svgp-card__img {
	transform: scale(1.05);
}

.svgp-card__ph {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	color: rgba(255, 255, 255, 0.85);
}

.svgp-card__ph .svgp-ico {
	width: 3rem;
	height: 3rem;
}

.svgp-card__play {
	position: absolute;
	inset-inline-end: 0.9rem;
	inset-block-end: 0.9rem;
	display: grid;
	place-items: center;
	width: 3rem;
	height: 3rem;
	border-radius: 50%;
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.3);
	opacity: 0.95;
	transition: transform 0.25s ease, opacity 0.25s ease;
}

.svgp-card__play .svgp-ico {
	width: 1.3rem;
	height: 1.3rem;
	margin-inline-start: 2px;
}

.svgp-card:hover .svgp-card__play,
.svgp-card:focus-within .svgp-card__play {
	transform: scale(1.1);
	opacity: 1;
}

.svgp-card__over {
	position: absolute;
	inset-block-start: 0.8rem;
	inset-inline: 0.8rem;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0.5rem;
	pointer-events: none;
}

.svgp-card__num {
	padding: 0.25em 0.75em;
	border-radius: 999px;
	background-color: rgba(10, 37, 64, 0.82);
	color: #fff;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	-webkit-backdrop-filter: blur(4px);
	backdrop-filter: blur(4px);
}

.svgp-card__star {
	display: grid;
	place-items: center;
	width: 1.9rem;
	height: 1.9rem;
	margin-inline-start: auto;
	border-radius: 50%;
	background-color: var(--svgp-star);
	color: #fff;
}

.svgp-card__star .svgp-ico {
	width: 1rem;
	height: 1rem;
	fill: currentColor;
}

.svgp-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.55rem;
	padding: 1.1rem 1.2rem 1.25rem;
}

.svgp-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.3rem 0.8rem;
	font-size: 0.88rem;
}

.svgp-card__cat {
	padding: 0.15em 0.7em;
	border-radius: 999px;
	background-color: rgba(23, 138, 140, 0.12);
	color: var(--svgp-accent);
	font-weight: 700;
}

.svgp-card__date,
.svgp-card__dur {
	color: var(--svgp-muted);
	font-weight: 600;
}

.svgp-card__dur::before {
	content: "·";
	margin-inline-end: 0.8rem;
}

.svgp .svgp-card__title {
	margin: 0;
	color: inherit;
	font-size: 1.3rem;
	font-weight: 800;
	line-height: 1.2;
}

/* the whole card is clickable through the title link */
.svgp-card__link::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}

.svgp-card__link:hover,
.svgp-card__link:focus {
	color: var(--svgp-accent);
}

.svgp-card__link:focus-visible {
	outline: none;
}

.svgp-card:has(.svgp-card__link:focus-visible) {
	outline: 2px solid var(--svgp-accent);
	outline-offset: 3px;
}

.svgp-card__guests {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	margin: 0;
	color: var(--svgp-muted);
	font-size: 0.92rem;
	font-weight: 600;
}

.svgp-card__guests .svgp-ico {
	width: 1rem;
	height: 1rem;
	color: var(--svgp-accent);
}

.svgp-card__excerpt {
	margin: 0;
	color: var(--svgp-muted);
	font-size: 1rem;
}

.svgp-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: auto;
	padding-top: 0.35rem;
	color: var(--svgp-accent);
	font-weight: 700;
}

.svgp-card__cta .svgp-ico {
	width: 1rem;
	height: 1rem;
}

.svgp-card.is-featured {
	border-color: rgba(212, 155, 0, 0.55);
}

/* ---------- List view: one episode per row ---------- */
.svgp-view--list .svgp-grid {
	grid-template-columns: minmax(0, 1fr);
	gap: calc(var(--svgp-gap) * 0.7);
}

.svgp-view--list .svgp-card {
	flex-direction: row;
	align-items: stretch;
}

.svgp-view--list .svgp-card__cover {
	width: 170px;
	aspect-ratio: auto;
	min-height: 170px;
}

.svgp-view--list .svgp-card__play {
	inset-inline-end: 0.6rem;
	inset-block-end: 0.6rem;
	width: 2.4rem;
	height: 2.4rem;
}

.svgp-view--list .svgp-card__body {
	justify-content: center;
}

.svgp-view--list .svgp-card__cta {
	margin-top: 0;
}

/* ---------- Audio player (shared: showcase hero, episode page) ---------- */
.svgp-player {
	width: 100%;
}

.svgp-player audio {
	display: block;
	width: 100%;
}

.svgp-pl {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.svgp .svgp-pl__play {
	position: relative;
	display: grid;
	flex: none;
	place-items: center;
	width: 3.6rem;
	height: 3.6rem;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.28);
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.svgp .svgp-pl__play:hover,
.svgp .svgp-pl__play:focus {
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
	transform: scale(1.06);
}

.svgp-pl__icon {
	display: grid;
	place-items: center;
	grid-area: 1 / 1;
}

.svgp-pl__icon .svgp-ico {
	width: 1.5rem;
	height: 1.5rem;
}

.svgp-pl__icon--play .svgp-ico {
	margin-inline-start: 3px;
}

.svgp-pl__icon--pause {
	display: none;
}

.svgp-player.is-playing .svgp-pl__icon--play {
	display: none;
}

.svgp-player.is-playing .svgp-pl__icon--pause {
	display: grid;
}

.svgp-player.is-playing .svgp-pl__play::after {
	content: "";
	position: absolute;
	inset: -6px;
	border: 2px solid var(--svgp-accent);
	border-radius: 50%;
	opacity: 0;
	animation: svgp-pulse 1.8s ease-out infinite;
}

.svgp-pl__body {
	flex: 1;
	min-width: 0;
}

/* The waveform: a bar pattern used as a mask for the track, the buffered part and the played part. */
.svgp-pl__wave {
	--svgp-bars: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 40' preserveAspectRatio='none'%3E%3Cg fill='%23000'%3E%3Crect x='0' y='13' width='3' height='14' rx='1.5'/%3E%3Crect x='6' y='9' width='3' height='22' rx='1.5'/%3E%3Crect x='12' y='5' width='3' height='30' rx='1.5'/%3E%3Crect x='18' y='11' width='3' height='18' rx='1.5'/%3E%3Crect x='24' y='2' width='3' height='36' rx='1.5'/%3E%3Crect x='30' y='7' width='3' height='26' rx='1.5'/%3E%3Crect x='36' y='14' width='3' height='12' rx='1.5'/%3E%3Crect x='42' y='4' width='3' height='32' rx='1.5'/%3E%3Crect x='48' y='8' width='3' height='24' rx='1.5'/%3E%3Crect x='54' y='1' width='3' height='38' rx='1.5'/%3E%3Crect x='60' y='12' width='3' height='16' rx='1.5'/%3E%3Crect x='66' y='6' width='3' height='28' rx='1.5'/%3E%3Crect x='72' y='3' width='3' height='34' rx='1.5'/%3E%3Crect x='78' y='10' width='3' height='20' rx='1.5'/%3E%3Crect x='84' y='15' width='3' height='10' rx='1.5'/%3E%3Crect x='90' y='5' width='3' height='30' rx='1.5'/%3E%3Crect x='96' y='9' width='3' height='22' rx='1.5'/%3E%3Crect x='102' y='2' width='3' height='36' rx='1.5'/%3E%3Crect x='108' y='11' width='3' height='18' rx='1.5'/%3E%3Crect x='114' y='7' width='3' height='26' rx='1.5'/%3E%3C/g%3E%3C/svg%3E");
	position: relative;
	height: 2.8rem;
	cursor: pointer;
	touch-action: none;
}

.svgp-pl__wave::before,
.svgp-pl__buf,
.svgp-pl__fill {
	position: absolute;
	inset-block: 0;
	inset-inline-start: 0;
	-webkit-mask-image: var(--svgp-bars);
	mask-image: var(--svgp-bars);
	-webkit-mask-size: 120px 100%;
	mask-size: 120px 100%;
	-webkit-mask-repeat: repeat-x;
	mask-repeat: repeat-x;
}

.svgp-pl__wave::before {
	content: "";
	width: 100%;
	background-color: var(--svgp-wave);
}

.svgp-pl__buf {
	width: 0;
	background-color: var(--svgp-wave);
	filter: brightness(1.7);
}

.svgp-pl__fill {
	width: 0;
	background-color: var(--svgp-progress);
}

.svgp-pl__wave:focus-visible {
	outline: 2px solid var(--svgp-accent);
	outline-offset: 4px;
	border-radius: 6px;
}

.svgp-pl__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.3rem 1rem;
	margin-top: 0.3rem;
}

.svgp-pl__time {
	font-size: 0.9rem;
	font-variant-numeric: tabular-nums;
	font-weight: 600;
	opacity: 0.85;
}

.svgp-pl__tools {
	display: inline-flex;
	align-items: center;
	gap: 0.2rem;
}

.svgp .svgp-pl__skip,
.svgp .svgp-pl__speed,
.svgp .svgp-pl__dl {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.2rem;
	min-width: 2.2rem;
	height: 2.2rem;
	margin: 0;
	padding: 0 0.45rem;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: inherit;
	font-size: 0.82rem;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	opacity: 0.8;
	transition: opacity 0.2s ease, background-color 0.2s ease;
}

.svgp .svgp-pl__skip:hover,
.svgp .svgp-pl__speed:hover,
.svgp .svgp-pl__dl:hover,
.svgp .svgp-pl__skip:focus,
.svgp .svgp-pl__speed:focus,
.svgp .svgp-pl__dl:focus {
	background-color: rgba(128, 150, 170, 0.18);
	color: inherit;
	opacity: 1;
}

.svgp-pl__skip .svgp-ico,
.svgp-pl__dl .svgp-ico {
	width: 1.25rem;
	height: 1.25rem;
}

.svgp-player.has-error .svgp-pl__wave {
	opacity: 0.35;
	pointer-events: none;
}

/* ---------- Buttons ---------- */
.svgp a.svgp-btn,
.svgp a.svgp-listen,
.svgp .svgp-embed__btn {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 0.75em 1.5em;
	border: 2px solid var(--svgp-accent);
	border-radius: 999px;
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
	font-family: inherit;
	font-size: 1.05rem;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease, filter 0.2s ease;
}

.svgp a.svgp-btn:hover,
.svgp a.svgp-listen:hover,
.svgp a.svgp-btn:focus,
.svgp a.svgp-listen:focus,
.svgp .svgp-embed__btn:hover,
.svgp .svgp-embed__btn:focus {
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
	filter: brightness(1.06);
	transform: translateY(-1px);
}

.svgp a.svgp-btn .svgp-ico,
.svgp a.svgp-listen .svgp-ico,
.svgp .svgp-embed__btn .svgp-ico {
	width: 1.1rem;
	height: 1.1rem;
}

/* ---------- Embed (privacy two-click gate) ---------- */
.svgp-embed {
	position: relative;
	display: grid;
	min-height: var(--svgp-embed-h, 232px);
	overflow: hidden;
	border-radius: 16px;
	background-color: #0a2540;
	color: #fff;
}

.svgp-embed--video {
	aspect-ratio: 16 / 9;
	min-height: 0;
}

.svgp-embed__cover {
	position: absolute;
	inset: -20px;
	background-color: #0a2540;
	background-position: center;
	background-size: cover;
	filter: blur(16px) brightness(0.4);
}

.svgp-embed__box {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	max-width: 520px;
	margin: auto;
	padding: 1.5rem;
	text-align: center;
}

.svgp .svgp-embed__note {
	margin: 0;
	font-size: 0.95rem;
	line-height: 1.5;
	opacity: 0.92;
}

.svgp-embed.is-loaded .svgp-embed__cover {
	display: none;
}

.svgp .svgp-embed__frame {
	position: relative;
	display: block;
	width: 100%;
	max-width: 100%;
	border: 0;
}

.svgp-embed--video .svgp-embed__frame {
	height: 100%;
}

/* ---------- Studio showcase ---------- */
.svgp-studio {
	--svgp-accent: #ffb547;
	--svgp-on-accent: #0a2540;
	--svgp-glow: #2fd0c4;
	--svgp-wave: rgba(255, 255, 255, 0.26);
	--svgp-progress: var(--svgp-accent);
	--svgp-st-muted: rgba(255, 255, 255, 0.72);
	--svgp-cover: 230px;
	--svgp-disc: #0b0f14;
	--svgp-disc-label: var(--svgp-accent);
	position: relative;
	isolation: isolate;
	overflow: hidden;
	border-radius: 28px;
	background-color: #0a2540;
	color: #fff;
}

/* decoration: two soft glows and a faint sound-wave texture */
.svgp-studio__glow {
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background:
		radial-gradient(560px 360px at 88% -8%, color-mix(in srgb, var(--svgp-glow) 38%, transparent), transparent 70%),
		radial-gradient(480px 340px at -6% 108%, color-mix(in srgb, var(--svgp-accent) 22%, transparent), transparent 70%);
}

.svgp-studio__glow::after {
	content: "";
	position: absolute;
	inset-inline: 0;
	inset-block-end: 0;
	height: 46%;
	opacity: 0.07;
	background: repeating-linear-gradient(90deg, #fff 0 3px, transparent 3px 11px);
	-webkit-mask-image: linear-gradient(180deg, transparent, #000 90%);
	mask-image: linear-gradient(180deg, transparent, #000 90%);
}

.svgp-studio__inner {
	padding: clamp(1.4rem, 4vw, 3.2rem);
}

.svgp-studio__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 1.2rem 2rem;
	margin: 0 0 clamp(1.4rem, 3vw, 2.4rem);
}

.svgp-studio__headtext {
	min-width: 0;
	max-width: 720px;
}

.svgp .svgp-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	margin: 0 0 0.7rem;
	color: var(--svgp-accent);
	font-size: 0.9rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

/* animated equaliser bars ("on air") */
.svgp-onair {
	display: inline-flex;
	align-items: flex-end;
	gap: 2px;
	height: 0.95em;
}

.svgp-onair i {
	display: block;
	width: 3px;
	height: 100%;
	border-radius: 2px;
	background-color: currentColor;
	transform-origin: bottom;
	animation: svgp-eq 1.1s ease-in-out infinite;
}

.svgp-onair i:nth-child(2) { animation-delay: -0.35s; animation-duration: 0.9s; }
.svgp-onair i:nth-child(3) { animation-delay: -0.7s; animation-duration: 1.3s; }
.svgp-onair i:nth-child(4) { animation-delay: -0.15s; animation-duration: 1s; }

.svgp .svgp-studio__title {
	margin: 0;
	color: #fff;
	font-size: clamp(2rem, 4.2vw, 3.2rem);
	font-weight: 800;
	line-height: 1.05;
	letter-spacing: -0.01em;
}

.svgp .svgp-studio__sub {
	margin: 0.8rem 0 0;
	color: var(--svgp-st-muted);
	font-size: 1.15rem;
}

/* subscribe pills */
.svgp-subs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.5rem;
}

.svgp-subs__label {
	margin-inline-end: 0.2rem;
	color: var(--svgp-st-muted);
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.svgp a.svgp-sub {
	display: inline-flex;
	align-items: center;
	padding: 0.4em 1.05em;
	border: 1px solid rgba(255, 255, 255, 0.3);
	border-radius: 999px;
	background-color: rgba(255, 255, 255, 0.05);
	color: #fff;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.3;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.svgp a.svgp-sub:hover,
.svgp a.svgp-sub:focus {
	border-color: var(--svgp-accent);
	background-color: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.svgp-studio__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.65fr) minmax(280px, 1fr);
	align-items: start;
	gap: clamp(1.5rem, 3vw, 3rem);
}

.svgp-studio__grid.no-playlist {
	grid-template-columns: minmax(0, 1fr);
}

/* ----- main episode ----- */
.svgp-feature {
	display: flex;
	align-items: center;
	gap: clamp(1.2rem, 3vw, 2.2rem);
	min-width: 0;
}

.svgp-feature__stage {
	position: relative;
	flex: none;
	width: var(--svgp-cover);
}

.svgp-feature.has-disc .svgp-feature__stage {
	width: calc(var(--svgp-cover) * 1.3);
}

.svgp a.svgp-feature__art {
	position: relative;
	z-index: 1;
	display: block;
	width: var(--svgp-cover);
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 16px;
	background: linear-gradient(135deg, #12486b, #178a8c);
	box-shadow: 0 26px 50px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.08);
}

.svgp .svgp-feature__img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.svgp-feature__ph {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	color: rgba(255, 255, 255, 0.85);
}

.svgp-feature__ph .svgp-ico {
	width: 4rem;
	height: 4rem;
}

.svgp-feature__star {
	position: absolute;
	inset-block-start: -0.5rem;
	inset-inline-start: -0.5rem;
	z-index: 2;
	display: grid;
	place-items: center;
	width: 2.1rem;
	height: 2.1rem;
	border-radius: 50%;
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.35);
}

.svgp-feature__star .svgp-ico {
	width: 1.05rem;
	height: 1.05rem;
	fill: currentColor;
}

/* the vinyl record peeking out from behind the cover; it spins while the episode plays */
.svgp-feature__disc {
	position: absolute;
	inset-block-start: 0;
	inset-inline-start: calc(var(--svgp-cover) * 0.3);
	z-index: 0;
	width: var(--svgp-cover);
	aspect-ratio: 1;
	border-radius: 50%;
	background:
		conic-gradient(from 30deg, transparent 0 18%, rgba(255, 255, 255, 0.16) 25%, transparent 32% 68%, rgba(255, 255, 255, 0.16) 75%, transparent 82%),
		repeating-radial-gradient(circle at center, rgba(255, 255, 255, 0.07) 0 1px, transparent 1px 4px),
		var(--svgp-disc);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.5), inset 0 0 0 2px rgba(255, 255, 255, 0.05);
	translate: 0 0;
	transition: translate 0.6s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.svgp-feature__disclabel {
	position: absolute;
	inset: 33%;
	border-radius: 50%;
	background-color: var(--svgp-disc-label);
}

.svgp-feature__disclabel::before {
	content: "";
	position: absolute;
	inset: 41%;
	border-radius: 50%;
	background-color: #0b0f14;
}

.svgp-feature__disclabel::after {
	content: "";
	position: absolute;
	inset-block-start: 9%;
	inset-inline-start: 46%;
	width: 8%;
	height: 14%;
	border-radius: 2px;
	background-color: rgba(11, 15, 20, 0.55);
}

.svgp-feature.is-playing .svgp-feature__disc {
	translate: 9% 0;
	animation: svgp-spin 5s linear infinite;
}

.svgp-feature__main {
	flex: 1;
	min-width: 0;
}

.svgp .svgp-feature__kicker {
	display: flex;
	align-items: center;
	gap: 0.6rem;
	margin: 0 0 0.6rem;
	color: var(--svgp-accent);
	font-size: 0.88rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.svgp-feature:not(.is-playing) .svgp-feature__kicker .svgp-onair i {
	animation-play-state: paused;
	transform: scaleY(0.35);
}

.svgp .svgp-feature__title {
	margin: 0;
	color: #fff;
	font-size: clamp(1.5rem, 2.6vw, 2.1rem);
	font-weight: 800;
	line-height: 1.12;
}

.svgp .svgp-feature__title a:hover,
.svgp .svgp-feature__title a:focus {
	color: var(--svgp-accent);
}

.svgp-feature__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.3rem 0.5rem;
	margin: 0.75rem 0 0;
	color: var(--svgp-st-muted);
	font-size: 0.95rem;
	font-weight: 600;
}

.svgp-feature__meta > * + *::before {
	content: "·";
	margin-inline-end: 0.5rem;
	opacity: 0.7;
}

.svgp-feature__cat {
	color: var(--svgp-accent);
	font-weight: 800;
}

.svgp-feature__guests {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
}

.svgp-feature__guests .svgp-ico {
	width: 1rem;
	height: 1rem;
}

.svgp .svgp-feature__excerpt {
	margin: 0.85rem 0 0;
	color: var(--svgp-st-muted);
	font-size: 1.05rem;
	line-height: 1.5;
}

.svgp-feature__action {
	margin-top: 1.3rem;
}

.svgp-feature__action .svgp-pl {
	padding: 0.8rem 1rem 0.55rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 18px;
	background-color: rgba(255, 255, 255, 0.06);
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}

.svgp a.svgp-feature__more {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	margin-top: 1rem;
	color: var(--svgp-accent);
	font-weight: 700;
}

.svgp a.svgp-feature__more .svgp-ico {
	width: 1.1rem;
	height: 1.1rem;
	transition: transform 0.2s ease;
}

.svgp a.svgp-feature__more:hover .svgp-ico,
.svgp a.svgp-feature__more:focus .svgp-ico {
	transform: translateX(4px);
}

/* ----- playlist ----- */
.svgp-playlist {
	padding: 1.1rem 0.6rem 0.4rem;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 22px;
	background-color: rgba(255, 255, 255, 0.05);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

.svgp .svgp-playlist__title {
	margin: 0 0 0.4rem;
	padding: 0 0.9rem;
	color: var(--svgp-st-muted);
	font-size: 0.85rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.svgp-tracks {
	margin: 0;
	padding: 0;
	list-style: none;
}

.svgp-track {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.svgp-track:last-child {
	border-bottom: 0;
}

.svgp a.svgp-track__link {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	padding: 0.85rem 0.9rem;
	border-radius: 14px;
	transition: background-color 0.2s ease;
}

.svgp a.svgp-track__link:hover,
.svgp a.svgp-track__link:focus-visible {
	background-color: rgba(255, 255, 255, 0.08);
}

.svgp-track__n {
	flex: none;
	min-width: 1.6em;
	color: transparent;
	font-size: 2.3rem;
	font-weight: 800;
	line-height: 1;
	text-align: center;
	-webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.4);
	transition: color 0.2s ease, -webkit-text-stroke-color 0.2s ease;
}

.svgp-track__link:hover .svgp-track__n,
.svgp-track__link:focus-visible .svgp-track__n {
	color: var(--svgp-accent);
	-webkit-text-stroke-color: var(--svgp-accent);
}

.svgp-track__cover {
	position: relative;
	flex: none;
	width: 3.2rem;
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 10px;
	background: linear-gradient(135deg, #12486b, #178a8c);
}

.svgp .svgp-track__img {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	object-fit: cover;
}

.svgp-track__ph {
	position: absolute;
	inset: 0;
	display: grid;
	place-items: center;
	color: rgba(255, 255, 255, 0.85);
}

.svgp-track__main {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 0.2rem;
	min-width: 0;
}

.svgp-track__title {
	color: #fff;
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.25;
}

.svgp-track__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0 0.5rem;
	color: var(--svgp-st-muted);
	font-size: 0.86rem;
	font-weight: 600;
}

.svgp-track__meta > * + *::before {
	content: "·";
	margin-inline-end: 0.5rem;
}

.svgp-track__play {
	display: grid;
	flex: none;
	place-items: center;
	width: 2.4rem;
	height: 2.4rem;
	border: 1.5px solid rgba(255, 255, 255, 0.4);
	border-radius: 50%;
	color: #fff;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.svgp-track__play .svgp-ico {
	width: 1rem;
	height: 1rem;
	margin-inline-start: 2px;
}

.svgp-track__link:hover .svgp-track__play,
.svgp-track__link:focus-visible .svgp-track__play {
	border-color: var(--svgp-accent);
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
}

/* ----- footer button (same outlined pill as the news / judgments showcases) ----- */
.svgp-studio__foot {
	margin-top: clamp(1.4rem, 3vw, 2.2rem);
	text-align: center;
}

.svgp a.svgp-all {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	padding: 0.6em 1.3em;
	border: 2px solid var(--svgp-accent);
	border-radius: 999px;
	background-color: transparent;
	color: var(--svgp-accent);
	font-weight: 700;
	line-height: 1.2;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.svgp a.svgp-all:hover,
.svgp a.svgp-all:focus {
	background-color: var(--svgp-accent);
	color: var(--svgp-on-accent);
}

/* ---------- Animations ---------- */
@keyframes svgp-spin {
	to {
		rotate: 360deg;
	}
}

@keyframes svgp-eq {
	0%, 100% { transform: scaleY(0.3); }
	50% { transform: scaleY(1); }
}

@keyframes svgp-pulse {
	0% { opacity: 0.55; transform: scale(0.95); }
	100% { opacity: 0; transform: scale(1.35); }
}

/* ---------- Archive: toolbar ---------- */
.svgp-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 1rem;
}

.svgp-search {
	display: flex;
	flex: 1 1 300px;
	align-items: center;
	max-width: 520px;
	border: 1px solid var(--svgp-line);
	border-radius: 999px;
	background-color: #fff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.svgp-search:focus-within {
	border-color: var(--svgp-accent);
	box-shadow: 0 0 0 3px rgba(23, 138, 140, 0.15);
}

.svgp .svgp-search__input {
	flex: 1;
	min-width: 0;
	height: 46px;
	margin: 0;
	padding: 0 0.4rem 0 1.2rem;
	border: 0 !important;
	border-radius: 0;
	background: transparent !important;
	box-shadow: none !important;
	color: inherit;
	font-family: inherit;
	font-size: 1rem;
	outline: 0;
}

.svgp .svgp-search__input:focus-visible {
	outline: 0;
}

.svgp .svgp-search__input::-webkit-search-cancel-button {
	-webkit-appearance: none;
	appearance: none;
	display: none;
}

.svgp .svgp-search__btn {
	display: grid;
	flex: none;
	place-items: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	color: var(--svgp-muted);
	cursor: pointer;
}

.svgp .svgp-search__btn:hover,
.svgp .svgp-search__btn:focus {
	background: transparent;
	color: var(--svgp-accent);
}

.svgp-selectwrap {
	position: relative;
	display: inline-block;
	border: 1px solid var(--svgp-line);
	border-radius: 999px;
	background-color: #fff;
}

.svgp-selectwrap::after {
	content: "";
	position: absolute;
	inset-block-start: 50%;
	inset-inline-end: 1.1rem;
	width: 7px;
	height: 7px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	color: var(--svgp-muted);
	pointer-events: none;
	transform: translateY(-70%) rotate(45deg);
}

.svgp .svgp-select {
	-webkit-appearance: none;
	appearance: none;
	display: block;
	width: auto;
	max-width: 100%;
	height: 46px;
	margin: 0;
	padding: 0 2.6rem 0 1.2rem;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: inherit;
	font-family: inherit;
	font-size: 1rem;
	cursor: pointer;
}

/* "featured only" switch */
.svgp-top {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	cursor: pointer;
	user-select: none;
}

.svgp-top input {
	position: absolute;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.svgp-top__track {
	position: relative;
	flex: none;
	width: 42px;
	height: 24px;
	border-radius: 999px;
	background-color: #b8c3cc;
	transition: background-color 0.2s ease;
}

.svgp-top__track::after {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background-color: #fff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
	transition: transform 0.2s ease;
}

.svgp-top input:checked + .svgp-top__track {
	background-color: var(--svgp-accent);
}

.svgp-top input:checked + .svgp-top__track::after {
	transform: translateX(18px);
}

.svgp-top input:focus-visible + .svgp-top__track {
	outline: 2px solid var(--svgp-accent);
	outline-offset: 2px;
}

.svgp-top__label {
	font-weight: 600;
}

/* ---------- Archive: category pills ---------- */
.svgp-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin: 0 0 1rem;
}

.svgp .svgp-pill {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	padding: 0.4em 1.05em;
	border: 1px solid var(--svgp-line);
	border-radius: 999px;
	background-color: #fff;
	color: var(--svgp-ink);
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.3;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.svgp .svgp-pill:hover,
.svgp .svgp-pill:focus {
	border-color: var(--svgp-accent);
	color: var(--svgp-accent);
}

.svgp .svgp-pill.is-active {
	border-color: var(--svgp-accent);
	background-color: var(--svgp-accent);
	color: #fff;
}

.svgp-pill__n {
	display: inline-grid;
	min-width: 1.5em;
	padding: 0 0.35em;
	border-radius: 999px;
	background-color: rgba(98, 114, 127, 0.14);
	font-size: 0.78em;
	font-variant-numeric: tabular-nums;
	line-height: 1.6;
	place-items: center;
}

.svgp-pill.is-active .svgp-pill__n {
	background-color: rgba(255, 255, 255, 0.25);
}

/* ---------- Archive: result bar ---------- */
.svgp-resultbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.6rem 1rem;
	margin: 0 0 1.2rem;
	padding: 0.7rem 0;
	border-block: 1px solid var(--svgp-line);
}

.svgp-resultbar__main {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.4rem 1rem;
}

.svgp-count {
	color: var(--svgp-muted);
	font-weight: 600;
}

.svgp a.svgp-reset {
	color: var(--svgp-accent);
	font-size: 0.92rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

.svgp-viewswitch {
	display: inline-flex;
	overflow: hidden;
	border: 1px solid var(--svgp-line);
	border-radius: 10px;
}

.svgp .svgp-viewbtn {
	display: grid;
	place-items: center;
	width: 40px;
	height: 36px;
	color: var(--svgp-muted);
	transition: background-color 0.2s ease, color 0.2s ease;
}

.svgp .svgp-viewbtn:hover {
	color: var(--svgp-accent);
}

.svgp .svgp-viewbtn.is-active {
	background-color: var(--svgp-accent);
	color: #fff;
}

/* ---------- Archive: results ---------- */
.svgp-results {
	position: relative;
	transition: opacity 0.2s ease;
}

.svgp-results.is-loading {
	opacity: 0.45;
	pointer-events: none;
}


/* ---------- Archive: pagination + load more ---------- */
.svgp-pager {
	margin-top: 2rem;
}

.svgp-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
}

.svgp .svgp-page {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	padding: 0 0.9rem;
	border: 1px solid var(--svgp-line);
	border-radius: 10px;
	background-color: #fff;
	color: var(--svgp-ink);
	font-weight: 700;
	line-height: 1;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.svgp .svgp-page:hover {
	border-color: var(--svgp-accent);
	background-color: rgba(23, 138, 140, 0.08);
	color: var(--svgp-accent);
}

.svgp .svgp-page.is-current {
	border-color: var(--svgp-accent);
	background-color: var(--svgp-accent);
	color: #fff;
}

.svgp .svgp-page.is-disabled {
	opacity: 0.4;
	pointer-events: none;
}

.svgp .svgp-page--gap,
.svgp .svgp-page--info {
	min-width: 0;
	border-color: transparent;
	background: transparent;
	color: var(--svgp-muted);
}

.svgp .svgp-more {
	display: block;
	margin: 2rem auto 0;
	padding: 0.7em 2em;
	border: 2px solid var(--svgp-accent);
	border-radius: 999px;
	background-color: transparent;
	color: var(--svgp-accent);
	font-family: inherit;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.2;
	cursor: pointer;
	transition: background-color 0.2s ease, color 0.2s ease;
}

.svgp .svgp-more:hover,
.svgp .svgp-more:focus {
	background-color: var(--svgp-accent);
	color: #fff;
}

.svgp .svgp-more[disabled] {
	opacity: 0.6;
	cursor: progress;
}

@media (max-width: 1024px) {
	.svgp-studio__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.svgp-search {
		flex-basis: 100%;
		max-width: none;
	}

	.svgp-studio {
		--svgp-cover: 150px;
		border-radius: 20px;
	}

	.svgp-studio__head {
		align-items: flex-start;
	}

	.svgp-feature {
		flex-direction: column;
		align-items: stretch;
	}

	.svgp-feature__stage {
		align-self: center;
	}

	.svgp-feature__main {
		width: 100%;
	}

	.svgp-feature__action .svgp-pl {
		padding: 0.7rem 0.8rem 0.45rem;
	}

	.svgp .svgp-pl__play {
		width: 3.1rem;
		height: 3.1rem;
	}

	.svgp-pl__wave {
		height: 2.4rem;
	}

	.svgp-studio__inner {
		padding: 1.3rem 1.1rem 1.5rem;
	}

	.svgp-playlist {
		padding-inline: 0.2rem;
	}

	.svgp a.svgp-track__link {
		gap: 0.7rem;
		padding: 0.8rem 0.6rem;
	}

	.svgp-track__n {
		min-width: 1.1em;
		font-size: 1.6rem;
	}

	.svgp-track__cover {
		display: none;
	}

	.svgp-view--list .svgp-card {
		flex-direction: column;
	}

	.svgp-view--list .svgp-card__cover {
		width: 100%;
		min-height: 0;
		aspect-ratio: 16 / 9;
	}
}

@media (prefers-reduced-motion: reduce) {
	.svgp *,
	.svgp *::before,
	.svgp *::after {
		transition: none !important;
		animation: none !important;
	}

	.svgp-hover--lift .svgp-card:hover {
		transform: none;
	}
}
