/* ==========================================================================
   Musicnet - estilos do tema
   ========================================================================== */

:root {
	--mn-accent: #6FE08A;
	--mn-accent-ink: #07210F;
	--mn-cyan: #3FD0DB;
	--mn-bg: #0B0D11;
	--mn-surface: #1A1F26;
	--mn-line: #222931;
	--mn-text: #F2F4F5;
	--mn-soft: #D5DADD;
	--mn-muted: #AEB6BB;
	--mn-faint: #8A949C;
	--mn-display: 'Big Shoulders Display', 'Arial Narrow', sans-serif;
	--mn-body: 'Manrope', system-ui, -apple-system, 'Segoe UI', sans-serif;
	--mn-gutter: 64px;
	--mn-max: 1440px;
}

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

html { scroll-behavior: smooth; }

body {
	margin: 0;
	background: var(--mn-bg);
	color: var(--mn-text);
	font-family: var(--mn-body);
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
}

a { color: inherit; text-decoration: none; transition: color .2s; }
a:hover { color: var(--mn-accent); }
img { max-width: 100%; height: auto; display: block; }
:focus-visible { outline: 2px solid var(--mn-accent); outline-offset: 3px; }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px); white-space: nowrap;
}
.mn-skip-link:focus {
	clip: auto; width: auto; height: auto; z-index: 100; top: 12px; left: 12px;
	padding: 12px 18px; background: var(--mn-accent); color: var(--mn-accent-ink); border-radius: 8px;
}

.mn-container {
	width: 100%;
	max-width: var(--mn-max);
	margin: 0 auto;
	padding-left: var(--mn-gutter);
	padding-right: var(--mn-gutter);
}

/* ---------- Botões ---------- */
.mn-icon-btn {
	width: 44px; height: 44px; border-radius: 22px;
	border: 1px solid rgba(242, 244, 245, .4);
	background: transparent; color: var(--mn-text);
	display: inline-flex; align-items: center; justify-content: center;
	cursor: pointer; transition: border-color .2s, color .2s;
}
.mn-icon-btn:hover { border-color: var(--mn-accent); color: var(--mn-accent); }

.mn-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px;
	height: 52px; padding: 0 28px; border-radius: 26px;
	border: 1px solid transparent; cursor: pointer;
	font-family: var(--mn-body); font-size: 15px; font-weight: 700;
	letter-spacing: .04em; text-transform: uppercase; white-space: nowrap;
	transition: filter .2s, border-color .2s, color .2s, background .2s;
}
.mn-btn--primary { background: var(--mn-accent); color: var(--mn-accent-ink); }
.mn-btn--primary:hover { color: var(--mn-accent-ink); filter: brightness(1.1); }
.mn-btn--ghost { border-color: rgba(242, 244, 245, .5); color: var(--mn-text); font-weight: 600; }
.mn-btn--ghost:hover { border-color: var(--mn-accent); }

.mn-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 10px; }

.mn-kicker {
	display: flex; align-items: center; gap: 12px; margin: 0;
	font-size: 13px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase;
	color: var(--mn-accent);
}
.mn-kicker::before { content: ""; width: 32px; height: 2px; background: currentColor; flex: none; }

/* ---------- Cabeçalho ---------- */
.mn-header { position: relative; z-index: 30; background: var(--mn-bg); border-bottom: 1px solid var(--mn-line); }
.mn-header--overlay {
	position: absolute; top: 0; left: 0; right: 0; border-bottom: 0;
	background: linear-gradient(180deg, rgba(8, 10, 14, .85) 0%, rgba(8, 10, 14, 0) 100%);
}
.admin-bar .mn-header--overlay { top: 32px; }

.mn-header__inner {
	max-width: var(--mn-max); margin: 0 auto;
	padding: 36px var(--mn-gutter);
	display: flex; align-items: center; justify-content: space-between; gap: 32px;
}
.mn-header:not(.mn-header--overlay) .mn-header__inner { padding-top: 24px; padding-bottom: 24px; }

.mn-logo { display: flex; flex: none; }
.mn-logo img { width: 300px; height: auto; }
.mn-header:not(.mn-header--overlay) .mn-logo img { width: 240px; }

.mn-nav { display: flex; align-items: center; gap: 36px; }
.mn-menu { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 36px; }
.mn-menu a {
	display: block; padding: 10px 0; white-space: nowrap;
	font-size: 15px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
}
.mn-menu .current-menu-item > a,
.mn-menu .current_page_item > a,
.mn-menu .current-menu-ancestor > a { color: var(--mn-accent); font-weight: 700; }

.mn-btn--whats { height: 44px; padding: 0 20px; font-size: 14px; }
.mn-menu-toggle { display: none; }
.mn-menu-toggle__close { display: none; }

.mn-search { background: rgba(11, 13, 17, .96); border-top: 1px solid var(--mn-line); }
.mn-search[hidden] { display: none; }
.mn-search__form {
	max-width: var(--mn-max); margin: 0 auto; padding: 20px var(--mn-gutter);
	display: flex; gap: 12px;
}
.mn-search__form input {
	flex: 1; height: 52px; padding: 0 22px; border-radius: 26px;
	border: 1px solid #3A424C; background: var(--mn-surface); color: var(--mn-text);
	font: 500 16px var(--mn-body);
}
.mn-search__form input::placeholder { color: var(--mn-faint); }

/* ---------- Capa (entrevistado do mês) ---------- */
.mn-hero {
	position: relative; overflow: hidden;
	height: 100vh; height: 100svh; min-height: 600px;
	background: #2a2a2a;
}
.admin-bar .mn-hero { height: calc(100vh - 32px); height: calc(100svh - 32px); }
.mn-hero__img {
	position: absolute; top: 0; left: 0; width: 100%; height: 100%; max-width: none;
	object-fit: cover; filter: contrast(1.08) brightness(.95);
}
/* Véu só do lado do texto + leve no rodapé: a foto aparece do topo até o fim */
.mn-hero::before {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background: linear-gradient(270deg, rgba(8, 10, 14, .72) 0%, rgba(8, 10, 14, .35) 38%, rgba(8, 10, 14, 0) 60%);
}
.mn-hero--texto-esquerda::before {
	background: linear-gradient(90deg, rgba(8, 10, 14, .72) 0%, rgba(8, 10, 14, .35) 38%, rgba(8, 10, 14, 0) 60%);
}
.mn-hero::after {
	content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 22%; z-index: 1;
	background: linear-gradient(0deg, rgba(8, 10, 14, .55) 0%, rgba(8, 10, 14, 0) 100%);
	pointer-events: none;
}
.mn-hero__inner {
	position: relative; z-index: 2; height: 100%;
	max-width: var(--mn-max); margin: 0 auto;
	padding: 0 var(--mn-gutter) 72px;
	display: flex; align-items: flex-end; justify-content: space-between; gap: 48px;
}
.mn-hero--texto-direita .mn-hero__content { order: 2; }
.mn-hero--texto-direita .mn-selo { order: 1; }

.mn-hero__content {
	width: 600px; max-width: 100%;
	display: flex; flex-direction: column; align-items: flex-start; gap: 18px;
}
.mn-hero__title {
	margin: 0;
	font-family: var(--mn-display); font-weight: 900;
	font-size: clamp(76px, 10.3vw, 148px); line-height: .86; letter-spacing: .01em;
	text-transform: uppercase; color: #fff;
}
.mn-hero__title a:hover { color: #fff; opacity: .9; }
.mn-hero__lead { margin: 0; max-width: 540px; font-size: 22px; line-height: 1.45; color: var(--mn-soft); }

.mn-selo { display: flex; flex-direction: column; gap: 6px; padding-bottom: 8px; }
.mn-selo strong { font-family: var(--mn-display); font-weight: 700; font-size: 44px; line-height: 1; color: #fff; }
.mn-selo span { font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--mn-muted); }

/* ---------- Seções e cards ---------- */
.mn-section { padding: 72px 0 64px; }
.mn-section--related { border-top: 1px solid var(--mn-line); }
.mn-section--archive { padding-top: 24px; }

.mn-section__head {
	display: flex; align-items: flex-end; justify-content: space-between; gap: 24px;
	margin-bottom: 36px;
}
.mn-section__title {
	margin: 0; font-family: var(--mn-display); font-weight: 900;
	font-size: 56px; line-height: 1; text-transform: uppercase; color: #fff;
}
.mn-link-more {
	font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
	color: var(--mn-accent); white-space: nowrap;
}
.mn-link-more:hover { color: #fff; }

.mn-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px 28px; }

.mn-card { display: flex; flex-direction: column; gap: 14px; }
.mn-card__media {
	display: block; aspect-ratio: 16 / 10; overflow: hidden;
	border-radius: 14px; background: var(--mn-surface);
}
.mn-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.mn-card:hover .mn-card__media img { transform: scale(1.04); }
.mn-card__placeholder {
	width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
	background: linear-gradient(135deg, #161a20, #1d232b);
}
.mn-card__placeholder img { width: 46%; height: auto; opacity: .35; }
.mn-card:hover .mn-card__placeholder img { transform: none; }
.mn-card__tag {
	margin-top: 4px;
	font-size: 12px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase;
	color: var(--mn-cyan);
}
.mn-card__title { margin: 0; font-size: 24px; line-height: 1.25; font-weight: 700; color: var(--mn-text); }
.mn-card__meta { margin: 0; font-size: 14px; color: var(--mn-muted); }

/* ---------- Cabeçalho de páginas internas ---------- */
.mn-page-head { padding-top: 72px; padding-bottom: 24px; display: flex; flex-direction: column; gap: 16px; }
.mn-page-head--single { max-width: 820px; }
.mn-page-head--single .mn-page-title { font-size: clamp(40px, 5vw, 72px); }
.mn-page-title {
	margin: 0; font-family: var(--mn-display); font-weight: 900;
	font-size: clamp(48px, 6vw, 88px); line-height: .92; text-transform: uppercase; color: #fff;
}
.mn-page-desc { max-width: 680px; font-size: 18px; color: var(--mn-soft); }
.mn-byline { display: flex; align-items: center; gap: 12px; margin: 0; font-size: 15px; color: var(--mn-muted); }
.mn-byline__img { width: 44px; height: 44px; border-radius: 50%; object-fit: cover; }

.mn-cover { margin: 24px auto 0; }
.mn-cover img { width: 100%; max-height: 720px; object-fit: cover; border-radius: 16px; }

.mn-empty { padding-top: 160px; padding-bottom: 80px; }
.mn-empty p, .mn-empty-text { font-size: 18px; color: var(--mn-soft); max-width: 640px; }

/* ---------- Matéria ---------- */
.mn-article { max-width: 820px; margin: 0 auto; padding: 56px var(--mn-gutter) 96px; }
.mn-article__lead { margin: 0 0 32px; font-size: 24px; line-height: 1.5; font-weight: 500; color: #fff; }
.mn-entry-content { font-size: 19px; line-height: 1.75; color: var(--mn-soft); }
.mn-entry-content > * { margin-top: 0; margin-bottom: 1.2em; }
.mn-entry-content h2, .mn-entry-content h3 { color: #fff; line-height: 1.2; margin-top: 1.8em; }
.mn-entry-content h2 { font-family: var(--mn-display); font-weight: 900; font-size: 40px; text-transform: uppercase; }
.mn-entry-content h3 { font-size: 24px; }
.mn-entry-content a { color: var(--mn-accent); text-decoration: underline; text-underline-offset: 3px; }
.mn-entry-content strong { color: #fff; }
.mn-entry-content blockquote {
	margin: 2em 0; padding: 0;
	font-family: var(--mn-display); font-weight: 700; font-size: 36px; line-height: 1.1;
	text-transform: uppercase; color: #fff;
}
.mn-entry-content blockquote::before { content: "“"; display: block; color: var(--mn-accent); font-size: 72px; line-height: .6; margin-bottom: 8px; }
.mn-entry-content blockquote p { margin: 0; }
.mn-entry-content img, .mn-entry-content figure { border-radius: 12px; }
.mn-entry-content figcaption { font-size: 14px; color: var(--mn-faint); margin-top: 8px; }

.mn-video { margin-top: 48px; }
.mn-video iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; border: 0; border-radius: 14px; }

.mn-ficha {
	display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 24px;
	margin-bottom: 40px; padding: 24px 28px;
	background: var(--mn-surface); border-radius: 14px;
}
.mn-ficha dl { margin: 0; display: flex; flex-wrap: wrap; gap: 20px 40px; }
.mn-ficha dt { font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--mn-cyan); }
.mn-ficha dd { margin: 4px 0 0; font-size: 17px; font-weight: 600; color: #fff; }

.mn-article__edicao { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--mn-line); font-size: 14px; color: var(--mn-muted); }
.mn-article__edicao a { color: var(--mn-accent); }

/* ---------- Paginação ---------- */
.mn-pagination { margin-top: 56px; }
.mn-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }
.mn-pagination .page-numbers {
	min-width: 44px; height: 44px; padding: 0 16px; border-radius: 22px;
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid var(--mn-line); font-weight: 600;
}
.mn-pagination .page-numbers.current { background: var(--mn-accent); border-color: var(--mn-accent); color: var(--mn-accent-ink); }

/* ---------- Rodapé ---------- */
.mn-footer { border-top: 1px solid var(--mn-line); padding: 28px 0; font-size: 13px; color: var(--mn-faint); }
.mn-footer__inner { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px 28px; }
.mn-footer__menu ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 24px; }
.mn-social { display: flex; flex-wrap: wrap; gap: 28px; }
.mn-social a, .mn-footer__menu a { color: var(--mn-muted); }
.mn-social a:hover, .mn-footer__menu a:hover { color: var(--mn-accent); }

/* ---------- Responsivo ---------- */
@media (max-width: 1180px) {
	:root { --mn-gutter: 40px; }
	.mn-menu, .mn-nav { gap: 26px; }
	.mn-menu a { font-size: 14px; }
	.mn-logo img { width: 240px; }
}

@media (max-width: 1024px) {
	.mn-menu-toggle { display: inline-flex; position: relative; z-index: 41; }
	.mn-nav {
		position: fixed; inset: 0; z-index: 40;
		flex-direction: column; align-items: flex-start; justify-content: center; gap: 32px;
		padding: 96px var(--mn-gutter) 48px;
		background: rgba(11, 13, 17, .98);
		opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s;
	}
	.mn-menu { flex-direction: column; align-items: flex-start; gap: 4px; }
	.mn-menu a { font-family: var(--mn-display); font-weight: 900; font-size: 44px; letter-spacing: .01em; padding: 4px 0; }
	body.mn-nav-open { overflow: hidden; }
	body.mn-nav-open .mn-nav { opacity: 1; visibility: visible; }
	body.mn-nav-open .mn-menu-toggle__open { display: none; }
	body.mn-nav-open .mn-menu-toggle__close { display: inline-flex; }
	.mn-logo { position: relative; z-index: 41; }
	.mn-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.mn-hero__inner { flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: 32px; }
	.mn-hero--texto-direita .mn-hero__content { order: 0; }
	.mn-selo { display: none; }
}

@media (max-width: 782px) {
	.admin-bar .mn-header--overlay { top: 46px; }
}

@media (max-width: 640px) {
	:root { --mn-gutter: 20px; }
	.mn-header__inner, .mn-header:not(.mn-header--overlay) .mn-header__inner { padding: 20px var(--mn-gutter); }
	.mn-logo img, .mn-header:not(.mn-header--overlay) .mn-logo img { width: 180px; }
	.mn-hero { min-height: 600px; }
	.mn-hero::before, .mn-hero--texto-esquerda::before { background: none; }
	.mn-hero::after { height: 55%; background: linear-gradient(0deg, rgba(8, 10, 14, .85) 0%, rgba(8, 10, 14, .5) 55%, rgba(8, 10, 14, 0) 100%); }
	.mn-hero__inner { padding-bottom: 44px; }
	.mn-hero__content { gap: 14px; }
	.mn-hero__lead { font-size: 17px; }
	.mn-kicker { font-size: 11px; letter-spacing: .16em; }
	.mn-actions { width: 100%; }
	.mn-actions .mn-btn { flex: 1 1 100%; }
	.mn-section { padding: 56px 0 48px; }
	.mn-section__head { flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 28px; }
	.mn-section__title { font-size: 42px; }
	.mn-grid { grid-template-columns: minmax(0, 1fr); gap: 36px; }
	.mn-card__title { font-size: 21px; }
	.mn-search__form { flex-direction: column; }
	.mn-page-head { padding-top: 48px; }
	.mn-article { padding-top: 40px; padding-bottom: 64px; }
	.mn-entry-content { font-size: 17px; }
	.mn-article__lead { font-size: 20px; }
	.mn-entry-content blockquote { font-size: 28px; }
	.mn-footer__inner { flex-direction: column; align-items: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; scroll-behavior: auto !important; }
}

/* ==========================================================================
   Conteúdo em fundo branco (v1.4)
   Cabeçalho, capa (foto do entrevistado) e rodapé continuam escuros.
   ========================================================================== */
body { background: #FFFFFF; }

.mn-main {
	--mn-bg: #FFFFFF;
	--mn-surface: #F1F3F5;
	--mn-line: #E2E6EA;
	--mn-text: #15181D;
	--mn-soft: #3A424A;
	--mn-muted: #59636C;
	--mn-faint: #6B747D;
	--mn-link: #127A3A;  /* verde escuro: legível no branco */
	--mn-tag: #08707A;   /* ciano escuro: legível no branco */
	background: #FFFFFF;
	color: var(--mn-text);
}
.mn-main a:hover { color: var(--mn-link); }

/* A capa continua escura, com a foto */
.mn-main .mn-hero {
	--mn-text: #F2F4F5; --mn-soft: #D5DADD; --mn-muted: #AEB6BB; --mn-faint: #8A949C; --mn-line: #222931;
	color: var(--mn-text);
}
.mn-main .mn-hero a:hover { color: var(--mn-accent); }
.mn-main .mn-hero .mn-hero__title a:hover { color: #FFFFFF; }

/* Títulos e textos que eram brancos */
.mn-main .mn-section__title,
.mn-main .mn-page-title,
.mn-main .mn-article__lead,
.mn-main .mn-entry-content h2,
.mn-main .mn-entry-content h3,
.mn-main .mn-entry-content strong,
.mn-main .mn-entry-content blockquote,
.mn-main .mn-ficha dd { color: var(--mn-text); }

/* Destaques em verde/ciano mais escuros no branco */
.mn-main .mn-kicker { color: var(--mn-link); }
.mn-main .mn-hero .mn-kicker { color: var(--mn-accent); }
.mn-main .mn-link-more { color: var(--mn-link); }
.mn-main .mn-link-more:hover { color: var(--mn-text); }
.mn-main .mn-card__tag,
.mn-main .mn-ficha dt { color: var(--mn-tag); }
.mn-main .mn-entry-content a,
.mn-main .mn-article__edicao a { color: var(--mn-link); }
.mn-main .mn-entry-content blockquote::before { color: var(--mn-link); }

/* Botão contorno no branco (na capa continua claro) */
.mn-main .mn-btn--ghost { border-color: rgba(21, 24, 29, .35); color: var(--mn-text); }
.mn-main .mn-hero .mn-btn--ghost { border-color: rgba(242, 244, 245, .5); color: #F2F4F5; }

/* Cards: sombra leve para separar a foto do branco */
.mn-main .mn-card__media { box-shadow: 0 1px 2px rgba(21, 24, 29, .08); }

/* Rodapé do tema continua escuro */
.mn-footer { background: #0B0D11; border-top-color: #0B0D11; color: #AEB6BB; }

/* ==========================================================================
   Topo fixo na rolagem (v1.5)
   ========================================================================== */
html { scroll-padding-top: 110px; }

.mn-header {
	position: sticky; top: 0;
	transition: background-color .3s ease, box-shadow .3s ease;
}
.mn-header--overlay { position: fixed; top: 0; }
.admin-bar .mn-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .mn-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .mn-header { top: 0; } }

.mn-header__inner { transition: padding .3s ease; }
.mn-logo img { transition: width .3s ease; }

/* Depois de rolar: fundo escuro e topo mais baixo */
.mn-header.is-scrolled {
	background: rgba(11, 13, 17, .97);
	box-shadow: 0 8px 24px rgba(0, 0, 0, .28);
}
.mn-header.is-scrolled .mn-header__inner { padding-top: 14px; padding-bottom: 14px; }
.mn-header.is-scrolled .mn-logo img { width: 210px; }

@media (max-width: 640px) {
	.mn-header.is-scrolled .mn-header__inner { padding-top: 12px; padding-bottom: 12px; }
	.mn-header.is-scrolled .mn-logo img { width: 150px; }
}

/* ==========================================================================
   Matérias feitas no Elementor (v1.6)
   O conteúdo do Elementor ocupa a largura toda; ficha e rodapé da matéria
   continuam na coluna de leitura.
   ========================================================================== */
.mn-article__body > :first-child { margin-top: 0; }
.mn-article--elementor { max-width: none; padding: 0 0 64px; }
.mn-article--elementor .mn-article__body {
	max-width: 820px; margin: 0 auto; padding: 0 var(--mn-gutter);
}
.mn-article--elementor .mn-article__body:first-child { padding-top: 48px; }
.mn-article--elementor .mn-article__body:empty { display: none; }
.mn-elementor-content { width: 100%; }
.mn-article--elementor .mn-article__edicao { margin-top: 32px; }
