/* Visual recovery: ec8af62 is the approved identity. Only targeted refinements. */
:root { --marapara-muted: #57534e; --marapara-cream: #f2f2eb; }
.marapara-header { background: transparent; transition: background-color 180ms ease, box-shadow 180ms ease; }
.marapara-header.navbar-scrolled { background: rgba(28,25,23,.97); box-shadow: 0 4px 12px #0002; }
.marapara-brand { background: transparent; border-radius: 0; padding: 0; }
.marapara-brand img { max-width: 16.5rem; max-height: 5rem; }
.marapara-primary a { text-transform: uppercase; letter-spacing: .075em; font-size: .75rem; font-weight: 700; }
.marapara-primary .marapara-nav-list { gap: .3rem .9rem; }
.marapara-menu-toggle { color: #fff; background: #1c1917bb; border-radius: 3px; }
.site-main { padding-top: 0; }
.site-main > header:first-child, .site-main > #inicio:first-child { margin-top: 0 !important; }
.site-main > header:first-child { padding-top: max(10rem, calc(var(--header-height) + 3rem)); }
.marapara-front { padding-top: 0; }
.marapara-front #inicio { min-height: 100svh; }
.heading-hero { letter-spacing: -.04em; }
.reveal, .reveal-up { opacity: 1 !important; transform: none; }
.marapara-site #preloader { display: none; }
.section-label { color: var(--text-forest); opacity: 1; }
.marapara-site main :is(h1,h2,h3) { overflow-wrap: anywhere; }
.marapara-site .form-input { font-size: 1rem; min-height: 48px; }
.marapara-site .form-input::placeholder { color: #66615d; opacity: 1; }
.marapara-site .marapara-button { max-width: 100%; overflow-wrap: anywhere; }
.marapara-site .entry-content { overflow-wrap: anywhere; }
.marapara-site .entry-content :is(h2,h3,h4) { text-align: left; }
.marapara-site .entry-content :is(ul,ol) { padding-left: 1.5rem; margin-bottom: 1.5rem; }
.marapara-site .entry-content ul { list-style: disc; }
.marapara-site .entry-content ol { list-style: decimal; }
.marapara-site .entry-content a { color: #236b2c; text-decoration: underline; text-underline-offset: .2em; }
.marapara-site .entry-content figcaption, .marapara-site .entry-content p[style*="color: #777"] { color: #57534e !important; }
.marapara-site .entry-content .wp-block-button__link { color: #fff; background: #2d4a36; text-decoration: none; }
.marapara-site main [class*="text-stone-400"] { color: #57534e; }
.marapara-site main [class*="text-stone-500"] { color: #57534e; }
.marapara-site main [class*="text-[9px]"], .marapara-site main [class*="text-[10px]"], .marapara-site main [class*="text-[11px]"] { font-size: .75rem; }
.marapara-site main :is(.bg-accent,[class~="bg-[#4CAF50]"])[class*="text-white"] { background-color: #236b2c; }
.marapara-site main :is(.text-accent,[class~="text-[#4CAF50]"]) { color: #236b2c; }
.marapara-site main :is(header,.bg-forest,.bg-stone-900,.img-overlay + div,[class*="bg-stone-900/"]) :is(.text-accent,[class~="text-[#4CAF50]"]) { color: #a6dc97; }
.marapara-site :is(a,button):focus-visible { outline-color: #fff; box-shadow: 0 0 0 5px #2d4a36; }
.marapara-site main a[class*="py-3"], .marapara-site main a[class*="py-4"] { min-height: 44px; }
.marapara-site .team-card p { font-size: .875rem; }
.marapara-site .team-card h3 { line-height: 1.3; }
.marapara-site main .cat-links a { color: #a6dc97; }
.marapara-site main .cat-links a:hover { color: #fff; }
.marapara-site main .mix-blend-overlay:is(h1,h2) { mix-blend-mode: normal; }
.marapara-site main [class*="opacity-20"]:is(span,h2,h3) { opacity: 1; }
.marapara-site main [class*="text-white/"] { color: #fff; }
.marapara-site .marapara-exhibit > a { display: block; }
.marapara-exhibit a:focus-visible .absolute.inset-0, .marapara-exhibit a:hover .absolute.inset-0 { opacity: 1; }
.marapara-original-exhibit { display: block; --catalog-offset: 0px; --tilt-x: 0deg; --tilt-y: 0deg; transform: translateY(var(--catalog-offset)) perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)); transition: transform 180ms ease-out; }
.marapara-original-exhibit.reveal { transform: translateY(var(--catalog-offset)) perspective(1000px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)); }
.img-overlay { background: linear-gradient(to top,rgba(22,39,27,.98) 0%,rgba(22,39,27,.35) 32%,transparent 65%); }
.marapara-site #lightbox { width: min(94vw,80rem); max-width: 80rem; max-height: 92dvh; padding: 0; border: 1px solid #ffffff26; border-radius: 14px; color: #f2f2eb; background: #2d4a36; overflow-y: auto; }
.marapara-site #lightbox:not([open]) { display: none; }
.marapara-catalog-dialog-inner { display: grid; grid-template-columns: 1.3fr 1fr; min-height: 32rem; }
.marapara-catalog-dialog-image { display: flex; align-items: center; justify-content: center; min-height: 28rem; background: #151b16; padding: 1.5rem; }
.marapara-site #lb-img { max-width: 100%; max-height: 80dvh; object-fit: contain; }
.marapara-catalog-dialog-copy { padding: 5rem 2.5rem 2.5rem; display: flex; flex-direction: column; justify-content: center; }
.marapara-site #lb-title { font-size: clamp(2rem,4vw,3rem); font-weight: 800; text-transform: uppercase; line-height: 1.1; margin-block: .75rem 1.5rem; }
.marapara-site #lb-desc { font-size: 1rem; line-height: 1.8; white-space: pre-line; }
.marapara-catalog-code, .marapara-catalog-credit { font-size: .875rem; }
.marapara-catalog-credit { margin-top: 1rem; }
.marapara-catalog-category { color: #a6dc97; }
.marapara-site #lightbox-close { position: absolute; z-index: 2; top: 1rem; right: 1rem; min-height: 44px; padding: .5rem 1rem; color: #fff; background: #1c1917; border: 1px solid #fff8; border-radius: 3px; }
.marapara-catalog-controls { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 2rem; }
.marapara-catalog-controls button { min-height: 44px; padding: .5rem 1rem; border: 1px solid #f2f2eb99; border-radius: 3px; }
.marapara-catalog-controls button:disabled { opacity: .5; }
.marapara-text-link { display: inline-flex; min-height: 44px; align-items: center; text-decoration: underline; text-underline-offset: .2em; font-weight: 700; }
.marapara-catalog-dialog-copy > a { margin-top: 1rem; }
.marapara-photographic-heading { position: relative; overflow: hidden; background: #2d4a36; color: #fff; text-align: center; padding: 11rem 1.5rem 5rem; }
.marapara-heading-backdrop { position: absolute; inset: 0; }
.marapara-heading-backdrop img { width: 100%; height: 100%; object-fit: cover; opacity: .35; }
.marapara-heading-backdrop::after { content: ''; position: absolute; inset: 0; background: linear-gradient(#1c191780,#1c1917cc); }
.marapara-heading-grid { position: relative; max-width: 65rem; margin-inline: auto; }
.marapara-photographic-heading h1 { font-size: clamp(2.25rem,4.6vw,4.25rem); line-height: 1.12; font-weight: 800; text-transform: uppercase; }
.marapara-heading-description { max-width: 65ch; margin: 1.5rem auto 0; }
.marapara-heading-grid .marapara-breadcrumb { justify-content: center; }
.communities-page { padding-top: 0; }
.communities-heading { padding: 11rem 0 5rem; text-align: center; background: #2d4a36; }
.communities-heading h1 { margin-inline: auto; text-transform: uppercase; }
.communities-heading .marapara-breadcrumb { justify-content: center; }
.communities-summary { margin-inline: auto; }
.communities-contact { padding: 2rem; background: #fff; border-top: 3px solid #4caf50; box-shadow: 0 4px 18px #1c19170a; }
.marapara-object-layout { display: grid; grid-template-columns: 1.2fr 1fr; align-items: start; gap: 3rem; }
.marapara-object-image img { width: 100%; max-height: 44rem; object-fit: contain; }
.marapara-section { padding-block: 5rem; }
.marapara-site > footer { background: #1c1917; color: #f2f2eb; border-top-color: #4caf50; }
.marapara-site > footer h2 { color: #a6dc97; }
.marapara-site > footer :is(.grid,.grid>div,.grid>div>div,p) { min-width: 0; max-width: 100%; }
.marapara-site > footer :is(a,p,h2) { overflow-wrap: anywhere; }
.marapara-site > footer a { display: inline-flex; align-items: center; min-height: 44px; }
.marapara-site > footer .opacity-80 { opacity: 1; }
.marapara-site .woo-product-card .price,.marapara-site .woocommerce div.product p.price { color: #236b2c !important; }
.marapara-commerce-content .wc-block-components-button:not(.is-link) { color: #fff; background: #2d4a36; min-height: 44px; }
.marapara-site .woocommerce .show-password-input { width: 44px; height: 44px; top: 0; right: 0; }
.marapara-art-approved { max-width: 76rem; margin-inline: auto; padding: 2rem; }
.marapara-art-approved img { width: 100%; max-height: 10rem; object-fit: contain; }
.marapara-art-approved figcaption { text-align: center; font-size: .875rem; }
@media(min-width:1024px) { .marapara-original-exhibit.lg\:translate-y-16 { --catalog-offset: 4rem; } }
@media(max-width:767px) {
 .marapara-brand { max-width: 57%; }
 .marapara-brand img { max-height: 4rem; max-width: 100%; }
 .marapara-site main .entry-content [style*="display: flex"] { flex-wrap: wrap; }
 .marapara-site main .entry-content [style*="display: flex"] > img { width: 100% !important; height: auto !important; }
 .marapara-catalog-dialog-inner, .marapara-object-layout { grid-template-columns: 1fr; }
 .marapara-catalog-dialog-image { height: 45dvh; min-height: 0; padding: 1rem; }
 .marapara-site #lb-img { max-height: 40dvh; }
 .marapara-catalog-dialog-copy { padding: 1.5rem; }
 .marapara-site main header h1 { font-size: clamp(2rem,10vw,3.25rem); }
 .communities-contact { padding: 1.5rem; }
}
@media(hover:none) { .marapara-exhibit .absolute.inset-0 { opacity: 1; background: rgba(28,25,23,.6); } }
@media(prefers-reduced-motion:reduce) { .marapara-original-exhibit,.marapara-original-exhibit.reveal { transform: translateY(var(--catalog-offset)); transition: none; } .marapara-header { transition: none; } }

/* Contrast corrections stay scoped to their surfaces and preserve editorial footers. */
.single-projeto .site-main .opacity-50 { opacity: 1; }
.marapara-site .woocommerce-result-count { color: #57534e; }
.marapara-site .woo-product-card :is(.text-accent,[class~="text-[#4CAF50]"]) { color: #236b2c; }
