:root{
  --ink:#050505;
  --graphite:#121212;
  --graphite-2:#232323;
  --graphite-3:#2b2b2b;
  --bone:#EAE6DD;
  --bone-soft:#d7d2c8;
  --gilt:#BFA86A;
  --gilt-soft:rgba(191,168,106,0.16);
  --panel:rgba(22,22,22,0.58);
  --panel-strong:rgba(26,26,26,0.76);
  --text:rgba(234,230,221,0.94);
  --muted:rgba(234,230,221,0.74);
  --muted-2:rgba(234,230,221,0.56);
  --hair:rgba(234,230,221,0.12);
  --hair-strong:rgba(234,230,221,0.2);
  --focus:rgba(191,168,106,0.84);
  --sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
  --max:1160px;
  --radius:16px;
  --radius-lg:22px;
  --shadow:0 22px 70px rgba(0,0,0,0.42);
}
*{box-sizing:border-box}
html{background:var(--ink);color-scheme:dark}
body{
  margin:0; min-height:100vh; font-family:var(--sans); color:var(--text);
  background:
    radial-gradient(880px 500px at 50% 8%, rgba(191,168,106,0.08), rgba(0,0,0,0) 56%),
    radial-gradient(620px 360px at 50% 88%, rgba(234,230,221,0.05), rgba(0,0,0,0) 62%),
    linear-gradient(180deg, #070707 0%, #0b0b0b 36%, #050505 100%);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
html::before{
  content:""; position:fixed; inset:16px; border:1px solid rgba(191,168,106,0.16); border-radius:24px; pointer-events:none; z-index:0;
}
body::before{
  content:""; position:fixed; inset:0;
  background-image:
    repeating-linear-gradient(0deg, rgba(234,230,221,0.028), rgba(234,230,221,0.028) 1px, transparent 1px, transparent 96px),
    repeating-linear-gradient(90deg, rgba(234,230,221,0.028), rgba(234,230,221,0.028) 1px, transparent 1px, transparent 96px),
    repeating-linear-gradient(0deg, rgba(191,168,106,0.04), rgba(191,168,106,0.04) 1px, transparent 1px, transparent 480px),
    repeating-linear-gradient(90deg, rgba(191,168,106,0.04), rgba(191,168,106,0.04) 1px, transparent 1px, transparent 480px);
  opacity:.2; pointer-events:none; z-index:0;
}
body::after{
  content:""; position:fixed; inset:0; background-image:url("../img/noise.png"); background-repeat:repeat; opacity:.08; pointer-events:none; z-index:0;
}
.header, main, .footer{position:relative; z-index:1}
a{color:inherit; text-decoration:none}
a:hover{color:#fff}
img{max-width:100%; display:block}
p{margin:0; line-height:1.78; color:var(--muted)}
ul{margin:0; padding-left:18px}
li{margin:8px 0; line-height:1.7; color:var(--muted)}
h1,h2,h3,h4{margin:0; font-family:var(--serif); font-weight:500; color:var(--bone)}
h1{font-size:clamp(30px, 3.4vw, 46px); line-height:1.08; letter-spacing:.035em; text-transform:uppercase}
h2{font-size:clamp(26px, 2.7vw, 38px); line-height:1.1; letter-spacing:.045em; text-transform:uppercase}
h3{font-size:16px; letter-spacing:.12em; text-transform:uppercase; font-family:var(--sans); font-weight:600}
strong{color:var(--bone)}
small, .muted{color:var(--muted-2)}
:focus-visible{outline:2px solid var(--focus); outline-offset:3px; border-radius:10px}
.skip-link{
  position:absolute; left:16px; top:16px; padding:10px 12px;
  background:rgba(5,5,5,.92); border:1px solid var(--hair); border-radius:12px; transform:translateY(-150%); transition:transform .16s ease; z-index:1000;
}
.skip-link:focus-visible{transform:translateY(0)}
.container{max-width:var(--max); margin:0 auto; padding:0 24px}
.header{
  position:fixed; top:0; left:0; right:0;
  border-bottom:1px solid var(--hair);
  background:linear-gradient(to bottom, rgba(5,5,5,.94), rgba(5,5,5,.72));
  backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px);
}
.nav{
  max-width:var(--max); margin:0 auto; padding:18px 24px; display:flex; align-items:center; justify-content:space-between; gap:24px;
}
.brand{display:flex; align-items:center; padding:6px 2px; border-radius:12px}
.brand-logo{width:min(280px, 52vw); height:auto; opacity:.96}
.navlinks{display:flex; flex-wrap:wrap; gap:18px 22px; justify-content:flex-end}
.navlinks a{font-size:11px; text-transform:uppercase; letter-spacing:.18em; color:var(--muted-2); padding:8px 0; position:relative}
.navlinks a.active,.navlinks a:hover{color:var(--bone)}
.navlinks a.active::after{content:""; position:absolute; left:0; right:0; bottom:-8px; height:1px; background:linear-gradient(90deg, transparent, var(--gilt), transparent)}
main{padding-top:94px}
.hero{min-height:72vh; display:flex; align-items:center; border-bottom:1px solid var(--hair)}
.hero .container{padding-top:64px; padding-bottom:88px}
.eyebrow{font-size:11px; color:var(--gilt); text-transform:uppercase; letter-spacing:.24em; margin-bottom:18px}
.hero-logo{width:min(760px, 100%); margin:0 0 30px}
.sub{margin-top:14px; font-size:13px; letter-spacing:.22em; color:var(--bone-soft); text-transform:uppercase}
.hero-copy{max-width:760px; margin-top:22px; font-size:16px; color:var(--muted)}
.button-row{display:flex; flex-wrap:wrap; gap:14px; margin-top:30px}
.button{display:inline-flex; align-items:center; justify-content:center; min-height:46px; padding:0 18px; border:1px solid rgba(191,168,106,.32); border-radius:14px; background:linear-gradient(180deg, rgba(191,168,106,.12), rgba(191,168,106,.03)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 28px rgba(0,0,0,.22); color:var(--bone); font-size:12px; letter-spacing:.18em; text-transform:uppercase}
.button.secondary{background:rgba(234,230,221,.02); border-color:var(--hair); color:var(--bone-soft)}
.section{border-top:1px solid var(--hair)}
.section-inner{padding:88px 0}
.section-label{font-size:11px; color:var(--gilt); text-transform:uppercase; letter-spacing:.24em; margin-bottom:16px}
.section-header{max-width:760px; display:grid; gap:12px; margin-bottom:28px}
.panel{background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015)); border:1px solid var(--hair); border-radius:var(--radius); box-shadow:var(--shadow); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px)}
.grid{display:grid; gap:24px}
.grid-2{grid-template-columns:repeat(2, minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3, minmax(0,1fr))}
.card{padding:26px}
.card p + p, .card p + ul, .card ul + p{margin-top:14px}
.card strong{font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--bone)}
.keyline{height:1px; background:linear-gradient(90deg, transparent, rgba(191,168,106,.5), transparent); margin:28px 0}
.list-tight li{margin:6px 0}
.table-wrap{overflow:auto}
table{width:100%; border-collapse:collapse; min-width:640px}
th, td{padding:14px 16px; border-bottom:1px solid var(--hair); text-align:left; vertical-align:top}
th{font-size:11px; text-transform:uppercase; letter-spacing:.18em; color:var(--bone-soft); font-weight:600}
td{font-size:14px; color:var(--muted)}
.callout{padding:26px; border:1px solid rgba(191,168,106,.28); border-radius:18px; background:linear-gradient(180deg, rgba(191,168,106,.09), rgba(191,168,106,.03))}
.callout p + p{margin-top:12px}
.footer{border-top:1px solid var(--hair); padding:40px 0 48px}
.footer-grid{display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:24px}
.footer-brand-logo{width:min(260px, 64vw); opacity:.9}
.footer-copy{margin-top:12px; font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted-2)}
.footer-links{display:flex; flex-wrap:wrap; gap:14px 20px}
.footer-links a{font-size:11px; text-transform:uppercase; letter-spacing:.18em; color:var(--muted-2)}
.footer-note{margin-top:26px; padding-top:18px; border-top:1px solid var(--hair); font-size:12px; letter-spacing:.18em; text-transform:uppercase; color:var(--gilt)}
.footer-meta{margin-top:18px; font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--muted-2)}
.page-hero{padding:54px 0 18px}
.page-hero h1{font-size:clamp(28px, 3vw, 40px)}
.page-hero p{margin-top:16px; max-width:780px}
.no-top-border{border-top:none}
.surface-note{max-width:760px; margin-top:28px; padding-top:20px; border-top:1px solid var(--hair); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted-2)}
.compact-list{display:grid; gap:14px}
.compact-item{padding:18px 20px}
.compact-item strong{display:block; margin-bottom:8px; font-size:12px; letter-spacing:.16em; text-transform:uppercase}
@media (max-width:980px){
  .grid-2,.grid-3{grid-template-columns:1fr}
  .hero{min-height:auto}
}
@media (max-width:780px){
  html::before{inset:10px; border-radius:18px}
  .nav{align-items:flex-start; flex-direction:column}
  .navlinks{gap:12px 16px; justify-content:flex-start}
  .brand-logo{width:min(240px, 74vw)}
  .hero .container{padding-top:36px; padding-bottom:64px}
  .section-inner{padding:72px 0}
  .button-row{flex-direction:column; align-items:stretch}
  .button{width:100%}
}
@media (prefers-reduced-transparency: reduce){
  .header,.panel{backdrop-filter:none; -webkit-backdrop-filter:none}
  .panel{background:rgba(24,24,24,.92)}
}
