:root{
    --bg:#0B0C10; --bg-2:#101218; --paper:#F3E9D6; --paper-dim:#CFC4AE; --muted:#8E8778;
    --amber:#E0A458; --amber-2:#FFC77A; --red:#C8343A; --line:rgba(243,233,214,.12);
    --card:rgba(243,233,214,.04); --maxw:1080px; --gutter:clamp(16px,4vw,40px);
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} *{animation:none!important;transition:none!important}}
  body{margin:0;background:var(--bg);color:var(--paper);font-family:"Source Serif 4",Georgia,serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
  a{color:var(--amber-2)}
  a:hover{color:#fff}
  .mono{font-family:"IBM Plex Mono",ui-monospace,monospace;letter-spacing:.22em;text-transform:uppercase;font-size:12px;font-weight:600}
  .eyebrow{color:var(--amber);display:inline-flex;align-items:center;gap:12px}
  .eyebrow::before{content:"";width:28px;height:2px;background:var(--red);flex:none}
  h1,h2,h3{font-family:"Playfair Display",Georgia,serif;letter-spacing:-.01em;margin:0}
  h1{font-size:clamp(40px,7vw,78px);line-height:.98;font-weight:700}
  h1 em{font-style:italic;color:var(--amber-2);font-weight:600}
  h2{font-size:clamp(28px,4vw,44px);line-height:1.08;margin:0 0 10px}
  h3{font-size:22px;line-height:1.25;margin:28px 0 8px}
  p{margin:0 0 14px}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}

  /* header */
  header{position:sticky;top:0;z-index:10;background:rgba(11,12,16,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
  .brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--paper);font-family:"Playfair Display",serif;font-weight:700;font-size:20px;white-space:nowrap}
  @media (max-width:640px){.brand{font-size:17px;gap:8px}.brand .logo{width:28px;height:28px;border-radius:7px}}
  .brand .logo{width:32px;height:32px;flex:none;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.5)}
  nav ul{list-style:none;margin:0;padding:0;display:flex;gap:4px}
  nav a{display:block;padding:8px 12px;border-radius:999px;text-decoration:none;color:var(--paper-dim);font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
  nav a:hover,nav a[aria-current="page"]{color:var(--paper);background:var(--card)}
  @media (max-width:640px){nav a{padding:8px 9px;font-size:11px;letter-spacing:.06em}}

  /* lamp */
  .lamp{position:relative;overflow:hidden}
  .lamp::before{content:"";position:absolute;inset:0;pointer-events:none;
    background:radial-gradient(ellipse 60% 55% at 50% -10%,rgba(224,164,88,.32),rgba(224,164,88,.08) 45%,transparent 70%)}
  .cord{position:absolute;left:50%;top:0;width:2px;height:72px;background:linear-gradient(#2a2a2e,#111);transform:translateX(-50%)}
  .shade{position:absolute;left:50%;top:72px;transform:translateX(-50%);width:150px;height:62px;border-radius:0 0 80px 80px/0 0 62px 62px;background:linear-gradient(#20222a,#0c0d11);box-shadow:0 1px 0 rgba(255,255,255,.06) inset,0 18px 40px rgba(0,0,0,.6)}
  .shade::after{content:"";position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);width:120px;height:12px;border-radius:50%;background:var(--amber-2);filter:blur(6px);opacity:.9}
  @media (max-width:640px){.cord{height:48px}.shade{top:48px;width:110px;height:46px}.shade::after{width:86px}}

  /* hero */
  .hero{padding:200px 0 80px;text-align:center}
  @media (max-width:640px){.hero{padding:150px 0 56px}}
  .hero .eyebrow{justify-content:center;margin-bottom:22px}
  .hero p.lead{max-width:620px;margin:22px auto 34px;font-size:clamp(18px,2.2vw,21px);color:var(--paper-dim)}
  .pill{display:inline-block;border:1px solid rgba(224,164,88,.55);border-radius:999px;padding:10px 20px;color:var(--paper);font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.2em;text-transform:uppercase}
  .cta{display:inline-flex;align-items:center;gap:10px;margin-top:28px;padding:14px 22px;border-radius:14px;background:var(--amber);color:#1a1206;text-decoration:none;font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:13px;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 10px 30px rgba(224,164,88,.25)}
  .cta:hover{background:var(--amber-2);color:#1a1206}
  .cta svg{width:18px;height:18px}

  /* sections */
  section.block,article.block{padding:72px 0;border-top:1px solid var(--line)}
  .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:30px}
  .grid.four{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
  .card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:22px}
  .card .mono{color:var(--amber);display:block;margin-bottom:10px}
  .card p{color:var(--paper-dim);margin:0;font-size:16px}
  .thread{position:relative}
  .thread::before{content:"";position:absolute;left:-1px;top:28px;width:10px;height:10px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px rgba(200,52,58,.25);transform:translateX(-50%)}
  .meta{color:var(--muted);font-size:14px;margin:0 0 26px}

  /* legal */
  .legal{max-width:760px}
  .legal h3{color:var(--paper)}
  .legal ul{padding-left:22px;margin:0 0 14px}
  .legal li{margin:4px 0}
  .legal p,.legal li{color:var(--paper-dim)}
  .legal strong{color:var(--paper);font-weight:600}
  table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:15px}
  th,td{text-align:left;padding:10px 10px;border-bottom:1px solid var(--line);vertical-align:top;color:var(--paper-dim)}
  th{color:var(--paper);font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
  .note{border-left:3px solid var(--red);padding:10px 16px;background:var(--card);border-radius:0 12px 12px 0;color:var(--paper-dim);margin:14px 0 20px}

  /* support */
  .support .card a{word-break:break-all}

  footer{border-top:1px solid var(--line);padding:34px 0 48px;color:var(--muted);font-size:14px}
  footer .row{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:space-between;align-items:center}
  footer a{color:var(--paper-dim);text-decoration:none}
  footer a:hover{color:var(--paper)}

  .page-head{padding-top:120px;padding-bottom:24px}
  @media (max-width:640px){.page-head{padding-top:96px;padding-bottom:16px}}
  .back{display:flex;width:max-content;gap:8px;align-items:center;text-decoration:none;color:var(--amber);font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px}
  .toc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px;padding:0;list-style:none}
  .toc a{display:block;padding:6px 12px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--paper-dim);font-size:14px}
  .toc a:hover{color:var(--paper);border-color:rgba(224,164,88,.5)}
  .skip{position:absolute;left:-9999px}
  .skip:focus{left:16px;top:16px;background:var(--amber);color:#000;padding:8px 12px;border-radius:8px;z-index:20}
