/* Lumaa policy pages — shared stylesheet (v2 quiet-luxury system) */
:root{
  --bg:#0b0a08; --bg-2:#0e0d0a; --surface:#11100d; --surface-2:#161512;
  --hairline:rgba(235,228,210,0.10); --hairline-2:rgba(235,228,210,0.18); --hairline-3:rgba(235,228,210,0.30);
  --text:#ece7da; --text-2:#a39d8e; --text-3:#6b6557; --text-4:#403c33;
  --accent:hsl(43 30% 74%); --accent-deep:hsl(43 24% 60%);
  --accent-dim:hsl(43 30% 74% / 0.10); --accent-line:hsl(43 30% 74% / 0.35);
  --ok:#9db896; --bad:#b87a6f;
  --serif:'Fraunces', Georgia, serif;
  --sans:'Instrument Sans', -apple-system, sans-serif;
  --mono:'JetBrains Mono', ui-monospace, monospace;
  --radius:2px;
  --ease:cubic-bezier(0.22,0.61,0.36,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
::selection{background:var(--accent-dim);color:var(--text)}
a{color:var(--accent);text-decoration:none;transition:color .3s var(--ease)}
a:hover{color:var(--accent-deep);text-decoration:underline}

.policy-nav{position:sticky;top:0;background:rgba(11,10,8,.85);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);border-bottom:1px solid var(--hairline);z-index:10}
.policy-nav-inner{max-width:880px;margin:0 auto;padding:18px 24px;display:flex;justify-content:space-between;align-items:center}
.policy-logo{font-family:var(--serif);font-size:26px;font-weight:400;letter-spacing:-0.02em;color:var(--text);text-decoration:none;font-variation-settings:"opsz" 60;line-height:1}
.policy-logo:hover{color:var(--text);text-decoration:none}
.policy-logo em{font-style:italic;color:var(--accent)}
.policy-logo span{color:var(--accent)}
.policy-nav-back{font-size:12px;font-weight:500;letter-spacing:.08em;color:var(--text-3);text-decoration:none}
.policy-nav-back:hover{color:var(--text-2);text-decoration:none}

.policy-wrap{max-width:880px;margin:0 auto;padding:60px 24px 80px}
.policy-header{margin-bottom:48px;padding-bottom:32px;border-bottom:1px solid var(--hairline)}
.policy-eyebrow{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--accent);margin-bottom:14px}
.policy-header h1{font-family:var(--serif);font-size:44px;font-weight:300;letter-spacing:-0.03em;line-height:1.1;margin-bottom:18px;font-variation-settings:"opsz" 144}
.policy-meta{font-size:13px;color:var(--text-3);display:flex;flex-wrap:wrap;gap:6px 18px}
.policy-meta strong{color:var(--text-2);font-weight:500}

.policy-content h2{font-family:var(--serif);font-size:26px;font-weight:400;margin:52px 0 16px;letter-spacing:-0.015em;line-height:1.25;font-variation-settings:"opsz" 96}
.policy-content h3{font-family:var(--serif);font-size:18px;font-weight:400;margin:28px 0 10px;color:var(--text-2);letter-spacing:-0.01em}
.policy-content p{margin-bottom:16px;color:var(--text-2)}
.policy-content strong{color:var(--text);font-weight:600}
.policy-content ul,.policy-content ol{margin:12px 0 20px 24px;color:var(--text-2)}
.policy-content li{margin-bottom:8px}
.policy-content code{font-family:var(--mono);font-size:.9em;background:var(--surface-2);border:1px solid var(--hairline);padding:2px 7px;border-radius:var(--radius);color:var(--accent)}
.policy-content table{width:100%;border-collapse:collapse;margin:16px 0 24px;font-size:14px}
.policy-content th,.policy-content td{padding:10px 14px;border:1px solid var(--hairline);text-align:left;vertical-align:top}
.policy-content th{background:var(--surface);font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-2)}
.policy-content td{color:var(--text-2)}
.policy-content blockquote{border-left:2px solid var(--accent-line);background:var(--surface);padding:14px 18px;margin:18px 0;color:var(--text-2);font-size:14px;border-radius:0 var(--radius) var(--radius) 0}
.policy-callout{background:var(--accent-dim);border:1px solid var(--accent-line);padding:18px 20px;border-radius:var(--radius);margin:24px 0;color:var(--text-2);font-size:14px;line-height:1.65}
.policy-callout strong{color:var(--accent)}

.policy-toc{background:transparent;border:1px solid var(--hairline);border-radius:var(--radius);padding:24px 28px;margin-bottom:40px}
.policy-toc h4{font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3);margin-bottom:14px}
.policy-toc ul{list-style:none;margin:0;display:flex;flex-direction:column;gap:6px}
.policy-toc li{margin:0}
.policy-toc a{color:var(--text-2);font-size:14px}
.policy-toc a:hover{color:var(--accent);text-decoration:none}

.policy-footer{margin-top:64px;padding-top:32px;border-top:1px solid var(--hairline);font-size:13px;color:var(--text-3);display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;align-items:center}
.policy-footer-links{display:flex;flex-wrap:wrap;gap:18px}
.policy-footer-links a{color:var(--text-2);font-size:13px}
.policy-footer-links a:hover{color:var(--accent);text-decoration:none}

@media (max-width:640px){
  .policy-header h1{font-size:33px}
  .policy-content h2{font-size:22px}
  .policy-wrap{padding:40px 18px 60px}
  .policy-content table{font-size:13px}
  .policy-content th,.policy-content td{padding:8px 10px}
}

/* Cookie banner (used on marketing pages) */
.cookie-banner{position:fixed;bottom:18px;left:18px;right:18px;max-width:520px;margin:0 auto;background:var(--surface-2);border:1px solid var(--hairline-2);border-radius:var(--radius);padding:18px 20px;z-index:9999;box-shadow:0 16px 48px rgba(0,0,0,.55);font-size:13px;color:var(--text-2);line-height:1.55;display:none}
.cookie-banner.show{display:block}
.cookie-banner p{margin-bottom:14px}
.cookie-banner a{color:var(--accent)}
.cookie-banner-actions{display:flex;gap:8px;flex-wrap:wrap}
.cookie-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--radius);cursor:pointer;border:1px solid transparent;font-family:var(--sans);transition:all .35s var(--ease)}
.cookie-btn-accept{background:var(--accent);color:#14120c;border-color:var(--accent)}
.cookie-btn-accept:hover{background:var(--accent-deep);border-color:var(--accent-deep)}
.cookie-btn-decline{background:transparent;color:var(--text-2);border-color:var(--hairline-2)}
.cookie-btn-decline:hover{color:var(--text);border-color:var(--hairline-3)}
