html { scroll-behavior: smooth; }
  body { margin: 0; background: #faf9f7; color: #1c1815; font-family: 'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif; -webkit-font-smoothing: antialiased; }
  a { color: #db5126; text-decoration: none; }
  a:hover { color: #1c1815; }
  input, textarea, button { font-family: inherit; }
  [data-reveal] { transition: opacity .8s cubic-bezier(.2,.6,.2,1), transform .8s cubic-bezier(.2,.6,.2,1); }
  [data-reveal="out"] { opacity: 0; transform: translateY(18px); }
  @keyframes buyoHeroIn { from { opacity: 0; transform: translateX(-32px); } to { opacity: 1; transform: none; } }
  [data-hero-in] { animation: buyoHeroIn 1s cubic-bezier(.2,.6,.2,1) both; }
  [data-hero-in="2"] { animation-delay: .14s; }
  @keyframes buyoFloat { 0%,100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-18px) rotate(4deg); } }
  @keyframes buyoFloat2 { 0%,100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(14px) rotate(-3deg); } }
  @keyframes buyoPulse { 0%,100% { opacity: .3; transform: scale(1); } 50% { opacity: .7; transform: scale(1.12); } }
  @keyframes buyoDrift { 0% { transform: translateY(0); } 50% { transform: translateY(-10px); } 100% { transform: translateY(0); } }
  @keyframes buyoMorph {
    0%   { transform: translate3d(0,0,0) scale(1); opacity: .55; }
    33%  { transform: translate3d(4%,-3%,0) scale(1.08); opacity: .75; }
    66%  { transform: translate3d(-3%,3%,0) scale(1.04); opacity: .6; }
    100% { transform: translate3d(0,0,0) scale(1); opacity: .55; }
  }
  @keyframes buyoCline { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateY(0); } }
  @keyframes buyoFadeUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
  @keyframes buyoModuleFade { from { opacity: 0; } to { opacity: 1; } }
  @keyframes buyoOrbitRotate { 0%, 100% { transform: rotate(-1.6deg); } 50% { transform: rotate(1.6deg); } }
  @keyframes buyoLineDraw { from { stroke-dashoffset: 44; } to { stroke-dashoffset: 0; } }
  @keyframes buyoLineGlow { 0%, 100% { opacity: .28; } 50% { opacity: .58; } }
  @keyframes buyoHubGlow { 0%, 100% { box-shadow: 0 1px 2px rgba(28,24,21,.06), 0 26px 50px -20px rgba(219,81,38,.30); } 50% { box-shadow: 0 1px 2px rgba(28,24,21,.06), 0 30px 58px -18px rgba(219,81,38,.42); } }
  [data-sweep] { position: relative; overflow: hidden; }
  [data-sweep]::after {
    content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 2;
    background: linear-gradient(112deg, transparent 34%, rgba(255,255,255,.62) 50%, transparent 66%);
    transform: translateX(-130%);
    transition: transform 1.15s cubic-bezier(.22,.61,.36,1);
  }
  [data-sweep]:hover::after { transform: translateX(130%); }
  [data-sweep] [data-arrow] { transform: translateX(0); }
  [data-sweep]:hover [data-arrow] { transform: translateX(5px); }
  [data-float] { animation: buyoDrift 12s ease-in-out infinite; transition: transform .7s cubic-bezier(.22,.61,.36,1); }
  [data-sweep]:hover [data-float] { animation-play-state: paused; transform: scale(1.05); }
  [data-navlink] { position: relative; }
  [data-navlink]::after {
    content: ''; position: absolute; left: 0; right: 0; bottom: -5px; height: 1px; background: #1c1815;
    transform: scaleX(0); transform-origin: 0 50%;
    transition: transform .55s cubic-bezier(.22,.61,.36,1);
  }
  [data-navlink]:hover::after { transform: scaleX(1); }
  @media (prefers-reduced-motion: reduce) {
    [data-reveal] { transition: none !important; }
    [data-reveal="out"] { opacity: 1 !important; transform: none !important; }
    [data-sweep]::after { display: none; }
    [style*="buyoCline"] { opacity: 1 !important; animation: none !important; }
    [style*="buyoFloat"], [style*="buyoFloat2"], [style*="buyoPulse"] { animation: none !important; opacity: 0.3 !important; }
    [style*="buyoFadeUp"], [style*="buyoModuleFade"] { opacity: 1 !important; transform: none !important; animation: none !important; }
    [style*="buyoOrbitRotate"] { animation: none !important; transform: none !important; }
    [style*="buyoLineDraw"] { stroke-dashoffset: 0 !important; animation: none !important; }
    [style*="buyoLineGlow"] { opacity: .4 !important; }
    [style*="buyoHubGlow"] { animation: none !important; }
    [data-module-card] { opacity: 1 !important; }
  }

[data-hv="hv1"]:hover{color:#1c1815}
[data-hv="hv2"]:hover{color:#1c1815}
[data-hv="hv3"]:hover{color:#1c1815}
[data-hv="hv4"]:hover{color:#1c1815}
[data-hv="hv5"]:hover{background:#db5126;color:#FFFFFF}
[data-hv="hv6"]:hover{background:#c2431b;box-shadow:0 1px 2px rgba(28,24,21,.08), 0 12px 32px rgba(219,81,38,.22);transform:translateY(-2px)}
[data-hv="hv7"]:hover{border-color:#cbc4bc;color:#1c1815;transform:translateY(-2px)}
[data-hv="hv8"]:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(28,24,21,.04), 0 18px 40px -18px rgba(28,24,21,.16);border-color:#cbc4bc}
[data-hv="hv9"]:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(28,24,21,.04), 0 18px 40px -18px rgba(28,24,21,.16);border-color:#cbc4bc}
[data-hv="hv10"]:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(28,24,21,.04), 0 18px 40px -18px rgba(28,24,21,.16);border-color:#cbc4bc}
[data-hv="hv11"]:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(28,24,21,.04), 0 18px 40px -18px rgba(28,24,21,.16);border-color:#cbc4bc}
[data-hv="hv14"]:hover{transform:translateY(-5px);box-shadow:0 1px 2px rgba(28,24,21,.04), 0 26px 54px -26px rgba(28,24,21,.20);border-color:#cbc4bc;color:#1c1815}
[data-hv="hv17"]:hover{border-color:#f7cab2;background:rgba(219,81,38,0.04);color:#1c1815}
[data-hv="hv18"]:hover{color:#db5126}
[data-hv="hv19"]:hover{color:#db5126}
[data-hv="hv20"]:hover{background:#db5126}
[data-hv="hv21"]:hover{color:#1c1815}
[data-hv="hv22"]:hover{color:#1c1815}
[data-hv="hv23"]:hover{color:#1c1815}
[data-hv="hv24"]:hover{color:#1c1815}
[data-hv="hv25"]:hover{color:#1c1815}
[data-hv="hv26"]:hover{color:#1c1815}
[data-hv="hv27"]:hover{color:#1c1815}
[data-hv="hv28"]:hover{color:#1c1815}
[data-hv="hv29"]:hover{color:#1c1815}
[data-hv="hv30"]:hover{color:#1c1815}
[data-hv="hv31"]:hover{color:#1c1815}
[data-hv="hv32"]:hover{color:#1c1815}
[data-hv="hv33"]:hover{color:#1c1815}
[data-hv="hv34"]:hover{color:#db5126}

[data-fc="fc1"]:focus{border-color:#db5126;box-shadow:0 0 0 3px rgba(219,81,38,.12)}
[data-fc="fc2"]:focus{border-color:#db5126;box-shadow:0 0 0 3px rgba(219,81,38,.12)}
[data-fc="fc3"]:focus{border-color:#db5126;box-shadow:0 0 0 3px rgba(219,81,38,.12)}

@media (max-width: 768px) {
  section#top { grid-template-columns: 1fr !important; padding-top: 140px !important; }
  section#services > div, section#products > div, section#about > div, section#contact > div,
  section[data-track-wrap] div[data-stagger], div[data-stagger][style*='repeat(4'] { grid-template-columns: 1fr 1fr !important; }
  section#about > div, section#contact > div { grid-template-columns: 1fr !important; gap: 48px !important; }
  h1 { font-size: 42px !important; }
}

@media (max-width: 640px) {
  section#services div[data-stagger] { grid-template-columns: 1fr !important; }
  div[data-stagger][style*='repeat(4'] { grid-template-columns: 1fr !important; }
  footer div[style*='grid-template-columns:1.4fr'] { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 420px) {
  footer div[style*='grid-template-columns:1.4fr'] { grid-template-columns: 1fr !important; }
}

/* ========== MOBILE RESPONSIVE ========== */

[data-hamburger] {
  display: none;
}

[data-hamburger][data-active] [data-hamburger-line]:nth-child(1) {
  transform: translateY(5.5px) rotate(45deg);
  transform-origin: center;
  transition: transform .3s ease;
}
[data-hamburger][data-active] [data-hamburger-line]:nth-child(2) {
  opacity: 0;
  transition: opacity .2s ease;
}
[data-hamburger][data-active] [data-hamburger-line]:nth-child(3) {
  transform: translateY(-5.5px) rotate(-45deg);
  transform-origin: center;
  transition: transform .3s ease;
}
[data-hamburger] [data-hamburger-line] {
  transition: transform .3s ease, opacity .2s ease;
}

@media (max-width: 899px) {

  [data-nav-desktop] {
    display: none !important;
  }

  [data-hamburger] {
    display: flex !important;
    align-items: center;
    justify-content: center;
    z-index: 61;
    position: relative;
  }

  [data-nav-menu] {
    display: flex !important;
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: min(320px, 80vw) !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 28px !important;
    background: #faf9f7 !important;
    border-left: 1px solid #ddd8d2 !important;
    padding: 100px 40px 40px !important;
    transform: translateX(100%);
    transition: transform .4s cubic-bezier(.22,.61,.36,1);
    z-index: 60;
    pointer-events: none;
    box-shadow: -8px 0 32px rgba(28,24,21,.08);
  }

  [data-nav-menu][data-open] {
    transform: translateX(0);
    pointer-events: auto;
  }

  [data-nav-menu] > div {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 24px !important;
  }

  [data-nav-menu] [data-navlink] {
    font-size: 20px !important;
  }

  [data-nav-menu] [data-hv="hv5"] {
    font-size: 16px !important;
    padding: 12px 28px !important;
  }

  body[data-menu-open] {
    overflow: hidden;
  }

  [data-menu-overlay] {
    position: fixed;
    inset: 0;
    z-index: 59;
    background: rgba(28,24,21,.25);
    opacity: 0;
    pointer-events: none;
    transition: opacity .35s ease;
  }

  [data-menu-overlay][data-visible] {
    opacity: 1;
    pointer-events: auto;
  }

  section#top {
    padding: 130px 24px 80px !important;
  }

  section#top h1 {
    font-size: 32px !important;
  }

  section#top [data-hero-desc] {
    font-size: 15px !important;
  }

  section > div[style*='max-width:1320px'] {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  header nav {
    padding: 0 20px !important;
    height: 64px !important;
  }

  header a[href="#top"] img {
    height: 40px !important;
  }

  header a[href="#top"] span {
    font-size: 13px !important;
    max-width: 80px !important;
  }

  h2 {
    font-size: 28px !important;
  }

  section#services h2,
  section#products h2,
  section#about h2 {
    font-size: 28px !important;
  }

  [data-sweep] {
    padding: 28px 24px !important;
  }

  section#contact > div {
    gap: 40px !important;
  }

  section#contact h2 {
    font-size: 30px !important;
  }

  #contact-form {
    padding: 24px !important;
  }

  footer div[style*='display:grid;grid-template-columns:1.4fr'] {
    grid-template-columns: 1fr 1fr !important;
    gap: 32px !important;
  }

  footer > div > div:first-child {
    grid-column: 1 / -1;
  }

  [data-reveal] {
    transition: opacity .6s ease, transform .6s ease !important;
  }

  .buyo-decorative,
  [aria-hidden="true"][style*='radial-gradient'],
  [aria-hidden="true"][style*='width:820px'],
  [aria-hidden="true"][style*='width:640px'],
  [aria-hidden="true"][style*='width:80px'],
  [aria-hidden="true"][style*='width:50px'],
  [aria-hidden="true"][style*='width:30px'],
  [aria-hidden="true"][style*='width:6px'],
  [aria-hidden="true"][style*='width:4px'],
  [aria-hidden="true"][style*='background-image:linear-gradient'] {
    display: none !important;
  }

  section#faq div[style*='max-width:900px'] {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

@media (max-width: 480px) {
  section#top h1 {
    font-size: 26px !important;
  }

  section#top {
    padding: 120px 16px 64px !important;
  }

  section > div[style*='max-width:1320px'] {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  h2 {
    font-size: 24px !important;
  }

  footer div[style*='display:grid;grid-template-columns:1.4fr'] {
    grid-template-columns: 1fr !important;
  }

  #contact-form {
    padding: 20px !important;
  }

  [data-nav-menu] {
    width: 100vw !important;
    border-left: none !important;
  }
}