/* ============================================================
   LUMINARY — Shared stylesheet for legal / document pages
   ============================================================ */
:root{
  --navy:#050A1F; --royal:#0A1628; --ice:#93C5FD; --bronze:#CD7F32;
  --gold:#B8860B; --champagne:#F5DEB3; --white:#F8FAFF; --soft:#CBD5E1;
  --darkest:#020612; --line:rgba(205,127,50,.22);
  --display:'Satoshi','Inter',sans-serif;
  --ease:cubic-bezier(0.16,1,0.3,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;background:var(--navy)}
body{background:var(--navy);color:var(--soft);font-family:'Inter',system-ui,sans-serif;font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:var(--ice);text-decoration:none;transition:color .3s var(--ease)}
a:hover{color:var(--champagne)}
:focus-visible{outline:2px solid var(--bronze);outline-offset:3px;border-radius:2px}
::selection{background:rgba(205,127,50,.3);color:var(--white)}

/* scrollbar */
::-webkit-scrollbar{width:10px}
::-webkit-scrollbar-track{background:var(--darkest)}
::-webkit-scrollbar-thumb{background:linear-gradient(var(--bronze),var(--gold));border-radius:10px;border:2px solid var(--darkest)}

/* top bar */
.doc-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;
  padding:.8rem clamp(1.2rem,4vw,3rem);background:rgba(5,10,31,.82);backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid var(--line)}
.doc-brand img{height:54px;width:auto;display:block;filter:drop-shadow(0 2px 12px rgba(205,127,50,.3))}
.doc-back{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--champagne);
  border:1px solid var(--bronze);border-radius:2px;padding:.55rem 1.1rem;white-space:nowrap;transition:background .35s var(--ease),color .35s var(--ease)}
.doc-back:hover{background:var(--bronze);color:var(--navy)}

/* document body */
.doc{max-width:840px;margin:0 auto;padding:clamp(2.4rem,6vw,4.5rem) clamp(1.2rem,5vw,2rem) 4rem}
.doc .eyebrow{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;color:var(--bronze);font-weight:600}
.doc h1{font-family:var(--display);font-weight:700;color:var(--white);letter-spacing:-.02em;line-height:1.08;
  font-size:clamp(2rem,1.4rem + 3vw,3.2rem);margin:1rem 0 1.4rem}
.doc h2{font-family:var(--display);font-weight:600;color:var(--white);letter-spacing:-.01em;
  font-size:clamp(1.25rem,1rem + 1.1vw,1.6rem);margin:2.6rem 0 .9rem;padding-top:1.4rem;border-top:1px solid var(--line)}
.doc h3{font-family:var(--display);font-weight:600;color:var(--ice);font-size:1.05rem;margin:1.6rem 0 .5rem}
.doc p{margin:0 0 1rem;max-width:72ch}
.doc ul,.doc ol{margin:0 0 1.1rem;padding-left:1.3rem;max-width:72ch}
.doc li{margin-bottom:.5rem}
.doc strong{color:var(--white);font-weight:600}
.doc address{font-style:normal}
.doc .lead{font-family:var(--display);font-weight:300;color:var(--ice);font-size:clamp(1.05rem,.95rem + .6vw,1.25rem);margin-bottom:2rem}
.doc small,.doc .meta{color:#8aa0bd;font-size:.85rem}

/* placeholder highlight */
.ph{background:rgba(205,127,50,.16);border:1px dashed rgba(205,127,50,.6);color:var(--champagne);
  border-radius:3px;padding:.05em .45em;font-weight:500;font-style:normal;white-space:nowrap}

/* Muster / disclaimer box */
.muster{display:flex;gap:1rem;align-items:flex-start;background:linear-gradient(135deg,rgba(205,127,50,.14),rgba(5,10,31,.4));
  border:1px solid rgba(205,127,50,.5);border-left:3px solid var(--bronze);border-radius:4px;
  padding:1.2rem 1.3rem;margin-bottom:2.6rem}
.muster svg{flex-shrink:0;width:24px;height:24px;color:var(--bronze);margin-top:2px}
.muster p{margin:0;font-size:.92rem;color:var(--champagne)}
.muster strong{color:var(--white)}

/* info card (e.g. addresses) */
.card{background:rgba(10,22,40,.6);border:1px solid var(--line);border-radius:4px;padding:1.2rem 1.4rem;margin:1rem 0}
.card p{margin:.2rem 0}

/* tables (cookie list) */
.doc table{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.9rem}
.doc th,.doc td{text-align:left;padding:.7rem .8rem;border-bottom:1px solid var(--line);vertical-align:top}
.doc th{font-family:var(--display);font-weight:600;color:var(--white);background:rgba(10,22,40,.5);letter-spacing:.02em}
.doc td{color:var(--soft)}

/* cross-links + footer */
.doc-links{display:flex;flex-wrap:wrap;gap:.6rem 1.4rem;margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--line)}
.doc-links a{font-size:.85rem;letter-spacing:.04em}
.doc-foot{background:var(--darkest);border-top:1px solid var(--line);text-align:center;padding:1.8rem 1.2rem}
.doc-foot small{color:var(--soft);font-size:.76rem;letter-spacing:.05em}

@media (max-width:560px){
  .doc-brand img{height:44px}
  .doc h2{margin-top:2rem}
}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
