/* Lumen Etkinlik */
/* Base */

*,
*::before,
*::after { box-sizing: border-box; }

:root {
  --c-bg: #0d1117;
  --c-bg-elev: #141b26;
  --c-bg-elev-2: #1c2533;
  --c-surface: #182030;
  --c-surface-2: #1a2233;
  --c-line: #2a3547;
  --c-line-soft: #1f2a3a;
  --c-text: #e8ecf2;
  --c-text-dim: #a6b0c0;
  --c-text-muted: #7a8699;
  --c-accent: #d9a441;
  --c-accent-soft: #f0c878;
  --c-accent-deep: #b98724;
  --c-primary: #d9a441;
  --c-primary-deep: #b98724;
  --c-danger: #d9534f;
  --c-success: #4caf7c;
  --c-focus: #f0c878;
  --c-track: #2a3547;
  --header-h: 72px;
  --scrollbar-w: 0px;
  --radius-s: 6px;
  --radius-m: 12px;
  --radius-l: 22px;
  --shadow-s: 0 1px 2px rgba(0,0,0,.3);
  --shadow-m: 0 6px 20px rgba(0,0,0,.35);
  --shadow-l: 0 14px 44px rgba(0,0,0,.45);
  --container: 1180px;
  --ease-smooth: cubic-bezier(.2,.7,.2,1);
  --ease-warm: cubic-bezier(.33,1.2,.3,1);
  --ease-out: cubic-bezier(.2,.8,.2,1);
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px; --s-7: 48px; --s-8: 64px;
  --font-base: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  --font-display: "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

html {
  scroll-behavior: smooth;
  max-width: 100%;
}

body {
  margin: 0;
  font-family: var(--font-base);
  background:
    radial-gradient(1200px 800px at 10% -10%, #1a2436 0%, transparent 60%),
    radial-gradient(900px 600px at 100% 0%, #1a1f2e 0%, transparent 55%),
    var(--c-bg);
  color: var(--c-text);
  line-height: 1.65;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  overflow-x: clip;
  max-width: 100%;
}

body.scroll-locked {
  overflow: hidden;
  padding-right: var(--scrollbar-w);
}

img, svg, video { max-width: 100%; height: auto; display: block; }

a {
  color: var(--c-accent-soft);
  text-decoration: none;
  transition: color .2s var(--ease-smooth);
}
a:hover { color: var(--c-accent); }

:focus { outline: none; }
:focus-visible {
  outline: 3px solid var(--c-focus);
  outline-offset: 2px;
  border-radius: var(--radius-s);
}

h1, h2, h3, h4 {
  font-family: var(--font-display);
  color: #fff;
  line-height: 1.25;
  margin: 0 0 .5em 0;
  font-weight: 600;
  letter-spacing: -.01em;
}
h1 { font-size: clamp(2rem, 4.3vw, 3.2rem); }
h2 { font-size: clamp(1.5rem, 2.6vw, 2.1rem); }
h3 { font-size: clamp(1.15rem, 1.6vw, 1.35rem); }

p { margin: 0 0 1em 0; color: var(--c-text-dim); }

/* Scroll offset for anchor nav under sticky header */
section[id], [data-spy] {
  scroll-margin-top: calc(var(--header-h) + 16px);
}

/* Fieldset reset */
fieldset { margin: 0; padding: 0; border: 0; min-inline-size: 0; }
legend { padding: 0; }

/* Utility */
.wrap {
  max-width: var(--container);
  margin: 0 auto;
  padding: 0 clamp(1.25rem, 2vw, 1.5rem);
}
.sr-only {
  position: absolute;
  width: 1px; height: 1px;
  padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0 0 0 0);
  white-space: nowrap; border: 0;
}

.center { text-align: center; }
.muted { color: var(--c-text-muted); }
.chip {
  display: inline-block; padding: 4px 12px;
  font-size: .8rem; color: var(--c-accent-soft);
  background: rgba(217,164,65,.1);
  border: 1px solid rgba(217,164,65,.28);
  border-radius: 999px; letter-spacing: .04em;
}

/* Skip link */
.skip-link {
  position: absolute;
  top: var(--s-4); left: var(--s-4);
  transform: translateY(calc(-100% - 24px));
  opacity: 0; pointer-events: none;
  background: var(--c-accent);
  color: #111;
  padding: 12px 18px;
  font-weight: 600;
  z-index: 9999;
  border-radius: var(--radius-s);
  transition: transform 220ms var(--ease-smooth), opacity 200ms var(--ease-smooth);
}
.skip-link:focus,
.skip-link:focus-visible {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}

/* Header */
.site-header {
  position: sticky; top: 0; z-index: 50;
  background: transparent;
  border-bottom: 1px solid var(--c-line);
  isolation: isolate;
}
.site-header::before {
  content: "";
  position: absolute; inset: 0;
  background: rgba(13, 17, 23, .85);
  backdrop-filter: saturate(140%) blur(12px);
  -webkit-backdrop-filter: saturate(140%) blur(12px);
  z-index: -1;
  pointer-events: none;
}
.site-header .wrap {
  display: flex; align-items: center; justify-content: space-between;
  min-height: var(--header-h);
  padding-top: 12px; padding-bottom: 12px;
}

/* Brand */
.brand {
  display: inline-flex; align-items: center; gap: 10px;
  color: #fff; font-weight: 700; font-size: 1.05rem; letter-spacing: .01em;
  text-decoration: none;
  transition: transform 280ms var(--ease-smooth);
}
.brand:hover { color: #fff; text-decoration: none; transform: translateY(-1px); }
.brand-name { white-space: nowrap; }

.brand-mark {
  width: 34px; height: 34px; border-radius: 10px;
  background: linear-gradient(135deg, var(--c-accent) 0%, var(--c-accent-deep) 100%);
  display: grid; place-items: center;
  box-shadow: 0 0 0 1px rgba(255,255,255,.06), 0 10px 30px -14px rgba(185,135,36,.7);
  position: relative;
  transition: transform 320ms var(--ease-warm), box-shadow 320ms var(--ease-smooth), border-color 260ms var(--ease-smooth);
}
.brand-mark::before,
.brand-mark::after {
  content: ""; position: absolute; inset: 6px;
  border: 2px solid rgba(20,20,20,.65); border-radius: 6px;
  transition: transform 420ms var(--ease-warm);
}
.brand-mark::after { inset: 12px; opacity: .6; }
.brand:hover .brand-mark {
  transform: rotate(-6deg) scale(1.05);
  box-shadow: 0 0 0 1px rgba(240,200,120,.5), 0 14px 30px -10px rgba(217,164,65,.75);
}

/* Nav */
.primary-nav { display: flex; align-items: center; }
.nav-list {
  display: flex; align-items: center; gap: 22px;
  list-style: none; padding: 0; margin: 0;
}
.nav-list a {
  position: relative;
  color: var(--c-text-dim);
  font-weight: 500; font-size: .96rem;
  padding: 8px 0;
  text-decoration: none;
  transition: color 220ms var(--ease-smooth);
}
.nav-list a:not(.btn)::after {
  content: "";
  position: absolute; bottom: 0;
  left: 50%; right: 50%;
  height: 2px;
  background: var(--c-accent);
  transition: left 280ms var(--ease-smooth), right 280ms var(--ease-smooth);
}
.nav-list a:not(.btn):hover,
.nav-list a:not(.btn).is-active,
.nav-list a:not(.btn)[aria-current="page"] { color: #fff; }
.nav-list a:not(.btn):hover::after,
.nav-list a:not(.btn).is-active::after,
.nav-list a:not(.btn)[aria-current="page"]::after {
  left: 0; right: 0;
}

/* Hamburger */
.nav-toggle {
  display: none;
  width: 44px; height: 44px;
  padding: 4px;
  background: transparent;
  border: 1px solid var(--c-line);
  border-radius: var(--radius-s);
  cursor: pointer;
  align-items: center; justify-content: center;
  transition: background-color 220ms var(--ease-smooth), border-color 220ms var(--ease-smooth), box-shadow 220ms var(--ease-smooth);
}
.nav-toggle-box {
  position: relative;
  width: 22px; height: 16px;
  display: block;
}
.nav-toggle .bar {
  position: absolute; left: 0; right: 0;
  height: 2px; border-radius: 2px;
  background: #fff;
  transition: transform 320ms var(--ease-smooth), opacity 220ms var(--ease-smooth), background-color 220ms var(--ease-smooth);
}
.nav-toggle .bar:nth-child(1) { top: 0; }
.nav-toggle .bar:nth-child(2) { top: 50%; transform: translateY(-50%); }
.nav-toggle .bar:nth-child(3) { bottom: 0; }
.nav-toggle[aria-expanded="true"] .bar:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.nav-toggle[aria-expanded="true"] .bar:nth-child(2) { opacity: 0; transform: scaleX(0); }
.nav-toggle[aria-expanded="true"] .bar:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.nav-toggle[aria-expanded="true"] {
  background: var(--c-surface);
  border-color: rgba(217,164,65,.55);
  box-shadow: 0 2px 8px rgba(217,164,65,.2);
}
.nav-toggle[aria-expanded="true"] .bar {
  background: var(--c-accent-soft);
}

/* Mobile nav */
@media (max-width: 960px) {
  .site-header .wrap { padding-inline: 1.25rem; }
  .brand, .nav-toggle { position: relative; z-index: 45; }
  .nav-toggle { display: inline-flex; }

  .primary-nav {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: rgba(13,17,23,.97);
    backdrop-filter: saturate(140%) blur(14px);
    -webkit-backdrop-filter: saturate(140%) blur(14px);
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    padding: calc(var(--header-h) + var(--s-6)) var(--s-5) var(--s-6);
    overflow-y: auto;
    overscroll-behavior: contain;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px);
    transition: opacity 280ms var(--ease-smooth), transform 320ms var(--ease-smooth);
    z-index: 40;
  }
  body.menu-open .primary-nav {
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }
  .nav-list {
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    gap: 0;
    margin: 0; padding: 0;
  }
  .nav-list li {
    border-bottom: 1px solid var(--c-line);
  }
  .nav-list a:not(.btn) {
    display: block;
    padding: 18px 4px;
    font-size: 1.1rem;
    min-height: 44px;
  }
  .nav-list a:not(.btn)::after { display: none; }
  .nav-list a:not(.btn).is-active,
  .nav-list a:not(.btn)[aria-current="page"] {
    color: var(--c-accent-soft);
  }
}

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center; justify-content: center;
  gap: 10px;
  min-height: 48px;
  padding: 0 26px;
  line-height: 1;
  border-radius: 999px;
  font-weight: 600; font-size: .98rem;
  font-family: inherit;
  border: 1px solid transparent;
  cursor: pointer;
  text-decoration: none;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  transition: transform 240ms var(--ease-smooth), box-shadow 260ms var(--ease-smooth), color 240ms var(--ease-smooth), border-color 240ms var(--ease-smooth);
}

.btn.btn-primary,
a.btn.btn-primary {
  background-color: var(--c-primary);
  background-image: linear-gradient(180deg, var(--c-accent) 0%, var(--c-accent-deep) 100%);
  color: #1a1a1a;
  box-shadow:
    0 14px 30px -14px rgba(217,164,65,.75),
    inset 0 1px 0 rgba(255,255,255,.25);
}
.btn.btn-primary::before {
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  background-image: linear-gradient(180deg, var(--c-accent-soft) 0%, var(--c-accent) 100%);
  opacity: 0;
  transition: opacity 520ms var(--ease-smooth);
  pointer-events: none;
  z-index: -1;
}
.btn.btn-primary:hover::before,
.btn.btn-primary:focus-visible::before { opacity: 1; }
.btn.btn-primary:hover,
a.btn.btn-primary:hover {
  transform: translateY(-1px);
  color: #1a1a1a;
  text-decoration: none;
  box-shadow:
    0 0 0 4px rgba(217,164,65,.28),
    0 18px 40px -14px rgba(217,164,65,.8),
    inset 0 1px 0 rgba(255,255,255,.35);
}

.btn.btn-strong {
  background: #1f2a3a;
  color: #fff;
  border-color: var(--c-line);
}
.btn.btn-strong:hover {
  background: #253244;
  border-color: rgba(217,164,65,.4);
  color: #fff;
  text-decoration: none;
}

.btn.btn-secondary,
.btn.btn-ghost {
  background: transparent;
  color: #fff;
  border-color: var(--c-line);
}
.btn.btn-secondary:hover,
.btn.btn-ghost:hover {
  background: var(--c-bg-elev-2);
  color: #fff;
  text-decoration: none;
}

.btn[disabled],
.btn:disabled {
  opacity: .65;
  cursor: not-allowed;
  pointer-events: none;
}

/* CTA row */
.cta-row { display: flex; flex-wrap: wrap; gap: 14px; margin-top: var(--s-6); }
.cta-row.is-center { justify-content: center; }

/* Hero */
.hero {
  position: relative;
  padding: 70px 0 60px;
  overflow: hidden;
}
.hero::before {
  content: ""; position: absolute; inset: 0;
  background:
    radial-gradient(600px 400px at 70% 30%, rgba(217,164,65,.12) 0%, transparent 60%),
    radial-gradient(500px 340px at 20% 80%, rgba(185,135,36,.08) 0%, transparent 60%);
  pointer-events: none;
}
.hero-inner {
  position: relative; z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 50px;
  align-items: center;
}
.eyebrow {
  display: inline-block;
  color: var(--c-accent-soft);
  font-size: .82rem; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase;
  padding: 6px 12px;
  background: rgba(217,164,65,.08);
  border: 1px solid rgba(217,164,65,.24);
  border-radius: 999px;
  margin-bottom: 22px;
}
.hero .lead { font-size: 1.1rem; max-width: 60ch; }

.hero-media {
  position: relative;
  aspect-ratio: 4 / 5;
  border-radius: var(--radius-l);
  background:
    linear-gradient(160deg, #1c2333 0%, #0f1420 100%);
  border: 1px solid var(--c-line);
  overflow: hidden;
  box-shadow: var(--shadow-l);
  transition: transform 600ms var(--ease-smooth);
  transform: translate3d(calc(var(--px, 0) * 6px), calc(var(--py, 0) * 6px), 0) scale(1.01);
  margin: 0;
}
.hero-media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.hero-media .stage {
  position: absolute; inset: 0;
  background:
    radial-gradient(220px 180px at 50% 32%, rgba(240,200,120,.35), transparent 62%),
    radial-gradient(340px 240px at 50% 55%, rgba(217,164,65,.2), transparent 70%);
}
.hero-media .stage::after {
  content: ""; position: absolute; left: 18%; right: 18%; bottom: 14%;
  height: 4px; border-radius: 8px;
  background: linear-gradient(90deg, transparent, var(--c-accent), transparent);
  box-shadow: 0 0 30px var(--c-accent);
}
.hero-media .bars {
  position: absolute; bottom: 18%; left: 0; right: 0;
  display: flex; justify-content: center; gap: 10px;
}
.hero-media .bars span {
  width: 4px; height: 36px;
  background: linear-gradient(to top, var(--c-accent), transparent);
  border-radius: 4px; opacity: .6;
  animation: stage-pulse 3.2s var(--ease-smooth) infinite;
}
.hero-media .bars span:nth-child(2) { height: 52px; opacity: .8; animation-delay: .2s; }
.hero-media .bars span:nth-child(3) { height: 72px; opacity: 1;   animation-delay: .4s; }
.hero-media .bars span:nth-child(4) { height: 52px; opacity: .8; animation-delay: .6s; }
.hero-media .bars span:nth-child(5) { height: 36px; opacity: .6; animation-delay: .8s; }

@keyframes stage-pulse {
  0%, 100% { transform: scaleY(1); }
  50% { transform: scaleY(1.18); }
}

@media (max-width: 860px) {
  .hero-inner { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .hero-media { max-width: 440px; margin: 0 auto; }
  .hero { padding: 48px 0 40px; }
}

/* Sections */
.block {
  padding: 70px 0;
  border-top: 1px solid var(--c-line);
  position: relative;
  overflow: hidden;
}
.block.alt {
  background: linear-gradient(180deg, rgba(255,255,255,.012), transparent);
}
.section-head {
  max-width: 760px; margin: 0 auto 40px;
  text-align: center;
}
.section-head .kicker {
  color: var(--c-accent-soft);
  font-size: .82rem; font-weight: 600;
  letter-spacing: .18em; text-transform: uppercase;
  margin-bottom: 10px;
}

/* Grids */
.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.grid-3 > * { min-width: 0; }
@media (max-width: 900px) { .grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .grid-3 { grid-template-columns: minmax(0, 1fr); } }

/* Card */
.card {
  background: linear-gradient(180deg, var(--c-surface) 0%, #131a26 100%);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  padding: 26px;
  transition: transform .34s var(--ease-smooth), border-color .34s var(--ease-smooth), box-shadow .34s var(--ease-smooth);
}
.card:hover {
  transform: translateY(-3px);
  border-color: rgba(217,164,65,.45);
  box-shadow: var(--shadow-m);
}
.card .card-icon {
  width: 44px; height: 44px;
  border-radius: 10px;
  display: grid; place-items: center;
  background: rgba(217,164,65,.1);
  border: 1px solid rgba(217,164,65,.28);
  color: var(--c-accent-soft);
  margin-bottom: 18px;
  transition: transform 320ms var(--ease-warm), background 260ms var(--ease-smooth);
}
.card .card-icon svg { width: 22px; height: 22px; }
.card:hover .card-icon {
  transform: rotate(-6deg) scale(1.06);
  background: rgba(217,164,65,.18);
}
.card h3 { color: #fff; margin-bottom: 8px; }
.card p { margin: 0; color: var(--c-text-dim); font-size: .97rem; }

/* Long-word safety in text cards */
.card p, .card a, .card h3,
.info-card p, .info-card a, .info-card h3,
.info-card dd {
  overflow-wrap: anywhere;
  word-break: break-word;
  max-width: 100%;
}

/* Factors */
.factors {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.factors > * { min-width: 0; }
@media (max-width: 900px) { .factors { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .factors { grid-template-columns: minmax(0, 1fr); } }
.factor {
  background: var(--c-bg-elev);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  padding: 22px;
}
.factor strong { color: #fff; display: block; margin-bottom: 6px; font-size: 1rem; }
.factor span { color: var(--c-text-dim); font-size: .93rem; }

/* Timeline — stage spotlight */
.timeline {
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  overflow: hidden;
  background: var(--c-bg-elev);
  --steps: 6;
  --pos: 0;
}
@media (max-width: 960px) { .timeline { grid-template-columns: minmax(0, 1fr); } }

.timeline .step {
  position: relative;
  padding: 24px 20px;
  border-right: 1px solid var(--c-line);
  min-width: 0;
  isolation: isolate;
  transition: background-color 540ms var(--ease-smooth);
}
.timeline .step:last-child { border-right: 0; }
@media (max-width: 960px) {
  .timeline .step {
    border-right: 0;
    border-bottom: 1px solid var(--c-line);
    padding: 22px 22px 22px 64px;
  }
  .timeline .step:last-child { border-bottom: 0; }
  .timeline .step .step-num {
    position: absolute;
    left: 15px;
    top: 22px;
    margin-bottom: 0;
    z-index: 5;
  }
}

.step-num {
  display: inline-flex;
  width: 30px; height: 30px; border-radius: 50%;
  background: rgba(217,164,65,.12);
  color: var(--c-accent-soft);
  border: 1px solid rgba(217,164,65,.35);
  align-items: center; justify-content: center;
  font-weight: 700; margin-bottom: 14px;
  position: relative;
  z-index: 2;
  transition:
    background 540ms var(--ease-smooth),
    border-color 540ms var(--ease-smooth),
    color 360ms var(--ease-smooth),
    transform 540ms var(--ease-warm),
    box-shadow 540ms var(--ease-smooth);
}
.timeline .step h4 {
  color: #fff;
  margin: 0 0 6px;
  font-size: 1.02rem;
  position: relative;
  z-index: 2;
  transition: letter-spacing 540ms var(--ease-smooth), color 320ms var(--ease-smooth);
}
.timeline .step p {
  margin: 0;
  font-size: .92rem;
  color: var(--c-text-dim);
  position: relative;
  z-index: 2;
  transition: color 360ms var(--ease-smooth);
}

/* Spotlight cone + stage floor highlight (gated by .js to avoid noJS flash) */
.js .timeline .step::before,
.js .timeline .step::after {
  content: "";
  position: absolute;
  pointer-events: none;
  opacity: 0;
  z-index: 0;
  transition: opacity 720ms var(--ease-smooth), transform 760ms var(--ease-smooth);
}

/* Desktop horizontal layout: light cone from above, floor bar at bottom */
@media (min-width: 961px) {
  .js .timeline .step::before {
    left: 0; right: 0; top: 0; bottom: 0;
    background:
      radial-gradient(60% 90% at 50% -8%,
        rgba(240,200,120,.22) 0%,
        rgba(217,164,65,.10) 32%,
        rgba(217,164,65,0) 65%);
  }
  .js .timeline .step::after {
    left: 12%; right: 12%; bottom: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--c-accent), transparent);
    transform: scaleX(.35);
    transform-origin: 50% 50%;
    box-shadow: 0 0 14px rgba(217,164,65,.55);
  }
  .js .timeline .step.is-active::after {
    transform: scaleX(1);
  }
}

/* Mobile vertical layout: light cone from left, floor bar on right */
@media (max-width: 960px) {
  .js .timeline .step::before {
    left: 0; right: 0; top: 0; bottom: 0;
    background:
      radial-gradient(60% 90% at 0% 50%,
        rgba(240,200,120,.22) 0%,
        rgba(217,164,65,.10) 32%,
        rgba(217,164,65,0) 60%);
  }
  .js .timeline .step::after {
    top: 12%; bottom: 12%; right: 0;
    width: 2px;
    background: linear-gradient(180deg, transparent, var(--c-accent), transparent);
    transform: scaleY(.35);
    transform-origin: 50% 50%;
    box-shadow: 0 0 14px rgba(217,164,65,.55);
  }
  .js .timeline .step.is-active::after {
    transform: scaleY(1);
  }
}

.js .timeline .step.is-active::before { opacity: 1; }
.js .timeline .step.is-active::after  { opacity: 1; }

/* Active step body subtle wash */
.js .timeline .step.is-active {
  background: linear-gradient(180deg, rgba(217,164,65,.07) 0%, rgba(217,164,65,0) 75%);
}
@media (max-width: 960px) {
  .js .timeline .step.is-active {
    background: linear-gradient(90deg, rgba(217,164,65,.07) 0%, rgba(217,164,65,0) 60%);
  }
}

/* Active step number — lit spotlight target */
.js .timeline .step.is-active .step-num {
  background: linear-gradient(135deg, var(--c-accent-soft) 0%, var(--c-accent) 55%, var(--c-accent-deep) 100%);
  color: #1a1a1a;
  border-color: var(--c-accent);
  transform: scale(1.14);
  box-shadow:
    0 0 0 6px rgba(217,164,65,.16),
    0 0 22px rgba(217,164,65,.55),
    0 0 44px rgba(217,164,65,.32),
    inset 0 1px 0 rgba(255,255,255,.35);
}
.js .timeline .step.is-active h4 {
  color: #fff;
  letter-spacing: .005em;
}
.js .timeline .step.is-active p {
  color: var(--c-text);
}

/* Passed step — dim warm afterglow */
.js .timeline .step.is-passed .step-num {
  background: rgba(217,164,65,.20);
  border-color: rgba(217,164,65,.55);
  color: var(--c-accent-soft);
  box-shadow: 0 0 0 4px rgba(217,164,65,.07);
}

/* Spotlight rail (visible only when JS is on) */
.timeline-rail { display: none; }
.js .timeline-rail {
  display: block;
  position: absolute;
  pointer-events: none;
  z-index: 4;
}
.timeline-rail-track,
.timeline-rail-fill {
  position: absolute;
  display: block;
}
.timeline-rail-orb {
  position: absolute;
  display: block;
  width: 16px; height: 16px;
  margin-left: -8px; margin-top: -8px;
  border-radius: 50%;
  will-change: transform;
}
.timeline-rail-orb-core,
.timeline-rail-orb-ring {
  position: absolute; inset: 0;
  border-radius: 50%;
  display: block;
}
.timeline-rail-orb-core {
  background: radial-gradient(circle at 35% 30%,
    #fff8e6 0%,
    var(--c-accent-soft) 40%,
    var(--c-accent) 72%,
    var(--c-accent-deep) 100%);
  box-shadow:
    0 0 0 3px rgba(217,164,65,.18),
    0 0 16px rgba(217,164,65,.75),
    0 0 38px rgba(217,164,65,.45);
  animation: lumen-orb-pulse 2.6s var(--ease-smooth) infinite;
}
.timeline-rail-orb-ring {
  border: 1px solid rgba(240,200,120,.55);
  opacity: 0;
  animation: lumen-orb-ring 2.6s var(--ease-smooth) infinite;
}

@keyframes lumen-orb-pulse {
  0%, 100% {
    box-shadow:
      0 0 0 3px rgba(217,164,65,.18),
      0 0 16px rgba(217,164,65,.75),
      0 0 38px rgba(217,164,65,.45);
  }
  50% {
    box-shadow:
      0 0 0 5px rgba(217,164,65,.22),
      0 0 24px rgba(240,200,120,.95),
      0 0 56px rgba(217,164,65,.6);
  }
}
@keyframes lumen-orb-ring {
  0%   { opacity: .55; transform: scale(1); }
  80%  { opacity: 0;   transform: scale(2.6); }
  100% { opacity: 0;   transform: scale(2.6); }
}

/* Horizontal rail (desktop) */
@media (min-width: 961px) {
  .timeline-rail {
    top: 0; left: 0; right: 0;
    height: 18px;
  }
  .timeline-rail-track {
    top: 8px; left: 0; right: 0;
    height: 2px;
    background: linear-gradient(90deg,
      rgba(217,164,65,0) 0%,
      rgba(217,164,65,.18) 6%,
      rgba(217,164,65,.18) 94%,
      rgba(217,164,65,0) 100%);
  }
  .timeline-rail-fill {
    top: 8px; left: 0;
    height: 2px;
    width: calc(var(--pos) / var(--steps) * 100%);
    background: linear-gradient(90deg,
      rgba(217,164,65,0) 0%,
      rgba(217,164,65,.45) 12%,
      var(--c-accent) 88%,
      var(--c-accent-soft) 100%);
    box-shadow: 0 0 14px rgba(217,164,65,.55);
  }
  .timeline-rail-orb {
    top: 9px;
    left: calc(var(--pos) / var(--steps) * 100%);
  }
}

/* Vertical rail (tablet + mobile) */
@media (max-width: 960px) {
  .timeline-rail {
    top: 0; bottom: 0; left: 21px;
    width: 18px;
  }
  .timeline-rail-track {
    left: 8px; top: 0; bottom: 0;
    width: 2px;
    background: linear-gradient(180deg,
      rgba(217,164,65,0) 0%,
      rgba(217,164,65,.18) 4%,
      rgba(217,164,65,.18) 96%,
      rgba(217,164,65,0) 100%);
  }
  .timeline-rail-fill {
    left: 8px; top: 0;
    width: 2px;
    height: calc(var(--pos) / var(--steps) * 100%);
    background: linear-gradient(180deg,
      rgba(217,164,65,0) 0%,
      rgba(217,164,65,.45) 12%,
      var(--c-accent) 88%,
      var(--c-accent-soft) 100%);
    box-shadow: 0 0 14px rgba(217,164,65,.55);
  }
  .timeline-rail-orb {
    left: 9px;
    top: calc(var(--pos) / var(--steps) * 100%);
  }
}

/* Reduced motion fallback for the spotlight */
@media (prefers-reduced-motion: reduce) {
  .timeline-rail-orb-core,
  .timeline-rail-orb-ring { animation: none !important; }
  .js .timeline .step::before,
  .js .timeline .step::after,
  .js .timeline .step .step-num { transition: none !important; }
}

/* Prices */
.prices {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}
.prices > * { min-width: 0; }
@media (max-width: 900px) { .prices { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 500px) { .prices { grid-template-columns: minmax(0, 1fr); } }
.price {
  padding: 26px;
  border-radius: var(--radius-m);
  background: linear-gradient(180deg, #1a2233 0%, #111825 100%);
  border: 1px solid var(--c-line);
}
.price .name {
  color: var(--c-text-dim);
  font-size: .9rem; letter-spacing: .05em; text-transform: uppercase;
  margin-bottom: 10px;
}
.price .value {
  color: #fff; font-size: 1.4rem; font-weight: 700; margin-bottom: 6px;
}
.price .note { color: var(--c-text-muted); font-size: .88rem; }
.disclaimer {
  margin-top: 22px;
  padding: 16px 20px;
  background: rgba(217,164,65,.06);
  border: 1px solid rgba(217,164,65,.22);
  border-radius: var(--radius-m);
  color: var(--c-text-dim); font-size: .93rem;
}

/* Calculator */
.calc {
  background: linear-gradient(180deg, #141c2b 0%, #0f1724 100%);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-l);
  padding: 32px;
  box-shadow: var(--shadow-m);
  container-type: inline-size;
}
.calc-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 26px;
}
.calc-row > * { min-width: 0; }
@media (max-width: 780px) { .calc-row { grid-template-columns: minmax(0, 1fr); } }

.calc .field { display: block; margin-bottom: 22px; }
.calc .field-label {
  display: flex; justify-content: space-between; align-items: baseline;
  color: #fff; font-weight: 600; font-size: .95rem; margin-bottom: 10px;
}
.calc .field-label b { color: var(--c-accent-soft); font-weight: 700; }
.calc input[type="range"] {
  width: 100%; -webkit-appearance: none; appearance: none;
  height: 4px; background: var(--c-line);
  border-radius: 4px; outline: none;
}
.calc input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none; appearance: none;
  width: 20px; height: 20px; border-radius: 50%;
  background: var(--c-accent); border: 2px solid #111; cursor: pointer;
  box-shadow: 0 0 0 4px rgba(217,164,65,.15);
  transition: transform 240ms var(--ease-warm);
}
.calc input[type="range"]::-webkit-slider-thumb:hover { transform: scale(1.1); }
.calc input[type="range"]::-moz-range-thumb {
  width: 20px; height: 20px; border-radius: 50%;
  background: var(--c-accent); border: 2px solid #111; cursor: pointer;
}
.calc select {
  width: 100%;
  background: var(--c-bg-elev); color: #fff;
  border: 1px solid var(--c-line);
  padding: 12px 14px;
  border-radius: var(--radius-s);
  font: inherit;
  transition: border-color 220ms var(--ease-smooth), box-shadow 220ms var(--ease-smooth);
}
.calc select:focus,
.calc select:focus-visible {
  outline: none;
  border-color: var(--c-accent);
  box-shadow: 0 0 0 1px var(--c-accent);
}
.calc .toggle-row { display: flex; flex-wrap: wrap; gap: 12px; }
.calc .toggle-pill {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 44px;
  padding: 10px 14px;
  border-radius: 999px;
  background: var(--c-bg-elev);
  border: 1px solid var(--c-line);
  color: var(--c-text-dim);
  cursor: pointer; user-select: none;
  font-size: .92rem;
  transition: background-color 240ms var(--ease-smooth), border-color 240ms var(--ease-smooth), color 240ms var(--ease-smooth);
}
.calc .toggle-pill input { margin: 0; accent-color: var(--c-accent); }
.calc .toggle-pill:has(input:checked) {
  background: rgba(217,164,65,.16);
  border-color: rgba(217,164,65,.55);
  color: #fff;
}
.calc-result {
  margin-top: 10px;
  padding: 22px 24px;
  background: rgba(217,164,65,.07);
  border: 1px dashed rgba(217,164,65,.4);
  border-radius: var(--radius-m);
}
.calc-result .label {
  color: var(--c-text-dim);
  font-size: .85rem; letter-spacing: .08em; text-transform: uppercase;
  margin-bottom: 6px;
}
.calc-result .num { color: #fff; font-size: 1.6rem; font-weight: 700; }
.calc-result .hint { color: var(--c-text-muted); font-size: .88rem; margin-top: 8px; }

/* FAQ */
.faq { max-width: 820px; margin: 0 auto; }
.faq-item {
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  background: var(--c-bg-elev);
  margin-bottom: 12px;
  transition: border-color .26s var(--ease-smooth), background .26s var(--ease-smooth);
}
.faq-item.open {
  border-color: rgba(217,164,65,.45);
  background: #18212f;
}
.faq-q {
  width: 100%;
  display: flex; justify-content: space-between; align-items: center; gap: 16px;
  padding: 18px 22px;
  min-height: 60px;
  background: transparent;
  border: 0;
  color: #fff; font-weight: 600;
  font: inherit; font-weight: 600;
  text-align: left;
  cursor: pointer;
  border-radius: var(--radius-m);
}
.faq-q > span:first-child { flex: 1; min-width: 0; }
.faq-icon {
  position: relative;
  flex: 0 0 18px;
  width: 18px; height: 18px;
}
.faq-icon::before,
.faq-icon::after {
  content: ""; position: absolute;
  background: var(--c-accent-soft);
  border-radius: 2px;
  transition: transform 320ms var(--ease-smooth);
}
.faq-icon::before { left: 0; right: 0; top: 50%; height: 2px; transform: translateY(-50%); }
.faq-icon::after  { top: 0; bottom: 0; left: 50%; width: 2px; transform: translateX(-50%); }
.faq-item.open .faq-icon::after { transform: translateX(-50%) scaleY(0); }

.faq-a {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 380ms var(--ease-smooth);
}
.faq-a-inner { overflow: hidden; min-height: 0; }
.faq-a-inner > div {
  padding: 0 22px 18px;
  color: var(--c-text-dim);
}
.faq-a-inner p:last-child { margin-bottom: 0; }
.faq-item.open .faq-a { grid-template-rows: 1fr; }

/* Page header + content */
.page-header {
  padding: 56px 0 30px;
  border-bottom: 1px solid var(--c-line);
}
.page-header h1 { margin-bottom: 10px; }
.page-header p { color: var(--c-text-dim); max-width: 65ch; }
.page-content { padding: 50px 0 80px; }
.page-content h2 { margin-top: 34px; }
.page-content h3 { margin-top: 26px; }
.page-content ul, .page-content ol { color: var(--c-text-dim); padding-left: 22px; }
.page-content li { margin-bottom: 8px; }
.prose { max-width: 820px; }
.prose a:not(.btn) {
  color: var(--c-accent-soft);
  background-image: linear-gradient(var(--c-accent), var(--c-accent));
  background-position: 50% 100%;
  background-size: 0% 1.5px;
  background-repeat: no-repeat;
  transition: background-size 320ms var(--ease-smooth), background-position 320ms var(--ease-smooth), color 220ms var(--ease-smooth);
}
.prose a:not(.btn):hover {
  color: var(--c-accent);
  background-size: 100% 1.5px;
  background-position: 0% 100%;
  text-decoration: none;
}
.prose blockquote {
  margin: 22px 0;
  padding: 14px 20px;
  border-left: 3px solid var(--c-accent);
  background: var(--c-bg-elev);
  border-radius: 0 var(--radius-s) var(--radius-s) 0;
  color: var(--c-text-dim);
}
.prose ul li::marker { color: var(--c-accent); }

/* Contact + Form */
.contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr);
  gap: 40px;
  align-items: start;
}
.contact-grid > * { min-width: 0; }
@media (max-width: 860px) { .contact-grid { grid-template-columns: minmax(0, 1fr); } }

.info-card {
  background: var(--c-bg-elev);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  padding: 28px;
  min-width: 0;
}
.info-card > div { min-width: 0; }
.info-card dl { margin: 0; }
.info-card dt {
  color: var(--c-text-muted);
  font-size: .82rem; letter-spacing: .08em; text-transform: uppercase;
  margin-top: 18px;
}
.info-card dt:first-child { margin-top: 0; }
.info-card dd {
  margin: 6px 0 0 0;
  color: #fff; font-weight: 500; font-size: 1rem;
}
.info-card dd a {
  color: #fff;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.info-card hr {
  border: 0;
  border-top: 1px solid var(--c-line);
  margin: 22px 0;
}

/* Form */
.lead-form {
  background: var(--c-bg-elev);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  padding: 28px;
}
.lead-form fieldset + fieldset { margin-top: var(--s-4); }
.lead-form .fld {
  display: block; margin-bottom: 16px;
}
.lead-form .fld > span.lab {
  display: block;
  color: #fff; font-weight: 500; font-size: .92rem;
  margin-bottom: 6px;
}
.lead-form .fld > span.lab em {
  color: var(--c-text-muted);
  font-style: normal; font-weight: 400; margin-left: 4px;
}
.lead-form .fld-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
}
@media (max-width: 540px) { .lead-form .fld-row { grid-template-columns: minmax(0, 1fr); } }

.lead-form input[type="text"],
.lead-form input[type="email"],
.lead-form input[type="tel"],
.lead-form textarea {
  width: 100%;
  background: var(--c-bg);
  color: #fff;
  border: 1px solid var(--c-line);
  border-radius: var(--radius-s);
  padding: 12px 14px;
  font: inherit;
  min-height: 48px;
  transition: border-color 220ms var(--ease-smooth), box-shadow 220ms var(--ease-smooth), background-color 220ms var(--ease-smooth);
}
.lead-form textarea { resize: vertical; min-height: 140px; }
.lead-form input:focus,
.lead-form input:focus-visible,
.lead-form textarea:focus,
.lead-form textarea:focus-visible {
  outline: none;
  border-color: var(--c-accent);
  box-shadow: 0 0 0 1px var(--c-accent);
  background: #0e141d;
}

.lead-form .consent {
  display: flex; gap: 10px; align-items: flex-start;
  margin: 14px 0 10px;
  font-size: .92rem; color: var(--c-text-dim);
  cursor: pointer;
  min-height: 44px;
}
.lead-form .consent input {
  margin-top: 4px;
  accent-color: var(--c-accent);
  width: 18px; height: 18px;
}
.lead-form .consent a {
  color: var(--c-accent-soft);
  background-image: linear-gradient(var(--c-accent), var(--c-accent));
  background-position: 50% 100%;
  background-size: 0% 1.5px;
  background-repeat: no-repeat;
  transition: background-size 320ms var(--ease-smooth), background-position 320ms var(--ease-smooth);
}
.lead-form .consent a:hover {
  background-size: 100% 1.5px;
  background-position: 0% 100%;
}

.lead-form .hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px; height: 1px;
  overflow: hidden;
  pointer-events: none;
}

.form-aside {
  background: var(--c-bg-elev);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  padding: 24px;
  position: sticky;
  top: calc(var(--header-h) + 16px);
}
.form-aside h3 { margin-top: 0; }
.form-aside ul { color: var(--c-text-dim); padding-left: 20px; }
.form-aside li { margin-bottom: 6px; font-size: .94rem; }

/* Form status */
.form-status {
  max-height: 0; opacity: 0; padding: 0;
  overflow: hidden; transform: translateY(-4px);
  margin-top: 0;
  border-left: 3px solid transparent;
  background: transparent;
  color: var(--c-text-dim);
  border-radius: var(--radius-s);
  transition: max-height 360ms var(--ease-smooth), opacity 260ms var(--ease-smooth), transform 260ms var(--ease-smooth), padding 260ms var(--ease-smooth), background-color 260ms var(--ease-smooth), color 260ms var(--ease-smooth), border-color 260ms var(--ease-smooth), margin 260ms var(--ease-smooth);
}
.form-status:not(:empty) {
  max-height: 8em;
  opacity: 1;
  transform: none;
  padding: 14px 18px;
  margin-top: 16px;
  background: rgba(255,255,255,.04);
  border-left-color: var(--c-text-muted);
}
.form-status.pending {
  background: rgba(217,164,65,.08);
  border-left-color: var(--c-accent);
  color: var(--c-accent-soft);
}
.form-status.ok {
  background: rgba(76,175,124,.1);
  border-left-color: var(--c-success);
  color: #a8e6c4;
}
.form-status.err {
  background: rgba(217,83,79,.1);
  border-left-color: var(--c-danger);
  color: #f5b8b6;
}

/* Switch */
.switch {
  display: inline-flex; align-items: center; gap: 12px;
  cursor: pointer;
  padding: 6px 0;
  min-height: 44px;
}
.switch-wrap {
  --sw-w: 48px;
  --sw-h: 26px;
  --sw-pad: 3px;
  --sw-knob: calc(var(--sw-h) - var(--sw-pad) * 2);
  position: relative; display: inline-block;
  width: var(--sw-w); height: var(--sw-h);
  flex: 0 0 var(--sw-w);
}
.switch-wrap input {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  opacity: 0; margin: 0; cursor: pointer; z-index: 2;
}
.switch-track {
  position: absolute; inset: 0;
  border-radius: 999px;
  background: var(--c-track);
  transition: background-color 320ms var(--ease-smooth);
}
.switch-knob {
  position: absolute;
  top: var(--sw-pad); left: var(--sw-pad);
  width: var(--sw-knob); height: var(--sw-knob);
  border-radius: 50%;
  background: #fff;
  pointer-events: none;
  z-index: 1;
  transition: transform 360ms var(--ease-warm);
  box-shadow: 0 2px 4px rgba(0,0,0,.25);
}
.switch-wrap input:checked ~ .switch-track {
  background: var(--c-accent);
}
.switch-wrap input:checked ~ .switch-knob {
  transform: translateX(calc(var(--sw-w) - var(--sw-knob) - var(--sw-pad) * 2));
}
.switch-wrap input:disabled ~ .switch-track { opacity: .6; cursor: not-allowed; }
.switch-label { color: var(--c-text); }
.switch-hint {
  display: block;
  color: var(--c-text-muted);
  font-size: .85rem; margin-top: 3px;
}

/* Footer */
.site-footer {
  background: #0a0e14;
  border-top: 1px solid var(--c-line);
  padding: 50px 0 22px;
  margin-top: 0;
  color: var(--c-text-muted);
  font-size: .93rem;
}
.site-footer .cols {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 40px;
}
.site-footer .cols > * { min-width: 0; }
@media (max-width: 880px) { .site-footer .cols { grid-template-columns: 1fr 1fr; gap: 28px; } }
@media (max-width: 540px) { .site-footer .cols { grid-template-columns: 1fr; } }
.site-footer h4 { color: #fff; font-size: .98rem; margin-bottom: 14px; }
.site-footer ul { list-style: none; padding: 0; margin: 0; }
.site-footer li { margin-bottom: 8px; }
.site-footer a:not(.btn) { color: var(--c-text-dim); }
.site-footer a:not(.btn):hover { color: #fff; }
.site-footer .brand { margin-bottom: 14px; }
.site-footer .footer-about { margin: 0; }
.foot-bottom {
  border-top: 1px solid var(--c-line);
  margin-top: 36px; padding-top: 22px;
  text-align: center;
  font-size: .88rem;
}
.foot-bottom p { margin: 0; color: var(--c-text-muted); }
.foot-bottom p + p { margin-top: 6px; }
.foot-bottom .legal-id {
  color: var(--c-text-muted);
  font-size: .82rem;
}
.cookie-link {
  background: none; border: 0; padding: 0;
  color: var(--c-text-dim);
  font: inherit;
  cursor: pointer;
  text-align: left;
}
.cookie-link:hover { color: #fff; }

/* Cookie banner */
.cookie-banner {
  position: fixed;
  left: 16px; right: 16px; bottom: 16px;
  background: #11161f;
  border: 1px solid var(--c-line);
  border-radius: var(--radius-l);
  box-shadow: var(--shadow-l);
  padding: 22px 26px;
  z-index: 9000;
  max-width: 980px;
  margin: 0 auto;
  opacity: 0;
  transform: translateY(10px) scale(.98);
  transition: opacity 280ms var(--ease-smooth), transform 320ms var(--ease-smooth);
}
.cookie-banner.is-visible { opacity: 1; transform: none; }
.cookie-banner[hidden],
.cookie-settings[hidden] { display: none !important; }
.cookie-title { color: #fff; font-weight: 600; margin: 0 0 6px 0; font-size: 1.1rem; }
.cookie-desc { margin: 0 0 16px 0; color: var(--c-text-dim); font-size: .93rem; }
.cookie-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.cookie-actions .btn { min-height: 44px; padding: 0 20px; font-size: .92rem; }

/* Cookie settings modal */
.cookie-settings {
  position: fixed; inset: 0;
  z-index: 9500;
  display: flex; align-items: center; justify-content: center;
  padding: 20px;
  background: rgba(8, 12, 20, .7);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  opacity: 0;
  transition: opacity 280ms var(--ease-smooth);
}
.cookie-settings.is-visible { opacity: 1; }
.cookie-settings-dialog {
  max-width: 560px;
  width: 100%;
  background: #11161f;
  border: 1px solid var(--c-line);
  border-radius: var(--radius-l);
  padding: 28px 30px;
  box-shadow: var(--shadow-l);
  max-height: 86vh;
  overflow-y: auto;
  transform: translateY(12px) scale(.98);
  transition: transform 320ms var(--ease-smooth);
  position: relative;
}
.cookie-settings.is-visible .cookie-settings-dialog { transform: none; }
.cookie-settings-dialog h2 { margin-top: 0; }
.cookie-close {
  position: absolute;
  top: 14px; right: 14px;
  width: 36px; height: 36px;
  background: transparent;
  border: 1px solid var(--c-line);
  color: var(--c-text-dim);
  border-radius: 50%;
  font-size: 1.4rem; line-height: 1;
  cursor: pointer;
  display: grid; place-items: center;
  transition: background-color 220ms var(--ease-smooth), color 220ms var(--ease-smooth), border-color 220ms var(--ease-smooth);
}
.cookie-close:hover { color: #fff; border-color: var(--c-accent-soft); background: var(--c-bg-elev); }
.cookie-option {
  display: flex; justify-content: space-between; gap: 16px;
  padding: 14px 0;
  border-bottom: 1px solid var(--c-line);
  align-items: flex-start;
}
.cookie-option:last-of-type { border-bottom: 0; }
.cookie-option .meta { flex: 1; min-width: 0; }
.cookie-option .meta strong {
  color: #fff;
  display: block;
  font-size: .98rem;
  margin-bottom: 4px;
}
.cookie-option .meta span {
  color: var(--c-text-dim); font-size: .9rem;
  overflow-wrap: anywhere;
}
.cookie-settings-actions {
  margin-top: 16px; padding-top: 16px;
  border-top: 1px solid var(--c-line);
  display: flex; justify-content: flex-end; gap: 10px;
}

/* Sitemap page */
.sitemap-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}
@media (max-width: 900px) { .sitemap-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 540px) { .sitemap-grid { grid-template-columns: minmax(0, 1fr); } }
.sitemap-col {
  background: var(--c-bg-elev);
  border: 1px solid var(--c-line);
  border-radius: var(--radius-m);
  padding: 24px;
  transition: border-color .26s var(--ease-smooth), transform .26s var(--ease-smooth);
}
.sitemap-col:hover { border-color: rgba(217,164,65,.4); transform: translateY(-2px); }
.sitemap-col h2 { margin-top: 0; font-size: 1.2rem; }
.sitemap-col ul { list-style: none; padding: 0; margin: 0; }
.sitemap-col li { margin-bottom: 10px; }
.sitemap-col a:not(.btn) {
  color: var(--c-accent-soft);
  display: inline-block;
  background-image: linear-gradient(var(--c-accent), var(--c-accent));
  background-position: 50% 100%;
  background-size: 0% 1.5px;
  background-repeat: no-repeat;
  transition: background-size 320ms var(--ease-smooth), background-position 320ms var(--ease-smooth);
}
.sitemap-col a:not(.btn):hover {
  background-size: 100% 1.5px;
  background-position: 0% 100%;
}
.sitemap-col .sub { color: var(--c-text-muted); font-size: .88rem; margin-top: 4px; display: block; }

/* 404 */
.err-wrap {
  min-height: 70vh;
  display: grid; place-items: center; text-align: center;
  padding: 40px 0;
}
.err-code {
  font-size: clamp(5rem, 14vw, 9rem);
  line-height: 1;
  color: var(--c-accent); font-weight: 700; letter-spacing: -.04em;
  margin-bottom: 16px;
}

/* Reveal gated by .js so noJS renders content visible */
.js [data-reveal] {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 640ms var(--ease-out), transform 640ms var(--ease-out);
  will-change: transform, opacity;
}
.js [data-reveal="right"] { transform: translateX(-20px); }
.js [data-reveal="left"]  { transform: translateX(20px); }
.js [data-reveal="zoom"]  { transform: scale(.96); }
.js [data-reveal].is-visible {
  opacity: 1;
  transform: none;
}

/* Intro animations gated by .js */
.js body:not(.is-loaded) [data-intro] { opacity: 0; }
.js body.is-loaded [data-intro="hero-eyebrow"] { animation: stage-rise 680ms var(--ease-warm) both; }
.js body.is-loaded [data-intro="hero-h1"]      { animation: stage-rise 780ms var(--ease-warm) 80ms both; }
.js body.is-loaded [data-intro="hero-lead"]    { animation: stage-rise 760ms var(--ease-warm) 180ms both; }
.js body.is-loaded [data-intro="hero-cta"]     { animation: stage-rise 740ms var(--ease-warm) 260ms both; }
.js body.is-loaded [data-intro="hero-media"]   { animation: stage-fade 900ms var(--ease-smooth) 120ms both; }
.js body.is-loaded [data-intro="brand"]        { animation: stage-rise 520ms var(--ease-warm) 40ms both; }

@keyframes stage-rise {
  0%   { opacity: 0; transform: translateY(12px) scale(.99); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes stage-fade {
  0%   { opacity: 0; transform: scale(.98); }
  100% { opacity: 1; transform: scale(1); }
}

/* Footer spacing control */
.mt-sm { margin-top: var(--s-3); }
.mt-md { margin-top: var(--s-5); }
.mt-lg { margin-top: var(--s-7); }

.footer-about { margin-top: 14px; color: var(--c-text-muted); font-size: .93rem; }

.h-flush { margin-top: 0; }
.m-0 { margin: 0; }
.text-narrow-center { max-width: 48ch; margin-left: auto; margin-right: auto; }
.calc-subtitle {
  display: block;
  color: #fff; font-weight: 600;
  font-size: .95rem;
  margin-bottom: 10px;
}
.divider {
  border: 0;
  border-top: 1px solid var(--c-line);
  margin: 22px 0;
}
.lead-text {
  font-size: 1.05rem; color: var(--c-text-dim);
}
.subtitle-small {
  color: var(--c-text-dim); font-size: .93rem;
}
.final-cta {
  padding: 70px 0 80px;
  text-align: center;
  border-top: 1px solid var(--c-line);
}
.final-cta p { max-width: 56ch; margin-left: auto; margin-right: auto; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
  .js [data-reveal] { opacity: 1 !important; transform: none !important; filter: none !important; }
  .js body:not(.is-loaded) [data-intro] { opacity: 1 !important; }
  .hero-media { transform: none !important; }
  .hero-media .bars span { animation: none !important; }
}

/* ==========================================================================
   STAGE FX — strictly on-theme theatrical effects
   curtain, flash, spotlights, confetti, marquee bulbs, letter reveal,
   cursor light, card spotlight, magnetic buttons, CTA burst
   ========================================================================== */

/* Stage curtain — covers the viewport at load, then parts from center */
.stagefx-curtain {
  position: fixed;
  top: 0; bottom: 0;
  width: 52vw;
  z-index: 9998;
  pointer-events: none;
  background:
    repeating-linear-gradient(90deg,
      rgba(0,0,0,.38) 0 14px,
      rgba(0,0,0,0) 14px 30px),
    linear-gradient(90deg, #070a0f 0%, #101722 65%, #1a2230 100%);
  will-change: transform;
}
.stagefx-curtain.r {
  right: 0;
  background:
    repeating-linear-gradient(90deg,
      rgba(0,0,0,0) 0 14px,
      rgba(0,0,0,.38) 14px 30px),
    linear-gradient(270deg, #070a0f 0%, #101722 65%, #1a2230 100%);
  box-shadow: inset 24px 0 40px -20px rgba(0,0,0,.85);
}
.stagefx-curtain.l {
  left: 0;
  box-shadow: inset -24px 0 40px -20px rgba(0,0,0,.85);
}
.stagefx-curtain::before {
  content: "";
  position: absolute;
  top: 0; bottom: 0;
  width: 2px;
  background: linear-gradient(180deg,
    var(--c-accent-deep) 0%,
    var(--c-accent) 18%,
    #fff8e0 50%,
    var(--c-accent) 82%,
    var(--c-accent-deep) 100%);
  box-shadow:
    0 0 18px rgba(217,164,65,.75),
    0 0 40px rgba(217,164,65,.35);
}
.stagefx-curtain.l::before { right: 0; }
.stagefx-curtain.r::before { left: 0; }
.js body.stagefx-open .stagefx-curtain.l {
  animation: stagefx-curtain-l 1500ms cubic-bezier(.76,.05,.24,1) 180ms forwards;
}
.js body.stagefx-open .stagefx-curtain.r {
  animation: stagefx-curtain-r 1500ms cubic-bezier(.76,.05,.24,1) 180ms forwards;
}
@keyframes stagefx-curtain-l {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-100%); }
}
@keyframes stagefx-curtain-r {
  0%   { transform: translateX(0); }
  100% { transform: translateX(100%); }
}

/* Camera flash — fires just as curtain clears */
.stagefx-flash {
  position: fixed; inset: 0;
  z-index: 9999;
  pointer-events: none;
  opacity: 0;
  background:
    radial-gradient(ellipse at center, rgba(255,250,230,.95) 0%, rgba(255,250,230,0) 62%),
    #fff;
}
.js body.stagefx-open .stagefx-flash {
  animation: stagefx-flash 780ms ease-out 780ms forwards;
}
@keyframes stagefx-flash {
  0%   { opacity: 0; }
  10%  { opacity: .92; }
  45%  { opacity: 0; }
  100% { opacity: 0; visibility: hidden; }
}

/* Scroll-stage progress bar */
.stagefx-progress {
  position: fixed; top: 0; left: 0; right: 0;
  height: 2px; z-index: 100;
  pointer-events: none;
  background: linear-gradient(90deg,
    var(--c-accent-soft) 0%,
    var(--c-accent) 50%,
    var(--c-accent-soft) 100%);
  transform-origin: 0 0;
  transform: scaleX(var(--sp, 0));
  box-shadow:
    0 0 10px rgba(217,164,65,.85),
    0 0 22px rgba(217,164,65,.45);
  will-change: transform;
}

/* Marquee bulb strip — theater lights under the sticky header */
.stagefx-marquee {
  position: absolute;
  left: 0; right: 0; bottom: -3px;
  height: 6px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(24px, 1fr));
  align-items: center;
  pointer-events: none;
  z-index: 1;
}
.stagefx-marquee i {
  display: block;
  width: 4px; height: 4px;
  margin: 0 auto;
  border-radius: 50%;
  background: var(--c-accent);
  box-shadow:
    0 0 6px var(--c-accent-soft),
    0 0 14px rgba(217,164,65,.55);
  animation: stagefx-bulb 2.4s ease-in-out infinite;
}
.stagefx-marquee i:nth-child(3n)   { animation-delay: .25s; }
.stagefx-marquee i:nth-child(3n+1) { animation-delay: .55s; }
.stagefx-marquee i:nth-child(5n)   { animation-delay: .9s;  }
.stagefx-marquee i:nth-child(7n)   { animation-delay: 1.35s; }
.stagefx-marquee i:nth-child(11n)  { animation-delay: 1.7s;  }
@keyframes stagefx-bulb {
  0%, 100% { opacity: .38; transform: scale(.82); }
  50%      { opacity: 1;   transform: scale(1.18);
             box-shadow: 0 0 9px var(--c-accent-soft), 0 0 22px var(--c-accent); }
}

/* Spotlight cursor — warm halo follows the pointer */
.stagefx-cursor-light {
  position: fixed;
  top: 0; left: 0;
  width: 560px; height: 560px;
  margin: -280px 0 0 -280px;
  pointer-events: none;
  z-index: 1;
  mix-blend-mode: screen;
  background: radial-gradient(circle,
    rgba(240,200,120,.16) 0%,
    rgba(217,164,65,.07) 32%,
    rgba(217,164,65,0) 65%);
  opacity: 0;
  transition: opacity 360ms var(--ease-smooth);
  transform: translate3d(var(--cx, 50vw), var(--cy, 50vh), 0);
  will-change: transform;
}
body.stagefx-has-cursor .stagefx-cursor-light { opacity: 1; }

/* Hero — crossing spotlight sweeps */
.hero { position: relative; isolation: isolate; }
.stagefx-sweep {
  position: absolute;
  top: -25%;
  width: 42vw; height: 160%;
  transform-origin: 50% 0%;
  mix-blend-mode: screen;
  filter: blur(9px);
  opacity: .75;
  pointer-events: none;
  z-index: 0;
}
.stagefx-sweep::before {
  content: "";
  position: absolute;
  left: 50%; top: 0; bottom: 0;
  width: 140px;
  transform: translateX(-50%);
  background: linear-gradient(180deg,
    rgba(255,245,220,.55) 0%,
    rgba(240,200,120,.3) 30%,
    rgba(217,164,65,.1) 60%,
    rgba(217,164,65,0) 92%);
  clip-path: polygon(42% 0%, 58% 0%, 100% 100%, 0% 100%);
}
.stagefx-sweep.a {
  left: 6%;
  animation: stagefx-sweep-a 14s ease-in-out infinite;
}
.stagefx-sweep.b {
  left: 54%;
  animation: stagefx-sweep-b 17s ease-in-out infinite -4.5s;
}
@keyframes stagefx-sweep-a {
  0%, 100% { transform: rotate(-24deg); }
  50%      { transform: rotate(18deg); }
}
@keyframes stagefx-sweep-b {
  0%, 100% { transform: rotate(24deg); }
  50%      { transform: rotate(-20deg); }
}

/* Hero gold confetti rain */
.stagefx-confetti {
  position: absolute; inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0;
}
.stagefx-confetti i {
  position: absolute;
  top: -30px;
  width: 6px; height: 10px;
  background: var(--c-accent);
  opacity: .85;
  border-radius: 1px;
  transform-origin: center;
  animation: stagefx-confetti 8s linear infinite;
  will-change: transform, opacity;
}
.stagefx-confetti i:nth-child(4n) { background: var(--c-accent-soft); width: 5px; height: 9px; }
.stagefx-confetti i:nth-child(5n) { background: #fff; opacity: .7; }
.stagefx-confetti i:nth-child(7n) { background: var(--c-accent-deep); }
.stagefx-confetti i:nth-child(2n) { width: 4px; height: 12px; }
@keyframes stagefx-confetti {
  0%   { transform: translate3d(0, -30px, 0) rotate(0deg); opacity: 0; }
  8%   { opacity: .9; }
  100% { transform: translate3d(var(--drift, 30px), 120vh, 0) rotate(var(--spin, 720deg)); opacity: 0; }
}

/* Hero H1 — letter-by-letter stage reveal */
.js .hero h1 .word { display: inline-block; white-space: nowrap; }
.js .hero h1 .char {
  display: inline-block;
  opacity: 0;
  transform: translateY(.55em) rotateX(-48deg);
  transform-origin: 50% 100%;
  filter: blur(4px);
  will-change: transform, opacity, filter;
}
.js body.stagefx-open .hero h1 .char {
  animation: stagefx-char 720ms cubic-bezier(.22,1.2,.32,1) both;
  animation-delay: calc(var(--i, 0) * 26ms + 1100ms);
}
@keyframes stagefx-char {
  0%   { opacity: 0; transform: translateY(.55em) rotateX(-48deg); filter: blur(4px); text-shadow: 0 0 22px rgba(240,200,120,0); }
  55%  { opacity: 1; text-shadow: 0 0 18px rgba(240,200,120,.55); filter: blur(0); }
  100% { opacity: 1; transform: none; filter: none; text-shadow: none; }
}

/* Section kicker — stage-sign neon strips left & right */
.section-head { position: relative; }
.section-head .kicker {
  position: relative;
  display: inline-block;
}
.section-head .kicker::before,
.section-head .kicker::after {
  content: "";
  position: absolute; top: 50%;
  width: 28px; height: 1px;
  transform: translateY(-50%);
  box-shadow: 0 0 8px rgba(217,164,65,.55);
}
.section-head .kicker::before {
  right: 100%; margin-right: 12px;
  background: linear-gradient(90deg, transparent, var(--c-accent) 90%);
}
.section-head .kicker::after {
  left: 100%; margin-left: 12px;
  background: linear-gradient(-90deg, transparent, var(--c-accent) 90%);
}

/* Card — mouse-tracking spotlight + shimmer sweep on icon */
.card {
  position: relative;
  isolation: isolate;
  --mx: 50%; --my: 50%;
}
.card::before {
  content: "";
  position: absolute; inset: 0;
  border-radius: inherit;
  background: radial-gradient(240px circle at var(--mx) var(--my),
    rgba(240,200,120,.18) 0%,
    rgba(217,164,65,.07) 35%,
    transparent 62%);
  opacity: 0;
  transition: opacity 320ms var(--ease-smooth);
  pointer-events: none;
  z-index: 0;
}
.card:hover::before { opacity: 1; }
.card > * { position: relative; z-index: 1; }

.card .card-icon { position: relative; overflow: hidden; }
.card .card-icon::after {
  content: "";
  position: absolute;
  top: -40%; left: -80%;
  width: 55%; height: 180%;
  background: linear-gradient(110deg,
    transparent 0%,
    rgba(255,245,220,.55) 50%,
    transparent 100%);
  transform: skewX(-18deg);
  opacity: 0;
  pointer-events: none;
}
.card:hover .card-icon::after {
  animation: stagefx-shimmer 900ms var(--ease-smooth);
}
@keyframes stagefx-shimmer {
  0%   { opacity: 0; left: -80%; }
  25%  { opacity: 1; }
  100% { opacity: 0; left: 260%; }
}

/* Primary button — stage glint sweep on hover */
.btn.btn-primary { overflow: hidden; }
.btn.btn-primary::after {
  content: "";
  position: absolute;
  top: 0; left: -85%;
  width: 42%; height: 100%;
  background: linear-gradient(110deg,
    transparent 0%,
    rgba(255,255,255,.55) 50%,
    transparent 100%);
  transform: skewX(-20deg);
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
.btn.btn-primary:hover::after {
  animation: stagefx-glint 750ms ease-out;
}
@keyframes stagefx-glint {
  0%   { left: -85%; opacity: 0; }
  25%  { opacity: 1; }
  100% { left: 180%; opacity: 0; }
}

/* Price card — stage underline that lights up on hover */
.price { position: relative; overflow: hidden; }
.price::after {
  content: "";
  position: absolute;
  left: 18%; right: 18%; bottom: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--c-accent), transparent);
  box-shadow: 0 0 18px rgba(217,164,65,.6);
  opacity: 0;
  transform: scaleX(.25);
  transform-origin: 50% 50%;
  transition: opacity 320ms var(--ease-smooth), transform 520ms var(--ease-warm);
}
.price:hover {
  transform: translateY(-3px);
  border-color: rgba(217,164,65,.45);
  box-shadow: 0 18px 36px -18px rgba(217,164,65,.35);
}
.price:hover::after { opacity: 1; transform: scaleX(1); }

/* Calculator — result number breathes with a golden glow */
.calc-result .num {
  transition: text-shadow 420ms var(--ease-smooth);
}
.calc-result.is-updating .num {
  text-shadow:
    0 0 12px rgba(240,200,120,.65),
    0 0 28px rgba(217,164,65,.4);
}

/* Timeline orb — rotating lens-flare spikes */
.js .timeline-rail-orb::before {
  content: "";
  position: absolute;
  inset: -160%;
  background:
    conic-gradient(from 0deg,
      transparent 0deg,          rgba(240,200,120,0) 38deg,
      transparent 44deg,         rgba(240,200,120,.42) 90deg,
      transparent 96deg,         rgba(240,200,120,0) 130deg,
      transparent 135deg,        rgba(240,200,120,.42) 180deg,
      transparent 186deg,        rgba(240,200,120,0) 220deg,
      transparent 225deg,        rgba(240,200,120,.42) 270deg,
      transparent 276deg,        rgba(240,200,120,0) 310deg,
      transparent 315deg,        rgba(240,200,120,.42) 360deg);
  filter: blur(5px);
  mix-blend-mode: screen;
  opacity: .55;
  pointer-events: none;
  animation: stagefx-flare 7s linear infinite;
}
@keyframes stagefx-flare {
  0%   { transform: rotate(0deg);   }
  100% { transform: rotate(360deg); }
}

/* FAQ — stage wipe on answer open */
.faq-item.open .faq-a-inner > div {
  animation: stagefx-wipe 620ms cubic-bezier(.2,.8,.2,1) both;
}
@keyframes stagefx-wipe {
  0%   { opacity: 0; transform: translateY(-6px); clip-path: inset(0 100% 0 0); }
  100% { opacity: 1; transform: none; clip-path: inset(0 0 0 0); }
}

/* FAQ question — moving gold underline on hover */
.faq-q {
  position: relative;
  overflow: hidden;
}
.faq-q::after {
  content: "";
  position: absolute;
  left: 22px; right: 22px; bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--c-accent), transparent);
  box-shadow: 0 0 10px rgba(217,164,65,.55);
  transform: scaleX(0);
  transform-origin: 0 50%;
  transition: transform 460ms var(--ease-warm);
}
.faq-q:hover::after,
.faq-item.open .faq-q::after { transform: scaleX(1); }

/* Factor cards — staggered lift reveal */
.factor { --f: 0; }
.js [data-reveal].is-visible .factor {
  animation: stagefx-factor-in 720ms var(--ease-warm) both;
  animation-delay: calc(var(--f, 0) * 90ms);
}
@keyframes stagefx-factor-in {
  0%   { transform: translateY(18px) scale(.96); opacity: 0; border-color: rgba(217,164,65,.55); box-shadow: 0 0 24px rgba(217,164,65,.25); }
  60%  { transform: none; opacity: 1; }
  100% { transform: none; opacity: 1; border-color: var(--c-line); box-shadow: none; }
}

/* Final CTA — confetti salute when the block enters view */
.final-cta {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.stagefx-burst {
  position: absolute; inset: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0;
}
.stagefx-burst i {
  position: absolute;
  left: 50%; top: 50%;
  width: 6px; height: 10px;
  background: var(--c-accent);
  border-radius: 1px;
  opacity: 0;
  transform-origin: center;
  will-change: transform, opacity;
}
.stagefx-burst i:nth-child(4n) { background: var(--c-accent-soft); }
.stagefx-burst i:nth-child(5n) { background: #fff; }
.stagefx-burst i:nth-child(7n) { background: var(--c-accent-deep); }
.stagefx-burst.fire i {
  animation: stagefx-burst 2400ms cubic-bezier(.12,.8,.26,1) forwards;
}
@keyframes stagefx-burst {
  0%   { transform: translate(-50%, -50%) rotate(0); opacity: 0; }
  6%   { opacity: 1; }
  100% { transform:
           translate(calc(-50% + var(--dx, 0px)), calc(-50% + var(--dy, 0px)))
           rotate(var(--rot, 540deg));
         opacity: 0; }
}

/* CTA heading — spotlight target glow */
.final-cta h2 {
  position: relative;
  display: inline-block;
}
.final-cta h2::after {
  content: "";
  position: absolute;
  left: 50%; bottom: -8px;
  width: 60%; height: 2px;
  transform: translateX(-50%) scaleX(0);
  background: linear-gradient(90deg, transparent, var(--c-accent), transparent);
  box-shadow: 0 0 14px rgba(217,164,65,.6);
  transition: transform 720ms var(--ease-warm);
}
.js [data-reveal].is-visible .final-cta h2::after,
.final-cta [data-reveal].is-visible h2::after {
  transform: translateX(-50%) scaleX(1);
}

/* Brand mark — pulsing spotlight heartbeat */
.brand-mark {
  animation: stagefx-brand-pulse 3.6s var(--ease-smooth) infinite;
}
@keyframes stagefx-brand-pulse {
  0%, 100% { box-shadow:
      0 0 0 1px rgba(255,255,255,.06),
      0 10px 30px -14px rgba(185,135,36,.7),
      0 0 0 rgba(217,164,65,0); }
  50%      { box-shadow:
      0 0 0 1px rgba(255,255,255,.1),
      0 10px 30px -14px rgba(185,135,36,.7),
      0 0 26px rgba(217,164,65,.55); }
}

/* Hero bars — denser equalizer rhythm */
.hero-media .bars span { animation-duration: 1.6s !important; }

/* Reduced motion — kill non-essential stage FX */
@media (prefers-reduced-motion: reduce) {
  .stagefx-curtain,
  .stagefx-flash,
  .stagefx-progress,
  .stagefx-cursor-light,
  .stagefx-sweep,
  .stagefx-confetti,
  .stagefx-burst { display: none !important; }
  .stagefx-marquee i { animation: none !important; opacity: .7; }
  .brand-mark { animation: none !important; }
  .js .timeline-rail-orb::before { animation: none !important; }
  .js .hero h1 .char { opacity: 1 !important; transform: none !important; filter: none !important; }
}
