/* Trinity Global Shell — baseline institucional protegido pelo Brand Lock. */
.site-header[data-global-header] { position: fixed; top: 0; right: 0; left: 0; z-index: 30; width: 100%; height: 82px; margin: 0; padding: 0; background: rgba(11, 11, 12, .96); border: 0; box-shadow: none; outline: 0; }
.site-header[data-global-header] .site-header-inner { display: flex; align-items: center; width: var(--wrap); height: 100%; margin-inline: auto; padding-inline: 0; }
.site-header[data-global-header] .brand-main { display: flex; flex: 0 0 auto; align-items: center; width: 188px; height: 62px; overflow: hidden; background: transparent; }
.site-header[data-global-header] .brand-main img { width: 100%; height: 100%; object-fit: contain; object-position: center; transform: none; }
.site-header[data-global-header] .desktop-nav { display: flex; gap: 26px; margin-left: auto; margin-right: 28px; color: #d1ccc0; font-size: 13px; }
.site-header[data-global-header] .desktop-nav a { position: relative; padding: 8px 0; }
.site-header[data-global-header] .desktop-nav a::after { position: absolute; bottom: 2px; left: 0; width: 0; height: 1px; background: var(--gold); content: ""; transition: width .25s ease; }
.site-header[data-global-header] .desktop-nav a:hover::after, .site-header[data-global-header] .desktop-nav a:focus-visible::after { width: 100%; }
.site-header[data-global-header].is-scrolled { background: rgba(11, 11, 12, .82); border: 0; box-shadow: none; outline: 0; backdrop-filter: blur(16px); }

.site-footer[data-global-footer] { padding: 48px 0 26px; background: #090909; }
.global-footer-inner { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: center; width: var(--wrap); max-width: calc(100vw - 32px); margin-inline: auto; }
.global-footer-inner > * { min-width: 0; max-width: 100%; }
.global-footer-inner .footer-top { display: flex; align-items: center; justify-content: center; width: 100%; margin: 0; padding-bottom: 28px; border-bottom: 1px solid var(--line); }
.global-footer-inner .footer-top > .footer-brand { display: block; width: 205px; height: 65px; margin: 0; overflow: hidden; background: transparent; }
.global-footer-inner .footer-brand img { width: 100%; height: 100%; object-fit: contain; object-position: center; transform: none; }
.global-footer-inner .privacy-note { width: min(100%, 820px); margin: 18px 0 14px; color: #aaa398; font-size: 13px; line-height: 1.65; text-align: center; }
.global-footer-inner .privacy-note strong { color: #d7d0c4; font-weight: 600; }
.global-footer-inner .company-details { display: flex; flex-wrap: wrap; justify-content: center; align-items: baseline; gap: 6px 14px; width: 100%; margin: 0; padding: 14px 0 17px; color: #c0b9ad; font-size: 13px; line-height: 1.55; text-align: center; border-bottom: 1px solid rgba(234, 230, 220, .1); }
.global-footer-inner .company-details span { min-width: 0; }
.global-footer-inner .company-details span + span::before { margin-right: 14px; color: rgba(212, 175, 55, .72); content: "•"; }
.global-footer-inner .company-details a { color: #d6c496; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.global-footer-inner .company-details a:hover, .global-footer-inner .company-details a:focus-visible { color: var(--gold); }
.global-footer-inner .footer-bottom { display: grid; grid-template-columns: minmax(0, 1fr); justify-items: center; width: 100%; margin: 0; padding-top: 16px; color: #9d968a; font-size: 12px; line-height: 1.5; text-align: center; }
.global-footer-inner .footer-preview-note { max-width: 100%; }

@media (max-width: 860px) {
  .site-header[data-global-header] { height: 70px; }
  .site-header[data-global-header] .site-header-inner { width: 100%; padding-inline: 20px; }
  .site-header[data-global-header] .brand-main { width: 158px; height: 52px; }
  .site-header[data-global-header] .desktop-nav, .site-header[data-global-header] .desktop-cta { display: none; }
  .site-header[data-global-header] .menu-toggle { display: grid; gap: 5px; margin-left: auto; padding: 9px 0 9px 16px; color: var(--paper); background: transparent; border: 0; }
  .site-header[data-global-header] .menu-toggle span { display: block; width: 25px; height: 1px; background: currentColor; transition: transform .2s; }
  .site-header[data-global-header] .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3px) rotate(45deg); }
  .site-header[data-global-header] .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3px) rotate(-45deg); }
  .site-header[data-global-header] .mobile-nav { position: absolute; top: 70px; right: 0; left: 0; display: grid; gap: 18px; max-height: 0; padding: 0 20px; overflow: hidden; visibility: hidden; pointer-events: none; background: rgba(11, 11, 12, .98); border-bottom: 1px solid transparent; transition: max-height .25s ease, padding .25s ease, visibility .25s ease; }
  .site-header[data-global-header] .mobile-nav.is-open { max-height: 270px; padding: 24px 20px; visibility: visible; pointer-events: auto; border-color: var(--line); }
  .site-header[data-global-header] .mobile-nav a { font-family: var(--display); font-size: 16px; font-weight: 600; }
  .global-footer-inner { max-width: calc(100vw - 40px); }
  .global-footer-inner .footer-top > .footer-brand { width: 176px; height: 56px; }
  .global-footer-inner .privacy-note { margin-top: 16px; font-size: 13px; line-height: 1.62; }
  .global-footer-inner .company-details { display: grid; justify-items: center; gap: 5px; padding: 13px 0 16px; font-size: 13px; line-height: 1.55; }
  .global-footer-inner .company-details span + span::before { display: none; }
  .global-footer-inner .footer-bottom { padding-top: 14px; font-size: 12px; }
}

@media (max-width: 360px) {
  .global-footer-inner { max-width: calc(100vw - 32px); }
  .global-footer-inner .privacy-note { font-size: 12px; }
  .global-footer-inner .company-details { font-size: 12px; }
  .global-footer-inner .footer-bottom { font-size: 12px; }
}
