* {
  margin: 0px;
  padding: 0px;
}

body {
  background-color: #101010 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}

html, body {
  margin: 0 !important;
  padding: 0 !important;
}

body[style] {
  padding-top: 0 !important;
  margin-top: 0 !important;
}

/* === HEADER === */
header.main-header,
.main-header,
header {
  background: #467B3A !important;
  backdrop-filter: none !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 999 !important;
  box-shadow: none !important;
  border-bottom: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* === MENU — links === */
.main-navigation .navigation > li > a {
  color: #ECEBD7 !important;
  border: 1px solid rgba(0,0,0,0) !important;
  border-radius: 20px !important;
  transition: all 0.25s ease !important;
}
.main-navigation .navigation > li > a:hover {
  color: #FFAD22 !important;
  border: 1px solid #FFAD22 !important;
  border-radius: 20px !important;
}
.main-navigation .navigation > li.active > a,
.main-navigation .navigation li.active > a {
  color: #FFAD22 !important;
  border: 1px solid #FFAD22 !important;
  border-radius: 20px !important;
}

/* === OCULTAR paginação Omeka === */
.pagination,
nav.pagination,
.site-page-pagination,
.o-pagination {
  display: none !important;
}

/* === Container principal === */
#main-content.container {
  padding: 0 !important;
  max-width: 100% !important;
}
.site-page-blocks > .block {
  margin: 0 !important;
  padding: 0 !important;
}

/* === Headings === */
#content h1, #content h2, #content h3 {
  color: #ECEBD7;
}

/* === Footer === */
.copapg-footer {
  background: #101010;
  color: #ECEBD7;
  width: 100vw;
  margin-left: calc(-50vw + 50%);
  padding: 32px 24px;
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.5px;
}

/* === Fullwidth === */
.copapg-fullwidth {
  width: 100vw;
  margin-left: calc(-50vw + 50%);
}

/* === Botão de pesquisa === */
.main-search-button {
  background-color: #FFAD22 !important;
  border-color: #FFAD22 !important;
}
.main-search-button::before,
.main-search-button .o-icon-search,
.main-search-button .o-icon-search::before {
  color: #ECEBD7 !important;
}

/* === Animações === */
@keyframes copapg-fadeUp {
  from { opacity: 0; transform: translateY(40px); }
  to   { opacity: 1; transform: translateY(0); }
}
@keyframes copapg-fadeIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}
@keyframes copapg-pulse {
  0%, 100% { transform: scale(1); }
  50%       { transform: scale(1.05); }
}
.copapg-reveal { opacity: 0; }
.copapg-reveal.copapg-is-visible {
  animation: copapg-fadeUp 1.6s ease forwards;
}

/* ================================================
   HIERARCHY — galeria estilo Awwwards
   ================================================ */

.hierarchy-module .hierarchy-metadata,
.hierarchy-module .hierarchy-filters,
.hierarchy-module .hierarchy-list,
.hierarchy-module .hierarchy-sets,
.hierarchy-module .browse-controls {
  display: none !important;
}
.hierarchy-module .hierarchy-row {
  flex-direction: column !important;
  background: #101010 !important;
  padding: 40px 32px 64px !important;
}
.hierarchy-module .hierarchy-items {
  width: 100% !important;
  background: #101010 !important;
}
.hierarchy-module .hierarchy-items > h3 {
  display: none !important;
}

/* Grid */
.hierarchy-module ul.resource-list {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 16px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
}

/* Card */
.hierarchy-module ul.resource-list li.item.resource {
  display: flex !important;
  flex-direction: column !important;
  background: #1a1a1a !important;
  border: none !important;
  border-style: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease !important;
}
.hierarchy-module ul.resource-list li.item.resource:hover {
  transform: translateY(-6px) scale(1.02) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,0.6) !important;
}
.hierarchy-module ul.resource-list li.item.resource::before {
  content: "" !important;
  display: block !important;
  height: 3px !important;
  width: 0 !important;
  background: linear-gradient(90deg, #FFAD22, #467B3A) !important;
  transition: width 0.4s ease !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 3 !important;
}
.hierarchy-module ul.resource-list li.item.resource:hover::before {
  width: 100% !important;
}

/* Thumbnail */
.hierarchy-module ul.resource-list li.item.resource div.resource__thumbnail {
  width: 100% !important;
  height: 300px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  background: #101010 !important;
  order: 1 !important;
}
.hierarchy-module ul.resource-list li.item.resource div.resource__thumbnail a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}
.hierarchy-module ul.resource-list li.item.resource div.resource__thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  border-radius: 0 !important;
  max-width: none !important;
  max-height: none !important;
  position: static !important;
  transition: transform 0.5s ease !important;
}
.hierarchy-module ul.resource-list li.item.resource:hover div.resource__thumbnail img {
  transform: scale(1.06) !important;
}

/* Conteúdo */
.hierarchy-module ul.resource-list li.item.resource div.resource__content {
  order: 2 !important;
  padding: 12px 14px 14px !important;
  background: #1a1a1a !important;
  flex: 1 !important;
}
.hierarchy-module ul.resource-list li.item.resource div.resource__content a,
.hierarchy-module ul.resource-list li.item.resource div.resource__meta a,
.hierarchy-module ul.resource-list li.item.resource div.resource__content *,
.hierarchy-module ul.resource-list li.item.resource div.resource__meta * {
  color: #ECEBD7 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: color 0.3s ease !important;
}
.hierarchy-module ul.resource-list li.item.resource:hover div.resource__content a,
.hierarchy-module ul.resource-list li.item.resource:hover div.resource__meta a {
  color: #FFAD22 !important;
}

/* Paginação hierarchy */
.hierarchy-module nav.pagination,
.hierarchy-module .pagination {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 40px 0 16px !important;
  background: #101010 !important;
  list-style: none !important;
  flex-wrap: wrap !important;
}
.hierarchy-module nav.pagination a,
.hierarchy-module .pagination a {
  color: #ECEBD7 !important;
  background: #1a1a1a !important;
  border: 1px solid #003068 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  transition: all 0.25s ease !important;
}
.hierarchy-module nav.pagination a:hover,
.hierarchy-module .pagination a:hover {
  background: #467B3A !important;
  border-color: #467B3A !important;
  color: #FFAD22 !important;
}
.hierarchy-module nav.pagination .current,
.hierarchy-module .pagination .current,
.hierarchy-module nav.pagination span,
.hierarchy-module .pagination span {
  background: #FFAD22 !important;
  color: #101010 !important;
  font-weight: 700 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
  font-size: 13px !important;
}

@media (max-width: 1200px) {
  .hierarchy-module ul.resource-list { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (max-width: 900px) {
  .hierarchy-module ul.resource-list { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 600px) {
  .hierarchy-module ul.resource-list { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .hierarchy-module .hierarchy-row { padding: 24px 16px 48px !important; }
}
@media (max-width: 380px) {
  .hierarchy-module ul.resource-list { grid-template-columns: 1fr !important; }
}

/* ================================
   PÁGINA DO ITEM
================================ */

body.item.resource.show #main-content.container {
  max-width: 100% !important;
  margin: 0 !important;
  padding: 40px 60px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
body.item.resource.show h1,
body.item.resource.show h1 span.title,
body.item.resource.show .page-title,
body.item.resource.show span.title {
  color: #ECEBD7 !important;
  font-size: clamp(22px, 3vw, 36px) !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  margin-bottom: 32px !important;
  --page-title-color: #ECEBD7 !important;
}
body.item.resource.show h1::before,
body.item.resource.show h1::after,
body.item.resource.show h1 span.title::before,
body.item.resource.show h1 span.title::after,
body.item.resource.show .page-title::before,
body.item.resource.show .page-title::after {
  display: none !important;
  content: none !important;
}
body.item.resource.show dl dt,
body.item.resource.show .property dt {
  color: #FFAD22 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
body.item.resource.show dl dd,
body.item.resource.show .property dd {
  color: #ECEBD7 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin-left: 0 !important;
}
body.item.resource.show #content a,
body.item.resource.show dl dd a,
body.item.resource.show .property dd a {
  color: #FFAD22 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
body.item.resource.show #content a:hover,
body.item.resource.show dl dd a:hover,
body.item.resource.show .property dd a:hover {
  color: #467B3A !important;
}
body.item.resource.show nav.breadcrumbs a,
body.item.resource.show .breadcrumbs a { color: #FFAD22 !important; }
body.item.resource.show nav.breadcrumbs a:hover { color: #467B3A !important; }
body.item.resource.show .media-render,
body.item.resource.show .media-list {
  background: #1a1a1a !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
body.item.resource.show .linked-resource-heading,
body.item.resource.show .accordion__heading {
  color: #FFAD22 !important;
  background: #1a1a1a !important;
  border-bottom: 1px solid #003068 !important;
  padding: 12px 16px !important;
}
body.item.resource.show .linked-resource a { color: #ECEBD7 !important; }
body.item.resource.show .linked-resource a:hover { color: #FFAD22 !important; }
body.item.resource.show .linked-resource,
body.item.resource.show .accordion_panel {
  background: #1a1a1a !important;
  border-color: #003068 !important;
  color: #ECEBD7 !important;
}
@media (max-width: 768px) {
  body.item.resource.show #main-content.container { padding: 24px 20px !important; }
}

/* ================================
   PÁGINA DA COLEÇÃO (item-set)
================================ */

body.item-set.resource.browse #main-content.container {
  max-width: 100% !important;
  padding: 40px 60px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
body.item-set.resource.browse h1,
body.item-set.resource.browse h1 span.title,
body.item-set.resource.browse span.title {
  color: #ECEBD7 !important;
  font-size: clamp(22px, 3vw, 36px) !important;
  font-weight: 700 !important;
  border: none !important;
  padding-left: 0 !important;
  margin-bottom: 32px !important;
  --page-title-color: #ECEBD7 !important;
}
body.item-set.resource.browse h1::before,
body.item-set.resource.browse h1::after,
body.item-set.resource.browse span.title::before,
body.item-set.resource.browse span.title::after {
  display: none !important;
  content: none !important;
}
body.item-set.resource.browse dl dt {
  color: #FFAD22 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
}
body.item-set.resource.browse dl dd {
  color: #ECEBD7 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin-left: 0 !important;
}
body.item-set.resource.browse #content a { color: #FFAD22 !important; text-decoration: none !important; }
body.item-set.resource.browse #content a:hover { color: #467B3A !important; }
body.item-set.resource.browse .hierarchies,
body.item-set.resource.browse .item-set-items { color: #ECEBD7 !important; }
body.item-set.resource.browse .item-set-items h2,
body.item-set.resource.browse .item-set-items h3 {
  color: #FFAD22 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  border-left: 3px solid #467B3A !important;
  padding-left: 12px !important;
  margin-bottom: 20px !important;
}
body.item-set.resource.browse .browse-controls {
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
}
body.item-set.resource.browse .browse-controls select {
  background: #1a1a1a !important;
  color: #ECEBD7 !important;
  border: 1px solid #003068 !important;
  border-radius: 6px !important;
  padding: 6px 12px !important;
}
body.item-set.resource.browse .browse-controls button {
  background: #467B3A !important;
  color: #ECEBD7 !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 6px 16px !important;
  cursor: pointer !important;
}
body.item-set.resource.browse .browse-controls button:hover {
  background: #FFAD22 !important;
  color: #101010 !important;
}

/* Grid item-set */
body.item-set.resource.browse ul.resource-list {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 16px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  height: auto !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource {
  display: flex !important;
  flex-direction: column !important;
  background: #1a1a1a !important;
  border: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  position: relative !important;
  cursor: pointer !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease !important;
  top: auto !important;
  left: auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource:hover {
  transform: translateY(-6px) scale(1.02) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,0.6) !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource::before {
  content: "" !important;
  display: block !important;
  height: 3px !important;
  width: 0 !important;
  background: linear-gradient(90deg, #FFAD22, #467B3A) !important;
  transition: width 0.4s ease !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 3 !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource:hover::before {
  width: 100% !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__thumbnail {
  width: 100% !important;
  height: 260px !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  background: #101010 !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__thumbnail a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  border-radius: 0 !important;
  max-width: none !important;
  max-height: none !important;
  position: static !important;
  transition: transform 0.5s ease !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource:hover div.resource__thumbnail img {
  transform: scale(1.06) !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__content,
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__meta {
  padding: 12px 14px !important;
  background: #1a1a1a !important;
  flex: 1 !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__content *,
body.item-set.resource.browse ul.resource-list li.item.resource div.resource__meta * {
  color: #ECEBD7 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  background: transparent !important;
  transition: color 0.3s ease !important;
}
body.item-set.resource.browse ul.resource-list li.item.resource:hover div.resource__content *,
body.item-set.resource.browse ul.resource-list li.item.resource:hover div.resource__meta * {
  color: #FFAD22 !important;
}

/* Paginação item-set */
body.item-set.resource.browse nav.pagination {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 32px 0 !important;
  flex-wrap: wrap !important;
}
body.item-set.resource.browse nav.pagination a {
  color: #ECEBD7 !important;
  background: #1a1a1a !important;
  border: 1px solid #003068 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  transition: all 0.25s ease !important;
}
body.item-set.resource.browse nav.pagination a:hover {
  background: #467B3A !important;
  color: #FFAD22 !important;
}
body.item-set.resource.browse nav.pagination .current,
body.item-set.resource.browse nav.pagination span {
  background: #FFAD22 !important;
  color: #101010 !important;
  font-weight: 700 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
}

@media (max-width: 1200px) {
  body.item-set.resource.browse ul.resource-list { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (max-width: 900px) {
  body.item-set.resource.browse ul.resource-list { grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 600px) {
  body.item-set.resource.browse ul.resource-list { grid-template-columns: repeat(2, 1fr) !important; }
  body.item-set.resource.browse #main-content.container { padding: 24px 16px !important; }
}

/* ================================
   BUSCA AVANÇADA — chosen.js
================================ */

body.items.search .chosen-drop {
  background: #1a1a1a !important;
  border: 1px solid #003068 !important;
}
body.items.search .chosen-results li {
  color: #ECEBD7 !important;
  background: #1a1a1a !important;
  border-bottom: 1px solid rgba(0,48,104,0.2) !important;
}
body.items.search .chosen-results li:hover,
body.items.search .chosen-results li.highlighted {
  background: #003068 !important;
  color: #FFAD22 !important;
}
body.items.search .chosen-results li.group-result {
  color: #FFAD22 !important;
  background: #101010 !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  font-size: 0.75rem !important;
}
body.items.search .chosen-search {
  background: #101010 !important;
  border-bottom: 1px solid #003068 !important;
}
body.items.search .chosen-search input {
  background: #101010 !important;
  border: 1px solid #003068 !important;
  color: #ECEBD7 !important;
}
body.items.search a.chosen-single,
body.items.search .chosen-container-single .chosen-single {
  background: #101010 !important;
  background-color: #101010 !important;
  border: 1px solid #003068 !important;
  color: #ECEBD7 !important;
}
body.items.search a.chosen-single span { color: #ECEBD7 !important; }
body.items.search ul.chosen-choices {
  background: #101010 !important;
  border: 1px solid #003068 !important;
  border-radius: 6px !important;
}
body.items.search ul.chosen-choices input.chosen-search-input { color: #ECEBD7 !important; background: transparent !important; }
body.items.search ul.chosen-choices .default { color: #555 !important; }
body.items.search select,
body.items.search select.chosen-select,
body.items.search .inputs select {
  background: #101010 !important;
  background-color: #101010 !important;
  color: #ECEBD7 !important;
  border: 1px solid #003068 !important;
  border-radius: 6px !important;
}
body.items.search button.add-value.o-icon-add.button {
  background: #003068 !important;
  color: #ECEBD7 !important;
  border: none !important;
  border-radius: 50% !important;
}
body.items.search button.add-value.o-icon-add.button:hover {
  background: #FFAD22 !important;
  color: #101010 !important;
}
body.items.search h2.title,
body.items.search h2 {
  color: #FFAD22 !important;
  --page-title-color: #FFAD22 !important;
  font-size: 2.4rem !important;
  font-weight: 700 !important;
  background: transparent !important;
  margin-top: 24px !important;
  margin-left: 50px !important;
  border: none !important;
  padding-left: 0 !important;
}
body.items.search h2.title::before,
body.items.search h2.title::after {
  display: none !important;
  content: none !important;
}
.advanced-search-content { margin-bottom: 5px !important; }

/* ================================
   PÁGINA DE BUSCA (lupa) — igual hierarchy
================================ */

body.index.search #main-content.container {
  max-width: 100% !important;
  padding: 40px 60px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}
body.index.search h1 {
  color: #ECEBD7 !important;
  font-size: clamp(20px, 2.5vw, 32px) !important;
  font-weight: 700 !important;
  margin-bottom: 40px !important;
  --page-title-color: #ECEBD7 !important;
}
body.index.search h2 {
  color: #FFAD22 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  border-left: 3px solid #467B3A !important;
  padding-left: 12px !important;
  margin-bottom: 20px !important;
}
body.index.search a[href*="fulltext_search"],
body.index.search .site_pages.results > a,
body.index.search .items.results > a {
  display: inline-block !important;
  color: #FFAD22 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  margin-top: 16px !important;
  padding: 8px 20px !important;
  border: 1px solid #FFAD22 !important;
  border-radius: 4px !important;
  transition: all 0.2s ease !important;
}
body.index.search a[href*="fulltext_search"]:hover {
  background: #FFAD22 !important;
  color: #101010 !important;
}
body.index.search div.site_pages.results,
body.index.search div.items.results {
  margin-bottom: 48px !important;
  background: transparent !important;
}

/* Grid */
body.index.search ul.resources.resource-list {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 16px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 16px !important;
  height: auto !important;
}

/* Card */
body.index.search ul.resources.resource-list li.item.resource {
  display: flex !important;
  flex-direction: column !important;
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
  border: none !important;
  border-style: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  position: relative !important;
  top: auto !important;
  left: auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.35s ease !important;
}
body.index.search ul.resources.resource-list li.item.resource:hover {
  transform: translateY(-6px) scale(1.02) !important;
  box-shadow: 0 16px 40px rgba(0,0,0,0.6) !important;
}

/* Linha gradiente topo */
body.index.search ul.resources.resource-list li.item.resource::before {
  content: "" !important;
  display: block !important;
  height: 3px !important;
  width: 0 !important;
  background: linear-gradient(90deg, #FFAD22, #467B3A) !important;
  transition: width 0.4s ease !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 3 !important;
}
body.index.search ul.resources.resource-list li.item.resource:hover::before {
  width: 100% !important;
}

/* Link — apenas bloco, não flex */
body.index.search ul.resources.resource-list li.item.resource a {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  position: static !important;
}

/* Imagem — topo do card, altura fixa */
body.index.search ul.resources.resource-list li.item.resource img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  border-radius: 0 !important;
  max-width: none !important;
  max-height: none !important;
  position: static !important;
  flex-shrink: 0 !important;
  transition: transform 0.5s ease !important;
}
body.index.search ul.resources.resource-list li.item.resource:hover img {
  transform: scale(1.06) !important;
}

/* Título — pseudo-elemento ::after no link com o texto vem do atributo title */
/* Como o a envolve imagem + texto juntos, precisamos estilizar o nó de texto */
body.index.search ul.resources.resource-list li.item.resource a {
  padding: 0 !important;
}

/* Wrapper de texto nativo do Omeka dentro do link */
body.index.search ul.resources.resource-list li.item.resource .resource-name,
body.index.search ul.resources.resource-list li.item.resource a > span:not(:has(img)),
body.index.search ul.resources.resource-list li.item.resource a > *:not(img) {
  display: block !important;
  color: #ECEBD7 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  padding: 12px 14px 14px !important;
  background: #1a1a1a !important;
  transition: color 0.3s ease !important;
}
body.index.search ul.resources.resource-list li.item.resource:hover .resource-name,
body.index.search ul.resources.resource-list li.item.resource:hover a > *:not(img) {
  color: #FFAD22 !important;
}

/* Páginas do site */
body.index.search div.site_pages.results ul.resources.resource-list {
  grid-template-columns: repeat(3, 1fr) !important;
}
body.index.search div.site_pages.results ul.resources.resource-list li.item.resource a {
  padding: 20px !important;
  color: #ECEBD7 !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  text-align: center !important;
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.index.search div.site_pages.results ul.resources.resource-list li.item.resource:hover a {
  color: #FFAD22 !important;
}

@media (max-width: 1200px) {
  body.index.search ul.resources.resource-list { grid-template-columns: repeat(4, 1fr) !important; }
}
@media (max-width: 900px) {
  body.index.search ul.resources.resource-list { grid-template-columns: repeat(3, 1fr) !important; }
  body.index.search div.site_pages.results ul.resources.resource-list { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 600px) {
  body.index.search ul.resources.resource-list { grid-template-columns: repeat(2, 1fr) !important; }
  body.index.search #main-content.container { padding: 24px 20px !important; }
}
@media (max-width: 380px) {
  body.index.search ul.resources.resource-list { grid-template-columns: 1fr !important; }
}

/* ================================
   MENU HAMBÚRGUER — Mobile
================================ */

:root {
  --hamburger-menu: #ECEBD7 !important;
  --hamburger-menu-bg: #101010 !important;
  --hamburger-menu-title: #FFAD22 !important;
  --hamburger-menu-link: #ECEBD7 !important;
  --hamburger-menu-arrow: #FFAD22 !important;
  --hamburger-menu-close: #ECEBD7 !important;
  --hamburger-menu-link-hover: #FFAD22 !important;
  --hamburger-menu-icon: #ECEBD7 !important;
}

/* Botão hambúrguer — garantir visibilidade */
.main-navigation_toggle,
.menu-toggle,
button.menu-toggle {
  display: flex !important;
  color: #ECEBD7 !important;
  background: transparent !important;
  border: none !important;
}

/* Drawer — fundo escuro */
nav#menu-drawer,
.menu-drawer {
  background: #101010 !important;
  border-right: 1px solid #003068 !important;
}

/* Links dentro do drawer */
.menu-drawer a,
nav#menu-drawer a {
  color: #ECEBD7 !important;
  transition: color 0.2s ease !important;
}
.menu-drawer a:hover,
nav#menu-drawer a:hover {
  color: #FFAD22 !important;
}

/* Título "Menu" */
.menu-drawer .menu-title,
nav#menu-drawer .menu-title {
  color: #FFAD22 !important;
  font-weight: 700 !important;
}

/* Botão fechar X */
.menu-drawer .menu-close,
nav#menu-drawer .menu-close,
.menu-drawer button.menu-close {
  color: #ECEBD7 !important;
}

/* Hambúrguer — ícone visível sobre header verde */
.main-navigation_toggle,
.main-navigation__toggle,
button.main-navigation_toggle,
button.main-navigation__toggle,
.main-header .menu-toggle,
header .menu-toggle,
header button[class*="toggle"],
header button[class*="hamburger"],
header button[class*="menu"] {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #ECEBD7 !important;
  background: transparent !important;
  border: none !important;
  z-index: 200 !important;
}

/* Linhas do ícone hambúrguer */
.main-navigation_toggle span,
.main-navigation__toggle span,
header button[class*="toggle"] span,
header button[class*="menu"] span {
  background-color: #ECEBD7 !important;
  display: block !important;
}

/* Ícone SVG/before dentro do botão */
.main-navigation_toggle::before,
.main-navigation__toggle::before,
header button[class*="toggle"]::before {
  color: #ECEBD7 !important;
}

/* Hambúrguer — só aparece no mobile */
.main-navigation_toggle,
.main-navigation__toggle,
button.main-navigation_toggle,
button.main-navigation__toggle,
header button[class*="toggle"],
header button[class*="hamburger"],
header button[class*="menu"] {
  display: none !important;
}

@media (max-width: 768px) {
  .main-navigation_toggle,
  .main-navigation__toggle,
  button.main-navigation_toggle,
  button.main-navigation__toggle,
  header button[class*="toggle"],
  header button[class*="hamburger"],
  header button[class*="menu"] {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #ECEBD7 !important;
    background: transparent !important;
    border: none !important;
    z-index: 200 !important;
  }

  /* Esconde menu desktop no mobile */
  .main-navigation .navigation {
    display: none !important;
  }
}

/* ================================
   BROWSE GERAL DE ITENS
================================ */

body.items.resource.browse #main-content.container {
  max-width: 100% !important;
  padding: 40px 60px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

/* Título */
body.items.resource.browse h2,
body.items.resource.browse span.title {
  color: #ECEBD7 !important;
  --page-title-color: #ECEBD7 !important;
}

/* Browse controls */
body.items.resource.browse .browse-controls {
  background: transparent !important;
  margin-bottom: 24px !important;
}
body.items.resource.browse .browse-controls select {
  background: #1a1a1a !important;
  color: #ECEBD7 !important;
  border: 1px solid #003068 !important;
  border-radius: 6px !important;
  padding: 6px 12px !important;
}
body.items.resource.browse .browse-controls button {
  background: #467B3A !important;
  color: #ECEBD7 !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 6px 16px !important;
  cursor: pointer !important;
}
body.items.resource.browse .browse-controls button:hover {
  background: #FFAD22 !important;
  color: #101010 !important;
}

/* Cards */
#main-content div.resources.resource-grid div.item.resource {
  background: #1a1a1a !important;
  background-color: #1a1a1a !important;
  border: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.3) !important;
  transition: transform 0.35s ease, box-shadow 0.35s ease !important;
}
#main-content div.resources.resource-grid div.item.resource:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(0,0,0,0.6) !important;
  z-index: 10 !important;
}

/* Linha gradiente topo */
#main-content div.resources.resource-grid div.item.resource::before {
  content: "" !important;
  display: block !important;
  height: 3px !important;
  width: 0 !important;
  background: linear-gradient(90deg, #FFAD22, #467B3A) !important;
  transition: width 0.4s ease !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 3 !important;
}
#main-content div.resources.resource-grid div.item.resource:hover::before {
  width: 100% !important;
}

/* Thumbnail */
#main-content div.resources.resource-grid div.resource__thumbnail {
  overflow: hidden !important;
  background: #101010 !important;
}
#main-content div.resources.resource-grid div.resource__thumbnail img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  border-radius: 0 !important;
  border: none !important;
  transition: transform 0.5s ease !important;
}
#main-content div.resources.resource-grid div.item.resource:hover .resource__thumbnail img {
  transform: scale(1.04) !important;
}

/* Conteúdo */
#main-content div.resources.resource-grid div.resource__content {
  padding: 16px !important;
  background: #1a1a1a !important;
}

/* Link título */
#main-content div.resources.resource-grid div.resource__content a {
  color: #ECEBD7 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  display: block !important;
  margin-bottom: 8px !important;
  transition: color 0.3s ease !important;
}
#main-content div.resources.resource-grid div.item.resource:hover .resource__content a {
  color: #FFAD22 !important;
}

/* Descrição */
#main-content div.resources.resource-grid div.description.full,
#main-content div.resources.resource-grid div.resource__content p {
  color: #888 !important;
  font-size: 12px !important;
  line-height: 1.6 !important;
  background: transparent !important;
}

/* Paginação */
body.items.resource.browse nav.pagination {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 32px 0 !important;
  flex-wrap: wrap !important;
}
body.items.resource.browse nav.pagination a {
  color: #ECEBD7 !important;
  background: #1a1a1a !important;
  border: 1px solid #003068 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  transition: all 0.25s ease !important;
}
body.items.resource.browse nav.pagination a:hover {
  background: #467B3A !important;
  color: #FFAD22 !important;
}
body.items.resource.browse nav.pagination .current,
body.items.resource.browse nav.pagination span {
  background: #FFAD22 !important;
  color: #101010 !important;
  font-weight: 700 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
}

@media (max-width: 600px) {
  body.items.resource.browse #main-content.container { padding: 24px 16px !important; }
}

body.items.resource.browse #main-content h2,
body.items.resource.browse #main-content h2 span.title,
body.items.resource.browse #main-content h2 span,
body.items.resource.browse #main-content > h2 {
  color: #ECEBD7 !important;
  --page-title-color: #ECEBD7 !important;
}

/* ================================
   BROWSE DE PÁGINAS
================================ */

body.page.browse #main-content.container {
  max-width: 100% !important;
  padding: 40px 60px !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

/* Título "Páginas" */
body.page.browse h1,
body.page.browse h1 span.title {
  color: #ECEBD7 !important;
  --page-title-color: #ECEBD7 !important;
  font-size: clamp(22px, 3vw, 36px) !important;
  font-weight: 700 !important;
  margin-bottom: 32px !important;
}
body.page.browse h1::before,
body.page.browse h1::after,
body.page.browse h1 span.title::before,
body.page.browse h1 span.title::after {
  display: none !important;
  content: none !important;
}

/* Lista de páginas */
body.page.browse ul.pages-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
}

body.page.browse ul.pages-list li.page {
  background: #1a1a1a !important;
  border: 1px solid #003068 !important;
  border-radius: 8px !important;
  transition: border-color 0.3s ease, transform 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
}
body.page.browse ul.pages-list li.page::before {
  content: "" !important;
  display: block !important;
  height: 3px !important;
  width: 0 !important;
  background: linear-gradient(90deg, #FFAD22, #467B3A) !important;
  transition: width 0.4s ease !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 2 !important;
}
body.page.browse ul.pages-list li.page:hover::before {
  width: 100% !important;
}
body.page.browse ul.pages-list li.page:hover {
  border-color: #FFAD22 !important;
  transform: translateY(-4px) !important;
}

body.page.browse ul.pages-list li.page a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 24px 20px !important;
  color: #ECEBD7 !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  text-align: center !important;
  min-height: 70px !important;
  transition: color 0.3s ease !important;
}
body.page.browse ul.pages-list li.page:hover a {
  color: #FFAD22 !important;
}

/* Paginação */
body.page.browse nav.pagination {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 32px 0 !important;
  flex-wrap: wrap !important;
}
body.page.browse nav.pagination a {
  color: #ECEBD7 !important;
  background: #1a1a1a !important;
  border: 1px solid #003068 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  font-size: 13px !important;
  transition: all 0.25s ease !important;
}
body.page.browse nav.pagination a:hover {
  background: #467B3A !important;
  color: #FFAD22 !important;
}
body.page.browse nav.pagination .current,
body.page.browse nav.pagination span {
  background: #FFAD22 !important;
  color: #101010 !important;
  font-weight: 700 !important;
  padding: 7px 16px !important;
  border-radius: 4px !important;
}

@media (max-width: 768px) {
  body.page.browse ul.pages-list { grid-template-columns: repeat(2, 1fr) !important; }
  body.page.browse #main-content.container { padding: 24px 20px !important; }
}
@media (max-width: 480px) {
  body.page.browse ul.pages-list { grid-template-columns: 1fr !important; }
}

/* ===== Modal de diálogo nativo (Comment confirmation, etc.) - Copa PG ===== */

/* A própria tag <dialog> - painel do modal */
dialog.dialog-common {
  background: #101010 !important;
  border: 2px solid #FFAD22 !important;
  border-radius: 12px !important;
  max-width: 480px !important;
  width: 90% !important;
  padding: 0 !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.6) !important;
}

/* Fundo escurecido nativo (backdrop) */
dialog.dialog-common::backdrop {
  background: rgba(0, 0, 0, 0.75) !important;
}

/* Form interno - remove qualquer posicionamento próprio e só dá padding */
dialog.dialog-common form.dialog-background {
  position: static !important;
  background: transparent !important;
  padding: 30px !important;
  box-sizing: border-box !important;
}

/* Cabeçalho com botão de fechar */
dialog.dialog-common .dialog-header {
  display: flex !important;
  justify-content: flex-end !important;
  margin-bottom: 10px !important;
}

dialog.dialog-common .dialog-header-close-button {
  background: transparent !important;
  border: none !important;
  cursor: pointer !important;
}

dialog.dialog-common .dialog-close,
dialog.dialog-common .dialog-close-label {
  color: #ECEBD7 !important;
  font-size: 18px !important;
}

/* Título - amarelo */
dialog.dialog-common .dialog-heading,
dialog.dialog-common .dialog-heading h2 {
  color: #FFAD22 !important;
  background: transparent !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  text-align: center !important;
  margin: 0 0 16px 0 !important;
}

/* Mensagem - off white */
dialog.dialog-common .dialog-message,
dialog.dialog-common .dialog-body {
  background: transparent !important;
  color: #ECEBD7 !important;
  font-size: 16px !important;
  text-align: center !important;
  line-height: 1.5 !important;
}

/* Rodapé com botão OK */
dialog.dialog-common .dialog-footer {
  display: flex !important;
  justify-content: center !important;
  margin-top: 24px !important;
}

/* Botão OK - azul com texto off white */
dialog.dialog-common .dialog-button.dialog-ok {
  background: #003068 !important;
  color: #ECEBD7 !important;
  border: none !important;
  border-radius: 30px !important;
  padding: 12px 36px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  transition: background 0.2s ease !important;
}

dialog.dialog-common .dialog-button.dialog-ok:hover {
  background: #467B3A !important;
}

/* ===== Campos do formulário de comentário - paleta Copa PG ===== */

#comments input[type="text"],
#comments input[type="email"],
#comments input[type="url"],
#comments textarea,
#comment-form-name,
#comment-form-email,
#comment-form-website,
#comment-form-body {
  background: #101010 !important;
  color: #ECEBD7 !important;
  border: 1px solid #FFAD22 !important;
  border-radius: 8px !important;
}

/* Placeholder mais claro, mas discreto */
#comments input[type="text"]::placeholder,
#comments input[type="email"]::placeholder,
#comments input[type="url"]::placeholder,
#comments textarea::placeholder {
  color: #ECEBD7 !important;
  opacity: 0.6 !important;
}

/* Foco no campo - realça com azul/verde da paleta */
#comments input[type="text"]:focus,
#comments input[type="email"]:focus,
#comments input[type="url"]:focus,
#comments textarea:focus {
  border-color: #467B3A !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(70, 123, 58, 0.4) !important;
}

#comments input[name="address"],
input[name="address"] {
  background: #101010 !important;
  color: #ECEBD7 !important;
  border: 1px solid #FFAD22 !important;
  border-radius: 8px !important;
}

input[name="address"]::placeholder {
  color: #ECEBD7 !important;
  opacity: 0.6 !important;
}

/* ===== Texto dos comentários em branco/off-white - Copa PG ===== */

.comments-resource .comment,
.comments-resource .comment * {
  color: #ffffff !important;
}

/* ===== Caixinha separada pra cada comentário - Copa PG ===== */

.comments-resource .comment {
  border: 1px solid #FFAD22 !important;
  border-radius: 8px !important;
  padding: 15px !important;
  margin-bottom: 15px !important;
  display: block !important;
}

/* ===== Corrige o botão Reply - força saída do absolute ===== */

.comments-resource .comment-footer {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: flex !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding-top: 12px !important;
}

.comments-resource .comment-action.comment-reply {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  display: inline-block !important;
  margin: 0 !important;
  padding: 6px 18px !important;
  font-size: 13px !important;
  background: #003068 !important;
  color: #ECEBD7 !important;
  border-radius: 20px !important;
}