
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;600&display=swap');

:root{
  --ink:#0e1a24;
  --slate:#23394E;
  --gold:#c8a75a;
  --muted:#6b7c8f;
  --hair:#e9edf2;
  --bg:#ffffff;
  --danger:#5a2a2a;
  --softdanger:#fbf3f3;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}


/* --- v6.1 micro-typography: calm density, consistent rhythm --- */
body{font-size:16px; line-height:1.6;}
p{margin:0 0 14px; line-height:1.75;}
p:last-child{margin-bottom:0;}
/* tighter links without visual noise */
a:focus{outline:2px solid rgba(200,167,90,.35); outline-offset:2px;}

body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
  letter-spacing:-0.01em;
}

a{color:inherit;text-decoration:none}
a:hover{opacity:.88}

.container{max-width:1120px;margin:0 auto;padding:84px 24px}
.container.narrow{max-width:780px}
.hair{height:1px;background:var(--hair);width:100%;margin:28px 0}


hr.divider{border:0;border-top:1px solid var(--hair);margin:0}
hr.divider--pause{max-width:1120px;margin:22px auto 0}
@media (max-width:600px){
  hr.divider--pause{margin-top:18px}
}


nav.site-nav{
  position:sticky;top:0;
  background:#fff;
  border-bottom:1px solid var(--hair);
  box-shadow:0 6px 18px rgba(0,0,0,.04);
  z-index:50;
}
.nav-inner{
  max-width:1120px;margin:0 auto;padding:14px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:16px
}
.brand{display:flex;align-items:baseline;gap:10px}
.brand .mark{width:14px;height:14px;border-radius:4px;border:2px solid var(--gold);display:inline-block;background:rgba(200,167,90,.10);box-shadow:0 1px 0 rgba(0,0,0,.06), inset 0 0 0 1px rgba(255,255,255,.55)}
.brand .name{font-weight:650;letter-spacing:0.10em;font-size:14px}
.brand .tag{font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--muted)}
.menu{display:flex;flex-wrap:nowrap;gap:10px;font-size:14px;color:var(--slate);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
 .menu::-webkit-scrollbar{display:none}

.menu a{text-decoration:none;color:inherit;padding:7px 12px;border-radius:999px;white-space:nowrap;border:1px solid transparent;transition:background .15s ease,border-color .15s ease,color .15s ease}
.menu a:hover{background:#f6f8fb;border-color:var(--hair)}
.menu a.active{color:var(--ink);background:rgba(203,166,97,.16);border-color:rgba(203,166,97,.35)}

.hero{border-top:4px solid var(--gold);border-bottom:1px solid var(--hair)}
.hero h1{font-size:56px;line-height:1.02;font-weight:500;margin:0 0 14px}
.hero h2{font-size:30px;line-height:1.25;font-weight:400;margin:0 0 22px;color:var(--slate)}
.hero p{font-size:18px;line-height:1.7;color:var(--muted);margin:0 0 12px}

.hero p:last-of-type{margin-bottom:0}
.hero p strong{color:var(--slate);font-weight:600}


.pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.pill{font-size:12px;color:var(--slate);border:1px solid var(--hair);padding:8px 12px;border-radius:999px}

.kicker{font-size:12px;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
.section-title{font-size:26px;font-weight:500;margin:0 0 20px}
.lead{font-size:18px;line-height:1.7;color:var(--ink)}
.muted{color:var(--muted)}

.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:22px}
.card{
  grid-column:span 6;
  border:1px solid var(--hair);
  border-radius:20px;
  padding:24px;
  background:#fff;
}
.card h3{margin:0 0 10px;font-size:16px;color:var(--slate);font-weight:600}
.card p{margin:0;color:var(--muted);line-height:1.65;font-size:14.5px}
@media (max-width:860px){
  .card{grid-column:span 12}
  .hero h1{font-size:44px}
  .hero h2{font-size:24px}
}

.list{margin:0;padding:0;list-style:none;border-top:1px solid var(--hair)}
.list li{padding:14px 0;border-bottom:1px solid var(--hair);display:flex;justify-content:space-between;gap:16px}
.list .left{font-size:15px}
.list .right{font-size:12.5px;color:var(--muted);white-space:nowrap}

.callout{
  border-left:3px solid var(--gold);
  padding:16px 18px;
  background:#fbfbfd;
  border-radius:0;
  color:var(--slate);
  line-height:1.65;
}
.warning{
  border-left:3px solid var(--danger);
  padding:16px 18px;
  background:var(--softdanger);
  border-radius:0;
  line-height:1.65;
}

.mock{
  border:1px solid var(--hair);
  border-radius:18px;
  padding:18px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  font-size:12px;letter-spacing:0.06em;
}
.red{color:var(--danger);font-weight:600}

footer{border-top:1px solid var(--hair);background:#fafbfd}
footer .container{padding:44px 24px}
footer p{margin:0;color:var(--muted);font-size:12.5px;line-height:1.7}
.smallcap{font-size:11.5px;color:var(--muted)}


/* RGRA trigger section */
.section.trigger .list { list-style: none; padding-left: 0; margin-top: 12px; }
.section.trigger .list li { display:block; }


/* Added: recognition section padding + containment */
.recognition{max-width:1100px;margin:0 auto;padding:48px 24px;}
.recognition p{margin:0 0 14px 0;}
.recognition p:last-child{margin-bottom:0;}

/* Mobile-safe padding for home sections that were rendered edge-to-edge */
.absence,
.asymmetry,
.restraint{
  max-width:1100px;
  margin:0 auto;
  padding:0 24px;
}

@media (max-width: 480px){
  .absence,
  .asymmetry,
  .restraint{
    padding:0 16px;
  }
}

/* Mobile headline tuning */
@media (max-width: 480px) {
  .hero h1 {
    font-size: 32px;
    line-height: 1.05;
  max-width: 22ch;
    letter-spacing: -0.02em;
  }
  .hero .lead {
    font-size: 16px;
    line-height: 1.5;
  }
}

/* v3 mobile guard: ensure padding always exists even if cached CSS was different */
@media (max-width: 600px){
  .section{padding-left:20px !important; padding-right:20px !important;}
  .container{padding-left:20px !important; padding-right:20px !important;}
}


/* --- RGRA v5 micro-tuning: spacing utilities (no visual redesign) --- */
.rgra-mt-16 { margin-top: 20px; }
.rgra-mt-20 { margin-top: 20px; }
.rgra-mt-24 { margin-top: 24px; }

.rgra-mt-18 { margin-top: 18px; }


@media (max-width: 520px){
  .nav-inner{padding:10px 0}
}

@media (max-width: 860px){
  header.navbar .nav-inner{
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  header.navbar .nav-links{
    max-width: none;
    justify-content: flex-start;
  }
}

@media (max-width: 720px){
  /* Two-row constitutional index: always visible, never cramped */
  header.navbar .nav-links{
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(2, auto);
    gap: 10px 14px;
    overflow-x: auto;
    padding-bottom: 6px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  header.navbar .nav-links::-webkit-scrollbar{ display:none; }
  header.navbar .nav-links a{
    padding: 8px 10px;
    font-size: 12px;
    letter-spacing: 0.03em;
  }
  header.navbar .brand-mark{ font-size: 28px; }
  header.navbar .brand-sub{ font-size: 10px; letter-spacing: 0.20em; }
  header.navbar .brand::after{ width: 60px; margin-top: 8px; }
}

.brand{gap:10px}
  .brand .name{font-size:15px}
  .brand .tag{display:none}
  .menu{gap:8px}
  .menu a{padding:6px 10px}
}


/* --- Print-friendly: board-grade hard copy --- */
@media print{
  nav, .pills, footer{display:none !important;}
  .container{padding:28px 0 !important; max-width:100% !important;}
  body{color:#000; background:#fff;}
  a{text-decoration:underline;}
  .card{border:1px solid #bbb; break-inside:avoid; page-break-inside:avoid;}
  .hero{border-top:0; border-bottom:1px solid #bbb;}
}



/* =========================
   v56 Institutional Surface
   ========================= */

:root{
  --rgra-gold: #b9954b;
  --rgra-ink: #0b0b0b;
  --rgra-muted: #5d5d5d;
  --rgra-warm: #f2ede3;
  --rgra-warm-2: #fbfaf7;
  --rgra-rule: rgba(0,0,0,.12);
  --rgra-max: 980px;
  --rgra-narrow: 72ch;
}

body{ color: var(--rgra-ink); }

.container{ max-width: var(--rgra-max); margin: 0 auto; padding: 0 20px; }
.container.narrow{ max-width: var(--rgra-narrow); }

.page{ padding-bottom: 36px; }

/* Nav */
.nav.v56{
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--rgra-rule);
}
.nav.v56 .nav-inner{
  max-width: var(--rgra-max);
  margin: 0 auto;
  padding: 12px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
}
.logo{ display:flex; flex-direction:column; text-decoration:none; color:inherit; line-height:1.05; }
.logo-mark{ font-weight:750; letter-spacing:.14em; font-size: 14px; }
.logo-sub{ font-size: 13px; color: var(--rgra-muted); letter-spacing:.08em; margin-top: 2px; }
.nav-links{
  margin-left:auto;
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  gap: 10px 14px;
  flex-wrap: wrap;           /* always visible; wraps on small screens */
  max-width: 560px;          /* protects the brand area */
}

.nav-links a{
  text-decoration:none;
  color: rgba(0,0,0,.80);
  font-size: 13px;
  letter-spacing: .02em;
  font-weight: 600;
  padding: 8px 10px;
  border-radius: 0;          /* constitutional */
  line-height: 1.1;
  display:inline-block;
}

.nav-links a:hover{
  color: rgba(0,0,0,.95);
}

.nav-links a[aria-current="page"]{
  color: rgba(0,0,0,.95);
  border-bottom: 2px solid var(--rgra-gold);
  padding-bottom: 6px;
}

@media (max-width: 520px){
  .nav-inner{ align-items:flex-start; }
  .nav-links{ max-width: 220px; }
}


.nav-toggle, .nav-close{
  border: 1px solid var(--rgra-rule);
  background: transparent;
  padding: 8px 10px;
  font-size: 13px;
  letter-spacing:.08em;
  text-transform: uppercase;
}
.nav-toggle{ display:none; margin-left:auto; }

.nav-overlay{
  position: fixed;
  inset: 0;
  z-index: 60;
  background: rgba(10,10,10,.92);
  color: #fff;
}
.nav-overlay-inner{
  height:100%;
  display:flex;
  flex-direction:column;
  padding: 34px 24px;
  gap: 36px;
}
.nav-overlay .nav-close{
  align-self:flex-end;
  border-color: rgba(255,255,255,.24);
  color:#fff;
}
.nav-overlay-link{
  color:#fff;
  text-decoration:none;
  font-size: 26px;
  font-weight: 600;
  letter-spacing:.06em;
  text-transform: uppercase;
  padding: 26px 10px;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.nav-overlay-sep{
  height: 1px;
  background: rgba(255,255,255,.18);
  margin: 2px 0;
}
.nav-overlay-link.is-active{ border-bottom-color: var(--rgra-gold); }

@media (max-width: 860px){
  /* No hamburger / overlay. Full nav stays visible. */
  .nav-links{ display:flex; }
  .nav-toggle{ display:none !important; }
}

/* Overlay menu is disabled in this build (institutional top-nav only). */
.nav-overlay{ display:none !important; }

/* Hero */
.page-hero{
  padding: 62px 0 44px 0;
  background: linear-gradient(180deg, var(--rgra-warm-2), #fff 80%);
}
.eyebrow{
  margin:0 0 10px 0;
  font-size: 13px;
  letter-spacing:.22em;
  color: rgba(0,0,0,.6);
}
.page-hero h1{
  margin:0;
  font-family: "Source Serif 4", serif;
  font-weight: 600;
  letter-spacing: .01em;
  font-size: clamp(30px, 3.8vw, 52px);
  line-height: 1.05;
}
.lead{
  margin-top: 20px;
  font-size: 18px;
  line-height: 1.55;
  color: rgba(0,0,0,.72);
  max-width: 60ch;
}

/* Sections */
.section{ padding: 40px 0; }
.section.alt{ background: var(--rgra-warm); border-top: 1px solid rgba(0,0,0,.06); border-bottom: 1px solid rgba(0,0,0,.06); }
.section h2{
  margin: 0 0 12px 0;
  font-size: 18px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.section p{ line-height: 1.72; }
.section .muted{ color: rgba(0,0,0,.62); }

/* Box system */
.box{
  border-left: 2px solid var(--rgra-gold);
  padding: 16px 18px;
  background: rgba(0,0,0,.035);
}
.section.alt .box{ background: rgba(255,255,255,.52); }

.box ul{ margin: 12px 0 0 18px; }
.box li{ margin: 6px 0; }

.inline-link{ display:inline-block; margin-top: 10px; text-decoration:none; color: inherit; border-bottom: 1px solid rgba(0,0,0,.35); }
.inline-link:hover{ border-bottom-color: var(--rgra-gold); }

/* Footer */
.footer.v56{
  border-top: 1px solid var(--rgra-rule);
  border-bottom: 1px solid var(--rgra-rule);
  padding: 54px 0 54px;
  background: linear-gradient(180deg, rgba(255,255,255,0.9), var(--rgra-warm-2) 140%);
  box-shadow: 0 -10px 24px rgba(0,0,0,0.04);
}
.footer.v56 .container{max-width:720px;}
.footer-title{
  margin:0 0 6px 0;
  letter-spacing:.18em;
  font-weight:800;
  font-size: 14px;
  text-transform: uppercase;
}
.footer-line{
  margin:0;
  color: rgba(0,0,0,.62);
  font-size: 14px;
  line-height: 1.6;
}

/* Kill legacy "More" UI if any leftover */
details, summary{ display:none !important; }


/* --- v56.2 institutional surface overrides --- */

/* Logo: less "newspaper", more seal */
.logo{gap:2px}
.logo-mark{
  font-family:"Source Serif 4", serif;
  font-weight:600;
  letter-spacing:.08em;
  font-size:15px;
  position:relative;
  display:inline-block;
}
.logo-mark::after{
  content:"";
  display:block;
  height:2px;
  width:34px;
  background:var(--rgra-gold);
  margin-top:6px;
  opacity:.85;
}
.logo-sub{
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

/* Nav: calmer, cleaner */
nav.site-nav{box-shadow:none}
.nav-link{font-size:13px; letter-spacing:.06em; text-transform:uppercase; color:rgba(0,0,0,.72)}
.nav-link.is-active{border-bottom:2px solid var(--rgra-gold); padding-bottom:8px}
.nav-toggle,.nav-close{border:1px solid rgba(0,0,0,.16); border-radius:0}

/* Mobile overlay: full-screen, readable */
.nav-overlay-inner{
  padding: 26px 22px;
  gap: 18px;
}
.nav-overlay-link{
  font-size: 22px;
  line-height: 1.25;
  padding: 14px 6px;
}
@media (max-width: 520px){
  .nav-overlay-link{font-size:20px}
}

/* Hero density */
.page-hero{padding:54px 0 34px}
.lead{max-width:60ch}
.lead-2{margin-top:10px; font-size:16px; color:rgba(0,0,0,.62)}
.home-hero .eyebrow{opacity:.75}

/* Section rhythm + boxes */
.section{padding:54px 0}
.section.alt{background:var(--rgra-warm)}
.section h2{
  font-family:"Source Serif 4", serif;
  font-weight:600;
  letter-spacing:.01em;
  font-size: clamp(24px, 3vw, 34px);
  margin:0 0 18px;
}
.section h3{
  margin:0 0 10px;
  font-size:14px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:rgba(0,0,0,.72);
}

.box{
  border-left:2px solid var(--rgra-gold);
  background:rgba(255,255,255,.76);
  padding:18px 18px;
}
.section.alt .box{background:rgba(255,255,255,.86)}
.box ul{margin:10px 0 0 18px}
.box li{margin:6px 0}
.box .insert{margin-top:14px}

/* Two-column split */
.two-col{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
@media (max-width: 860px){
  .two-col{grid-template-columns:1fr}
}

/* Diagram section: keep centred */
.diagram .container{padding-top:0}


@media (max-width:600px){
  .page-hero{ padding: 46px 0 38px 0; }
  .page-hero h1{ font-size: 30px; line-height:1.06; }
  .lead{ font-size: 16.5px; line-height:1.6; margin-top: 18px; }
  .nav-overlay-inner{ padding: 28px 20px; gap: 22px; }
  .nav-overlay-link{ font-size: 22px; padding: 20px 6px; }
  .section{ padding: 34px 0; }
}


/* v61 sovereign pass: wordmark, cadence, seal blocks */
.logo-mark{
  font-family: "Source Serif 4", serif;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  position: relative;
  display: inline-block;
}
.logo-mark::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-6px;
  height:2px;
  background: var(--gold);
  opacity:.9;
}
.logo-sub{
  margin-top:10px;
}

/* Hero: engraved, not editorial */
.page-hero h1{
  letter-spacing: .02em;
  max-width: 20ch;
  text-wrap: balance;
}
@media (max-width: 600px){
  .page-hero h1{
    max-width: 18ch;
    letter-spacing: .015em;
  }
}

/* Rhythm: authority breathing, but no dead-air gaps */
.section{ padding: 54px 0; }
@media (max-width: 600px){
  .section{ padding: 42px 0; }
}

/* Seal blocks: not highlight boxes */
.callout.authority-block{
  background: #f2ede3;
  border-left: 2px solid var(--gold);
  padding: 14px 18px;
}
.authority-title{
  font-weight: 800;
  letter-spacing: .18em;
  font-size: 12px;
}
.authority-body{
  color: var(--ink);
  margin-top: 10px;
  line-height: 1.55;
}

/* Overlay menu: more constitutional index feel */
.nav-overlay-link{
  font-size: 18px;
  letter-spacing: .02em;
}


/* --- v62 sovereign instrument pass: rhythm + compression (no copy changes) --- */

/* Homepage: reduce manifesto scroll via typographic rhythm + list compression */
@media (min-width: 920px){
  body.home .box ul{
    column-count: 2;
    column-gap: 30px;
  }
  body.home .box ul li{
    break-inside: avoid;
  }
}
body.home .section{ padding: 60px 0 !important; }
@media (max-width: 600px){
  body.home .section{ padding: 46px 0 !important; }
}

/* Hero: engraved calm (more breathing, less editorial) */
.page-hero h1{
  max-width: 22ch;
  letter-spacing: -0.01em;
  margin: 0 0 18px 0;
}
.page-hero .lead{ margin-top: 18px; }
@media (max-width: 600px){
  .page-hero h1{ max-width: 18ch; margin-bottom: 20px; }
  .page-hero .lead{ margin-top: 18px; }
}

/* Overlay menu: chapter index hierarchy */
.nav-overlay-inner{
  padding: 44px 28px;
  gap: 34px;
}
.nav-overlay-link{
  font-size: 22px;
  padding: 22px 6px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.nav-overlay-sep{
  height: 1px;
  background: rgba(255,255,255,.14);
  width: 100%;
}
@media (max-width: 600px){
  .nav-overlay-inner{ padding: 36px 22px; gap: 32px; }
  .nav-overlay-link{ font-size: 22px; padding: 22px 6px; }
}

/* Authority blocks: seal, not highlight */
.callout.authority-block{
  background: #f6f1e8;
  border-left: 2px solid var(--gold);
  padding: 14px 16px;
}
.authority-title{
  font-weight: 850;
  letter-spacing: .22em;
  font-size: 12px;
}
.authority-body{ margin-top: 12px; line-height: 1.6; }

/* Footer: more isolation, engraved signature */
footer .container{
  padding-top: 88px !important;
  padding-bottom: 88px !important;
  max-width: 760px !important;
}
footer strong{
  letter-spacing: .16em;
  text-transform: uppercase;
}


/* ==============================
   v62.2 – Sovereign Top Navigation (always visible)
   Removes dependence on hamburger/JS and prevents mobile nav string-collapse.
   ============================== */

header.navbar{
  position: sticky;
  top: 0;
  background: rgba(255,255,255,0.96);
  -webkit-backdrop-filter: saturate(180%) blur(8px);
  backdrop-filter: saturate(180%) blur(8px);
  border-bottom: 1px solid rgba(0,0,0,0.06);
  z-index: 1000;
}

header.navbar .nav-inner{
  max-width: 980px;
  margin: 0 auto;
  padding: 14px 18px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

header.navbar .brand{
  display: inline-block;
  text-decoration: none;
  color: inherit;
}

header.navbar .brand-mark{
  display: block;
  font-family: ui-serif, Georgia, "Times New Roman", serif;
  font-weight: 850;
  letter-spacing: 0.015em;
  line-height: 1;
  font-size: 30px;
  text-shadow: 0 1px 0 rgba(0,0,0,0.06);
}

header.navbar .brand-sub{
  display: block;
  margin-top: 5px;
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  font-weight: 750;
  letter-spacing: 0.18em;
  font-size: 11px;
  opacity: 0.78;
}

header.navbar .brand::after{
  content: "";
  display: block;
  margin-top: 10px;
  height: 2px;
  width: 64px;
  background: var(--rgra-gold, #b59a57);
}

header.navbar .nav-links{
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 12px 18px;
  max-width: 580px;
}

header.navbar .nav-links a{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  font-weight: 650;
  letter-spacing: 0.02em;
  font-size: 13px;
  padding: 8px 12px;
  text-decoration: none;
  color: inherit;
  opacity: 0.9;
}

header.navbar .nav-links a:hover{ opacity: 1; }

@media (max-width: 520px){
  header.navbar .nav-links{ max-width: 240px; }
}

/* Global text discipline so content never looks draft on mobile */
main{ max-width: 760px; margin: 0 auto; padding-left: 18px; padding-right: 18px; }
p{ line-height: 1.75; }



/* ===========================
   V64 PATCH — SOVEREIGN DEPTH + TOPNAV (NO HAMBURGER)
   =========================== */

/* Global rhythm: less dead air, more cadence */
:root{
  --paper:#ffffff;
  --paper-2:#fbf8f2;
  --ink:#121418;
  --muted:#4a4f57;
  --hair: rgba(0,0,0,.10);
  --shadow: 0 10px 30px rgba(0,0,0,.06);
  --shadow-soft: 0 6px 18px rgba(0,0,0,.05);
}

/* Make the site feel "built", not flat */
body{ background: linear-gradient(180deg, #ffffff 0%, var(--paper-2) 100%); }
.section{ padding: 56px 0; }
.section.alt{ background: #f5f1e9; }
.container{ padding: 72px 18px; } /* override earlier 84px */

/* Card the content, not the whole page */
.section > .container{
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: var(--shadow-soft);
  border-radius: 0;
  padding: 30px 26px;
}
.section.alt > .container{
  background: rgba(255,255,255,.72);
}

/* Typography tightening */
p{ line-height: 1.78; margin: 12px 0; color: var(--muted); }
h1,h2,h3{ color: var(--ink); }
h2{ margin-top: 28px; margin-bottom: 10px; }
.lead{ color: var(--muted); }

/* Authority boxes: subtle depth */
.box{
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(0,0,0,.07);
  box-shadow: var(--shadow-soft);
}
.box .box-title{
  letter-spacing: .10em;
  font-weight: 700;
}

/* Footer: one seal, tighter */
footer .container{
  background: rgba(255,255,255,.80);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: var(--shadow-soft);
  padding: 22px 22px;
}
.footer-seal{ letter-spacing: .01em; }

/* ===========================
   Header: TOP NAV ALWAYS VISIBLE
   =========================== */

header{
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(0,0,0,.08);
}

/* Kill hamburger/overlay everywhere */
.nav-toggle, .nav-overlay{ display:none !important; }

/* Brand: bigger, engraved, with gold discipline */
.brand .word{
  font-family: ui-serif, Georgia, "Times New Roman", serif;
  font-weight: 700;
  font-size: 20px;
  letter-spacing: .02em;
}
.brand .sub{
  font-weight: 600;
  letter-spacing: .18em;
  font-size: 10px;
  opacity: .78;
}
.brand:after{
  width: 56px;
  height: 2px;
  margin-top: 10px;
  background: var(--gold);
}

/* Menu: clean, spaced, NEVER glued */
.menu{
  display:flex !important;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px 14px;
  overflow: visible !important; /* remove scroll strip */
  white-space: normal;
}
.menu a{
  background: rgba(255,255,255,.70);
  border: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 2px 10px rgba(0,0,0,.04);
  padding: 8px 10px;
  font-size: 13px;
  border-radius: 0;
}

/* Mobile: stack brand + menu (still "open", still visible) */
@media (max-width: 860px){
  .nav{ align-items:flex-start; }
  .menu{
    width: 100%;
    justify-content: flex-start;
    margin-top: 10px;
  }
  header .container{ padding: 14px 16px; }
}

/* Very small screens: prevent overcrowding */
@media (max-width: 420px){
  .brand .word{ font-size: 22px; }
  .menu a{ font-size: 12px; padding: 8px 9px; }
  .section > .container{ padding: 26px 18px; }
  .container{ padding: 56px 14px; }
  .section{ padding: 44px 0; }
}

/* Remove legacy rule that hides menu on mobile */
@media (max-width: 860px){
  nav ul{ display:flex !important; }
}


@media (max-width: 600px){
  .section{ padding: 38px 0; }
  .container{ padding: 48px 18px; }
  .section > .container{ box-shadow: var(--shadow-soft); }
  h1{ margin-bottom: 12px; }
  h2{ margin-top: 26px; margin-bottom: 10px; }
  p{ margin: 0 0 14px; }
}


/* ===== V68 Sovereign + Institutional Hybrid Refinement ===== */

/* Stronger Logo */
.brand-mark{
  font-weight: 800 !important;
  letter-spacing: -0.01em !important;
  font-size: 22px !important;
  background: linear-gradient(90deg,#b59a57,#d6c28a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.brand-sub{
  letter-spacing: 0.22em !important;
  font-weight:600 !important;
}

/* Executive Nav Buttons */
.nav-links a{
  border:1px solid rgba(0,0,0,0.08);
  padding:8px 14px;
  border-radius:4px;
  font-size:12px !important;
  transition: all .2s ease;
}
.nav-links a:hover{
  background:rgba(181,154,87,0.08);
  border-color:rgba(181,154,87,0.4);
}

/* Hero Tightening */
h1{
  letter-spacing:-0.015em !important;
}

.hero p{
  font-size:15px !important;
}

/* Authority Block Depth */
.authority-block{
  box-shadow: 0 8px 20px rgba(0,0,0,0.04);
  border-left: 3px solid #b59a57;
  padding:18px 20px !important;
}

/* Sovereign Section Depth */
section{
  padding-top:56px !important;
  padding-bottom:56px !important;
}

/* Footer Weight */
footer{
  font-weight:600;
  letter-spacing:0.02em;
}


/* === v69 Sovereign governmental locks === */

/* Header: seal line + gold discipline */
.navbar{
  border-bottom: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 1px 0 rgba(181,154,87,.35);
}
.brand-mark{
  font-weight: 850;
  letter-spacing: 0.015em;
  font-size: 22px;
}
.brand-sub{
  margin-top: 2px;
  letter-spacing: 0.22em;
  opacity: .78;
}
.brand::after{
  width: 52px;
  height: 2px;
  background: #b59a57;
}

/* Nav: smaller + button-like, not cramped */
.nav-links{
  gap: 8px 10px;
}
.nav-links a{
  font-size: 12px;
  padding: 6px 10px;
  border: 1px solid rgba(181,154,87,.22);
  background: rgba(181,154,87,.08);
  border-radius: 6px;
}
.nav-links a:hover{
  background: rgba(181,154,87,.12);
}

/* Hero: opening clause divider */
.page-hero{
  position: relative;
}
.page-hero::after{
  content: "";
  display: block;
  margin-top: 22px;
  height: 1px;
  width: 100%;
  background: rgba(0,0,0,.07);
}

/* Rhythm: reduce excessive whitespace while keeping breath */
.section{
  padding: 44px 0;
}
.page-hero{
  padding: 54px 0 44px;
}
p{
  margin: 0 0 14px;
}
h2{
  margin: 0 0 14px;
}

/* Less flat: subtle institutional alternation */
.section.alt{
  background: #fbfaf7;
}

/* Footer: finality */
.footer-end{
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial;
  font-weight: 700;
  letter-spacing: .22em;
  font-size: 11px;
  opacity: .65;
  margin: 0 0 10px;
}

/* Mobile tightening */
@media (max-width: 560px){
  .brand-mark{font-size: 20px;}
  .brand-sub{font-size: 10px;}
  .nav-links{max-width: 240px;}
  .nav-links a{font-size: 11px; padding: 5px 8px;}
  .page-hero{padding: 46px 0 38px;}
  .section{padding: 36px 0;}
}


/* V71 – Card fatigue control: third block in a run can be downgraded */
.authority-block.plain{
  background: transparent !important;
  border-left: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.authority-block.plain h3,
.authority-block.plain .block-title{
  margin-top: 0;
}


/* V71 – Header seal lock */
header.navbar{
  border-bottom: 1px solid rgba(0,0,0,0.08);
}
header.navbar .brand{
  display:flex;
  flex-direction:column;
  gap:2px;
}
header.navbar .brand-mark{
  font-family: "Source Serif 4", Georgia, "Times New Roman", serif;
  font-weight: 800;
  letter-spacing: -0.015em;
  font-size: 28px;
  line-height: 1;
}
header.navbar .brand-sub{
  letter-spacing: 0.22em;
  font-size: 10px;
  text-transform: uppercase;
  font-weight: 600;
  opacity: 0.78;
}
header.navbar .brand::after{
  width: 68px;
  height: 2px;
  margin-top: 8px;
  background: linear-gradient(90deg, var(--gold), #e3d19b);
  opacity: .95;
}

/* V71 – Nav buttons: less cramped */
header.navbar .nav-links a{
  font-size: 12px;
  padding: 8px 12px;
  border-radius: 4px;
  background: #f6f4ef;
  border: 1px solid rgba(0,0,0,0.08);
}
header.navbar .nav-links a:hover{
  border-color: rgba(200,167,90,0.55);
  background: rgba(200,167,90,0.08);
}

/* V71 – Hero isolation */
.hero{
  padding-top: 72px;
  padding-bottom: 56px;
  background: #faf9f6;
}
.hero .hero-divider{
  margin-top: 22px;
}

/* V71 – Mobile spacing discipline */
@media (max-width: 600px){
  .section{ padding: 42px 0; }
  h2{ margin-top: 22px; margin-bottom: 10px; }
  p{ margin: 0 0 12px; }
  header.navbar .nav-links{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px 10px;
  }
  header.navbar .nav-links a{
    text-align:center;
    padding: 10px 10px;
    font-size: 11px;
    letter-spacing: 0.05em;
  }
}


/* V71 – Section sealing: subtle statute rhythm */
.section{
  border-top: 1px solid rgba(0,0,0,0.05);
}
.section:first-of-type{
  border-top: none;
}

/* V71_1 – Explicit mobile nav grid (override) */
@media (max-width: 600px){
  header.navbar .nav-links{
    display:grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px 10px !important;
  }
}
