/* ============================================================
   AnalysePlus — Erweiterte Datenanalysen & Business Intelligence
   Modern analytical · content-rich · light + gray-900 bands · sky/blue
   ============================================================ */
:root{
  --ax-bg:#f3f4f6; --ax-white:#ffffff; --ax-dark:#111827; --ax-dark2:#1f2937; --ax-line:#e5e7eb;
  --ax-sky:#38bdf8; --ax-blue:#0284c7; --ax-sky-l:#bae6fd;
  --ax-ink:#111827; --ax-muted:#6b7280; --ax-slate:#9ca3af; --ax-green:#16a34a;
}
*{ -webkit-font-smoothing:antialiased; }
.font-display{ font-family:'Lexend','Inter',sans-serif; letter-spacing:-0.02em; }
.font-label{ font-family:'Lexend','Inter',sans-serif; letter-spacing:.16em; text-transform:uppercase; }
body.ax-body{ font-family:'Inter',system-ui,sans-serif; color:var(--ax-ink); background:var(--ax-bg); }

.ax-dark{ background:var(--ax-dark); color:#f3f4f6; } .ax-dark2{ background:var(--ax-dark2); color:#f3f4f6; }
.ax-white{ background:var(--ax-white); }
.text-sky{ color:var(--ax-sky); } .text-blue{ color:var(--ax-blue); } .text-muted{ color:var(--ax-muted); } .text-slate{ color:var(--ax-slate); }
.text-grad{ background:linear-gradient(100deg,var(--ax-sky),var(--ax-blue)); -webkit-background-clip:text; background-clip:text; color:transparent; }

.ax-grid{ position:relative; }
.ax-grid::before{ content:""; position:absolute; inset:0; pointer-events:none; z-index:0;
  background-image:linear-gradient(var(--ax-line) 1px,transparent 1px),linear-gradient(90deg,var(--ax-line) 1px,transparent 1px);
  background-size:40px 40px; opacity:.5; mask-image:linear-gradient(to bottom, black, transparent 80%); }

.ax-card{ background:var(--ax-white); border:1px solid var(--ax-line); border-radius:1rem; box-shadow:0 1px 2px rgba(17,24,39,.04);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.ax-card:hover{ transform:translateY(-4px); box-shadow:0 20px 44px -24px rgba(2,132,199,.4); border-color:var(--ax-sky-l); }
.ax-card-dark{ background:var(--ax-dark2); border:1px solid #374151; border-radius:1rem; transition:transform .25s ease,border-color .25s ease; }
.ax-card-dark:hover{ transform:translateY(-4px); border-color:var(--ax-sky); }

.ax-icon{ width:48px; height:48px; border-radius:.7rem; display:flex; align-items:center; justify-content:center;
  background:linear-gradient(135deg, rgba(56,189,248,.16), rgba(2,132,199,.16)); color:var(--ax-blue); }
.ax-icon-dark{ background:rgba(56,189,248,.12); color:var(--ax-sky); border:1px solid rgba(56,189,248,.2); }

.ax-badge{ display:inline-flex; align-items:center; gap:.4rem; padding:.32rem .8rem; border-radius:999px; background:rgba(56,189,248,.13); color:var(--ax-blue); font-size:.72rem; font-weight:600; }
.ax-badge-up{ background:rgba(34,197,94,.13); color:var(--ax-green); }
.ax-chip{ display:inline-flex; align-items:center; gap:.5rem; padding:.55rem 1rem; border-radius:.7rem; border:1px solid var(--ax-line); background:var(--ax-white); font-size:.9rem; font-weight:500; }

.ax-stat{ font-family:'Lexend',sans-serif; font-weight:700; letter-spacing:-0.03em; }
.ax-eyebrow{ display:inline-flex; align-items:center; gap:.5rem; font-family:'Lexend',sans-serif; text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; font-weight:700; color:var(--ax-blue); }
.ax-eyebrow::before{ content:""; width:22px; height:2px; background:var(--ax-blue); display:inline-block; }
.ax-step-num{ font-family:'Lexend',sans-serif; font-weight:800; color:var(--ax-sky-l); font-size:2.2rem; line-height:1; }

/* buttons */
.btn-blue{ background:linear-gradient(100deg,var(--ax-sky),var(--ax-blue)); color:#fff; font-weight:600; transition:transform .2s ease, box-shadow .3s ease, filter .2s ease; }
.btn-blue:hover{ transform:translateY(-2px); box-shadow:0 14px 30px -12px rgba(2,132,199,.55); filter:brightness(1.04); }
.btn-dark{ background:var(--ax-dark); color:#fff; font-weight:600; transition:transform .2s ease,background .2s ease; }
.btn-dark:hover{ transform:translateY(-2px); background:#1f2937; }
.btn-ghost{ border:1px solid var(--ax-line); color:var(--ax-ink); font-weight:600; transition:background .2s ease,border-color .2s ease; }
.btn-ghost:hover{ background:#fff; border-color:var(--ax-blue); color:var(--ax-blue); }
.btn-ghost-light{ border:1px solid rgba(255,255,255,.28); color:#fff; font-weight:600; transition:background .2s ease; }
.btn-ghost-light:hover{ background:rgba(255,255,255,.1); }

/* prose */
.ax-prose h2{ font-family:'Lexend',sans-serif; color:var(--ax-ink); font-size:1.45rem; margin:2rem 0 .6rem; }
.ax-prose h3{ font-family:'Lexend',sans-serif; color:var(--ax-ink); font-size:1.1rem; margin:1.4rem 0 .4rem; }
.ax-prose p,.ax-prose li{ color:var(--ax-muted); line-height:1.85; }
.ax-prose ul{ list-style:disc; padding-left:1.25rem; }
.ax-prose a{ color:var(--ax-blue); text-decoration:underline; }
.ax-prose table{ width:100%; border-collapse:collapse; margin:1rem 0; }
.ax-prose th,.ax-prose td{ border:1px solid var(--ax-line); padding:.7rem .9rem; text-align:left; font-size:.9rem; color:var(--ax-muted); }
.ax-prose th{ color:var(--ax-ink); font-family:'Lexend',sans-serif; font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }

.cookie-banner-hover-effect:hover{ filter:brightness(.98); }
