/* ==========================================================================
   ETS Tech — Base styles
   Reset, typography, keyframes and responsive rules shared by every page.
   ========================================================================== */

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; font-family: 'Inter', system-ui, sans-serif; color: #4a5568; background: #f5f7fa; -webkit-font-smoothing: antialiased; }
a { color: #0f5470; text-decoration: none; }
a:hover { color: #2eb8eb; }
h1, h2, h3, h4 { font-family: 'Space Grotesk', sans-serif; color: #0a1929; margin: 0; }

@keyframes floatA { 0%,100%{ transform:translate(0,0) scale(1);} 50%{ transform:translate(60px,-40px) scale(1.15);} }
@keyframes floatB { 0%,100%{ transform:translate(0,0) scale(1);} 50%{ transform:translate(-70px,50px) scale(1.1);} }
@keyframes floatC { 0%,100%{ transform:translate(0,0) scale(1);} 50%{ transform:translate(40px,60px) scale(1.2);} }

/* Layout shell used to host the fixed background blobs behind page content */
.page-shell { position:relative; width:100%; overflow-x:hidden; }
.bg-decor { position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none; }
.content-layer { position:relative; z-index:1; }

/* Mobile hamburger nav, shared markup/behaviour across every page */
[data-burger] { display:none; }
#mnav-overlay { display:none; position:absolute; top:100%; left:0; right:0; opacity:0; pointer-events:none; transform:translateY(-8px); transition:opacity .28s ease, transform .28s ease; }
#mnav-overlay.open { opacity:1; pointer-events:auto; transform:translateY(0); }

@media (max-width:767px) {
  [data-desk-nav] { display:none !important; }
  [data-burger] { display:flex !important; }
  #mnav-overlay { display:block !important; }
  /* giảm blur để tránh giật trên máy yếu */
  [data-glass]:not(.td-cta):not(.contact-cta) { backdrop-filter:blur(10px) !important; -webkit-backdrop-filter:blur(10px) !important; background:rgba(255,255,255,.9) !important; }
}

@media (prefers-reduced-motion: reduce) {
  [data-blob] { animation:none !important; }
}
