:root {
  color-scheme: light;
  --green-950: #102b23;
  --green-900: #173e32;
  --green-800: #245440;
  --green-700: #2c7659;
  --green-100: #dcebe1;
  --green-50: #eff6f1;
  --amber-600: #bd7126;
  --amber-500: #e3a44d;
  --amber-100: #f7e5c9;
  --ink: #17211d;
  --muted: #5b6963;
  --line: #cfd6d1;
  --paper: #f5f2ea;
  --white: #fff;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); }
img { display: block; max-width: 100%; }
a { color: inherit; }
p { color: var(--muted); line-height: 1.65; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { text-wrap: balance; }
h1, h2 { font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif; font-weight: 600; }
h1 { margin-bottom: 24px; font-size: clamp(3rem, 7vw, 5.5rem); line-height: 0.98; letter-spacing: -0.045em; }
h2 { margin-bottom: 18px; font-size: clamp(2rem, 4vw, 3.35rem); line-height: 1.08; letter-spacing: -0.035em; }
h3 { margin-bottom: 10px; font-size: 1.18rem; letter-spacing: -0.018em; }
code, pre { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }

.shell { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.section { padding-block: clamp(76px, 10vw, 128px); }
.section-tint { background: var(--green-50); border-block: 1px solid var(--line); }
.section-dark { background: var(--green-950); color: var(--white); }
.section-dark p { color: #b8c9c1; }
.eyebrow { margin-bottom: 18px; color: var(--amber-600); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.13em; }
.fine-print { margin: 28px 0 0; font-size: 0.78rem; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 20; padding: 10px 14px; transform: translateY(-160%); border-radius: 8px; background: var(--white); color: var(--green-900); font-weight: 800; }
.skip-link:focus { transform: translateY(0); }

.site-header { position: relative; z-index: 10; border-bottom: 1px solid #29473b; background: var(--green-950); color: var(--white); }
.header-inner { display: grid; min-height: 74px; grid-template-columns: auto 1fr auto; gap: 28px; align-items: center; }
.brand { display: inline-flex; align-items: center; gap: 10px; text-decoration: none; }
.brand img { width: 34px; height: 34px; }
.brand strong, .brand small { display: block; }
.brand strong { color: var(--green-900); font-size: 1.02rem; letter-spacing: -0.02em; }
.brand small { margin-top: 2px; color: var(--muted); font-size: 0.66rem; }
.site-header .brand strong { color: var(--white); }
.primary-nav { display: flex; justify-content: center; gap: 28px; }
.primary-nav a { padding: 7px 0 5px; border-bottom: 2px solid transparent; color: #c1d0ca; font-size: 0.79rem; font-weight: 700; text-decoration: none; }
.primary-nav a:hover, .primary-nav a[aria-current="page"] { border-bottom-color: var(--amber-500); color: var(--white); }
.header-cta, .button { display: inline-flex; min-height: 46px; padding: 0 20px; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 3px; font-size: 0.84rem; font-weight: 800; text-decoration: none; }
.header-cta { min-height: 40px; padding-inline: 0; border: 0; border-bottom: 2px solid var(--amber-500); border-radius: 0; color: var(--white); }
.header-cta:hover { border-bottom-color: var(--white); color: var(--amber-500); }
.button.primary { background: var(--green-900); color: var(--white); }
.button.primary:hover { background: var(--green-800); }
.button.secondary { border-color: #aeb9b3; background: rgba(255, 255, 255, 0.35); color: var(--green-900); }
.button.light { background: var(--white); color: var(--green-900); }
.button-row { display: flex; flex-wrap: wrap; gap: 10px; }
.text-link { color: var(--green-800); font-size: 0.86rem; font-weight: 800; text-decoration: none; }
.text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
a:focus-visible { outline: 3px solid var(--amber-500); outline-offset: 3px; }

.home-intro { display: grid; min-height: 620px; padding-block: clamp(76px, 9vw, 112px); grid-template-columns: minmax(0, 1fr) minmax(360px, .68fr); gap: clamp(54px, 8vw, 108px); align-items: center; }
.home-intro-copy { max-width: 720px; }
.hero-kicker, .section-label { margin-bottom: 18px; color: var(--green-700); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.home-intro h1 { max-width: 720px; margin-bottom: 26px; font-size: clamp(3.25rem, 5.6vw, 4.7rem); line-height: 1.01; letter-spacing: -.045em; }
.home-lead { max-width: 680px; margin-bottom: 30px; color: #45534d; font-size: clamp(1.04rem, 1.6vw, 1.2rem); line-height: 1.7; }
.hero-position-field { align-self: stretch; display: flex; padding: 34px; flex-direction: column; justify-content: flex-end; border-top: 4px solid var(--amber-500); background: var(--green-950); color: var(--white); }
.hero-position-field > span { margin-bottom: auto; color: var(--amber-500); font-size: .64rem; font-weight: 850; letter-spacing: .1em; }
.hero-position-field h2 { max-width: 420px; margin: 72px 0 20px; color: var(--white); font-size: clamp(2rem, 3.4vw, 3rem); }
.hero-position-field p { margin-bottom: 26px; color: #b8c9c1; font-size: .82rem; }
.hero-position-field a { align-self: flex-start; color: var(--white); font-size: .72rem; font-weight: 800; text-underline-offset: 5px; }
.platform-utility-strip { border-block: 1px solid var(--line); background: var(--white); }
.platform-utility-strip .shell { display: grid; min-height: 82px; grid-template-columns: auto repeat(3, minmax(130px, 1fr)) auto; gap: 30px; align-items: center; }
.utility-strip-label { color: var(--green-900); font-size: .7rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.platform-utility-strip .shell > div { padding-left: 22px; border-left: 1px solid var(--line); }
.platform-utility-strip small, .platform-utility-strip strong { display: block; }
.platform-utility-strip small { margin-bottom: 5px; color: var(--amber-600); font-size: .58rem; font-weight: 850; letter-spacing: .09em; }
.platform-utility-strip strong { color: var(--green-900); font-size: .76rem; }
.platform-utility-strip a { color: var(--green-800); font-size: .7rem; font-weight: 800; text-decoration: none; white-space: nowrap; }
.home-scope { border-bottom: 1px solid var(--line); background: var(--white); }
.home-scope-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(60px, 10vw, 140px); align-items: start; }
.home-scope header { max-width: 500px; }
.home-scope h2 { font-size: clamp(2.25rem, 3.8vw, 3.4rem); }
.scope-intro { margin-bottom: 34px; font-size: 1rem; }
.scope-outcomes { margin: 0 0 28px; padding: 0; border-top: 1px solid var(--green-900); list-style: none; }
.scope-outcomes li { position: relative; padding: 23px 0 23px 24px; border-bottom: 1px solid var(--line); }
.scope-outcomes li::before { position: absolute; top: 30px; left: 0; width: 9px; height: 2px; background: var(--amber-500); content: ""; }
.scope-outcomes strong { display: block; margin-bottom: 7px; color: var(--green-900); font-size: .93rem; }
.scope-outcomes p { margin: 0; font-size: .82rem; }
.home-value { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(60px, 10vw, 140px); align-items: start; }
.home-value-intro { max-width: 500px; }
.home-value-intro h2 { font-size: clamp(2.25rem, 3.8vw, 3.4rem); }
.home-value-intro > p:last-child { max-width: 460px; font-size: .94rem; }
.capability-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--green-900); border-left: 1px solid var(--line); }
.capability-grid article { padding: 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255, 255, 255, .32); }
.capability-grid article > span { display: block; margin-bottom: 30px; color: var(--amber-600); font-size: .65rem; font-weight: 850; letter-spacing: .1em; }
.capability-grid h3 { margin-bottom: 10px; color: var(--green-900); font-size: 1.12rem; }
.capability-grid p { margin-bottom: 0; font-size: .8rem; }
.home-evidence { padding-block: clamp(76px, 9vw, 116px) 0; background: var(--green-950); color: var(--white); }
.home-evidence-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(60px, 10vw, 140px); }
.home-evidence .section-label { color: var(--amber-500); }
.home-evidence h2 { max-width: 620px; }
.home-evidence p { max-width: 600px; color: #b8c9c1; }
.light-link { display: inline-block; margin-top: 14px; color: var(--white); }
.decision-trail { margin: 0; padding: 0; border-top: 1px solid #4c655b; list-style: none; }
.decision-trail li { display: grid; padding-block: 19px; grid-template-columns: 105px 1fr; gap: 28px; border-bottom: 1px solid #385248; }
.decision-trail li > span { padding-top: 3px; color: var(--amber-500); font-size: .68rem; font-weight: 850; letter-spacing: .08em; }
.decision-trail li:not(:last-child) > span::after { float: right; color: #6f887d; content: "↓"; }
.decision-trail h3 { margin-bottom: 5px; color: var(--white); font-size: .95rem; }
.decision-trail p { margin: 0; color: #b8c9c1; font-size: .77rem; line-height: 1.5; }
.demo-evidence { display: flex; margin-top: clamp(62px, 8vw, 94px); padding-block: 22px; flex-wrap: wrap; gap: 18px 34px; border-top: 1px solid #385248; }
.demo-evidence strong { color: var(--amber-500); font-size: .71rem; text-transform: uppercase; letter-spacing: .08em; }
.demo-evidence span { color: #c7d4ce; font-size: .73rem; }
.home-boundary { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(55px, 10vw, 140px); }
.home-boundary h2, .home-deployment h2 { font-size: clamp(2.2rem, 3.8vw, 3.4rem); }
.home-boundary > div:last-child > p { margin-bottom: 27px; font-size: 1.02rem; }
.home-boundary ul { display: grid; margin: 0 0 30px; padding: 0; gap: 10px; list-style: none; color: var(--green-900); font-size: .84rem; font-weight: 750; }
.home-boundary li::before { margin-right: 9px; color: var(--amber-600); content: "✓"; }
.home-formats { border-block: 1px solid var(--line); background: #eeeee7; }
.home-formats-heading { display: grid; margin-bottom: 48px; grid-template-columns: 1fr .8fr; gap: clamp(48px, 9vw, 120px); align-items: end; }
.home-formats-heading h2 { max-width: 700px; margin-bottom: 0; font-size: clamp(2.2rem, 3.8vw, 3.4rem); }
.home-formats-heading > p { margin-bottom: 0; font-size: .88rem; }
.format-lines { margin: 0; border-top: 1px solid #cbd0cb; }
.format-lines div { display: grid; padding-block: 20px; grid-template-columns: minmax(160px, .4fr) 1fr; gap: 28px; border-bottom: 1px solid #cbd0cb; }
.format-lines dt { color: var(--green-900); font-weight: 800; }
.format-lines dd { margin: 0; color: var(--muted); font-size: .82rem; line-height: 1.55; }
.format-note { max-width: 880px; margin: 28px 0 0; font-size: .76rem; }
.home-deployment { display: grid; grid-template-columns: .9fr 1.1fr; gap: clamp(55px, 10vw, 140px); border-bottom: 1px solid var(--line); }
.home-deployment > div:last-child > p:first-child { margin-bottom: 20px; font-size: 1rem; }
.section-heading { display: flex; margin-bottom: 42px; align-items: end; justify-content: space-between; gap: 24px; }
.section-heading h2 { max-width: 720px; margin: 0; }
.closing-evidence-band { padding-block: clamp(48px, 6vw, 72px); border-block: 1px solid #315044; background: var(--green-950); color: var(--white); }
.closing-evidence-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(290px, .82fr) auto; gap: clamp(36px, 6vw, 78px); align-items: center; }
.closing-evidence-copy .eyebrow { color: var(--amber-500); }
.closing-evidence-copy h2 { margin-bottom: 13px; color: var(--white); font-size: clamp(2rem, 3.4vw, 3rem); }
.closing-evidence-copy p:last-child { max-width: 620px; margin-bottom: 0; color: #b8c9c1; font-size: .86rem; }
.closing-evidence-facts { margin: 0; border-top: 1px solid #466258; }
.closing-evidence-facts div { padding-block: 13px; border-bottom: 1px solid #385248; }
.closing-evidence-facts dt { margin-bottom: 4px; color: var(--amber-500); font-size: .72rem; font-weight: 850; }
.closing-evidence-facts dd { margin: 0; color: #b8c9c1; font-size: .68rem; line-height: 1.45; }
.closing-evidence-actions { display: grid; min-width: 190px; gap: 16px; justify-items: stretch; }
.evidence-band-link { color: #c1d0ca; font-size: .68rem; font-weight: 800; text-align: center; text-underline-offset: 4px; }
.evidence-band-link:hover { color: var(--white); }

.page-hero { padding-block: clamp(76px, 9vw, 120px) clamp(58px, 7vw, 88px); }
.page-hero h1 { max-width: 900px; font-size: clamp(3rem, 6vw, 5rem); }
.page-hero > p:not(.eyebrow) { max-width: 780px; font-size: clamp(1.05rem, 1.7vw, 1.28rem); }
.assessment-hero { display: grid; min-height: 610px; padding-block: clamp(70px, 9vw, 108px); grid-template-columns: minmax(0, 1.12fr) minmax(350px, .68fr); gap: clamp(52px, 8vw, 104px); align-items: stretch; }
.assessment-hero-copy { align-self: center; max-width: 720px; }
.assessment-hero h1 { margin-bottom: 26px; font-size: clamp(3.1rem, 5.6vw, 4.75rem); }
.assessment-lead { max-width: 690px; margin-bottom: 30px; color: #45534d; font-size: clamp(1.02rem, 1.55vw, 1.18rem); }
.assessment-position-field { min-height: 430px; }
.assessment-signal-strip { border-block: 1px solid var(--line); background: var(--white); }
.assessment-signal-strip .shell { display: grid; min-height: 88px; grid-template-columns: auto repeat(3, minmax(155px, 1fr)); gap: 30px; align-items: center; }
.assessment-signal-label { color: var(--green-900); font-size: .7rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.assessment-signal-strip .shell > div { padding-left: 22px; border-left: 1px solid var(--line); }
.assessment-signal-strip small, .assessment-signal-strip strong { display: block; }
.assessment-signal-strip small { margin-bottom: 5px; color: var(--amber-600); font-size: .58rem; font-weight: 850; letter-spacing: .09em; }
.assessment-signal-strip strong { color: var(--green-900); font-size: .76rem; }
.assessment-section-heading { display: grid; margin-bottom: 48px; grid-template-columns: minmax(0, 1.05fr) minmax(300px, .65fr); column-gap: clamp(50px, 9vw, 120px); align-items: end; }
.assessment-section-heading .eyebrow { grid-column: 1 / -1; }
.assessment-section-heading h2, .assessment-section-heading > p:last-child { margin-bottom: 0; }
.assessment-section-heading > p:last-child { font-size: .88rem; }
.assessment-exercise-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--green-900); border-left: 1px solid var(--line); }
.assessment-exercise-grid article { min-height: 220px; padding: clamp(30px, 3.5vw, 38px) clamp(22px, 3vw, 30px); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255, 255, 255, .34); }
.assessment-assurance-grid article > span { display: block; margin-bottom: 42px; color: var(--amber-600); font-size: .62rem; font-weight: 850; letter-spacing: .1em; }
.assessment-exercise-grid h3, .assessment-assurance-grid h3 { color: var(--green-900); font-size: 1.08rem; }
.assessment-exercise-grid p, .assessment-assurance-grid p { margin-bottom: 0; font-size: .78rem; }
.assessment-evidence { scroll-margin-top: 30px; padding-block: clamp(76px, 10vw, 124px); background: var(--green-950); color: var(--white); }
.assessment-evidence-grid { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(60px, 10vw, 140px); }
.assessment-evidence .eyebrow { color: var(--amber-500); }
.assessment-evidence h2 { max-width: 590px; color: var(--white); }
.assessment-evidence p { max-width: 580px; color: #b8c9c1; }
.assessment-evidence-ledger { margin: 0; border-top: 1px solid #4c655b; }
.assessment-evidence-ledger div { display: grid; padding-block: 20px; grid-template-columns: minmax(140px, .42fr) 1fr; gap: 28px; border-bottom: 1px solid #385248; }
.assessment-evidence-ledger dt { color: var(--amber-500); font-size: .7rem; font-weight: 850; }
.assessment-evidence-ledger dd { margin: 0; color: #b8c9c1; font-size: .78rem; line-height: 1.55; }
.assessment-assurance-grid { display: grid; margin-bottom: 30px; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--green-900); border-left: 1px solid var(--line); }
.assessment-assurance-grid article { min-height: 260px; padding: clamp(22px, 3vw, 30px); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.assessment-checklist-link { color: var(--green-800); font-size: .78rem; font-weight: 850; text-underline-offset: 5px; }
.assessment-resource-links { display: flex; flex-wrap: wrap; gap: 14px 30px; }
.qsa-hero h1 { max-width: 760px; font-size: clamp(3rem, 5.25vw, 4.45rem); }
.qsa-resource-ledger dd { display: grid; gap: 7px; }
.qsa-resource-ledger a { justify-self: start; color: var(--white); font-size: .7rem; font-weight: 800; text-underline-offset: 4px; }
.qsa-referral-offer { display: grid; grid-template-columns: minmax(300px, .78fr) minmax(420px, 1.22fr); border: 1px solid var(--green-900); }
.assessment-section-heading-wide h2 { max-width: 850px; grid-column: 1 / -1; }
.qsa-referral-copy { display: flex; min-height: 490px; padding: clamp(32px, 4.5vw, 52px); flex-direction: column; align-items: flex-start; background: var(--green-950); color: var(--white); }
.qsa-referral-copy > span { margin-bottom: auto; color: var(--amber-500); font-size: .64rem; font-weight: 850; letter-spacing: .1em; }
.qsa-referral-copy h3 { max-width: 400px; margin: 70px 0 16px; color: var(--white); font-size: clamp(1.9rem, 3vw, 2.6rem); }
.qsa-referral-copy p { color: #b8c9c1; font-size: .82rem; }
.qsa-referral-copy .button { margin-top: 12px; }
.qsa-referral-copy small { margin-top: 13px; color: #9fb4ab; font-size: .64rem; line-height: 1.45; }
.qsa-referral-terms { margin: 0; background: var(--white); }
.qsa-referral-terms div { display: grid; min-height: 122px; padding: 26px clamp(24px, 3.5vw, 40px); grid-template-columns: minmax(145px, .42fr) 1fr; gap: 28px; align-items: center; border-bottom: 1px solid var(--line); }
.qsa-referral-terms div:last-child { border-bottom: 0; }
.qsa-referral-terms dt { color: var(--amber-600); font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif; font-size: clamp(1.55rem, 2.5vw, 2.1rem); font-weight: 600; line-height: 1; }
.qsa-referral-terms dd { margin: 0; color: var(--green-900); font-size: .8rem; font-weight: 720; line-height: 1.55; }
.qsa-referral-controls { display: grid; margin-top: 28px; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--green-900); border-left: 1px solid var(--line); }
.qsa-referral-controls article { padding: 26px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(255, 255, 255, .34); }
.qsa-referral-controls article > span { display: block; margin-bottom: 30px; color: var(--amber-600); font-size: .62rem; font-weight: 850; letter-spacing: .1em; }
.qsa-referral-controls h3 { color: var(--green-900); font-size: 1.04rem; }
.qsa-referral-controls p { margin: 0; font-size: .76rem; }
.qsa-boundary-ledger { border-top: 1px solid var(--green-900); }
.qsa-boundary-ledger article { display: grid; padding-block: 25px; grid-template-columns: 140px minmax(250px, .75fr) 1fr; gap: clamp(24px, 4vw, 52px); border-bottom: 1px solid var(--line); align-items: start; }
.qsa-boundary-ledger article > span { padding-top: 4px; color: var(--amber-600); font-size: .62rem; font-weight: 850; letter-spacing: .1em; }
.qsa-boundary-ledger h3, .qsa-boundary-ledger p { margin: 0; }
.qsa-boundary-ledger h3 { color: var(--green-900); font-size: 1.02rem; }
.qsa-boundary-ledger p { font-size: .78rem; }
.qsa-contact-band { border-top: 0; }

.resource-hub-hero { border-bottom: 1px solid var(--line); }
.resource-hub-hero h1 { max-width: 930px; }
.resource-feature { display: grid; grid-template-columns: minmax(0, .82fr) minmax(380px, 1.18fr); gap: clamp(58px, 10vw, 140px); align-items: start; }
.resource-feature h2 { max-width: 580px; font-size: clamp(2.3rem, 4vw, 3.5rem); }
.resource-feature-copy > p { margin-bottom: 30px; font-size: 1.03rem; }
.resource-meta { display: flex; margin: 0; flex-wrap: wrap; border-block: 1px solid currentColor; }
.resource-meta div { min-width: 150px; padding: 14px 24px 14px 0; }
.resource-meta dt { margin-bottom: 5px; color: var(--amber-600); font-size: .6rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.resource-meta dd { margin: 0; color: var(--green-900); font-size: .72rem; font-weight: 750; }
.resource-feature-meta { margin-bottom: 28px; color: var(--line); }
.resource-assets-grid { display: grid; grid-template-columns: minmax(0, .75fr) minmax(440px, 1.25fr); gap: clamp(60px, 10vw, 140px); align-items: start; }
.resource-assets-grid > div:first-child { max-width: 500px; }
.resource-asset-ledger { margin: 0; border-top: 1px solid var(--green-900); }
.resource-asset-ledger > div { display: grid; padding-block: 22px; grid-template-columns: minmax(160px, .45fr) 1fr; gap: 30px; border-bottom: 1px solid var(--line); }
.resource-asset-ledger dt { color: var(--green-900); font-size: .76rem; font-weight: 850; }
.resource-asset-ledger dd { display: grid; margin: 0; gap: 8px; color: var(--muted); font-size: .78rem; line-height: 1.55; }
.resource-asset-ledger a { justify-self: start; color: var(--green-800); font-size: .7rem; font-weight: 850; text-underline-offset: 4px; }

.resource-guide-ledger > div { grid-template-columns: 1fr; gap: 12px; }
.resource-guide-ledger dt { font-size: 1rem; line-height: 1.45; }
.resource-guide-ledger dt a { font-size: inherit; }
.resource-article-hero { padding-block: clamp(64px, 8vw, 102px); border-bottom: 1px solid #385248; background: var(--green-950); color: var(--white); }
.resource-article-hero-inner { max-width: 1040px; }
.resource-breadcrumbs { display: flex; margin-bottom: clamp(46px, 7vw, 74px); gap: 9px; color: #9fb4ab; font-size: .68rem; }
.resource-breadcrumbs a { color: var(--white); text-underline-offset: 4px; }
.resource-article-hero .eyebrow { color: var(--amber-500); }
.resource-article-hero h1 { max-width: 1000px; margin-bottom: 28px; color: var(--white); font-size: clamp(3rem, 5.5vw, 5rem); }
.resource-article-dek { max-width: 800px; margin-bottom: 36px; color: #c1d0ca; font-size: clamp(1.05rem, 1.65vw, 1.24rem); }
.resource-article-hero .resource-meta { max-width: 760px; border-color: #4c655b; }
.resource-article-hero .resource-meta dt { color: var(--amber-500); }
.resource-article-hero .resource-meta dd { color: #d5dfdb; }
.resource-article-layout { display: grid; padding-block: clamp(68px, 9vw, 112px); grid-template-columns: minmax(0, 760px) minmax(220px, 300px); gap: clamp(56px, 9vw, 118px); align-items: start; }
.resource-article { min-width: 0; }
.resource-article-introduction { padding-bottom: 48px; border-bottom: 1px solid var(--green-900); }
.resource-article-introduction p:first-child { color: var(--green-900); font-size: clamp(1.15rem, 1.8vw, 1.34rem); line-height: 1.7; }
.resource-article p, .resource-article li { font-size: .94rem; line-height: 1.78; }
.resource-article > section:not(.article-product-boundary, .article-sources) { scroll-margin-top: 28px; padding-block: 58px; border-bottom: 1px solid var(--line); }
.resource-article h2 { max-width: 680px; margin-bottom: 24px; color: var(--green-900); font-size: clamp(2rem, 3.6vw, 3rem); }
.article-step { display: block; margin-bottom: 18px; color: var(--amber-600); font-size: .64rem; font-weight: 900; letter-spacing: .1em; }
.resource-article ul { display: grid; margin: 26px 0; padding: 0; gap: 0; border-top: 1px solid var(--line); list-style: none; }
.resource-article li { position: relative; padding: 14px 0 14px 22px; border-bottom: 1px solid var(--line); color: #46534e; }
.resource-article ul li::before { position: absolute; top: 27px; left: 0; width: 8px; height: 2px; background: var(--amber-500); content: ""; }
.article-source-links { padding-left: 16px; border-left: 3px solid var(--amber-500); font-size: .76rem !important; }
.article-source-links a, .article-inline-action { color: var(--green-800); font-weight: 800; text-underline-offset: 4px; }
.article-callout { margin: 34px 0 0; padding: 26px; border: 1px solid var(--green-900); border-top: 4px solid var(--amber-500); background: var(--white); }
.article-callout span { display: block; margin-bottom: 20px; color: var(--amber-600); font-size: .62rem; font-weight: 900; letter-spacing: .1em; }
.article-callout p { margin: 0; color: var(--green-900); font-size: .84rem; font-weight: 700; }
.article-callout-dark { background: var(--green-950); color: var(--white); }
.article-callout-dark span { color: var(--amber-500); }
.article-callout-dark p { color: #d3dfda; }
.article-decision-ledger { margin: 30px 0; border-top: 1px solid var(--green-900); }
.article-decision-ledger div { display: grid; padding-block: 16px; grid-template-columns: 130px 1fr; gap: 24px; border-bottom: 1px solid var(--line); }
.article-decision-ledger dt { color: var(--green-900); font-size: .78rem; font-weight: 850; }
.article-decision-ledger dd { margin: 0; color: var(--muted); font-size: .78rem; line-height: 1.55; }
.article-product-boundary { margin-top: 62px; padding: clamp(32px, 5vw, 52px); border-top: 4px solid var(--amber-500); background: var(--green-50); }
.article-product-boundary h2 { font-size: clamp(2rem, 3.5vw, 2.8rem); }
.article-product-boundary .button-row { margin-top: 30px; }
.article-sources { scroll-margin-top: 28px; padding-top: 62px; }
.article-sources h2 { font-size: clamp(1.9rem, 3vw, 2.6rem); }
.article-sources ol { margin: 28px 0 0; padding: 0; border-top: 1px solid var(--green-900); list-style: none; }
.article-sources li { display: grid; padding: 18px 0; grid-template-columns: minmax(190px, .45fr) 1fr; gap: 24px; border-bottom: 1px solid var(--line); }
.article-sources li::before { display: none; }
.article-sources a { color: var(--green-800); font-size: .76rem; font-weight: 850; text-underline-offset: 4px; }
.article-sources span { color: var(--muted); font-size: .72rem; line-height: 1.55; }
.article-reviewed-note { margin: 24px 0 0; font-size: .72rem !important; }
.resource-article-aside { position: sticky; top: 24px; }
.resource-article-aside nav { padding-top: 20px; border-top: 3px solid var(--green-900); }
.resource-article-aside strong { display: block; margin-bottom: 18px; color: var(--green-900); font-size: .7rem; letter-spacing: .08em; text-transform: uppercase; }
.resource-article-aside ol { margin: 0 0 16px; padding: 0; list-style: none; counter-reset: article-toc; }
.resource-article-aside li { display: grid; grid-template-columns: 22px 1fr; gap: 8px; border-bottom: 1px solid var(--line); counter-increment: article-toc; }
.resource-article-aside li::before { padding-top: 13px; color: var(--amber-600); content: counter(article-toc, decimal-leading-zero); font-size: .57rem; font-weight: 850; }
.resource-article-aside a { display: block; padding-block: 11px; color: var(--muted); font-size: .69rem; font-weight: 700; line-height: 1.4; text-decoration: none; }
.resource-article-aside a:hover { color: var(--green-900); text-decoration: underline; text-underline-offset: 4px; }
.product-datasheet { display: grid; margin-bottom: clamp(66px, 8vw, 96px); padding-block: 26px; grid-template-columns: minmax(250px, .75fr) minmax(300px, 1fr) auto; gap: clamp(28px, 5vw, 70px); align-items: center; border-block: 1px solid var(--green-900); }
.product-datasheet .eyebrow { margin-bottom: 7px; }
.product-datasheet h2 { margin: 0; font-size: clamp(1.8rem, 2.8vw, 2.5rem); }
.product-datasheet > p { margin: 0; font-size: .82rem; }
.product-datasheet .button { white-space: nowrap; }
.product-demo { scroll-margin-top: 24px; background: var(--green-950); color: var(--white); }
.product-demo-heading { display: grid; margin-bottom: 38px; grid-template-columns: minmax(0, 1.05fr) minmax(300px, .62fr); gap: clamp(40px, 8vw, 100px); align-items: end; }
.product-demo-heading .eyebrow { color: var(--amber-500); }
.product-demo-heading h2 { max-width: 760px; margin-bottom: 0; color: var(--white); font-size: clamp(2.3rem, 4vw, 3.5rem); }
.product-demo-heading > p { margin-bottom: 0; color: #b8c9c1; font-size: .86rem; }
.media-player { overflow: hidden; border: 1px solid #4c655b; background: #050807; }
.media-player video { display: block; width: 100%; aspect-ratio: 16 / 9; background: #050807; object-fit: contain; }
.media-player video::cue { color: var(--white); background: rgb(9 35 28 / 92%); font-size: 1rem; }
.paired-interface { padding-top: 0; }
.paired-interface-heading { display: grid; margin-bottom: 38px; grid-template-columns: minmax(0, 1fr) minmax(300px, .6fr); column-gap: 60px; row-gap: 18px; align-items: end; }
.paired-interface-heading .eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
.paired-interface-heading h2 { margin-bottom: 0; }
.paired-interface-heading > p:last-child { margin-bottom: 0; font-size: .85rem; }
.interface-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: stretch; }
.interface-card { display: flex; min-height: 650px; padding: clamp(28px, 4vw, 48px); flex-direction: column; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
.interface-card h2 { font-size: clamp(2rem, 3.2vw, 2.8rem); }
.desktop-interface-card { padding: 0; overflow: hidden; }
.interface-card-copy { padding: clamp(28px, 4vw, 42px); }
.interface-value { margin-top: 28px; padding-top: 22px; border-top: 1px solid var(--line); }
.interface-value h3 { color: var(--green-900); }
.interface-value p { margin-bottom: 0; font-size: .88rem; }
.interface-label { display: block; margin-bottom: 42px; color: var(--amber-600); font-size: .66rem; font-weight: 850; letter-spacing: .1em; }
.product-screenshot { margin: 0; padding: clamp(16px, 3vw, 34px); border-top: 1px solid var(--line); background: #e8e4d9; }
.desktop-window-frame { overflow: hidden; border: 1px solid #34443d; border-radius: 13px; background: #f4f1e8; }
.desktop-window-titlebar { display: grid; min-height: 46px; padding-inline: 17px; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid #334039; background: #1c2421; }
.desktop-window-titlebar > strong { color: #aebdb6; font-size: .72rem; }
.desktop-window-controls { display: flex; gap: 7px; }
.desktop-window-controls i { width: 10px; height: 10px; border-radius: 50%; background: #5ca47e; }
.desktop-window-controls i:first-child { background: #d27b5d; }
.desktop-window-controls i:nth-child(2) { background: #d0a34c; }
.product-screenshot img { display: block; width: 100%; height: auto; }
.product-screenshot figcaption { margin-top: 14px; color: var(--muted); font-size: .7rem; }
.terminal-card { padding: 0; overflow: hidden; background: #1c2421; color: var(--white); }
.terminal-card .interface-label { color: var(--amber-500); }
.terminal-card h2 { color: var(--white); }
.terminal-card p { color: #b7c4be; }
.cli-screenshot { margin: auto 0 0; border-top: 1px solid #3b4943; background: #e8e4d9; }
.cli-screenshot img { display: block; width: 100%; height: auto; }
.cli-screenshot figcaption { padding: 13px 18px; border-top: 1px solid #3b4943; background: #1c2421; color: #aebdb6; font-size: .7rem; }
.check-list { display: grid; margin: 26px 0 0; padding: 0; gap: 12px; list-style: none; }
.check-list li { display: grid; grid-template-columns: auto 1fr; gap: 9px; color: #4d5c55; font-size: 0.84rem; line-height: 1.45; }
.check-list li::before { color: var(--amber-600); content: "✓"; font-weight: 900; }
.terminal-card .check-list li { color: #c2cec8; }
.paired-interface-summary { margin: 16px 0 0; padding: 17px 20px; border: 1px solid var(--line); color: var(--muted); font-size: .75rem; }
.paired-interface-summary strong { color: var(--green-900); }
.benchmark-preview { border-block: 1px solid var(--line); background: #eeeee7; }
.benchmark-preview-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(60px, 10vw, 140px); align-items: start; }
.benchmark-preview-grid header { max-width: 500px; }
.benchmark-preview-grid header > p:last-child { margin-bottom: 0; font-size: .9rem; }
.benchmark-preview-list { margin: 0; border-top: 2px solid var(--green-900); }
.benchmark-preview-list > div { display: grid; padding-block: 22px; grid-template-columns: minmax(180px, .8fr) 1.2fr; gap: 30px; align-items: baseline; border-bottom: 1px solid #cbd0cb; }
.benchmark-preview-list dt { color: var(--green-900); font-size: .82rem; font-weight: 800; }
.benchmark-preview-list dd { display: grid; margin: 0; grid-template-columns: minmax(150px, .6fr) 1fr; gap: 20px; align-items: baseline; }
.benchmark-preview-list strong { color: var(--green-900); font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif; font-size: 1.65rem; font-variant-numeric: tabular-nums; font-weight: 600; letter-spacing: -.035em; white-space: nowrap; }
.benchmark-preview-list span { color: var(--muted); font-size: .76rem; line-height: 1.45; }
.benchmark-preview-note { margin: 24px 0 22px; padding-left: 16px; border-left: 3px solid var(--amber-500); font-size: .76rem; }
.benchmark-preview-note strong { color: var(--ink); }
.section-intro { max-width: 760px; margin-bottom: 38px; font-size: 1.12rem; }
.format-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; }
.format-grid article { padding: 26px; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
.format-grid p { margin-bottom: 0; font-size: 0.84rem; }
.report-story { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(50px, 10vw, 130px); align-items: center; }
.report-stack { display: grid; gap: 10px; }
.report-stack article { display: grid; padding: 20px; gap: 6px; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
.report-stack article:nth-child(2) { margin-left: 0; }
.report-stack span, .report-stack small { color: var(--muted); font-size: 0.72rem; }
.report-stack code { color: var(--green-800); font-size: 1rem; font-weight: 800; }
.recognition-note { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--green-900); }
.recognition-note h3 { color: var(--green-900); }
.recognition-note p { margin-bottom: 0; font-size: .88rem; }
.matrix-section { border-top: 1px solid var(--line); }
.platform-cards { display: grid; margin: 34px 0; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.platform-cards article { padding: 23px; border: 1px solid #bfd0c5; border-radius: 3px; background: transparent; color: var(--green-900); font-weight: 800; }

.benchmark-hero { padding-bottom: 62px; }
.benchmark-results { padding-top: 44px; }
.benchmark-results .section-heading { align-items: start; }
.benchmark-results .section-heading > p { max-width: 420px; margin-bottom: 0; font-size: .84rem; }
.benchmark-table-wrap { overflow-x: auto; border-block: 1px solid var(--green-900); }
.benchmark-table { width: 100%; min-width: 920px; border-collapse: collapse; font-size: .8rem; font-variant-numeric: tabular-nums; }
.benchmark-table caption { padding: 15px 0; color: var(--muted); font-size: .7rem; text-align: left; }
.benchmark-table th, .benchmark-table td { padding: 21px 18px; border-top: 1px solid var(--line); text-align: left; vertical-align: top; }
.benchmark-table thead th { border-top: 0; color: var(--green-900); font-size: .68rem; letter-spacing: .06em; text-transform: uppercase; }
.benchmark-table tbody th { width: 31%; color: var(--green-900); font-size: .86rem; }
.benchmark-table tbody small { display: block; margin-top: 7px; color: var(--muted); font-size: .68rem; font-weight: 400; line-height: 1.45; }
.benchmark-table tbody td strong { color: var(--green-900); font-size: .94rem; white-space: nowrap; }
.benchmark-ocr .eyebrow { color: var(--amber-500); }
.benchmark-ocr-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(60px, 10vw, 140px); }
.benchmark-ocr-grid > div { max-width: 520px; }
.benchmark-ocr-grid dl { margin: 0; border-top: 1px solid #4c655b; }
.benchmark-ocr-grid dl > div { display: grid; padding-block: 22px; grid-template-columns: 150px 1fr; gap: 24px; border-bottom: 1px solid #385248; }
.benchmark-ocr-grid dt { color: var(--amber-500); font-size: .72rem; font-weight: 800; }
.benchmark-ocr-grid dd { display: grid; margin: 0; gap: 6px; }
.benchmark-ocr-grid dd strong { color: var(--white); font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.benchmark-ocr-grid dd span { color: #b8c9c1; font-size: .76rem; line-height: 1.5; }
.benchmark-method { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(60px, 10vw, 140px); }
.benchmark-method-list { margin: 0; padding: 0; border-top: 1px solid var(--green-900); list-style: none; }
.benchmark-method-list li { display: grid; padding-block: 23px; grid-template-columns: 48px 1fr; gap: 18px; border-bottom: 1px solid var(--line); }
.benchmark-method-list li > span { color: var(--amber-600); font-size: .7rem; font-weight: 800; }
.benchmark-method-list strong { display: block; margin-bottom: 7px; color: var(--green-900); font-size: .9rem; }
.benchmark-method-list p { margin-bottom: 0; font-size: .8rem; }

.how-hero { padding-bottom: 68px; }
.workflow-list { display: grid; padding-top: 0; }
.workflow-list article { display: grid; padding-block: 30px; grid-template-columns: 56px minmax(0, 1fr); gap: 30px; align-items: start; border-top: 1px solid var(--line); }
.workflow-list article:last-child { border-bottom: 1px solid var(--line); }
.workflow-list article > span { color: var(--amber-600); font-size: .7rem; font-weight: 800; }
.workflow-list h2 { margin-bottom: 10px; font-size: clamp(1.7rem, 3vw, 2.5rem); }
.workflow-list p { max-width: 700px; margin-bottom: 0; }
.post-purchase { padding-top: 0; }
.post-purchase [hidden] { display: none !important; }
.post-purchase-processing, .post-purchase-ready, .post-purchase-unavailable { background: var(--white); border: 1px solid var(--line); border-top: 5px solid var(--green-800); padding: clamp(28px, 6vw, 58px); }
.post-purchase-processing { align-items: center; display: grid; gap: clamp(24px, 5vw, 48px); grid-template-columns: auto minmax(0, 1fr); }
.post-purchase-processing h2, .post-purchase-processing p:last-child, .post-purchase-ready h2, .post-purchase-unavailable h2 { margin-bottom: 10px; }
.fulfilment-spinner { width: clamp(52px, 8vw, 72px); height: clamp(52px, 8vw, 72px); border: 6px solid var(--green-100); border-top-color: var(--amber-600); border-radius: 50%; animation: fulfilment-spin .9s linear infinite; }
.post-purchase-ready { display: grid; gap: 30px; }
.post-purchase-ready > div:first-child p:last-child { margin-bottom: 0; }
.post-purchase-summary { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-block: 1px solid var(--line); }
.post-purchase-summary > div { padding: 20px; border-right: 1px solid var(--line); }
.post-purchase-summary > div:first-child { padding-left: 0; }
.post-purchase-summary > div:last-child { padding-right: 0; border-right: 0; }
.post-purchase-summary dt { margin-bottom: 8px; color: var(--muted); font-size: .68rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.post-purchase-summary dd { margin: 0; color: var(--green-900); font-weight: 850; }
.post-purchase-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; }
.post-purchase-actions form { margin: 0; }
.post-purchase-access-result { margin: 0; }
.post-purchase-access-result:focus { outline: 3px solid var(--amber-500); outline-offset: 2px; }
.post-purchase-unavailable p { max-width: 760px; }
@keyframes fulfilment-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .fulfilment-spinner { animation-duration: 2.4s; } }
.recovery-panel { align-items: start; display: grid; gap: 50px; grid-template-columns: minmax(0, 1fr) minmax(300px, .8fr); }
.recovery-form { background: var(--white); border: 1px solid var(--line); border-radius: 3px; display: grid; gap: 14px; padding: 26px; }
.recovery-form label { color: var(--green-900); font-size: .8rem; font-weight: 800; }
.recovery-form input, .recovery-form select { background: var(--white); border: 1px solid var(--line); border-radius: 3px; color: var(--ink); font: inherit; min-height: 48px; padding: 10px 12px; width: 100%; }
.recovery-form input:focus-visible, .recovery-form select:focus-visible { outline: 3px solid var(--amber-500); outline-offset: 2px; }
.recovery-form small { color: var(--muted); line-height: 1.5; }
.recovery-result { background: var(--amber-100); border: 1px solid var(--amber-500); border-radius: 3px; display: none; line-height: 1.55; margin: 0 0 16px; padding: 16px 18px; }
.recovery-result:target { display: block; }
.recovery-result:focus { outline: 3px solid var(--amber-500); outline-offset: 2px; }

.account-hero { padding-bottom: 56px; }
.account-access-panel { overflow-anchor: none; }
.account-request-received.account-response-visible { display: block; }
.account-sign-in { align-items: start; display: grid; gap: clamp(48px, 9vw, 110px); grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr); padding-top: 0; }
.account-form { border-top: 4px solid var(--green-800); }
.account-coming-soon { background: var(--white); border: 1px solid var(--line); display: grid; gap: 16px; padding: 26px; }
.account-coming-soon p { margin: 0; }
.account-coming-soon .button { justify-self: start; }
.account-privacy { align-items: start; border-top: 1px solid var(--line); display: grid; gap: clamp(48px, 9vw, 110px); grid-template-columns: .9fr 1.1fr; }
.account-privacy ul { display: grid; gap: 0; list-style: none; margin: 0; padding: 0; }
.account-privacy li { border-top: 1px solid var(--line); color: var(--green-900); font-weight: 750; padding: 18px 0; }
.account-shell { min-height: calc(100vh - 90px); padding-block: clamp(52px, 9vw, 100px); }
.account-header { display: flex; justify-content: space-between; }
.account-card { background: var(--white); border: 1px solid var(--line); border-top: 5px solid var(--green-800); margin-inline: auto; max-width: 700px; padding: clamp(28px, 6vw, 58px); }
.account-card h1 { font-size: clamp(2.4rem, 6vw, 4.5rem); }
.account-action { margin-top: 30px; }
.account-security-note { border-top: 1px solid var(--line); color: var(--muted); font-size: .78rem; margin: 30px 0 0; padding-top: 18px; }
.renewal-review { max-width: 780px; }
.renewal-review h1 { max-width: 620px; }
.renewal-summary { display: grid; margin: 32px 0; }
.renewal-summary div { border-top: 1px solid var(--line); display: flex; gap: 22px; justify-content: space-between; padding: 14px 0; }
.renewal-summary dt { color: var(--muted); font-size: .76rem; }
.renewal-summary dd { color: var(--green-900); font-weight: 800; margin: 0; text-align: right; }
.turnstile-form { display: grid; gap: 22px; justify-items: start; }
.turnstile-panel h1 { max-width: 620px; }
.account-heading { align-items: end; display: flex; gap: 36px; justify-content: space-between; }
.account-heading h1 { margin-bottom: 0; max-width: 800px; }
.account-heading form { flex: 0 0 auto; }
.account-overview { display: grid; gap: 20px; grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr); margin-top: 54px; }
.account-identity, .organization-list li { background: var(--white); border: 1px solid var(--line); display: grid; gap: 8px; padding: 24px; }
.account-identity span, .organization-list span, .organization-list small { color: var(--muted); font-size: .72rem; }
.account-identity strong { overflow-wrap: anywhere; }
.organization-list { display: grid; gap: 10px; list-style: none; margin: 0; padding: 0; }
.organization-list strong { color: var(--green-900); font-size: 1.35rem; }
.account-licences { border-top: 1px solid var(--line); margin-top: 72px; padding-top: 42px; }
.account-section-heading { align-items: end; display: grid; gap: 42px; grid-template-columns: 1fr minmax(280px, .75fr); }
.account-section-heading h2 { margin-bottom: 0; }
.account-section-heading > p { margin: 0; }
.licence-groups { display: grid; gap: 28px; margin-top: 36px; }
.licence-group { background: var(--white); border: 1px solid var(--line); }
.licence-group > header { align-items: center; background: var(--green-50); border-bottom: 1px solid var(--line); display: flex; gap: 24px; justify-content: space-between; padding: 20px 24px; }
.licence-group > header span, .licence-group > header small, .licence-card-heading span { color: var(--muted); font-size: .7rem; }
.licence-group > header h3 { font-size: 1.35rem; margin: 3px 0 0; }
.licence-grid { display: grid; gap: 1px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.account-billing { border-top: 1px solid var(--line); padding: 20px 24px; }
.account-billing p { color: var(--muted); font-size: .85rem; max-width: 76ch; }
.licence-card { border-right: 1px solid var(--line); padding: 25px 24px; }
.licence-card:nth-child(2n) { border-right: 0; }
.licence-card-heading { align-items: start; display: flex; gap: 18px; justify-content: space-between; }
.licence-card-heading h4 { color: var(--green-900); font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif; font-size: 2rem; line-height: 1; margin: 5px 0 0; }
.licence-status { border: 1px solid currentColor; border-radius: 2px; font-size: .66rem; letter-spacing: .05em; padding: 6px 9px; text-transform: uppercase; white-space: nowrap; }
.licence-status.active { color: var(--green-700); }
.licence-status.expired, .licence-status.ended { color: #765d53; }
.licence-status.pending { color: #75590a; }
.licence-status.review { color: #9a4d11; }
.licence-card dl { display: grid; gap: 0; margin: 24px 0 0; }
.licence-card dl div { border-top: 1px solid var(--line); display: flex; gap: 18px; justify-content: space-between; padding: 13px 0; }
.licence-card dt { color: var(--muted); font-size: .75rem; }
.licence-card dd { color: var(--green-900); font-size: .82rem; font-weight: 800; margin: 0; text-align: right; }
.licence-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 20px; }
.licence-actions form { margin: 0; }
.licence-actions .button { min-height: 40px; padding-inline: 14px; }
.licence-reauth { display: inline-block; margin-top: 19px; }
.licence-empty { color: var(--muted); margin: 0; padding: 28px 24px; }
.licence-activation-help { background: var(--green-50); border: 1px solid var(--line); display: grid; gap: 26px; grid-template-columns: minmax(240px, .8fr) minmax(320px, 1.2fr); margin-top: 28px; padding: 26px; }
.licence-activation-help h3 { font-size: 1.45rem; margin: 0 0 9px; }
.licence-activation-help p { margin: 0; }
.licence-activation-help ol { display: grid; gap: 0; list-style: none; margin: 0; padding: 0; }
.licence-activation-help li { border-top: 1px solid var(--line); display: grid; gap: 5px; padding: 12px 0; }
.licence-activation-help li:first-child { border-top: 0; padding-top: 0; }
.licence-activation-help li span { color: var(--muted); font-size: .78rem; line-height: 1.5; }
.licence-activation-help code { overflow-wrap: anywhere; }
.licence-cli-help { border-top: 1px solid var(--line); color: var(--muted); font-size: .76rem; grid-column: 1 / -1; padding-top: 17px; }
.account-software { border-top: 1px solid var(--line); margin-top: 48px; padding-top: 42px; }
.account-software-heading { align-items: center; display: flex; gap: 36px; justify-content: space-between; }
.account-software h2 { margin-bottom: 10px; }
.account-software p { margin-bottom: 0; max-width: 620px; }
.account-software-heading .button { flex: 0 0 auto; }
.software-releases { display: grid; gap: 18px; margin-top: 32px; }
.software-release { background: var(--white); border: 1px solid var(--line); }
.software-release > header { background: var(--green-50); border-bottom: 1px solid var(--line); padding: 19px 22px; }
.software-release > header span { color: var(--muted); font-size: .7rem; }
.software-release > header h3 { font-size: 1.35rem; margin: 3px 0 0; }
.software-artifacts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.software-artifacts section { border-bottom: 1px solid var(--line); display: grid; gap: 13px; padding: 22px; }
.software-artifacts section:nth-child(odd) { border-right: 1px solid var(--line); }
.software-artifacts section > div { display: flex; gap: 16px; justify-content: space-between; }
.software-artifacts small { color: var(--muted); }
.software-artifacts code { color: var(--muted); font-size: .66rem; overflow-wrap: anywhere; }
.software-artifacts form { margin: 0; }
.software-artifacts .button { min-height: 40px; padding-inline: 14px; }
.account-boundary { align-items: start; background: var(--green-900); color: var(--white); display: grid; gap: 12px; grid-template-columns: .7fr 1.3fr; margin-top: 48px; padding: 26px; }
.account-boundary span { color: #bed0c8; font-size: .82rem; line-height: 1.6; }

.security-hero h1 { color: var(--green-900); }
.security-demo { padding-top: 0; }
.security-demo-heading { display: grid; margin-bottom: 38px; grid-template-columns: minmax(0, 1.05fr) minmax(300px, .62fr); gap: clamp(40px, 8vw, 100px); align-items: end; }
.security-demo-heading h2 { max-width: 760px; margin-bottom: 0; font-size: clamp(2.3rem, 4vw, 3.5rem); }
.security-demo-heading > p { margin-bottom: 0; font-size: .86rem; }
.security-principles { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(60px, 10vw, 130px); }
.principle-list { display: grid; gap: 0; }
.principle-list article { display: grid; padding-block: 25px; grid-template-columns: 44px 1fr; gap: 18px; border-bottom: 1px solid #324b41; }
.principle-list span { color: var(--amber-500); font-size: 0.7rem; font-weight: 800; }
.principle-list p { margin-bottom: 0; }
.buyer-checklist-section { scroll-margin-top: 24px; border-bottom: 1px solid var(--line); background: #eeeee7; }
.buyer-checklist-heading { display: grid; margin-bottom: 42px; grid-template-columns: 1fr .8fr; gap: clamp(48px, 9vw, 120px); align-items: end; }
.buyer-checklist-heading h2, .buyer-checklist-heading > p { margin-bottom: 0; }
.buyer-checklist-heading > p { font-size: .9rem; }
.assurance-ledger { border-top: 1px solid var(--green-900); }
.assurance-ledger article { display: grid; padding-block: 25px; grid-template-columns: 140px minmax(240px, .85fr) minmax(320px, 1.15fr); gap: clamp(24px, 4vw, 58px); align-items: start; border-bottom: 1px solid var(--line); }
.assurance-ledger article > span { padding-top: 4px; color: var(--amber-600); font-size: .66rem; font-weight: 850; letter-spacing: .1em; }
.assurance-ledger h3 { margin-bottom: 0; color: var(--green-900); font-size: 1.05rem; }
.assurance-ledger p { margin-bottom: 0; font-size: .8rem; }
.data-table { margin-top: 34px; overflow: hidden; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
.data-row { display: grid; padding: 19px 22px; grid-template-columns: 1.1fr .9fr 1fr; gap: 20px; border-bottom: 1px solid var(--line); font-size: 0.82rem; }
.data-row:last-child { border-bottom: 0; }
.data-row span { color: var(--muted); }
.data-head { background: var(--green-50); color: var(--green-900); font-weight: 850; }

.pricing-hero { padding-bottom: 58px; }
.status-note { max-width: 800px; margin-top: 32px; padding: 16px 18px; border: 1px solid #dfbf8d; border-radius: 3px; background: #fff5e4; color: #6f4a22; font-size: 0.82rem; line-height: 1.5; }
.checkout-form { display: grid; margin-top: auto; padding-top: 18px; gap: 8px; border-top: 1px solid var(--line); }
.checkout-form .button { width: 100%; }
.checkout-form small { color: var(--muted); font-size: .66rem; text-align: center; }
.pricing-comparison { padding-top: 0; padding-bottom: 34px; }
.pricing-ledger-wrap { overflow-x: auto; border: 1px solid var(--green-900); background: var(--white); }
.pricing-ledger { width: 100%; min-width: 960px; border-collapse: collapse; table-layout: fixed; color: var(--ink); font-size: .8rem; font-variant-numeric: tabular-nums; }
.pricing-ledger th, .pricing-ledger td { padding: 19px 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); text-align: left; }
.pricing-ledger tr > :last-child { border-right: 0; }
.pricing-ledger tbody tr:last-child > * { border-bottom: 0; }
.pricing-ledger thead th { height: 260px; vertical-align: top; }
.pricing-ledger thead th:not(.pricing-criteria) { position: relative; padding-top: 30px; }
.pricing-ledger thead .plan-name { display: block; color: var(--green-900); font-size: .95rem; font-weight: 900; letter-spacing: .06em; }
.pricing-ledger thead small { display: block; margin-top: 8px; color: var(--muted); font-size: .68rem; font-weight: 500; }
.pricing-criteria { width: 22%; background: var(--green-50); vertical-align: bottom !important; }
.pricing-criteria span, .pricing-criteria strong { display: block; }
.pricing-criteria span { margin-bottom: 12px; color: var(--amber-600); font-size: .62rem; letter-spacing: .09em; }
.pricing-criteria strong { color: var(--green-900); font-size: .8rem; line-height: 1.5; }
.ledger-price { display: block; margin-top: 28px; color: var(--green-900); font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif; font-size: clamp(2.6rem, 4vw, 3.8rem); font-weight: 600; letter-spacing: -.06em; line-height: .9; }
.ledger-action { position: absolute; right: 24px; bottom: 24px; left: 24px; min-height: 42px; border-color: var(--green-900); border-radius: 0; background: transparent; color: var(--green-900); }
.pricing-ledger .checkout-form { display: contents; }
.pricing-ledger .checkout-form .button { width: auto; }
.pricing-ledger .checkout-form small { position: absolute; right: 24px; bottom: 73px; left: 24px; color: var(--muted); font-size: .58rem; text-align: center; }
.recommended-cell { border-color: #456057 !important; background: var(--green-950); color: var(--white); }
.pricing-ledger thead .recommended-cell .plan-name, .pricing-ledger .recommended-cell .ledger-price { color: var(--white); }
.pricing-ledger thead .recommended-cell small { color: #b8c9c1; }
.recommended-label { position: absolute; top: 28px; right: 24px; color: var(--amber-500); font-size: .58rem; font-weight: 900; letter-spacing: .08em; }
.recommended-action { border-color: var(--amber-500); background: var(--amber-500); color: var(--green-950); }
.purchase-availability { position: absolute; right: 24px; bottom: 24px; left: 24px; display: flex; min-height: 42px; align-items: center; justify-content: center; color: var(--muted); font-size: .72rem; font-weight: 500; line-height: 1.5; text-align: center; }
.recommended-cell .purchase-availability { color: #b8c9c1; }
.pricing-ledger tbody th { width: 22%; background: var(--green-50); color: var(--green-900); font-size: .66rem; letter-spacing: .06em; }
.pricing-ledger tbody td { color: #46534e; }
.pricing-ledger tbody .recommended-cell { color: #d7e1dd; }
.ledger-check { margin-right: 7px; color: var(--amber-600); font-weight: 900; }
.recommended-cell .ledger-check { color: var(--amber-500); }
.pricing-ledger-note { max-width: 900px; margin: 24px 0 0; padding-left: 16px; border-left: 3px solid var(--amber-500); font-size: .76rem; }
.pricing-ledger-note strong { color: var(--green-900); }
.transaction-note { max-width: 920px; margin: 24px 0 0; color: var(--muted); font-size: .74rem; line-height: 1.55; }
.plan-extension { display: grid; margin-bottom: clamp(76px, 10vw, 128px); padding: 23px 26px; grid-template-columns: 1fr 1.2fr .8fr auto; gap: 30px; align-items: center; border: 1px solid var(--green-900); background: var(--white); font-size: .78rem; }
.plan-extension strong { color: var(--green-900); font-size: .68rem; letter-spacing: .08em; }
.plan-extension span { color: var(--muted); }
.plan-extension a { color: var(--green-900); font-weight: 850; text-underline-offset: 5px; white-space: nowrap; }
.procurement-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(50px, 10vw, 120px); }
.procurement-grid > div:last-child p { font-size: 1.03rem; }
.faq-grid { display: grid; margin-top: 34px; grid-template-columns: 1fr 1fr; gap: 12px; }
.faq-grid article { padding: 24px; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
.faq-grid p { margin-bottom: 0; font-size: .84rem; }

.download-hero { padding-bottom: 64px; }
.release-grid { display: grid; padding-top: 0; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.release-grid article { padding: 28px; border: 1px solid var(--line); border-radius: 3px; background: var(--white); }
.release-grid article > span { color: var(--amber-600); font-size: .66rem; font-weight: 800; letter-spacing: .1em; }
.release-grid h2 { margin-top: 46px; font-size: 1.75rem; }
.release-grid p { min-height: 124px; font-size: .84rem; }
.download-actions { display: grid; margin-top: 24px; gap: 8px; }
.download-actions .button { width: 100%; padding-inline: 14px; text-align: center; }
.checksum-link { margin-top: 18px; font-size: .72rem; }
.closing-action { display: flex; align-items: center; justify-content: space-between; gap: 44px; border-top: 1px solid var(--line); }
.closing-action > div { max-width: 760px; }

.trial-hero { padding-bottom: 64px; }
.trial-registration-layout { display: grid; padding-top: 0; grid-template-columns: minmax(280px, .72fr) minmax(0, 1.28fr); gap: clamp(48px, 9vw, 120px); align-items: start; }
.trial-registration-intro { position: sticky; top: 32px; }
.trial-registration-intro > p { font-size: .86rem; }
.trial-registration-intro dl { margin: 34px 0 0; border-top: 1px solid var(--green-900); }
.trial-registration-intro dl > div { padding-block: 17px; border-bottom: 1px solid var(--line); }
.trial-registration-intro dt { color: var(--green-900); font-size: .75rem; font-weight: 850; }
.trial-registration-intro dd { margin: 5px 0 0; color: var(--muted); font-size: .72rem; }
.trial-registration-form { display: grid; padding: clamp(26px, 4vw, 46px); grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; border-top: 4px solid var(--amber-500); background: var(--white); }
.form-field { display: grid; align-content: start; gap: 8px; }
.form-field-wide, .form-error-summary { grid-column: 1 / -1; }
.form-field label { color: var(--green-900); font-size: .72rem; font-weight: 800; }
.form-field input, .form-field select, .form-field textarea { width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid #aeb9b3; border-radius: 2px; background: var(--white); color: var(--ink); font: inherit; font-size: .84rem; }
.form-field textarea { min-height: 132px; resize: vertical; }
.form-field label span { color: var(--muted); font-weight: 500; }
.form-field-hint { color: var(--muted); font-size: .7rem; line-height: 1.45; }
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { border-color: var(--green-800); outline: 3px solid var(--amber-100); outline-offset: 1px; }
.form-field [aria-invalid="true"] { border-color: #a33e31; }
.form-field-error { color: #8b3026; font-size: .7rem; line-height: 1.45; }
.form-error-summary { padding: 18px 20px; border-left: 4px solid #a33e31; background: #fff1ed; }
.form-error-summary strong { color: #73271f; }
.form-error-summary ul { margin: 9px 0 0; padding-left: 20px; color: #73271f; font-size: .74rem; line-height: 1.6; }
.form-consent { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; color: var(--ink); font-size: .76rem; line-height: 1.5; }
.form-consent input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--green-800); }
.form-submit { display: flex; padding-top: 8px; align-items: center; gap: 24px; border-top: 1px solid var(--line); }
.form-submit .button { flex: 0 0 auto; cursor: pointer; font-family: inherit; }
.form-submit p { margin: 0; font-size: .68rem; line-height: 1.55; }
.form-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.qsa-referral-application { scroll-margin-top: 28px; }
.qsa-trial-link { display: inline-block; margin-top: 28px; }
.qsa-referral-success { padding: clamp(32px, 5vw, 58px); border-top: 4px solid var(--amber-500); background: var(--white); }
.qsa-referral-success h3 { max-width: 620px; font-size: clamp(1.8rem, 4vw, 2.8rem); }
.qsa-referral-success .button { margin-top: 20px; }
.trial-success { min-height: 620px; }
.trial-success > p:not(.eyebrow) { max-width: 720px; font-size: 1.02rem; }
.trial-success-actions { display: flex; margin: 34px 0; flex-wrap: wrap; gap: 18px 26px; align-items: center; }
.trial-installer-section { border-top: 1px solid var(--line); }
.trial-installer-section > div:first-child { max-width: 760px; }
.trial-installer-grid { display: grid; margin-top: 34px; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.trial-installer-grid article { display: grid; padding: 22px; gap: 15px; align-content: start; border: 1px solid var(--line); background: var(--white); }
.trial-installer-grid h3 { margin: 0; font-size: 1rem; }
.trial-installer-grid .button { width: 100%; padding-inline: 12px; text-align: center; }
.trial-installer-grid .checksum-link { margin-top: 0; }

.contact-directory { padding-top: 0; }
.contact-list { border-top: 1px solid var(--green-900); }
.contact-list article { display: grid; padding-block: 28px; grid-template-columns: minmax(220px, .8fr) minmax(260px, 1.2fr) auto; gap: 32px; align-items: start; border-bottom: 1px solid var(--line); }
.contact-list article > div { display: grid; gap: 8px; }
.contact-list article > div > span { color: var(--amber-600); font-size: .66rem; font-weight: 800; letter-spacing: .1em; }
.contact-list h2 { margin: 0; font-size: 1.65rem; }
.contact-list p { margin: 0; font-size: .84rem; }
.contact-address { align-self: center; color: var(--green-800); font-size: .75rem; font-weight: 750; white-space: nowrap; }
.contact-safety-note { max-width: 820px; margin: 28px 0 0; font-size: .78rem; }

.legal-documents { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(50px, 9vw, 120px); }
.legal-list { display: grid; }
.legal-list article { display: grid; padding-block: 24px; grid-template-columns: 42px minmax(0, 1fr) auto; gap: 18px; border-top: 1px solid var(--line); }
.legal-list article > span { color: var(--amber-600); font-size: .68rem; font-weight: 800; }
.legal-list h3 { margin-bottom: 7px; }
.legal-list p { margin-bottom: 0; font-size: .82rem; }
.legal-list article > a { align-self: start; color: var(--green-800); font-size: .68rem; font-weight: 750; white-space: nowrap; }
.legal-company { display: flex; margin-top: 48px; padding-top: 24px; justify-content: space-between; gap: 40px; border-top: 1px solid var(--line); }
.legal-company p { margin: 0; color: var(--muted); font-size: .72rem; line-height: 1.7; }
.legal-company strong { color: var(--green-900); }

.site-footer { padding: 58px 0 24px; border-top: 1px solid #2c483d; background: var(--green-950); color: var(--white); }
.footer-main { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(60px, 10vw, 150px); }
.footer-brand strong { color: var(--white); }
.footer-brand small, .footer-intro p { color: #9eb5ab; }
.footer-intro p { max-width: 440px; margin-top: 22px; font-size: .78rem; }
.footer-main nav { display: grid; grid-template-columns: 1fr 1fr; align-content: start; gap: 13px 34px; }
.footer-main nav a { color: #c1d0ca; font-size: .78rem; text-decoration: none; }
.footer-main nav a:hover { color: var(--white); }
.footer-release { display: flex; margin-top: 46px; padding-block: 20px; align-items: center; justify-content: space-between; gap: 40px; border-block: 1px solid #2c483d; }
.footer-release > div { display: flex; flex-wrap: wrap; align-items: baseline; gap: 7px 14px; }
.footer-release span { color: var(--amber-500); font-size: .66rem; font-weight: 800; }
.footer-release small { color: #9eb5ab; font-size: .68rem; }
.footer-release small a { color: inherit; text-underline-offset: 3px; }
.footer-release p { margin: 0; color: #9eb5ab; font-size: .68rem; text-align: right; }
.footer-bottom { display: flex; margin-top: 50px; padding-top: 20px; justify-content: space-between; gap: 20px; border-top: 1px solid #2c483d; color: #80988e; font-size: .66rem; }
.footer-privacy-control { padding: 0; border: 0; background: transparent; color: #a9bbb3; cursor: pointer; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
.footer-privacy-control:hover { color: var(--white); }
.consent-banner[hidden], .consent-dialog [hidden] { display: none; }
.consent-banner { position: fixed; inset: auto 0 0; z-index: 40; padding-block: 20px; border-top: 3px solid var(--amber-500); background: var(--green-950); color: var(--white); }
.consent-banner-inner { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: clamp(30px, 6vw, 80px); align-items: center; }
.consent-banner .eyebrow { margin-bottom: 7px; color: var(--amber-500); }
.consent-banner h2 { margin-bottom: 8px; color: var(--white); font-size: 1.3rem; }
.consent-banner p:not(.eyebrow) { max-width: 720px; margin: 0; color: #c1d0ca; font-size: .74rem; }
.consent-banner a { display: inline-block; margin-top: 9px; color: var(--white); font-size: .7rem; text-underline-offset: 3px; }
.consent-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.consent-actions .button { min-height: 44px; padding: 10px 14px; cursor: pointer; font-family: inherit; font-size: .7rem; }
.consent-actions .secondary { border-color: #789087; color: var(--white); }
.consent-manage { grid-column: 1 / -1; padding: 7px; border: 0; background: transparent; color: #c1d0ca; cursor: pointer; font: inherit; font-size: .68rem; text-decoration: underline; text-underline-offset: 3px; }
.consent-dialog, .post-purchase-access-dialog { width: min(650px, calc(100% - 30px)); padding: clamp(25px, 4vw, 42px); border: 1px solid var(--line); border-top: 4px solid var(--amber-500); border-radius: 3px; background: var(--paper); color: var(--ink); }
.consent-dialog::backdrop, .post-purchase-access-dialog::backdrop { background: rgb(10 34 27 / 68%); }
.post-purchase-access-dialog h2 { margin-bottom: 10px; font-size: 1.75rem; }
.post-purchase-access-dialog p:not(.eyebrow) { margin-bottom: 24px; }
.post-purchase-access-dialog .button { cursor: pointer; font-family: inherit; }
.consent-dialog-heading h2 { margin-bottom: 10px; font-size: 1.75rem; }
.consent-dialog-heading > p:last-child { font-size: .78rem; }
.consent-options { display: grid; margin-block: 26px; border-top: 1px solid var(--line); }
.consent-options label { display: grid; padding-block: 18px; grid-template-columns: 22px 1fr; gap: 13px; border-bottom: 1px solid var(--line); cursor: pointer; }
.consent-options input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--green-800); }
.consent-options span { display: grid; gap: 5px; }
.consent-options strong { color: var(--green-900); font-size: .82rem; }
.consent-options small, .consent-options > p { color: var(--muted); font-size: .7rem; line-height: 1.5; }
.consent-options > p { margin: 12px 0 0; }
.consent-dialog-actions { display: flex; gap: 10px; }
.consent-dialog-actions .button { cursor: pointer; font-family: inherit; }
.not-found { display: flex; min-height: 100vh; padding-block: 80px; flex-direction: column; align-items: flex-start; justify-content: center; }
.not-found img { margin-bottom: 28px; }
.not-found h1 { max-width: 720px; }

@media (max-width: 900px) {
  .header-inner { grid-template-columns: auto 1fr; padding-block: 14px; }
  .primary-nav { grid-column: 1 / -1; grid-row: 2; justify-content: flex-start; overflow-x: auto; }
  .header-cta { justify-self: end; }
  .home-intro { min-height: auto; grid-template-columns: 1fr; }
  .hero-position-field { width: min(100%, 680px); min-height: 380px; }
  .assessment-hero { min-height: auto; grid-template-columns: 1fr; }
  .assessment-position-field { min-height: 380px; }
  .platform-utility-strip .shell { padding-block: 18px; grid-template-columns: auto repeat(2, minmax(160px, 1fr)); }
  .platform-utility-strip .shell > div:last-of-type { grid-column: 2; }
  .platform-utility-strip a { grid-column: 3; }
  .assessment-signal-strip .shell { padding-block: 18px; grid-template-columns: auto repeat(3, minmax(130px, 1fr)); }
  .assessment-section-heading, .assessment-evidence-grid, .home-scope-grid, .home-value, .home-evidence-grid, .home-boundary, .home-formats-heading, .home-deployment, .report-story, .benchmark-preview-grid, .benchmark-ocr-grid, .benchmark-method, .security-principles, .buyer-checklist-heading, .procurement-grid, .legal-documents, .trial-registration-layout, .resource-feature, .resource-assets-grid, .resource-article-layout { grid-template-columns: 1fr; }
  .assessment-section-heading { gap: 18px; }
  .assessment-section-heading .eyebrow { grid-column: auto; margin-bottom: 0; }
  .assessment-exercise-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .qsa-referral-offer { grid-template-columns: 1fr; }
  .qsa-referral-copy { min-height: 420px; }
  .qsa-boundary-ledger article { grid-template-columns: 110px minmax(220px, .8fr) 1fr; gap: 24px; }
  .trial-registration-intro { position: static; }
  .resource-article-aside { position: static; }
  .paired-interface-heading { grid-template-columns: 1fr; gap: 18px; }
  .paired-interface-heading .eyebrow { grid-column: auto; margin-bottom: 0; }
  .product-datasheet { grid-template-columns: minmax(230px, .8fr) 1.2fr; }
  .product-datasheet .button { grid-column: 1 / -1; justify-self: start; }
  .product-demo-heading, .security-demo-heading { grid-template-columns: 1fr; gap: 18px; }
  .closing-evidence-grid { grid-template-columns: 1fr 1fr; }
  .closing-evidence-actions { grid-column: 1 / -1; grid-template-columns: minmax(190px, auto) auto; justify-content: start; align-items: center; }
  .contact-list article { grid-template-columns: 1fr; gap: 14px; }
  .contact-address { justify-self: start; }
  .format-grid, .platform-cards, .release-grid, .trial-installer-grid { grid-template-columns: 1fr; }
  .interface-grid { grid-template-columns: 1fr; }
  .interface-card { min-height: 0; }
  .release-grid p { min-height: 0; }
  .assurance-ledger article { grid-template-columns: 120px minmax(220px, .8fr) 1fr; gap: 24px; }
  .plan-extension { grid-template-columns: 1fr 1fr; }
  .plan-extension a { justify-self: end; }
  .footer-main { grid-template-columns: 1.2fr .8fr; gap: 50px; }
}

@media (max-width: 620px) {
  .shell { width: min(100% - 30px, 1180px); }
  .header-inner { gap: 12px; }
  .brand small { display: none; }
  .header-cta { min-height: 40px; padding-inline: 13px; font-size: .74rem; }
  .primary-nav { margin-inline: -15px; padding-inline: 15px; gap: 22px; }
  .primary-nav a { padding: 9px 0 6px; white-space: nowrap; }
  .home-intro { padding-top: 58px; gap: 42px; }
  .home-intro h1 { font-size: clamp(2.9rem, 13vw, 4rem); }
  .hero-position-field { min-height: 330px; padding: 25px; }
  .hero-position-field h2 { margin-top: 56px; }
  .assessment-hero { padding-top: 58px; gap: 42px; }
  .assessment-hero h1 { font-size: clamp(2.8rem, 13vw, 3.9rem); }
  .platform-utility-strip .shell { grid-template-columns: 1fr; gap: 16px; }
  .platform-utility-strip .shell > div { padding: 13px 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .platform-utility-strip .shell > div:last-of-type, .platform-utility-strip a { grid-column: auto; }
  .assessment-signal-strip .shell { grid-template-columns: 1fr; gap: 16px; }
  .assessment-signal-strip .shell > div { padding: 13px 0 0; border-top: 1px solid var(--line); border-left: 0; }
  .assessment-exercise-grid, .assessment-assurance-grid, .qsa-referral-controls { grid-template-columns: 1fr; }
  .assessment-exercise-grid article, .assessment-assurance-grid article { min-height: 0; }
  .assessment-evidence-ledger div { grid-template-columns: 1fr; gap: 8px; }
  .assessment-resource-links { display: grid; }
  .qsa-referral-copy { min-height: 0; }
  .qsa-referral-copy > span { margin-bottom: 0; }
  .qsa-referral-copy h3 { margin-top: 40px; }
  .qsa-referral-terms div, .qsa-boundary-ledger article { grid-template-columns: 1fr; gap: 10px; }
  .capability-grid { grid-template-columns: 1fr; }
  .decision-trail li { grid-template-columns: 86px 1fr; gap: 16px; }
  .demo-evidence { display: grid; gap: 10px; }
  .format-lines div { grid-template-columns: 1fr; gap: 7px; }
  .resource-meta { display: grid; grid-template-columns: 1fr; }
  .resource-meta div { padding-right: 0; border-bottom: 1px solid var(--line); }
  .resource-meta div:last-child { border-bottom: 0; }
  .resource-article-hero .resource-meta div { border-color: #4c655b; }
  .resource-asset-ledger > div, .article-decision-ledger div, .article-sources li { grid-template-columns: 1fr; gap: 8px; }
  .section-heading { display: grid; }
  .product-datasheet { grid-template-columns: 1fr; gap: 18px; }
  .product-datasheet .button { grid-column: auto; }
  .data-table { overflow-x: auto; }
  .data-row { min-width: 680px; }
  .assurance-ledger article { grid-template-columns: 1fr; gap: 10px; }
  .faq-grid { grid-template-columns: 1fr; }
  .workflow-list article { grid-template-columns: 42px 1fr; gap: 18px; }
  .post-purchase-processing, .post-purchase-summary { grid-template-columns: 1fr; }
  .fulfilment-spinner { margin-bottom: 6px; }
  .post-purchase-summary > div, .post-purchase-summary > div:first-child, .post-purchase-summary > div:last-child { padding: 16px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .post-purchase-summary > div:last-child { border-bottom: 0; }
  .recovery-panel { grid-template-columns: 1fr; }
  .account-sign-in, .account-privacy, .account-overview, .account-section-heading, .licence-grid, .licence-activation-help { grid-template-columns: 1fr; }
  .account-heading { align-items: start; flex-direction: column; }
  .licence-card { border-right: 0; border-bottom: 1px solid var(--line); }
  .licence-card:last-child { border-bottom: 0; }
  .licence-cli-help { grid-column: auto; }
  .account-software-heading { align-items: start; flex-direction: column; }
  .software-artifacts { grid-template-columns: 1fr; }
  .software-artifacts section:nth-child(odd) { border-right: 0; }
  .account-boundary { grid-template-columns: 1fr; }
  .evidence-pair, .contact-grid, .privacy-facts { grid-template-columns: 1fr; }
  .benchmark-preview-list > div, .benchmark-preview-list dd, .benchmark-ocr-grid dl > div { grid-template-columns: 1fr; gap: 8px; }
  .benchmark-preview-list strong { font-size: 1.45rem; }
  .benchmark-results .section-heading > p { max-width: none; }
  .closing-action { display: grid; }
  .trial-registration-form { grid-template-columns: 1fr; }
  .form-field-wide, .form-error-summary { grid-column: auto; }
  .form-submit { display: grid; }
  .closing-evidence-grid { grid-template-columns: 1fr; gap: 34px; }
  .closing-evidence-actions { grid-column: auto; grid-template-columns: 1fr; }
  .plan-extension { grid-template-columns: 1fr; gap: 13px; }
  .plan-extension a { justify-self: start; }
  .legal-list article { grid-template-columns: 34px 1fr; }
  .legal-list article > a { grid-column: 2; }
  .legal-company { flex-direction: column; }
  .footer-main { grid-template-columns: 1fr; gap: 32px; }
  .footer-release { display: grid; gap: 14px; }
  .footer-release p { text-align: left; }
  .footer-bottom { display: grid; }
  .consent-banner-inner { grid-template-columns: 1fr; gap: 20px; }
  .consent-actions { grid-template-columns: 1fr; }
  .consent-manage { grid-column: auto; }
  .consent-dialog-actions { display: grid; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Shared user guide body; site navigation and typography remain native. */
.user-guide { max-width: 960px; padding-block: 3rem; }
.user-guide h2 { margin-top: 2.5rem; scroll-margin-top: 6rem; }
.user-guide p, .user-guide li { line-height: 1.7; }
.user-guide li { margin-block: .5rem; }
.user-guide pre { padding: 1rem; background: #e7ece5; white-space: pre-wrap; overflow-wrap: anywhere; }
.user-guide nav { padding: 1rem 1.5rem; border: 1px solid #bac8bf; border-radius: 12px; }
.user-guide .guide-version { font-weight: 600; }
@media print { .user-guide { max-width: none; } .user-guide h2 { break-after: avoid; } }

.user-guide figure { margin: 2rem 0; break-inside: avoid; }
.user-guide figure img { display: block; width: 100%; height: auto; border: 1px solid #bac8bf; border-radius: 8px; }
.user-guide figcaption { font-size: .9rem; line-height: 1.6; margin-top: .7rem; }
