:root { --gold-ink: #80641c; --muted-blue: #365e80; scroll-padding-top: calc(var(--site-header-height, 88px) + .5rem); scrollbar-color: #a48832 #f5f7fa; scrollbar-width: thin; }
body { isolation: isolate; }
::selection { background: #d7b369; color: #003b6d; }
a, button, select { touch-action: manipulation; -webkit-tap-highlight-color: transparent; }
a { text-underline-offset: .3em; }
:focus-visible { outline: 2px solid #80641c; outline-offset: 5px; }
#frota :focus-visible, #contato :focus-visible { outline-color: #d7b369; }
#conteudo:focus { outline: none; }
.skip-link { position: fixed; top: .75rem; left: .75rem; z-index: 1000; padding: .75rem 1rem; background: #003b6d; color: white; transform: translateY(-200%); }
.skip-link:focus { transform: translateY(0); }
[class~="text-[9px]"], [class~="text-[11px]"] { font-size: .6875rem; }
.tracking-tighter { letter-spacing: -.04em; }
.text-metal-gold { background-image: linear-gradient(135deg,#a48832 10%,#8a7028 50%,#6e5621 90%); }
[class~="text-industrialBlue/50"], [class~="text-industrialBlue/60"], [class~="text-industrialBlue/70"] { color: var(--muted-blue); }
.custom-cursor { opacity: 0; top: -10px; left: -10px; transition: opacity 150ms; }

#contato { padding-bottom: 2rem; scroll-margin-top: 0; }
#contato .text-metal-gold { background-image: linear-gradient(135deg,#d7b369 10%,#a48832 90%); }
#contato [class~="text-white/50"], #contato [class~="text-white/40"], #contato [class~="text-white/30"] { color: #c9dce9; }

#video-modal { width: min(64rem,calc(100% - 2rem)); max-height: calc(100svh - 7rem); padding: 0; border: 0; overflow: visible; background: transparent; color: white; }
#video-modal::backdrop { background: rgb(0 59 109 / 96%); }
#video-modal video { display: block; width: 100%; max-height: calc(100svh - 8rem); aspect-ratio: 16 / 9; object-fit: contain; background: #001e37; }
#close-modal-btn { position: fixed; top: 1rem; right: 1.5rem; display: flex; align-items: center; justify-content: center; gap: .5rem; min-height: 44px; padding: .5rem; color: white; font-size: .75rem; letter-spacing: .08em; text-transform: uppercase; }
#close-modal-btn:focus-visible { outline-color: #d7b369; }
#video-status { margin-top: 1rem; padding: 1rem; color: white; }

@media (hover: none), (pointer: coarse) { .custom-cursor { display: none; } }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  .custom-cursor { display: none; }
  body :not(.upsig):not(.upsig *) { animation: none !important; transition-duration: 0s !important; }
}

