/* Manzilla (light) — faithful static build from the prototype's rendered DOM.
   Component styling is inline on the elements (1:1 with the prototype).
   This file provides only: reset, base, keyframes, responsive media queries
   (verbatim from the prototype), and reduced-motion. */

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
  background: #0C1312;
  color: #F2E9D8;
  font-family: 'Golos Text', system-ui, -apple-system, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; }
ul, ol, li { list-style: none; }
input, textarea, select { font-family: inherit; }
a:not([data-lang]) { transition: color 0.2s ease; }
a:not([data-lang]):hover { color: #FF6A3C; }
:focus-visible { outline: 2px solid #2FD3C1; outline-offset: 3px; }

@keyframes sc-shine { 0% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(26px); } to { opacity: 1; transform: none; } }
@keyframes floaty { from { transform: translateY(0); } to { transform: translateY(-14px); } }
@keyframes marquee { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes rvl { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: none; } }

@media (max-width: 1140px) {
  [data-nav-desktop] { display: none !important; }
  [data-burger] { display: inline-flex !important; }
  [data-lang] { margin-left: auto !important; }
  [data-nav-desktop].is-open {
    display: flex !important;
    position: fixed; top: 74px; left: 12px; right: 12px;
    flex-direction: column; align-items: flex-start !important; gap: 6px !important;
    padding: 16px 20px;
    background: rgba(12,19,18,0.97);
    -webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
    border: 1px solid rgba(242,233,216,0.14); border-radius: 20px; z-index: 200;
  }
}
@media (max-width: 760px) {
  [data-bento] { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
  [data-bento] > div { grid-column: span 2 !important; grid-row: span 1 !important; }
  [data-sec] { padding-left: 24px !important; padding-right: 24px !important; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
  html { scroll-behavior: auto; }
}
