/* Lingacat — site stylesheet. Tokens and components come from the Lingacat design system. */

/* ---------- Fonts (self-hosted, SIL Open Font License; see ../fonts/LICENSE-*.txt) ---------- */
@font-face{font-family:"Big Shoulders Display";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/big-shoulders-display-latin-wght-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Big Shoulders Display";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/big-shoulders-display-latin-ext-wght-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Archivo";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/archivo-latin-wght-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Archivo";font-style:normal;font-display:swap;font-weight:100 900;src:url("../fonts/archivo-latin-ext-wght-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/ibm-plex-mono-latin-ext-400-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/ibm-plex-mono-latin-ext-500-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-display:swap;font-weight:600;src:url("../fonts/ibm-plex-mono-latin-600-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"IBM Plex Mono";font-style:normal;font-display:swap;font-weight:600;src:url("../fonts/ibm-plex-mono-latin-ext-600-normal.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Permanent Marker";font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/permanent-marker-latin-400-normal.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Tokens ---------- */
:root{--paper:#eeebe4;--paper-raised:#f8f6f1;--paper-sunken:#e2ddd3;--ink:#151413;--ink-muted:#5b564f;--rule:#c9c2b5;--signal:#c0261b;--on-signal:#ffffff;--signal-deep:#9e1f16;--lens:#0b5c96;--ember:#d56c1b;--screen:#151413;--screen-ink:#eeebe4;--focus-ring:#0b5c96;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--space-32:128px;--radius-0:0px;--radius-sm:2px;--radius-full:999px;--stroke-hairline:1px;--stroke-control:2px;--stroke-bar:4px;--measure:68ch;--container:1280px;--font-display:"Big Shoulders Display","Arial Narrow",sans-serif;--font-sans:Archivo,"Helvetica Neue",Arial,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--font-hand:"Permanent Marker","Marker Felt",cursive}
[data-theme="dark"]{--paper:#121110;--paper-raised:#1c1a18;--paper-sunken:#0a0909;--ink:#eeebe4;--ink-muted:#a49e94;--rule:#3a3530;--signal:#ec5340;--on-signal:#151413;--signal-deep:#c0261b;--lens:#2eb6e8;--ember:#f0902e;--screen:#0a0909;--screen-ink:#eeebe4;--focus-ring:#2eb6e8}


/* ---------- Components (from the Lingacat design system) ---------- */

.lc-root, .lc-root * { box-sizing: border-box; }
.lc-root {
  background: var(--paper);
  color: var(--ink);
  font-family: var(--font-sans);
  font-size: 17px;
  line-height: 27px;
  -webkit-font-smoothing: antialiased;
}

/* ---------- focus ---------- */
.lc-btn:focus-visible, .lc-link:focus-visible, .lc-nav a:focus-visible,
.lc-field input:focus-visible, .lc-field textarea:focus-visible, .lc-service-row:focus-visible {
  outline: var(--stroke-control) solid var(--focus-ring);
  outline-offset: var(--stroke-control);
  box-shadow: 0 0 0 var(--stroke-control) var(--paper);
}

/* ---------- Button ---------- */
.lc-btn {
  display: inline-flex; align-items: center; gap: var(--space-2);
  padding: var(--space-3) var(--space-6);
  border: var(--stroke-control) solid var(--signal);
  border-radius: var(--radius-0);
  background: var(--signal); color: var(--on-signal);
  font-family: var(--font-mono); font-size: 13px; line-height: 16px; font-weight: 600;
  letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none;
  cursor: pointer;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.lc-btn:hover { background: var(--signal-deep); border-color: var(--signal-deep); }
.lc-btn .lc-btn__arrow { transition: transform .15s ease; }
.lc-btn:hover .lc-btn__arrow { transform: translateX(3px); }
.lc-btn--ghost { background: transparent; color: var(--ink); border-color: var(--ink); }
.lc-btn--ghost:hover { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.lc-btn--text { background: transparent; border-color: transparent; color: var(--ink); padding-left: 0; padding-right: 0; }
.lc-btn--text:hover { background: transparent; border-color: transparent; color: var(--signal); }

/* ---------- Link ---------- */
.lc-link {
  color: var(--lens); text-decoration: underline;
  text-decoration-thickness: 1px; text-underline-offset: 3px;
}
.lc-link:hover { text-decoration-thickness: 2px; }

/* ---------- Timecode ---------- */
.lc-tc {
  display: inline-flex; align-items: center; gap: var(--space-2);
  font-family: var(--font-mono); font-size: 13px; line-height: 16px; font-weight: 500;
  letter-spacing: 0.04em; font-variant-numeric: tabular-nums;
  color: var(--ink-muted);
}
.lc-tc b { font-weight: 500; color: var(--ink); }
.lc-tc .lc-tc__frame { color: var(--signal); }
.lc-tc .lc-tc__rec {
  width: 8px; height: 8px; border-radius: var(--radius-full); background: var(--signal); flex: none;
}
.lc-tc--boxed {
  padding: var(--space-1) var(--space-2);
  border: var(--stroke-hairline) solid var(--ink); border-radius: var(--radius-sm);
}
.lc-tc .lc-tc__arrow { color: var(--ink-muted); }

/* ---------- Label (eyebrow) ---------- */
.lc-label {
  font-family: var(--font-mono); font-size: 12px; line-height: 16px; font-weight: 500;
  letter-spacing: 0.1em; text-transform: uppercase; color: var(--ink-muted);
}

/* ---------- Section head ---------- */
.lc-section-head {
  display: grid; grid-template-columns: auto 1fr; column-gap: var(--space-8); align-items: end;
  border-top: var(--stroke-bar) solid var(--ink); padding-top: var(--space-4);
}
.lc-section-head__num {
  font-family: var(--font-display); font-weight: 900; font-size: 176px; line-height: .82;
  letter-spacing: -0.01em; color: var(--signal);
}
.lc-section-head__meta { display: flex; flex-direction: column; gap: var(--space-2); padding-bottom: var(--space-2); }
.lc-section-head__title {
  margin: 0; font-family: var(--font-display); font-weight: 800; font-size: 72px; line-height: .9;
  letter-spacing: 0.005em; text-transform: uppercase; color: var(--ink);
}
@media (max-width: 640px) {
  .lc-section-head { column-gap: var(--space-4); }
  .lc-section-head__num { font-size: 96px; }
  .lc-section-head__title { font-size: 40px; }
}

/* ---------- Subtitle block (SRT cue) ---------- */
.lc-srt {
  font-family: var(--font-mono); font-size: 16px; line-height: 26px;
  background: var(--paper-raised); color: var(--ink);
  padding: var(--space-4) var(--space-6);
}
.lc-srt__cue + .lc-srt__cue { margin-top: var(--space-4); }
.lc-srt__index { color: var(--ink-muted); }
.lc-srt__time { color: var(--ink-muted); letter-spacing: .02em; }
.lc-srt__time b { color: var(--signal); font-weight: 500; }
.lc-srt__text { margin: 0; }
.lc-srt__cue--active .lc-srt__text span {
  background: var(--ink); color: var(--paper); padding: 2px var(--space-2);
  -webkit-box-decoration-break: clone; box-decoration-break: clone;
}
.lc-srt__cue--active .lc-srt__index { color: var(--signal); }

/* ---------- Service row ---------- */
.lc-services { list-style: none; margin: 0; padding: 0; border-top: var(--stroke-control) solid var(--ink); }
.lc-service-row {
  display: grid; grid-template-columns: 136px 1fr auto; gap: var(--space-6); align-items: baseline;
  padding: var(--space-6) 0; border-bottom: var(--stroke-hairline) solid var(--rule);
  color: var(--ink); text-decoration: none;
}
.lc-service-row__num { white-space: nowrap; font-family: var(--font-mono); font-size: 13px; line-height: 16px; font-weight: 500; letter-spacing: .04em; color: var(--signal); }
.lc-service-row__title {
  margin: 0; font-family: var(--font-display); font-weight: 800; font-size: 44px; line-height: .95;
  letter-spacing: .01em; text-transform: uppercase; transition: color .15s ease;
}
.lc-service-row__desc { margin: var(--space-2) 0 0; color: var(--ink-muted); max-width: var(--measure); }
.lc-service-row__go { font-family: var(--font-mono); font-size: 13px; color: var(--ink); transition: transform .15s ease; }
a.lc-service-row:hover .lc-service-row__title { color: var(--signal); }
a.lc-service-row:hover .lc-service-row__go { transform: translateX(4px); }
.lc-service-row--minor .lc-service-row__title { font-size: 28px; line-height: 1; font-weight: 700; letter-spacing: .02em; }
@media (max-width: 640px) {
  .lc-service-row { grid-template-columns: 1fr auto; }
  .lc-service-row__num { grid-column: 1 / -1; }
  .lc-service-row__title { font-size: 32px; }
}

/* ---------- Screen band ---------- */
.lc-screen { background: var(--screen); color: var(--screen-ink); }
.lc-screen .lc-label, .lc-screen .lc-tc { color: var(--screen-ink); opacity: .8; }

/* ---------- Waveform ---------- */
.lc-wave { display: block; width: 100%; height: 48px; }
.lc-wave .bar { fill: var(--ink); }
.lc-wave .bar--hot { fill: var(--signal); }
.lc-wave .bar--warm { fill: var(--ember); }
.lc-wave .playhead { fill: var(--lens); }

/* ---------- Hand note ---------- */
.lc-note {
  font-family: var(--font-hand); font-size: 26px; line-height: 28px; color: var(--ink);
  display: inline-block; transform: rotate(-6deg); text-transform: uppercase;
}

/* ---------- Nav ---------- */
.lc-nav {
  display: flex; align-items: center; justify-content: space-between; gap: var(--space-6);
  padding: var(--space-4) var(--space-8); border-bottom: var(--stroke-hairline) solid var(--rule);
  background: var(--paper);
}
.lc-nav__brand { display: inline-flex; align-items: center; gap: var(--space-3); color: var(--ink); text-decoration: none; }
.lc-nav__brand img { width: 36px; height: auto; display: block; }
.lc-nav__word { font-family: var(--font-display); font-weight: 900; font-size: 28px; line-height: 1; letter-spacing: .02em; text-transform: uppercase; }
.lc-nav__links { display: flex; gap: var(--space-6); list-style: none; margin: 0; padding: 0; }
.lc-nav__links a {
  font-family: var(--font-mono); font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: .1em;
  text-transform: uppercase; color: var(--ink); text-decoration: none; padding: var(--space-1) 0;
  border-bottom: var(--stroke-control) solid transparent;
}
.lc-nav__links a:hover { border-bottom-color: var(--ink); }
.lc-nav__links a[aria-current="page"] { border-bottom-color: var(--signal); }
@media (max-width: 760px) { .lc-nav__links { display: none; } }

/* ---------- Field ---------- */
.lc-field { display: flex; flex-direction: column; gap: var(--space-2); }
.lc-field label { font-family: var(--font-mono); font-size: 12px; line-height: 16px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--ink); }
.lc-field input, .lc-field textarea {
  font: inherit; color: var(--ink); background: var(--paper-raised);
  border: var(--stroke-control) solid var(--ink); border-radius: var(--radius-sm);
  padding: var(--space-3) var(--space-4);
}
.lc-field input::placeholder, .lc-field textarea::placeholder { color: var(--ink-muted); }
.lc-field__hint { font-size: 14px; line-height: 21px; color: var(--ink-muted); }

/* ---------- Photo (B&W treatment) ---------- */
.lc-photo { position: relative; margin: 0; }
.lc-photo img { display: block; width: 100%; height: auto; background: var(--screen); filter: grayscale(1) contrast(1.12) brightness(.96); }
.lc-photo figcaption { display: flex; justify-content: space-between; gap: var(--space-4); padding: var(--space-2) 0 0; }

@media (prefers-reduced-motion: reduce) {
  .lc-btn, .lc-btn .lc-btn__arrow, .lc-service-row__title, .lc-service-row__go { transition: none; }
}

/* ---------- Workflow (edit timeline: human track over AI track) ---------- */
.lc-flow { --flow-cols: 1fr 1.1fr 2fr 1.4fr 1.5fr 1.1fr .9fr; }
.lc-flow__timeline { display: grid; grid-template-columns: 88px var(--flow-cols); row-gap: var(--space-2); column-gap: var(--space-1); position: relative; }
.lc-flow__tick {
  font-family: var(--font-mono); font-size: 11px; line-height: 16px; letter-spacing: .04em; font-variant-numeric: tabular-nums;
  color: var(--ink-muted); border-left: var(--stroke-hairline) solid var(--ink); padding: 0 0 var(--space-1) var(--space-1);
}
.lc-flow__track {
  font-family: var(--font-mono); font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase;
  color: var(--ink); align-self: center;
}
.lc-flow__track small { display: block; font-weight: 400; color: var(--ink-muted); letter-spacing: .04em; }
.lc-flow__clip {
  min-height: 64px; padding: var(--space-2) var(--space-3);
  display: flex; flex-direction: column; justify-content: space-between; gap: var(--space-1);
  font-family: var(--font-mono); font-size: 12px; line-height: 16px; letter-spacing: .06em; text-transform: uppercase;
}
.lc-flow__clip b { font-family: var(--font-display); font-size: 22px; line-height: 1; font-weight: 800; letter-spacing: .02em; }
.lc-flow__clip--human { background: var(--ink); color: var(--paper); }
.lc-flow__clip--human .n { color: var(--paper); opacity: .7; }
.lc-flow__clip--ai { background: var(--paper-raised); color: var(--ink); border: var(--stroke-control) dashed var(--ink); }
.lc-flow__clip--opt { background: transparent; color: var(--ink); border: var(--stroke-control) solid var(--ink); }
.lc-flow__gap { min-height: 64px; border-top: var(--stroke-hairline) solid var(--rule); align-self: center; min-height: 0; }
.lc-flow__playhead { position: absolute; top: 0; bottom: 0; width: 2px; background: var(--lens); pointer-events: none; }
.lc-flow__playhead::before { content: ""; position: absolute; top: 0; left: -5px; border: 6px solid transparent; border-top: 8px solid var(--lens); }

.lc-flow__steps { list-style: none; margin: var(--space-12) 0 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: var(--space-8) var(--space-8); counter-reset: none; }
.lc-flow__step { border-top: var(--stroke-control) solid var(--ink); padding-top: var(--space-3); }
.lc-flow__step--ai { border-top-style: dashed; }
.lc-flow__meta { display: flex; justify-content: space-between; gap: var(--space-2); font-family: var(--font-mono); font-size: 12px; line-height: 16px; letter-spacing: .1em; text-transform: uppercase; color: var(--ink-muted); }
.lc-flow__meta .who { color: var(--ink); font-weight: 600; }
.lc-flow__meta .who--ai { color: var(--ink-muted); font-weight: 500; }
.lc-flow__step h3 { margin: var(--space-2) 0 var(--space-1); font-family: var(--font-display); font-weight: 800; font-size: 28px; line-height: 1; letter-spacing: .02em; text-transform: uppercase; }
.lc-flow__step h3 .num { color: var(--signal); margin-right: var(--space-2); }
.lc-flow__step p { margin: 0; font-size: 15px; line-height: 24px; color: var(--ink-muted); }

@media (max-width: 720px) {
  .lc-flow__timeline { display: none; }
  .lc-flow__steps { margin-top: 0; grid-template-columns: 1fr; gap: var(--space-6); }
}

/* ---------- Page layout ---------- */
a{color:var(--lens)}a:hover{color:var(--ink)}
.nav-sub{font-family:var(--font-mono);font-size:10px;line-height:12px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}
.wrap{max-width:var(--container);margin:0 auto;padding:0 var(--space-8)}
.sec{padding:var(--space-32) 0 0}
.two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--space-16);align-items:start}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-12);align-items:start;padding:var(--space-24) 0 var(--space-16)}
.h1{margin:0;font-family:var(--font-display);font-weight:900;font-size:clamp(64px,6.8vw,116px);line-height:.84;letter-spacing:0;text-transform:uppercase;color:var(--ink)}
.h1 em{font-style:normal;color:var(--signal)}
.lead{font-size:22px;line-height:32px;max-width:34ch;margin:var(--space-8) 0 0}
.row{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center}
.monitor{position:relative;aspect-ratio:16/9;background:var(--screen);color:var(--screen-ink);overflow:hidden}
.monitor__bar{position:absolute;left:0;right:0;top:0;display:flex;justify-content:space-between;padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:11px;line-height:16px;letter-spacing:.1em;text-transform:uppercase;font-variant-numeric:tabular-nums}
.monitor__bar b{font-weight:500;color:var(--signal)}
.monitor__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(1) contrast(1.08) brightness(.8)}
.monitor__bar{z-index:2;background:#0000008c;color:#eeebe4}
.monitor__safe{position:absolute;inset:10% 8%;border:1px dashed var(--screen-ink);opacity:.28}
.monitor__cross{position:absolute;left:50%;top:44%;width:24px;height:24px;margin:-12px 0 0 -12px;opacity:.35}
.monitor__cross::before,.monitor__cross::after{content:"";position:absolute;background:var(--screen-ink)}
.monitor__cross::before{left:11px;top:0;width:2px;height:24px}
.monitor__cross::after{top:11px;left:0;height:2px;width:24px}
.monitor__sub{position:absolute;left:0;right:0;bottom:14%;text-align:center;font-family:var(--font-sans);font-weight:600;font-size:clamp(13px,1.3vw,19px);line-height:1.3;color:#ffffff;text-shadow:0 1px 2px #000000}
.cap{display:flex;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-3)}
.src{margin-top:var(--space-4);font-family:var(--font-mono);font-size:13px;line-height:20px;color:var(--ink-muted)}
.src b{color:var(--ink);font-weight:500}
.intro{font-size:22px;line-height:32px;margin:0;max-width:40ch}
.track{background:var(--screen);color:var(--screen-ink);margin-top:var(--space-32);padding:var(--space-24) 0}
.track .lc-section-head{border-top-color:var(--screen-ink)}
.track .lc-section-head__title{color:var(--screen-ink)}
.track .lc-label{color:var(--screen-ink);opacity:.75}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-8);margin-top:var(--space-16);border-top:1px solid var(--screen-ink);padding-top:var(--space-6)}
.fact__v{font-family:var(--font-display);font-weight:900;font-size:64px;line-height:.9;text-transform:uppercase}
.fact__l{font-family:var(--font-mono);font-size:12px;line-height:18px;letter-spacing:.1em;text-transform:uppercase;margin-top:var(--space-2);opacity:.8}
.cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-12);margin-top:var(--space-16)}
.cols h3{margin:0 0 var(--space-3);font-family:var(--font-display);font-weight:800;font-size:28px;line-height:1;letter-spacing:.02em;text-transform:uppercase}
.cols p{margin:0;font-size:16px;line-height:26px;opacity:.85}
.photo-ph{aspect-ratio:4/5;background:var(--paper-sunken);border:2px dashed var(--ink);display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-8);font-family:var(--font-mono);font-size:13px;line-height:20px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)}
.about p{margin:0 0 var(--space-6);max-width:var(--measure)}
.cta{margin-top:var(--space-32);background:var(--paper-sunken);padding:var(--space-24) 0 var(--space-16)}
.cta__h{margin:0;font-family:var(--font-display);font-weight:900;font-size:clamp(56px,7vw,112px);line-height:.86;text-transform:uppercase}
.cta__h em{font-style:normal;color:var(--signal)}
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6)}
.form .full{grid-column:1/-1}
.contact dt{margin-top:var(--space-6)}
.contact dd{margin:var(--space-1) 0 0;font-size:18px;line-height:28px}
.foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--rule);margin-top:var(--space-24);padding-top:var(--space-6)}
.two--about{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
@media (max-width:960px){
.hero,.two,.two--about{grid-template-columns:minmax(0,1fr)}
.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.cols{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
.wrap{padding:0 var(--space-4)}
.sec{padding-top:var(--space-16)}
.hero{padding:var(--space-12) 0 var(--space-12)}
.form{grid-template-columns:minmax(0,1fr)}
.fact__v{font-size:48px}
.track,.cta{margin-top:var(--space-16);padding:var(--space-16) 0}
}


/* ---------- Site additions ---------- */
html{scroll-behavior:smooth;scroll-padding-top:96px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper)}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--ink);color:var(--paper);padding:8px 16px;font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.1em}
.skip:focus{left:8px}
.lc-nav{position:sticky;top:0;z-index:50}
.nav-toggle{display:none;font:500 12px/16px var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:transparent;color:var(--ink);border:2px solid var(--ink);padding:10px 14px;cursor:pointer}
.nav-cta{display:inline-flex}
@media (max-width:760px){
 .nav-toggle{display:inline-flex}
 .nav-cta{display:none}
 .lc-nav{flex-wrap:wrap;padding:var(--space-3) var(--space-4)}
 .lc-nav.is-open .lc-nav__links{display:flex;flex-direction:column;gap:var(--space-4);width:100%;padding:var(--space-4) 0 var(--space-2)}
}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.form-status{grid-column:1/-1;margin:0;font-size:15px;line-height:24px;min-height:24px}
.form-status.is-ok{color:var(--ink)}
.form-status.is-error{color:var(--signal)}
.lc-btn[disabled]{opacity:.6;cursor:progress}
.lc-field input:invalid:not(:placeholder-shown){border-color:var(--signal)}
