/**
 * TEMPORARY visual test — white + green palette (staging only).
 * Revert: remove the late enqueue block in functions.php and delete this file
 * (or restore both from entrega/backup-theme-test-white-green/).
 *
 * Palette:
 *   bg #f5f8f5 | panel #ffffff | text #142018
 *   muted #5a6b5e | accent #1b7a3d | accent-hover #146633
 *   line #1420181f | soft #e7f2ea | ink-on-accent #ffffff
 */

:root {
  --bg: #f5f8f5;
  --panel: #ffffff;
  --text: #142018;
  --muted: #5a6b5e;
  --accent: #1b7a3d;
  --accent-hover: #146633;
  --line: #1420181f;
  --soft: #e7f2ea;
  --focus: #1b7a3d;
  /* Vagas listing: override dark public.css leftovers */
  --vacancy-row-hover-bg: #e7f2ea;
  --vacancy-row-hover-line: #1b7a3d45;
  --vacancy-cta-line: #1b7a3d70;
  --vacancies-list-bg: #ffffff;
  --vacancies-list-shadow: 0 16px 40px #14201814;
  --vacancies-count-border: #ffffff55;
  color-scheme: light;
}

/* —— site chrome (beat interior-hero + navigation-tree #000 header) —— */
body[class] .site-header,
body[class] .site-header:is(.motion-header-scrolled, .motion-menu-is-open),
body .site-header.navigation-tree-header,
body .site-header.navigation-tree-header.motion-header-scrolled,
body .site-header.navigation-tree-header.motion-menu-is-open,
body.page-index .site-header,
body.page-index .site-header.motion-header-scrolled,
body.page-index .site-header.motion-menu-is-open {
  background: #f5f8f5f2;
  backdrop-filter: blur(16px);
  border-bottom-color: var(--line);
  box-shadow: 0 8px 24px #14201812;
  color: var(--text);
}

body[class] .site-header .navigation > a,
body[class] .site-header .navigation-tree > a,
body[class] .site-header .menu-toggle,
body.page-index .site-header .navigation > a,
body.page-index .site-header .navigation-tree > a,
body.page-index .site-header .menu-toggle {
  color: var(--text);
  text-shadow: none;
}

body[class] .site-header .navigation > a:hover,
body[class] .site-header .navigation > a[aria-current='page'],
body[class] .site-header .navigation-tree > a:hover,
body[class] .site-header .navigation-tree > a[aria-current='page'] {
  color: var(--accent);
}

body[class] .site-header .navigation > a:focus-visible,
body[class] .site-header .navigation-tree > a:focus-visible {
  outline-color: var(--accent);
}

/* Nav hover/current underline: gold #cfb18b → light green (motion-interactions hardcode) */
@media (min-width: 951px) {
  body[class] .navigation a::after,
  body[class] .site-header .navigation a::after,
  body[class] .site-header .navigation-tree > a::after,
  .navigation a::after {
    background: #5cb87a;
  }
}

.navigation a[aria-current='page']::after,
.site-header .navigation a[aria-current='page']::after {
  background: #5cb87a;
}

/* Logo: transparent PNG + kill dark-theme invert/screen that paints a white box. */
body[class] .brand,
body[class] .brand img,
body[class] .footer-logo,
body[class] .footer-logo img,
body[class] .footer-rebuilt .footer-logo,
body[class] .footer-rebuilt .footer-logo img,
body .footer-logo,
body .footer-logo img,
.brand,
.brand img,
.footer-logo,
.footer-logo img {
  filter: none !important;
  -webkit-filter: none !important;
  mix-blend-mode: normal !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

/* Desktop: nav must share header bg — no inset white panel. */
body[class] .site-header .navigation,
body[class] .site-header .navigation-tree,
body .site-header .navigation,
body .site-header .navigation-tree,
.site-header .navigation,
.site-header .navigation-tree {
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: var(--text);
}

/* Mobile drawer only: solid sheet matching page chrome (not a header inset). */
@media (max-width: 1279px) {
  body[class] .site-header .navigation-tree.open,
  body[class] .site-header .navigation.open,
  body .site-header .navigation-tree.open,
  body .site-header .navigation.open,
  .site-header .navigation-tree.open,
  .site-header .navigation.open {
    background: #f5f8f5 !important;
    background-color: #f5f8f5 !important;
    border-bottom-color: var(--line);
    box-shadow: 0 18px 28px #14201818;
  }

  body[class] .site-header .navigation-tree > a,
  body[class] .site-header .navigation > a,
  .site-header .navigation-tree > a,
  .site-header .navigation > a {
    border-bottom-color: var(--line);
    color: var(--text);
  }
}

.menu-toggle[aria-expanded='true'] {
  color: var(--accent);
  border-color: #1b7a3d90;
  background: #1b7a3d0d;
}

/* Hero secondary CTA: readable on busy photo */
.industrial-hero .button-ghost,
.page-index .industrial-hero .button-ghost {
  background: #0c1a1266;
  color: #ffffff;
  border-color: #ffffffcc;
}

.industrial-hero .button-ghost:hover,
.page-index .industrial-hero .button-ghost:hover {
  background: #ffffff;
  color: #142018;
  border-color: #ffffff;
}

.careers-callout .button,
.careers-callout .button-outline {
  background: var(--accent);
  color: #ffffff;
  border-color: var(--accent);
}

.careers-callout .button:hover,
.careers-callout .button-outline:hover {
  background: #146633;
  border-color: #146633;
  color: #ffffff;
}

.sector-strip {
  background: #e7f2ea;
}

.sector-strip span {
  color: #3d5244;
}

/* —— ETAR: castanha/bege #ded8ca → verde claro —— */
.etar-feature {
  background: #e7f2ea;
  color: #142018;
}

.etar-copy .eyebrow {
  color: #1b7a3d;
}

.etar-copy > p:not(.eyebrow),
.etar-photo figcaption {
  color: #5a6b5e;
}

.etar-copy strong {
  color: #142018;
}

.etar-copy .text-link {
  border-color: #1b7a3d70;
  color: #1b7a3d;
}

.etar-copy a:focus-visible {
  outline-color: #1b7a3d;
}

.site-footer {
  background: #eef4ef;
}

.footer-rebuilt {
  background: #eef4ef;
  color: var(--text);
  border-top-color: var(--line);
}

.footer-column-title {
  color: var(--text);
}

.footer-column a,
.footer-legal-items,
.footer-legal-items a.footer-legal-link,
.footer-legal-items .footer-cookie-control .ic-policy,
.footer-top-link,
.footer-main p,
.footer-main a:not(.brand) {
  color: #3d5244;
}

.footer-column a:hover,
.footer-legal-items a.footer-legal-link:hover,
.footer-legal-items .footer-cookie-control .ic-policy:hover,
.footer-legal-items .footer-cookie-control button:hover,
.footer-top-link:hover {
  color: var(--accent);
}

.footer-column a:focus-visible,
.footer-top-link:focus-visible {
  outline-color: var(--accent);
}

.footer-bottom {
  border-top-color: var(--line);
}

.footer-legal-items > * + *::before,
.footer-legal-items .footer-cookie-control > a + button::before {
  color: #6f7f72;
}

.footer-legal-items .footer-cookie-control button {
  color: #3d5244;
  border-color: #8a9a8c;
}

.footer-legal {
  color: #6f7f72;
}

/* —— CTAs —— */
.button {
  color: #ffffff;
  background: var(--accent);
  border-color: var(--accent);
}

.button:hover {
  background: #146633;
  border-color: #146633;
  color: #ffffff;
}

.button-ghost {
  background: #14201814;
  color: var(--text);
  border-color: #14201855;
}

.button-ghost:hover {
  background: var(--accent);
  color: #ffffff;
  border-color: var(--accent);
}

.button-outline:hover {
  color: var(--accent);
  border-color: #1b7a3d70;
}

.text-link {
  border-bottom-color: #1b7a3d70;
}

.text-link:hover,
.document-link:hover {
  color: #146633;
}

/* —— heroes / photo overlays (light type stays on photos) —— */
.hero-content > .eyebrow {
  color: #d8f0e0;
}

.hero-content h1,
.hero-subtitle,
.hero-foot {
  color: #f5faf6;
}

.hero-shade,
.page-index .hero-shade {
  background:
    linear-gradient(180deg, #08100830, #08100818 60%, #081008a6),
    radial-gradient(ellipse at 50% 48%, #0c1a12a6, #0c1a1226 76%);
}

.page-empresa .company-process-band:after,
.page-sustentabilidade .sustainability-photo-band:after {
  background: linear-gradient(transparent, #0c1a12c9);
}

.vacancies-intro-shade {
  background:
    linear-gradient(105deg, #0c1a12f2 0%, #0c1a12b8 42%, #0c1a1266 100%),
    linear-gradient(0deg, #0c1a12e6, transparent 55%);
}

/* Vagas list: readable rows on green+white (public.css still uses #141a14 hover) */
.vacancies-list {
  background: var(--vacancies-list-bg);
  box-shadow: var(--vacancies-list-shadow);
}

.vacancy-row--rich:hover,
.vacancy-row--rich:focus-within {
  border-color: var(--vacancy-row-hover-line);
  background: var(--vacancy-row-hover-bg);
}

.vacancy-row--rich:hover .vacancy-row-cta,
.vacancy-row-cta:hover {
  color: var(--accent-hover);
  border-color: transparent;
}

/* Hero count: dark --text was invisible on dark intro band (floating «4») */
.vacancies-intro-copy .vacancies-count {
  color: #e8f3eb;
}

.vacancies-intro-copy .vacancies-count-value {
  border-color: var(--vacancies-count-border);
  color: #c5ebcf;
  background: #ffffff18;
}

/* Underline label only — keep ↗ outside the line */
.vacancy-row-cta {
  border-bottom-color: transparent !important;
  background-image: linear-gradient(currentColor, currentColor);
  background-position: left calc(100% - 1px);
  background-repeat: no-repeat;
  background-size: calc(100% - 1.85em) 1px;
}

.hero-video-toggle,
.hero-video-unavailable .hero-video-status {
  background: #0c1a12eb;
  color: #f5faf6;
  border-color: #ffffff90;
}

.hero-video-toggle:hover:not(:disabled) {
  background: var(--accent);
  color: #ffffff;
  border-color: var(--accent);
}

.hero-video-toggle:focus-visible {
  outline-color: var(--accent);
}

/* —— forms —— */
.careers-form input:not([type='checkbox']):not([type='hidden']),
.careers-form textarea,
.careers-form select {
  border: 1px solid #14201833;
  background: #ffffff;
  color: var(--text);
}

.careers-form input::placeholder {
  color: #6f7f72;
}

.careers-form-panel .careers-fieldset.mod016-section {
  background: #ffffff;
  border-color: var(--line);
}

/* Keep focus ring on the control; large outline-offset from global styles bleeds into labels */
.careers-application--mod016 .careers-form input:not([type='checkbox']):not([type='hidden']):not([type='file']):focus-visible,
.careers-application--mod016 .careers-form textarea:focus-visible,
.careers-application--mod016 .careers-form select:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 0;
  border-color: var(--accent);
  box-shadow: none;
}

.careers-form .mod016-options {
  background: var(--soft, #e7f2ea);
  border: 1px solid var(--line);
  color: var(--text);
}

.catalogue-toolbar select {
  background: #ffffff;
  color: var(--text);
  border-color: var(--line);
}

.close-dialog {
  background: #ffffff;
  color: var(--text);
}

.product-dialog::backdrop {
  background: #0c1a12cc;
}

.product-open figure {
  background: #e7f2ea;
}

.image-corner {
  background: #ffffffcb;
  border-color: #14201840;
  color: var(--text);
}

/* —— home intro / news —— */
.page-index .intro-section.home-intro {
  border-bottom-color: var(--line);
}

.page-index .home-intro .home-section-cta,
.page-index .home-production-preview .home-section-cta {
  border-color: #1b7a3d55;
  border-bottom-color: #1b7a3d85;
  background: #1b7a3d08;
  color: var(--accent);
}

@media (hover: hover) and (pointer: fine) {
  .page-index .home-intro .home-section-cta:hover,
  .page-index .home-production-preview .home-section-cta:hover {
    background: #1b7a3d14;
    border-color: #1b7a3d90;
    color: #146633;
  }

  .page-index .home-production-preview .photo-link:hover .image-corner {
    background: var(--accent);
    color: #ffffff;
    border-color: var(--accent);
  }
}

.page-index .home-intro .home-section-cta:focus-visible,
.page-index .home-production-preview .home-section-cta:focus-visible {
  background: #1b7a3d14;
  border-color: var(--accent);
}

.inducol-home-news-ticker-all,
.inducol-home-vacancy-detail {
  border-bottom-color: #1b7a3d70;
}

/* —— quality loop —— */
.quality-loop-layout {
  background: #e7f2ea;
  border-block-color: #1b7a3d35;
}

.quality-loop-label {
  color: var(--accent);
}

.quality-loop-copy h2 {
  color: var(--text);
}

.quality-loop-description {
  color: var(--muted);
}

.quality-loop-rule {
  background: #1b7a3d80;
}

.quality-loop-signature {
  color: var(--muted);
}

.quality-loop-toggle:hover {
  color: #146633;
}

.quality-loop-toggle:focus-visible {
  outline-color: var(--accent);
}

.quality-loop-section--tests .quality-loop-visual {
  border-color: #1b7a3d45;
}

.quality-loop-section--tests[data-playback-state='playing'] .quality-loop-visual {
  border-color: #1b7a3d80;
}

/* —— gallery / news / contactos —— */
.product-gallery-track {
  scrollbar-color: #1b7a3d80 #1420180d;
}

.product-gallery-arrows button {
  border-color: #1b7a3d75;
}

.product-gallery-arrows button:hover:not(:disabled) {
  background: var(--accent);
  border-color: var(--accent);
  color: #ffffff;
}

.page-noticias .inducol-noticias-apply-cta,
.news-editorial-card .news-editorial-more,
.inducol-noticias-page .inducol-home-news-ticker-all {
  border-bottom-color: #1b7a3d70;
}

.contactos-v21__map {
  border-top-color: #1b7a3d66;
}

/* —— compromissos / ambiente —— */
.compromissos-page,
.compromissos-catalog {
  --compromissos-ink: #142018;
  --compromissos-muted: #5a6b5e;
  --compromissos-line: #1420181f;
  --compromissos-accent: #1b7a3d;
  --compromissos-panel: #ffffff;
  --compromissos-deep: #f5f8f5;
  color: var(--compromissos-ink);
  background: linear-gradient(180deg, #f5f8f5 0%, #eef4ef 38%, #f5f8f5 100%);
}

.compromissos-catalog {
  background: linear-gradient(180deg, #eef4ef 0%, #f5f8f5 55%, #ffffff 100%);
}

.compromissos-page-head h1,
.compromissos-catalog-intro h2 {
  color: #142018;
}

.compromissos-catalog .inducol-docs-card--compact:hover {
  border-bottom-color: #1b7a3d66;
}

.compromissos-catalog .inducol-docs-mark {
  --docs-icon-color: #1b7a3d !important;
  background-color: #1b7a3d !important;
  background-image: none !important;
}

.compromissos-catalog .inducol-docs-card--compact,
#documentos-sustentabilidade .inducol-docs-card--compact {
  --docs-visual: 200px;
}

.compromissos-catalog .inducol-docs-thumb {
  --docs-visual: 200px;
  width: var(--docs-visual, 200px);
  aspect-ratio: 8 / 5;
  height: auto;
  background: #e7f2ea;
  border-color: #1b7a3d55;
  padding: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.compromissos-catalog .inducol-docs-thumb--icon {
  background: #e7f2ea;
  border-color: #1b7a3d66;
  padding: 20px;
}

.compromissos-catalog .inducol-docs-card--compact .inducol-docs-thumb .inducol-docs-mark {
  width: 58%;
  height: 58%;
  max-width: 72px;
  max-height: 72px;
  flex: 0 0 auto;
}

/* Capas: fit inside padded frame — never cover-crop / overflow-clip badges */
.compromissos-catalog .inducol-docs-thumb img,
.compromissos-catalog .inducol-docs-media .inducol-docs-cover,
.compromissos-catalog .inducol-docs-cover {
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  min-width: 0;
  min-height: 0;
  object-fit: contain !important;
  object-position: center;
  flex: 0 1 auto;
}

.compromissos-catalog .inducol-docs-more,
.compromissos-catalog .inducol-docs-lang,
.compromissos-catalog .inducol-docs-download {
  border-bottom-color: #1b7a3d55;
  color: var(--compromissos-accent);
}

.compromissos-catalog .inducol-docs-more:hover,
.compromissos-catalog a.inducol-docs-lang:hover,
.compromissos-catalog .inducol-docs-download:hover {
  border-bottom-color: #1b7a3d;
}

.compromissos-catalog .inducol-docs-lang {
  border-color: #1b7a3d55;
}

.compromissos-catalog a.inducol-docs-lang:hover {
  border-color: #1b7a3d;
  background: #1b7a3d18;
}

/* —— motion / interior —— */
.product-open figure::after {
  background: #fffffff0;
  border-color: #1b7a3d90;
  color: var(--text);
}

.product-open:focus-visible > div,
.product-open:hover > div {
  border-color: var(--accent);
}

.product-open:focus-visible .image-corner,
.product-open:hover .image-corner,
.photo-link:focus-visible .image-corner,
.photo-link:hover .image-corner {
  background: var(--accent);
  color: #ffffff;
  border-color: var(--accent);
}

.interior-hero-shade {
  background: linear-gradient(180deg, #0c1a12d9, #0c1a1265 74%, #0c1a1200);
}

.interior-photo-prev,
.interior-photo-next {
  background: #ffffff45;
  color: #f5faf6;
}

.interior-photo-next:hover {
  background: #ffffffb3;
  border-color: var(--accent);
  color: var(--text);
}

.interior-topic-nav > a .eyebrow,
.interior-topic-arrow {
  color: var(--accent);
}

.interior-topic-nav > a:hover {
  background: #1b7a3d08;
  border-bottom-color: #1b7a3d;
}

.policy-panel:focus-within {
  outline-color: var(--accent);
}
