/*
 * Museu ODC — Refinamento Curatorial 1.7.3
 */

:root {
	--odc16-gold: #dca943;
	--odc16-gold-light: #f3d995;
	--odc16-cream: #f7ead3;
	--odc16-brown: #2a130b;
	--odc16-black: #0c0907;
	--odc16-panel: rgba(15, 9, 7, .94);
	--odc16-panel-soft: rgba(32, 17, 11, .9);
	--odc16-line: rgba(220, 169, 67, .44);
	--odc16-radius: 18px;
}

/* Resíduos e complementos substituídos. */
html body .odc-r3-nav,
html body .odc-r3-v13-nav,
html body .odc-r3-search,
html body .odc-r3-v13-search,
html body .odc-r3-diagnostic,
html body .odc-r3-v13-diagnostic,
html body .odc-r3-media-replacement,
html body .odc-r3-v13-media-replacement,
html body .odccb-tools,
html body .odccb-server-tools,
html body .odccb-global-nav,
html body .odccb-search-host,
html body .odccb-records-status,
html body .odc16-source-hidden,
html body .odc16-card-description {
	display: none !important;
	visibility: hidden !important;
}

/* Não bloqueia carrosséis, sliders ou rolagem horizontal da Home. */
body.odc16-page-item,
body.odc16-page-acervo {
	overflow-x: clip !important;
}

body.odc16-ready main,
body.odc16-ready #content,
body.odc16-ready .site-content,
body.odc16-ready .entry-content {
	min-width: 0 !important;
}

body.odc16-ready img {
	max-width: 100%;
	height: auto;
}


#odc16-tools-fallback {
	display: none !important;
}

.odc16-tools {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
}

.odc16-tools .odc15-nav {
	margin-bottom: 12px !important;
}

.odc16-tools .odc15-search-form {
	margin-top: 0 !important;
}

/* Home: cards do acervo convidam ao clique, sem legendas descritivas. */
.odc16-home-acervo-card .odc16-card-description {
	display: none !important;
	visibility: hidden !important;
}


/* A curadoria altera apenas texto/imagem; não bloqueia os controles nativos. */
.odc16-page-home .odc16-home-acervo-card,
.odc16-page-home .odc16-home-card--fic,
.odc16-page-home .odc16-home-card--construction,
.odc16-page-home .odc16-home-card--support {
	pointer-events: auto !important;
}

.odc16-page-home .odc16-home-acervo-card a,
.odc16-page-home .odc16-home-acervo-card button,
.odc16-page-home .odc16-home-card--fic a,
.odc16-page-home .odc16-home-card--fic button,
.odc16-page-home .odc16-home-card--construction a,
.odc16-page-home .odc16-home-card--construction button,
.odc16-page-home .odc16-home-card--support a,
.odc16-page-home .odc16-home-card--support button {
	pointer-events: auto !important;
}

/* Preserva transformações e overflow dos carrosséis do tema. */
.odc16-page-home :is([class*="swiper"], [class*="slick"], [class*="slider"], [class*="carousel"]) {
	animation-play-state: running;
}

.odc16-home-card--fic .odc16-fic-image {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center !important;
}

.odc16-home-card--construction,
.odc16-home-card--support {
	border-color: rgba(220, 169, 67, .58) !important;
	background: linear-gradient(180deg, rgba(34, 18, 12, .94), rgba(14, 9, 7, .96)) !important;
}

.odc16-home-card--construction {
	cursor: default !important;
}

.odc16-home-card__text {
	display: block !important;
	margin: 10px 0 !important;
	color: var(--odc16-cream) !important;
	font-size: clamp(.95rem, 1.1vw, 1.08rem) !important;
	line-height: 1.55 !important;
}

.odc16-home-card__action {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 9px 16px !important;
	border: 1px solid var(--odc16-gold) !important;
	border-radius: 999px !important;
	background: linear-gradient(180deg, var(--odc16-gold-light), var(--odc16-gold)) !important;
	color: #160b06 !important;
	font-weight: 850 !important;
	text-decoration: none !important;
}

/* Navegação universal. */
.odc15-nav {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 9px !important;
	width: min(calc(100% - 24px), 1380px) !important;
	margin: 14px auto 22px !important;
	padding: 9px !important;
	border: 1px solid var(--odc16-line) !important;
	border-radius: 16px !important;
	background: linear-gradient(180deg, rgba(30, 17, 12, .97), rgba(10, 7, 5, .97)) !important;
	box-shadow: 0 9px 22px rgba(0, 0, 0, .2) !important;
	position: relative !important;
	z-index: 50 !important;
}

.odc15-nav__button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	min-width: 112px !important;
	min-height: 42px !important;
	margin: 0 !important;
	padding: 8px 16px !important;
	border: 1px solid rgba(220, 169, 67, .74) !important;
	border-radius: 999px !important;
	background: linear-gradient(180deg, rgba(77, 41, 24, .76), rgba(28, 15, 10, .88)) !important;
	color: var(--odc16-cream) !important;
	font: inherit !important;
	font-size: .92rem !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	cursor: pointer !important;
}

.odc15-nav__button--back {
	background: linear-gradient(180deg, var(--odc16-gold-light), var(--odc16-gold)) !important;
	border-color: #f0cb76 !important;
	color: #160b06 !important;
}

.odc15-nav__icon {
	display: inline-grid !important;
	place-items: center !important;
	width: 22px !important;
	height: 22px !important;
	border-radius: 50% !important;
	background: rgba(0, 0, 0, .2) !important;
	font: 900 1rem/1 Arial, Helvetica, sans-serif !important;
}

.odc15-nav__button:hover,
.odc15-nav__button:focus-visible {
	background: linear-gradient(180deg, var(--odc16-gold-light), var(--odc16-gold)) !important;
	color: #160b06 !important;
	outline: 2px solid rgba(243, 217, 149, .9) !important;
	outline-offset: 2px !important;
}

/* Busca única, com todos os filtros já visíveis. */
.odc15-original-search {
	display: none !important;
	visibility: hidden !important;
}

.odc15-search-form {
	display: block !important;
	width: min(calc(100% - 24px), 1380px) !important;
	margin: 20px auto 30px !important;
	padding: clamp(15px, 2vw, 22px) !important;
	border: 1px solid var(--odc16-line) !important;
	border-radius: 18px !important;
	background: linear-gradient(180deg, rgba(34, 18, 12, .96), rgba(18, 10, 7, .96)) !important;
	box-shadow: 0 11px 26px rgba(0, 0, 0, .18) !important;
}

.odc15-search-form__title {
	display: block !important;
	margin: 0 0 13px !important;
	color: var(--odc16-gold-light) !important;
	font-size: clamp(1.08rem, 1.4vw, 1.3rem) !important;
	font-weight: 850 !important;
	line-height: 1.25 !important;
}

.odc15-search-form__grid {
	display: grid !important;
	grid-template-columns: minmax(250px, 2fr) minmax(180px, .9fr) minmax(205px, 1fr) auto !important;
	align-items: end !important;
	gap: 10px !important;
}

.odc15-search-form label {
	display: block !important;
	min-width: 0 !important;
}

.odc15-search-form label > span {
	display: block !important;
	margin: 0 0 6px !important;
	color: var(--odc16-gold) !important;
	font-size: .88rem !important;
	font-weight: 800 !important;
	line-height: 1.3 !important;
}

.odc15-search-form input,
.odc15-search-form select,
.odc15-search-form button {
	box-sizing: border-box !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 46px !important;
	margin: 0 !important;
	border-radius: 10px !important;
	font: inherit !important;
	font-size: .98rem !important;
}

.odc15-search-form input,
.odc15-search-form select {
	padding: 10px 13px !important;
	border: 1px solid rgba(220, 169, 67, .6) !important;
	background: #21110c !important;
	color: var(--odc16-cream) !important;
}

.odc15-search-form__submit {
	padding: 10px 19px !important;
	border: 1px solid var(--odc16-gold) !important;
	background: var(--odc16-gold) !important;
	color: #170b07 !important;
	font-weight: 850 !important;
	cursor: pointer !important;
}

/* Ficha curatorial compartilhada. */
.odc16-curated-item {
	box-sizing: border-box !important;
	width: min(calc(100% - 24px), 1180px) !important;
	margin: 24px auto 36px !important;
	padding: clamp(18px, 2.7vw, 34px) !important;
	border: 1px solid var(--odc16-line) !important;
	border-radius: var(--odc16-radius) !important;
	background: linear-gradient(145deg, rgba(35, 18, 11, .96), rgba(10, 8, 7, .98)) !important;
	color: var(--odc16-cream) !important;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .26) !important;
	position: relative !important;
	z-index: 5 !important;
}

.odc16-curated-hero,
.odc16-master-hero {
	display: grid !important;
	grid-template-columns: minmax(220px, 330px) minmax(0, 1fr) !important;
	align-items: start !important;
	gap: clamp(20px, 3.5vw, 48px) !important;
}

.odc16-curated-cover {
	width: 100% !important;
	margin: 0 !important;
	padding: 12px !important;
	border: 1px solid rgba(220, 169, 67, .42) !important;
	border-radius: 16px !important;
	background: rgba(6, 5, 4, .72) !important;
	overflow: hidden !important;
}

.odc16-curated-cover__image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-height: 480px !important;
	aspect-ratio: 1 / 1 !important;
	object-fit: contain !important;
	object-position: center !important;
	border-radius: 10px !important;
	background: #0b0908 !important;
}

.odc16-master-cover .odc16-curated-cover__image {
	aspect-ratio: 3 / 4 !important;
	max-height: 560px !important;
}

.odc16-eyebrow {
	margin: 0 0 8px !important;
	color: var(--odc16-gold) !important;
	font-size: .82rem !important;
	font-weight: 900 !important;
	letter-spacing: .11em !important;
	text-transform: uppercase !important;
}

.odc16-curated-title {
	max-width: 100% !important;
	margin: 0 !important;
	color: var(--odc16-cream) !important;
	font-size: clamp(2rem, 4.2vw, 3.8rem) !important;
	font-weight: 800 !important;
	line-height: 1.06 !important;
	letter-spacing: .003em !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
	writing-mode: horizontal-tb !important;
	text-wrap: balance !important;
}

.odc16-curated-subtitle {
	margin: 10px 0 20px !important;
	color: var(--odc16-gold-light) !important;
	font-size: clamp(1rem, 1.5vw, 1.18rem) !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
}

.odc16-primary-data,
.odc16-secondary-data,
.odc16-master-facts,
.odc16-catalog-details__list {
	margin: 0 !important;
}

.odc16-primary-data,
.odc16-secondary-data {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 0 24px !important;
}

.odc16-secondary-data {
	margin-top: 24px !important;
	padding: 4px 18px !important;
	border: 1px solid rgba(220, 169, 67, .28) !important;
	border-radius: 13px !important;
	background: rgba(8, 6, 5, .48) !important;
}

.odc16-data-row {
	min-width: 0 !important;
	padding: 13px 0 !important;
	border-bottom: 1px solid rgba(220, 169, 67, .25) !important;
}

.odc16-data-row__label {
	margin: 0 0 5px !important;
	color: var(--odc16-gold) !important;
	font-size: .8rem !important;
	font-weight: 900 !important;
	letter-spacing: .055em !important;
	text-transform: uppercase !important;
}

.odc16-data-row__value {
	margin: 0 !important;
	color: var(--odc16-cream) !important;
	font-size: clamp(.98rem, 1.15vw, 1.08rem) !important;
	line-height: 1.55 !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
	white-space: pre-line !important;
}

.odc16-curated-section {
	margin-top: 26px !important;
	padding-top: 22px !important;
	border-top: 1px solid rgba(220, 169, 67, .3) !important;
}

.odc16-curated-section__title {
	margin: 0 0 10px !important;
	color: var(--odc16-gold) !important;
	font-size: clamp(1.15rem, 1.8vw, 1.5rem) !important;
	line-height: 1.25 !important;
}

.odc16-curated-section__body,
.odc16-biography__content {
	color: var(--odc16-cream) !important;
	font-size: clamp(1rem, 1.1vw, 1.08rem) !important;
	line-height: 1.72 !important;
	white-space: pre-line !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
}

.odc16-track-list .odc16-curated-section__body {
	columns: 2 270px !important;
	column-gap: 34px !important;
}

.odc16-master-facts {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 10px !important;
	margin-top: 22px !important;
	padding: 12px !important;
	border: 1px solid rgba(220, 169, 67, .35) !important;
	border-radius: 14px !important;
	background: rgba(10, 7, 5, .58) !important;
}

.odc16-master-facts .odc16-data-row {
	padding: 8px 10px !important;
	border-bottom: 0 !important;
}

.odc16-biography,
.odc16-catalog-details {
	margin-top: 20px !important;
	border: 1px solid rgba(220, 169, 67, .36) !important;
	border-radius: 13px !important;
	background: rgba(12, 8, 6, .66) !important;
	overflow: hidden !important;
}

.odc16-biography > summary,
.odc16-catalog-details > summary {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	min-height: 50px !important;
	padding: 13px 17px !important;
	color: var(--odc16-gold-light) !important;
	font-weight: 850 !important;
	cursor: pointer !important;
	list-style: none !important;
}

.odc16-biography > summary::-webkit-details-marker,
.odc16-catalog-details > summary::-webkit-details-marker {
	display: none !important;
}

.odc16-biography > summary::after,
.odc16-catalog-details > summary::after {
	content: '+' !important;
	font-size: 1.4rem !important;
	line-height: 1 !important;
}

.odc16-biography[open] > summary::after,
.odc16-catalog-details[open] > summary::after {
	content: '−' !important;
}

.odc16-biography__content,
.odc16-catalog-details__list {
	padding: 2px 17px 20px !important;
}

.odc16-catalog-details__list {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	gap: 0 24px !important;
}

.odc16-external-source {
	margin-top: 24px !important;
	padding: 16px 18px !important;
	border-left: 4px solid var(--odc16-gold) !important;
	border-radius: 10px !important;
	background: rgba(49, 27, 16, .72) !important;
}

.odc16-external-source strong {
	display: block !important;
	margin-bottom: 5px !important;
	color: var(--odc16-gold-light) !important;
}

.odc16-external-source p {
	margin: 0 0 12px !important;
	font-size: .94rem !important;
	line-height: 1.5 !important;
}

.odc16-external-source__button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 42px !important;
	padding: 9px 15px !important;
	border: 1px solid var(--odc16-gold) !important;
	border-radius: 999px !important;
	background: var(--odc16-gold) !important;
	color: #180c06 !important;
	font-weight: 850 !important;
	text-decoration: none !important;
}

/* Metadados genéricos: sem impor colunas a contêineres do Tainacan. */
.odc16-meta-row {
	min-width: 0 !important;
	padding-block: 14px !important;
	border-bottom: 1px solid rgba(220, 169, 67, .25) !important;
}

.odc16-meta-label {
	color: var(--odc16-gold) !important;
	font-weight: 850 !important;
	word-break: normal !important;
	writing-mode: horizontal-tb !important;
}

.odc16-meta-value {
	max-width: 100% !important;
	color: var(--odc16-cream) !important;
	line-height: 1.6 !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
	writing-mode: horizontal-tb !important;
}

/* Página Acervo e ordem curatorial. */
.odc16-acervo-grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	align-items: stretch !important;
	gap: clamp(16px, 2vw, 24px) !important;
}

.odc16-section-heading {
	grid-column: 1 / -1 !important;
	margin: 22px 0 2px !important;
	padding: 10px 0 !important;
	color: var(--odc16-gold-light) !important;
	font-size: clamp(1.35rem, 2.4vw, 2.15rem) !important;
	line-height: 1.2 !important;
	text-align: center !important;
}

.odc16-acervo-card {
	display: flex !important;
	flex-direction: column !important;
	align-self: stretch !important;
	min-width: 0 !important;
	min-height: 350px !important;
	border: 1px solid var(--odc16-line) !important;
	border-radius: 16px !important;
	background: rgba(10, 8, 7, .84) !important;
	overflow: hidden !important;
	animation: none !important;
	transition: border-color .15s ease, transform .15s ease !important;
}

.odc16-acervo-card:hover,
.odc16-acervo-card:focus-within {
	border-color: var(--odc16-gold-light) !important;
	transform: translateY(-2px) !important;
}

.odc16-acervo-card__image {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 4 / 3 !important;
	object-fit: cover !important;
	object-position: center !important;
}

.odc16-acervo-card__title {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 92px !important;
	margin: 0 !important;
	padding: 15px !important;
	color: var(--odc16-cream) !important;
	font-size: clamp(1.08rem, 1.35vw, 1.42rem) !important;
	font-weight: 850 !important;
	line-height: 1.22 !important;
	text-align: center !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	writing-mode: horizontal-tb !important;
}

.odc16-acervo-card--exposicoes {
	grid-column: 1 / -1 !important;
	min-height: 300px !important;
	order: 10 !important;
}
.odc16-acervo-card--exposicoes .odc16-acervo-card__image { aspect-ratio: 16 / 6 !important; }
.odc16-acervo-card--audiovisual { order: 30 !important; }
.odc16-acervo-card--museologico { order: 40 !important; }
.odc16-acervo-card--bibliografico { order: 50 !important; }
.odc16-acervo-card--educativo { order: 60 !important; }
.odc16-acervo-card--cantigas { order: 70 !important; }
.odc16-acervo-card--mestres { order: 90 !important; }
.odc16-acervo-card--fotografias { order: 100 !important; }
.odc16-acervo-card--memoria { order: 110 !important; }

.odc16-heading--divisions { order: 20 !important; }
.odc16-heading--thematic { order: 80 !important; }

.odc16-master-grid .odc16-master-card--besouro { order: 10 !important; }
.odc16-master-grid .odc16-master-card--pastinha { order: 20 !important; }
.odc16-master-grid .odc16-master-card--bimba { order: 30 !important; }
.odc16-master-grid .odc16-master-card--waldemar { order: 40 !important; }
.odc16-master-grid .odc16-master-card--dunga { order: 50 !important; }

.odc16-quote {
	max-width: min(920px, 100%) !important;
	margin-inline: auto !important;
	padding: clamp(16px, 2.8vw, 30px) !important;
	font-size: clamp(1.12rem, 2.1vw, 1.9rem) !important;
	line-height: 1.35 !important;
	letter-spacing: .005em !important;
	text-wrap: balance !important;
	overflow: visible !important;
}

/* Resultados da pesquisa. */
.odc15-search-page {
	width: min(calc(100% - 24px), 1380px) !important;
	margin: 0 auto !important;
	padding: clamp(20px, 3vw, 44px) 0 !important;
}
.odc15-search-results__grid {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(14px, 2vw, 22px) !important;
}
.odc15-result-card {
	min-width: 0 !important;
	border: 1px solid var(--odc16-line) !important;
	border-radius: 14px !important;
	background: var(--odc16-panel) !important;
	overflow: hidden !important;
}
.odc15-result-card__link { display: flex !important; flex-direction: column !important; height: 100% !important; color: var(--odc16-cream) !important; text-decoration: none !important; }
.odc15-result-card img,.odc15-result-card__placeholder { display: grid !important; place-items: center !important; width: 100% !important; aspect-ratio: 4 / 3 !important; object-fit: contain !important; background: #140b08 !important; }
.odc15-result-card__body { display: block !important; padding: 14px !important; }
.odc15-result-card__collection { display: block !important; margin-bottom: 7px !important; color: var(--odc16-gold) !important; font-size: .78rem !important; font-weight: 850 !important; text-transform: uppercase !important; }
.odc15-search-pagination { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 12px !important; margin-top: 26px !important; }
.odc15-search-pagination a,.odc15-search-pagination span { padding: 9px 14px !important; border: 1px solid var(--odc16-line) !important; border-radius: 999px !important; color: var(--odc16-cream) !important; text-decoration: none !important; }

/* VLibras e central de acessibilidade. */
html body #odc15-vlibras-limpo,
html body #odc15-vlibras-limpo [vw-plugin-wrapper],
html body #odc15-vlibras-limpo .vw-plugin-wrapper,
html body #odc15-vlibras-limpo .vpw-container { z-index: 2147483646 !important; }
html body #odc15-vlibras-limpo [vw-access-button],
html body #odc15-vlibras-limpo .vw-access-button { visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; z-index: 2147483647 !important; }
html body .odc15-accessibility-panel {
	position: fixed !important;
	inset: auto auto 72px 12px !important;
	width: min(370px, calc(100vw - 24px)) !important;
	max-width: calc(100vw - 24px) !important;
	max-height: calc(100dvh - 100px) !important;
	padding: 12px !important;
	overflow-x: hidden !important;
	overflow-y: auto !important;
	z-index: 2147482000 !important;
	transform: none !important;
}

@media (max-width: 1100px) {
	.odc15-search-form__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.odc16-acervo-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
	.odc15-search-results__grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

@media (max-width: 820px) {
	.odc16-curated-hero,
	.odc16-master-hero { grid-template-columns: minmax(0, 1fr) !important; }
	.odc16-curated-cover { width: min(100%, 430px) !important; margin-inline: auto !important; }
	.odc16-master-facts { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.odc16-primary-data,.odc16-secondary-data,.odc16-catalog-details__list { grid-template-columns: minmax(0, 1fr) !important; }
	.odc16-acervo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 650px) {
	.odc15-nav { width: calc(100% - 16px) !important; margin-top: 10px !important; }
	.odc15-nav__button { flex: 1 1 calc(50% - 9px) !important; min-width: 0 !important; }
	.odc15-nav__button--back { flex-basis: 100% !important; }
	.odc15-search-form { width: calc(100% - 16px) !important; padding: 13px !important; }
	.odc15-search-form__grid { grid-template-columns: minmax(0, 1fr) !important; }
	.odc16-curated-item { width: calc(100% - 16px) !important; padding: 16px !important; }
	.odc16-curated-title { font-size: clamp(1.8rem, 9.5vw, 2.75rem) !important; }
	.odc16-master-facts { grid-template-columns: minmax(0, 1fr) !important; }
	.odc16-track-list .odc16-curated-section__body { columns: 1 !important; }
	.odc16-acervo-grid { grid-template-columns: minmax(0, 1fr) !important; }
	.odc16-acervo-card--exposicoes { grid-column: auto !important; }
	.odc16-acervo-card--exposicoes .odc16-acervo-card__image { aspect-ratio: 4 / 3 !important; }
	.odc15-search-results__grid { grid-template-columns: minmax(0, 1fr) !important; }
	html body .odc15-accessibility-panel { left: 8px !important; bottom: 66px !important; width: calc(100vw - 16px) !important; max-width: calc(100vw - 16px) !important; }
}

@media (prefers-reduced-motion: reduce) {
	.odc16-acervo-card { transition: none !important; }
	* { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* ================================================================
 * 1.6.5 — correção estrutural para coleções e fichas em celular
 * Atua somente nas páginas do Tainacan reconhecidas pelo plugin.
 * ================================================================ */
html.odc16-force-mobile,
html.odc16-force-mobile body.odc16-page-collection,
html.odc16-force-mobile body.odc16-page-item {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	overflow-x: hidden !important;
}

html.odc16-force-mobile body.odc16-page-collection *,
html.odc16-force-mobile body.odc16-page-item * {
	box-sizing: border-box !important;
	writing-mode: horizontal-tb !important;
}

/* A barra é impressa em wp_body_open: fixa sua largura na tela, não no
 * contêiner de desktop do tema/Tainacan. */
html.odc16-force-mobile body.odc16-page-collection #odc16-tools,
html.odc16-force-mobile body.odc16-page-item #odc16-tools {
	display: block !important;
	position: relative !important;
	inset: auto !important;
	float: none !important;
	clear: both !important;
	width: 100vw !important;
	min-width: 0 !important;
	max-width: 100vw !important;
	margin: 0 !important;
	padding: 10px 12px 4px !important;
	transform: none !important;
	grid-column: 1 / -1 !important;
	grid-row: auto !important;
	flex: 0 0 100% !important;
	align-self: stretch !important;
	overflow: visible !important;
}

html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-nav,
html.odc16-force-mobile body.odc16-page-item #odc16-tools .odc15-nav {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 8px !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 0 12px !important;
	padding: 8px !important;
	position: relative !important;
	inset: auto !important;
	transform: none !important;
}

html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-nav__button,
html.odc16-force-mobile body.odc16-page-item #odc16-tools .odc15-nav__button {
	display: inline-flex !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	min-height: 48px !important;
	margin: 0 !important;
	padding: 9px 7px !important;
	font-size: .86rem !important;
	line-height: 1.15 !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: normal !important;
	flex: none !important;
}

html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-nav__icon,
html.odc16-force-mobile body.odc16-page-item #odc16-tools .odc15-nav__icon {
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	font-size: .86rem !important;
}

/* Busca: uma coluna real, com controles usando toda a largura da tela. */
html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form {
	display: block !important;
	position: relative !important;
	inset: auto !important;
	float: none !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 0 18px !important;
	padding: 16px !important;
	transform: none !important;
	overflow: hidden !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc15-search-form__title {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 15px !important;
	font-size: 1.28rem !important;
	line-height: 1.25 !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc15-search-form__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	grid-auto-flow: row !important;
	align-items: stretch !important;
	gap: 13px !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc15-search-form label,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form label > span,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form input,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form select,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form button {
	display: block !important;
	position: relative !important;
	inset: auto !important;
	float: none !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	transform: none !important;
	writing-mode: horizontal-tb !important;
	white-space: normal !important;
	word-break: normal !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc15-search-form label > span {
	margin: 0 0 7px !important;
	font-size: .96rem !important;
	line-height: 1.3 !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc15-search-form input,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form select,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-form button {
	height: auto !important;
	min-height: 50px !important;
	padding: 11px 13px !important;
	font-size: 1rem !important;
	line-height: 1.3 !important;
}

/* Contêineres principais: remove mínimos de desktop sem mudar o desenho. */
html.odc16-force-mobile body.odc16-page-collection :is(main, #content, .site-content, .entry-content),
html.odc16-force-mobile body.odc16-page-item :is(main, #content, .site-content, .entry-content) {
	min-width: 0 !important;
	max-width: 100% !important;
	overflow-x: hidden !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc16-acervo-grid,
html.odc16-force-mobile body.odc16-page-collection .odc15-search-results__grid {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	gap: 16px !important;
	width: calc(100% - 24px) !important;
	min-width: 0 !important;
	max-width: calc(100% - 24px) !important;
	margin-inline: auto !important;
}

html.odc16-force-mobile body.odc16-page-collection .odc16-acervo-card,
html.odc16-force-mobile body.odc16-page-collection .odc15-result-card {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
}

/* Ficha do item: imagem, dados e player em uma coluna navegável. */
html.odc16-force-mobile body.odc16-page-item .odc16-curated-item {
	display: block !important;
	width: calc(100vw - 24px) !important;
	min-width: 0 !important;
	max-width: calc(100vw - 24px) !important;
	margin: 14px auto 28px !important;
	padding: 16px !important;
	overflow: hidden !important;
}

html.odc16-force-mobile body.odc16-page-item .odc16-curated-hero,
html.odc16-force-mobile body.odc16-page-item .odc16-master-hero,
html.odc16-force-mobile body.odc16-page-item .odc16-primary-data,
html.odc16-force-mobile body.odc16-page-item .odc16-secondary-data,
html.odc16-force-mobile body.odc16-page-item .odc16-catalog-details__list,
html.odc16-force-mobile body.odc16-page-item .odc16-master-facts {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

html.odc16-force-mobile body.odc16-page-item .odc16-curated-cover,
html.odc16-force-mobile body.odc16-page-item .odc16-curated-cover__image,
html.odc16-force-mobile body.odc16-page-item .odc16-data-row,
html.odc16-force-mobile body.odc16-page-item .odc16-data-row__value,
html.odc16-force-mobile body.odc16-page-item .odc16-curated-section,
html.odc16-force-mobile body.odc16-page-item iframe,
html.odc16-force-mobile body.odc16-page-item video,
html.odc16-force-mobile body.odc16-page-item audio {
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

html.odc16-force-mobile body.odc16-page-item iframe {
	aspect-ratio: 16 / 9 !important;
	height: auto !important;
	min-height: 190px !important;
}

html.odc16-force-mobile body.odc16-page-item .odc16-curated-title {
	font-size: clamp(1.75rem, 9vw, 2.45rem) !important;
	line-height: 1.08 !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

html.odc16-force-mobile body.odc16-page-item .odc16-data-row__value,
html.odc16-force-mobile body.odc16-page-item .odc16-curated-section__body,
html.odc16-force-mobile body.odc16-page-item .odc16-biography__content {
	font-size: 1rem !important;
	line-height: 1.62 !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

/* Reserva área inferior para o som, sem encobrir o último controle. */
html.odc16-force-mobile body.odc16-page-collection,
html.odc16-force-mobile body.odc16-page-item {
	padding-bottom: 96px !important;
}


/* ================================================================
 * 1.6.6 — mobile real: remove a coluna lateral herdada do tema
 * Mantém áudio, sinopse e visual desktop da 1.6.5.
 * ================================================================ */
@media (max-width: 820px) {
	html.odc16-force-mobile {
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow-x: hidden !important;
	}

	html.odc16-force-mobile body.odc16-page-collection,
	html.odc16-force-mobile body.odc16-page-item {
		display: block !important;
		grid-template-columns: none !important;
		grid-template-rows: none !important;
		columns: auto !important;
		position: relative !important;
		left: 0 !important;
		right: auto !important;
		transform: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 0 !important;
		overflow-x: hidden !important;
	}

	/* Neutraliza a grade/coluna lateral de desktop nos contêineres do tema. */
	html.odc16-force-mobile body.odc16-page-collection :is(#page, .site, .site-container, .site-wrapper, #wrapper, .wrapper, #content, .site-content, .content-area, .site-main, main, .entry-content, .page-content, .wp-site-blocks),
	html.odc16-force-mobile body.odc16-page-item :is(#page, .site, .site-container, .site-wrapper, #wrapper, .wrapper, #content, .site-content, .content-area, .site-main, main, .entry-content, .page-content, .wp-site-blocks) {
		display: block !important;
		grid-template-columns: none !important;
		grid-column: 1 / -1 !important;
		float: none !important;
		position: relative !important;
		inset: auto !important;
		left: 0 !important;
		right: auto !important;
		transform: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		overflow-x: hidden !important;
	}

	/* Ferramentas passam a respeitar o conteúdo real, sem 100vw deslocado. */
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools,
	html.odc16-force-mobile body.odc16-page-item #odc16-tools {
		box-sizing: border-box !important;
		position: relative !important;
		inset: auto !important;
		left: 0 !important;
		transform: none !important;
		width: calc(100% - 16px) !important;
		min-width: 0 !important;
		max-width: calc(100% - 16px) !important;
		margin: 8px auto 14px !important;
		padding: 0 !important;
		overflow: visible !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-nav,
	html.odc16-force-mobile body.odc16-page-item #odc16-tools .odc15-nav {
		display: grid !important;
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin: 0 0 10px !important;
		padding: 7px !important;
		gap: 6px !important;
		overflow: hidden !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-nav__button,
	html.odc16-force-mobile body.odc16-page-item #odc16-tools .odc15-nav__button {
		box-sizing: border-box !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		min-height: 46px !important;
		padding: 8px 5px !important;
		font-size: .78rem !important;
		line-height: 1.1 !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-nav__icon,
	html.odc16-force-mobile body.odc16-page-item #odc16-tools .odc15-nav__icon {
		flex: 0 0 18px !important;
		width: 18px !important;
		height: 18px !important;
		min-width: 18px !important;
		font-size: .75rem !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form {
		box-sizing: border-box !important;
		display: block !important;
		position: relative !important;
		inset: auto !important;
		left: 0 !important;
		transform: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin: 0 !important;
		padding: 15px !important;
		overflow: hidden !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form__grid {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form__title,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form label,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form label > span,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form input,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form select,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form button {
		box-sizing: border-box !important;
		position: relative !important;
		inset: auto !important;
		left: 0 !important;
		transform: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		white-space: normal !important;
		word-break: normal !important;
		overflow-wrap: anywhere !important;
	}

	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form input,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form select,
	html.odc16-force-mobile body.odc16-page-collection #odc16-tools .odc15-search-form button {
		min-height: 48px !important;
		font-size: 16px !important;
	}

	/* Tainacan e títulos: largura da tela, sem centro de desktop deslocado. */
	html.odc16-force-mobile body.odc16-page-collection :is(.tainacan-collection-header, .tainacan-collection-page, .tainacan-items-page, .tainacan-items-list-container, .tainacan-list-container, .tainacan-items-list, [class*="tainacan-collection"], [class*="tainacan-items"]),
	html.odc16-force-mobile body.odc16-page-item :is(.tainacan-item-single-page, .tainacan-item-section, .tainacan-item-metadata, [class*="tainacan-item"]) {
		box-sizing: border-box !important;
		position: relative !important;
		inset: auto !important;
		left: 0 !important;
		transform: none !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		overflow-x: hidden !important;
	}

	html.odc16-force-mobile body.odc16-page-collection :is(h1, .page-title, .entry-title),
	html.odc16-force-mobile body.odc16-page-item :is(h1, .page-title, .entry-title) {
		box-sizing: border-box !important;
		width: calc(100% - 24px) !important;
		max-width: calc(100% - 24px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		font-size: clamp(1.9rem, 10vw, 2.8rem) !important;
		line-height: 1.08 !important;
		word-break: normal !important;
		overflow-wrap: anywhere !important;
	}

	html.odc16-force-mobile body.odc16-page-collection .odc16-acervo-grid,
	html.odc16-force-mobile body.odc16-page-collection .odc15-search-results__grid {
		width: calc(100% - 24px) !important;
		max-width: calc(100% - 24px) !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}
}

/* ================================================================
 * 1.6.7 — grade uniforme da página Acervo em notebook e desktop
 * Remove somente os destaques de tamanho que separavam Exposições
 * e Acervo Museológico. Áudio, Sinopse, fichas e mobile permanecem.
 * ================================================================ */
body.odc16-page-acervo .odc16-acervo-grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	grid-auto-flow: row !important;
	align-items: stretch !important;
	gap: 22px !important;
	width: min(calc(100% - 32px), 1180px) !important;
	max-width: 1180px !important;
	margin: 0 auto 38px !important;
	padding: 0 !important;
}

body.odc16-page-acervo .odc16-section-heading {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 12px 0 6px !important;
	padding: 8px 0 !important;
	order: 0 !important;
}

/* Há apenas uma grade pública: evita um segundo título fragmentando os cards. */
body.odc16-page-acervo .odc16-heading--thematic {
	display: none !important;
}

body.odc16-page-acervo .odc16-acervo-card,
body.odc16-page-acervo .odc16-acervo-card--exposicoes,
body.odc16-page-acervo .odc16-acervo-card--audiovisual,
body.odc16-page-acervo .odc16-acervo-card--museologico,
body.odc16-page-acervo .odc16-acervo-card--bibliografico,
body.odc16-page-acervo .odc16-acervo-card--educativo,
body.odc16-page-acervo .odc16-acervo-card--cantigas,
body.odc16-page-acervo .odc16-acervo-card--mestres,
body.odc16-page-acervo .odc16-acervo-card--fotografias,
body.odc16-page-acervo .odc16-acervo-card--memoria {
	grid-column: auto !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: stretch !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	height: 210px !important;
	min-height: 210px !important;
	max-height: 210px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-radius: 18px !important;
	overflow: hidden !important;
	box-sizing: border-box !important;
}

/* Todos os cartões passam a seguir uma única sequência visual. */
body.odc16-page-acervo .odc16-acervo-card--exposicoes { order: 10 !important; }
body.odc16-page-acervo .odc16-acervo-card--museologico { order: 20 !important; }
body.odc16-page-acervo .odc16-acervo-card--bibliografico { order: 30 !important; }
body.odc16-page-acervo .odc16-acervo-card--audiovisual { order: 40 !important; }
body.odc16-page-acervo .odc16-acervo-card--educativo { order: 50 !important; }
body.odc16-page-acervo .odc16-acervo-card--cantigas { order: 60 !important; }
body.odc16-page-acervo .odc16-acervo-card--mestres { order: 70 !important; }
body.odc16-page-acervo .odc16-acervo-card--fotografias { order: 80 !important; }
body.odc16-page-acervo .odc16-acervo-card--memoria { order: 90 !important; }

body.odc16-page-acervo .odc16-acervo-card > a,
body.odc16-page-acervo .odc16-acervo-card > button,
body.odc16-page-acervo .odc16-acervo-card > div,
body.odc16-page-acervo .odc16-acervo-card > article {
	flex: 1 1 auto !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	height: 100% !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
}

body.odc16-page-acervo .odc16-acervo-card__image,
body.odc16-page-acervo .odc16-acervo-card--exposicoes .odc16-acervo-card__image {
	flex: 0 0 126px !important;
	display: block !important;
	width: 100% !important;
	height: 126px !important;
	min-height: 126px !important;
	max-height: 126px !important;
	aspect-ratio: auto !important;
	object-fit: cover !important;
	object-position: center !important;
	margin: 0 !important;
}

body.odc16-page-acervo .odc16-acervo-card__title {
	flex: 1 1 auto !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 16px 18px !important;
	font-size: clamp(1.05rem, 1.25vw, 1.32rem) !important;
	line-height: 1.22 !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

/* Cartões sem fotografia usam todo o espaço para o título, mantendo a altura. */
body.odc16-page-acervo .odc16-acervo-card:not(:has(.odc16-acervo-card__image)) .odc16-acervo-card__title {
	height: 100% !important;
	min-height: 100% !important;
}

@media (max-width: 1100px) and (min-width: 651px) {
	body.odc16-page-acervo .odc16-acervo-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		width: min(calc(100% - 28px), 900px) !important;
		gap: 18px !important;
	}
}

@media (max-width: 650px) {
	body.odc16-page-acervo .odc16-acervo-grid {
		grid-template-columns: minmax(0, 1fr) !important;
		width: calc(100% - 24px) !important;
		max-width: calc(100% - 24px) !important;
		gap: 16px !important;
	}

	body.odc16-page-acervo .odc16-acervo-card,
	body.odc16-page-acervo .odc16-acervo-card--exposicoes,
	body.odc16-page-acervo .odc16-acervo-card--audiovisual,
	body.odc16-page-acervo .odc16-acervo-card--museologico,
	body.odc16-page-acervo .odc16-acervo-card--bibliografico,
	body.odc16-page-acervo .odc16-acervo-card--educativo,
	body.odc16-page-acervo .odc16-acervo-card--cantigas,
	body.odc16-page-acervo .odc16-acervo-card--mestres,
	body.odc16-page-acervo .odc16-acervo-card--fotografias,
	body.odc16-page-acervo .odc16-acervo-card--memoria {
		height: 172px !important;
		min-height: 172px !important;
		max-height: 172px !important;
	}

	body.odc16-page-acervo .odc16-acervo-card__image,
	body.odc16-page-acervo .odc16-acervo-card--exposicoes .odc16-acervo-card__image {
		flex-basis: 98px !important;
		height: 98px !important;
		min-height: 98px !important;
		max-height: 98px !important;
	}
}


/* v1.6.9 — linha final da Home reconstruída: dois controles, sem aninhamento. */
.odc16-page-home .odc16-final-actions {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	align-items: stretch !important;
	gap: 20px !important;
	width: min(calc(100% - 32px), 900px) !important;
	max-width: 900px !important;
	margin: 28px auto 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.odc16-page-home .odc16-final-actions__button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 86px !important;
	margin: 0 !important;
	padding: 16px 22px !important;
	border: 2px solid rgba(213, 126, 55, .95) !important;
	border-radius: 8px !important;
	box-sizing: border-box !important;
	font-size: clamp(1rem, 1.2vw, 1.18rem) !important;
	font-weight: 900 !important;
	letter-spacing: .08em !important;
	line-height: 1.2 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	cursor: pointer !important;
	box-shadow: none !important;
}

.odc16-page-home .odc16-final-actions__button--support {
	background: linear-gradient(180deg, #e8bd55 0%, #c47a35 100%) !important;
	color: #1a0b05 !important;
	border-color: rgba(255, 218, 112, .95) !important;
}

.odc16-page-home .odc16-final-actions__button--top {
	background: #3a170f !important;
	color: #fff7e8 !important;
	border-color: #c46e32 !important;
}

.odc16-page-home .odc16-final-actions__button:hover,
.odc16-page-home .odc16-final-actions__button:focus-visible {
	filter: brightness(1.08) !important;
	outline: 3px solid rgba(255, 226, 145, .85) !important;
	outline-offset: 3px !important;
	transform: translateY(-1px) !important;
}

@media (max-width: 650px) {
	.odc16-page-home .odc16-final-actions {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 12px !important;
		width: calc(100% - 24px) !important;
		margin-top: 20px !important;
	}

	.odc16-page-home .odc16-final-actions__button {
		min-height: 58px !important;
		padding: 13px 16px !important;
		font-size: .98rem !important;
	}
}


/* ================================================================
 * 1.7.0 — sistema único de botões e fechamento estável da Home
 * Atua somente nos controles gerados por este plugin.
 * ================================================================ */
:root {
	--odc16-button-height: 52px;
	--odc16-button-radius: 14px;
	--odc16-button-pad-x: 22px;
	--odc16-button-font: 1rem;
	--odc16-button-weight: 850;
}

/* Uma base visual única para navegação, busca, mídia e chamadas da Home. */
.odc15-nav__button,
.odc15-search-form__submit,
.odc16-home-card__action,
.odc16-external-source__button,
.odc16-final-actions__button {
	box-sizing: border-box !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 0 !important;
	min-height: var(--odc16-button-height) !important;
	height: var(--odc16-button-height) !important;
	margin: 0 !important;
	padding: 10px var(--odc16-button-pad-x) !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: var(--odc16-button-radius) !important;
	font-family: inherit !important;
	font-size: var(--odc16-button-font) !important;
	font-weight: var(--odc16-button-weight) !important;
	line-height: 1.15 !important;
	letter-spacing: 0 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	white-space: normal !important;
	cursor: pointer !important;
}

.odc15-nav__button,
.odc16-final-actions__button--top {
	border-color: rgba(220, 169, 67, .78) !important;
	background: linear-gradient(180deg, rgba(77, 41, 24, .92), rgba(42, 20, 13, .98)) !important;
	color: var(--odc16-cream) !important;
}

.odc15-nav__button--back,
.odc15-search-form__submit,
.odc16-home-card__action,
.odc16-external-source__button,
.odc16-final-actions__button--support {
	border-color: #f0cb76 !important;
	background: linear-gradient(180deg, var(--odc16-gold-light), var(--odc16-gold)) !important;
	color: #160b06 !important;
}

.odc15-nav__button:hover,
.odc15-nav__button:focus-visible,
.odc15-search-form__submit:hover,
.odc15-search-form__submit:focus-visible,
.odc16-home-card__action:hover,
.odc16-home-card__action:focus-visible,
.odc16-external-source__button:hover,
.odc16-external-source__button:focus-visible,
.odc16-final-actions__button:hover,
.odc16-final-actions__button:focus-visible {
	filter: brightness(1.08) !important;
	outline: 2px solid rgba(243, 217, 149, .92) !important;
	outline-offset: 2px !important;
	transform: translateY(-1px) !important;
}

/* O painel final recebe uma única dupla de ações, no fluxo normal. */
.odc16-page-home .odc16-home-closing-panel {
	display: block !important;
	position: relative !important;
	min-width: 0 !important;
}

.odc16-page-home .odc16-home-closing-panel .odc16-final-actions {
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 16px !important;
	width: min(calc(100% - 32px), 720px) !important;
	max-width: 720px !important;
	margin: 28px auto 0 !important;
	padding: 0 !important;
	position: static !important;
	inset: auto !important;
	transform: none !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.odc16-page-home .odc16-home-closing-panel .odc16-final-actions__button {
	width: 100% !important;
	max-width: none !important;
}

/* Fallback visual: qualquer ação antiga sobrevivente no painel é ocultada. */
.odc16-page-home .odc16-home-closing-panel .odc16-legacy-final-action,
.odc16-page-home .odc16-home-closing-panel .odc16-duplicate-label {
	display: none !important;
	visibility: hidden !important;
}

@media (max-width: 650px) {
	:root {
		--odc16-button-height: 50px;
		--odc16-button-pad-x: 15px;
		--odc16-button-font: .95rem;
	}

	.odc16-page-home .odc16-home-closing-panel .odc16-final-actions {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 12px !important;
		width: calc(100% - 24px) !important;
		max-width: calc(100% - 24px) !important;
		margin-top: 20px !important;
	}

	.odc15-nav__button,
	.odc15-search-form__submit,
	.odc16-home-card__action,
	.odc16-external-source__button,
	.odc16-final-actions__button {
		width: 100% !important;
	}
}


/* ================================================================
 * 1.7.1 — painel final realmente independente da grade antiga
 * A seção original é ocultada; a nova seção não herda colunas, botões
 * aninhados, pseudo-elementos ou posicionamentos do construtor da Home.
 * ================================================================ */
.odc16-page-home .odc16-final-panel-source {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.odc16-page-home .odc16-final-panel-stable {
	box-sizing: border-box !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	inset: auto !important;
	transform: none !important;
	float: none !important;
	clear: both !important;
	width: min(calc(100% - 32px), 1160px) !important;
	min-width: 0 !important;
	max-width: 1160px !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 34px auto !important;
	padding: clamp(28px, 4vw, 48px) clamp(20px, 5vw, 64px) !important;
	border: 1px solid rgba(213, 148, 54, .18) !important;
	border-radius: 0 !important;
	background: linear-gradient(180deg, rgba(55, 21, 11, .96), rgba(31, 12, 8, .98)) !important;
	box-shadow: none !important;
	overflow: visible !important;
	text-align: center !important;
}

.odc16-page-home .odc16-final-panel-stable > * {
	box-sizing: border-box !important;
	position: static !important;
	inset: auto !important;
	float: none !important;
	transform: none !important;
	max-width: 100% !important;
}

.odc16-page-home .odc16-final-panel-stable__kicker,
.odc16-page-home .odc16-final-panel-stable__intro,
.odc16-page-home .odc16-final-panel-stable__title {
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 0 !important;
	text-align: center !important;
}

.odc16-page-home .odc16-final-panel-stable__kicker {
	margin-top: 0 !important;
	margin-bottom: 14px !important;
	color: #e4b94f !important;
	font-size: clamp(.95rem, 1.25vw, 1.15rem) !important;
	font-weight: 900 !important;
	letter-spacing: .12em !important;
	line-height: 1.25 !important;
	text-transform: uppercase !important;
}

.odc16-page-home .odc16-final-panel-stable__intro {
	max-width: 850px !important;
	margin-top: 0 !important;
	margin-bottom: 10px !important;
	color: #e8bf5b !important;
	font-size: clamp(.95rem, 1.25vw, 1.12rem) !important;
	font-weight: 800 !important;
	letter-spacing: .1em !important;
	line-height: 1.55 !important;
	text-transform: uppercase !important;
}

.odc16-page-home .odc16-final-panel-stable__title {
	margin-top: 0 !important;
	margin-bottom: 28px !important;
	color: #e7a54b !important;
	font-size: clamp(2rem, 4vw, 3.5rem) !important;
	font-weight: 900 !important;
	letter-spacing: 0 !important;
	line-height: 1.05 !important;
	text-transform: uppercase !important;
	text-shadow: 0 4px 0 #5c260e, 0 8px 14px rgba(0, 0, 0, .36) !important;
}

.odc16-page-home .odc16-final-panel-stable .odc16-final-actions {
	box-sizing: border-box !important;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	grid-auto-flow: row !important;
	align-items: stretch !important;
	justify-items: stretch !important;
	gap: 18px !important;
	position: static !important;
	inset: auto !important;
	transform: none !important;
	float: none !important;
	width: min(100%, 760px) !important;
	min-width: 0 !important;
	max-width: 760px !important;
	height: auto !important;
	margin: 0 auto !important;
	padding: 0 !important;
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
}

.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button {
	box-sizing: border-box !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: static !important;
	inset: auto !important;
	transform: none !important;
	float: none !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: none !important;
	height: var(--odc16-button-height) !important;
	min-height: var(--odc16-button-height) !important;
	max-height: var(--odc16-button-height) !important;
	margin: 0 !important;
	padding: 10px var(--odc16-button-pad-x) !important;
	border-width: 1px !important;
	border-style: solid !important;
	border-radius: var(--odc16-button-radius) !important;
	font: inherit !important;
	font-size: var(--odc16-button-font) !important;
	font-weight: var(--odc16-button-weight) !important;
	letter-spacing: 0 !important;
	line-height: 1.15 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	white-space: normal !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer !important;
	overflow: hidden !important;
}

.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button::before,
.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button::after,
.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button > *::before,
.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button > *::after {
	content: none !important;
	display: none !important;
}

.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button--support {
	border-color: #f0cb76 !important;
	background: linear-gradient(180deg, var(--odc16-gold-light), var(--odc16-gold)) !important;
	color: #160b06 !important;
}

.odc16-page-home .odc16-final-panel-stable .odc16-final-actions__button--top {
	border-color: rgba(220, 169, 67, .78) !important;
	background: linear-gradient(180deg, rgba(77, 41, 24, .92), rgba(42, 20, 13, .98)) !important;
	color: var(--odc16-cream) !important;
}

@media (max-width: 650px) {
	.odc16-page-home .odc16-final-panel-stable {
		width: calc(100% - 24px) !important;
		max-width: calc(100% - 24px) !important;
		margin: 24px auto !important;
		padding: 26px 16px !important;
	}

	.odc16-page-home .odc16-final-panel-stable__title {
		margin-bottom: 22px !important;
		font-size: clamp(1.9rem, 10vw, 2.7rem) !important;
	}

	.odc16-page-home .odc16-final-panel-stable .odc16-final-actions {
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 12px !important;
		width: 100% !important;
		max-width: 100% !important;
	}
}

/* ======================================================================
 * 1.7.2 — página Apoie o Museu: conteúdo centralizado e responsivo
 * Atua exclusivamente em /apoie-o-museu/ e não altera Home ou Tainacan.
 * ====================================================================== */
body.odc16-page-support {
	overflow-x: clip !important;
}

body.odc16-page-support :is(#page, .site, .site-container, .site-wrapper, #wrapper, .wrapper, #content, .site-content, .content-area, .site-main, main, .entry-content, .page-content, .wp-site-blocks) {
	box-sizing: border-box !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

body.odc16-page-support :is(.entry-header, .page-header) {
	margin: 0 !important;
	padding: 0 !important;
}

body.odc16-page-support :is(.entry-header > .entry-title, .page-header > .page-title) {
	display: none !important;
}

body.odc16-page-support .entry-content,
body.odc16-page-support .page-content,
body.odc16-page-support main .wp-block-post-content {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.odc16-page-support .odc17-support-page {
	box-sizing: border-box !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: min(calc(100% - 36px), 1180px) !important;
	min-height: clamp(360px, 46vh, 520px) !important;
	margin: clamp(34px, 5vw, 72px) auto clamp(48px, 7vw, 92px) !important;
	padding: clamp(30px, 5vw, 64px) !important;
	border: 1px solid rgba(220, 169, 67, .58) !important;
	border-radius: 24px !important;
	background:
		radial-gradient(circle at 50% 0%, rgba(220, 169, 67, .10), transparent 42%),
		linear-gradient(180deg, rgba(34, 18, 12, .96), rgba(13, 8, 6, .97)) !important;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .28) !important;
	position: relative !important;
	overflow: hidden !important;
}

body.odc16-page-support .odc17-support-page::before {
	content: "" !important;
	position: absolute !important;
	inset: 0 auto 0 0 !important;
	width: 5px !important;
	background: linear-gradient(180deg, var(--odc16-gold-light), var(--odc16-gold)) !important;
}

body.odc16-page-support .odc17-support-page__inner {
	box-sizing: border-box !important;
	width: min(100%, 940px) !important;
	max-width: 940px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	text-align: center !important;
}

body.odc16-page-support .odc17-support-page :is(h1, h2) {
	max-width: 900px !important;
	margin: 0 auto clamp(22px, 3vw, 34px) !important;
	padding: 0 !important;
	color: var(--odc16-gold-light) !important;
	font-size: clamp(2rem, 4.1vw, 3.7rem) !important;
	font-weight: 850 !important;
	line-height: 1.08 !important;
	letter-spacing: -.015em !important;
	text-align: center !important;
	text-wrap: balance !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

body.odc16-page-support .odc17-support-page p {
	width: 100% !important;
	max-width: 900px !important;
	margin: 0 auto 18px !important;
	padding: 0 !important;
	color: var(--odc16-cream) !important;
	font-size: clamp(1.05rem, 1.45vw, 1.28rem) !important;
	font-weight: 500 !important;
	line-height: 1.75 !important;
	text-align: center !important;
	text-wrap: pretty !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
}

body.odc16-page-support .odc17-support-page p:last-child {
	margin-bottom: 0 !important;
	color: var(--odc16-gold-light) !important;
	font-weight: 750 !important;
}

body.odc16-page-support .odc17-support-page :is(a, button, .wp-block-button__link) {
	max-width: 100% !important;
}

@media (max-width: 720px) {
	body.odc16-page-support .odc17-support-page {
		width: calc(100% - 20px) !important;
		min-height: 0 !important;
		margin: 22px auto 48px !important;
		padding: 30px 20px 32px !important;
		border-radius: 18px !important;
	}

	body.odc16-page-support .odc17-support-page::before {
		width: 4px !important;
	}

	body.odc16-page-support .odc17-support-page :is(h1, h2) {
		font-size: clamp(1.85rem, 9vw, 2.55rem) !important;
		margin-bottom: 22px !important;
	}

	body.odc16-page-support .odc17-support-page p {
		font-size: 1rem !important;
		line-height: 1.65 !important;
		text-align: left !important;
	}

	body.odc16-page-support .odc17-support-page p:last-child {
		text-align: center !important;
	}
}

/* ================================================================
 * 1.7.5 — Acervo Educativo sem conteúdo provisório
 * Atua somente em /educativo/. Não altera fichas, Home, Exposições,
 * busca, botões globais, áudio ou Sinopse.
 * ================================================================ */
.odc18-educational-journey {
  width: min(1180px, calc(100% - 40px));
  margin: 28px auto 38px;
  padding: 0;
  box-sizing: border-box;
}

.odc18-educational-journey__eyebrow {
  margin: 0 0 10px;
  color: #e5bd48;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.odc18-educational-journey__card {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.25fr);
  gap: 28px;
  align-items: center;
  padding: 28px;
  border: 1px solid rgba(218, 177, 49, .72);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(73, 25, 12, .97), rgba(35, 10, 6, .98));
  box-shadow: 0 18px 45px rgba(0, 0, 0, .28);
  overflow: hidden;
}

.odc18-educational-journey__media {
  display: block;
  min-width: 0;
  border-radius: 18px;
  overflow: hidden;
}

.odc18-educational-journey__media img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 360px;
  object-fit: cover;
}

.odc18-educational-journey__content {
  min-width: 0;
}

.odc18-educational-journey__content h2 {
  margin: 0 0 14px;
  color: #e6bd45;
  font-size: clamp(30px, 3.2vw, 48px);
  line-height: 1.08;
}

.odc18-educational-journey__content p {
  margin: 0 0 22px;
  color: #fff7e9;
  font-size: clamp(17px, 1.45vw, 21px);
  line-height: 1.65;
}

.odc18-educational-journey__action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 13px 26px;
  border: 1px solid #efcf62;
  border-radius: 18px;
  background: linear-gradient(180deg, #e7bd48, #cc9130);
  color: #251006 !important;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 800;
  text-align: center;
  text-decoration: none !important;
}

.odc18-educational-placeholder-hidden {
  display: none !important;
}

@media (max-width: 780px) {
  .odc18-educational-journey {
    width: calc(100% - 24px);
    margin: 20px auto 28px;
  }

  .odc18-educational-journey__card {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
    padding: 18px;
    border-radius: 20px;
  }

  .odc18-educational-journey__content h2 {
    font-size: clamp(27px, 8.5vw, 38px);
  }

  .odc18-educational-journey__action {
    width: 100%;
    min-height: 54px;
    padding-inline: 16px;
    box-sizing: border-box;
  }
}

/* ================================================================
 * 1.7.6 — ESTABILIZAÇÃO MOBILE FINAL
 * Regras estritamente limitadas a telefones (até 600px).
 * Não afeta notebook, computador ou tablet em largura superior.
 * ================================================================ */
@media screen and (max-width: 600px) {
  html,
  body {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    overflow-x: clip !important;
  }

  body :is(#page,.site,.site-container,.site-wrapper,#wrapper,.wrapper,#content,.site-content,.content-area,.site-main,main,.entry-content,.page-content,.wp-site-blocks) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    float: none !important;
    overflow-x: clip !important;
  }

  /* Navegação global: três botões legíveis, sem coluna estreita. */
  body #odc16-tools,
  body .odc16-tools,
  body .odc16-server-tools {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    transform: none !important;
    overflow: visible !important;
  }

  body #odc16-tools .odc15-nav,
  body .odc16-tools .odc15-nav,
  body .odc15-nav {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 7px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 0 12px !important;
    padding: 7px !important;
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    overflow: hidden !important;
  }

  body .odc15-nav__button,
  body .odc15-nav__button--back {
    box-sizing: border-box !important;
    display: flex !important;
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 8px 5px !important;
    gap: 5px !important;
    border-radius: 14px !important;
    font-size: 14px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow: hidden !important;
  }

  body .odc15-nav__icon {
    width: 18px !important;
    min-width: 18px !important;
    height: 18px !important;
    font-size: 12px !important;
  }

  /* Formulário de busca e páginas de coleção. */
  body .odc15-search-form,
  body #odc16-tools .odc15-search-form {
    box-sizing: border-box !important;
    display: block !important;
    position: relative !important;
    inset: auto !important;
    float: none !important;
    width: calc(100% - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 24px) !important;
    margin: 0 auto 18px !important;
    padding: 17px 15px !important;
    transform: none !important;
    overflow: hidden !important;
  }

  body .odc15-search-form__title {
    width: 100% !important;
    margin: 0 0 15px !important;
    font-size: 24px !important;
    line-height: 1.18 !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  body .odc15-search-form__grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 13px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body .odc15-search-form label,
  body .odc15-search-form label > span,
  body .odc15-search-form input,
  body .odc15-search-form select,
  body .odc15-search-form button {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    writing-mode: horizontal-tb !important;
  }

  body .odc15-search-form input,
  body .odc15-search-form select,
  body .odc15-search-form button {
    min-height: 52px !important;
    padding: 11px 13px !important;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  body :is(.odc16-acervo-grid,.odc15-search-results__grid,.tainacan-items-list,.tainacan-list-container,.wp-block-post-template) {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 16px !important;
    width: calc(100% - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body :is(.odc16-acervo-card,.odc15-result-card,.tainacan-item,.wp-block-post) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
  }

  body :is(.odc16-curated-item,.odc16-curated-hero,.odc16-primary-data,.odc16-secondary-data,.odc16-curated-section,.tainacan-item-single-page,.tainacan-item-section,.tainacan-item-metadata) {
    box-sizing: border-box !important;
    width: calc(100% - 24px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 24px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-wrap: anywhere !important;
  }

  body :is(.odc16-curated-hero,.odc16-master-hero,.odc16-primary-data,.odc16-secondary-data,.odc16-catalog-details__list,.odc16-master-facts) {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
  }

  body :is(input,select,textarea,button,iframe,img,video,audio) {
    max-width: 100% !important;
  }

  /* Títulos de coleção: impede letras gigantes e cortes laterais. */
  body.odc16-page-collection :is(h1,.entry-title,.page-title,.odc16-collection-title),
  body.odc16-page-item :is(h1,.entry-title,.page-title,.odc16-curated-title) {
    box-sizing: border-box !important;
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    font-size: clamp(34px,12vw,52px) !important;
    line-height: 1.03 !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  /* --------------------------------------------------------------
   * Jornada Mestre Ray: somente celular.
   * -------------------------------------------------------------- */
  body .odc-game {
    box-sizing: border-box !important;
    width: 100vw !important;
    min-width: 0 !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    overflow: hidden !important;
  }

  body .odc-game__start,
  body .odc-game__viewport,
  body .odc-game__accessible,
  body .odc-game__finish,
  body .odc-game__fight {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  body .odc-game__start-card {
    box-sizing: border-box !important;
    width: calc(100% - 20px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 20px) !important;
    margin: 10px auto !important;
    padding: 20px 16px !important;
  }

  body .odc-game__start-card h1 {
    font-size: clamp(34px,11vw,49px) !important;
    line-height: 1.02 !important;
    overflow-wrap: break-word !important;
  }

  body .odc-game__opening-copy,
  body .odc-game__opening-copy p,
  body .odc-game__instructions {
    max-width: 100% !important;
    font-size: 16px !important;
    line-height: 1.55 !important;
  }

  body .odc-game__start-sections {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 9px !important;
  }

  body .odc-game__start-sections button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
  }

  body .odc-game__start-actions {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
    gap: 9px !important;
    width: 100% !important;
  }

  body .odc-game__start-actions .odc-game__button {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 54px !important;
    padding: 10px 8px !important;
    font-size: 14px !important;
    white-space: normal !important;
  }

  body .odc-game__hud {
    box-sizing: border-box !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 10px !important;
    width: calc(100% - 16px) !important;
    min-width: 0 !important;
    max-width: calc(100% - 16px) !important;
    margin: 8px auto 0 !important;
    padding: 12px !important;
    position: relative !important;
    inset: auto !important;
  }

  body .odc-game__hud-title {
    width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
  }

  body .odc-game__hud-title strong,
  body .odc-game__hud-title span {
    display: inline !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  body .odc-game__hud-progress {
    display: none !important;
  }

  body .odc-game__hud-actions {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  body .odc-game__hud-actions button,
  body .odc-game__hud-actions a {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 48px !important;
    padding: 8px 6px !important;
    font-size: 13px !important;
    line-height: 1.15 !important;
    white-space: normal !important;
  }

  body .odc-game__viewport {
    min-height: 720px !important;
  }

  body .odc-game__scene {
    top: 0 !important;
  }

  body .odc-game__memory {
    transform: scale(.72) !important;
    transform-origin: center !important;
  }

  body .odc-game__avatar {
    max-width: 120px !important;
  }

  /* A versão acessível vira uma tela própria, sem sobrepor o HUD e a sala. */
  body .odc-game__accessible:not([hidden]) {
    display: block !important;
    position: fixed !important;
    z-index: 2147483000 !important;
    inset: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100dvh !important;
    margin: 0 !important;
    padding: 20px 14px 110px !important;
    background: #111 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body .odc-game__accessible-head {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 22px !important;
  }

  body .odc-game__accessible-head h2 {
    margin: 6px 0 0 !important;
    font-size: clamp(32px,10vw,46px) !important;
    line-height: 1.03 !important;
  }

  body .odc-game__accessible-head .odc-game__button {
    width: 100% !important;
    min-height: 54px !important;
  }

  body .odc-game__accessible-intro {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px !important;
    font-size: 17px !important;
    line-height: 1.65 !important;
  }

  body .odc-game__accessible-grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 16px !important;
  }

  body .odc-game__accessible-card {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 15px !important;
  }

  body .odc-game__accessible-card > img {
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
  }

  body .odc-game__accessible-card h3 {
    font-size: 26px !important;
  }

  /* Mantém botões flutuantes longe do conteúdo principal. */
  body [vw] {
    right: 8px !important;
  }
}

/* ================================================================
 * 1.7.7 — Botões Mapa da Capoeira e Acervo mais compactos no celular.
 * Atua somente na Home e até 600px. Não altera tablet, notebook ou desktop.
 * ================================================================ */
@media screen and (max-width: 600px) {
  body.odc16-page-home .odc17-mobile-feature-box {
    box-sizing: border-box !important;
    width: calc(100% - 32px) !important;
    min-width: 0 !important;
    max-width: 360px !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    aspect-ratio: auto !important;
    margin: 12px auto !important;
    padding: 0 !important;
    border-radius: 24px !important;
    overflow: hidden !important;
  }

  body.odc16-page-home .odc17-mobile-feature-action {
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 92px !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 18px 16px !important;
    border-radius: 24px !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }

  body.odc16-page-home .odc17-mobile-feature-action::before,
  body.odc16-page-home .odc17-mobile-feature-action::after {
    max-width: 26px !important;
    max-height: 26px !important;
  }
}



/* ================================================================
 * 1.9.3 — Busca contextual e opções de seleção legíveis.
 * Atua somente nas páginas de coleções e exposições.
 * ================================================================ */
body.odc19-context-search .odc15-search-form select,
body.odc19-context-search select.odc19-readable-select {
  color-scheme: dark !important;
  background-color: #24120c !important;
  color: #fff6df !important;
  border-color: rgba(224, 178, 65, .82) !important;
}

body.odc19-context-search .odc15-search-form select option,
body.odc19-context-search select.odc19-readable-select option,
body.odc19-context-search .odc15-search-form select optgroup,
body.odc19-context-search select.odc19-readable-select optgroup {
  background: #24120c !important;
  color: #fff6df !important;
}

body.odc19-context-search .odc15-search-form select option:checked,
body.odc19-context-search select.odc19-readable-select option:checked {
  background: #d9ad35 !important;
  color: #170b06 !important;
}

body.odc19-context-search .odc15-search-form input::placeholder {
  color: rgba(255, 246, 223, .78) !important;
  opacity: 1 !important;
}

body.odc19-context-search .odc15-search-form input:focus,
body.odc19-context-search .odc15-search-form select:focus,
body.odc19-context-search select.odc19-readable-select:focus {
  outline: 3px solid rgba(231, 190, 76, .4) !important;
  outline-offset: 2px !important;
  border-color: #e7be4c !important;
}

/* Exposições: remove o filtro nativo de autoria junto com o formulário antigo.
 * A busca contextual do plugin continua disponível e já vem nomeada corretamente. */
body[data-odc-search-context="exposicoes"] .odc15-original-search {
  display: none !important;
}

@media (max-width: 820px) {
  body.odc19-context-search .odc15-search-form {
    width: calc(100% - 24px) !important;
    max-width: none !important;
    margin-inline: auto !important;
  }

  body.odc19-context-search .odc15-search-form__title {
    font-size: 1.08rem !important;
  }

  body.odc19-context-search .odc15-search-form input,
  body.odc19-context-search .odc15-search-form select,
  body.odc19-context-search .odc15-search-form button {
    min-height: 52px !important;
    font-size: 1rem !important;
  }
}

/* ================================================================
 * 1.9.9 — Card reconstruído: uma imagem oficial + um título.
 * ================================================================ */
body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell,
body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt,
body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell * {
  background-image: none !important;
}

body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell::before,
body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell::after,
body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell *::before,
body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell *::after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}

body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt-shell {
  min-height: 0 !important;
  height: auto !important;
  padding-top: 0 !important;
  align-self: start !important;
}

body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-rebuilt {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  align-self: start !important;
  box-sizing: border-box !important;
}

body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-link {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-image {
  flex: 0 0 auto !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body:is(.odc16-page-home,.odc16-page-acervo) .odc19-card-title {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 96px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 18px 20px !important;
  color: #e9b94f !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.35rem, 1.8vw, 1.85rem) !important;
  font-weight: 700 !important;
  line-height: 1.16 !important;
  text-align: left !important;
  overflow-wrap: anywhere !important;
  box-sizing: border-box !important;
}

/* Home: elimina a altura editorial antiga e mantém quatro cards compactos. */
body.odc16-page-home .odc19-card-rebuilt-shell,
body.odc16-page-home .odc19-card-rebuilt,
body.odc16-page-home .odc19-card-link {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}

/* Página Acervo: conserva o cartão compacto já aprovado. */
body.odc16-page-acervo .odc19-card-rebuilt {
  height: 210px !important;
  min-height: 210px !important;
  max-height: 210px !important;
}

body.odc16-page-acervo .odc19-card-link {
  height: 100% !important;
  min-height: 0 !important;
}

body.odc16-page-acervo .odc19-card-image {
  flex: 0 0 126px !important;
  height: 126px !important;
  min-height: 126px !important;
  max-height: 126px !important;
  aspect-ratio: auto !important;
}

body.odc16-page-acervo .odc19-card-title {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  padding: 12px 16px !important;
  justify-content: center !important;
  font-size: clamp(1.05rem, 1.25vw, 1.32rem) !important;
  text-align: center !important;
}

@media (max-width: 650px) {
  body.odc16-page-home .odc19-card-title {
    min-height: 78px !important;
    padding: 14px 16px !important;
    font-size: 1.28rem !important;
  }

  body.odc16-page-acervo .odc19-card-image {
    flex-basis: 98px !important;
    height: 98px !important;
    min-height: 98px !important;
    max-height: 98px !important;
  }
}

/* ================================================================
 * 2.1.0 — Refinamento 4 da página Acervo.
 * Audiovisual e Sonoro, Museológico, Bibliográfico e Educativo; depois Mestres e
 * Memória Viva, centralizados para preservar as faixas ornamentais laterais.
 * ================================================================ */
body.odc16-page-acervo .odc16-acervo-grid.odc20-acervo-curatorial-ready {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
}

body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-section-heading {
  display: block !important;
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin: 18px 0 6px !important;
  padding: 8px 0 !important;
}

body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-heading--divisions { order: 10 !important; }
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--audiovisual { order: 20 !important; }
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--museologico { order: 30 !important; }
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--bibliografico { order: 40 !important; }
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--educativo { order: 50 !important; }

body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-heading--thematic {
  display: block !important;
  order: 60 !important;
}

body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--mestres {
  display: block !important;
  order: 70 !important;
  grid-column: 2 !important;
}

body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--memoria {
  display: block !important;
  order: 80 !important;
  grid-column: 3 !important;
}

/* Fotografias é suporte e permanece abrangida pelo Audiovisual e Sonoro. */
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--fotografias,
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--cantigas,
body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--exposicoes {
  display: none !important;
}

body.odc16-page-acervo .odc20-curatorial-link { cursor: pointer !important; }

/* A Home repete a mesma ordem taxonômica da página Acervo. */
body.odc16-page-home .odc19-card-rebuilt-shell--audiovisual,
body.odc16-page-home .odc19-card-rebuilt--audiovisual { order: 10 !important; }
body.odc16-page-home .odc19-card-rebuilt-shell--museologico,
body.odc16-page-home .odc19-card-rebuilt--museologico { order: 20 !important; }
body.odc16-page-home .odc19-card-rebuilt-shell--bibliografico,
body.odc16-page-home .odc19-card-rebuilt--bibliografico { order: 30 !important; }
body.odc16-page-home .odc19-card-rebuilt-shell--educativo,
body.odc16-page-home .odc19-card-rebuilt--educativo { order: 40 !important; }

@media (max-width: 1100px) and (min-width: 651px) {
  body.odc16-page-acervo .odc16-acervo-grid.odc20-acervo-curatorial-ready {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--mestres { grid-column: 1 !important; }
  body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--memoria { grid-column: 2 !important; }
}

@media (max-width: 650px) {
  body.odc16-page-acervo .odc16-acervo-grid.odc20-acervo-curatorial-ready {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--mestres,
  body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--memoria {
    grid-column: 1 !important;
    width: min(100%, 360px) !important;
    justify-self: center !important;
  }
}

/* Home: os avisos de continuidade e apoio ficam em blocos independentes. */
body.odc16-page-home .odc21-home-final-blocks {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 26px !important;
  width: min(1180px, calc(100% - 44px)) !important;
  margin: 44px auto 20px !important;
  align-items: stretch !important;
}
body.odc16-page-home .odc21-home-final-block {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 260px !important;
  padding: clamp(26px, 4vw, 50px) !important;
  border: 1px solid rgba(226, 177, 66, .45) !important;
  border-radius: 18px !important;
  background: rgba(8, 7, 6, .86) !important;
  text-align: center !important;
  box-sizing: border-box !important;
}
body.odc16-page-home .odc21-home-final-block__kicker {
  margin: 0 0 10px !important;
  color: #e4b74c !important;
  font-size: .86rem !important;
  font-weight: 800 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
body.odc16-page-home .odc21-home-final-block__title {
  margin: 0 0 14px !important;
  color: #fff4d3 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.8rem, 3vw, 2.65rem) !important;
  line-height: 1.08 !important;
}
body.odc16-page-home .odc21-home-final-block__text {
  max-width: 620px !important;
  margin: 0 !important;
  color: rgba(255, 246, 224, .9) !important;
  font-size: 1.06rem !important;
  line-height: 1.65 !important;
}
body.odc16-page-home .odc21-home-final-block__action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  margin-top: 22px !important;
  padding: 12px 24px !important;
  border: 1px solid #edc45d !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #e8bd55, #9f571d) !important;
  color: #160b05 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}
body.odc16-page-home .odc21-home-final-blocks__top {
  grid-column: 1 / -1 !important;
  justify-self: center !important;
  border: 0 !important;
  background: transparent !important;
  color: #e6ba50 !important;
  text-decoration: underline !important;
  cursor: pointer !important;
}

/* Exposições: remove exclusivamente o filtro herdado de autoria. */
body.odc21-page-exposicoes .odc21-exhibition-author-filter-hidden,
body.odc21-page-exposicoes .odc21-exhibition-author-filter-hidden * {
  display: none !important;
}

@media (max-width: 760px) {
  body.odc16-page-home .odc21-home-final-blocks {
    grid-template-columns: minmax(0, 1fr) !important;
    width: min(100% - 24px, 620px) !important;
    gap: 18px !important;
  }
  body.odc16-page-home .odc21-home-final-block { min-height: 0 !important; }
}



body.odc16-page-home .odc21-home-card-kicker {
  display: block !important;
  margin: 0 0 8px !important;
  color: #e5b94c !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
}

body.odc21-page-exposicoes .odc15-search-form__grid {
  grid-template-columns: minmax(220px, 1fr) auto !important;
}

@media (max-width: 650px) {
  body.odc21-page-exposicoes .odc15-search-form__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ================================================================
 * 2.1.1 — Home: coleções temáticas no lugar correto e contraste do CTA.
 * ================================================================ */
body.odc16-page-home .odc22-home-misplaced-card,
body.odc16-page-home .odc22-home-misplaced-shell {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.odc16-page-home .odc22-home-thematic {
  box-sizing: border-box !important;
  width: min(920px, calc(100% - 96px)) !important;
  max-width: 920px !important;
  margin: 38px auto 54px !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 2 !important;
}

body.odc16-page-home .odc22-home-thematic__heading {
  margin: 0 0 24px !important;
  padding: 0 !important;
  color: #f1cf72 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(2rem, 4vw, 3.15rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .7) !important;
}

body.odc16-page-home .odc22-home-thematic__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 360px)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 28px !important;
  width: 100% !important;
  margin: 0 auto !important;
}

body.odc16-page-home .odc22-home-thematic__card {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 290px !important;
  min-height: 290px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(220, 165, 55, .55) !important;
  border-radius: 22px !important;
  background: #090806 !important;
  box-shadow: 0 14px 32px rgba(0, 0, 0, .32) !important;
}

body.odc16-page-home .odc22-home-thematic__link {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  color: inherit !important;
  text-decoration: none !important;
}

body.odc16-page-home .odc22-home-thematic__image {
  display: block !important;
  width: 100% !important;
  height: 205px !important;
  min-height: 205px !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
}

body.odc16-page-home .odc22-home-thematic__title {
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 85px !important;
  padding: 12px 18px !important;
  color: #efc760 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

body.odc16-page-home .odc22-home-thematic__link:hover,
body.odc16-page-home .odc22-home-thematic__link:focus-visible {
  outline: 2px solid #f1ca62 !important;
  outline-offset: -4px !important;
}

body.odc16-page-home .odc22-home-history-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 54px !important;
  padding: 14px 28px !important;
  border: 2px solid #e6b94d !important;
  border-radius: 8px !important;
  background: rgba(8, 7, 6, .94) !important;
  color: #f4d67c !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-shadow: none !important;
  text-decoration: none !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .28) !important;
}

body.odc16-page-home .odc22-home-history-action:hover,
body.odc16-page-home .odc22-home-history-action:focus-visible {
  background: #dca53a !important;
  color: #160b05 !important;
  border-color: #f1cf72 !important;
}

@media (max-width: 760px) {
  body.odc16-page-home .odc22-home-thematic {
    width: min(100% - 28px, 440px) !important;
    margin: 28px auto 42px !important;
  }
  body.odc16-page-home .odc22-home-thematic__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }
  body.odc16-page-home .odc22-home-thematic__card {
    height: 270px !important;
    min-height: 270px !important;
  }
  body.odc16-page-home .odc22-home-thematic__image {
    height: 190px !important;
    min-height: 190px !important;
  }
}

/* ================================================================
 * 2.1.1 — Jornada: a versão acessível não cobre a experiência visual.
 * ================================================================ */
body.odc22-page-journey .odc-game__accessible[hidden],
body.odc22-page-journey .odc22-journey-access-panel[hidden] {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.odc22-page-journey .odc-game__accessible:not([hidden]),
body.odc22-page-journey .odc22-journey-access-panel:not([hidden]) {
  position: relative !important;
  inset: auto !important;
  z-index: 3 !important;
  display: block !important;
  box-sizing: border-box !important;
  width: min(1120px, calc(100% - 32px)) !important;
  max-width: 1120px !important;
  height: auto !important;
  max-height: none !important;
  margin: 28px auto !important;
  padding: clamp(22px, 4vw, 42px) !important;
  overflow: visible !important;
  border: 1px solid rgba(230, 185, 77, .48) !important;
  border-radius: 18px !important;
  background: #11100e !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, .35) !important;
}

body.odc22-page-journey .odc-game:has(.odc-game__accessible:not([hidden])) {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

body.odc22-page-journey .odc22-journey-access-toggle {
  position: static !important;
  inset: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: 230px !important;
  min-height: 42px !important;
  margin: 6px !important;
  padding: 9px 14px !important;
  border: 1px solid #e5b64a !important;
  border-radius: 999px !important;
  background: rgba(10, 9, 7, .92) !important;
  color: #f5d77d !important;
  font-size: .9rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  text-shadow: none !important;
}

@media (max-width: 650px) {
  body.odc22-page-journey .odc-game__accessible:not([hidden]),
  body.odc22-page-journey .odc22-journey-access-panel:not([hidden]) {
    width: calc(100% - 20px) !important;
    margin: 18px auto !important;
    padding: 20px 14px 28px !important;
  }
  body.odc22-page-journey .odc22-journey-access-toggle {
    width: calc(100% - 12px) !important;
    max-width: none !important;
    margin: 6px auto !important;
  }
}


/* ================================================================
 * 2.1.2 — Jornada: leitor acessível textual, sem imagem em tela cheia.
 * ================================================================ */
body.odc23-page-journey .odc-game__accessible,
body.odc23-page-journey .odc-game__accessible:not([hidden]),
body.odc23-page-journey .odc23-accessible-legacy-hidden {
  display: none !important;
  visibility: hidden !important;
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  border: 0 !important;
  pointer-events: none !important;
}

body.odc23-page-journey .odc23-accessible-reader[hidden] {
  display: none !important;
}

body.odc23-page-journey .odc23-accessible-reader {
  position: relative !important;
  z-index: 2 !important;
  box-sizing: border-box !important;
  width: min(1120px, calc(100% - 40px)) !important;
  max-width: 1120px !important;
  height: auto !important;
  max-height: none !important;
  margin: 32px auto 48px !important;
  padding: clamp(24px, 4vw, 46px) !important;
  overflow: visible !important;
  border: 1px solid rgba(230, 185, 77, .62) !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, #16130f 0%, #0d0c0a 100%) !important;
  color: #f7f1e6 !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, .42) !important;
  scroll-margin-top: 110px !important;
}

body.odc23-page-journey .odc23-accessible-reader,
body.odc23-page-journey .odc23-accessible-reader * {
  box-sizing: border-box !important;
  background-image: none !important;
  text-shadow: none !important;
}

body.odc23-page-journey .odc23-accessible-reader img,
body.odc23-page-journey .odc23-accessible-reader picture,
body.odc23-page-journey .odc23-accessible-reader video,
body.odc23-page-journey .odc23-accessible-reader iframe,
body.odc23-page-journey .odc23-accessible-reader canvas,
body.odc23-page-journey .odc23-accessible-reader svg {
  display: none !important;
}

body.odc23-page-journey .odc23-accessible-reader__head {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  align-items: start !important;
  gap: 22px !important;
  margin: 0 0 30px !important;
  padding: 0 0 24px !important;
  border-bottom: 1px solid rgba(230, 185, 77, .34) !important;
}

body.odc23-page-journey .odc23-accessible-reader__eyebrow {
  margin: 0 0 8px !important;
  color: #f0c85c !important;
  font-size: .9rem !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  line-height: 1.3 !important;
  text-transform: uppercase !important;
}

body.odc23-page-journey .odc23-accessible-reader h2 {
  margin: 0 !important;
  color: #f6d777 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(2rem, 4vw, 3.25rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
}

body.odc23-page-journey .odc23-accessible-reader__intro {
  max-width: 760px !important;
  margin: 14px 0 0 !important;
  color: #fff7e8 !important;
  font-size: 1.05rem !important;
  line-height: 1.65 !important;
}

body.odc23-page-journey .odc23-accessible-reader__close {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 190px !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 11px 18px !important;
  border: 1px solid #e6b94d !important;
  border-radius: 999px !important;
  background: #17110b !important;
  color: #f7d97d !important;
  font-size: .94rem !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  cursor: pointer !important;
}

body.odc23-page-journey .odc23-accessible-reader__content {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
}

body.odc23-page-journey .odc23-accessible-reader__section {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 22px !important;
  border: 1px solid rgba(230, 185, 77, .24) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .035) !important;
}

body.odc23-page-journey .odc23-accessible-reader__section h3,
body.odc23-page-journey .odc23-accessible-reader__content > h3 {
  margin: 0 0 12px !important;
  color: #f3ca61 !important;
  font-size: clamp(1.25rem, 2vw, 1.65rem) !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
}

body.odc23-page-journey .odc23-accessible-reader p {
  margin: 0 0 12px !important;
  color: #fffaf1 !important;
  font-size: 1rem !important;
  line-height: 1.72 !important;
}

body.odc23-page-journey .odc23-accessible-reader p:last-child {
  margin-bottom: 0 !important;
}

body.odc23-page-journey .odc23-access-toggle {
  color: #f6d777 !important;
  background: #17110b !important;
  border-color: #e6b94d !important;
  text-shadow: none !important;
}

body.odc23-page-journey .odc23-access-toggle:hover,
body.odc23-page-journey .odc23-access-toggle:focus-visible,
body.odc23-page-journey .odc23-accessible-reader__close:hover,
body.odc23-page-journey .odc23-accessible-reader__close:focus-visible {
  background: #e6b94d !important;
  color: #140c06 !important;
  outline: 3px solid rgba(255, 236, 166, .36) !important;
  outline-offset: 3px !important;
}

@media (max-width: 760px) {
  body.odc23-page-journey .odc23-accessible-reader {
    width: calc(100% - 20px) !important;
    margin: 20px auto 34px !important;
    padding: 22px 15px 28px !important;
    border-radius: 16px !important;
  }

  body.odc23-page-journey .odc23-accessible-reader__head {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.odc23-page-journey .odc23-accessible-reader__close {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.odc23-page-journey .odc23-accessible-reader__content {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.odc23-page-journey .odc23-accessible-reader__section {
    padding: 18px 15px !important;
  }
}


/* ================================================================
 * 2.2.1 — Sistema único de botões e textos curatoriais das coleções.
 * ================================================================ */
:root {
  --odc24-button-bg: #211109;
  --odc24-button-border: #e2b43f;
  --odc24-button-text: #fff5dc;
  --odc24-button-hover-bg: #e2b43f;
  --odc24-button-hover-text: #160c06;
  --odc24-button-focus: rgba(255, 226, 139, .48);
}

body .odc24-site-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: .45rem !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 48px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 12px 22px !important;
  border: 1px solid var(--odc24-button-border) !important;
  border-radius: 999px !important;
  background: var(--odc24-button-bg) !important;
  background-image: none !important;
  color: var(--odc24-button-text) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(.92rem, 1.15vw, 1.06rem) !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  letter-spacing: .015em !important;
  text-align: center !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  box-shadow: none !important;
  cursor: pointer !important;
  box-sizing: border-box !important;
  transition: background-color .18s ease, color .18s ease, transform .18s ease !important;
}

body .odc24-site-button:hover,
body .odc24-site-button:focus-visible {
  background: var(--odc24-button-hover-bg) !important;
  color: var(--odc24-button-hover-text) !important;
  border-color: #f3cc67 !important;
  text-decoration: none !important;
  transform: translateY(-1px) !important;
  outline: 3px solid var(--odc24-button-focus) !important;
  outline-offset: 3px !important;
}

body .odc24-site-button:disabled,
body .odc24-site-button[aria-disabled="true"] {
  opacity: .58 !important;
  cursor: not-allowed !important;
  transform: none !important;
}

body .odc24-button-group {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  justify-content: center !important;
  gap: 12px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

body .odc24-button-group > .odc24-site-button {
  flex: 1 1 190px !important;
}

body .odc24-collection-introduction {
  display: block !important;
  width: min(1120px, calc(100% - 32px)) !important;
  max-width: 1120px !important;
  margin: 24px auto 28px !important;
  padding: clamp(22px, 3vw, 38px) !important;
  border: 1px solid rgba(226, 180, 63, .52) !important;
  border-radius: 20px !important;
  background: linear-gradient(145deg, rgba(40, 20, 10, .96), rgba(13, 10, 8, .96)) !important;
  color: #fff8e8 !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, .28) !important;
  box-sizing: border-box !important;
}

body .odc24-collection-introduction__eyebrow {
  display: block !important;
  margin: 0 0 8px !important;
  color: #e7ba4e !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body .odc24-collection-introduction__title {
  margin: 0 0 16px !important;
  color: #f4ca63 !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.55rem, 3vw, 2.35rem) !important;
  font-weight: 700 !important;
  line-height: 1.18 !important;
}

body .odc24-collection-introduction__content,
body .odc24-collection-introduction__content p,
body .odc24-collection-introduction__content li {
  color: #fff8e8 !important;
  font-size: clamp(1rem, 1.25vw, 1.12rem) !important;
  line-height: 1.72 !important;
}

body .odc24-collection-introduction__content p {
  margin: 0 0 14px !important;
}

body .odc24-collection-introduction__content > :last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 700px) {
  body .odc24-site-button {
    width: 100% !important;
    min-height: 50px !important;
    padding: 13px 16px !important;
  }

  body .odc24-button-group {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body .odc24-collection-introduction {
    width: calc(100% - 20px) !important;
    margin: 18px auto 22px !important;
    padding: 20px 16px !important;
    border-radius: 16px !important;
  }
}


/* ================================================================
 * 2.2.1 — Cabeçalho curatorial garantido e atalhos principais da Home.
 * ================================================================ */
body.odc16-page-collection .odc24-collection-introduction {
  position: relative !important;
  z-index: 2 !important;
  order: 20 !important;
  margin-top: 18px !important;
  margin-bottom: 18px !important;
}

body.odc16-page-collection .odc24-collection-introduction + .odc15-search-form {
  margin-top: 0 !important;
}

body.odc16-page-home .odc24-home-primary-button {
  display: flex !important;
  width: 100% !important;
  min-height: 74px !important;
  padding: 16px 20px !important;
  border: 2px solid #b96d36 !important;
  border-radius: 5px !important;
  background: #4a261a !important;
  background-image: none !important;
  color: #fff4df !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(.9rem, 1.15vw, 1.05rem) !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  text-shadow: none !important;
  box-shadow: none !important;
}

body.odc16-page-home .odc24-home-primary-button:hover,
body.odc16-page-home .odc24-home-primary-button:focus-visible {
  border-color: #f0c45c !important;
  background: #6a351f !important;
  color: #fff8e8 !important;
}

body.odc16-page-home .odc24-home-primary-button-wrap {
  min-width: 0 !important;
}

@media (max-width: 650px) {
  body.odc16-page-home .odc24-home-primary-button {
    min-height: 58px !important;
    padding: 13px 14px !important;
    font-size: .88rem !important;
  }
}

/* ================================================================
 * 2.2.2 — Menu principal horizontal dourado da Home.
 * ================================================================ */
body.odc16-page-home .odc25-home-primary-original-hidden {
  display: none !important;
}

body.odc16-page-home .odc25-home-primary-nav {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 12px !important;
  width: min(1280px, calc(100% - 32px)) !important;
  max-width: 1280px !important;
  margin: 26px auto 34px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

body.odc16-page-home .odc25-home-primary-nav__button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 64px !important;
  height: 100% !important;
  padding: 13px 14px !important;
  border: 1px solid #f3cb68 !important;
  border-radius: 10px !important;
  background: linear-gradient(180deg, #f1ca67 0%, #dca93a 50%, #ba6f2f 100%) !important;
  background-image: linear-gradient(180deg, #f1ca67 0%, #dca93a 50%, #ba6f2f 100%) !important;
  color: #211108 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(.78rem, .92vw, .96rem) !important;
  font-weight: 900 !important;
  line-height: 1.18 !important;
  letter-spacing: .055em !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  text-shadow: 0 1px 0 rgba(255, 244, 197, .38) !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 5px 12px rgba(0,0,0,.22) !important;
  box-sizing: border-box !important;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease !important;
}

body.odc16-page-home .odc25-home-primary-nav__button:hover,
body.odc16-page-home .odc25-home-primary-nav__button:focus-visible {
  color: #160b05 !important;
  filter: brightness(1.08) saturate(1.03) !important;
  transform: translateY(-2px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.52), 0 8px 18px rgba(0,0,0,.3) !important;
  outline: 3px solid rgba(255, 232, 147, .45) !important;
  outline-offset: 3px !important;
  text-decoration: none !important;
}

@media (max-width: 1120px) {
  body.odc16-page-home .odc25-home-primary-nav {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 720px) {
  body.odc16-page-home .odc25-home-primary-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: calc(100% - 20px) !important;
    gap: 10px !important;
    margin: 20px auto 26px !important;
  }

  body.odc16-page-home .odc25-home-primary-nav__button {
    min-height: 56px !important;
    padding: 11px 10px !important;
    font-size: .78rem !important;
    letter-spacing: .035em !important;
  }
}

@media (max-width: 430px) {
  body.odc16-page-home .odc25-home-primary-nav {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ================================================================
 * 2.2.3 — Etapas da Jornada Mestre Ray: legibilidade e hierarquia.
 * ================================================================ */
body.odc23-page-journey .odc-game__start-sections,
body.odc25-journey-sections-ready .odc-game__start-sections {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  width: 100% !important;
  margin: 18px 0 22px !important;
  align-items: stretch !important;
}

body.odc23-page-journey .odc-game__start-sections .odc25-section-button,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button {
  appearance: none !important;
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 78px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 10px 20px 10px 14px !important;
  overflow: hidden !important;
  border: 1.5px solid #d8ad38 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #25130c 0%, #160b08 58%, #201009 100%) !important;
  color: #fff7e2 !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.015), 0 8px 20px rgba(0,0,0,.2) !important;
  font-family: inherit !important;
  line-height: 1.15 !important;
  text-align: left !important;
  cursor: pointer !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

body.odc23-page-journey .odc-game__start-sections .odc25-section-number,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-number {
  display: grid !important;
  place-items: center !important;
  flex: none !important;
  width: 40px !important;
  min-width: 40px !important;
  height: 40px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  background: linear-gradient(180deg, #f0cb60 0%, #c99522 100%) !important;
  color: #241108 !important;
  font-size: 1rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .02em !important;
  white-space: nowrap !important;
  text-shadow: none !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38), 0 3px 10px rgba(0,0,0,.24) !important;
}

body.odc23-page-journey .odc-game__start-sections .odc25-section-title,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-title {
  display: block !important;
  min-width: 0 !important;
  margin: 0 !important;
  color: #fff7e2 !important;
  font-size: clamp(.96rem, 1.18vw, 1.13rem) !important;
  font-weight: 800 !important;
  line-height: 1.18 !important;
  letter-spacing: .01em !important;
  text-align: left !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.55) !important;
}

/* Hover e foco: o número continua escuro sobre dourado; nunca desaparece. */
body.odc23-page-journey .odc-game__start-sections .odc25-section-button:hover,
body.odc23-page-journey .odc-game__start-sections .odc25-section-button:focus-visible,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:hover,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:focus-visible {
  transform: translateY(-2px) !important;
  border-color: #f4d478 !important;
  background: linear-gradient(135deg, #3a1d10 0%, #23110b 56%, #32180e 100%) !important;
  color: #fffaf0 !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.32), 0 0 0 3px rgba(216,173,56,.16) !important;
  outline: none !important;
}

body.odc23-page-journey .odc-game__start-sections .odc25-section-button:hover .odc25-section-number,
body.odc23-page-journey .odc-game__start-sections .odc25-section-button:focus-visible .odc25-section-number,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:hover .odc25-section-number,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:focus-visible .odc25-section-number {
  background: linear-gradient(180deg, #ffe38b 0%, #d9aa31 100%) !important;
  color: #1d0d06 !important;
}

/* Selecionado: destaque contido, sem transformar todo o botão em amarelo. */
body.odc23-page-journey .odc-game__start-sections .odc25-section-button:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"],[data-active="true"]),
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"],[data-active="true"]) {
  border-color: #f3cd64 !important;
  background: linear-gradient(135deg, #402112 0%, #251109 56%, #361a0f 100%) !important;
  color: #fff9e9 !important;
  box-shadow: inset 5px 0 0 #d8ad38, 0 9px 24px rgba(0,0,0,.3), 0 0 0 2px rgba(216,173,56,.12) !important;
}

body.odc23-page-journey .odc-game__start-sections .odc25-section-button:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"],[data-active="true"]) .odc25-section-number,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"],[data-active="true"]) .odc25-section-number {
  background: #f0cb60 !important;
  color: #211006 !important;
}

body.odc23-page-journey .odc-game__start-sections .odc25-section-button:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"],[data-active="true"]) .odc25-section-title,
body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"],[data-active="true"]) .odc25-section-title {
  color: #fff7e2 !important;
}

@media (max-width: 1050px) and (min-width: 651px) {
  body.odc23-page-journey .odc-game__start-sections,
  body.odc25-journey-sections-ready .odc-game__start-sections {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 650px) {
  body.odc23-page-journey .odc-game__start-sections,
  body.odc25-journey-sections-ready .odc-game__start-sections {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body.odc23-page-journey .odc-game__start-sections .odc25-section-button,
  body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-button {
    grid-template-columns: 42px minmax(0, 1fr) !important;
    min-height: 64px !important;
    padding: 9px 16px 9px 11px !important;
  }

  body.odc23-page-journey .odc-game__start-sections .odc25-section-number,
  body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-number {
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    font-size: .92rem !important;
  }

  body.odc23-page-journey .odc-game__start-sections .odc25-section-title,
  body.odc25-journey-sections-ready .odc-game__start-sections .odc25-section-title {
    font-size: .98rem !important;
  }
}


/* ================================================================
 * 2.2.4 — HUD interno da Jornada Mestre Ray.
 * Compacta a barra, equilibra título/progresso/ações e evita botões
 * gigantes ou circulares sem alterar a sala e os pontos da exposição.
 * ================================================================ */
body.odc26-journey-hud-ready .odc-game__hud {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: minmax(210px, 260px) minmax(270px, 340px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 16px !important;
  width: calc(100% - 36px) !important;
  max-width: 1680px !important;
  min-height: 0 !important;
  margin: 14px auto 0 !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(218, 174, 54, .68) !important;
  border-radius: 20px !important;
  background: linear-gradient(145deg, rgba(27, 12, 7, .97), rgba(10, 8, 7, .97)) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .26) !important;
  position: relative !important;
  inset: auto !important;
  z-index: 8 !important;
}

body.odc26-journey-hud-ready .odc-game__hud-title {
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
  text-align: left !important;
  line-height: 1.1 !important;
}

body.odc26-journey-hud-ready .odc-game__hud-title span {
  display: block !important;
  margin: 0 0 4px !important;
  color: #e4b940 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .74rem !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: .16em !important;
  text-transform: uppercase !important;
  white-space: normal !important;
}

body.odc26-journey-hud-ready .odc-game__hud-title strong {
  display: block !important;
  color: #fff5df !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.25rem, 1.75vw, 1.7rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  white-space: normal !important;
}

body.odc26-journey-hud-ready .odc-game__hud-progress {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  min-width: 0 !important;
  width: auto !important;
  margin: 0 !important;
}

body.odc26-journey-hud-ready .odc-game__hud-progress > span:first-child,
body.odc26-journey-hud-ready .odc-game__hud-progress > strong:first-child {
  margin-right: 4px !important;
  color: #fff0c6 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .84rem !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

body.odc26-journey-hud-ready .odc-game__hud-progress button,
body.odc26-journey-hud-ready .odc-game__hud-progress a,
body.odc26-journey-hud-ready .odc-game__hud-progress [role="button"] {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  min-width: 34px !important;
  max-width: 34px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(221, 178, 56, .58) !important;
  border-radius: 50% !important;
  background: #1c0f09 !important;
  color: #fff2cd !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: none !important;
}

body.odc26-journey-hud-ready .odc-game__hud-progress button:hover,
body.odc26-journey-hud-ready .odc-game__hud-progress button:focus-visible,
body.odc26-journey-hud-ready .odc-game__hud-progress a:hover,
body.odc26-journey-hud-ready .odc-game__hud-progress a:focus-visible,
body.odc26-journey-hud-ready .odc-game__hud-progress [role="button"]:hover,
body.odc26-journey-hud-ready .odc-game__hud-progress [role="button"]:focus-visible,
body.odc26-journey-hud-ready .odc-game__hud-progress :is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"]) {
  background: #dcb035 !important;
  color: #160b05 !important;
  border-color: #f4d071 !important;
  outline: 2px solid rgba(255, 226, 139, .35) !important;
  outline-offset: 2px !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  gap: 8px !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]) {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 46px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 9px 12px !important;
  border: 1px solid rgba(225, 181, 59, .7) !important;
  border-radius: 999px !important;
  background: #211109 !important;
  background-image: none !important;
  color: #fff4dc !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(.72rem, .82vw, .9rem) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: .025em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
  box-shadow: none !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]):hover,
body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]):focus-visible {
  background: #dcb035 !important;
  color: #160b05 !important;
  border-color: #f4d071 !important;
  transform: translateY(-1px) !important;
  outline: 3px solid rgba(255, 226, 139, .34) !important;
  outline-offset: 2px !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]):is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"]) {
  background: #2b160b !important;
  color: #f1c95f !important;
  border-color: #f1c95f !important;
  box-shadow: inset 0 0 0 1px rgba(241, 201, 95, .18) !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--accessible {
  grid-column: 1 / span 2 !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--sheet,
body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--collection {
  min-width: 0 !important;
  border-radius: 999px !important;
}

@media (max-width: 1320px) {
  body.odc26-journey-hud-ready .odc-game__hud {
    grid-template-columns: minmax(210px, 260px) minmax(0, 1fr) !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions {
    grid-column: 1 / -1 !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  body.odc26-journey-hud-ready .odc-game__hud {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    width: calc(100% - 16px) !important;
    margin-top: 8px !important;
    padding: 14px 12px !important;
    border-radius: 16px !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-title {
    text-align: center !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-progress {
    justify-content: center !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--accessible {
    grid-column: span 1 !important;
  }
}

@media (max-width: 430px) {
  body.odc26-journey-hud-ready .odc-game__hud-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ================================================================
 * 2.2.5 — Correção segura do HUD da Jornada Mestre Ray.
 * Remove deslocamentos herdados e mantém a barra integralmente dentro
 * da tela, com controles compactos e responsivos.
 * ================================================================ */
body.odc26-journey-hud-ready .odc-game__hud {
  box-sizing: border-box !important;
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  inset: auto !important;
  transform: none !important;
  translate: none !important;
  float: none !important;
  clear: both !important;
  justify-self: stretch !important;
  align-self: auto !important;
  grid-column: auto !important;
  grid-row: auto !important;
  display: grid !important;
  grid-template-columns: minmax(210px, 260px) minmax(250px, 330px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 14px !important;
  width: calc(100% - 32px) !important;
  min-width: 0 !important;
  max-width: 1720px !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 12px auto 0 !important;
  padding: 12px 14px !important;
  overflow: visible !important;
  border-radius: 18px !important;
}

body.odc26-journey-hud-ready .odc-game__hud-title,
body.odc26-journey-hud-ready .odc-game__hud-progress,
body.odc26-journey-hud-ready .odc-game__hud-actions {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  translate: none !important;
  float: none !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions {
  display: flex !important;
  flex-flow: row wrap !important;
  align-items: stretch !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  width: 100% !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]) {
  box-sizing: border-box !important;
  flex: 1 1 108px !important;
  width: auto !important;
  min-width: 92px !important;
  max-width: 190px !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 7px 11px !important;
  border-radius: 14px !important;
  font-size: clamp(.7rem, .78vw, .86rem) !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--guided,
body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--challenge,
body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--fullscreen,
body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--accessible {
  flex-basis: 128px !important;
  max-width: 205px !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--sound,
body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--sheet,
body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--collection {
  flex-basis: 84px !important;
  max-width: 130px !important;
}

body.odc26-journey-hud-ready .odc-game__hud-actions .odc26-hud-action--accessible {
  grid-column: auto !important;
}

@media (max-width: 1380px) {
  body.odc26-journey-hud-ready .odc-game__hud {
    grid-template-columns: minmax(210px, 260px) minmax(0, 1fr) !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions {
    grid-column: 1 / -1 !important;
    justify-content: center !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]) {
    flex: 1 1 120px !important;
    max-width: 220px !important;
  }
}

@media (max-width: 760px) {
  body.odc26-journey-hud-ready .odc-game__hud {
    grid-template-columns: minmax(0, 1fr) !important;
    width: calc(100% - 16px) !important;
    gap: 10px !important;
    padding: 12px !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-title,
  body.odc26-journey-hud-ready .odc-game__hud-progress {
    text-align: center !important;
    justify-content: center !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    justify-content: stretch !important;
  }

  body.odc26-journey-hud-ready .odc-game__hud-actions > :is(button,a,[role="button"]) {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    white-space: normal !important;
    text-overflow: clip !important;
  }
}

@media (max-width: 430px) {
  body.odc26-journey-hud-ready .odc-game__hud-actions {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ================================================================
 * 2.2.6 — Cartão da memória selecionada na jornada.
 * Evita que o resumo da seção cubra o texto dos botões "Abrir" e
 * navegação; transforma o conjunto em uma faixa clara e legível.
 * ================================================================ */
body.odc27-journey-memory-ready .odc27-memory-action-row {
  display: grid !important;
  grid-template-columns: minmax(320px, 1.35fr) minmax(220px, 1fr) minmax(120px, .9fr) !important;
  gap: 14px !important;
  align-items: stretch !important;
  width: calc(100% - 32px) !important;
  max-width: 1880px !important;
  margin: 12px auto 0 !important;
}

body.odc27-journey-memory-ready .odc27-memory-action-row > :is(button,a,[role="button"]) {
  min-height: 74px !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control {
  position: relative !important;
  overflow: hidden !important;
  min-height: 126px !important;
  padding: 0 !important;
  border-radius: 22px !important;
  background: rgba(33, 17, 9, .96) !important;
  border: 2px solid rgba(225, 181, 59, .82) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.24) !important;
  text-align: left !important;
  color: transparent !important;
  font-size: 0 !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control > :is(div,article,section,aside) {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  min-height: 126px !important;
  margin: 0 !important;
  padding: 14px 18px !important;
  display: grid !important;
  grid-template-columns: 94px minmax(0,1fr) !important;
  gap: 16px !important;
  align-items: center !important;
  border: 0 !important;
  border-radius: 20px !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control img {
  grid-row: 1 / span 4 !important;
  width: 94px !important;
  height: 94px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
  border: 1px solid rgba(225, 181, 59, .45) !important;
  margin: 0 !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control :is(h2,h3,h4,strong,b) {
  margin: 0 !important;
  color: #fff2cf !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.05rem, 1.4vw, 1.45rem) !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control :is(.eyebrow,.kicker,.section,.label,small):first-child,
body.odc27-journey-memory-ready .odc27-memory-summary-control :is(span,p,small,div) {
  color: #f2c857 !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control p,
body.odc27-journey-memory-ready .odc27-memory-summary-control small,
body.odc27-journey-memory-ready .odc27-memory-summary-control li {
  margin: 0 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .92rem !important;
  line-height: 1.35 !important;
}

body.odc27-journey-memory-ready .odc27-memory-summary-control > * > :last-child {
  color: rgba(255, 238, 203, .78) !important;
  font-size: .88rem !important;
}

body.odc27-journey-memory-ready .odc27-memory-open,
body.odc27-journey-memory-ready .odc27-memory-next,
body.odc27-journey-memory-ready .odc27-memory-prev {
  min-height: 126px !important;
  border-radius: 22px !important;
  font-size: clamp(1rem, 1.3vw, 1.35rem) !important;
  font-weight: 800 !important;
}

body.odc27-journey-memory-ready .odc27-memory-next,
body.odc27-journey-memory-ready .odc27-memory-prev {
  letter-spacing: .05em !important;
}

@media (max-width: 1100px) {
  body.odc27-journey-memory-ready .odc27-memory-action-row {
    grid-template-columns: minmax(260px, 1fr) minmax(180px, .8fr) minmax(110px, .6fr) !important;
    gap: 10px !important;
    width: calc(100% - 16px) !important;
  }

  body.odc27-journey-memory-ready .odc27-memory-summary-control > :is(div,article,section,aside) {
    grid-template-columns: 78px minmax(0,1fr) !important;
    gap: 12px !important;
    padding: 12px 14px !important;
  }

  body.odc27-journey-memory-ready .odc27-memory-summary-control img {
    width: 78px !important;
    height: 78px !important;
  }
}

@media (max-width: 760px) {
  body.odc27-journey-memory-ready .odc27-memory-action-row {
    grid-template-columns: minmax(0,1fr) !important;
  }

  body.odc27-journey-memory-ready .odc27-memory-open,
  body.odc27-journey-memory-ready .odc27-memory-next,
  body.odc27-journey-memory-ready .odc27-memory-prev,
  body.odc27-journey-memory-ready .odc27-memory-summary-control {
    min-height: 82px !important;
  }

  body.odc27-journey-memory-ready .odc27-memory-summary-control > :is(div,article,section,aside) {
    min-height: 82px !important;
  }
}


/* ================================================================
 * 2.2.7 — Faixa simples de navegação da memória.
 * Remove qualquer resumo sobreposto e mantém somente três controles
 * legíveis: Anterior, Abrir e Próximo.
 * ================================================================ */
body.odc28-journey-memory-nav-ready .odc28-memory-nav-row {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
  width: calc(100% - 32px) !important;
  max-width: 1880px !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 12px auto 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
}

body.odc28-journey-memory-nav-ready .odc28-memory-nav-row > :not(.odc28-memory-nav-control) {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.odc28-journey-memory-nav-ready .odc28-memory-nav-control {
  box-sizing: border-box !important;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  translate: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 66px !important;
  height: 66px !important;
  margin: 0 !important;
  padding: 12px 18px !important;
  overflow: visible !important;
  border: 2px solid rgba(225, 181, 59, .82) !important;
  border-radius: 999px !important;
  background: linear-gradient(145deg, #28140b, #170b07) !important;
  background-image: linear-gradient(145deg, #28140b, #170b07) !important;
  color: #fff2d2 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(.92rem, 1.15vw, 1.18rem) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: .02em !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.22) !important;
  opacity: 1 !important;
}

body.odc28-journey-memory-nav-ready .odc28-memory-nav-control:hover,
body.odc28-journey-memory-nav-ready .odc28-memory-nav-control:focus-visible {
  background: linear-gradient(145deg, #3a1d0e, #211008) !important;
  background-image: linear-gradient(145deg, #3a1d0e, #211008) !important;
  color: #f7cd62 !important;
  border-color: #f3ca5c !important;
  outline: 3px solid rgba(243, 202, 92, .28) !important;
  outline-offset: 2px !important;
  transform: translateY(-1px) !important;
}

body.odc28-journey-memory-nav-ready .odc28-memory-nav-control:is(.active,.is-active,.selected,.is-selected,[aria-current="true"],[aria-pressed="true"]) {
  background: linear-gradient(145deg, #32190c, #1d0e07) !important;
  background-image: linear-gradient(145deg, #32190c, #1d0e07) !important;
  color: #f7cd62 !important;
  border-color: #f7cd62 !important;
  box-shadow: inset 0 0 0 1px rgba(247,205,98,.18), 0 8px 20px rgba(0,0,0,.22) !important;
}

body.odc28-journey-memory-nav-ready .odc28-memory-nav-open {
  background: linear-gradient(145deg, #c89527, #e0b63e) !important;
  background-image: linear-gradient(145deg, #c89527, #e0b63e) !important;
  color: #170b05 !important;
  border-color: #f4d272 !important;
}

body.odc28-journey-memory-nav-ready .odc28-memory-nav-open:hover,
body.odc28-journey-memory-nav-ready .odc28-memory-nav-open:focus-visible {
  background: linear-gradient(145deg, #e2b941, #f0ca62) !important;
  background-image: linear-gradient(145deg, #e2b941, #f0ca62) !important;
  color: #170b05 !important;
}

@media (max-width: 760px) {
  body.odc28-journey-memory-nav-ready .odc28-memory-nav-row {
    width: calc(100% - 16px) !important;
    gap: 8px !important;
  }

  body.odc28-journey-memory-nav-ready .odc28-memory-nav-control {
    min-height: 56px !important;
    height: 56px !important;
    padding: 9px 8px !important;
    font-size: clamp(.72rem, 3vw, .92rem) !important;
    letter-spacing: 0 !important;
  }
}


/* ================================================================
 * 2.2.9 — Rótulos das pequenas memórias da sala.
 * Ajuste cirúrgico: apenas os cartões pequenos numerados dentro da sala.
 * A foto permanece em cima e o nome da seção passa a aparecer abaixo,
 * sem alterar a capa lateral, o HUD ou a faixa inferior de navegação.
 * ================================================================ */
body.odc30-memory-hotspots-ready .odc30-memory-hotspot {
  overflow: visible !important;
}

body.odc30-memory-hotspots-ready .odc30-memory-hotspot__media {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  translate: none !important;
  display: block !important;
  width: 150px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  height: 96px !important;
  min-height: 96px !important;
  max-height: 96px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: visible !important;
  z-index: 2 !important;
}

body.odc30-memory-hotspots-ready .odc30-memory-hotspot__image {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  display: block !important;
  width: 150px !important;
  min-width: 150px !important;
  max-width: 150px !important;
  height: 96px !important;
  min-height: 96px !important;
  max-height: 96px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 14px !important;
  border: 2px solid #e4b940 !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.34) !important;
  z-index: 2 !important;
}

body.odc30-memory-hotspots-ready .odc30-memory-hotspot__number {
  position: absolute !important;
  top: -18px !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translateX(-50%) !important;
  translate: none !important;
  z-index: 6 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 50% !important;
  border: 3px solid #f5d16e !important;
  background: #d9aa2d !important;
  color: #241208 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 0 0 5px rgba(217,170,45,.18), 0 6px 14px rgba(0,0,0,.32) !important;
}

body.odc30-memory-hotspots-ready .odc30-memory-hotspot__label {
  box-sizing: border-box !important;
  position: absolute !important;
  top: calc(100% + 8px) !important;
  left: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translateX(-50%) !important;
  translate: none !important;
  z-index: 7 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: max-content !important;
  min-width: 150px !important;
  max-width: 220px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 7px 12px !important;
  overflow: visible !important;
  border: 1px solid rgba(225,181,59,.78) !important;
  border-radius: 999px !important;
  background: rgba(28,13,7,.97) !important;
  color: #fff2cf !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .78rem !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  letter-spacing: .015em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  box-shadow: 0 6px 15px rgba(0,0,0,.32) !important;
}

@media (max-width: 760px) {
  body.odc30-memory-hotspots-ready .odc30-memory-hotspot__media,
  body.odc30-memory-hotspots-ready .odc30-memory-hotspot__image {
    width: 126px !important;
    min-width: 126px !important;
    max-width: 126px !important;
    height: 82px !important;
    min-height: 82px !important;
    max-height: 82px !important;
  }

  body.odc30-memory-hotspots-ready .odc30-memory-hotspot__label {
    min-width: 126px !important;
    max-width: 180px !important;
    padding: 6px 9px !important;
    font-size: .68rem !important;
  }

  body.odc30-memory-hotspots-ready .odc30-memory-hotspot__number {
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    font-size: 1rem !important;
  }
}


/* ================================================================
 * 2.3.0 — Painel informativo das fotografias da Jornada Mestre Ray.
 * Remove miniaturas redundantes e dá hierarquia visual ao conteúdo.
 * ================================================================ */
body.odc31-journey-photo-info-ready .odc31-photo-thumbnail-strip {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-information-panel {
  box-sizing: border-box !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-title {
  margin: 0 0 10px !important;
  color: #f1c75a !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.75rem, 2.4vw, 3rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  text-wrap: balance !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-date {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 82px !important;
  min-height: 42px !important;
  margin: 0 0 18px !important;
  padding: 8px 16px !important;
  border: 1px solid rgba(225,181,59,.65) !important;
  border-radius: 999px !important;
  background: rgba(42,22,11,.92) !important;
  color: #fff0c7 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  line-height: 1 !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-highlight {
  box-sizing: border-box !important;
  display: block !important;
  margin: 0 0 20px !important;
  padding: 18px 20px !important;
  border-left: 5px solid #ddb238 !important;
  border-radius: 0 18px 18px 0 !important;
  background: linear-gradient(145deg, rgba(62,34,17,.92), rgba(39,21,11,.96)) !important;
  color: #fff2d6 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(1.05rem, 1.35vw, 1.28rem) !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.18) !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-context-heading {
  margin: 20px 0 8px !important;
  color: #e5b945 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .88rem !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-context {
  margin: 0 0 16px !important;
  color: #fff7e8 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(1rem, 1.2vw, 1.18rem) !important;
  font-weight: 500 !important;
  line-height: 1.65 !important;
  text-align: left !important;
}

body.odc31-journey-photo-info-ready .odc31-photo-navigation-hint {
  box-sizing: border-box !important;
  margin: 18px 0 14px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(225,181,59,.38) !important;
  border-radius: 12px !important;
  background: rgba(24,13,8,.72) !important;
  color: rgba(255,241,211,.86) !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .9rem !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

@media (max-width: 760px) {
  body.odc31-journey-photo-info-ready .odc31-photo-title {
    font-size: clamp(1.45rem, 7vw, 2rem) !important;
  }

  body.odc31-journey-photo-info-ready .odc31-photo-highlight {
    padding: 14px 16px !important;
    font-size: 1rem !important;
  }

  body.odc31-journey-photo-info-ready .odc31-photo-context {
    font-size: .98rem !important;
    line-height: 1.55 !important;
  }
}

/* ================================================================
 * 2.4.0 — Fichas públicas do Tainacan e leitura curatorial.
 * Dados essenciais aparecem antes da sinopse e do acesso ao conteúdo.
 * Textos corridos longos recebem alinhamento justificado sem afetar
 * títulos, menus, botões, rótulos ou valores catalográficos curtos.
 * ================================================================ */
.odc24-catalog-section {
  margin-top: 28px !important;
  padding: 22px 22px 8px !important;
  border: 1px solid rgba(220, 169, 67, .42) !important;
  border-left: 4px solid var(--odc16-gold) !important;
  border-radius: 14px !important;
  background: rgba(7, 6, 5, .58) !important;
}

.odc24-catalog-section .odc16-curated-section__title {
  margin-bottom: 14px !important;
}

.odc24-public-catalog {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 28px !important;
}

.odc24-public-catalog .odc16-data-row {
  min-height: 74px !important;
}

.odc24-public-access {
  margin-top: 26px !important;
}

.odc24-public-access .odc16-curated-section__title {
  margin: 0 0 8px !important;
}

.odc24-public-access .odc16-external-source__button {
  min-width: 210px !important;
  padding: 11px 18px !important;
}

.odc24-item-synopsis {
  margin-top: 30px !important;
}

/* Justificação somente em textos corridos. */
.odc24-justified-text,
.odc16-curated-section__body,
.odc16-biography__content,
.odc24-collection-introduction__content p,
.odc24-collection-introduction__content li,
.entry-content > p,
.entry-content > blockquote,
.entry-content .wp-block-paragraph,
.entry-content .wp-block-list > li,
.tainacan-item-single-page .item-description,
.tainacan-item-single-page .metadata-type-textarea,
.tainacan-item-single-page .metadata-type-core_description {
  text-align: justify !important;
  text-justify: inter-word !important;
  text-align-last: left !important;
  hyphens: auto !important;
  -webkit-hyphens: auto !important;
  overflow-wrap: break-word !important;
  line-height: 1.7 !important;
}

/* Não justificar elementos de navegação ou catalogação curta. */
.odc16-data-row__label,
.odc16-data-row__value,
.odc16-curated-title,
.odc16-curated-subtitle,
.odc16-eyebrow,
button,
a,
nav,
header,
footer,
summary,
label,
input,
select,
textarea {
  text-align-last: auto !important;
}

@media (max-width: 760px) {
  .odc24-catalog-section {
    padding: 17px 15px 5px !important;
  }
  .odc24-public-catalog {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
  }
  .odc24-public-catalog .odc16-data-row {
    min-height: 0 !important;
  }
  .odc24-public-access .odc16-external-source__button {
    width: 100% !important;
    min-width: 0 !important;
  }
}

.odc24-public-media {
  display: block !important;
  width: 100% !important;
  max-width: 760px !important;
  margin: 12px 0 16px !important;
  border-radius: 12px !important;
  background: #090706 !important;
}

.odc24-public-media--video {
  max-height: 520px !important;
}


/* ================================================================
 * 2.5.0 — Sistema tipográfico e cromático institucional acessível.
 * Mantém a paleta preto/marrom/dourado do projeto visual, aumenta o
 * contraste, padroniza a hierarquia de títulos e justifica somente os
 * textos corridos. Controles, rótulos e metadados curtos permanecem
 * alinhados de forma funcional.
 * ================================================================ */
body.odc25-accessible-typography {
  --odc25-bg-deep: #160d08;
  --odc25-bg-panel: #24140d;
  --odc25-bg-panel-soft: #3a1d13;
  --odc25-text: #fff4dc;
  --odc25-text-soft: #d7c3a6;
  --odc25-gold: #f2c857;
  --odc25-gold-soft: #e6c76b;
  --odc25-gold-dark: #e2b14a;
  --odc25-link: #f7d77e;
  --odc25-link-hover: #fff0b4;
  --odc25-border: rgba(242, 200, 87, .56);
  --odc25-font-body: "Segoe UI", Arial, Helvetica, sans-serif;
  --odc25-font-display: Georgia, "Times New Roman", serif;
  --odc25-reading-size: clamp(1rem, .22vw + .96rem, 1.125rem);
  color: var(--odc25-text);
}

/* Cor-base dos conteúdos públicos. */
body.odc25-accessible-typography :is(
  main,
  .site-main,
  .entry-content,
  .wp-site-blocks,
  .tainacan-item-single-page,
  .odc16-curated-item,
  .odc24-collection-introduction,
  .odc31-photo-information-panel
) {
  color: var(--odc25-text) !important;
}

/* Textos corridos: leitura confortável, largura controlada e sem
 * hifenização automática, que vinha quebrando palavras como "co-leta". */
body.odc25-accessible-typography :is(
  .entry-content,
  .site-main,
  main,
  .tainacan-item-single-page,
  .odc16-curated-item,
  .odc24-collection-introduction,
  .odc31-photo-information-panel
) :is(
  p,
  blockquote,
  .wp-block-paragraph,
  .wp-block-quote,
  .odc16-curated-section__body,
  .odc16-biography__content,
  .odc24-justified-text,
  .odc24-collection-introduction__content,
  .item-description,
  .metadata-type-textarea,
  .metadata-type-core_description
) {
  color: var(--odc25-text) !important;
  font-family: var(--odc25-font-body) !important;
  font-size: var(--odc25-reading-size) !important;
  font-weight: 500 !important;
  line-height: 1.72 !important;
  letter-spacing: .004em !important;
  word-spacing: normal !important;
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  overflow-wrap: break-word !important;
  max-width: 82ch !important;
}

body.odc25-accessible-typography :is(
  .entry-content,
  .site-main,
  main,
  .tainacan-item-single-page,
  .odc16-curated-item,
  .odc24-collection-introduction
) :is(ul,ol) > li {
  color: var(--odc25-text) !important;
  font-family: var(--odc25-font-body) !important;
  font-size: var(--odc25-reading-size) !important;
  line-height: 1.68 !important;
}

/* Hierarquia padronizada de títulos. A aparência especial da jornada e
 * dos controles interativos é preservada. */
body.odc25-accessible-typography :is(
  .entry-content,
  .site-main,
  main,
  .tainacan-item-single-page,
  .odc16-curated-item,
  .odc24-collection-introduction
) :is(h1,h2,h3,h4,h5,h6):not(.odc-game *) {
  color: var(--odc25-gold) !important;
  font-family: var(--odc25-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: .005em !important;
  text-wrap: balance !important;
  overflow-wrap: break-word !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  text-shadow: 0 2px 0 rgba(54, 26, 10, .78), 0 0 12px rgba(242, 200, 87, .16) !important;
}

body.odc25-accessible-typography :is(.entry-content,.site-main,main,.tainacan-item-single-page,.odc16-curated-item) h1:not(.odc-game *) {
  font-size: clamp(2rem, 4vw, 3.6rem) !important;
  line-height: 1.08 !important;
  margin-block: .2em .55em !important;
}

body.odc25-accessible-typography :is(.entry-content,.site-main,main,.tainacan-item-single-page,.odc16-curated-item) h2:not(.odc-game *) {
  font-size: clamp(1.65rem, 3vw, 2.55rem) !important;
  line-height: 1.12 !important;
  margin-block: .85em .45em !important;
}

body.odc25-accessible-typography :is(.entry-content,.site-main,main,.tainacan-item-single-page,.odc16-curated-item) h3:not(.odc-game *) {
  font-size: clamp(1.35rem, 2.1vw, 1.85rem) !important;
  line-height: 1.18 !important;
  margin-block: .8em .4em !important;
}

body.odc25-accessible-typography :is(.entry-content,.site-main,main,.tainacan-item-single-page,.odc16-curated-item) :is(h4,h5,h6):not(.odc-game *) {
  font-size: clamp(1.08rem, 1.4vw, 1.35rem) !important;
  line-height: 1.25 !important;
}

/* Títulos e rótulos curatoriais recorrentes. */
body.odc25-accessible-typography :is(
  .odc16-curated-title,
  .odc16-curated-section__title,
  .odc16-catalog-details > summary,
  .odc24-catalog-section .odc16-curated-section__title,
  .odc31-photo-title,
  .tainacan-item-single-page .title-content,
  .tainacan-item-single-page .metadata-label
) {
  color: var(--odc25-gold) !important;
}

body.odc25-accessible-typography :is(
  .odc16-eyebrow,
  .odc16-data-row__label,
  .odc24-public-catalog .odc16-data-row__label,
  .odc31-photo-date
) {
  color: var(--odc25-gold-soft) !important;
  font-weight: 700 !important;
}

body.odc25-accessible-typography :is(
  .odc16-data-row__value,
  .odc24-public-catalog .odc16-data-row__value,
  .tainacan-item-single-page .metadata-value
) {
  color: var(--odc25-text) !important;
  font-family: var(--odc25-font-body) !important;
  font-size: clamp(.98rem, .16vw + .95rem, 1.08rem) !important;
  line-height: 1.55 !important;
  text-align: left !important;
  text-align-last: left !important;
  hyphens: none !important;
}

/* Links textuais reconhecíveis sem depender somente da cor. */
body.odc25-accessible-typography :is(main,.site-main,.entry-content,.tainacan-item-single-page) a {
  color: var(--odc25-link) !important;
  text-decoration: none !important;
  text-decoration-line: none !important;
  border-bottom: 0 !important;
}

body.odc25-accessible-typography :is(main,.site-main,.entry-content,.tainacan-item-single-page) a:hover,
body.odc25-accessible-typography :is(main,.site-main,.entry-content,.tainacan-item-single-page) a:focus-visible {
  color: var(--odc25-link-hover) !important;
}

/* Não justificar ou redimensionar elementos funcionais e textos curtos. */
body.odc25-accessible-typography :is(
  nav,
  menu,
  header,
  footer,
  button,
  [role="button"],
  input,
  select,
  textarea,
  label,
  summary,
  figcaption,
  .odc16-data-row,
  .odc16-data-row__label,
  .odc16-data-row__value,
  .odc-game,
  .odc-game *,
  .odc15-nav,
  .odc15-nav *,
  #wpadminbar,
  #wpadminbar *
) {
  text-align-last: auto !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
}

body.odc25-accessible-typography :is(nav,menu,button,[role="button"],input,select,textarea,label,summary,figcaption,.odc16-data-row,.odc-game *) {
  text-align: initial;
}

/* Cartões e painéis com texto sobre fundo escuro. */
body.odc25-accessible-typography :is(
  .odc24-catalog-section,
  .odc16-curated-section,
  .odc16-primary-data,
  .odc16-secondary-data,
  .odc16-catalog-details,
  .odc31-photo-information-panel
) {
  color: var(--odc25-text) !important;
  border-color: var(--odc25-border) !important;
}

/* Espaçamento mínimo consistente entre parágrafos. */
body.odc25-accessible-typography :is(.entry-content,.site-main,main,.tainacan-item-single-page,.odc16-curated-item) p + p {
  margin-top: 1.05em !important;
}

/* Respeito ao redimensionamento do navegador e a telas menores. */
@media (max-width: 760px) {
  body.odc25-accessible-typography {
    --odc25-reading-size: 1rem;
  }

  body.odc25-accessible-typography :is(
    .entry-content,
    .site-main,
    main,
    .tainacan-item-single-page,
    .odc16-curated-item,
    .odc24-collection-introduction
  ) :is(p,blockquote,.wp-block-paragraph,.odc16-curated-section__body,.odc16-biography__content,.odc24-justified-text,.item-description,.metadata-type-textarea,.metadata-type-core_description) {
    line-height: 1.65 !important;
    max-width: none !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.odc25-accessible-typography *,
  body.odc25-accessible-typography *::before,
  body.odc25-accessible-typography *::after {
    scroll-behavior: auto !important;
  }
}


/* ================================================================
 * 2.6.0 — Recuperação limpa e estável.
 * Sem criação, clonagem ou reordenação contínua de elementos.
 * ================================================================ */
html body {
  --odc26-gold-top: #f5d77c;
  --odc26-gold-mid: #dfa646;
  --odc26-gold-bottom: #b96e2e;
  --odc26-gold-border: #f7dc91;
  --odc26-gold-ink: #231006;
}

html body a,
html body a:link,
html body a:visited,
html body a:hover,
html body a:focus,
html body a:active,
html body a * {
  text-decoration: none !important;
  text-decoration-line: none !important;
  text-decoration-thickness: 0 !important;
  border-bottom: 0 !important;
}

html body .odc26-gold-control,
html body .odc26-gold-control:link,
html body .odc26-gold-control:visited,
html body .odc26-gold-control:hover,
html body .odc26-gold-control:focus,
html body .odc26-gold-control:active {
  background: linear-gradient(180deg, var(--odc26-gold-top) 0%, var(--odc26-gold-mid) 58%, var(--odc26-gold-bottom) 100%) !important;
  background-image: linear-gradient(180deg, var(--odc26-gold-top) 0%, var(--odc26-gold-mid) 58%, var(--odc26-gold-bottom) 100%) !important;
  border-color: var(--odc26-gold-border) !important;
  color: var(--odc26-gold-ink) !important;
  -webkit-text-fill-color: var(--odc26-gold-ink) !important;
  text-shadow: 0 1px 0 rgba(255,246,211,.38) !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.42), 0 6px 14px rgba(0,0,0,.22) !important;
}

html body .odc26-gold-control * {
  color: var(--odc26-gold-ink) !important;
  -webkit-text-fill-color: var(--odc26-gold-ink) !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}

html body .odc26-gold-control:hover,
html body .odc26-gold-control:focus-visible {
  filter: brightness(1.05) !important;
  outline: 3px solid rgba(247,220,145,.34) !important;
  outline-offset: 2px !important;
}

html body #odc26-acervo-apresentacao {
  box-sizing: border-box !important;
  width: min(1120px, calc(100% - 32px)) !important;
  margin: 42px auto 54px !important;
  padding: clamp(28px, 4vw, 52px) !important;
  border: 1px solid rgba(214,164,67,.68) !important;
  border-radius: 24px !important;
  background: linear-gradient(145deg, rgba(61,29,18,.96), rgba(26,14,10,.98)) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.28) !important;
  color: #fff3da !important;
}

html body #odc26-acervo-apresentacao .odc26-acervo-eyebrow {
  margin: 0 0 14px !important;
  color: #e7b94f !important;
  font: 800 .9rem/1.25 Arial, Helvetica, sans-serif !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
}

html body #odc26-acervo-apresentacao .odc26-acervo-title {
  max-width: 30ch !important;
  margin: 0 auto 28px !important;
  color: #f0c96b !important;
  -webkit-text-fill-color: #f0c96b !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(2rem,4vw,4rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-shadow: 0 2px 0 rgba(67,29,10,.72) !important;
}

html body #odc26-acervo-apresentacao .odc26-acervo-body {
  max-width: 80ch !important;
  margin: 0 auto !important;
}

html body #odc26-acervo-apresentacao .odc26-acervo-body p {
  margin: 0 0 1.15em !important;
  color: #fff4df !important;
  font: 500 clamp(1rem,1.2vw,1.14rem)/1.72 Arial, Helvetica, sans-serif !important;
  text-align: justify !important;
  text-align-last: left !important;
  hyphens: none !important;
}

html body .odc26-old-acervo-box {
  display: none !important;
}

@media (max-width: 720px) {
  html body #odc26-acervo-apresentacao {
    width: calc(100% - 20px) !important;
    padding: 24px 18px !important;
  }
  html body #odc26-acervo-apresentacao .odc26-acervo-body p {
    text-align: left !important;
  }
}

/* ================================================================
 * 2.6.1 — Apresentação curatorial única da página Acervo.
 * ================================================================ */
html body #odc26-acervo-apresentacao,
html body .odc26-old-acervo-box {
  display: none !important;
}

html body #odc261-acervo-apresentacao {
  box-sizing: border-box !important;
  width: min(1120px, calc(100% - 32px)) !important;
  margin: 38px auto 54px !important;
  padding: clamp(28px, 4vw, 54px) !important;
  border: 1px solid rgba(214,164,67,.72) !important;
  border-radius: 22px !important;
  background: linear-gradient(145deg, rgba(62,29,18,.97), rgba(27,14,10,.99)) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.28) !important;
  color: #fff3da !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-eyebrow {
  margin: 0 0 12px !important;
  color: #e9bd59 !important;
  font: 800 .86rem/1.25 Arial, Helvetica, sans-serif !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  text-align: left !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-title {
  max-width: 27ch !important;
  margin: 0 auto 30px !important;
  color: #f0c96b !important;
  -webkit-text-fill-color: #f0c96b !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(2.15rem, 4.2vw, 4.2rem) !important;
  font-weight: 700 !important;
  line-height: 1.06 !important;
  text-align: center !important;
  text-wrap: balance !important;
  text-shadow: 0 2px 0 rgba(67,29,10,.7) !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-body {
  max-width: 78ch !important;
  margin: 0 auto !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-body p {
  margin: 0 0 1.15em !important;
  color: #fff4df !important;
  font: 500 clamp(1rem, 1.2vw, 1.14rem)/1.75 Arial, Helvetica, sans-serif !important;
  text-align: justify !important;
  text-align-last: left !important;
  hyphens: none !important;
  word-spacing: normal !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-body h2 {
  margin: 1.5em 0 .7em !important;
  color: #efc86b !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.55rem, 2.4vw, 2.25rem) !important;
  line-height: 1.18 !important;
  text-align: left !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-body blockquote {
  margin: 1.6em auto !important;
  padding: 18px 22px !important;
  border-left: 4px solid #d9a841 !important;
  border-radius: 0 14px 14px 0 !important;
  background: rgba(0,0,0,.22) !important;
  color: #f7d987 !important;
  font: 700 clamp(1.05rem,1.5vw,1.28rem)/1.55 Georgia, 'Times New Roman', serif !important;
  text-align: left !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-legado {
  margin-bottom: 0 !important;
  color: #f4d47e !important;
  font-weight: 700 !important;
}

@media (max-width: 720px) {
  html body #odc261-acervo-apresentacao {
    width: calc(100% - 20px) !important;
    margin: 24px auto 36px !important;
    padding: 24px 18px !important;
  }
  html body #odc261-acervo-apresentacao .odc261-acervo-title {
    font-size: clamp(1.85rem, 10vw, 3rem) !important;
  }
  html body #odc261-acervo-apresentacao .odc261-acervo-body p {
    text-align: justify !important;
    text-align-last: left !important;
  }
}


/* ================================================================
 * 2.6.2 — Leitura curatorial global e navegação integrada ao desenho.
 * Escopo deliberadamente restrito:
 * - justifica textos corridos, sem atingir títulos, botões e metadados curtos;
 * - centraliza Início, Acervo e Voltar dentro da área útil da página;
 * - usa o mesmo dourado legível nos três controles.
 * ================================================================ */

html body.odc25-accessible-typography {
  --odc262-readable-gold: #f2c45c;
  --odc262-readable-gold-light: #f8dc8f;
  --odc262-readable-gold-dark: #c47a2f;
  --odc262-button-ink: #241006;
  --odc262-safe-side: clamp(18px, 8vw, 150px);
}

/* Todos os textos corridos do conteúdo público ficam justificados.
 * Elementos funcionais, títulos, fichas de metadados e cards permanecem
 * alinhados de modo próprio para não comprometer leitura e navegação. */
html body.odc25-accessible-typography :is(
  p,
  li,
  dd,
  blockquote,
  .wp-block-paragraph,
  .wp-block-quote,
  .item-description,
  .metadata-type-textarea,
  .metadata-type-core_description,
  .odc16-curated-section__body,
  .odc16-biography__content,
  .odc24-justified-text,
  .odc24-collection-introduction__content
):not(:where(
  #wpadminbar *,
  header *,
  nav *,
  menu *,
  footer *,
  form *,
  button *,
  [role="button"] *,
  summary *,
  label *,
  figcaption,
  .odc15-nav *,
  .odc15-search-form *,
  .odc16-card *,
  .odc16-home-acervo-card *,
  .odc25-home-primary-nav *,
  .tainacan-card *,
  .tainacan-records-container .record-card *,
  .odc16-data-row *,
  .metadata-label,
  .metadata-value,
  .odc-game *,
  [vw] *
)) {
  text-align: justify !important;
  text-align-last: left !important;
  text-justify: inter-word !important;
  hyphens: none !important;
  -webkit-hyphens: none !important;
  word-spacing: normal !important;
  overflow-wrap: break-word !important;
  line-height: 1.72 !important;
}

/* As listas curatoriais também seguem a mesma leitura quando não são menus. */
html body.odc25-accessible-typography :is(
  main,
  #primary,
  .site-main,
  .entry-content,
  .page-content,
  .wp-block-post-content,
  .tainacan-item-single-page,
  .odc16-curated-item,
  .odc24-collection-introduction
) :is(ul,ol):not(:where(nav *,menu *,header *,footer *)) {
  text-align: initial !important;
}

/* Títulos com dourado visível, sem tom apagado e sem justificação. */
html body.odc25-accessible-typography :is(
  main,
  #primary,
  .site-main,
  .entry-content,
  .page-content,
  .wp-block-post-content,
  .tainacan-item-single-page,
  .odc16-curated-item,
  .odc24-collection-introduction
) :is(h1,h2,h3,h4,h5,h6):not(:where(.odc-game *,.odc15-nav *)) {
  color: var(--odc262-readable-gold) !important;
  -webkit-text-fill-color: var(--odc262-readable-gold) !important;
  text-align-last: auto !important;
  word-spacing: normal !important;
  letter-spacing: .005em !important;
  text-shadow: 0 1px 0 rgba(50,20,7,.92), 0 2px 9px rgba(242,196,92,.2) !important;
}

/* O título curatorial do Acervo não se espalha nem cria vazios entre palavras. */
html body #odc261-acervo-apresentacao .odc261-acervo-title {
  max-width: 24ch !important;
  font-size: clamp(2rem, 3.5vw, 3.65rem) !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  text-align: center !important;
  text-align-last: center !important;
  text-wrap: balance !important;
}

/* Integra as ferramentas ao miolo do desenho. A faixa deixa de atravessar
 * as laterais ornamentais e nunca usa posição fixa, absoluta ou negativa. */
html body #odc16-tools,
html body .odc16-tools,
html body.odc262-tools-integrated #odc16-tools {
  box-sizing: border-box !important;
  display: block !important;
  position: relative !important;
  inset: auto !important;
  clear: both !important;
  float: none !important;
  width: min(1180px, calc(100% - (2 * var(--odc262-safe-side)))) !important;
  min-width: 0 !important;
  max-width: 1180px !important;
  margin: clamp(18px, 2.6vw, 34px) auto 24px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  transform: none !important;
  overflow: visible !important;
  z-index: 20 !important;
}

html body #odc16-tools .odc15-nav,
html body .odc16-tools .odc15-nav,
html body .odc15-nav {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(112px, 1fr)) !important;
  gap: 10px !important;
  width: min(520px, 100%) !important;
  min-width: 0 !important;
  max-width: 520px !important;
  margin: 0 auto 16px !important;
  padding: 8px !important;
  position: relative !important;
  inset: auto !important;
  border: 1px solid rgba(220,169,67,.52) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg, rgba(25,14,10,.94), rgba(10,7,5,.96)) !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.22) !important;
  transform: none !important;
  overflow: visible !important;
}

html body .odc15-nav__button,
html body .odc15-nav__button--back,
html body .odc15-nav a,
html body .odc15-nav button {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 46px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 9px 12px !important;
  border: 1px solid var(--odc262-readable-gold-light) !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, var(--odc262-readable-gold-light) 0%, var(--odc262-readable-gold) 55%, var(--odc262-readable-gold-dark) 100%) !important;
  background-image: linear-gradient(180deg, var(--odc262-readable-gold-light) 0%, var(--odc262-readable-gold) 55%, var(--odc262-readable-gold-dark) 100%) !important;
  color: var(--odc262-button-ink) !important;
  -webkit-text-fill-color: var(--odc262-button-ink) !important;
  font-family: "Segoe UI", Arial, Helvetica, sans-serif !important;
  font-size: .94rem !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
  white-space: nowrap !important;
  text-align: center !important;
  text-align-last: center !important;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(255,245,209,.42) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.45), 0 5px 12px rgba(0,0,0,.2) !important;
  opacity: 1 !important;
  visibility: visible !important;
  cursor: pointer !important;
}

html body .odc15-nav__button *,
html body .odc15-nav a *,
html body .odc15-nav button * {
  color: var(--odc262-button-ink) !important;
  -webkit-text-fill-color: var(--odc262-button-ink) !important;
  text-decoration: none !important;
  text-align: center !important;
}

html body .odc15-nav__icon {
  width: 21px !important;
  min-width: 21px !important;
  height: 21px !important;
  background: rgba(67,31,8,.15) !important;
  color: var(--odc262-button-ink) !important;
  -webkit-text-fill-color: var(--odc262-button-ink) !important;
}

html body .odc15-nav__button:hover,
html body .odc15-nav__button:focus-visible,
html body .odc15-nav a:hover,
html body .odc15-nav a:focus-visible,
html body .odc15-nav button:hover,
html body .odc15-nav button:focus-visible {
  filter: brightness(1.06) !important;
  color: var(--odc262-button-ink) !important;
  -webkit-text-fill-color: var(--odc262-button-ink) !important;
  outline: 3px solid rgba(248,220,143,.38) !important;
  outline-offset: 2px !important;
}

/* Quando a busca integra o mesmo bloco, ela ocupa a largura segura do miolo. */
html body #odc16-tools .odc15-search-form,
html body .odc16-tools .odc15-search-form {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto 18px !important;
}

@media (max-width: 820px) {
  html body.odc25-accessible-typography {
    --odc262-safe-side: 10px;
  }

  html body #odc16-tools,
  html body .odc16-tools,
  html body.odc262-tools-integrated #odc16-tools {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin: 14px auto 18px !important;
  }

  html body #odc16-tools .odc15-nav,
  html body .odc16-tools .odc15-nav,
  html body .odc15-nav {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 6px !important;
    padding: 6px !important;
  }

  html body .odc15-nav__button,
  html body .odc15-nav__button--back,
  html body .odc15-nav a,
  html body .odc15-nav button {
    min-height: 44px !important;
    padding: 8px 5px !important;
    font-size: .84rem !important;
  }
}

@media (max-width: 470px) {
  html body .odc15-nav__icon {
    display: none !important;
  }

  html body .odc15-nav__button,
  html body .odc15-nav__button--back,
  html body .odc15-nav a,
  html body .odc15-nav button {
    font-size: .8rem !important;
  }
}


/* ================================================================
 * 2.6.3 — Apresentação do Acervo e cards uniformes.
 * Correção concentrada, sem recriar conteúdo ou alterar a ordem curatorial.
 * ================================================================ */

/* O título da curadoria usa o texto aprovado e não recebe justificação,
 * espaçamento de palavras ou escala excessiva. */
html body #odc261-acervo-apresentacao {
  width: min(1040px, calc(100% - 40px)) !important;
  margin: 34px auto 48px !important;
  padding: clamp(28px, 3.8vw, 46px) !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-title {
  display: block !important;
  width: 100% !important;
  max-width: 19ch !important;
  margin: 0 auto 28px !important;
  padding: 0 !important;
  color: #f2c75d !important;
  -webkit-text-fill-color: #f2c75d !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(2rem, 3.25vw, 3.35rem) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  word-spacing: normal !important;
  text-align: center !important;
  text-align-last: center !important;
  text-wrap: balance !important;
  hyphens: none !important;
  white-space: normal !important;
  overflow-wrap: normal !important;
  text-shadow: 0 2px 0 rgba(65,28,8,.72), 0 5px 14px rgba(0,0,0,.28) !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-body {
  width: min(100%, 72ch) !important;
  max-width: 72ch !important;
  margin: 0 auto !important;
}

html body #odc261-acervo-apresentacao .odc261-acervo-body p {
  font-size: clamp(1rem, 1.08vw, 1.1rem) !important;
  line-height: 1.72 !important;
  word-spacing: normal !important;
  text-align: justify !important;
  text-align-last: left !important;
  hyphens: none !important;
}

/* Grade e cartões da página Acervo: seis cartões com a mesma largura,
 * altura, área de imagem e área de título. */
html body.odc16-page-acervo .odc16-acervo-grid.odc20-acervo-curatorial-ready {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: stretch !important;
  justify-items: stretch !important;
  gap: 22px !important;
}

html body.odc16-page-acervo .odc16-acervo-grid > .odc263-uniform-card,
html body.odc16-page-acervo .odc16-acervo-grid > .odc16-acervo-card {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  margin: 0 !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--mestres {
  grid-column: 2 !important;
}
html body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--memoria {
  grid-column: 3 !important;
}

html body .odc263-uniform-card__link {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  text-decoration: none !important;
}

html body .odc263-uniform-card__image,
html body.odc16-page-acervo .odc16-acervo-card img,
html body.odc16-page-home .odc19-card-rebuilt img,
html body.odc16-page-home .odc22-home-thematic__card img {
  display: block !important;
  flex: 0 0 160px !important;
  width: 100% !important;
  height: 160px !important;
  min-height: 160px !important;
  max-height: 160px !important;
  aspect-ratio: auto !important;
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body .odc263-uniform-card__title,
html body.odc16-page-acervo .odc16-acervo-card .odc19-card-title,
html body.odc16-page-home .odc19-card-rebuilt .odc19-card-title,
html body.odc16-page-home .odc22-home-thematic__title {
  display: flex !important;
  flex: 0 0 80px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 80px !important;
  min-height: 80px !important;
  max-height: 80px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.05rem, 1.25vw, 1.28rem) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  word-spacing: normal !important;
  text-align: center !important;
  text-align-last: center !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

/* Home: cartões das coleções principais e temáticas seguem exatamente
 * a mesma altura. A largura continua responsiva dentro de cada grade. */
html body.odc16-page-home .odc19-card-rebuilt-shell,
html body.odc16-page-home .odc19-card-rebuilt,
html body.odc16-page-home .odc22-home-thematic__card,
html body.odc16-page-home .odc263-uniform-card {
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  margin: 0 !important;
  align-self: stretch !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

html body.odc16-page-home .odc22-home-thematic {
  width: min(1180px, calc(100% - 44px)) !important;
  max-width: 1180px !important;
}
html body.odc16-page-home .odc22-home-thematic__grid {
  grid-template-columns: repeat(2, minmax(0, 280px)) !important;
  justify-content: center !important;
  align-items: stretch !important;
  gap: 22px !important;
}

@media (max-width: 1100px) and (min-width: 651px) {
  html body.odc16-page-acervo .odc16-acervo-grid.odc20-acervo-curatorial-ready {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  html body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--mestres,
  html body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--memoria {
    grid-column: auto !important;
  }
}

@media (max-width: 650px) {
  html body #odc261-acervo-apresentacao {
    width: calc(100% - 20px) !important;
    padding: 24px 18px !important;
  }
  html body #odc261-acervo-apresentacao .odc261-acervo-title {
    max-width: 16ch !important;
    font-size: clamp(1.9rem, 9vw, 2.75rem) !important;
  }
  html body #odc261-acervo-apresentacao .odc261-acervo-body p {
    text-align: left !important;
    text-align-last: left !important;
  }

  html body.odc16-page-acervo .odc16-acervo-grid.odc20-acervo-curatorial-ready {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
  }
  html body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--mestres,
  html body.odc16-page-acervo .odc20-acervo-curatorial-ready > .odc16-acervo-card--memoria {
    grid-column: 1 !important;
    width: 100% !important;
  }

  html body.odc16-page-home .odc22-home-thematic__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  html body.odc16-page-home .odc22-home-thematic__card,
  html body.odc16-page-home .odc19-card-rebuilt,
  html body.odc16-page-home .odc19-card-rebuilt-shell,
  html body.odc16-page-acervo .odc16-acervo-card {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }
  html body .odc263-uniform-card__image,
  html body.odc16-page-acervo .odc16-acervo-card img,
  html body.odc16-page-home .odc19-card-rebuilt img,
  html body.odc16-page-home .odc22-home-thematic__card img {
    flex-basis: 140px !important;
    height: 140px !important;
    min-height: 140px !important;
    max-height: 140px !important;
  }
}




/* ================================================================
 * 2.6.5 — Recuperação segura da Home.
 * Somente o cartão individual pode ser compactado. Nenhum contêiner,
 * seção, grade ou bloco ancestral recebe altura fixa ou overflow oculto.
 * ================================================================ */
html body.odc16-page-home .odc264-home-button-card {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 88px !important;
  min-height: 88px !important;
  max-height: 88px !important;
  margin: 0 !important;
  border: 1px solid rgba(249,223,145,.88) !important;
  border-radius: 18px !important;
  background: linear-gradient(180deg,#efce72 0%,#dfad4c 58%,#b96c32 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.34),0 8px 16px rgba(0,0,0,.20) !important;
  overflow: hidden !important;
}

html body.odc16-page-home .odc264-home-button-card .odc19-card-link,
html body.odc16-page-home .odc264-home-button-card > a,
html body.odc16-page-home .odc264-home-button-card > button {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  background: transparent !important;
  text-decoration: none !important;
}

html body.odc16-page-home .odc264-home-button-card :is(img,picture,figure,video,canvas,svg) {
  display: none !important;
}

html body.odc16-page-home .odc264-home-button-card :is(.odc19-card-title,.odc22-home-thematic__title) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #2e160c !important;
  -webkit-text-fill-color: #2e160c !important;
  font-family: "Segoe UI",Arial,Helvetica,sans-serif !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-align-last: center !important;
  text-wrap: balance !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  text-shadow: 0 1px 0 rgba(255,250,225,.34) !important;
  text-decoration: none !important;
}

/* Remove qualquer resíduo de classe da 2.6.4 sem alterar o desenho do tema. */
html body.odc16-page-home .odc264-home-button-shell {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  background: initial !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width:650px) {
  html body.odc16-page-home .odc264-home-button-card {
    height: 78px !important;
    min-height: 78px !important;
    max-height: 78px !important;
  }
  html body.odc16-page-home .odc264-home-button-card :is(.odc19-card-title,.odc22-home-thematic__title) {
    font-size: .9rem !important;
  }
}


/* ================================================================
 * 2.6.6 — Contraste dos botões da Home e padronização dos cards temáticos.
 * Não altera conteúdo, ordem, imagens ou dimensões dos cards principais.
 * ================================================================ */

/* Botões de acesso aos setores na Home: texto escuro, nítido e centralizado. */
html body.odc16-page-home .odc266-sector-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  min-height: 68px !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(249,223,145,.94) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg,#efce72 0%,#dfad4c 58%,#b96c32 100%) !important;
  color: #2b150c !important;
  -webkit-text-fill-color: #2b150c !important;
  font-family: "Segoe UI",Arial,Helvetica,sans-serif !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-align-last: center !important;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(255,250,225,.35) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.36),0 7px 14px rgba(0,0,0,.19) !important;
  opacity: 1 !important;
}

html body.odc16-page-home .odc266-sector-button,
html body.odc16-page-home .odc266-sector-button * {
  color: #2b150c !important;
  -webkit-text-fill-color: #2b150c !important;
  opacity: 1 !important;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(255,250,225,.35) !important;
}

html body.odc16-page-home .odc266-sector-button:hover,
html body.odc16-page-home .odc266-sector-button:focus-visible {
  filter: brightness(1.04) !important;
  outline: 3px solid rgba(245,208,104,.34) !important;
  outline-offset: 3px !important;
}

/* Cards “Mestres de Capoeira” e “Memória Viva ODC” seguem o mesmo padrão
 * visual dos quatro cards principais: imagem em cima e faixa preta com título
 * dourado embaixo. */
html body.odc16-page-home .odc266-thematic-card {
  width: 100% !important;
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(220,169,67,.54) !important;
  border-radius: 18px !important;
  background: #0c0907 !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.24) !important;
  overflow: hidden !important;
}

html body.odc16-page-home .odc266-thematic-card > a,
html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__link,
html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__link {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #0c0907 !important;
  text-decoration: none !important;
}

html body.odc16-page-home .odc266-thematic-card img,
html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__image,
html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__image {
  display: block !important;
  flex: 0 0 160px !important;
  width: 100% !important;
  height: 160px !important;
  min-height: 160px !important;
  max-height: 160px !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  border: 0 !important;
  border-radius: 0 !important;
}

html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__title,
html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__title,
html body.odc16-page-home .odc266-thematic-card .odc19-card-title {
  display: flex !important;
  flex: 0 0 80px !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 80px !important;
  min-height: 80px !important;
  max-height: 80px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  background: #0c0907 !important;
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: clamp(1.05rem,1.25vw,1.28rem) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  word-spacing: normal !important;
  text-align: center !important;
  text-align-last: center !important;
  text-decoration: none !important;
  text-shadow: none !important;
  opacity: 1 !important;
  overflow: hidden !important;
}

@media (max-width:650px) {
  html body.odc16-page-home .odc266-sector-button {
    min-height: 58px !important;
    padding: 10px 12px !important;
    font-size: .9rem !important;
  }

  html body.odc16-page-home .odc266-thematic-card {
    height: 220px !important;
    min-height: 220px !important;
    max-height: 220px !important;
  }

  html body.odc16-page-home .odc266-thematic-card img,
  html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__image,
  html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__image {
    flex-basis: 140px !important;
    height: 140px !important;
    min-height: 140px !important;
    max-height: 140px !important;
  }
}


/* ================================================================
 * 2.6.7 — Uniformidade dos cards, citação legível e figura de Mestre Ray.
 * ================================================================ */

/* Os cards temáticos repetem o mesmo acabamento dos cards principais:
 * sem contorno dourado externo e com o mesmo arredondamento contínuo. */
html body.odc16-page-home .odc266-thematic-card {
  border: 0 !important;
  border-radius: 16px !important;
  background: #0c0907 !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.24) !important;
  overflow: hidden !important;
}

html body.odc16-page-home .odc266-thematic-card > a,
html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__link,
html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__link {
  border: 0 !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

html body.odc16-page-home .odc266-thematic-card img,
html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__image,
html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__image {
  border: 0 !important;
  border-radius: 16px 16px 0 0 !important;
  box-shadow: none !important;
}

html body.odc16-page-home .odc266-thematic-card .odc22-home-thematic__title,
html body.odc16-page-home .odc266-thematic-card .odc263-uniform-card__title,
html body.odc16-page-home .odc266-thematic-card .odc19-card-title {
  border: 0 !important;
  border-radius: 0 0 16px 16px !important;
  box-shadow: none !important;
}

/* A citação é um destaque editorial, não um parágrafo justificado.
 * Isso impede os vazios exagerados entre as palavras. */
html body #odc261-acervo-apresentacao .odc261-acervo-body blockquote {
  width: min(100%, 68ch) !important;
  max-width: 68ch !important;
  margin: 1.75em auto !important;
  padding: 20px 24px !important;
  border-left: 5px solid #e1b34a !important;
  border-radius: 0 16px 16px 0 !important;
  background: linear-gradient(135deg, rgba(12,8,6,.82), rgba(38,19,12,.72)) !important;
  color: #f7d987 !important;
  -webkit-text-fill-color: #f7d987 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(1.08rem,1.5vw,1.3rem) !important;
  font-style: italic !important;
  font-weight: 700 !important;
  line-height: 1.55 !important;
  letter-spacing: .005em !important;
  word-spacing: normal !important;
  text-align: left !important;
  text-align-last: left !important;
  text-justify: auto !important;
  hyphens: none !important;
  overflow-wrap: normal !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.18) !important;
}

/* Na sala da jornada, textos editoriais duplicados que interceptam a figura
 * são retirados visualmente. A navegação, HUD, hotspots e leitor acessível
 * continuam disponíveis. */
html body.odc267-journey-avatar-clean .odc267-stage-overlay-hidden {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

html body.odc267-journey-avatar-clean .odc267-avatar-host {
  overflow: visible !important;
}

html body.odc267-journey-avatar-clean .odc267-avatar-identification {
  box-sizing: border-box !important;
  position: absolute !important;
  left: 50% !important;
  bottom: 4px !important;
  z-index: 15 !important;
  transform: translateX(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 7px 14px !important;
  border: 1px solid rgba(232,188,72,.82) !important;
  border-radius: 999px !important;
  background: rgba(17,9,6,.92) !important;
  color: #f3ca63 !important;
  -webkit-text-fill-color: #f3ca63 !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  letter-spacing: .05em !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.8) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.28) !important;
  pointer-events: none !important;
}

@media (max-width:760px) {
  html body.odc267-journey-avatar-clean .odc267-avatar-identification {
    min-height: 30px !important;
    padding: 6px 10px !important;
    font-size: .72rem !important;
  }
}


/* ================================================================
 * 2.7.0 — Primeira pintura estável, sem desfazer o visual 2.6.7/2.6.9.
 * ================================================================ */

/* Os cinco acessos da Home já nascem compactos e legíveis, antes do JS. */
html body.odc16-page-home a[href$="/acervo/"]:not(.odc19-card-link):not(.odc22-home-thematic__link):not(:has(img)),
html body.odc16-page-home a[href$="/sobre-odc/"]:not(:has(img)),
html body.odc16-page-home a[href$="/institucional/"]:not(.odc22-home-thematic__link):not(:has(img)),
html body.odc16-page-home a[href$="/rodas-e-eventos/"]:not(:has(img)),
html body.odc16-page-home a[href$="/mapa-da-capoeira/"]:not(:has(img)),
html body.odc16-page-home a[href$="/exposicoes/"]:not(.odc22-home-thematic__link):not(:has(img)),
html body.odc16-page-home a[href$="/trajetoria-mestre-ray/"]:not(:has(img)) {
  box-sizing: border-box !important;
  min-height: 68px !important;
  height: 68px !important;
  max-height: 68px !important;
  padding: 10px 16px !important;
  border: 1px solid rgba(249,223,145,.94) !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg,#efce72 0%,#dfad4c 58%,#b96c32 100%) !important;
  color: #2b150c !important;
  -webkit-text-fill-color: #2b150c !important;
  font-family: "Segoe UI",Arial,Helvetica,sans-serif !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  text-align: center !important;
  text-align-last: center !important;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(255,250,225,.35) !important;
  overflow: hidden !important;
}

html body.odc16-page-home a[href$="/acervo/"]:not(.odc19-card-link):not(.odc22-home-thematic__link):not(:has(img)) *,
html body.odc16-page-home a[href$="/sobre-odc/"]:not(:has(img)) *,
html body.odc16-page-home a[href$="/institucional/"]:not(.odc22-home-thematic__link):not(:has(img)) *,
html body.odc16-page-home a[href$="/rodas-e-eventos/"]:not(:has(img)) *,
html body.odc16-page-home a[href$="/mapa-da-capoeira/"]:not(:has(img)) *,
html body.odc16-page-home a[href$="/exposicoes/"]:not(.odc22-home-thematic__link):not(:has(img)) *,
html body.odc16-page-home a[href$="/trajetoria-mestre-ray/"]:not(:has(img)) * {
  color: #2b150c !important;
  -webkit-text-fill-color: #2b150c !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

/* Enquanto o JS troca as miniaturas antigas pelas oficiais, não mostra a versão errada. */
html.odc27-js body.odc16-page-home a[href$="/bibliografico/"]:not(.odc19-card-link),
html.odc27-js body.odc16-page-home a[href$="/acervo-museologico/"]:not(.odc19-card-link),
html.odc27-js body.odc16-page-home a[href$="/museologico/"]:not(.odc19-card-link),
html.odc27-js body.odc16-page-home a[href$="/audiovisual/"]:not(.odc19-card-link),
html.odc27-js body.odc16-page-home a[href$="/acervo-audiovisual-e-sonoro/"]:not(.odc19-card-link),
html.odc27-js body.odc16-page-home a[href$="/educativo/"]:not(.odc19-card-link) {
  opacity: 0 !important;
}
html.odc27-js body.odc16-page-home a.odc19-card-link {
  opacity: 1 !important;
}

/* A imagem antiga do destaque não aparece enquanto a imagem oficial carrega. */
html.odc27-js body.odc16-page-home a[href*="/colecao-fic/"] img:not(.odc16-fic-image),
html.odc27-js body.odc16-page-home a[href*="/fic-"] img:not(.odc16-fic-image) {
  opacity: 0 !important;
}
html body.odc16-page-home img.odc16-fic-image {
  opacity: 1 !important;
  transition: opacity .12s ease !important;
}

/* A apresentação vem pronta do servidor; nenhum conteúdo antigo ocupa espaço. */
html body.odc16-page-acervo #odc261-acervo-apresentacao.odc27-server-presentation {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width:650px) {
  html body.odc16-page-home a[href$="/acervo/"]:not(.odc19-card-link):not(:has(img)),
  html body.odc16-page-home a[href$="/sobre-odc/"]:not(:has(img)),
  html body.odc16-page-home a[href$="/institucional/"]:not(.odc22-home-thematic__link):not(:has(img)),
  html body.odc16-page-home a[href$="/rodas-e-eventos/"]:not(:has(img)),
  html body.odc16-page-home a[href$="/mapa-da-capoeira/"]:not(:has(img)),
  html body.odc16-page-home a[href$="/exposicoes/"]:not(.odc22-home-thematic__link):not(:has(img)),
html body.odc16-page-home a[href$="/trajetoria-mestre-ray/"]:not(:has(img)) {
    min-height: 58px !important;
    height: 58px !important;
    max-height: 58px !important;
    font-size: .9rem !important;
  }
}

/* ================================================================
 * 2.7.2 — Área útil, destaque curatorial, FIC fixo e mobile/tablet.
 * ================================================================ */
html body.odc16-page-home {
  --odc272-safe-side: clamp(22px, 8.4vw, 148px);
  --odc272-safe-width: min(1180px, calc(100% - (2 * var(--odc272-safe-side))));
  overflow-x: clip !important;
}

html body.odc16-page-home .odc272-safe-panel,
html body.odc16-page-home .odc25-home-primary-nav,
html body.odc16-page-home .odc22-home-thematic,
html body.odc16-page-home .odc16-home-closing-panel,
html body.odc16-page-home .odc21-home-final-blocks {
  box-sizing: border-box !important;
  width: var(--odc272-safe-width) !important;
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
}

/* Remove somente o título repetido; a chamada “Cartografia da Memória” e o
 * botão de acesso ao mapa continuam visíveis. */
html body.odc16-page-home .odc272-redundant-map-title {
  display: none !important;
  visibility: hidden !important;
}

html body.odc16-page-home .odc272-cartography-panel {
  padding: clamp(26px, 4vw, 54px) !important;
  overflow: hidden !important;
}

html body.odc16-page-home .odc272-cartography-panel :is(p,.wp-block-paragraph) {
  max-width: 76ch !important;
  word-spacing: normal !important;
}

/* Botões secundários: um padrão único, legível e sem disputar com o tema. */
html body.odc16-page-home .odc272-standard-action {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 52px !important;
  padding: 12px 22px !important;
  border: 1px solid #f2cc70 !important;
  border-radius: 13px !important;
  background: linear-gradient(180deg,#f1cf75 0%,#dfa946 58%,#b86b31 100%) !important;
  color: #281309 !important;
  -webkit-text-fill-color: #281309 !important;
  font-family: "Segoe UI",Arial,Helvetica,sans-serif !important;
  font-size: .94rem !important;
  font-weight: 900 !important;
  line-height: 1.12 !important;
  letter-spacing: .025em !important;
  text-align: center !important;
  text-align-last: center !important;
  text-decoration: none !important;
  text-shadow: 0 1px 0 rgba(255,248,215,.38) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.38),0 7px 16px rgba(0,0,0,.22) !important;
  opacity: 1 !important;
}

html body.odc16-page-home .odc272-standard-action *,
html body.odc16-page-home .odc272-standard-action:hover,
html body.odc16-page-home .odc272-standard-action:focus-visible {
  color: #281309 !important;
  -webkit-text-fill-color: #281309 !important;
  text-decoration: none !important;
  opacity: 1 !important;
}

/* Fala de Mestre Ray: hierarquia própria, sem justificação nem vazios. */
html body.odc16-page-home .odc272-quote-panel {
  padding: clamp(20px, 3vw, 38px) !important;
}

html body.odc16-page-home .odc272-master-quote {
  box-sizing: border-box !important;
  width: min(920px, 100%) !important;
  margin: 0 auto !important;
  padding: clamp(22px, 3vw, 34px) clamp(24px, 4vw, 48px) !important;
  border: 1px solid rgba(224,174,61,.55) !important;
  border-left: 5px solid #e3b34a !important;
  border-radius: 4px 18px 18px 4px !important;
  background: linear-gradient(135deg,rgba(45,24,15,.96),rgba(10,8,7,.98)) !important;
  color: #f7dfaa !important;
  -webkit-text-fill-color: #f7dfaa !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: clamp(1.3rem,2vw,1.75rem) !important;
  font-style: italic !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
  word-spacing: normal !important;
  text-align: left !important;
  text-align-last: left !important;
  text-transform: none !important;
  hyphens: none !important;
  overflow-wrap: break-word !important;
  text-shadow: 0 2px 3px rgba(0,0,0,.75) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.24) !important;
}

/* O cartaz não mostra a imagem anterior enquanto a fonte oficial é aplicada. */
html body.odc16-page-home .odc272-fic-panel .odc272-fic-main-image,
html body.odc16-page-home .odc16-home-card--fic img:not(.odc272-fic-poster) {
  opacity: 0 !important;
  visibility: hidden !important;
}

html body.odc16-page-home .odc272-fic-panel .odc272-fic-poster,
html body.odc16-page-home .odc272-fic-ready .odc272-fic-main-image {
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
}

html body.odc16-page-home .odc272-fic-panel img.odc272-fic-poster {
  display: block !important;
  width: 100% !important;
  max-width: 500px !important;
  height: auto !important;
  max-height: 640px !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 18px !important;
}

/* Grade principal das coleções dentro da área útil. */
html body.odc16-page-home .odc272-card-grid {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  align-items: stretch !important;
  gap: 22px !important;
}

/* ------------------------- TABLET ------------------------- */
@media (max-width: 1100px) {
  html body.odc16-page-home {
    --odc272-safe-side: 24px;
  }

  html body.odc16-page-home .odc272-card-grid {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }

  html body.odc16-page-home .odc272-fic-panel,
  html body.odc16-page-home .odc272-institutional-panel,
  html body.odc16-page-home .odc272-cartography-panel {
    width: calc(100% - 48px) !important;
  }
}

/* ------------------------- CELULAR ------------------------- */
@media (max-width: 720px) {
  html,body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  html body.odc16-page-home {
    --odc272-safe-side: 10px;
    --odc272-safe-width: calc(100% - 20px);
  }

  html body.odc16-page-home .odc272-safe-panel,
  html body.odc16-page-home .odc25-home-primary-nav,
  html body.odc16-page-home .odc22-home-thematic,
  html body.odc16-page-home .odc16-home-closing-panel,
  html body.odc16-page-home .odc21-home-final-blocks {
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.odc16-page-home .odc25-home-primary-nav {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px !important;
  }

  html body.odc16-page-home .odc25-home-primary-nav__button {
    min-height: 54px !important;
    height: auto !important;
    padding: 10px 8px !important;
    font-size: .76rem !important;
    letter-spacing: .02em !important;
  }

  html body.odc16-page-home .odc272-card-grid,
  html body.odc16-page-home .odc22-home-thematic__grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    justify-items: center !important;
    gap: 16px !important;
  }

  html body.odc16-page-home .odc272-card-grid > *,
  html body.odc16-page-home .odc22-home-thematic__card {
    width: min(100%, 380px) !important;
    max-width: 380px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  html body.odc16-page-home .odc272-fic-panel,
  html body.odc16-page-home .odc272-institutional-panel,
  html body.odc16-page-home .odc272-cartography-panel {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 18px !important;
    padding: 22px 16px !important;
  }

  html body.odc16-page-home .odc272-fic-panel > *,
  html body.odc16-page-home .odc272-institutional-panel > *,
  html body.odc16-page-home .odc272-cartography-panel > * {
    min-width: 0 !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  html body.odc16-page-home .odc272-cartography-panel :is(p,.wp-block-paragraph),
  html body.odc16-page-home .odc272-fic-panel :is(p,.wp-block-paragraph),
  html body.odc16-page-home .odc272-institutional-panel :is(p,.wp-block-paragraph) {
    font-size: 1rem !important;
    line-height: 1.62 !important;
    text-align: left !important;
    text-align-last: left !important;
    word-spacing: normal !important;
  }

  html body.odc16-page-home .odc272-standard-action {
    width: 100% !important;
    min-height: 50px !important;
    padding: 11px 14px !important;
    font-size: .88rem !important;
  }

  html body.odc16-page-home .odc272-master-quote {
    padding: 20px 18px !important;
    font-size: clamp(1.08rem,5.2vw,1.3rem) !important;
    line-height: 1.5 !important;
  }

  html body.odc16-page-home .odc272-fic-panel img.odc272-fic-poster {
    max-width: 100% !important;
    max-height: none !important;
  }

  html body.odc16-page-home h1,
  html body.odc16-page-home h2 {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    text-wrap: balance !important;
  }
}

@media (max-width: 460px) {
  html body.odc16-page-home .odc25-home-primary-nav {
    grid-template-columns: minmax(0,1fr) !important;
  }
}


/* ================================================================
 * 2.7.3 — Consolidação dos dez apontamentos de revisão.
 * ================================================================ */

/* 1. Qualquer apresentação editorial antiga remanescente fica fora do fluxo. */
html body.odc16-page-acervo .odc273-duplicate-acervo-intro,
html body.odc16-page-home .odc273-institutional-memory-ghost {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* 3 e 4. Mobile/tablet: leitura natural e botões com uma tipografia única. */
@media (max-width: 820px) {
  html body.odc16-page-home :is(p,.wp-block-paragraph,blockquote,.wp-block-quote,.odc273-mobile-natural-text),
  html body.odc16-page-acervo :is(p,.wp-block-paragraph,blockquote,.wp-block-quote),
  html body.odc16-page-collection :is(p,.wp-block-paragraph,blockquote,.wp-block-quote) {
    word-spacing: normal !important;
    letter-spacing: normal !important;
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    hyphens: none !important;
    overflow-wrap: break-word !important;
  }

  html body.odc16-page-home .odc273-mobile-welcome {
    word-spacing: normal !important;
    letter-spacing: .01em !important;
    text-align: center !important;
    text-align-last: center !important;
    line-height: 1.28 !important;
  }

  html body.odc16-page-home .odc25-home-primary-nav :is(a,button,[role="button"]),
  html body.odc16-page-home .odc266-sector-button {
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 78px !important;
    height: auto !important;
    max-height: none !important;
    padding: 16px 18px !important;
    font-family: "Segoe UI",Arial,Helvetica,sans-serif !important;
    font-size: clamp(1rem,4.4vw,1.15rem) !important;
    font-weight: 800 !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    word-spacing: normal !important;
    text-align: center !important;
    text-align-last: center !important;
    white-space: normal !important;
  }
}

/* 5. Rodapé: Sobre a ODC é link textual, igual aos demais. */
html body footer :is(a,button,[role="button"]),
html body .site-footer :is(a,button,[role="button"]),
html body #colophon :is(a,button,[role="button"]) {
  width: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #f5ead7 !important;
  -webkit-text-fill-color: #f5ead7 !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  line-height: inherit !important;
  text-decoration: none !important;
  text-shadow: none !important;
}
html body footer :is(a,button,[role="button"]):hover,
html body .site-footer :is(a,button,[role="button"]):hover,
html body #colophon :is(a,button,[role="button"]):hover {
  color: #f0c45d !important;
  -webkit-text-fill-color: #f0c45d !important;
  background: transparent !important;
  outline: none !important;
}

/* 6. Os seis cards da Home têm as mesmas medidas e o mesmo hover. */
html body.odc16-page-home .odc272-card-grid,
html body.odc16-page-home .odc22-home-thematic__grid {
  display: grid !important;
  grid-auto-rows: 240px !important;
  align-items: stretch !important;
  justify-items: center !important;
  gap: 22px !important;
}
html body.odc16-page-home .odc272-card-grid {
  grid-template-columns: repeat(4,minmax(0,240px)) !important;
  justify-content: center !important;
}
html body.odc16-page-home .odc22-home-thematic__grid {
  grid-template-columns: repeat(2,minmax(0,240px)) !important;
  justify-content: center !important;
}
html body.odc16-page-home :is(.odc19-card-rebuilt,.odc19-card-rebuilt-shell,.odc22-home-thematic__card,.odc266-thematic-card) {
  box-sizing: border-box !important;
  width: 240px !important;
  min-width: 240px !important;
  max-width: 240px !important;
  height: 240px !important;
  min-height: 240px !important;
  max-height: 240px !important;
  margin: 0 !important;
  border: 2px solid transparent !important;
  border-radius: 16px !important;
  background: #0c0907 !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.24) !important;
  overflow: hidden !important;
  transition: transform .16s ease,border-color .16s ease,box-shadow .16s ease !important;
}
html body.odc16-page-home :is(.odc19-card-rebuilt,.odc22-home-thematic__card,.odc266-thematic-card):hover,
html body.odc16-page-home :is(.odc19-card-rebuilt,.odc22-home-thematic__card,.odc266-thematic-card):focus-within {
  transform: translateY(-3px) !important;
  border-color: #e8b947 !important;
  box-shadow: 0 13px 27px rgba(0,0,0,.32),0 0 0 2px rgba(232,185,71,.18) !important;
}
html body.odc16-page-home :is(.odc19-card-rebuilt,.odc22-home-thematic__card,.odc266-thematic-card) img {
  width: 100% !important;
  height: 160px !important;
  min-height: 160px !important;
  max-height: 160px !important;
  object-fit: cover !important;
  border-radius: 14px 14px 0 0 !important;
}
html body.odc16-page-home :is(.odc19-card-rebuilt,.odc22-home-thematic__card,.odc266-thematic-card) :is(.odc19-card-title,.odc22-home-thematic__title) {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 80px !important;
  min-height: 80px !important;
  max-height: 80px !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 0 0 14px 14px !important;
  background: #0c0907 !important;
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 1.08rem !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  text-align: center !important;
  text-align-last: center !important;
}

@media (max-width: 1080px) {
  html body.odc16-page-home .odc272-card-grid { grid-template-columns: repeat(2,minmax(0,240px)) !important; }
}
@media (max-width: 620px) {
  html body.odc16-page-home .odc272-card-grid,
  html body.odc16-page-home .odc22-home-thematic__grid { grid-template-columns: minmax(0,240px) !important; }
}

/* 8 e 9. Todos os botões assinalados usam o mesmo efeito marrom no hover. */
html body.odc16-page-home .odc25-home-primary-nav :is(a,button,[role="button"]):hover,
html body.odc16-page-home .odc25-home-primary-nav :is(a,button,[role="button"]):focus-visible,
html body.odc16-page-home .odc272-standard-action:hover,
html body.odc16-page-home .odc272-standard-action:focus-visible,
html body.odc16-page-home .odc266-sector-button:hover,
html body.odc16-page-home .odc266-sector-button:focus-visible {
  border-color: #e9bc55 !important;
  background: linear-gradient(180deg,#6a3521 0%,#502416 100%) !important;
  color: #f7dfa0 !important;
  -webkit-text-fill-color: #f7dfa0 !important;
  outline: none !important;
  filter: none !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08),0 8px 18px rgba(0,0,0,.28) !important;
}
html body.odc16-page-home .odc25-home-primary-nav :is(a,button,[role="button"]):hover *,
html body.odc16-page-home .odc272-standard-action:hover *,
html body.odc16-page-home .odc266-sector-button:hover * {
  color: #f7dfa0 !important;
  -webkit-text-fill-color: #f7dfa0 !important;
}

/* Busca avançada: botão nunca quebra verticalmente. */
html body .odc15-search-form__grid {
  grid-template-columns: minmax(250px,1.4fr) minmax(190px,.9fr) minmax(230px,1fr) minmax(150px,.55fr) !important;
  align-items: end !important;
}
html body .odc15-search-form__submit {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 150px !important;
  height: 58px !important;
  min-height: 58px !important;
  max-height: 58px !important;
  padding: 10px 18px !important;
  white-space: nowrap !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
  line-height: 1 !important;
  text-align: center !important;
}
@media (max-width: 1050px) {
  html body .odc15-search-form__grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 650px) {
  html body .odc15-search-form__grid { grid-template-columns: minmax(0,1fr) !important; }
  html body .odc15-search-form__submit { width: 100% !important; }
}


/* ================================================================
 * 2.7.4 — Revisão visual sem reconstrução de conteúdo.
 * ================================================================ */

/* 1. Mobile e tablet: textos corridos naturais, sem espaços artificiais. */
@media (max-width: 820px) {
  html body :where(main,.site-main,.entry-content,.wp-block-post-content,.wp-site-blocks) :where(p,li,dd,figcaption,blockquote,.wp-block-paragraph,.wp-block-quote),
  html body :where(.odc25-home-intro,.odc27-acervo-presentation,.odc15-collection-intro,.odc15-item-description) :where(p,li,blockquote) {
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: 0 !important;
    letter-spacing: normal !important;
    white-space: normal !important;
    hyphens: none !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  html body .odc274-mobile-welcome,
  html body .odc274-mobile-welcome * {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
    text-align-last: center !important;
    text-justify: auto !important;
    word-spacing: 0 !important;
    letter-spacing: .01em !important;
    white-space: normal !important;
    line-height: 1.22 !important;
  }

  html body .odc274-mobile-welcome-panel {
    box-sizing: border-box !important;
    width: min(calc(100% - 32px), 680px) !important;
    margin-inline: auto !important;
    padding: 16px 18px !important;
  }
}

/* 2. Rodapé: “Sobre a ODC” é link textual como os demais, nunca botão. */
html body .odc274-footer-text-wrap {
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html body a.odc274-footer-text-link,
html body .odc274-footer-text-link {
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  color: #f5ead7 !important;
  -webkit-text-fill-color: #f5ead7 !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  line-height: inherit !important;
  letter-spacing: normal !important;
  text-decoration: none !important;
  text-shadow: none !important;
}
html body a.odc274-footer-text-link:hover,
html body a.odc274-footer-text-link:focus-visible {
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* 3 e 5. Cards iguais, separados e limitados ao miolo do tema. */
html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-grid {
  box-sizing: border-box !important;
  display: grid !important;
  grid-auto-flow: row !important;
  align-items: stretch !important;
  justify-content: center !important;
  justify-items: center !important;
  column-gap: 24px !important;
  row-gap: 26px !important;
  width: min(calc(100% - 120px), 980px) !important;
  max-width: 980px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
}
html body.odc16-page-home .odc274-uniform-grid:not(.odc274-uniform-grid--thematic),
html body.odc16-page-acervo .odc274-uniform-grid {
  grid-template-columns: repeat(4, minmax(0, 220px)) !important;
}
html body.odc16-page-home .odc274-uniform-grid--thematic {
  grid-template-columns: repeat(2, minmax(0, 220px)) !important;
}

html body:is(.odc16-page-home,.odc16-page-acervo) :is(.odc274-uniform-card,.odc274-uniform-card-shell) {
  box-sizing: border-box !important;
  width: 220px !important;
  min-width: 220px !important;
  max-width: 220px !important;
  height: 230px !important;
  min-height: 230px !important;
  max-height: 230px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 16px !important;
  background: #0b0907 !important;
  box-shadow: 0 9px 20px rgba(0,0,0,.25) !important;
  overflow: hidden !important;
}

html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-card :is(a,.odc19-card-link,.odc22-home-thematic__link) {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-card img {
  display: block !important;
  flex: 0 0 150px !important;
  width: 100% !important;
  height: 150px !important;
  min-height: 150px !important;
  max-height: 150px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 15px 15px 0 0 !important;
  object-fit: cover !important;
  object-position: center !important;
}

html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-card :is(.odc19-card-title,.odc22-home-thematic__title,.odc16-acervo-card__title) {
  box-sizing: border-box !important;
  display: flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 80px !important;
  min-height: 80px !important;
  max-height: 80px !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 0 !important;
  border-radius: 0 0 15px 15px !important;
  background: #0b0907 !important;
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  text-align: center !important;
  text-align-last: center !important;
}

html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-card:hover,
html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-card:focus-within {
  border-color: #e8b947 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 25px rgba(0,0,0,.30) !important;
}

@media (max-width: 1050px) {
  html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-grid,
  html body.odc16-page-home .odc274-uniform-grid--thematic {
    grid-template-columns: repeat(2, minmax(0, 220px)) !important;
    width: min(calc(100% - 64px), 500px) !important;
  }
}
@media (max-width: 560px) {
  html body:is(.odc16-page-home,.odc16-page-acervo) .odc274-uniform-grid,
  html body.odc16-page-home .odc274-uniform-grid--thematic {
    grid-template-columns: minmax(0, 220px) !important;
    width: min(calc(100% - 32px), 260px) !important;
    row-gap: 20px !important;
  }
}

/* 4. O título da grade passa a ser somente “Acervo”. */
html body.odc16-page-acervo .odc16-heading--divisions {
  max-width: 100% !important;
}

/* 6. O rótulo interno do refinamento não aparece na página institucional. */
html body .odc274-editorial-heading-hidden {
  display: none !important;
}

/* ================================================================
 * 2.7.7 — Correção móvel estável e sem regressão.
 * Foco: leitura natural no celular, cards não embolados,
 * rodapé padronizado e Home legível em mobile.
 * ================================================================ */

/* Rodapé: “Sobre a ODC” deve parecer um link textual, nunca um botão. */
html body :is(footer,.site-footer,#colophon) .wp-block-button:has(.odc277-footer-about-link),
html body :is(footer,.site-footer,#colophon) .odc277-footer-about-wrap {
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html body :is(footer,.site-footer,#colophon) a.odc277-footer-about-link,
html body :is(footer,.site-footer,#colophon) .odc277-footer-about-link {
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  color: #f5ead7 !important;
  -webkit-text-fill-color: #f5ead7 !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  line-height: inherit !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: normal !important;
}

html body :is(footer,.site-footer,#colophon) a.odc277-footer-about-link:hover,
html body :is(footer,.site-footer,#colophon) a.odc277-footer-about-link:focus-visible {
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Correções focadas no celular e tablet. */
@media (max-width: 820px) {
  /* Texto corrido: sem justificação forçada em telas estreitas. */
  html body :where(main,.site-main,.entry-content,.page-content,.wp-block-post-content,.wp-site-blocks,.tainacan-item-single-page,.odc16-curated-item,.odc24-collection-introduction,.odc18-educational-journey) :where(p,li,dd,blockquote,.wp-block-paragraph,.wp-block-quote,.odc16-curated-section__body,.odc16-biography__content,.odc24-justified-text,.metadata-type-textarea,.metadata-type-core_description) {
    text-align: left !important;
    text-align-last: left !important;
    text-justify: auto !important;
    word-spacing: 0 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    line-height: 1.62 !important;
    max-width: none !important;
  }

  /* Faixa “Bem-vindo...” reescrita visualmente para não espalhar palavras. */
  html body .odc277-mobile-welcome-panel,
  html body .odc274-mobile-welcome-panel,
  html body .odc273-mobile-welcome {
    box-sizing: border-box !important;
    display: block !important;
    width: min(calc(100% - 32px), 680px) !important;
    max-width: calc(100% - 32px) !important;
    margin: 14px auto 20px !important;
    padding: 14px 18px !important;
    overflow: visible !important;
  }

  html body .odc277-mobile-welcome-text,
  html body .odc274-mobile-welcome,
  html body .odc274-mobile-welcome *,
  html body .odc273-mobile-welcome {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Segoe UI", Arial, Helvetica, sans-serif !important;
    font-size: clamp(1.05rem, 4.8vw, 1.75rem) !important;
    font-weight: 500 !important;
    line-height: 1.24 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-align: center !important;
    text-align-last: center !important;
    text-justify: auto !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
  }

  /* Home, acervo e cards temáticos: sempre separados e com largura segura. */
  html body:is(.odc16-page-home,.odc16-page-acervo) :is(.odc272-card-grid,.odc22-home-thematic__grid,.odc16-acervo-grid,.odc274-uniform-grid,.odc266-thematic-grid) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-auto-rows: auto !important;
    gap: 18px !important;
    width: min(calc(100% - 24px), 360px) !important;
    max-width: calc(100% - 24px) !important;
    margin: 0 auto 24px !important;
    justify-content: center !important;
    justify-items: stretch !important;
    align-items: stretch !important;
  }

  html body:is(.odc16-page-home,.odc16-page-acervo) :is(.odc19-card-rebuilt,.odc19-card-rebuilt-shell,.odc22-home-thematic__card,.odc266-thematic-card,.odc16-acervo-card,.odc274-uniform-card,.odc274-uniform-card-shell) {
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    overflow: hidden !important;
  }

  html body:is(.odc16-page-home,.odc16-page-acervo) :is(.odc19-card-rebuilt,.odc22-home-thematic__card,.odc266-thematic-card,.odc16-acervo-card,.odc274-uniform-card) :is(a,.odc19-card-link,.odc22-home-thematic__link) {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
  }

  html body:is(.odc16-page-home,.odc16-page-acervo) :is(.odc19-card-rebuilt,.odc22-home-thematic__card,.odc266-thematic-card,.odc16-acervo-card,.odc274-uniform-card) img {
    display: block !important;
    width: 100% !important;
    height: 190px !important;
    min-height: 190px !important;
    max-height: 190px !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  html body:is(.odc16-page-home,.odc16-page-acervo) :is(.odc19-card-title,.odc22-home-thematic__title,.odc16-acervo-card__title) {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 72px !important;
    height: auto !important;
    padding: 12px 14px !important;
    font-size: 1.05rem !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-align: center !important;
    text-align-last: center !important;
  }

  /* Botões da Home: mesma fonte/tamanho. */
  html body.odc16-page-home :is(.odc25-home-primary-nav a,.odc25-home-primary-nav button,.odc266-sector-button,.odc17-mobile-feature-action,.odc272-standard-action) {
    font-family: "Segoe UI", Arial, Helvetica, sans-serif !important;
    font-size: 1.02rem !important;
    font-weight: 800 !important;
    line-height: 1.15 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-align: center !important;
    text-align-last: center !important;
    white-space: normal !important;
  }

  /* Busca móvel compacta e legível. */
  html body .odc15-search-form,
  html body .odc15-search-form__grid {
    width: min(calc(100% - 24px), 680px) !important;
    max-width: calc(100% - 24px) !important;
    margin-inline: auto !important;
  }
  html body .odc15-search-form__grid {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 14px !important;
  }
  html body .odc15-search-form__submit {
    min-height: 52px !important;
    max-height: none !important;
    height: auto !important;
    white-space: normal !important;
  }

  /* Jogo e Jornada: painéis empilhados no celular. */
  html body :is(.odc18-educational-journey__grid,.odc18-educational-journey__cards,.odc-game__layout,.odc-game__board,.odc-game__choices,.odc-game__cards) {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 16px !important;
    width: min(calc(100% - 24px), 680px) !important;
    max-width: calc(100% - 24px) !important;
    margin-inline: auto !important;
  }

  html body :is(.odc18-educational-journey__card,.odc-game__start-card,.odc-game__accessible-card,.odc-game__card,.odc-game__choice) {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

/* ================================================================
 * 2.8.1 — Estabilidade da primeira abertura e acabamento mobile.
 * Corrige apenas leitura móvel, rodapé e o carregamento inicial das coleções.
 * ================================================================ */

/* O link “Sobre a ODC” do rodapé recebe classe por texto via JavaScript. */
html body .odc281-footer-about,
html body .odc281-footer-about-wrap {
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
  text-decoration: none !important;
  text-shadow: none !important;
}

html body a.odc281-footer-about,
html body button.odc281-footer-about,
html body [role="button"].odc281-footer-about {
  display: inline !important;
  color: #f5ead7 !important;
  -webkit-text-fill-color: #f5ead7 !important;
  font-family: inherit !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  line-height: inherit !important;
  letter-spacing: 0 !important;
  word-spacing: 0 !important;
  white-space: normal !important;
  cursor: pointer !important;
}

html body a.odc281-footer-about:hover,
html body a.odc281-footer-about:focus-visible,
html body button.odc281-footer-about:hover,
html body button.odc281-footer-about:focus-visible {
  color: #efc55e !important;
  -webkit-text-fill-color: #efc55e !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 820px) {
  /* A leitura móvel não usa justificação. A seleção é restrita a blocos de texto,
   * sem alterar grades, cards, menus ou botões. */
  html body :is(
    p,
    li,
    dd,
    figcaption,
    blockquote,
    .wp-block-paragraph,
    .wp-block-quote,
    .odc281-mobile-text,
    .odc273-mobile-natural-text,
    .odc24-justified-text,
    .odc16-curated-section__body,
    .odc16-biography__content,
    .metadata-type-textarea,
    .metadata-type-core_description
  ):not(:is(nav *,footer *,button,a,[role="button"],.odc15-nav *,.odc15-search-form *,.odc19-card-title,.odc22-home-thematic__title,.odc16-acervo-card__title)) {
    text-align: left !important;
    text-align-last: left !important;
    text-justify: none !important;
    word-spacing: normal !important;
    letter-spacing: normal !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
    hyphens: none !important;
    -webkit-hyphens: none !important;
  }

  /* Frase de acolhimento: um único bloco, sem flex ou espaços distribuídos. */
  html body .odc281-mobile-welcome,
  html body .odc281-mobile-welcome * {
    box-sizing: border-box !important;
    display: block !important;
    float: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    flex: none !important;
    grid-column: auto !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0 !important;
    column-gap: 0 !important;
    row-gap: 0 !important;
    color: #fff7e8 !important;
    -webkit-text-fill-color: #fff7e8 !important;
    font-family: "Segoe UI", Arial, Helvetica, sans-serif !important;
    font-size: clamp(1.05rem, 5vw, 1.35rem) !important;
    font-weight: 500 !important;
    line-height: 1.28 !important;
    letter-spacing: 0 !important;
    word-spacing: 0 !important;
    text-align: center !important;
    text-align-last: center !important;
    text-justify: none !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: break-word !important;
  }

  html body .odc281-mobile-welcome {
    width: min(calc(100% - 28px), 640px) !important;
    max-width: calc(100% - 28px) !important;
    margin: 12px auto 20px !important;
    padding: 14px 18px !important;
  }
}

/* ================================================================
 * 2.8.5 — Jornada Mestre Ray: interface limpa e responsiva.
 * Escopo exclusivo da página /trajetoria-mestre-ray/.
 * - remove controles sem conteúdo;
 * - compacta o HUD no desktop e no mobile;
 * - torna os nomes das memórias legíveis sobre as miniaturas;
 * - deixa o painel fotográfico em fluxo, sem botões sobre o contexto.
 * ================================================================ */

/* Controles sem função editorial nesta versão. */
body.odc285-journey-clean .odc-game__hud-actions .odc285-remove-control {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* HUD desktop: cinco ações úteis, em uma única linha compacta. */
body.odc285-journey-clean .odc-game__hud {
  box-sizing: border-box !important;
  grid-template-columns: minmax(220px, 270px) minmax(245px, 320px) minmax(0, 1fr) !important;
  gap: 12px !important;
  width: calc(100% - 24px) !important;
  max-width: 1720px !important;
  margin: 10px auto 0 !important;
  padding: 10px 12px !important;
  overflow: visible !important;
}

body.odc285-journey-clean .odc-game__hud-actions {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 8px !important;
  align-items: stretch !important;
  width: 100% !important;
}

body.odc285-journey-clean .odc-game__hud-actions > :is(button,a,[role="button"]):not(.odc285-remove-control) {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: 7px 8px !important;
  border-radius: 14px !important;
  font-size: clamp(.7rem,.78vw,.84rem) !important;
  line-height: 1.08 !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* A legenda passa a integrar a fotografia, sem ficar escondida atrás dela. */
body.odc285-journey-clean .odc30-memory-hotspot,
body.odc285-journey-clean .odc30-memory-hotspot__media {
  overflow: visible !important;
}

body.odc285-journey-clean .odc30-memory-hotspot__label {
  box-sizing: border-box !important;
  position: absolute !important;
  top: auto !important;
  right: 5px !important;
  bottom: 5px !important;
  left: 5px !important;
  transform: none !important;
  z-index: 30 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 5px 7px !important;
  border: 1px solid rgba(239,199,90,.82) !important;
  border-radius: 9px !important;
  background: rgba(15,8,5,.9) !important;
  color: #fff4d8 !important;
  font-family: Arial,Helvetica,sans-serif !important;
  font-size: .68rem !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: normal !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.9) !important;
}

/* Quando uma fotografia é aberta, a navegação da sala sai do fluxo visual. */
body.odc285-photo-panel-open .odc28-memory-nav-row {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

/* Painel de leitura: conteúdo primeiro, ações depois. */
body.odc285-photo-panel-open .odc31-photo-information-panel {
  box-sizing: border-box !important;
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-width: 0 !important;
  max-width: 100% !important;
  padding: 28px 30px 30px !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  scroll-margin-top: 12px !important;
}

body.odc285-photo-panel-open .odc31-photo-information-panel :is(
  .odc31-photo-title,
  .odc31-photo-date,
  .odc31-photo-highlight,
  .odc31-photo-context-heading,
  .odc31-photo-context
) {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  float: none !important;
  width: auto !important;
  max-width: 100% !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.odc285-photo-panel-open .odc31-photo-navigation-hint {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body.odc285-photo-panel-open .odc285-photo-actions {
  box-sizing: border-box !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 22px 0 0 !important;
  padding: 0 !important;
  clear: both !important;
}

body.odc285-photo-panel-open .odc285-photo-actions > :is(button,a,[role="button"]) {
  box-sizing: border-box !important;
  position: static !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 52px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  white-space: normal !important;
}

body.odc285-photo-panel-open .odc285-photo-actions .odc285-photo-archive {
  grid-column: 1 / -1 !important;
}

body.odc285-photo-panel-open .odc285-photo-close {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  z-index: 20 !important;
}

@media (max-width: 1100px) {
  body.odc285-journey-clean .odc-game__hud {
    grid-template-columns: minmax(200px,250px) minmax(0,1fr) !important;
  }
  body.odc285-journey-clean .odc-game__hud-actions {
    grid-column: 1 / -1 !important;
  }
}

@media (max-width: 760px) {
  /* No celular, Tela cheia também é retirada: o navegador já controla a tela. */
  body.odc285-journey-clean .odc-game__hud-actions .odc285-mobile-remove-control {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  body.odc285-journey-clean .odc-game__hud {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 9px !important;
    width: calc(100% - 12px) !important;
    margin: 6px auto 0 !important;
    padding: 10px !important;
    border-radius: 14px !important;
  }

  body.odc285-journey-clean .odc-game__hud-title {
    text-align: center !important;
  }

  body.odc285-journey-clean .odc-game__hud-title strong {
    font-size: 1.2rem !important;
  }

  body.odc285-journey-clean .odc-game__hud-progress {
    justify-content: center !important;
    gap: 6px !important;
  }

  body.odc285-journey-clean .odc-game__hud-progress :is(button,a,[role="button"]) {
    flex-basis: 30px !important;
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
  }

  body.odc285-journey-clean .odc-game__hud-actions {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px !important;
  }

  body.odc285-journey-clean .odc-game__hud-actions > :is(button,a,[role="button"]):not(.odc285-remove-control):not(.odc285-mobile-remove-control) {
    min-height: 50px !important;
    height: auto !important;
    padding: 9px 8px !important;
    font-size: .82rem !important;
    border-radius: 14px !important;
  }

  /* A legenda fica dentro da miniatura e não aumenta a área clicável. */
  body.odc285-journey-clean .odc30-memory-hotspot__label {
    right: 4px !important;
    bottom: 4px !important;
    left: 4px !important;
    min-height: 25px !important;
    padding: 4px 5px !important;
    font-size: .61rem !important;
  }

  body.odc285-photo-panel-open .odc31-photo-information-panel {
    width: 100% !important;
    max-width: 100% !important;
    padding: 22px 16px 24px !important;
    overflow: visible !important;
  }

  body.odc285-photo-panel-open .odc31-photo-title {
    padding-right: 42px !important;
    font-size: clamp(1.5rem,8vw,2.1rem) !important;
  }

  body.odc285-photo-panel-open .odc31-photo-highlight {
    margin-bottom: 16px !important;
    padding: 14px 15px !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
  }

  body.odc285-photo-panel-open .odc31-photo-context {
    font-size: 1rem !important;
    line-height: 1.62 !important;
    text-align: left !important;
    text-align-last: left !important;
    word-spacing: normal !important;
  }

  body.odc285-photo-panel-open .odc285-photo-actions {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 9px !important;
    margin-top: 18px !important;
  }

  body.odc285-photo-panel-open .odc285-photo-actions .odc285-photo-archive {
    grid-column: auto !important;
  }
}
