:root{
  --tile-noimg-bg: linear-gradient(160deg, var(--panel), var(--panel-2));
}

body{
  background:
    radial-gradient(60% 50% at 15% -10%, color-mix(in srgb, var(--accent) 20%, transparent), transparent 70%),
    radial-gradient(50% 40% at 100% 0%, color-mix(in srgb, var(--accent-2) 16%, transparent), transparent 65%),
    var(--bg);
}

.hero{
  position:relative;
  border:1px solid var(--line);
  border-radius:calc(var(--radius) + 6px);
  background:
    radial-gradient(55% 70% at 20% 0%, color-mix(in srgb, var(--accent) 32%, transparent), transparent 70%),
    radial-gradient(45% 60% at 85% 15%, color-mix(in srgb, var(--accent-2) 26%, transparent), transparent 68%),
    radial-gradient(80% 60% at 50% 100%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 75%),
    var(--panel);
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute;
  inset:-40% -20% auto -20%;
  height:140%;
  background:
    radial-gradient(40% 50% at 30% 20%, color-mix(in srgb, var(--accent-2) 22%, transparent), transparent 70%),
    radial-gradient(35% 45% at 70% 10%, color-mix(in srgb, var(--accent) 18%, transparent), transparent 70%);
  filter:saturate(1.2);
  opacity:.8;
  pointer-events:none;
}
.hero-title{
  font-weight:700;
  letter-spacing:.01em;
  background:linear-gradient(100deg, var(--text) 30%, var(--accent) 65%, var(--accent-2) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.hero-sub{ color:var(--text-2); }

.fact b{
  font-family:var(--font-head);
  background:linear-gradient(120deg, var(--accent), var(--accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-weight:700;
}

h1,h2,h3{ font-weight:700; letter-spacing:.01em; }
h2{ position:relative; padding-left:.05em; }
h2::before{
  content:"";
  display:inline-block;
  width:.5em;
  height:.5em;
  margin-right:.4em;
  border-radius:30% 70% 65% 35%/40% 35% 65% 60%;
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  vertical-align:middle;
  transform:translateY(-2px) rotate(10deg);
}

.card,.feature,.faq-item,.access{
  background:linear-gradient(180deg, var(--panel), var(--panel-2));
  border:1px solid var(--line);
  border-radius:var(--radius);
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.card:hover,.feature:hover,.access:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb, var(--accent) 55%, var(--line));
  box-shadow:0 18px 40px -20px color-mix(in srgb, var(--accent) 45%, transparent);
}

.feature .icon{
  color:var(--on-accent);
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  border-radius:14px;
  box-shadow:0 0 0 1px var(--line), 0 10px 24px -12px color-mix(in srgb, var(--accent) 60%, transparent);
}

.btn-primary{
  background:linear-gradient(135deg, var(--accent), var(--accent-2));
  color:var(--on-accent);
  border:1px solid color-mix(in srgb, var(--accent) 60%, var(--line));
  box-shadow:0 6px 18px -8px color-mix(in srgb, var(--accent) 60%, transparent);
  transition:box-shadow .25s ease, transform .2s ease, filter .25s ease;
}
.btn-primary:hover{
  box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 30%, transparent), 0 12px 30px -10px color-mix(in srgb, var(--accent-2) 70%, transparent);
  transform:translateY(-2px);
  filter:brightness(1.06);
}
.btn-ghost{
  border:1px solid var(--line);
  color:var(--text);
  transition:border-color .25s ease, box-shadow .25s ease;
}
.btn-ghost:hover{
  border-color:var(--accent-2);
  box-shadow:0 0 0 1px color-mix(in srgb, var(--accent-2) 40%, transparent);
}

.badge{
  border:1px solid var(--line);
  background:color-mix(in srgb, var(--accent) 12%, var(--panel));
  color:var(--text);
}

.tile{
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--panel);
  overflow:hidden;
  transition:transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.tile:hover{
  transform:translateY(-4px) scale(1.01);
  border-color:var(--accent);
  box-shadow:0 20px 44px -22px color-mix(in srgb, var(--accent-2) 55%, transparent);
}
.tile.noimg{ background:var(--tile-noimg-bg); }
.tile .gp{ color:var(--accent-2); }
.tile .nm{ color:var(--text); }

.tab{
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--text-2);
  transition:all .2s ease;
}
.tab.active,.tab:hover{
  border-color:var(--accent);
  color:var(--text);
  background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 22%, var(--panel)), color-mix(in srgb, var(--accent-2) 14%, var(--panel)));
}

.chip{
  border:1px solid var(--line);
  background:var(--panel-2);
  color:var(--text-2);
}
.chip:hover{ border-color:var(--accent-2); color:var(--text); }

.offer{
  border:1px solid var(--line);
  border-radius:calc(var(--radius) + 4px);
  background:
    radial-gradient(70% 100% at 0% 0%, color-mix(in srgb, var(--accent) 30%, transparent), transparent 70%),
    radial-gradient(70% 100% at 100% 100%, color-mix(in srgb, var(--accent-2) 24%, transparent), transparent 70%),
    var(--panel);
}
.offer-badge{ color:var(--accent-2); }
.offer-amount{
  background:linear-gradient(100deg, var(--accent), var(--accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

.faq-q{ color:var(--text); }
.faq-item{ border-color:var(--line); }
.faq-item:hover{ border-color:color-mix(in srgb, var(--accent) 40%, var(--line)); }

.trust .t18{
  border:1px solid var(--accent-2);
  color:var(--accent-2);
}

.site-header{
  border-bottom:1px solid var(--line);
  background:color-mix(in srgb, var(--panel) 85%, transparent);
  backdrop-filter:blur(10px);
}