:root {
  --ink: #111821;
  --ink-soft: #3f4853;
  --paper: #f3efe7;
  --paper-2: #ebe4d7;
  --surface: #faf7f0;
  --night: #08111b;
  --night-2: #101d2a;
  --line: rgba(17, 24, 33, .15);
  --line-light: rgba(255, 255, 255, .18);
  --gold: #d19a4a;
  --copper: #a76f50;
  --ivory: #f4ead8;
  --muted-light: rgba(244, 234, 216, .72);
  --max: 1240px;
  --reading: 820px;
  --radius: 22px;
  --shadow: 0 28px 70px rgba(8, 17, 27, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
body.home-page { background: var(--paper); }
a { color: inherit; }
img { display: block; max-width: 100%; }
button, input { font: inherit; }
::selection { background: var(--gold); color: var(--night); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.site-shell { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }
.section-pad { padding: clamp(5rem, 10vw, 9rem) 0; }

.site-header { position: fixed; inset: 0 0 auto 0; z-index: 50; color: var(--ivory); transition: background .25s ease, border-color .25s ease, color .25s ease; border-bottom: 1px solid transparent; }
.site-header.scrolled, .site-header.solid { background: rgba(8, 17, 27, .94); border-color: var(--line-light); backdrop-filter: blur(18px); }
.header-inner { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { display: inline-flex; align-items: center; gap: .8rem; text-decoration: none; color: inherit; font-weight: 800; letter-spacing: .16em; font-size: .86rem; }
.brand-mark { width: 30px; height: 30px; position: relative; display: inline-block; flex: 0 0 30px; }
.brand-mark i, .brand-mark b { position: absolute; top: 5px; width: 13px; height: 20px; border: 1.5px solid currentColor; opacity: .9; }
.brand-mark i { left: 1px; border-radius: 16px 0 0 16px; border-right: 0; transform: rotate(-5deg); }
.brand-mark b { right: 1px; border-radius: 0 16px 16px 0; border-left: 0; transform: rotate(5deg); }
.brand-mark em { position: absolute; width: 5px; height: 5px; border-radius: 50%; background: var(--gold); left: 12.5px; top: 12px; box-shadow: 0 0 12px rgba(209,154,74,.7); }
.site-nav { display: flex; align-items: center; gap: 2rem; }
.site-nav a { text-decoration: none; color: inherit; font-size: .88rem; font-weight: 650; letter-spacing: .02em; opacity: .82; transition: opacity .2s ease; }
.site-nav a:hover, .site-nav a[aria-current="page"] { opacity: 1; }
.nav-toggle { display: none; width: 44px; height: 44px; border: 0; background: transparent; color: inherit; padding: 12px; }
.nav-toggle span:not(.sr-only) { display: block; height: 1px; background: currentColor; margin: 6px 0; }

.hero { min-height: 100svh; position: relative; display: grid; align-items: center; overflow: hidden; background: var(--night); color: var(--ivory); }
.hero-media, .hero-shade { position: absolute; inset: 0; }
.hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: 56% center; }
.hero-shade { background: linear-gradient(90deg, rgba(5,11,18,.92) 0%, rgba(5,11,18,.77) 34%, rgba(5,11,18,.26) 64%, rgba(5,11,18,.12) 100%), linear-gradient(0deg, rgba(5,11,18,.64) 0%, transparent 38%); }
.hero-inner { position: relative; z-index: 2; padding-top: 104px; padding-bottom: 60px; }
.hero-copy { width: min(690px, 66vw); }
.eyebrow { margin: 0 0 1rem; text-transform: uppercase; letter-spacing: .19em; font-size: .7rem; font-weight: 800; color: #7a6245; }
.eyebrow.light { color: rgba(244,234,216,.72); }
.eyebrow span { color: var(--gold); margin-inline: .3em; }
.hero h1, .library-hero h1, .report-masthead h1 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.055em; line-height: .91; margin: 0; text-wrap: balance; }
.hero h1 { font-size: clamp(4rem, 8.9vw, 8.5rem); }
.hero-definition { margin: 2rem 0 .65rem; max-width: 650px; font-size: clamp(1.18rem, 2.1vw, 1.55rem); line-height: 1.45; }
.hero-definition strong { font-weight: 600; }
.hero-text { max-width: 610px; color: var(--muted-light); font-size: 1.03rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.button { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: .78rem 1.15rem; border: 1px solid transparent; text-decoration: none; font-weight: 750; font-size: .86rem; letter-spacing: .01em; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { background: var(--gold); color: var(--night); }
.button-ghost { border-color: rgba(244,234,216,.34); color: var(--ivory); background: rgba(8,17,27,.16); backdrop-filter: blur(10px); }
.button-outline { border-color: rgba(244,234,216,.42); color: var(--ivory); }
.button-dark { background: var(--night); color: var(--ivory); }
.hero-scroll { position: absolute; right: 0; bottom: 8px; display: flex; align-items: center; gap: .8rem; text-transform: uppercase; text-decoration: none; letter-spacing: .18em; font-size: .63rem; color: var(--muted-light); }
.hero-scroll i { display: block; width: 48px; height: 1px; background: currentColor; position: relative; }
.hero-scroll i::after { content: ''; position: absolute; right: 0; top: -3px; width: 7px; height: 7px; border-right: 1px solid currentColor; border-bottom: 1px solid currentColor; transform: rotate(-45deg); }

.origin-band { background: #111b27; color: var(--ivory); padding: clamp(4rem, 8vw, 6rem) 0; }
.origin-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.origin-band h2, .section-intro h2, .clarity-heading h2, .definition-display, .manifesto-inner blockquote { font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.04em; line-height: 1.04; }
.origin-band h2 { font-size: clamp(2.6rem, 5vw, 4.8rem); margin: 0; }
.origin-story { border-left: 1px solid var(--line-light); padding-left: clamp(1.5rem, 4vw, 3rem); }
.origin-story > p:first-child { font-family: Georgia, "Times New Roman", serif; font-size: clamp(1.45rem, 2.6vw, 2.15rem); line-height: 1.4; margin-top: 0; }
.origin-story em { color: #f0bd6d; }
.body-muted { color: var(--muted-light); }

.definition-section { background: var(--surface); }
.definition-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(4rem, 9vw, 9rem); align-items: start; }
.definition-display { font-size: clamp(2.8rem, 5.6vw, 5.4rem); margin: .25rem 0 0; }
.definition-display em { color: #7f573e; font-style: normal; }
.rich-copy { font-size: 1.08rem; color: var(--ink-soft); padding-top: 1.55rem; }
.rich-copy p { margin: 0 0 1.4rem; }
.rich-copy strong { color: var(--ink); }

.method-section { background: var(--paper); }
.section-intro { margin-bottom: clamp(3rem, 6vw, 5rem); }
.section-intro.centered { max-width: 780px; margin-inline: auto; text-align: center; }
.section-intro h2 { font-size: clamp(3rem, 6vw, 5.8rem); margin: .15rem 0 1rem; }
.section-intro > p:last-child { color: var(--ink-soft); max-width: 650px; font-size: 1.05rem; }
.section-intro.centered > p:last-child { margin-inline: auto; }
.question-list { border-top: 1px solid var(--line); }
.question-card { display: grid; grid-template-columns: 84px 1fr; gap: 2rem; padding: 2rem 0; border-bottom: 1px solid var(--line); align-items: start; }
.question-num { color: #907458; font-size: .76rem; letter-spacing: .14em; font-weight: 800; padding-top: .5rem; }
.question-card h3 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 4.3vw, 4.2rem); font-weight: 400; letter-spacing: -.04em; margin: 0 0 .4rem; line-height: 1; }
.question-card p { margin: 0; color: var(--ink-soft); max-width: 710px; }

.principles-section { background: #ddd5c7; }
.split-intro { display: grid; grid-template-columns: 1fr .75fr; gap: clamp(3rem, 8vw, 8rem); align-items: end; }
.split-intro h2 { margin-bottom: 0; }
.split-intro > p, .split-intro > div:last-child { color: var(--ink-soft); }
.principle-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1px; background: rgba(17,24,33,.18); border: 1px solid rgba(17,24,33,.18); }
.principle-card { background: #e8e1d5; padding: clamp(2rem, 5vw, 4rem); min-height: 330px; }
.principle-glyph { font-family: Georgia, serif; font-size: 2rem; color: #8b6247; }
.principle-card h3 { font-family: Georgia, serif; font-size: clamp(2rem, 3.5vw, 3.25rem); font-weight: 400; line-height: 1.05; letter-spacing: -.035em; margin: 1.4rem 0 1rem; max-width: 12ch; }
.principle-card p { color: var(--ink-soft); max-width: 47ch; }

.clarity-section { background: var(--night); color: var(--ivory); }
.clarity-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(4rem, 10vw, 10rem); }
.clarity-heading h2 { font-size: clamp(3rem, 5vw, 5rem); margin: 0; }
.clarity-list { border-top: 1px solid var(--line-light); }
.clarity-list > div { display: grid; grid-template-columns: 190px 1fr; gap: 2rem; border-bottom: 1px solid var(--line-light); padding: 1.45rem 0; }
.clarity-list span { color: #e4b36d; font-weight: 750; }
.clarity-list p { margin: 0; color: var(--muted-light); }

.reports-preview { background: var(--surface); }
.reports-heading > div:last-child p { margin-top: 0; }
.text-link { display: inline-flex; gap: .45rem; align-items: center; margin-top: 1rem; text-decoration: none; font-weight: 750; border-bottom: 1px solid currentColor; padding-bottom: .15rem; }
.report-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); border-top: 1px solid var(--line); }
.report-feature { position: relative; display: grid; grid-template-columns: 54px 1fr; column-gap: 1.3rem; padding: 2.1rem 4rem 2.1rem 0; text-decoration: none; border-bottom: 1px solid var(--line); min-height: 220px; }
.report-feature:nth-child(odd) { border-right: 1px solid var(--line); padding-right: 3rem; }
.report-feature:nth-child(even) { padding-left: 3rem; }
.report-feature-number { grid-row: 1 / span 4; color: #92755a; font-size: .74rem; letter-spacing: .12em; font-weight: 800; }
.report-feature-kicker { text-transform: uppercase; letter-spacing: .14em; font-size: .66rem; font-weight: 800; color: #7b5d44; }
.report-feature h3 { font-family: Georgia, serif; font-size: clamp(1.7rem, 3vw, 2.6rem); font-weight: 400; line-height: 1.05; letter-spacing: -.035em; margin: .35rem 0 .75rem; }
.report-feature p { color: var(--ink-soft); margin: 0; max-width: 53ch; }
.report-feature-arrow { position: absolute; right: 1.2rem; top: 2rem; font-size: 1.4rem; transition: transform .2s ease; }
.report-feature:hover .report-feature-arrow { transform: translateX(5px); }

.manifesto-section { background: linear-gradient(135deg, #152332, #08111b 74%); color: var(--ivory); }
.manifesto-inner { text-align: center; max-width: 960px; }
.open-mark { position: relative; width: 84px; height: 70px; margin: 0 auto 2rem; }
.open-mark span { position: absolute; top: 4px; width: 34px; height: 58px; border: 2px solid rgba(244,234,216,.8); }
.open-mark span:first-child { left: 4px; border-radius: 38px 0 0 38px; border-right: 0; transform: rotate(-6deg); }
.open-mark span:nth-child(2) { right: 4px; border-radius: 0 38px 38px 0; border-left: 0; transform: rotate(6deg); }
.open-mark i { position: absolute; width: 9px; height: 9px; border-radius: 50%; background: var(--gold); top: 29px; left: 37.5px; box-shadow: 0 0 24px rgba(209,154,74,.85); }
.manifesto-inner blockquote { font-size: clamp(2.5rem, 5.6vw, 5.3rem); margin: .7rem auto 1.4rem; max-width: 20ch; }
.manifesto-inner > p:not(.eyebrow) { color: var(--muted-light); max-width: 620px; margin: 0 auto 2rem; }

.site-footer { background: #050b12; color: var(--ivory); padding: 4rem 0; }
.footer-grid { display: grid; grid-template-columns: 1fr 1fr auto; gap: 3rem; align-items: start; }
.footer-brand { font-size: .82rem; }
.site-footer p { color: rgba(244,234,216,.58); font-size: .85rem; }
.footer-definition { display: grid; gap: .15rem; }
.footer-definition strong { letter-spacing: .14em; font-size: .75rem; }
.footer-definition span { font-family: Georgia, serif; font-size: 1.35rem; color: #dfb26f; }
.footer-definition p { margin: 0; }
.footer-nav { display: grid; gap: .55rem; }
.footer-nav a { text-decoration: none; color: rgba(244,234,216,.72); font-size: .85rem; }

/* Reports index */
.library-hero { background: radial-gradient(circle at 75% 25%, rgba(180,119,71,.22), transparent 33%), linear-gradient(135deg, #142231, #07101a); color: var(--ivory); padding: 180px 0 90px; }
.library-hero-grid { display: grid; grid-template-columns: 1.1fr .65fr; gap: clamp(4rem, 10vw, 10rem); align-items: end; }
.library-hero h1 { font-size: clamp(4rem, 8vw, 8rem); }
.library-hero-copy > p { font-size: 1.12rem; color: var(--muted-light); max-width: 470px; }
.term-lock { border-top: 1px solid var(--line-light); margin-top: 2rem; padding-top: 1.3rem; display: grid; gap: .15rem; }
.term-lock strong { font-size: .72rem; letter-spacing: .15em; }
.term-lock span { font-family: Georgia, serif; font-size: 1.5rem; color: #e2b46f; }
.term-lock small { color: var(--muted-light); }
.library-section { background: var(--surface); }
.library-tools { display: flex; justify-content: space-between; gap: 3rem; align-items: end; margin-bottom: 3rem; }
.library-tools > p { max-width: 420px; color: var(--ink-soft); margin: 0; }
.search-field { width: min(560px, 100%); display: grid; gap: .5rem; font-weight: 700; font-size: .78rem; text-transform: uppercase; letter-spacing: .12em; }
.search-field input { border: 0; border-bottom: 1px solid var(--line); background: transparent; padding: .85rem 0; outline: none; color: var(--ink); font-size: 1.05rem; text-transform: none; letter-spacing: 0; }
.search-field input:focus { border-color: #7b5d44; }
.library-list { border-top: 1px solid var(--line); }
.library-row { display: grid; grid-template-columns: 80px 1fr 150px; gap: 2rem; align-items: center; padding: 2.15rem 0; border-bottom: 1px solid var(--line); }
.library-row[hidden] { display: none; }
.library-number { font-family: Georgia, serif; font-size: 2rem; color: #97775a; }
.library-meta > span { text-transform: uppercase; letter-spacing: .13em; color: #795c45; font-size: .67rem; font-weight: 800; }
.library-meta h2 { font-family: Georgia, serif; font-weight: 400; letter-spacing: -.035em; font-size: clamp(1.8rem, 3.5vw, 3rem); line-height: 1.05; margin: .25rem 0 .45rem; }
.library-meta p { color: var(--ink-soft); max-width: 760px; margin: 0; }
.library-open { justify-self: end; display: flex; align-items: center; gap: 1rem; text-decoration: none; font-weight: 750; font-size: .82rem; }
.library-open b { font-size: 1.4rem; font-weight: 400; }
.empty-state { border: 1px solid var(--line); padding: 1.5rem; margin-top: 1rem; }
.supporting-study { margin-top: 5rem; background: #e8e0d3; padding: clamp(2rem, 5vw, 4rem); display: flex; justify-content: space-between; align-items: end; gap: 3rem; }
.supporting-study h2 { font-family: Georgia, serif; font-weight: 400; font-size: clamp(2rem, 4vw, 3.5rem); letter-spacing: -.04em; margin: .25rem 0 .8rem; }
.supporting-study p { max-width: 650px; color: var(--ink-soft); }

/* Long-form reports */
.report-masthead { background: radial-gradient(circle at 88% 30%, rgba(190,126,76,.18), transparent 34%), var(--night); color: var(--ivory); padding: 170px 0 80px; }
.report-masthead-grid { display: grid; grid-template-columns: 100px minmax(0, 900px); gap: 2rem; align-items: start; }
.report-masthead-number { font-family: Georgia, serif; font-size: 2.6rem; color: #d8a967; padding-top: .55rem; }
.report-masthead h1 { font-size: clamp(3.8rem, 7vw, 7rem); }
.report-masthead p:last-child { color: var(--muted-light); max-width: 720px; font-size: 1.08rem; margin-top: 1.5rem; }
.article-shell { background: var(--surface); padding: 5rem 0 7rem; }
.article-grid { display: grid; grid-template-columns: 230px minmax(0, var(--reading)); gap: clamp(3rem, 7vw, 7rem); align-items: start; justify-content: center; }
.article-aside { position: sticky; top: 110px; }
.term-card { border-top: 2px solid var(--ink); padding-top: 1rem; display: grid; gap: .28rem; }
.term-card .eyebrow { margin-bottom: .6rem; }
.term-card strong { font-size: .73rem; letter-spacing: .13em; }
.term-card b { font-family: Georgia, serif; font-size: 1.4rem; font-weight: 400; color: #7c5940; }
.term-card p { color: var(--ink-soft); font-size: .88rem; line-height: 1.5; }
.back-link { display: inline-flex; gap: .55rem; margin-top: 2rem; text-decoration: none; font-weight: 750; font-size: .8rem; }
.report-body { min-width: 0; font-family: Georgia, "Times New Roman", serif; font-size: 1.08rem; line-height: 1.78; }
.report-body > h1:first-child { display: none; }
.report-body h1, .report-body h2, .report-body h3, .report-body h4 { color: var(--ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; letter-spacing: -.025em; line-height: 1.16; }
.report-body h1 { font-size: 2.8rem; }
.report-body h2 { font-size: clamp(2rem, 4vw, 3.3rem); font-weight: 650; margin: 2.2em 0 .8em; padding-top: .4em; }
.report-body h3 { font-size: 1.55rem; font-weight: 700; margin: 2em 0 .7em; }
.report-body h4 { font-size: 1.12rem; font-weight: 800; margin-top: 1.8em; }
.report-body p { margin: 0 0 1.35rem; }
.report-body strong { font-family: Inter, ui-sans-serif, sans-serif; font-weight: 750; }
.report-body em { color: #634733; }
.report-body a { color: #654832; text-underline-offset: .17em; }
.report-body ul, .report-body ol { padding-left: 1.3rem; margin: 0 0 1.5rem; }
.report-body li { margin-bottom: .55rem; }
.report-body blockquote { margin: 2rem 0; padding: 1.2rem 0 1.2rem 1.8rem; border-left: 3px solid var(--gold); color: #4c3a2d; font-size: 1.35rem; line-height: 1.55; }
.report-body blockquote p { margin: .35rem 0; }
.report-body hr { border: 0; border-top: 1px solid var(--line); margin: 3rem 0; }
.report-body pre { overflow: auto; padding: 1.2rem; background: var(--night); color: var(--ivory); border-radius: 8px; }
.report-body code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .88em; }
.table-scroll { overflow-x: auto; margin: 2rem 0; border: 1px solid var(--line); }
.report-body table { width: 100%; min-width: 680px; border-collapse: collapse; font-family: Inter, ui-sans-serif, sans-serif; font-size: .86rem; line-height: 1.55; }
.report-body th, .report-body td { padding: .95rem 1rem; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); vertical-align: top; text-align: left; }
.report-body th:last-child, .report-body td:last-child { border-right: 0; }
.report-body tr:last-child td { border-bottom: 0; }
.report-body th { background: #eae3d7; font-weight: 800; }
.anchor-target { display: block; position: relative; top: -100px; visibility: hidden; }
.report-pagination { background: #e5ded2; border-top: 1px solid var(--line); }
.pagination-grid { display: grid; grid-template-columns: 1fr 1fr; }
.pagination-link { display: grid; gap: .4rem; text-decoration: none; padding: 2.2rem 0; }
.pagination-link.next { text-align: right; border-left: 1px solid var(--line); padding-left: 2rem; }
.pagination-link.prev { padding-right: 2rem; }
.pagination-link span { text-transform: uppercase; letter-spacing: .13em; font-size: .65rem; color: #7a604a; font-weight: 800; }
.pagination-link strong { font-family: Georgia, serif; font-size: 1.35rem; font-weight: 400; }

:focus-visible { outline: 3px solid #d5a056; outline-offset: 4px; }

@media (max-width: 900px) {
  .origin-grid, .definition-grid, .clarity-grid, .library-hero-grid, .split-intro { grid-template-columns: 1fr; gap: 2.5rem; }
  .hero-copy { width: min(720px, 82vw); }
  .hero-media img { object-position: 62% center; }
  .report-feature-grid, .principle-grid { grid-template-columns: 1fr; }
  .report-feature:nth-child(odd) { border-right: 0; padding-right: 2rem; }
  .report-feature:nth-child(even) { padding-left: 0; }
  .article-grid { grid-template-columns: 1fr; }
  .article-aside { position: static; display: grid; grid-template-columns: 1fr auto; gap: 2rem; align-items: end; }
  .back-link { margin-top: 0; }
  .library-row { grid-template-columns: 60px 1fr; }
  .library-open { grid-column: 2; justify-self: start; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-nav { grid-column: 1 / -1; display: flex; gap: 1.2rem; }
}

@media (max-width: 700px) {
  .site-shell { width: min(calc(100% - 28px), var(--max)); }
  .site-header { background: rgba(8,17,27,.94); border-color: var(--line-light); backdrop-filter: blur(18px); }
  .header-inner { min-height: 68px; }
  .nav-toggle { display: block; }
  .site-nav { position: absolute; top: 68px; left: 0; right: 0; display: none; padding: 1.3rem 20px 1.6rem; background: rgba(8,17,27,.98); border-bottom: 1px solid var(--line-light); flex-direction: column; align-items: flex-start; gap: 1rem; }
  .site-nav.is-open { display: flex; }
  .hero { min-height: 880px; align-items: end; }
  .hero-media img { object-position: 68% center; }
  .hero-shade { background: linear-gradient(0deg, rgba(5,11,18,.96) 0%, rgba(5,11,18,.8) 52%, rgba(5,11,18,.22) 100%); }
  .hero-inner { padding-top: 120px; padding-bottom: 80px; }
  .hero-copy { width: 100%; }
  .hero h1 { font-size: clamp(4rem, 17vw, 6rem); }
  .hero-scroll { display: none; }
  .origin-story { border-left: 0; border-top: 1px solid var(--line-light); padding: 1.6rem 0 0; }
  .question-card { grid-template-columns: 48px 1fr; gap: 1rem; }
  .principle-card { min-height: auto; }
  .clarity-list > div { grid-template-columns: 1fr; gap: .4rem; }
  .report-feature { grid-template-columns: 42px 1fr; padding-right: 2rem; }
  .report-feature-arrow { right: 0; }
  .library-hero { padding-top: 130px; }
  .library-tools { display: grid; gap: 1.5rem; }
  .library-row { grid-template-columns: 44px 1fr; gap: 1rem; }
  .library-open { grid-column: 2; }
  .supporting-study { display: block; }
  .supporting-study .button { margin-top: 1rem; }
  .report-masthead { padding-top: 130px; }
  .report-masthead-grid { grid-template-columns: 1fr; gap: .8rem; }
  .report-masthead-number { font-size: 1.2rem; }
  .report-masthead h1 { font-size: clamp(3.3rem, 14vw, 5rem); }
  .article-aside { display: block; }
  .back-link { margin-top: 1.2rem; }
  .report-body { font-size: 1.02rem; }
  .pagination-grid { grid-template-columns: 1fr; }
  .pagination-link.next { border-left: 0; border-top: 1px solid var(--line); padding-left: 0; text-align: left; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-nav { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* ===== Multi-page information architecture v3 ===== */
.skip-link { position: fixed; z-index: 999; top: 8px; left: 8px; transform: translateY(-140%); background: var(--ivory); color: var(--night); padding: .7rem 1rem; text-decoration: none; font-weight: 800; }
.skip-link:focus { transform: translateY(0); }
.brand > img { width: 38px; height: 38px; object-fit: contain; filter: drop-shadow(0 0 12px rgba(209,154,74,.28)); }
.site-nav { gap: 1.35rem; }
.site-nav a { display: inline-flex; align-items: center; gap: .42rem; }
.site-nav a img { width: 24px; height: 24px; object-fit: contain; opacity: .9; }
.site-nav a[aria-current="page"] { color: #f3c77f; }
.site-nav a[aria-current="page"] img { filter: drop-shadow(0 0 8px rgba(209,154,74,.48)); }
.button-outline.dark { border-color: rgba(17,24,33,.3); color: var(--ink); }

.breadcrumbs { padding-top: 1.1rem; padding-bottom: 1.1rem; }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; list-style: none; padding: 0; margin: 0; font-size: .76rem; color: #756b61; }
.breadcrumbs li:not(:last-child)::after { content: '/'; margin-left: .5rem; color: #aa9f93; }
.breadcrumbs a { text-decoration: none; }
.breadcrumbs a:hover { text-decoration: underline; text-underline-offset: .18em; }

/* Topic heroes deliberately use the report art family; homepage hero remains untouched. */
.topic-hero, .report-hero { min-height: min(780px, 82svh); position: relative; display: grid; align-items: end; overflow: hidden; background: var(--night); color: var(--ivory); }
.topic-hero-media, .topic-hero-shade, .report-hero-media, .report-hero-shade { position: absolute; inset: 0; }
.topic-hero-media img, .report-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.topic-hero-shade, .report-hero-shade { background: linear-gradient(0deg, rgba(5,11,18,.96) 0%, rgba(5,11,18,.70) 42%, rgba(5,11,18,.13) 76%), linear-gradient(90deg, rgba(5,11,18,.68), transparent 58%); }
.topic-hero-inner, .report-hero-inner { position: relative; z-index: 2; padding: 170px 0 clamp(4rem,8vw,7rem); max-width: 960px; margin-left: 0; }
.topic-hero h1, .report-hero h1, .icon-hero h1 { font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.052em; line-height: .94; text-wrap: balance; margin: 0; }
.topic-hero h1 { font-size: clamp(4rem, 8vw, 8rem); max-width: 11ch; }
.topic-hero-deck, .report-hero-inner > p:last-child, .icon-hero p { max-width: 720px; color: rgba(244,234,216,.78); font-size: clamp(1.02rem,1.7vw,1.22rem); margin-top: 1.45rem; }

.answer-block, .home-answer { background: var(--surface); border-bottom: 1px solid var(--line); }
.answer-block-flush { padding: 0; }
.answer-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(3rem,8vw,8rem); align-items: start; padding-top: clamp(4rem,7vw,6rem); padding-bottom: clamp(4rem,7vw,6rem); }
.answer-grid h2 { font-family: Georgia,serif; font-weight: 400; font-size: clamp(2.7rem,5vw,5rem); line-height: 1.02; letter-spacing: -.04em; margin: 0; }
.answer-copy { color: var(--ink-soft); font-size: 1.13rem; line-height: 1.78; }
.answer-copy p { margin-top: 0; }
.answer-copy strong { color: var(--ink); }

.topic-content { background: var(--paper); }
.topic-layout { display: grid; grid-template-columns: 290px minmax(0,780px); justify-content: center; gap: clamp(3rem,8vw,8rem); align-items: start; }
.topic-aside { position: sticky; top: 105px; }
.quick-facts { border-top: 1px solid var(--ink); margin-bottom: 1.8rem; }
.quick-facts > div { padding: .9rem 0; border-bottom: 1px solid var(--line); display: grid; gap: .15rem; }
.quick-facts span { color: #7a604a; text-transform: uppercase; letter-spacing: .12em; font-size: .65rem; font-weight: 800; }
.quick-facts strong { font-size: .88rem; line-height: 1.45; }
.topic-article > section { padding: 0 0 clamp(4rem,8vw,7rem); margin-bottom: clamp(4rem,7vw,6rem); border-bottom: 1px solid var(--line); }
.topic-article > section:last-child { border-bottom: 0; margin-bottom: 0; }
.section-index { margin: 0 0 .8rem; color: #95795e; font-weight: 800; letter-spacing: .12em; font-size: .7rem; }
.topic-article h2 { font-family: Georgia,serif; font-weight: 400; letter-spacing: -.045em; line-height: 1.03; font-size: clamp(2.6rem,5vw,4.9rem); margin: 0 0 1.6rem; }
.prose { font-family: Georgia,"Times New Roman",serif; font-size: 1.11rem; line-height: 1.82; color: #343b43; }
.prose p { margin: 0 0 1.4rem; }
.prose ol, .prose ul { padding-left: 1.3rem; }
.prose li { margin: .5rem 0; }
.prose strong { font-family: Inter,ui-sans-serif,sans-serif; color: var(--ink); }
.topic-report-cta { background: #dcd3c4; }
.topic-report-cta h2, .next-topics h2, .section-heading-row h2 { font-family: Georgia,serif; font-weight:400; letter-spacing:-.04em; line-height:1.03; font-size:clamp(2.7rem,5vw,5rem); margin:.2rem 0; }
.next-topics { background: var(--surface); }
.topic-link-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.topic-link-grid a { position:relative; min-height:190px; padding:1.8rem 2rem; border-right:1px solid var(--line); text-decoration:none; display:flex; flex-direction:column; gap:.5rem; transition:background .2s ease; }
.topic-link-grid a:last-child { border-right:0; }
.topic-link-grid a:hover { background:#ece5d9; }
.topic-link-grid span { text-transform:uppercase; letter-spacing:.14em; font-size:.65rem; color:#87684f; font-weight:800; }
.topic-link-grid strong { font-family:Georgia,serif; font-size:1.8rem; font-weight:400; line-height:1.08; }
.topic-link-grid b { margin-top:auto; font-weight:400; font-size:1.5rem; }

/* Home expansion */
.section-heading-row { display:flex; justify-content:space-between; align-items:end; gap:3rem; margin-bottom:3rem; }
.section-heading-row h2 { margin-bottom:0; }
.five-questions { list-style:none; padding:0; margin:0; border-top:1px solid var(--line); }
.five-questions li { display:grid; grid-template-columns:70px minmax(170px,.55fr) 1fr; gap:2rem; align-items:baseline; border-bottom:1px solid var(--line); padding:1.55rem 0; }
.five-questions li > span { color:#94765b; letter-spacing:.12em; font-size:.7rem; font-weight:800; }
.five-questions strong { font-family:Georgia,serif; font-size:clamp(1.9rem,3.5vw,3.1rem); font-weight:400; }
.five-questions p { color:var(--ink-soft); margin:0; }
.topic-map { background:#0c1621; color:var(--ivory); }
.topic-map .section-intro p { color:var(--muted-light); }
.visual-topic-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.15); }
.visual-topic-card { position:relative; min-height:380px; overflow:hidden; text-decoration:none; background:#101a25; }
.visual-topic-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
.visual-topic-card:hover img { transform:scale(1.035); }
.visual-topic-shade { position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,13,21,.92),rgba(6,13,21,.18) 70%); }
.visual-topic-copy { position:absolute; inset:auto 0 0 0; padding:2rem; display:grid; grid-template-columns:1fr auto; align-items:end; gap:.4rem 1rem; }
.visual-topic-copy small { grid-column:1/-1; color:#dfb16a; text-transform:uppercase; letter-spacing:.14em; font-weight:800; font-size:.65rem; }
.visual-topic-copy strong { font-family:Georgia,serif; font-size:clamp(1.8rem,3vw,2.8rem); font-weight:400; line-height:1.04; }
.visual-topic-copy em { font-style:normal; font-size:1.5rem; }
.principle-card a { display:inline-block; margin-top:1rem; font-size:.8rem; font-weight:800; text-decoration:none; border-bottom:1px solid currentColor; }
.manifesto-icon { width:110px; height:110px; margin:0 auto 1rem; object-fit:contain; filter:drop-shadow(0 0 28px rgba(209,154,74,.28)); }
.faq-preview { background:#0c1621; color:var(--ivory); }
.faq-preview-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(3rem,8vw,8rem); align-items:start; }
.faq-preview h2 { font-family:Georgia,serif; font-weight:400; font-size:clamp(2.8rem,5vw,5rem); line-height:1; letter-spacing:-.04em; margin:.3rem 0 1rem; }
.faq-preview-grid > div:first-child > p:not(.eyebrow) { color:var(--muted-light); max-width:430px; }

/* Shared cards / report library */
.report-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.report-card { display:grid; grid-template-columns:minmax(190px,.75fr) 1fr; min-height:330px; background:#eee7da; color:var(--ink); text-decoration:none; overflow:hidden; border:1px solid rgba(17,24,33,.11); transition:transform .2s ease,box-shadow .2s ease; }
.report-card:hover { transform:translateY(-3px); box-shadow:var(--shadow); }
.report-card[hidden] { display:none; }
.report-card-media { min-height:100%; overflow:hidden; }
.report-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.report-card:hover .report-card-media img { transform:scale(1.03); }
.report-card-body { position:relative; padding:1.6rem; display:flex; flex-direction:column; }
.report-card-body .eyebrow { margin-bottom:.45rem; }
.report-number { position:absolute; top:1.35rem; right:1.35rem; font-family:Georgia,serif; color:#98765b; font-size:1.5rem; }
.report-card h3 { font-family:Georgia,serif; font-size:clamp(1.65rem,2.7vw,2.45rem); font-weight:400; line-height:1.06; letter-spacing:-.035em; margin:.2rem 0 .8rem; padding-right:2rem; }
.report-card p { color:var(--ink-soft); margin:0 0 1.2rem; font-size:.9rem; }
.card-link { margin-top:auto; font-weight:800; font-size:.78rem; }
.report-card.compact { grid-template-columns:1fr; min-height:460px; }
.report-card.compact .report-card-media { min-height:220px; }
.library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.library-content { background:var(--surface); }
.library-hero-icon { display:flex; justify-content:center; align-items:center; }
.library-hero-icon img { width:min(330px,70vw); filter:drop-shadow(0 20px 50px rgba(0,0,0,.22)); }

/* Report hero and TOC */
.report-hero { min-height:min(720px,78svh); }
.report-hero-inner { max-width:920px; }
.report-hero-number { display:inline-block; color:#e1b474; font-family:Georgia,serif; font-size:1.8rem; margin-bottom:.6rem; }
.report-hero h1 { font-size:clamp(4rem,8vw,7.7rem); max-width:12ch; }
.report-intro-strip { background:#111b27; color:var(--ivory); }
.report-intro-strip > .site-shell { display:grid; grid-template-columns:220px 1fr auto; gap:2rem; align-items:center; min-height:104px; }
.report-intro-strip div div { display:grid; }
.report-intro-strip strong { font-size:.68rem; letter-spacing:.14em; }
.report-intro-strip span { font-family:Georgia,serif; color:#e0b16c; }
.report-intro-strip p { color:var(--muted-light); margin:0; font-size:.9rem; }
.report-intro-strip a { color:var(--ivory); text-decoration:none; font-weight:800; font-size:.78rem; white-space:nowrap; }
.report-toc { border-top:1px solid var(--line); margin-top:1.6rem; padding-top:1rem; display:grid; gap:.55rem; max-height:48vh; overflow:auto; padding-right:.4rem; }
.report-toc > strong { text-transform:uppercase; letter-spacing:.13em; font-size:.65rem; margin-bottom:.35rem; }
.report-toc a { text-decoration:none; font-size:.76rem; line-height:1.35; color:#5f5d59; }
.report-toc .toc-level-3 { padding-left:.75rem; color:#81786f; }
.report-toc a:hover { color:var(--ink); text-decoration:underline; text-underline-offset:.16em; }
.report-body h2,.report-body h3 { scroll-margin-top:110px; }
.research-note { margin-top:4rem; padding:1.4rem 1.6rem; background:#eee7da; border-left:3px solid var(--gold); font-family:Inter,ui-sans-serif,sans-serif; font-size:.86rem; line-height:1.6; }
.research-note strong { text-transform:uppercase; letter-spacing:.12em; font-size:.68rem; }
.research-note p { margin:.4rem 0 0; }

/* Utility reference pages */
.icon-hero { background:radial-gradient(circle at 76% 42%,rgba(210,154,74,.18),transparent 26%),linear-gradient(135deg,#111f2e,#07101a); color:var(--ivory); padding:160px 0 80px; }
.icon-hero-grid { display:grid; grid-template-columns:1fr .45fr; gap:4rem; align-items:center; }
.icon-hero h1 { font-size:clamp(4rem,8vw,7.5rem); }
.icon-hero img { width:min(340px,70vw); margin-inline:auto; filter:drop-shadow(0 25px 60px rgba(0,0,0,.28)); }
.utility-layout { display:grid; grid-template-columns:260px minmax(0,820px); justify-content:center; gap:clamp(3rem,8vw,8rem); }
.utility-layout > aside { position:sticky; top:105px; align-self:start; border-top:2px solid var(--ink); padding-top:1rem; }
.utility-layout > aside h2 { font-size:1rem; letter-spacing:.14em; margin:0 0 .2rem; }
.utility-layout > aside p { font-family:Georgia,serif; font-size:1.6rem; color:#825c43; margin:.2rem 0 1.2rem; }
.faq-list { border-top:1px solid var(--line); }
.faq-list details { border-bottom:1px solid var(--line); }
.faq-list summary { list-style:none; cursor:pointer; padding:1.35rem 3rem 1.35rem 0; position:relative; font-family:Georgia,serif; font-size:clamp(1.35rem,2.6vw,2rem); line-height:1.2; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary::after { content:'+'; position:absolute; right:.4rem; top:1.2rem; font-family:Inter,sans-serif; font-size:1.3rem; font-weight:300; }
.faq-list details[open] summary::after { content:'−'; }
.faq-list details p { color:var(--ink-soft); max-width:720px; padding:0 2rem 1.5rem 0; margin:0; }
.faq-list.compact { border-color:var(--line-light); }
.faq-list.compact details { border-color:var(--line-light); }
.faq-list.compact summary { color:var(--ivory); }
.faq-list.compact details p { color:var(--muted-light); }
.glossary-intro { max-width:820px; margin-bottom:3rem; font-family:Georgia,serif; font-size:1.4rem; line-height:1.6; }
.glossary-grid { display:grid; grid-template-columns:repeat(2,1fr); margin:0; border-top:1px solid var(--line); }
.glossary-grid > div { padding:2rem 2rem 2rem 0; border-bottom:1px solid var(--line); }
.glossary-grid > div:nth-child(odd) { border-right:1px solid var(--line); padding-right:2.5rem; }
.glossary-grid > div:nth-child(even) { padding-left:2.5rem; }
.glossary-grid dt { font-family:Georgia,serif; font-size:1.75rem; margin-bottom:.6rem; }
.glossary-grid dd { color:var(--ink-soft); margin:0; }

/* Footer v3 */
.site-footer { padding:0; }
.footer-main { display:grid; grid-template-columns:1.4fr repeat(3,.7fr); gap:clamp(2rem,5vw,5rem); padding-top:4.5rem; padding-bottom:4rem; }
.footer-brand-block p { max-width:390px; }
.footer-group { display:grid; align-content:start; gap:.55rem; }
.footer-group h2 { margin:0 0 .65rem; font-size:.7rem; text-transform:uppercase; letter-spacing:.15em; color:#e0b06a; }
.footer-group a { color:rgba(244,234,216,.72); text-decoration:none; font-size:.86rem; }
.footer-group a:hover { color:var(--ivory); }
.footer-bottom { border-top:1px solid var(--line-light); padding-top:1.2rem; padding-bottom:1.5rem; display:flex; justify-content:space-between; gap:2rem; color:rgba(244,234,216,.48); font-size:.7rem; letter-spacing:.08em; }

@media (max-width: 1040px) {
  .site-nav { gap:.8rem; }
  .site-nav a { font-size:.76rem; }
  .site-nav a img { width:21px;height:21px; }
  .report-card { grid-template-columns:1fr; }
  .report-card-media { min-height:230px; }
  .footer-main { grid-template-columns:1fr 1fr 1fr; }
  .footer-brand-block { grid-column:1/-1; }
}

@media (max-width: 900px) {
  .answer-grid,.topic-layout,.faq-preview-grid,.utility-layout,.icon-hero-grid { grid-template-columns:1fr; }
  .topic-aside,.utility-layout > aside { position:static; }
  .topic-link-grid { grid-template-columns:1fr; }
  .topic-link-grid a { border-right:0; border-bottom:1px solid var(--line); }
  .topic-link-grid a:last-child { border-bottom:0; }
  .visual-topic-grid,.report-card-grid,.library-grid,.glossary-grid { grid-template-columns:1fr; }
  .glossary-grid > div:nth-child(odd) { border-right:0; padding-right:0; }
  .glossary-grid > div:nth-child(even) { padding-left:0; }
  .report-intro-strip > .site-shell { grid-template-columns:1fr; padding-top:1.4rem; padding-bottom:1.4rem; gap:.7rem; }
  .article-aside { display:block; }
  .report-toc { max-height:none; }
  .five-questions li { grid-template-columns:48px 1fr; }
  .five-questions li p { grid-column:2; }
  .section-heading-row { align-items:start; flex-direction:column; gap:1rem; }
}

@media (max-width: 700px) {
  .site-nav { gap:.25rem; }
  .site-nav a { width:100%; padding:.55rem 0; font-size:.9rem; }
  .site-nav a img { width:30px;height:30px; }
  .topic-hero,.report-hero { min-height:720px; }
  .topic-hero-inner,.report-hero-inner { padding-top:130px; padding-bottom:3.2rem; }
  .topic-hero h1,.report-hero h1 { font-size:clamp(3.6rem,15vw,5.5rem); }
  .topic-hero-shade,.report-hero-shade { background:linear-gradient(0deg,rgba(5,11,18,.97),rgba(5,11,18,.67) 58%,rgba(5,11,18,.22)); }
  .visual-topic-card { min-height:320px; }
  .report-card { min-height:0; }
  .report-card.compact { min-height:0; }
  .report-card-body { padding:1.35rem; }
  .library-hero-icon { display:none; }
  .icon-hero { padding-top:120px; }
  .icon-hero-grid { gap:1.4rem; }
  .icon-hero img { width:190px; }
  .footer-main { grid-template-columns:1fr 1fr; }
  .footer-brand-block { grid-column:1/-1; }
  .footer-bottom { flex-direction:column; gap:.4rem; }
}
.amian-test-tool { background:#e0d7c8; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.test-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(17,24,33,.16); border:1px solid rgba(17,24,33,.16); }
.test-question { background:#eee7da; padding:1.5rem; display:grid; grid-template-columns:40px 1fr; gap:.65rem 1rem; }
.test-question > span { color:#95775c; font-size:.68rem; font-weight:800; letter-spacing:.12em; padding-top:.25rem; }
.test-question > strong { font-family:Georgia,serif; font-size:1.35rem; font-weight:400; line-height:1.25; }
.test-question textarea { grid-column:1/-1; width:100%; resize:vertical; border:1px solid rgba(17,24,33,.18); background:rgba(255,255,255,.48); padding:.8rem; color:var(--ink); outline:none; }
.test-question textarea:focus { border-color:#8a6245; box-shadow:0 0 0 2px rgba(138,98,69,.12); }
.test-actions { grid-column:1/-1; background:#f4efe6; padding:1.2rem; display:flex; align-items:center; gap:.8rem; flex-wrap:wrap; }
.test-status { font-size:.78rem; color:#695646; }
@media(max-width:800px){.test-form{grid-template-columns:1fr;}}

/* Ask AMIANISM — read-only AG-UI reference interface */
.agent-hero { background: radial-gradient(circle at 78% 42%, rgba(209,154,74,.18), transparent 31%), linear-gradient(135deg,#08111b 0%,#101c29 58%,#0b1520 100%); color:var(--ivory); border-bottom:1px solid rgba(255,255,255,.08); }
.agent-hero-grid { min-height:min(720px,78svh); display:grid; grid-template-columns:minmax(0,1.15fr) minmax(260px,.6fr); gap:clamp(3rem,8vw,8rem); align-items:center; padding-top:150px; padding-bottom:clamp(4rem,8vw,7rem); }
.agent-hero-copy h1 { font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.055em; line-height:.94; font-size:clamp(4rem,8vw,8rem); margin:0; max-width:10ch; }
.agent-hero-copy h1 em { color:#e2ad63; font-style:italic; }
.agent-hero-copy > p:not(.eyebrow) { max-width:720px; color:rgba(244,234,216,.76); font-size:clamp(1.02rem,1.6vw,1.2rem); line-height:1.75; }
.agent-hero-mark { display:grid; place-items:center; }
.agent-hero-mark img { width:min(100%,440px); height:auto; filter:drop-shadow(0 0 58px rgba(209,154,74,.25)); }
.agent-badges { display:flex; flex-wrap:wrap; gap:.55rem; margin-top:1.7rem; }
.agent-badges span { border:1px solid rgba(244,234,216,.18); border-radius:999px; padding:.52rem .8rem; color:#e8d7bc; font-size:.72rem; letter-spacing:.04em; background:rgba(255,255,255,.035); }
.agent-section { background:var(--paper); }
.agent-layout { display:grid; grid-template-columns:minmax(250px,.7fr) minmax(0,1.3fr); gap:clamp(3rem,7vw,7rem); align-items:start; }
.agent-explainer { position:sticky; top:105px; }
.agent-explainer h2, .agent-boundary h2 { font-family:Georgia,serif; font-weight:400; letter-spacing:-.04em; line-height:1.02; font-size:clamp(2.6rem,4.5vw,4.6rem); margin:.3rem 0 1.5rem; }
.agent-explainer > p:not(.eyebrow) { color:var(--ink-soft); line-height:1.75; }
.agent-spec { margin:2rem 0; border-top:1px solid var(--line); }
.agent-spec div { display:grid; grid-template-columns:110px 1fr; gap:1rem; padding:.75rem 0; border-bottom:1px solid var(--line); }
.agent-spec dt { text-transform:uppercase; letter-spacing:.12em; font-size:.64rem; font-weight:800; color:#87684f; }
.agent-spec dd { margin:0; font-size:.9rem; }
.small-note { font-size:.78rem; }
.small-note code { font-size:.76rem; background:#e8e0d3; padding:.12rem .28rem; }
.agent-console { border:1px solid rgba(17,24,33,.16); background:#f3ede2; box-shadow:0 24px 70px rgba(30,24,18,.09); min-width:0; }
.agent-console-head { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.8rem 1rem; background:#0d1722; color:var(--ivory); font-size:.76rem; }
.agent-console-head > div { display:flex; align-items:center; gap:.6rem; }
.agent-console-head > span { color:rgba(244,234,216,.62); }
.status-dot { width:8px; height:8px; border-radius:50%; background:#d7a058; box-shadow:0 0 13px rgba(215,160,88,.8); }
.agent-thread { min-height:330px; max-height:560px; overflow:auto; padding:1.2rem; display:flex; flex-direction:column; gap:1rem; scroll-behavior:smooth; }
.agent-message { max-width:min(90%,720px); padding:1rem 1.08rem; border:1px solid rgba(17,24,33,.11); }
.agent-message p { white-space:pre-wrap; overflow-wrap:anywhere; margin:.25rem 0 0; line-height:1.62; }
.agent-message.assistant { align-self:flex-start; background:#fffaf2; }
.agent-message.user { align-self:flex-end; background:#172330; color:#f4ead8; border-color:#172330; }
.agent-role { display:block; font-size:.62rem; text-transform:uppercase; letter-spacing:.13em; font-weight:800; color:#8b6a4c; }
.agent-message.user .agent-role { color:#d7a058; }
.agent-suggestions { display:flex; flex-wrap:wrap; gap:.5rem; padding:0 1.2rem 1rem; }
.agent-suggestions button { appearance:none; border:1px solid rgba(17,24,33,.16); background:rgba(255,255,255,.58); color:var(--ink); padding:.5rem .7rem; border-radius:999px; cursor:pointer; font:inherit; font-size:.72rem; }
.agent-suggestions button:hover, .agent-suggestions button:focus-visible { border-color:#8a6245; background:#fffaf2; }
.agent-form { border-top:1px solid rgba(17,24,33,.13); padding:1rem 1.2rem 1.15rem; }
.agent-form > label { display:block; font-size:.68rem; text-transform:uppercase; letter-spacing:.13em; font-weight:800; color:#7b624d; margin-bottom:.55rem; }
.agent-input-row { display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:.6rem; align-items:end; }
.agent-input-row textarea { width:100%; min-height:64px; resize:vertical; border:1px solid rgba(17,24,33,.18); background:#fffdf9; color:var(--ink); padding:.8rem .9rem; font:inherit; line-height:1.45; outline:none; }
.agent-input-row textarea:focus { border-color:#8a6245; box-shadow:0 0 0 3px rgba(138,98,69,.11); }
.agent-input-row button { min-height:48px; }
.agent-status { margin:.65rem 0 0; min-height:1.2em; color:#6f6257; font-size:.72rem; }
.agent-boundary { background:#dcd3c4; }
@media(max-width:980px){.agent-hero-grid,.agent-layout{grid-template-columns:1fr}.agent-hero-mark{max-width:300px;justify-self:start}.agent-explainer{position:static}.agent-hero-grid{padding-top:135px}.agent-input-row{grid-template-columns:1fr auto}.agent-input-row textarea{grid-column:1/-1}.site-nav a{gap:.35rem}.site-nav a img{width:22px;height:22px}}
@media(max-width:620px){.agent-hero-copy h1{font-size:clamp(3.6rem,17vw,5rem)}.agent-console-head{align-items:flex-start;flex-direction:column}.agent-thread{min-height:280px;padding:.85rem}.agent-message{max-width:96%}.agent-suggestions{padding:0 .85rem .85rem}.agent-form{padding:.9rem}.agent-input-row{grid-template-columns:1fr}.agent-input-row textarea,.agent-input-row button{grid-column:1}.agent-input-row button{width:100%}}

/* Podcast series + episode */
.podcast-library-hero { background:radial-gradient(circle at 78% 35%,rgba(209,154,74,.2),transparent 30%),linear-gradient(135deg,#07111b,#132434 58%,#0b1520); color:var(--ivory); border-bottom:1px solid rgba(255,255,255,.08); }
.podcast-library-grid { min-height:min(720px,78svh); display:grid; grid-template-columns:minmax(0,1.25fr) minmax(240px,.55fr); gap:clamp(3rem,8vw,8rem); align-items:center; padding-top:145px; padding-bottom:clamp(4rem,8vw,7rem); }
.podcast-library-grid h1 { font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.055em; line-height:.94; font-size:clamp(4rem,8vw,7.8rem); margin:0; text-wrap:balance; }
.podcast-library-grid h1 em { color:#e4af66; }
.podcast-library-grid p:not(.eyebrow) { max-width:760px; color:rgba(244,234,216,.76); font-size:clamp(1rem,1.6vw,1.2rem); }
.podcast-library-grid > img { width:min(100%,360px); justify-self:center; filter:drop-shadow(0 0 60px rgba(209,154,74,.25)); }
.podcast-series-intro { background:var(--surface); }
.podcast-list-section { background:#ded5c6; }
.podcast-card { display:grid; grid-template-columns:minmax(260px,.62fr) minmax(0,1.38fr); gap:0; border:1px solid rgba(17,24,33,.14); background:#eee7da; box-shadow:var(--shadow); overflow:hidden; }
.podcast-card-media { min-height:460px; background:#0d1722; }
.podcast-card-media img { width:100%; height:100%; object-fit:cover; }
.podcast-card-copy { padding:clamp(2rem,5vw,4.5rem); align-self:center; }
.podcast-card-copy h2 { font-family:Georgia,serif; font-size:clamp(2.5rem,4.8vw,5rem); font-weight:400; letter-spacing:-.045em; line-height:1; margin:.2rem 0 1.1rem; }
.podcast-card-copy h2 a { text-decoration:none; }
.podcast-card-copy > p:not(.eyebrow) { color:var(--ink-soft); max-width:62ch; }
.podcast-meta-row { display:flex; flex-wrap:wrap; gap:.55rem; margin:1.4rem 0 1.8rem; }
.podcast-meta-row span { border:1px solid rgba(17,24,33,.16); padding:.4rem .65rem; font-size:.72rem; font-weight:750; text-transform:uppercase; letter-spacing:.08em; }

.podcast-episode-hero { min-height:min(760px,86svh); position:relative; display:grid; align-items:end; overflow:hidden; background:var(--night); color:var(--ivory); }
.podcast-hero-media,.podcast-hero-shade { position:absolute; inset:0; }
.podcast-hero-media img { width:100%; height:100%; object-fit:cover; object-position:center; }
.podcast-hero-shade { background:linear-gradient(90deg,rgba(4,10,16,.96) 0%,rgba(4,10,16,.82) 39%,rgba(4,10,16,.22) 70%,rgba(4,10,16,.12) 100%),linear-gradient(0deg,rgba(4,10,16,.88),transparent 60%); }
.podcast-hero-inner { position:relative; z-index:2; padding-top:150px; padding-bottom:clamp(3rem,7vw,6rem); }
.podcast-hero-inner h1 { font-family:Georgia,"Times New Roman",serif; font-size:clamp(3.6rem,7vw,7.3rem); font-weight:400; letter-spacing:-.055em; line-height:.94; margin:0; max-width:12ch; }
.podcast-hero-deck { max-width:760px; color:rgba(244,234,216,.78); font-size:clamp(1.04rem,1.8vw,1.3rem); margin:1.6rem 0 0; }
.podcast-hero-facts { display:flex; flex-wrap:wrap; gap:1px; margin:2rem 0 0; }
.podcast-hero-facts > div { min-width:150px; max-width:330px; padding:.85rem 1.1rem; background:rgba(8,17,27,.58); border:1px solid rgba(244,234,216,.16); backdrop-filter:blur(10px); }
.podcast-hero-facts dt { font-size:.62rem; text-transform:uppercase; letter-spacing:.14em; color:#deb06f; font-weight:800; }
.podcast-hero-facts dd { margin:.2rem 0 0; font-size:.88rem; color:#f4ead8; }

.podcast-player-band { background:#e6ded1; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:clamp(2rem,4vw,3.5rem) 0; }
.podcast-player-shell { display:grid; grid-template-columns:180px minmax(0,1fr); gap:clamp(1.5rem,4vw,3.2rem); align-items:center; }
.podcast-cover { width:180px; aspect-ratio:1; object-fit:cover; border:1px solid rgba(17,24,33,.14); box-shadow:0 15px 38px rgba(8,17,27,.16); }
.podcast-player-main h2 { font-family:Georgia,serif; font-size:clamp(2rem,3.4vw,3.5rem); font-weight:400; letter-spacing:-.035em; line-height:1.03; margin:.1rem 0 1rem; }
.podcast-player-main audio { width:100%; min-height:54px; display:block; accent-color:var(--gold); }
.audio-note { margin:.65rem 0 0; color:#6c5d50; font-size:.76rem; }
.podcast-actions { display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.25rem; }

.episode-answer { background:var(--surface); }
.episode-main-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr); gap:clamp(3rem,8vw,8rem); align-items:start; }
.episode-copy h2,.episode-details h2,.episode-side-card h2 { font-family:Georgia,serif; font-weight:400; letter-spacing:-.04em; line-height:1.04; }
.episode-copy h2 { font-size:clamp(3rem,5.6vw,5.4rem); margin:.15rem 0 1.4rem; }
.episode-copy > p { max-width:76ch; color:var(--ink-soft); font-size:1.04rem; }
.episode-copy .lede { color:var(--ink); font-family:Georgia,serif; font-size:clamp(1.45rem,2.5vw,2.1rem); line-height:1.42; }
.pronunciation-note { margin-top:2.2rem; padding:1.35rem 1.45rem; border-left:4px solid var(--gold); background:#eee6da; color:#4b433c; }
.pronunciation-note p { margin:.45rem 0 0; }
.episode-side-card { position:sticky; top:105px; border:1px solid rgba(17,24,33,.14); background:#e9e1d5; padding:clamp(1.7rem,3vw,2.4rem); }
.episode-side-card img { width:110px; margin-bottom:1rem; }
.episode-side-card h2 { font-size:clamp(2rem,3vw,3rem); margin:.2rem 0 1rem; }
.episode-side-card > p:not(.eyebrow) { color:var(--ink-soft); }

.episode-frameworks { background:linear-gradient(145deg,#07111b,#122331); color:var(--ivory); }
.episode-frameworks .split-intro > p { color:rgba(244,234,216,.67); }
.light-copy { color:rgba(244,234,216,.68)!important; }
.episode-framework-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); border:1px solid rgba(244,234,216,.16); background:rgba(255,255,255,.08); gap:1px; }
.episode-framework-grid article { min-height:300px; padding:clamp(1.35rem,2.5vw,2rem); background:#0d1925; }
.episode-framework-grid article > span { display:block; font-family:Georgia,serif; font-size:2rem; color:#e1aa5f; }
.episode-framework-grid h3 { font-family:Georgia,serif; font-size:clamp(1.45rem,2vw,2rem); font-weight:400; line-height:1.12; margin:1.1rem 0 .8rem; }
.episode-framework-grid p { color:rgba(244,234,216,.68); font-size:.9rem; }
.episode-framework-grid strong { color:#f4ead8; }

.episode-details { background:#ddd4c6; }
.episode-details-grid { display:grid; grid-template-columns:1fr 1fr; gap:1px; border:1px solid rgba(17,24,33,.14); background:rgba(17,24,33,.14); }
.episode-details-grid > article { background:#ebe4d8; padding:clamp(2rem,5vw,4rem); }
.episode-details h2 { font-size:clamp(2.6rem,4.5vw,4.5rem); margin:.25rem 0 1.6rem; }
.episode-principle-list { list-style:none; padding:0; margin:0; border-top:1px solid var(--line); }
.episode-principle-list li { display:grid; grid-template-columns:minmax(180px,.65fr) minmax(0,1.35fr); gap:1.3rem; padding:1.1rem 0; border-bottom:1px solid var(--line); }
.episode-principle-list span { color:var(--ink-soft); }
.episode-thresholds { counter-reset:steps; padding:0; margin:0 0 1.5rem; list-style:none; }
.episode-thresholds li { position:relative; padding:1rem 0 1rem 3.7rem; border-bottom:1px solid var(--line); }
.episode-thresholds li::before { counter-increment:steps; content:counter(steps,decimal-leading-zero); position:absolute; left:0; top:1rem; color:#8b6549; font-weight:800; letter-spacing:.08em; }
.episode-thresholds p { color:var(--ink-soft); margin:.35rem 0 0; }

.episode-rights { background:var(--surface); }
.rights-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; background:rgba(17,24,33,.14); border:1px solid rgba(17,24,33,.14); }
.rights-grid article { padding:clamp(1.5rem,3vw,2.4rem); background:#eee7db; min-height:260px; }
.rights-grid span { font-family:Georgia,serif; font-size:2.5rem; color:#a77950; }
.rights-grid h3 { font-family:Georgia,serif; font-size:2rem; font-weight:400; margin:.7rem 0; }
.rights-grid p { color:var(--ink-soft); }
.research-note-inline { margin:1.5rem 0 0; padding:1rem 1.15rem; border-left:3px solid #a77950; background:#eee7db; color:#594d43; }

.episode-quotes { background:#08111b; color:var(--ivory); }
.quote-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:rgba(244,234,216,.15); border:1px solid rgba(244,234,216,.15); }
.quote-grid blockquote { margin:0; min-height:250px; display:flex; align-items:center; background:#101c28; padding:clamp(2rem,4vw,3.4rem); font-family:Georgia,serif; font-size:clamp(1.6rem,3vw,2.7rem); font-weight:400; line-height:1.28; color:#f1dfc5; }
.episode-related { background:var(--paper); }

@media (max-width:1120px) {
  .episode-framework-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .episode-framework-grid article:last-child { grid-column:1/-1; }
  .rights-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .podcast-library-grid,.podcast-card,.podcast-player-shell,.episode-main-grid,.episode-details-grid { grid-template-columns:1fr; }
  .podcast-library-grid > img { justify-self:start; width:230px; }
  .podcast-card-media { min-height:340px; }
  .podcast-cover { width:150px; }
  .episode-side-card { position:static; }
  .quote-grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
  .podcast-library-grid { padding-top:125px; }
  .podcast-episode-hero { min-height:760px; }
  .podcast-hero-inner { padding-top:130px; }
  .podcast-hero-inner h1 { font-size:clamp(3.3rem,14vw,5rem); }
  .podcast-hero-shade { background:linear-gradient(0deg,rgba(4,10,16,.97),rgba(4,10,16,.65) 62%,rgba(4,10,16,.28)); }
  .podcast-hero-facts { display:grid; grid-template-columns:1fr; }
  .podcast-hero-facts > div { max-width:none; }
  .podcast-player-shell { text-align:left; }
  .podcast-cover { width:130px; }
  .podcast-actions .button { width:100%; }
  .episode-framework-grid,.rights-grid { grid-template-columns:1fr; }
  .episode-framework-grid article:last-child { grid-column:auto; }
  .episode-principle-list li { grid-template-columns:1fr; gap:.3rem; }
}
.home-podcast-section { background:#0b1621; color:var(--ivory); }
.home-podcast-grid { display:grid; grid-template-columns:minmax(240px,.62fr) minmax(0,1.38fr); gap:clamp(3rem,8vw,8rem); align-items:center; }
.home-podcast-art img { width:min(100%,520px); aspect-ratio:1; object-fit:cover; box-shadow:0 35px 90px rgba(0,0,0,.28); border:1px solid rgba(244,234,216,.12); }
.home-podcast-copy h2 { font-family:Georgia,serif; font-weight:400; font-size:clamp(3rem,5.5vw,5.6rem); letter-spacing:-.045em; line-height:1; margin:.15rem 0 1.2rem; }
.home-podcast-copy > p:not(.eyebrow) { color:rgba(244,234,216,.72); max-width:68ch; }
@media(max-width:900px){.home-podcast-grid{grid-template-columns:1fr}.home-podcast-art img{width:min(100%,360px)}}
/* Eight-item primary navigation collapses earlier after Podcast was added. */
@media(max-width:900px){
  .site-header{background:rgba(8,17,27,.94);border-color:var(--line-light);backdrop-filter:blur(18px)}
  .header-inner{min-height:68px}
  .nav-toggle{display:block}
  .site-nav{position:absolute;top:68px;left:0;right:0;display:none;padding:1.3rem 20px 1.6rem;background:rgba(8,17,27,.98);border-bottom:1px solid var(--line-light);flex-direction:column;align-items:flex-start;gap:.25rem}
  .site-nav.is-open{display:flex}
  .site-nav a{width:100%;padding:.55rem 0;font-size:.9rem}
  .site-nav a img{width:30px;height:30px}
}

/* v1.3.0 — client-side action tools, method audit, media hubs */
.privacy-chip{display:inline-flex;align-items:center;gap:.45rem;margin:.5rem 0 0;padding:.45rem .7rem;border:1px solid rgba(17,24,33,.18);border-radius:999px;font:700 .68rem/1.1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.055em;text-transform:uppercase;color:#385744;background:rgba(255,255,255,.35)}
.tool-card{padding:clamp(1.4rem,3vw,2.2rem);border:1px solid var(--line);background:#eee7db}
.tool-label{display:block;margin:0 0 .45rem;font:800 .69rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.08em;text-transform:uppercase;color:#6f5e50}
.tool-card label,.wizard-step label,.audit-question label{display:block;margin-bottom:1.15rem}
.tool-card input,.tool-card textarea,.tool-card select,.wizard-step input,.wizard-step textarea,.wizard-step select,.audit-form textarea,.audit-form select{width:100%;box-sizing:border-box;border:1px solid rgba(17,24,33,.2);background:#fbf7ef;color:var(--ink);font:inherit;padding:.85rem .9rem;border-radius:0;outline:none}
.tool-card input:focus,.tool-card textarea:focus,.tool-card select:focus,.wizard-step input:focus,.wizard-step textarea:focus,.wizard-step select:focus,.audit-form textarea:focus,.audit-form select:focus{border-color:#a77950;box-shadow:0 0 0 3px rgba(167,121,80,.16)}
.tool-actions{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-top:1.2rem}
.tool-status{display:inline-block;margin:.7rem 0 0;font:700 .72rem/1.4 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#44634e}
.tool-caveat{font-size:.78rem;color:#6b5f55;margin:.8rem 0 0}
.tool-result{margin-top:2rem;border:1px solid rgba(17,24,33,.18);background:#f0e8dc;padding:clamp(1.5rem,4vw,3rem)}
.tool-result h3,.wizard-step h3,.letter-preview h3{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em;line-height:1.05}

.field-wizard{background:#e7ded0}
.wizard-shell{display:grid;grid-template-columns:220px minmax(0,1fr);border:1px solid rgba(17,24,33,.16);background:#f1eadf;min-height:560px}
.wizard-progress{list-style:none;margin:0;padding:0;background:#0d1823;color:#d6c8b5}
.wizard-progress li{position:relative;padding:1.2rem 1.2rem 1.2rem 3.7rem;border-bottom:1px solid rgba(244,234,216,.12);font:750 .72rem/1.35 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em;text-transform:uppercase}
.wizard-progress li span{position:absolute;left:1.2rem;color:#a98a6a}
.wizard-progress li.is-active{background:#152737;color:#fff3df}
.wizard-progress li.is-active span,.wizard-progress li.is-complete span{color:#dfab64}
.wizard-form{padding:clamp(1.8rem,5vw,4.5rem)}
.wizard-step{max-width:820px}
.wizard-step h3{font-size:clamp(2.4rem,5vw,4.7rem);margin:.2rem 0 2rem}
.wizard-step textarea,.wizard-step input,.wizard-step select{font-size:1rem;background:#fffaf2}
.wizard-actions{display:flex;gap:.65rem;margin-top:1.4rem}
.diagnostic-result{background:#0d1925;color:var(--ivory);border:0;margin-top:0}
.diagnostic-result h3{font-family:Georgia,serif;font-size:clamp(2.4rem,4vw,4rem);font-weight:400;margin:.2rem 0 1.5rem}
.diagnostic-output{white-space:pre-wrap;font:500 .91rem/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:rgba(244,234,216,.84);max-width:95ch}
.diagnostic-result .button-outline.dark{color:var(--ivory);border-color:rgba(244,234,216,.3)}
.diagnostic-result .tool-status{color:#d5b076}

.rights-generator{background:#0c1621;color:var(--ivory)}
.rights-generator .split-intro>div:last-child p{color:rgba(244,234,216,.72)}
.rights-generator .privacy-chip{color:#e4c490;border-color:rgba(228,196,144,.28);background:rgba(255,255,255,.05)}
.generator-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.25fr);gap:1px;background:rgba(244,234,216,.15);border:1px solid rgba(244,234,216,.15)}
.rights-form{background:#111f2b;border:0}
.rights-form .tool-label{color:#c7a67f}
.rights-form input,.rights-form textarea{background:#08131d;color:#f4ead8;border-color:rgba(244,234,216,.2)}
.rights-form .tool-caveat{color:rgba(244,234,216,.6)}
.letter-preview{background:#f0e8dc;color:var(--ink);padding:clamp(1.5rem,4vw,3.2rem)}
.letter-preview h3{font-size:clamp(2.2rem,3.6vw,3.7rem);margin:.2rem 0 1.3rem}
.letter-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:660px;overflow:auto;background:#faf5ec;border:1px solid var(--line);padding:clamp(1.2rem,3vw,2rem);font:500 .83rem/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#2e3338}
.field-guide-depth{background:#ddd4c6}

.audit-tool{background:#ded5c7}
.audit-form{margin-top:2rem}
.claim-card{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:2rem;align-items:end}
.claim-card input[type=range]{padding:0;border:0;background:transparent;accent-color:#a77950}
.claim-card output{display:block;margin-top:.45rem;font:800 1.2rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#875f42}
.audit-question-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin-top:1px;background:rgba(17,24,33,.14);border:1px solid rgba(17,24,33,.14)}
.audit-question{margin:0;border:0;background:#efe8dd;padding:clamp(1.4rem,3vw,2.4rem);min-width:0}
.audit-question legend{float:left;width:100%;font-family:Georgia,serif;font-size:clamp(1.5rem,2.4vw,2.2rem);font-weight:400;line-height:1.15;margin:0 0 .8rem}
.audit-question legend span{display:block;font:800 .68rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.1em;color:#9a7657;margin-bottom:.5rem}
.audit-question>p{clear:both;color:var(--ink-soft);min-height:3.3em}
.audit-rating{display:grid!important;grid-template-columns:1fr;gap:.45rem;font:700 .72rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:uppercase;letter-spacing:.05em;color:#6e5c4d}
.audit-result{display:grid;grid-template-columns:180px minmax(0,1fr);gap:2rem;align-items:center;background:#0e1a26;color:var(--ivory)}
.score-ring{--score:0deg;width:160px;height:160px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at center,#0e1a26 0 57%,transparent 58%),conic-gradient(#d6a158 0 var(--score),rgba(244,234,216,.12) var(--score) 360deg);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.score-ring strong{font-size:2.5rem;line-height:1}.score-ring span{font-size:.75rem;color:rgba(244,234,216,.6)}
.audit-result h3{font-family:Georgia,serif;font-size:clamp(2.2rem,4vw,4rem);font-weight:400;margin:.2rem 0 .7rem}.audit-result p{color:rgba(244,234,216,.7)}

.video-library-hero img{opacity:.92}.video-card .podcast-card-media{aspect-ratio:16/9}.video-card .podcast-card-media img{aspect-ratio:16/9}.video-player-band{background:#0a141f;color:var(--ivory)}.video-player-band h2{font-family:Georgia,serif;font-size:clamp(2.8rem,5vw,5rem);font-weight:400;margin:.2rem 0 1.4rem}.video-embed{position:relative;aspect-ratio:16/9;background:#000}.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-embed-placeholder{position:relative;aspect-ratio:16/9;background:#060c12;overflow:hidden}.video-embed-placeholder img{width:100%;height:100%;object-fit:cover;opacity:.42}.video-embed-placeholder>div{position:absolute;inset:0;display:grid;place-content:center;max-width:720px;margin:auto;padding:2rem;text-align:center}.video-embed-placeholder strong{font-family:Georgia,serif;font-size:clamp(1.9rem,3vw,3rem);font-weight:400}.video-embed-placeholder p{color:rgba(244,234,216,.72)}
.video-chapters{background:#e7ded1}.chapter-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.chapter-list li{display:grid;grid-template-columns:110px minmax(0,1fr);gap:1.5rem;padding:1rem 0;border-bottom:1px solid var(--line);align-items:baseline}.chapter-list time{font:800 .78rem ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#8e6549}.chapter-list strong{font-family:Georgia,serif;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:400}
.episode-downloads{background:#d9d0c2}.episode-framework-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.episode-framework-grid.six article:last-child{grid-column:auto}

@media(max-width:1000px){.wizard-shell,.generator-grid,.claim-card,.audit-result{grid-template-columns:1fr}.wizard-progress{display:grid;grid-template-columns:repeat(4,1fr)}.wizard-progress li{padding:1rem;text-align:center}.wizard-progress li span{position:static;display:block;margin-bottom:.25rem}.audit-question-grid{grid-template-columns:1fr}.score-ring{width:140px;height:140px}.episode-framework-grid.six{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.wizard-progress{grid-template-columns:1fr 1fr}.wizard-actions,.tool-actions{align-items:stretch}.wizard-actions .button,.tool-actions .button{width:100%}.episode-framework-grid.six{grid-template-columns:1fr}.chapter-list li{grid-template-columns:80px minmax(0,1fr)}}

@media print{
  body.print-diagnostic *{visibility:hidden!important}
  body.print-diagnostic [data-diagnostic-result],body.print-diagnostic [data-diagnostic-result] *{visibility:visible!important}
  body.print-diagnostic [data-diagnostic-result]{position:absolute!important;inset:0!important;margin:0!important;background:#fff!important;color:#000!important;border:0!important}
  body.print-diagnostic [data-diagnostic-output]{color:#000!important;font-size:10pt!important}
  body.print-diagnostic [data-diagnostic-result] .tool-actions,body.print-diagnostic [data-diagnostic-result] .tool-status{display:none!important}
}
.home-podcast-section .media-heading>p{max-width:52ch;color:rgba(244,234,216,.66)}
.home-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(244,234,216,.13);border:1px solid rgba(244,234,216,.13)}
.home-media-card{display:grid;grid-template-columns:minmax(160px,.55fr) minmax(0,1.45fr);gap:0;background:#101d29;min-height:360px;overflow:hidden}.home-media-card>img{width:100%;height:100%;object-fit:cover;min-height:360px}.home-media-card.video-card>img{aspect-ratio:auto}.home-media-card>div{padding:clamp(1.5rem,3vw,2.5rem)}.home-media-card h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(2rem,3.3vw,3.6rem);line-height:1;letter-spacing:-.04em;margin:.2rem 0 1rem;color:#f4ead8}.home-media-card p:not(.eyebrow){color:rgba(244,234,216,.7)}
@media(max-width:1050px){.home-media-grid{grid-template-columns:1fr}.home-media-card{grid-template-columns:230px minmax(0,1fr);min-height:300px}.home-media-card>img{min-height:300px}}
@media(max-width:650px){.home-media-card{grid-template-columns:1fr}.home-media-card>img{max-height:320px;min-height:0;aspect-ratio:16/10}.home-media-card.audio-card>img{aspect-ratio:1;max-height:320px}}

/* ===== v1.4 accessibility, performance, and internal-link refinement ===== */
html { scroll-padding-top: 110px; }
[id] { scroll-margin-top: 110px; }

:where(a, button, input, select, textarea, summary, audio):focus-visible {
  outline: 3px solid #f0b95e;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px #09121d;
}
:where(.button, .site-nav a, .nav-toggle, .hero-scroll, .text-link, .footer-top-link) {
  min-height: 44px;
}
.button, .site-nav a, .nav-toggle, .hero-scroll, .footer-top-link { touch-action: manipulation; }

.topic-toc { display: grid; gap: .15rem; margin: 1.5rem 0 1.75rem; padding: 1rem 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.topic-toc > strong { margin-bottom: .45rem; font-size: .72rem; text-transform: uppercase; letter-spacing: .12em; color: #735f4e; }
.topic-toc a { display: grid; grid-template-columns: 2.2rem 1fr; gap: .55rem; align-items: baseline; padding: .46rem .25rem; text-decoration: none; line-height: 1.35; border-radius: 4px; }
.topic-toc a:hover { background: rgba(17,24,33,.06); }
.topic-toc a span { color: #94765b; font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace; font-size: .72rem; }

.related-answers { background: #efe8dc; border-top: 1px solid var(--line); }
.answer-link-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.answer-link-grid > a { position: relative; display: flex; flex-direction: column; min-height: 250px; gap: .8rem; padding: 1.7rem 1.8rem; text-decoration: none; border-right: 1px solid var(--line); transition: background .18s ease; }
.answer-link-grid > a:last-child { border-right: 0; }
.answer-link-grid > a:hover { background: rgba(255,255,255,.38); }
.answer-link-grid strong { font-family: Georgia,"Times New Roman",serif; font-size: 1.55rem; line-height: 1.08; font-weight: 400; }
.answer-link-grid span { color: var(--ink-soft); line-height: 1.58; }
.answer-link-grid b { margin-top: auto; font-size: 1.35rem; font-weight: 400; }

.faq-list details { position: relative; scroll-margin-top: 120px; }
.faq-anchor { position: absolute; top: 1.05rem; right: 3.2rem; display: inline-grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; color: #84674d; text-decoration: none; opacity: .55; }
.faq-anchor:hover, .faq-anchor:focus-visible { opacity: 1; background: rgba(17,24,33,.07); }

.human-sitemap-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); }
.human-sitemap-grid > section { background: var(--paper); padding: clamp(1.8rem,4vw,3.4rem); }
.human-sitemap-grid h2 { margin: .2rem 0 1.4rem; font-family: Georgia,"Times New Roman",serif; font-weight: 400; font-size: clamp(2rem,3vw,3rem); letter-spacing: -.035em; }
.human-sitemap-grid a { display: grid; gap: .3rem; padding: 1rem 0; border-top: 1px solid var(--line); text-decoration: none; }
.human-sitemap-grid a:last-child { border-bottom: 1px solid var(--line); }
.human-sitemap-grid a strong { font-size: 1rem; }
.human-sitemap-grid a span { color: var(--ink-soft); line-height: 1.55; font-size: .92rem; }
.human-sitemap-grid a:hover strong { text-decoration: underline; text-underline-offset: .2em; }

.footer-top-link { display: inline-flex; align-items: center; color: inherit; text-decoration: none; }
.footer-top-link:hover { text-decoration: underline; text-underline-offset: .2em; }

/* Prevent focused controls from sitting under the sticky header. */
:where(a, button, input, select, textarea, summary):focus { scroll-margin-top: 120px; }

/* Improve form readability and pointer targets without changing client-side privacy boundaries. */
:where(input[type="text"], input[type="search"], input[type="date"], input[type="range"], select, textarea) { font: inherit; }
:where(input[type="text"], input[type="search"], input[type="date"], select, textarea) { min-height: 44px; }
select { cursor: pointer; }
summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; }

@media (max-width: 900px) {
  .answer-link-grid, .human-sitemap-grid { grid-template-columns: 1fr; }
  .answer-link-grid > a { min-height: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .answer-link-grid > a:last-child { border-bottom: 0; }
  .topic-toc { position: static; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; }
}

@media print {
  .site-header, .site-footer, .breadcrumbs, .topic-toc, .hero-scroll, .tool-actions, .footer-top-link { display: none !important; }
  body { background: #fff !important; color: #000 !important; }
  main { padding: 0 !important; }
  a { color: #000 !important; text-decoration: underline; }
  a[href^="http"]::after { content: " (" attr(href) ")"; font-size: .8em; }
}

/* v1.5.0 — privacy-first owner-supplied YouTube embeds */
.youtube-consent {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--line, rgba(201, 158, 80, .3));
  border-radius: 1.25rem;
  background: #07111d;
  box-shadow: 0 1.4rem 4rem rgba(0, 0, 0, .22);
}
.youtube-consent-frame {
  position: relative;
  aspect-ratio: 16 / 9;
  min-height: 18rem;
  background: #07111d;
}
.youtube-consent-frame > img,
.youtube-consent-frame > iframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  object-fit: cover;
}
.youtube-consent-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(2, 9, 17, .86), rgba(2, 9, 17, .22) 58%, rgba(2, 9, 17, .42));
  pointer-events: none;
}
.youtube-consent.is-loaded .youtube-consent-frame::after { display: none; }
.youtube-consent-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: .85rem;
  padding: clamp(1.5rem, 4vw, 3rem);
  text-align: center;
  color: #fff;
}
.youtube-consent.is-loaded .youtube-consent-overlay { display: none; }
.youtube-play-button {
  min-width: 4.25rem;
  min-height: 4.25rem;
  border: 1px solid rgba(255, 255, 255, .68);
  border-radius: 999px;
  background: #d9a85f;
  color: #07111d;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 .7rem 2rem rgba(0,0,0,.28);
}
.youtube-play-button:hover { transform: translateY(-1px); }
.youtube-consent-note {
  max-width: 48rem;
  margin: 0;
  color: rgba(255,255,255,.86);
  font-size: .92rem;
  line-height: 1.55;
}
.youtube-consent-note a { color: #fff; text-underline-offset: .2em; }
.video-grid-two {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(1.25rem, 3vw, 2rem);
}
.video-source-note {
  margin-top: 1rem;
  padding: .85rem 1rem;
  border-left: 3px solid #d9a85f;
  background: rgba(217,168,95,.08);
  font-size: .92rem;
}
@media (max-width: 860px) {
  .video-grid-two { grid-template-columns: 1fr; }
  .youtube-consent-frame { min-height: 14rem; }
}


/* v1.6.0 answer/source publish polish */
.report-source-boundary{display:flex;gap:1rem;align-items:flex-start;justify-content:space-between;padding:1rem 0 1.25rem;border-top:1px solid var(--line,rgba(9,18,29,.14));font-size:.92rem}
.report-source-boundary strong{font-family:var(--mono,monospace);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;white-space:nowrap}
.report-source-boundary span{max-width:58rem}
.source-policy-prose h2{scroll-margin-top:7rem}.source-policy-prose code{font-size:.9em}
@media(max-width:720px){.report-source-boundary{display:block}.report-source-boundary strong{display:block;margin-bottom:.45rem}}


/* v1.8.0 — open podcast discovery */
.podcast-feed-section { padding-top: 0; }
.podcast-feed-callout {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(16rem, .6fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: center;
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid var(--line, rgba(16, 28, 44, .14));
  border-radius: var(--radius-lg, 1.5rem);
  background: rgba(255,255,255,.68);
}
.podcast-feed-callout h2 { margin-bottom: .75rem; }
.podcast-feed-callout .podcast-actions { justify-content: flex-start; }
@media (max-width: 760px) {
  .podcast-feed-callout { grid-template-columns: 1fr; }
}


/* v1.9.0 — owner video expansion + declared-content boundaries */
.related-video-stack{display:grid;gap:clamp(2rem,4vw,4rem)}
.related-video-item{padding-top:clamp(1.5rem,3vw,2.5rem);border-top:1px solid rgba(16,29,41,.16)}
.related-video-item:first-child{padding-top:0;border-top:0}
.related-video-item h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(2rem,3vw,3.2rem);line-height:1.05;margin:.25rem 0 1rem}
.content-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0 2rem}
.content-class-card{border:1px solid rgba(16,29,41,.14);padding:1.25rem;background:rgba(255,255,255,.45)}
.content-class-card h3{margin:.15rem 0 .65rem;font-family:Georgia,serif;font-weight:400;font-size:1.5rem}
.content-class-card p{margin:0}
.content-class-badge{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .65rem;border:1px solid currentColor;border-radius:999px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}
@media (max-width:760px){.content-class-grid{grid-template-columns:1fr}}


/* v1.10.0 — publisher identity + public release transparency */
.release-note { border-top: 1px solid var(--line, rgba(255,255,255,.12)); padding-top: clamp(1.5rem, 3vw, 2.5rem); margin-top: clamp(2rem, 4vw, 3.5rem); }
.release-note .eyebrow { margin-bottom: .45rem; }

/* v1.15.0 — editorial video library polish + public YouTube artwork */
.video-feature-section{padding-bottom:clamp(2rem,5vw,5rem)}
.video-feature-card{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(19rem,.75fr);gap:clamp(1.5rem,4vw,4rem);align-items:center;padding:clamp(1rem,2vw,1.5rem);border:1px solid rgba(16,29,41,.14);background:rgba(255,255,255,.52)}
.video-feature-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.1rem,4vw,4.5rem);line-height:1.02;margin:.25rem 0 1rem}
.video-feature-copy>p:not(.eyebrow):not(.video-byline):not(.video-summary-label){font-size:1.06rem;line-height:1.75}
.video-library-grid-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2.25rem)}
.video-library-card{display:flex;flex-direction:column;min-width:0;border:1px solid rgba(16,29,41,.14);background:rgba(255,255,255,.5)}
.video-library-card .youtube-consent{border:0;border-radius:0;box-shadow:none}
.video-library-card-copy{padding:clamp(1.25rem,3vw,2rem);display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;flex:1}
.video-library-card-copy h3{font-family:Georgia,serif;font-weight:400;font-size:clamp(1.65rem,2.7vw,2.5rem);line-height:1.08;margin:.1rem 0 .35rem}
.video-library-card-copy>p{margin:0;line-height:1.65}
.video-byline{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:rgba(16,29,41,.66)}
.video-summary-label{margin-top:auto!important;padding-top:.7rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.7rem!important;letter-spacing:.08em;text-transform:uppercase;color:rgba(16,29,41,.52)}
.video-card-actions{display:flex;flex-wrap:wrap;gap:.65rem 1.1rem;margin-top:.35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;text-transform:uppercase;letter-spacing:.045em}
.video-card-actions a{text-underline-offset:.22em}
.video-privacy-section{padding-top:0}
.youtube-consent-frame>img{aspect-ratio:16/9}
.youtube-consent-overlay>strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:uppercase;letter-spacing:.08em;font-size:.86rem}
.youtube-consent-note{max-width:34rem}
@media(max-width:900px){.video-feature-card{grid-template-columns:1fr}.video-library-grid-cards{grid-template-columns:1fr}}

.dual-scale-note { margin-top: 2rem; max-width: 780px; }

/* ===== v1.18 worldview translation / Claim Lens ===== */
.claim-lens-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1px;
  margin: 2rem 0;
  border: 1px solid var(--line);
  background: var(--line);
}
.claim-lens-grid article {
  min-height: 250px;
  padding: clamp(1.4rem, 3vw, 2.2rem);
  background: #eee7db;
}
.claim-lens-grid article:last-child { grid-column: 1 / -1; min-height: 210px; }
.claim-lens-grid span {
  display: block;
  color: #8b6549;
  font: 800 .72rem/1.3 ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.claim-lens-grid h3 {
  margin: .8rem 0 .7rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.65rem, 2.5vw, 2.35rem);
  font-weight: 400;
  line-height: 1.08;
}
.claim-lens-grid p { margin-bottom: 0; color: var(--ink-soft); }
@media (max-width: 760px) {
  .claim-lens-grid { grid-template-columns: 1fr; }
  .claim-lens-grid article:last-child { grid-column: auto; min-height: 0; }
  .claim-lens-grid article { min-height: 0; }
}

/* ===== v1.19 interactive worldview translation / Claim Lens ===== */
.claim-lens-tool { background: #0d1823; color: var(--ivory); }
.claim-lens-tool .section-intro > div:last-child p { color: rgba(244,234,216,.76); }
.claim-lens-tool .privacy-chip { color: #e4c490; border-color: rgba(228,196,144,.3); background: rgba(255,255,255,.04); }
.claim-lens-tool-shell { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(20rem,.85fr); gap: clamp(1.25rem,3vw,2.5rem); align-items: start; }
.claim-lens-form { background: #111f2b; color: var(--ivory); border: 1px solid rgba(244,234,216,.16); }
.claim-lens-form-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 1rem; }
.claim-lens-form-grid label { display: block; margin-bottom: 1.1rem; }
.claim-lens-form-grid .claim-lens-wide { grid-column: 1 / -1; }
.claim-lens-form .tool-label { display: block; margin-bottom: .45rem; color: #c7a67f; font: 800 .72rem/1.3 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; letter-spacing: .06em; text-transform: uppercase; }
.claim-lens-form .tool-label small { font: inherit; opacity: .7; text-transform: none; letter-spacing: 0; }
.claim-lens-form textarea,.claim-lens-form select { width: 100%; box-sizing: border-box; padding: .85rem .9rem; border: 1px solid rgba(244,234,216,.2); border-radius: 0; background: #08131d; color: #f4ead8; font: inherit; }
.claim-lens-form textarea:focus,.claim-lens-form select:focus { border-color: #d9a85f; outline: 3px solid rgba(217,168,95,.18); outline-offset: 0; }
.claim-lens-form option { color: #111; background: #fff; }
.claim-lens-form .tool-caveat { color: rgba(244,234,216,.66); }
.claim-lens-result { border: 1px solid rgba(228,196,144,.35); background: #eee7db; color: var(--ink); padding: clamp(1.4rem,3vw,2.4rem); }
.claim-lens-result h3 { font-family: Georgia,"Times New Roman",serif; font-size: clamp(1.8rem,3vw,2.8rem); font-weight: 400; line-height: 1.08; }
.claim-lens-result pre { margin: 1.25rem 0; white-space: pre-wrap; overflow-wrap: anywhere; font: 500 .9rem/1.65 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; color: #1b2a36; }
@media (max-width: 900px) { .claim-lens-tool-shell { grid-template-columns: 1fr; } }
@media (max-width: 650px) { .claim-lens-form-grid { grid-template-columns: 1fr; } .claim-lens-form-grid .claim-lens-wide { grid-column: auto; } }
@media print {
  body.print-claim-lens * { visibility: hidden !important; }
  body.print-claim-lens [data-claim-lens-result],body.print-claim-lens [data-claim-lens-result] * { visibility: visible !important; }
  body.print-claim-lens [data-claim-lens-result] { position: absolute !important; inset: 0 !important; margin: 0 !important; background: #fff !important; color: #000 !important; border: 0 !important; }
  body.print-claim-lens [data-claim-lens-result] .tool-actions,body.print-claim-lens [data-claim-lens-result] [data-claim-lens-status] { display: none !important; }
}
