/* =========================================================
   LEGAL PAGES — Singh & Partner · Finance ON
   Shared stylesheet for Impressum / Datenschutz / Erstinformation.
   Token set mirrors index.html's design system.
   ========================================================= */
:root{
  color-scheme: light;

  --c-950:#07070a; --c-925:#0a0a0f; --c-900:#0d0d13; --c-875:#101018;
  --c-850:#13131c; --c-800:#181822; --c-750:#1d1d29; --c-700:#24242f;
  --c-650:#2b2b38; --c-600:#333341; --c-500:#454554; --c-400:#5c5c6b;
  --c-300:#7a7a89; --c-200:#a3a3af; --c-100:#cbcbd3; --c-50:#f1f1f3;

  --g-950:#0b2413; --g-800:#12391e; --g-700:#1a5229; --g-600:#1f6e34;
  --g-500:#248a3d; --g-400:#2fb350; --g-300:#34c759; --g-200:#6fd98a;
  --g-100:#b4ecc2; --g-50:#e6f8eb;

  --n-900:#0b2413; --n-800:#12391e; --n-700:#1a5229; --n-600:#1f6e34;
  --n-500:#248a3d; --n-400:#2fb350; --n-300:#34c759; --n-200:#6fd98a;
  --n-100:#b4ecc2; --n-50:#e6f8eb;

  --bg: var(--c-950);
  --bg-alt: var(--c-900);
  --bg-raised: var(--c-850);
  --surface: var(--c-850);
  --line: rgba(52,199,89,.16);
  --line-strong: rgba(52,199,89,.34);
  --line-hair: rgba(255,255,255,.08);

  --text-primary: var(--c-50);
  --text-secondary: var(--c-200);
  --text-tertiary: var(--c-400);
  --text-inverse: var(--c-950);

  --gold: var(--g-300);
  --gold-bright: var(--g-200);
  --gold-dim: var(--g-600);

  --accent-primary-grad: linear-gradient(120deg, var(--g-400), var(--g-200));
  --accent-primary-shadow: 0 0 0 1px rgba(52,199,89,.3), 0 0 36px rgba(52,199,89,.18);
  --accent-primary-shadow-hover: 0 0 0 1px rgba(52,199,89,.5), 0 16px 40px rgba(52,199,89,.28);

  --font-serif:"Instrument Serif", Georgia, serif;
  --font-sans:"Epilogue", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --fs-h1: clamp(2.2rem, 1.8rem + 3vw, 5rem);
  --fs-h2: clamp(1.7rem, 1.5rem + 1.4vw, 2.6rem);
  --fs-h3: clamp(1.25rem, 1.15rem + .7vw, 1.7rem);
  --fs-body-lg: clamp(1.15rem, 1.08rem + .4vw, 1.45rem);
  --fs-body: clamp(1.03rem, 1rem + .2vw, 1.15rem);
  --fs-small: clamp(.9rem, .87rem + .15vw, 1rem);
  --fs-micro: clamp(.74rem, .72rem + .1vw, .82rem);

  --lh-tight: 1.1;
  --lh-normal: 1.5;
  --lh-relaxed: 1.7;
  --ls-tight: -.02em;
  --ls-wide: .08em;
  --ls-wider: .2em;

  --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem; --sp-5:1.25rem;
  --sp-6:1.5rem; --sp-8:2rem; --sp-10:2.5rem; --sp-12:3rem; --sp-16:4rem;

  --section-py: clamp(3rem, 2.6rem + 2.5vw, 5.5rem);
  --container-max: 860px;
  --container-pad: clamp(1.25rem, 1rem + 3vw, 3rem);

  --r-xs:6px; --r-sm:10px; --r-md:16px;
  --dur-fast:.22s; --dur-base:.4s;
  --ease-out-quart: cubic-bezier(.25,1,.5,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--text-primary);
  font-family:var(--font-sans);
  font-size:var(--fs-body);
  line-height:var(--lh-normal);
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
ul{list-style:none}
::selection{background:var(--gold-dim);color:var(--c-50)}

.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}

/* ---- nav (simplified, static — no scroll/burger JS on legal pages) ---- */
.nav{position:sticky;top:0;z-index:50;background:rgba(13,13,19,.82);backdrop-filter:blur(16px);border-bottom:1px solid var(--line-hair)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-6);padding-block:1rem}
.brand{display:flex;flex-direction:column;gap:2px;font-family:var(--font-serif);font-size:1.3rem;color:var(--text-primary)}
.brand span{font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--text-tertiary)}
.nav-back{font-size:var(--fs-small);color:var(--text-secondary);border:1px solid var(--line);border-radius:var(--r-xs);padding:.6em 1.1em;transition:border-color var(--dur-fast),color var(--dur-fast)}
.nav-back:hover{border-color:var(--gold);color:var(--gold-bright)}

/* ---- typography ---- */
h1,h2,h3,h4{font-family:var(--font-serif);font-weight:400;line-height:var(--lh-tight);letter-spacing:var(--ls-tight);color:var(--text-primary)}
h1{font-size:var(--fs-h1);margin-bottom:.3em}
h2{font-size:var(--fs-h2);margin-block:2.2em .6em}
h3{font-size:var(--fs-h3);margin-block:1.6em .5em}
p{color:var(--text-secondary);margin-bottom:1em}
.lede{font-size:var(--fs-body-lg);color:var(--text-secondary);max-width:60ch;line-height:var(--lh-relaxed)}
.eyebrow{font-size:var(--fs-micro);letter-spacing:.32em;text-transform:uppercase;color:var(--gold);font-weight:600;display:inline-flex;align-items:center;gap:.6em}
.eyebrow::before{content:"";width:1.4em;height:1px;background:var(--gold-dim)}

.legal-content ul{margin:0 0 1em 0}
.legal-content li{color:var(--text-secondary);position:relative;padding-left:1.3em;margin-bottom:.5em}
.legal-content li::before{content:"—";position:absolute;left:0;color:var(--gold-dim)}
.legal-content strong{color:var(--text-primary);font-weight:600}
.legal-content a{color:var(--gold-bright);text-decoration:underline;text-underline-offset:2px}
.legal-content table{width:100%;border-collapse:collapse;margin:1em 0 1.5em;font-size:var(--fs-small)}
.legal-content th,.legal-content td{text-align:left;padding:.6em .8em;border-bottom:1px solid var(--line-hair);vertical-align:top}
.legal-content th{color:var(--text-tertiary);font-weight:600;width:38%}

/* ---- placeholder markers ---- */
.ph{background:rgba(52,199,89,.12);border:1px dashed var(--line-strong);border-radius:4px;padding:.05em .5em;color:var(--gold-bright);font-style:normal;font-size:.95em}
.ph-block{background:rgba(52,199,89,.06);border:1px dashed var(--line-strong);border-radius:var(--r-sm);padding:1em 1.2em;margin:.8em 0 1.4em;color:var(--text-secondary);font-size:var(--fs-small)}
.ph-block strong{color:var(--gold-bright)}

section{padding-block:var(--section-py)}

/* ---- footer (matches index.html) ---- */
footer{border-top:1px solid var(--line-hair);padding-block:var(--sp-12) var(--sp-8);background:var(--bg-alt)}
.footer-links{display:flex;flex-wrap:wrap;gap:.4em .8em;font-size:var(--fs-micro);color:var(--text-tertiary)}
.footer-links a{color:var(--text-tertiary);transition:color var(--dur-fast)}
.footer-links a:hover{color:var(--gold-bright)}
.footer-links a[aria-current="page"]{color:var(--gold)}
.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-4);margin-top:var(--sp-6);padding-top:var(--sp-6);border-top:1px solid var(--line-hair);font-size:var(--fs-micro);color:var(--text-tertiary)}

@media (max-width:640px){
  .nav-inner{gap:var(--sp-3)}
  .nav-back{padding:.5em .8em;font-size:var(--fs-micro)}
}
