/* StrategyInsight — Strategische Analysen & Business Intelligence */
:root{
  --si-bg:#f3f4f6; --si-white:#ffffff; --si-navy:#111827; --si-navy2:#1f2937; --si-line:#e5e7eb;
  --si-sky:#38bdf8; --si-blue:#0284c7; --si-sky-l:#bae6fd;
  --si-ink:#111827; --si-muted:#6b7280; --si-slate:#9ca3af; --si-green:#16a34a;
}
*{ -webkit-font-smoothing:antialiased; }
.font-display{ font-family:'Albert Sans','Inter',sans-serif; letter-spacing:-0.02em; }
.font-label{ font-family:'Albert Sans','Inter',sans-serif; letter-spacing:.16em; text-transform:uppercase; }
body.si-body{ font-family:'Inter',system-ui,sans-serif; color:var(--si-ink); background:var(--si-bg); }
.si-navy{ background:var(--si-navy); color:#f3f4f6; } .si-navy2{ background:var(--si-navy2); color:#f3f4f6; } .si-white{ background:var(--si-white); }
.text-sky{ color:var(--si-blue); } .text-skyl{ color:var(--si-sky); } .text-muted{ color:var(--si-muted); } .text-slate{ color:var(--si-slate); }
.text-grad{ background:linear-gradient(100deg,var(--si-sky),var(--si-blue)); -webkit-background-clip:text; background-clip:text; color:transparent; }
.si-grid{ position:relative; }
.si-grid::before{ content:""; position:absolute; inset:0; pointer-events:none; z-index:0; background-image:linear-gradient(var(--si-line) 1px,transparent 1px),linear-gradient(90deg,var(--si-line) 1px,transparent 1px); background-size:40px 40px; opacity:.5; mask-image:radial-gradient(ellipse at 60% 0%, black, transparent 75%); }
.si-card{ background:var(--si-white); border:1px solid var(--si-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; }
.si-card:hover{ transform:translateY(-4px); box-shadow:0 22px 44px -24px rgba(2,132,199,.4); border-color:var(--si-sky-l); }
.si-card-dark{ background:var(--si-navy2); border:1px solid #374151; border-radius:1rem; transition:transform .25s ease,border-color .25s ease; }
.si-card-dark:hover{ transform:translateY(-4px); border-color:var(--si-sky); }
.si-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(--si-blue); }
.si-badge{ display:inline-flex; align-items:center; gap:.4rem; padding:.32rem .8rem; border-radius:999px; background:rgba(56,189,248,.14); color:var(--si-blue); font-size:.72rem; font-weight:600; }
.si-stat{ font-family:'Albert Sans',sans-serif; font-weight:800; letter-spacing:-0.03em; }
.si-eyebrow{ display:inline-flex; align-items:center; gap:.5rem; font-family:'Albert Sans',sans-serif; text-transform:uppercase; letter-spacing:.16em; font-size:.72rem; font-weight:700; color:var(--si-blue); }
.si-eyebrow::before{ content:""; width:22px; height:2px; background:var(--si-blue); display:inline-block; }
.si-eyebrow-light{ color:var(--si-sky); } .si-eyebrow-light::before{ background:var(--si-sky); }
.si-step-num{ font-family:'Albert Sans',sans-serif; font-weight:800; color:var(--si-sky-l); font-size:2.2rem; line-height:1; }
.btn-blue{ background:linear-gradient(100deg,var(--si-sky),var(--si-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(--si-navy); 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(--si-line); color:var(--si-ink); font-weight:600; transition:background .2s ease,border-color .2s ease; }
.btn-ghost:hover{ background:#fff; border-color:var(--si-blue); color:var(--si-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); }
.si-prose h2{ font-family:'Albert Sans',sans-serif; color:var(--si-ink); font-size:1.45rem; margin:2rem 0 .6rem; }
.si-prose h3{ font-family:'Albert Sans',sans-serif; color:var(--si-ink); font-size:1.1rem; margin:1.4rem 0 .4rem; }
.si-prose p,.si-prose li{ color:var(--si-muted); line-height:1.85; }
.si-prose ul{ list-style:disc; padding-left:1.25rem; }
.si-prose a{ color:var(--si-blue); text-decoration:underline; }
.si-prose table{ width:100%; border-collapse:collapse; margin:1rem 0; }
.si-prose th,.si-prose td{ border:1px solid var(--si-line); padding:.7rem .9rem; text-align:left; font-size:.9rem; color:var(--si-muted); }
.si-prose th{ color:var(--si-ink); font-family:'Albert Sans',sans-serif; font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; }
.cookie-banner-hover-effect:hover{ filter:brightness(.98); }
