@import 'tailwindcss';
@import 'shadcn/tailwind.css';

@custom-variant dark (&:is(.dark *));

html,
body,
body * {
  -webkit-user-select: text;
  user-select: text;
}

@theme inline {
  --font-sans: var(--font-montserrat), ui-sans-serif, system-ui, sans-serif;
  --font-serif: var(--font-montserrat), ui-sans-serif, system-ui, sans-serif;
  --font-mono: var(--font-geist-mono), ui-monospace, monospace;

  --color-sidebar-ring: var(--sidebar-ring);
  --color-sidebar-border: var(--sidebar-border);
  --color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
  --color-sidebar-accent: var(--sidebar-accent);
  --color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
  --color-sidebar-primary: var(--sidebar-primary);
  --color-sidebar-foreground: var(--sidebar-foreground);
  --color-sidebar: var(--sidebar);
  --color-chart-5: var(--chart-5);
  --color-chart-4: var(--chart-4);
  --color-chart-3: var(--chart-3);
  --color-chart-2: var(--chart-2);
  --color-chart-1: var(--chart-1);
  --color-ring: var(--ring);
  --color-input: var(--input);
  --color-border: var(--border);
  --color-destructive: var(--destructive);
  --color-accent-foreground: var(--accent-foreground);
  --color-accent: var(--accent);
  --color-muted-foreground: var(--muted-foreground);
  --color-muted: var(--muted);
  --color-secondary-foreground: var(--secondary-foreground);
  --color-secondary: var(--secondary);
  --color-primary-foreground: var(--primary-foreground);
  --color-primary: var(--primary);
  --color-popover-foreground: var(--popover-foreground);
  --color-popover: var(--popover);
  --color-card-foreground: var(--card-foreground);
  --color-card: var(--card);
  --color-foreground: var(--foreground);
  --color-background: var(--background);
  --radius-sm: calc(var(--radius) * 0.5);
  --radius-md: calc(var(--radius) * 0.75);
  --radius-lg: var(--radius);
  --radius-xl: calc(var(--radius) * 1.5);
  --radius-2xl: calc(var(--radius) * 2);
  --radius-3xl: calc(var(--radius) * 2.5);
  --radius-4xl: calc(var(--radius) * 3);
}

:root {
  color-scheme: light;
  --pn-font-sans: var(--font-montserrat), ui-sans-serif, system-ui, -apple-system, sans-serif;
  --pn-font-serif: var(--font-montserrat), ui-sans-serif, system-ui, -apple-system, sans-serif;
  --pn-font-mono: var(--font-geist-mono), ui-monospace, "SFMono-Regular", monospace;
  --pn-title-size: 4rem;
  --pn-title-weight: 900;
  --pn-title-tracking: -0.02em;
  --pn-posttitle-size: 1.25rem;
  --pn-posttitle-weight: 400;
  --pn-heading-size: 1.5rem;
  --pn-heading-weight: 600;
  --pn-body-size: 1rem;
  --pn-body-line: 1.6;
  --pn-labels-size: 0.8125rem;
  --pn-labels-weight: 500;
  --pn-fineprint-size: 0.75rem;
  --pn-footnote-size: 0.6875rem;
  /* Monochrome studio: pure white canvas, near-black ink, no color accent */
  --background: oklch(1 0 0);
  --foreground: oklch(0.145 0 0);
  --card: oklch(1 0 0);
  --card-foreground: oklch(0.145 0 0);
  --popover: oklch(1 0 0);
  --popover-foreground: oklch(0.145 0 0);
  --primary: oklch(0.145 0 0);
  --primary-foreground: oklch(0.985 0 0);
  --secondary: oklch(0.97 0 0);
  --secondary-foreground: oklch(0.205 0 0);
  --muted: oklch(0.97 0 0);
  --muted-foreground: oklch(0.556 0 0);
  --accent: oklch(0.97 0 0);
  --accent-foreground: oklch(0.205 0 0);
  --destructive: oklch(0.577 0.245 27.325);
  --border: oklch(0.922 0 0);
  --input: oklch(0.922 0 0);
  --ring: oklch(0.708 0 0);
  --chart-1: oklch(0.205 0 0);
  --chart-2: oklch(0.36 0 0);
  --chart-3: oklch(0.52 0 0);
  --chart-4: oklch(0.68 0 0);
  --chart-5: oklch(0.82 0 0);
  --radius: 0.375rem;
  --network-grid: oklch(0.922 0 0 / 42%);
  --network-surface: oklch(0.985 0 0);
  --sidebar: oklch(0.145 0 0);
  --sidebar-foreground: oklch(0.92 0 0);
  --sidebar-primary: oklch(0.985 0 0);
  --sidebar-primary-foreground: oklch(0.145 0 0);
  --sidebar-accent: oklch(0.26 0 0);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: oklch(1 0 0 / 10%);
  --sidebar-ring: oklch(0.708 0 0);
}

.dark {
  color-scheme: dark;
  --background: oklch(0.145 0 0);
  --foreground: oklch(0.985 0 0);
  --card: oklch(0.185 0 0);
  --card-foreground: oklch(0.985 0 0);
  --popover: oklch(0.185 0 0);
  --popover-foreground: oklch(0.985 0 0);
  --primary: oklch(0.985 0 0);
  --primary-foreground: oklch(0.145 0 0);
  --secondary: oklch(0.24 0 0);
  --secondary-foreground: oklch(0.985 0 0);
  --muted: oklch(0.24 0 0);
  --muted-foreground: oklch(0.708 0 0);
  --accent: oklch(0.28 0 0);
  --accent-foreground: oklch(0.985 0 0);
  --destructive: oklch(0.704 0.191 22.216);
  --border: oklch(1 0 0 / 12%);
  --input: oklch(1 0 0 / 15%);
  --ring: oklch(0.556 0 0);
  --chart-1: oklch(0.985 0 0);
  --chart-2: oklch(0.82 0 0);
  --chart-3: oklch(0.68 0 0);
  --chart-4: oklch(0.52 0 0);
  --chart-5: oklch(0.36 0 0);
  --sidebar: oklch(0.115 0 0);
  --sidebar-foreground: oklch(0.92 0 0);
  --sidebar-primary: oklch(0.985 0 0);
  --sidebar-primary-foreground: oklch(0.145 0 0);
  --sidebar-accent: oklch(0.24 0 0);
  --sidebar-accent-foreground: oklch(0.985 0 0);
  --sidebar-border: oklch(1 0 0 / 12%);
  --sidebar-ring: oklch(0.556 0 0);
}

@layer base {
  * {
    @apply border-border outline-ring/50;
  }
  body {
    @apply bg-background text-foreground;
    font-feature-settings: "cv11", "ss01";
    -webkit-font-smoothing: antialiased;
    -webkit-user-select: text;
    user-select: text;
  }

  main,
  article,
  section,
  header,
  footer,
  nav,
  aside,
  p,
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  li,
  dt,
  dd,
  label,
  code,
  pre,
  blockquote {
    -webkit-user-select: text !important;
    user-select: text !important;
  }

  ::selection {
    background: var(--foreground);
    color: var(--background);
  }
}

@layer utilities {
  .network-grid {
    background-color: var(--network-surface);
    background-image:
      linear-gradient(to right, var(--network-grid) 1px, transparent 1px),
      linear-gradient(to bottom, var(--network-grid) 1px, transparent 1px);
    background-size: 2rem 2rem;
  }
}

/* ==========================================================================
   PNEUMA shared application primitives
   Typography hierarchy:
   Display — --pn-title-size / 700 / -0.04em / 1.02
   Heading — --pn-heading-size / 700 / -0.02em / 1.20
   Post title — --pn-posttitle-size / 650 / -0.01em / 1.35
   Body — --pn-body-size / 400 / 0 / 1.65
   Label — --pn-labels-size / 600 / 0.04em / 1.40
   Fine print — --pn-fineprint-size / 400 / 0.02em / 1.70
   ========================================================================== */
:root {
  color-scheme: light;
  --background: var(--pn-background);
  --foreground: var(--pn-foreground);
  --muted: var(--pn-muted-foreground);
  --surface: var(--pn-background);
  --border: var(--pn-border);
  --accent: var(--pn-accent);
  --container: 80rem;
}

.dark {
  color-scheme: dark;
  --pn-background: oklch(0 0 0);
  --pn-foreground: oklch(1 0 0);
  --pn-muted: oklch(0.145 0 0);
  --pn-muted-foreground: oklch(0.708 0 0);
  --pn-border: oklch(0.269 0 0);
  --pn-accent: oklch(0.922 0 0);
}

* { box-sizing: border-box; }
html { background: var(--pn-background); scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--pn-background); color: var(--pn-foreground); font-family: var(--pn-font-sans); font-size: var(--pn-body-size); line-height: var(--pn-body-line); text-rendering: optimizeLegibility; }
a { color: inherit; }
button { font: inherit; }
::selection { background: var(--pn-foreground); color: var(--pn-background); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.site-header { position: sticky; top: 0; z-index: 50; border-bottom: 1px solid var(--pn-border); background: color-mix(in srgb, var(--pn-background) 94%, transparent); backdrop-filter: blur(14px); }
.site-header__inner { display: flex; min-height: 72px; max-width: var(--container); margin: 0 auto; padding: 0 32px; align-items: center; justify-content: space-between; gap: 32px; }
.wordmark { display: flex; align-items: center; gap: 12px; font-size: var(--pn-labels-size); font-weight: 800; letter-spacing: .14em; text-decoration: none; }
.wordmark__logo { display: block; width: 38px; height: 32px; object-fit: contain; }
.nav { display: flex; align-items: center; gap: 24px; }
.nav a, .menu-button { border: 0; background: transparent; font-family: var(--pn-font-mono); font-size: var(--pn-labels-size); font-weight: var(--pn-labels-weight); letter-spacing: .04em; text-decoration: none; text-transform: uppercase; cursor: pointer; }
.nav a:hover, .nav a:focus-visible { text-decoration: underline; text-underline-offset: 5px; }
.theme-switch { display: flex; padding: 3px; border: 1px solid var(--pn-border); border-radius: var(--pn-radius); align-items: center; gap: 2px; background: var(--pn-background); }
.theme-switch__option { display: grid; width: 28px; height: 28px; padding: 0; place-items: center; border: 0; border-radius: calc(var(--pn-radius) - 2px); background: transparent; color: var(--pn-muted-foreground); cursor: pointer; }
.theme-switch__option svg { width: 14px; height: 14px; }
.theme-switch__option:hover, .theme-switch__option:focus-visible { color: var(--pn-foreground); }
.theme-switch__option[data-active] { background: var(--pn-foreground); color: var(--pn-background); }
.menu-button { display: none; }

.home { width: 100%; margin: 0; }
.home > .video-hero { width: 100vw; max-width: none; margin-inline: calc(50% - 50vw); }
.video-hero__media { position: relative; width: 100%; aspect-ratio: 16 / 9; max-height: calc(100svh - 72px); overflow: hidden; background: var(--pn-foreground); isolation: isolate; }
.video-hero__video { position: absolute; inset: 0; z-index: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity 900ms ease; }
.video-hero__video.is-active { z-index: 1; opacity: 1; }
.video-hero__shade { position: absolute; inset: 0; z-index: 2; background: linear-gradient(0deg, rgb(16 16 16 / 58%) 0%, rgb(16 16 16 / 12%) 40%, transparent 66%); pointer-events: none; }
.video-hero__overlay { position: absolute; z-index: 3; bottom: 32px; left: max(32px, calc((100vw - var(--container)) / 2 + 32px)); max-width: min(42rem, calc(100% - 64px)); margin: 0; color: #f8f7f3; font-size: clamp(1.25rem, 2.8vw, 2.75rem); font-weight: 700; letter-spacing: -.025em; line-height: 1.1; text-wrap: balance; }
.video-hero__control-row { position: relative; display: flex; min-height: 72px; padding: 0 32px; align-items: center; justify-content: center; border-bottom: 1px solid var(--pn-border); background: var(--pn-background); }
.video-hero__control-row .video-hero__controls { position: static; inset: auto; display: inline-flex; min-height: 38px; padding: 0 14px; align-items: center; justify-content: center; gap: 14px; border: 1px solid var(--pn-border); border-radius: 999px; background: var(--pn-background); color: var(--pn-foreground); box-shadow: 0 1px 0 color-mix(in srgb, var(--pn-foreground) 5%, transparent); }
.video-hero__toggle { display: grid; width: 26px; height: 26px; padding: 0; place-items: center; border: 0; border-radius: 999px; background: transparent; color: inherit; cursor: pointer; }
.video-hero__rule { width: 1px; height: 14px; background: var(--pn-border); }
.video-hero__dots { display: flex; align-items: center; gap: 10px; }
.video-hero__dot { width: 6px; height: 6px; padding: 0; border: 1px solid currentColor; border-radius: 999px; background: transparent; color: var(--pn-muted-foreground); cursor: pointer; transition: background 160ms ease, color 160ms ease, transform 160ms ease; }
.video-hero__dot[aria-current='true'] { background: var(--pn-foreground); color: var(--pn-foreground); transform: scale(1.35); }
.video-hero__toggle:hover, .video-hero__toggle:focus-visible, .video-hero__dot:hover, .video-hero__dot:focus-visible { outline: 1px solid currentColor; outline-offset: 3px; }
.home__copyright { max-width: var(--container); margin: 0 auto; padding: 20px 32px 0; font-family: var(--pn-font-mono); font-size: var(--pn-fineprint-size); line-height: 1.7; }

.hero { max-width: var(--container); margin: 0 auto; padding: 72px 32px 32px; }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(19rem, .65fr); min-height: 510px; border-bottom: 1px solid var(--pn-border); }
.hero__title { margin: 0; padding: 56px 56px 64px 0; align-self: end; font-size: var(--pn-title-size); font-weight: var(--pn-title-weight); letter-spacing: var(--pn-title-tracking); line-height: 1.02; text-wrap: balance; }
.hero__statement { display: flex; padding: 56px 0 56px 40px; border-left: 1px solid var(--pn-border); flex-direction: column; justify-content: flex-end; gap: 32px; }
.hero__statement p { margin: 0; max-width: 34rem; font-size: var(--pn-body-size); line-height: var(--pn-body-line); }
.hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 24px; }
.button { display: inline-flex; min-height: 44px; padding: 0 18px; align-items: center; justify-content: center; border: 1px solid currentColor; border-radius: var(--pn-radius); font-family: var(--pn-font-mono); font-size: var(--pn-labels-size); font-weight: var(--pn-labels-weight); letter-spacing: .03em; text-decoration: none; text-transform: uppercase; transition: background 180ms ease, color 180ms ease; }
.button--dark { background: var(--pn-foreground); color: var(--pn-background); }
.button--dark:hover { background: var(--pn-accent); border-color: var(--pn-accent); color: var(--pn-background); }
.button--light { background: var(--pn-background); color: var(--pn-foreground); }
.text-link { font-family: var(--pn-font-mono); font-size: var(--pn-labels-size); font-weight: var(--pn-labels-weight); letter-spacing: .03em; text-underline-offset: 5px; text-transform: uppercase; }

.manifesto { display: grid; max-width: var(--container); margin: 0 auto; padding: 128px 32px; grid-template-columns: minmax(0, 1.15fr) minmax(0, .72fr); gap: 48px; align-items: start; }
.manifesto h1, .manifesto h2 { margin: 0; font-size: var(--pn-title-size); font-weight: var(--pn-title-weight); letter-spacing: var(--pn-title-tracking); line-height: 1.05; text-wrap: balance; }
.manifesto > p:last-child, .manifesto > div { margin: 0; max-width: 38rem; font-size: var(--pn-body-size); line-height: var(--pn-body-line); }
.pillars { display: grid; max-width: var(--container); margin: 0 auto; padding: 0 32px 112px; grid-template-columns: repeat(3, 1fr); }
.pillar { min-height: 300px; padding: 28px; border: 1px solid var(--pn-border); border-right: 0; background: var(--pn-background); }
.pillar:last-child { border-right: 1px solid var(--pn-border); }
.pillar h3 { margin: 0 0 18px; font-size: var(--pn-heading-size); font-weight: var(--pn-heading-weight); letter-spacing: -.015em; line-height: 1.2; }
.pillar p { margin: 0; max-width: 25rem; color: var(--pn-muted-foreground); font-size: var(--pn-body-size); line-height: var(--pn-body-line); }

.journal { max-width: var(--container); margin: 0 auto; padding: 112px 32px; border-top: 1px solid var(--pn-border); }
.section-header { display: flex; margin-bottom: 56px; justify-content: space-between; align-items: end; gap: 40px; }
.section-header h2 { margin: 12px 0 0; font-size: var(--pn-title-size); font-weight: var(--pn-title-weight); letter-spacing: var(--pn-title-tracking); line-height: 1.05; }
.section-header > p { margin: 0; max-width: 34rem; color: var(--pn-muted-foreground); line-height: var(--pn-body-line); }
.editorial-grid { display: grid; grid-template-columns: repeat(3, 1fr); }
.editorial-card { display: flex; min-height: 360px; padding: 28px; border: 1px solid var(--pn-border); border-right: 0; background: var(--pn-background); flex-direction: column; }
.editorial-card:last-child { border-right: 1px solid var(--pn-border); }
.editorial-card h3 { margin: auto 0 18px; font-size: var(--pn-posttitle-size); font-weight: var(--pn-posttitle-weight); letter-spacing: -.01em; line-height: 1.35; }
.editorial-card p { margin: 0 0 28px; color: var(--pn-muted-foreground); line-height: var(--pn-body-line); }
.closing { display: flex; min-height: 480px; padding: 72px max(32px, calc((100vw - var(--container)) / 2 + 32px)); background: var(--pn-foreground); color: var(--pn-background); flex-direction: column; justify-content: space-between; align-items: flex-start; }
.closing h2 { margin: 0; max-width: 15ch; font-size: var(--pn-title-size); font-weight: var(--pn-title-weight); letter-spacing: var(--pn-title-tracking); line-height: 1.05; }

.site-footer { padding: 64px max(32px, calc((100vw - var(--container)) / 2 + 32px)) 40px; border-top: 1px solid var(--pn-border); background: var(--pn-background); }
.site-footer__lead { display: flex; min-height: 160px; align-items: flex-start; justify-content: space-between; gap: 40px; }
.site-footer__lead > p:last-child { margin: 0; max-width: 18ch; font-size: var(--pn-heading-size); font-weight: var(--pn-heading-weight); letter-spacing: -.02em; }
.site-footer__grid { display: grid; padding-top: 28px; border-top: 1px solid var(--pn-border); grid-template-columns: .6fr 1.2fr .8fr; gap: 48px; font-family: var(--pn-font-mono); font-size: var(--pn-fineprint-size); line-height: 1.7; }
.site-footer nav { display: flex; flex-direction: column; align-items: flex-start; }
.site-footer p { margin: 0 0 8px; }

.about-page { max-width: var(--container); margin: 0 auto; padding: 96px 32px 112px; }
.about-statement { display: grid; padding-bottom: 96px; grid-template-columns: minmax(0, 1.15fr) minmax(0, .72fr); gap: 48px; align-items: start; }
.about-statement h1 { margin: 0; font-size: 1.875rem; font-weight: 700; letter-spacing: 0; line-height: 1.2; text-wrap: balance; }
.about-statement__intro { display: flex; flex-direction: column; gap: 24px; }
.about-statement__intro p { margin: 0; max-width: 40rem; color: var(--pn-muted-foreground); font-size: var(--pn-body-size); line-height: var(--pn-body-line); }
.about-statement__body { color: var(--pn-muted-foreground); font-size: var(--pn-body-size); line-height: var(--pn-body-line); }
.about-statement__body p { margin: 0 0 1.5rem; }
.about-statement__body p:last-child { margin-bottom: 0; }
.about-board { padding-top: 96px; border-top: 1px solid var(--pn-border); scroll-margin-top: 96px; }
.board-page__header { display: grid; padding-bottom: 64px; border-bottom: 1px solid var(--pn-border); grid-template-columns: minmax(0, 1.15fr) minmax(0, .72fr); gap: 48px; align-items: end; }
.board-page__header h2 { margin: 0; font-size: var(--pn-title-size); font-weight: var(--pn-title-weight); letter-spacing: var(--pn-title-tracking); line-height: 1.05; text-wrap: balance; }
.board-page__header > p:last-child { margin: 0; max-width: 34rem; color: var(--pn-muted-foreground); font-size: var(--pn-body-size); line-height: var(--pn-body-line); }
.board-grid { display: grid; padding-top: 64px; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.board-card { display: flex; min-width: 0; overflow: hidden; border: 1px solid var(--pn-border); background: var(--pn-background); flex-direction: column; }
.board-card__image { overflow: hidden; aspect-ratio: 1; border-bottom: 1px solid var(--pn-border); background: var(--pn-muted); }
.board-card__image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.board-card__image--empty { min-height: 0; }
.board-card__content { display: flex; min-height: 280px; padding-block: 28px; padding-inline: 0; flex-direction: column; align-items: flex-start; }
.board-card h3 { margin: 0 0 8px; font-size: var(--pn-posttitle-size); font-weight: var(--pn-posttitle-weight); letter-spacing: -.01em; line-height: 1.2; text-wrap: balance; }
.board-card__content > p { margin: 0; color: var(--pn-muted-foreground); line-height: var(--pn-body-line); }
.board-card__bio { padding-top: 24px; color: var(--pn-muted-foreground); line-height: var(--pn-body-line); }
.board-card__bio p { margin: 0 0 16px; }
.board-card__bio p:last-child { margin-bottom: 0; }
.board-status { display: grid; min-height: 360px; padding: 56px 0; border-bottom: 1px solid var(--pn-border); grid-template-columns: minmax(0, 1.15fr) minmax(0, .72fr); gap: 48px; align-items: start; }
.board-status h2 { margin: 0; max-width: 15ch; font-size: var(--pn-heading-size); font-weight: var(--pn-heading-weight); line-height: 1.2; text-wrap: balance; }
.board-status > p:last-child { margin: 0; color: var(--pn-muted-foreground); }

@media (max-width: 900px) {
  .hero__grid, .manifesto { grid-template-columns: 1fr; }
  .hero__grid { min-height: auto; }
  .hero__title { padding: 72px 0; }
  .hero__statement { padding: 40px 0; border-top: 1px solid var(--pn-border); border-left: 0; }
  .manifesto { padding-block: 96px; }
  .pillars, .editorial-grid { grid-template-columns: 1fr; }
  .pillar, .editorial-card { min-height: 260px; border-right: 1px solid var(--pn-border); border-bottom: 0; }
  .pillar:last-child, .editorial-card:last-child { border-bottom: 1px solid var(--pn-border); }
  .section-header, .site-footer__lead { align-items: flex-start; flex-direction: column; }
  .site-footer__grid { grid-template-columns: 1fr; }
  .about-statement, .board-page__header, .board-status { grid-template-columns: 1fr; }
  .board-page__header { align-items: start; }
  .board-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


@media (max-width: 720px) {
  .site-header__inner { min-height: 64px; padding-inline: 20px; }
  .home { padding: 0 20px; }
  .video-hero__media { max-height: calc(100svh - 64px); }
  .video-hero__overlay { bottom: 88px; left: 20px; max-width: calc(100% - 40px); }
  .video-hero__controls { right: 16px; bottom: 16px; left: 16px; justify-content: space-between; }
  .home__copyright { padding-top: 16px; }
  .menu-button { display: block; }
  .nav { position: absolute; top: 64px; right: 0; left: 0; display: none; padding: 28px 20px; border-bottom: 1px solid var(--pn-border); background: var(--pn-background); align-items: flex-start; flex-direction: column; }
  .nav--open { display: flex; }
  .hero { padding: 40px 20px 24px; }
  .hero__title { padding: 56px 0; font-size: clamp(2.75rem, 15vw, var(--pn-title-size)); }
  .manifesto, .journal { padding: 72px 20px; }
  .pillars { padding: 0 20px 72px; }
  .closing { min-height: 420px; padding: 56px 20px; }
  .site-footer { padding: 56px 20px 32px; }
  .about-page { padding: 64px 20px 72px; }
  .about-statement { padding-bottom: 64px; gap: 32px; }
  .about-board { padding-top: 64px; scroll-margin-top: 72px; }
  .board-page__header { padding-bottom: 48px; gap: 24px; }
  .board-grid { padding-top: 48px; grid-template-columns: 1fr; gap: 20px; }
  .board-card__content { min-height: 0; padding-block: 24px; padding-inline: 0; }
  .board-status { min-height: 300px; padding: 48px 0; gap: 24px; }
}

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