/* Otávio Cabral — estilos globais */
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
section[id] { scroll-margin-top: 82px; }
body { margin: 0; background: #101435; font-family: 'Instrument Sans', sans-serif; color: #101435; }
img { display: block; }
a { transition: filter .18s ease, color .18s ease, background .18s ease; }

/* Hovers */
header nav a:hover { color: #ffffff; }
a[style*="border-radius: 999px"]:hover { filter: brightness(1.08); }

/* Carrosséis */
@keyframes marqueeL { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes marqueeR { from { transform: translateX(-50%); } to { transform: translateX(0); } }
.oc-track:hover { animation-play-state: paused; }
@keyframes ocNudge { 0%, 100% { transform: translateX(0); } 50% { transform: translateX(7px); } }

/* Galeria */
#oc-gallery-scroller { cursor: grab; scrollbar-width: none; }
#oc-gallery-scroller::-webkit-scrollbar { display: none; }

/* Menu / responsivo */
[data-r="nav-burger"] { display: none; }
#oc-mobile-menu { display: none; }
@media (max-width: 860px) {
  [data-r="nav-links"] { display: none !important; }
  [data-r="nav-burger"] { display: inline-flex !important; }
  header > div:first-child { padding: 14px 18px !important; }
  [data-r="hero"] { min-height: auto !important; flex-direction: column !important; }
  [data-r="hero-overlay"] { display: none !important; }
  .hero-pad { order: 1 !important; background: #151d33 !important; }
  [data-r="hero-bg"] { position: relative !important; inset: auto !important; order: 2 !important; width: 100% !important; height: 340px !important; background-position: 90% center !important; }
  [data-r="hero-bg"]::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, #151d33 0%, transparent 16%, transparent 60%, #151d33 100%); }
  [data-r="hero-h1"] { font-size: 40px !important; }
  h2 { font-size: 30px !important; line-height: 1.15 !important; }
  [data-r="lead"] { font-size: 16px !important; }
  [data-r="grid-2"] { grid-template-columns: 1fr !important; gap: 34px !important; padding-left: 22px !important; padding-right: 22px !important; padding-top: 64px !important; padding-bottom: 64px !important; }
  [data-r="grid-2v"] { grid-template-columns: 1fr !important; gap: 28px !important; margin-top: 44px !important; padding-left: 22px !important; padding-right: 22px !important; }
  [data-r="grid-3"] { grid-template-columns: 1fr !important; }
  [data-r="grid-4"] { grid-template-columns: repeat(2, 1fr) !important; gap: 32px 14px !important; }
  [data-r="grid-4"] > div { border-left: none !important; padding-left: 6px !important; padding-right: 6px !important; }
  [data-r="grid-5"] { grid-template-columns: 1fr !important; }
  [data-r="row"] { grid-template-columns: 1fr !important; gap: 14px !important; text-align: left !important; }
  [data-r="sobre-img"] { width: 100% !important; height: 420px !important; -webkit-mask-image: radial-gradient(ellipse 92% 92% at 50% 40%, #000 70%, rgba(0,0,0,0.35) 90%, transparent 100%) !important; mask-image: radial-gradient(ellipse 92% 92% at 50% 40%, #000 70%, rgba(0,0,0,0.35) 90%, transparent 100%) !important; }
  [data-r="pad"] { padding: 60px 22px !important; }
  [data-r="contato"] { min-height: auto !important; }
  [data-r="contato-h2"] { font-size: 32px !important; }
  [data-r="foot-grid"] { grid-template-columns: repeat(2, auto) !important; gap: 30px 40px !important; }
  #oc-gallery-scroller { padding-left: 22px !important; padding-right: 22px !important; }
  .oc-track > div { flex-basis: 78vw !important; max-width: 330px !important; }
  .oc-track img { height: 84px !important; }
}
