:root {
  --mwm-asphalt: #0d0d10;
  --mwm-carbon: #16161a;
  --mwm-surface-elevated: #1e1e24;
  --mwm-surface-line: #2a2a31;
  --mwm-surface-light: #f5f5f7;
  --mwm-surface-light-elevated: #ffffff;
  --mwm-red: #a71b27;
  --mwm-red-dark: #5e0f16;
  --mwm-red-glow: #e63946;
  --mwm-yellow: #ffb703;
  --mwm-green-wa: #25d366;
  --mwm-white: #ffffff;
  --mwm-text-on-dark: #ffffff;
  --mwm-text-on-dark-muted: #a8a8b0;
  --mwm-text-on-dark-dim: #5a5a63;
  --mwm-text-on-light: #0d0d10;
  --mwm-text-on-light-muted: #5a5a63;
  --mwm-maxw: 1760px;
  --mwm-gutter: 80px;
  --mwm-grain: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.045 0'/></filter><rect width='200' height='200' filter='url(%23n)'/></svg>");
  --mwm-overlay-hero: linear-gradient(180deg, rgba(13,13,16,0) 0%, rgba(13,13,16,0.35) 40%, rgba(13,13,16,0.92) 100%);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--mwm-asphalt);
  color: var(--mwm-text-on-dark);
  font-family: var(--mwm-font-body);
  font-size: 16px;
  line-height: 1.6;
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
}
::selection { background: var(--mwm-red); color: var(--mwm-white); }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font-family: inherit; cursor: pointer; border: 0; background: none; color: inherit; }

.mwm-container {
  max-width: var(--mwm-maxw);
  margin: 0 auto;
  padding-inline: var(--mwm-gutter);
}
.mwm-main { min-height: 60vh; }
.mwm-home-section { position: relative; }
.mwm-font-anton { font-family: var(--mwm-font-display); }
.mwm-font-inter { font-family: var(--mwm-font-body); }
.mwm-font-mono { font-family: var(--mwm-font-mono); }
.mwm-italic { display: inline-block; transform: skewX(-6deg); transform-origin: bottom left; }
.mwm-accent { color: var(--mwm-red); }
.mwm-accent-glow { color: var(--mwm-red-glow); }
.mwm-wa-dot {
  width: 8px;
  height: 8px;
  background: var(--mwm-green-wa);
  border-radius: 50%;
  box-shadow: 0 0 12px var(--mwm-green-wa);
}

.mwm-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-family: var(--mwm-font-mono);
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--mwm-text-on-dark-muted);
  margin: 0 0 28px;
}
.mwm-eyebrow::before {
  content: "";
  width: 24px;
  height: 2px;
  background: var(--mwm-red);
}
.mwm-eyebrow--light { color: var(--mwm-text-on-light-muted); }

.mwm-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  font-family: var(--mwm-font-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 18px 28px;
  border-radius: 4px;
  border: 2px solid transparent;
  transition: transform 0.18s, background 0.18s, border-color 0.18s, box-shadow 0.18s;
  white-space: nowrap;
}
.mwm-btn--primary { background: var(--mwm-red); color: var(--mwm-white); }
.mwm-btn--primary:hover {
  background: var(--mwm-red-glow);
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(230,57,70,0.35), 0 0 0 1px rgba(230,57,70,0.5);
}
.mwm-btn--outline {
  background: transparent;
  color: var(--mwm-text-on-dark);
  border-color: rgba(255,255,255,0.25);
}
.mwm-btn--outline:hover {
  border-color: var(--mwm-white);
  background: rgba(255,255,255,0.05);
  transform: translateY(-2px);
}
.mwm-btn--dark { background: var(--mwm-asphalt); color: var(--mwm-white); }
.mwm-btn--dark:hover { background: var(--mwm-carbon); transform: translateY(-2px); }
.mwm-btn__arrow { font-size: 1.2em; line-height: 1; }

.mwm-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
.mwm-reveal.is-visible { opacity: 1; transform: translateY(0); }

.mwm-empty { padding: 160px 0 80px; }

@media (max-width: 1280px) {
  :root { --mwm-gutter: 48px; }
}
@media (max-width: 980px) {
  :root { --mwm-gutter: 32px; }
  .mwm-btn { padding: 16px 22px; }
}
@media (max-width: 560px) {
  :root { --mwm-gutter: 22px; }
  .mwm-btn { width: 100%; white-space: normal; }
}
