/* Metalabs | site styles */
html { scroll-behavior: smooth; }
@keyframes mlDrift { 0%, 100% { transform: translate3d(0,0,0) scale(1); } 50% { transform: translate3d(-4%,3%,0) scale(1.08); } }
@keyframes mlFloat { 0%, 100% { transform: rotate(2.5deg) translateY(0); } 50% { transform: rotate(1.8deg) translateY(-12px); } }
[data-drift] { animation: mlDrift 16s ease-in-out infinite; will-change: transform; }
[data-float] { animation: mlFloat 8s ease-in-out infinite; }
html.ml-anim [data-reveal]:not([data-in]) { opacity: 0; }
html.ml-still [data-drift], html.ml-still [data-float] { animation: none !important; }
@media (prefers-reduced-motion: reduce) { [data-drift], [data-float] { animation: none !important; } }
@keyframes mlSweep { 0% { transform: translateX(-100%); } 100% { transform: translateX(190%); } }
[data-sweep] { animation: mlSweep 2.8s cubic-bezier(.45,0,.25,1) infinite; will-change: transform; }
a:nth-child(2) > [data-sweep] { animation-delay: -0.9s; }
a:nth-child(3) > [data-sweep] { animation-delay: -1.8s; }
html.ml-still [data-sweep] { animation: none !important; transform: none; width: 100%; }
@media (prefers-reduced-motion: reduce) { [data-sweep] { animation: none !important; width: 100%; } }
@keyframes mlPing { 0% { transform: scale(0.35); opacity: 0.9; } 70% { transform: scale(1.7); opacity: 0; } 100% { transform: scale(1.7); opacity: 0; } }
/* cross-browser fallbacks */
nav[style*="blur(14px)"] { -webkit-backdrop-filter: blur(14px); }
div[style*="backdrop-filter: blur(6px)"] { -webkit-backdrop-filter: blur(6px); }
div[style*="mask-image"] { -webkit-mask-image: radial-gradient(ellipse 70% 60% at 80% 30%, black, transparent); }
img { max-width: 100%; }
/* mobile responsive overrides */
@media (max-width: 860px) {
  [style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  [style*="repeat(5, 1fr)"] { grid-template-columns: repeat(2, 1fr) !important; }
  nav > div:first-child { height: 66px !important; padding: 0 20px !important; }
  [data-nav-desktop] { display: none !important; }
  [data-nav-burger] { display: flex !important; }
  h1 { font-size: clamp(34px, 9.5vw, 46px) !important; letter-spacing: -1.1px !important; }
  h2 { font-size: clamp(26px, 7.5vw, 36px) !important; letter-spacing: -0.9px !important; }
  h1 span[style*="font-size: 32px"] { font-size: 22px !important; }
  h3[style*="font-size: 34px"] { font-size: 24px !important; }
  p[style*="font-size: 30px"] { font-size: 22px !important; }
  [style*="padding: 164px 32px"] { padding: 140px 20px 72px !important; }
  [style*="padding: 110px 32px"] { padding: 64px 20px !important; }
  [style*="padding: 120px 32px"] { padding: 72px 20px !important; }
  [style*="padding: 100px 32px"] { padding: 64px 20px !important; }
  [style*="padding: 0 32px 96px"] { padding: 0 20px 64px !important; }
  [style*="padding: 36px 32px"] { padding: 32px 20px !important; }
  [style*="padding: 44px 48px"] { padding: 28px 22px !important; }
  [style*="padding: 48px"] { padding: 28px 22px !important; }
  footer { padding: 56px 20px 40px !important; }
  div[style*="align-items: flex-end"] { flex-wrap: wrap !important; }
  div[style*="min-height: 560px"] { min-height: 0 !important; }
  footer div[style*="justify-content: space-between"] { flex-wrap: wrap; gap: 8px; }
  [data-map-fade-left], [data-map-fade-right] { display: block !important; }
  [data-map-arrow] { display: flex !important; }
  [data-map-dots] { display: flex !important; }
  [style*="min-width: 620px"] { min-width: 420px !important; padding-right: 40px !important; }
  [style*="grid-column: span 3"] { grid-column: auto !important; flex-wrap: wrap; gap: 12px !important; }
  [data-map-arrow] { width: 44px !important; height: 44px !important; }
  a[href^="tel:"], a[href^="mailto:"] { display: inline-block; padding: 12px 0; }
  [style*="repeat(5, minmax(0, 1fr))"] { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
  [style*="repeat(5, minmax(0, 1fr))"] span { font-size: 11px !important; }
}
body { margin: 0; background: #ffffff; font-family: 'Archivo', Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; }
