@import url("https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=IBM+Plex+Mono:wght@500;600&family=Manrope:wght@400;500;600;700&display=swap");

:root {
  color-scheme: dark;
  --utility-obsidian: #05070b;
  --utility-ink: #0b1320;
  --utility-ink-2: #101b2a;
  --utility-paper: #f5f7f2;
  --utility-lime: #b7f200;
  --utility-coral: #ff5a4e;
  --utility-sky: #72d7ff;
  --utility-steel: #a7b0bc;
  --utility-line: rgba(255, 255, 255, 0.14);
  --utility-line-dark: rgba(5, 7, 11, 0.16);
  --utility-display: "Bricolage Grotesque", sans-serif;
  --utility-body: "Manrope", sans-serif;
  --utility-mono: "IBM Plex Mono", monospace;
  --utility-shell: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--utility-obsidian); }
body.utility-page {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  overflow-x: clip;
  background:
    radial-gradient(circle at 12% 16%, rgba(114, 215, 255, 0.07), transparent 27rem),
    var(--utility-obsidian);
  color: var(--utility-paper);
  font-family: var(--utility-body);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}
body.utility-page.menu-is-open { overflow: hidden; }
.utility-page button { font: inherit; }
.utility-page a { color: inherit; text-decoration: none; }
.utility-page button,
.utility-page a { -webkit-tap-highlight-color: transparent; }
.utility-page button { cursor: pointer; }
.utility-page img,
.utility-page svg { display: block; max-width: 100%; }
.utility-page ::selection { background: var(--utility-lime); color: var(--utility-obsidian); }
.utility-page :focus-visible { outline: 2px solid var(--utility-lime); outline-offset: 4px; }
.utility-page h1,
.utility-page h2,
.utility-page h3,
.utility-page p,
.utility-page figure { margin-top: 0; }
.utility-page h1,
.utility-page h2,
.utility-page h3 { margin-bottom: 0; font-family: var(--utility-display); }
.utility-shell { width: min(var(--utility-shell), calc(100% - 48px)); margin-inline: auto; }

.utility-header {
  position: fixed;
  z-index: 60;
  top: 16px;
  left: 50%;
  width: min(1180px, calc(100% - 32px));
  height: 66px;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0 10px 0 18px;
  border: 1px solid var(--utility-line);
  border-radius: 8px;
  background: rgba(5, 7, 11, 0.88);
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.34);
  backdrop-filter: blur(18px);
}
.utility-brand { display: flex; align-items: center; flex: 0 0 auto; }
.utility-brand img { width: 184px; height: 50px; object-fit: contain; object-position: left center; }
.utility-nav { display: flex; align-items: center; justify-content: center; gap: 26px; margin-left: auto; }
.utility-nav a,
.utility-language { color: #dce2e8; font: 600 10px/1 var(--utility-mono); text-transform: uppercase; transition: color 180ms ease; }
.utility-nav a:hover,
.utility-language:hover { color: var(--utility-lime); }
.utility-header-actions { display: flex; align-items: center; gap: 12px; }
.utility-button {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid transparent;
  border-radius: 4px;
  padding: 0 18px;
  font: 700 11px/1 var(--utility-mono);
  text-transform: uppercase;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}
.utility-button:hover { transform: translateY(-2px); }
.utility-button-primary { border-color: var(--utility-lime); background: var(--utility-lime); color: var(--utility-obsidian); }
.utility-button-primary:hover { background: #ccff31; }
.utility-button-ghost { border-color: rgba(255, 255, 255, 0.24); background: rgba(5, 7, 11, 0.46); color: var(--utility-paper); }
.utility-button-ghost:hover { border-color: var(--utility-paper); }
.utility-header .utility-button { min-height: 42px; padding-inline: 14px; }
.utility-menu-toggle { display: none; width: 44px; height: 44px; place-items: center; border: 1px solid var(--utility-line); border-radius: 4px; background: transparent; color: var(--utility-paper); }
.utility-menu-toggle svg { width: 22px; height: 22px; }
.utility-menu-toggle .menu-close { display: none; }
.utility-menu-toggle[aria-expanded="true"] .menu-open { display: none; }
.utility-menu-toggle[aria-expanded="true"] .menu-close { display: block; }
.utility-mobile-menu { display: none; }

.resource-main { padding-top: 0; }
.resource-hero {
  position: relative;
  min-height: 760px;
  display: grid;
  align-items: center;
  overflow: hidden;
  border-bottom: 1px solid var(--utility-line);
  padding: 140px 0 72px;
}
.resource-hero::before {
  position: absolute;
  inset: 0;
  content: "";
  background:
    linear-gradient(90deg, rgba(5, 7, 11, 0.98), rgba(5, 7, 11, 0.79) 48%, rgba(5, 7, 11, 0.9)),
    url("/assets/brand-2026/p2l-lead-flow-hero.webp") center / cover;
  opacity: 0.84;
}
.resource-hero::after {
  position: absolute;
  inset: auto -8% -34% auto;
  width: 680px;
  aspect-ratio: 1;
  border: 1px solid rgba(183, 242, 0, 0.24);
  border-radius: 50%;
  content: "";
  box-shadow: 0 0 0 90px rgba(183, 242, 0, 0.025), 0 0 0 180px rgba(183, 242, 0, 0.018);
}
.resource-hero::before, .resource-hero::after { display: none; }
.resource-hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 0.82fr 1.18fr; gap: 64px; align-items: center; }
.utility-eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; color: var(--utility-lime); font: 600 10px/1.4 var(--utility-mono); text-transform: uppercase; }
.utility-eyebrow::before { width: 34px; height: 2px; content: ""; background: currentColor; }
.resource-copy h1 { max-width: 660px; font-size: clamp(3.7rem, 6.4vw, 6.2rem); line-height: 0.9; }
.resource-copy h1 span { color: var(--utility-lime); }
.resource-lead { max-width: 610px; margin: 25px 0 0; color: #d7dce2; font-size: 1.08rem; line-height: 1.72; }
.utility-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.resource-proof { display: flex; flex-wrap: wrap; gap: 10px 24px; margin-top: 28px; color: var(--utility-steel); font: 500 9px/1.4 var(--utility-mono); text-transform: uppercase; }
.resource-proof span { display: inline-flex; align-items: center; gap: 8px; }
.resource-proof span::before { width: 5px; height: 5px; border-radius: 50%; content: ""; background: var(--utility-lime); box-shadow: 0 0 0 4px rgba(183, 242, 0, 0.12); }

.checklist-preview { position: relative; margin: 0; perspective: 1300px; }
.checklist-preview::before { display: none; }
.checklist-browser { position: relative; overflow: hidden; border: 1px solid rgba(255, 255, 255, 0.24); border-radius: 8px; background: #e9ece7; box-shadow: 0 36px 100px rgba(0, 0, 0, 0.54); transform: rotateY(-4deg) rotateX(1deg); transform-origin: left center; transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1); }
.checklist-preview:hover .checklist-browser { transform: rotateY(0) rotateX(0) translateY(-4px); }
.checklist-browser-bar { height: 46px; display: flex; align-items: center; gap: 7px; padding: 0 15px; border-bottom: 1px solid rgba(5, 7, 11, 0.14); background: #f5f7f2; }
.checklist-browser-bar i { width: 8px; height: 8px; border-radius: 50%; background: #bdc4c7; }
.checklist-browser-bar i:first-child { background: var(--utility-coral); }
.checklist-browser-bar i:nth-child(2) { background: #f3bb39; }
.checklist-browser-bar i:nth-child(3) { background: var(--utility-lime); }
.checklist-browser-bar span { margin-left: auto; color: #4f5963; font: 600 8px/1 var(--utility-mono); text-transform: uppercase; }
.checklist-page-link { display: block; background: #dfe3de; }
.checklist-pdf-frame { width: 100%; height: 540px; display: block; border: 0; background: #fff; object-fit: contain; object-position: top center; }
.preview-fallback { min-height: 540px; display: grid; place-items: center; padding: 48px; background: var(--utility-paper); color: var(--utility-obsidian); text-align: center; }
.preview-fallback strong { font: 800 2rem/1 var(--utility-display); }
.preview-fallback span { display: block; margin-top: 12px; color: #59616b; }
.checklist-preview figcaption { position: absolute; right: -18px; bottom: 20px; display: grid; gap: 4px; min-width: 190px; padding: 14px 16px; border: 1px solid rgba(183, 242, 0, 0.36); border-radius: 4px; background: rgba(5, 7, 11, 0.94); box-shadow: 0 14px 34px rgba(0, 0, 0, 0.32); }
.checklist-preview figcaption span { color: var(--utility-lime); font: 600 8px/1 var(--utility-mono); text-transform: uppercase; }
.checklist-preview figcaption b { font-size: 0.84rem; }

.resource-section { padding: 112px 0; }
.resource-section-light { background: var(--utility-paper); color: var(--utility-obsidian); }
.resource-heading { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 54px; align-items: end; margin-bottom: 48px; }
.resource-heading h2 { max-width: 760px; font-size: clamp(2.8rem, 5.4vw, 4.8rem); line-height: 0.97; }
.resource-heading h2 span { color: var(--utility-coral); }
.resource-heading p { max-width: 450px; margin: 0; color: #59616b; line-height: 1.75; }
.check-grid { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid var(--utility-line-dark); }
.check-item { position: relative; min-height: 245px; display: flex; flex-direction: column; padding: 24px; border-right: 1px solid var(--utility-line-dark); border-bottom: 1px solid var(--utility-line-dark); overflow: hidden; }
.check-item:nth-child(3n) { border-right: 0; }
.check-item:nth-child(n + 4) { border-bottom: 0; }
.check-number { color: #557200; font: 600 9px/1 var(--utility-mono); }
.check-item h3 { margin-top: 62px; font-size: 1.75rem; line-height: 1; }
.check-item p { margin: 12px 0 0; color: #59616b; font-size: 0.9rem; line-height: 1.65; }
.check-item::after { position: absolute; right: -34px; bottom: -34px; width: 90px; height: 90px; border: 1px solid rgba(5, 7, 11, 0.14); border-radius: 50%; content: ""; transition: transform 350ms ease, background 350ms ease; }
.check-item:hover::after { transform: scale(1.7); background: rgba(183, 242, 0, 0.14); }

.resource-next { padding: 104px 0; }
.resource-next-grid { display: grid; grid-template-columns: 0.92fr 1.08fr; gap: 12px; }
.next-panel { min-height: 480px; display: flex; flex-direction: column; justify-content: space-between; padding: 36px; border: 1px solid var(--utility-line); border-radius: 6px; background: var(--utility-ink); }
.next-panel-accent { position: relative; overflow: hidden; background: var(--utility-coral); color: var(--utility-obsidian); }
.next-panel-accent::after { position: absolute; right: -120px; bottom: -180px; width: 440px; height: 440px; border: 1px solid rgba(5, 7, 11, 0.3); border-radius: 50%; content: ""; box-shadow: 0 0 0 68px rgba(5, 7, 11, 0.05), 0 0 0 136px rgba(5, 7, 11, 0.035); }
.next-panel > * { position: relative; z-index: 2; }
.next-panel-label { color: var(--utility-lime); font: 600 9px/1 var(--utility-mono); text-transform: uppercase; }
.next-panel-accent .next-panel-label { color: var(--utility-obsidian); }
.next-panel h2 { max-width: 590px; margin-top: 18px; font-size: clamp(2.6rem, 4vw, 4rem); line-height: 0.97; }
.next-panel p { max-width: 560px; margin: 22px 0 0; color: var(--utility-steel); line-height: 1.72; }
.next-panel-accent p { color: rgba(5, 7, 11, 0.72); }
.next-list { display: grid; gap: 0; margin: 34px 0 0; padding: 0; border-top: 1px solid var(--utility-line); list-style: none; }
.next-list li { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 13px 0; border-bottom: 1px solid var(--utility-line); color: #d8dde3; font-size: 0.86rem; }
.next-list li::after { color: var(--utility-lime); content: "✓"; font-weight: 700; }
.next-panel .utility-actions { margin-top: 36px; }

.legal-main { padding: 136px 0 96px; }
.legal-intro { padding: 44px 0 52px; border-bottom: 1px solid var(--utility-line); }
.legal-intro-grid { display: grid; grid-template-columns: 1.25fr 0.75fr; gap: 60px; align-items: end; }
.legal-intro h1 { max-width: 760px; font-size: clamp(4rem, 8vw, 7.4rem); line-height: 0.88; }
.legal-intro h1 span { color: var(--utility-lime); }
.legal-meta { margin: 24px 0 0; color: var(--utility-steel); font: 500 9px/1.5 var(--utility-mono); text-transform: uppercase; }
.legal-summary { margin: 0; color: #d0d6dc; font-size: 1.04rem; line-height: 1.78; }
.legal-layout { display: grid; grid-template-columns: 260px minmax(0, 780px); gap: 76px; align-items: start; padding-top: 62px; }
.legal-toc { position: sticky; top: 108px; }
.legal-toc > span { display: block; margin-bottom: 16px; color: var(--utility-lime); font: 600 9px/1 var(--utility-mono); text-transform: uppercase; }
.legal-toc nav { display: grid; border-top: 1px solid var(--utility-line); }
.legal-toc a { position: relative; padding: 10px 10px 10px 16px; border-bottom: 1px solid var(--utility-line); color: #8d99a7; font-size: 0.76rem; line-height: 1.3; transition: color 180ms ease, background 180ms ease; }
.legal-toc a::before { position: absolute; top: 50%; left: 0; width: 4px; height: 4px; transform: translateY(-50%); border-radius: 50%; content: ""; background: #59616b; }
.legal-toc a:hover,
.legal-toc a.is-active { color: var(--utility-paper); background: rgba(255, 255, 255, 0.035); }
.legal-toc a.is-active::before { background: var(--utility-lime); box-shadow: 0 0 0 4px rgba(183, 242, 0, 0.1); }
.legal-toc-note { margin: 20px 0 0; color: #6f7b89; font-size: 0.72rem; line-height: 1.55; }
.legal-article { min-width: 0; }
.legal-section { scroll-margin-top: 118px; padding: 0 0 40px; border-bottom: 1px solid var(--utility-line); }
.legal-section + .legal-section { padding-top: 40px; }
.legal-section h2 { display: grid; grid-template-columns: 40px 1fr; align-items: baseline; gap: 10px; font-size: clamp(1.7rem, 3vw, 2.25rem); line-height: 1.08; }
.legal-section h2 span { color: var(--utility-lime); font: 600 9px/1 var(--utility-mono); }
.legal-section p,
.legal-section ul { color: #c4ccd5; line-height: 1.78; }
.legal-section p { margin: 18px 0 0; }
.legal-section ul { display: grid; gap: 9px; margin: 18px 0 0; padding-left: 21px; }
.legal-section a { color: var(--utility-lime); font-weight: 700; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 4px; }
.legal-note { margin-top: 42px; padding: 26px; border: 1px solid rgba(183, 242, 0, 0.26); border-radius: 5px; background: linear-gradient(135deg, rgba(183, 242, 0, 0.08), rgba(114, 215, 255, 0.035)); }
.legal-note h2 { display: block; color: var(--utility-lime); font-size: 1.65rem; }
.legal-note p { margin: 13px 0 0; color: #cbd3dc; line-height: 1.75; }
.legal-disclaimer { margin: 22px 0 0; color: #758292; font-size: 0.77rem; line-height: 1.55; }
.legal-progress { position: fixed; z-index: 70; top: 0; left: 0; width: 0; height: 2px; background: var(--utility-lime); box-shadow: 0 0 16px rgba(183, 242, 0, 0.46); }

.utility-footer { border-top: 1px solid var(--utility-line); background: #030508; }
.utility-footer-main { width: min(var(--utility-shell), calc(100% - 48px)); margin: 0 auto; display: grid; grid-template-columns: 1.7fr 0.7fr 1fr 0.7fr; gap: 48px; padding: 72px 0 58px; }
.utility-footer-brand img { width: 220px; height: 60px; object-fit: contain; object-position: left center; }
.utility-footer-brand p { max-width: 430px; margin: 22px 0 0; color: var(--utility-steel); line-height: 1.7; }
.utility-footer-links { display: flex; flex-direction: column; align-items: flex-start; gap: 13px; }
.utility-footer-links > span { margin-bottom: 7px; color: var(--utility-lime); font: 600 9px/1 var(--utility-mono); text-transform: uppercase; }
.utility-footer-links a { display: inline-flex; align-items: center; gap: 7px; color: #d8dde3; font-size: 0.82rem; }
.utility-footer-links a:hover { color: var(--utility-lime); }
.utility-footer-links svg { width: 15px; height: 15px; }
.utility-footer-bottom { width: min(var(--utility-shell), calc(100% - 48px)); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 22px 0 30px; border-top: 1px solid var(--utility-line); color: #718092; font: 500 8px/1.4 var(--utility-mono); text-transform: uppercase; }
.utility-footer-bottom a:hover { color: var(--utility-lime); }

[data-reveal] { opacity: 0; transform: translateY(22px); transition: opacity 700ms ease, transform 700ms cubic-bezier(0.22, 1, 0.36, 1); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }
[data-reveal-delay="1"] { transition-delay: 90ms; }
[data-reveal-delay="2"] { transition-delay: 180ms; }
[data-reveal-delay="3"] { transition-delay: 270ms; }

@media (max-width: 1000px) {
  .resource-hero-grid { grid-template-columns: 1fr 1fr; gap: 34px; }
  .checklist-pdf-frame { height: 480px; }
  .legal-layout { grid-template-columns: 220px minmax(0, 1fr); gap: 46px; }
  .utility-footer-main { grid-template-columns: 1.4fr 0.7fr 1fr; }
  .utility-footer-links:last-child { grid-column: 2 / -1; }
}

@media (max-width: 900px) {
  .utility-nav,
  .utility-language,
  .utility-header .utility-button { display: none; }
  .utility-menu-toggle { display: grid; }
  .utility-mobile-menu { position: fixed; z-index: -1; inset: -17px -17px auto; min-height: 100svh; display: grid; grid-template-rows: 1fr auto; padding: 116px 24px 28px; background: var(--utility-obsidian); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-16px); transition: opacity 220ms ease, transform 220ms ease, visibility 0s linear 220ms; }
  .utility-mobile-menu.is-open { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); transition-delay: 0s; }
  .utility-mobile-menu nav { display: flex; flex-direction: column; }
  .utility-mobile-menu nav a { display: grid; grid-template-columns: 42px 1fr; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--utility-line); font: 700 2.3rem/1 var(--utility-display); }
  .utility-mobile-menu nav a span { color: var(--utility-lime); font: 600 9px/1 var(--utility-mono); }
  .utility-mobile-footer { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding-top: 22px; }
  .utility-mobile-footer p { margin: 0; color: var(--utility-steel); font: 500 9px/1.5 var(--utility-mono); text-transform: uppercase; }
  .resource-hero { padding-bottom: 84px; }
  .resource-hero-grid { grid-template-columns: 1fr; gap: 50px; }
  .resource-copy { max-width: 760px; }
  .checklist-preview { width: min(720px, 94%); margin-inline: auto; }
  .resource-heading { grid-template-columns: 1fr; gap: 20px; align-items: start; }
  .check-grid { grid-template-columns: repeat(2, 1fr); }
  .check-item:nth-child(3n) { border-right: 1px solid var(--utility-line-dark); }
  .check-item:nth-child(2n) { border-right: 0; }
  .check-item:nth-child(n + 4) { border-bottom: 1px solid var(--utility-line-dark); }
  .check-item:nth-child(n + 5) { border-bottom: 0; }
  .resource-next-grid { grid-template-columns: 1fr; }
  .legal-intro-grid { grid-template-columns: 1fr; gap: 26px; }
  .legal-layout { grid-template-columns: 1fr; gap: 34px; }
  .legal-toc { position: static; }
  .legal-toc nav { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .utility-shell,
  .utility-footer-main,
  .utility-footer-bottom { width: calc(100% - 28px); }
  .utility-header { top: 10px; width: calc(100% - 20px); height: 58px; padding: 0 7px 0 12px; }
  .utility-brand img { width: 145px; height: 42px; }
  .utility-menu-toggle { width: 44px; height: 44px; }
  .utility-mobile-menu { inset: -11px -11px auto; padding: 102px 14px 24px; }
  .utility-mobile-menu nav a { font-size: 1.9rem; }
  .utility-mobile-footer { align-items: stretch; flex-direction: column; }
  .utility-mobile-footer .utility-button { width: 100%; }
  .resource-hero { min-height: 0; padding: 112px 0 64px; }
  .resource-copy h1 { font-size: 3.75rem; }
  .resource-lead { font-size: 1rem; }
  .utility-actions { display: grid; }
  .utility-actions .utility-button { width: 100%; }
  .checklist-preview { width: 100%; }
  .checklist-browser { transform: none; }
  .checklist-pdf-frame { height: 430px; }
  .checklist-preview figcaption { right: 10px; bottom: 10px; min-width: 165px; }
  .resource-section,
  .resource-next { padding: 78px 0; }
  .resource-heading h2 { font-size: 2.8rem; }
  .check-grid { grid-template-columns: 1fr; }
  .check-item,
  .check-item:nth-child(2n),
  .check-item:nth-child(3n),
  .check-item:nth-child(n + 4),
  .check-item:nth-child(n + 5) { min-height: 210px; border-right: 0; border-bottom: 1px solid var(--utility-line-dark); }
  .check-item:last-child { border-bottom: 0; }
  .check-item h3 { margin-top: 46px; }
  .next-panel { min-height: 440px; padding: 26px 22px; }
  .next-panel h2 { font-size: 2.75rem; }
  .legal-main { padding: 104px 0 78px; }
  .legal-intro { padding: 34px 0 40px; }
  .legal-intro h1 { font-size: 4.05rem; }
  .legal-layout { padding-top: 42px; }
  .legal-toc nav { grid-template-columns: 1fr 1fr; max-height: none; overflow: visible; }
  .legal-toc a,
  .utility-footer-links a,
  .utility-footer-bottom a { min-height: 44px; display: inline-flex; align-items: center; }
  .legal-section { padding-bottom: 32px; }
  .legal-section + .legal-section { padding-top: 32px; }
  .legal-section h2 { grid-template-columns: 32px 1fr; font-size: 1.7rem; }
  .legal-note { padding: 21px; }
  .utility-footer-main { grid-template-columns: 1fr 1fr; gap: 36px 20px; padding: 54px 0 40px; }
  .utility-footer-brand { grid-column: 1 / -1; }
  .utility-footer-links:last-child { grid-column: auto; }
  .utility-footer-bottom { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 390px) {
  .resource-copy h1 { font-size: 3.25rem; }
  .legal-intro h1 { font-size: 3.5rem; }
  .next-panel h2 { font-size: 2.45rem; }
  .utility-footer-main { grid-template-columns: 1fr; gap: 30px; }
  .utility-footer-brand,
  .utility-footer-links:last-child { grid-column: auto; }
  .utility-footer-links a { max-width: 100%; overflow-wrap: anywhere; }
  .legal-toc nav { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .utility-page *,
  .utility-page *::before,
  .utility-page *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
  [data-reveal] { opacity: 1; transform: none; }
  .checklist-browser { transform: none; }
}
