/* Self-hosted latin subsets, fetched from the Google Fonts CSS API with a
     modern browser UA and kept with their original unicode-range. Serving them
     from careva.uk removes the only third-party origin, which is what lets the
     CSP keep style-src and font-src at 'self' — Google's Fonts CSS varies by
     user-agent and so is the one subresource that cannot be SRI-pinned.
     Archivo is a variable font: one file covers every weight the design uses,
     so it is declared once with a weight RANGE rather than five times. */
  @font-face { font-family: Archivo; font-style: normal; font-weight: 400 800; font-display: swap; src: url(/assets/fonts/archivo.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-weight: 400; font-display: swap; src: url(/assets/fonts/ibm-plex-mono-400.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-weight: 500; font-display: swap; src: url(/assets/fonts/ibm-plex-mono-500.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; }
  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body { margin: 0; background: oklch(0.985 0 0); color: oklch(0.17 0.01 260); font-family: Archivo, Helvetica, sans-serif; -webkit-font-smoothing: antialiased; }
  a { color: oklch(0.52 0.19 28); text-decoration: none; }
  a:hover { color: oklch(0.38 0.14 28); }
  p { text-wrap: pretty; }
  /* Reflow at 320px with 200% text. Three separate causes, measured:
     1. A flex or grid item defaults to min-width:auto, i.e. min-content. For an
        unbreakable token (the CAREVA wordmark, an email address, a one-word
        heading) that is the whole string, so the item overflows and the
        overflow-x:hidden wrapper clips it. `anywhere` — not `break-word` —
        is the one that also shrinks the min-content contribution.
     2. The CTA links are flex:0 0 auto, so they cannot shrink below their
        max-content width; max-width:100% caps them at the container.
     3. A bare <input> carries a default intrinsic width of about 20 characters,
        which becomes the grid item's min-content size. */
  h1, h2, h3, a, address { overflow-wrap: anywhere; }
  p, li { overflow-wrap: break-word; }
  a, button { max-width: 100%; }
  input, select, textarea { min-width: 0; max-width: 100%; }
  input, textarea, select { font-family: Archivo, Helvetica, sans-serif; }
  input:focus, textarea:focus, select:focus { outline: 2px solid oklch(0.52 0.19 28); outline-offset: 2px; }
  :focus-visible { outline: 2px solid oklch(0.52 0.19 28); outline-offset: 2px; }
  /* Skip link: off-screen until focused, then pinned to the top-left. */
  .skip-link { position: absolute; left: -9999px; top: 0; z-index: 10; padding: 12px 18px; background: oklch(0.17 0.01 260); color: oklch(0.985 0 0); font-family: 'IBM Plex Mono', monospace; font-size: 13px; text-transform: uppercase; }
  .skip-link:focus { left: 0; color: oklch(0.985 0 0); }
  /* Tap targets: 44px minimum on coarse pointers, desktop untouched because
     the query only matches a coarse pointer.
     The selectors are tripled to specificity (0,3,0) on purpose: the extracted
     per-element classes are (0,2,0) and sit LATER in this stylesheet, so a
     single or doubled class here would lose to a link's own padding and the
     rule would silently do nothing.
     Three variants, because one shape does not fit every link:
       .tap      bare links with no padding or margin of their own. Padding is
                 offset by an equal negative margin, so the hit area grows
                 around the text and the text does not move.
       .tap-pad  links that already carry their own padding (the policy strip,
                 the on-this-page chips). Only the vertical padding is raised;
                 there is no margin to trade against, so these rows do get
                 taller — on coarse pointers only.
       .tap-top  links whose underline is a bottom border and which space
                 themselves with margin-top. The margin is traded for an equal
                 padding-top: same text position, same total space, taller box.
     Known limitation: in the footer's vertical link lists the 10px gap is
     smaller than the padding, so neighbouring hit areas overlap. Genuinely
     separating them needs more spacing, which is a design decision. */
  @media (pointer: coarse) {
    .tap.tap.tap { padding-block: 15px; margin-block: -15px; }
    .tap-pad.tap-pad.tap-pad { padding-block: 15px; }
    .tap-top.tap-top.tap-top { padding-top: 22px; margin-top: 0; }
  }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
  }
.c00ccd56.c00ccd56{display:inline-block; margin-top:22px; font-family:'IBM Plex Mono',monospace; font-size:13px; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; border-bottom:2px solid currentColor; padding-bottom:3px}
.c0126146.c0126146{padding:clamp(22px,3vw,32px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); border-bottom:1px solid oklch(0.17 0.01 260 / 0.18)}
.c014628d.c014628d{margin:20px 0 0; max-width:44ch; font-size:16.5px; line-height:1.6; color:oklch(0.84 0.01 260)}
.c0168f3c.c0168f3c{margin:0; font-size:15.5px; line-height:1.6; color:oklch(0.84 0.01 260)}
.c02fab51.c02fab51{margin-top:clamp(28px,4vw,44px); padding-top:20px; border-top:1px solid oklch(0.17 0.01 260 / 0.18); font-family:'IBM Plex Mono',monospace; font-size:11.5px; color:oklch(0.48 0.01 260)}
.c06a0187.c06a0187{font-family:'IBM Plex Mono',monospace; font-size:11.5px; text-transform:uppercase; color:oklch(0.48 0.01 260); margin-bottom:7px}
.c06f770a.c06f770a{display:flex; flex-wrap:wrap; gap:1px; background:oklch(0.17 0.01 260 / 0.2); border-bottom:3px solid oklch(0.17 0.01 260); font-family:'IBM Plex Mono',monospace; font-size:11.5px; letter-spacing:0.02em; text-transform:uppercase; padding-inline:max(0px, (100% - 1180px) / 2)}
.c072bed2.c072bed2{display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:4px}
.c07b3a4b.c07b3a4b{font-family:'IBM Plex Mono',monospace; font-size:11.5px; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:oklch(0.45 0.01 260); padding-bottom:12px; border-bottom:1px solid oklch(0.17 0.01 260 / 0.2); margin:0 0 22px}
.c08cf9d9.c08cf9d9{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; color:oklch(0.52 0.19 28); margin-bottom:26px}
.c09fd386.c09fd386{margin:0; flex:1 1 300px; min-width:0; max-width:44ch; font-size:16.5px; line-height:1.65; color:oklch(0.38 0.01 260)}
.c0b52631.c0b52631{margin:18px 0 0; max-width:44ch; font-size:16.5px; line-height:1.6; color:oklch(0.35 0.01 260)}
.c0cc9c57.c0cc9c57{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.02em; text-transform:uppercase; color:oklch(0.35 0.01 260); margin-bottom:10px}
.c0d17ed3.c0d17ed3{font-family:'IBM Plex Mono',monospace; font-size:11.5px; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:oklch(0.45 0.01 260); padding-bottom:12px; border-bottom:1px solid oklch(0.17 0.01 260 / 0.2)}
.c0ecf57c.c0ecf57c{margin:0; max-width:17ch; font-weight:800; font-size:clamp(38px,7.5vw,92px); line-height:0.94; letter-spacing:-0.042em; text-transform:uppercase}
.c0fa0f09.c0fa0f09{flex:1 1 260px; min-width:0}
.c12704ed.c12704ed{margin:20px 0 0; max-width:48ch; font-size:16.5px; line-height:1.6; color:oklch(0.84 0.01 260)}
.c1315556.c1315556{position:absolute; left:-9999px; width:1px; height:1px; opacity:0}
.c150e3ab.c150e3ab{margin:clamp(40px,6vw,72px) 0 0; padding-top:clamp(28px,4vw,44px); border-top:1px solid oklch(0.985 0 0 / 0.25)}
.c165911d.c165911d{padding:clamp(44px,6vw,88px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2)}
.c172bb05.c172bb05{margin:0; max-width:20ch; font-weight:800; font-size:clamp(24px,3.4vw,42px); line-height:1.04; letter-spacing:-0.035em; text-transform:uppercase}
.c1750785.c1750785{flex:1 1 240px; min-width:0; border-top:3px solid oklch(0.52 0.19 28); padding-top:18px}
.c17c5ae1.c17c5ae1{font-style:normal; font-size:16px; line-height:1.65; color:oklch(0.28 0.01 260)}
.c19a8dd6.c19a8dd6{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.02em; text-transform:uppercase; color:oklch(0.78 0.16 30); margin-bottom:24px}
.c1a10d5c.c1a10d5c{display:flex; flex-wrap:wrap; gap:clamp(20px,3vw,44px); margin-top:clamp(28px,4vw,44px)}
.c1b1c715.c1b1c715{flex:1 1 300px; min-width:0; padding:clamp(28px,3.5vw,48px) clamp(18px,3vw,40px); border-right:1px solid oklch(0.17 0.01 260 / 0.18); border-bottom:1px solid oklch(0.17 0.01 260 / 0.18)}
.c1b8b578.c1b8b578{display:flex; flex-wrap:wrap; gap:10px 26px; margin-top:24px; font-family:'IBM Plex Mono',monospace; font-size:11.5px; letter-spacing:0.02em; text-transform:uppercase; color:oklch(0.45 0.01 260)}
.c1dc9785.c1dc9785{display:flex; align-items:center; gap:9px}
.c1ffd988.c1ffd988{margin:0 0 26px; max-width:54ch; font-size:15.5px; line-height:1.6; color:oklch(0.4 0.01 260)}
.c1ffe0e7.c1ffe0e7{font-family:'IBM Plex Mono',monospace; font-size:11.5px; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:oklch(0.45 0.01 260); padding-bottom:12px; border-bottom:1px solid oklch(0.17 0.01 260 / 0.2); margin:0}
.c21c1ab8.c21c1ab8{padding:clamp(44px,7vw,88px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(40px,6vw,72px)}
.c2559649.c2559649{margin:0; max-width:19ch; font-weight:800; font-size:clamp(44px,10.5vw,128px); line-height:0.92; letter-spacing:-0.045em; text-transform:uppercase}
.c255db83.c255db83{font-size:16px; color:oklch(0.17 0.01 260); padding:13px 14px; border:2px solid oklch(0.17 0.01 260); background:oklch(0.985 0 0); resize:vertical}
.c25ff923.c25ff923{flex:0 1 260px; min-width:min(100%,200px); display:flex; gap:14px; align-items:baseline; position:sticky; top:20px; align-self:flex-start}
.c2a13a42.c2a13a42{margin:14px 0 0; max-width:30ch; font-size:15px; line-height:1.6; color:oklch(0.4 0.01 260)}
.c2cc3ca7.c2cc3ca7{padding:14px 0; border-bottom:1px solid oklch(0.17 0.01 260 / 0.1); font-size:15.5px; line-height:1.55; color:oklch(0.32 0.01 260)}
.c2cf3d58.c2cf3d58{flex:0 0 auto; padding:17px 34px; background:oklch(0.47 0.19 28); color:oklch(0.985 0 0); font-size:15px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase}
.c2e72ea5.c2e72ea5{display:flex; flex-wrap:wrap; gap:clamp(24px,4vw,56px); align-items:flex-end}
.c2e99f24.c2e99f24{display:flex; gap:14px; padding:13px 0; border-bottom:1px solid oklch(0.17 0.01 260 / 0.1); font-size:16px; line-height:1.5; color:oklch(0.28 0.01 260)}
.c3090afc.c3090afc{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; color:oklch(0.78 0.16 30); margin-bottom:12px}
.c3093e0b.c3093e0b{padding:clamp(32px,4.5vw,64px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); border-bottom:1px solid oklch(0.17 0.01 260 / 0.18)}
.c31791a3.c31791a3{padding:clamp(40px,6vw,80px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); border-bottom:3px solid oklch(0.17 0.01 260)}
.c3263e3a.c3263e3a{display:flex; align-items:center; gap:11px; font-weight:800; font-size:clamp(15px,4.6vw,20px); letter-spacing:-0.02em; text-transform:uppercase; color:oklch(0.17 0.01 260)}
.c3472900.c3472900{margin:0; max-width:22ch; font-weight:800; font-size:clamp(22px,2.8vw,32px); line-height:1.06; letter-spacing:-0.03em; text-transform:uppercase}
.c36fa9a8.c36fa9a8{padding:clamp(32px,4vw,52px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) 40px; border-top:1px solid oklch(0.17 0.01 260 / 0.18)}
.c371ce70.c371ce70{padding:clamp(28px,4vw,56px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(40px,6vw,80px)}
.c37a7fca.c37a7fca{margin:0; font-size:16px; line-height:1.6; color:oklch(0.85 0.01 260)}
.c3883329.c3883329{margin:0; max-width:20ch; font-weight:800; font-size:clamp(26px,3.6vw,44px); line-height:1.04; letter-spacing:-0.035em; text-transform:uppercase}
.c3ba6677.c3ba6677{padding:11px 16px; background:oklch(0.17 0.01 260); color:oklch(0.985 0 0); font-weight:500}
.c3ee61d7.c3ee61d7{font-family:'IBM Plex Mono',monospace; font-size:11.5px; color:oklch(0.52 0.19 28)}
.c426c48b.c426c48b{display:flex; flex-wrap:wrap; gap:clamp(20px,3vw,48px)}
.c4770a1a.c4770a1a{display:flex; flex-wrap:wrap; gap:clamp(20px,3vw,48px); margin-top:clamp(32px,4vw,56px)}
.c48c730b.c48c730b{flex:1 1 420px; min-width:0; max-width:80ch}
.c493538f.c493538f{font-family:'IBM Plex Mono',monospace; font-size:11.5px; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:oklch(0.45 0.01 260); margin:0 0 18px}
.c4ced28b.c4ced28b{padding:6px 11px; background:oklch(0.47 0.19 28); color:oklch(0.985 0 0)}
.c4fd6ddb.c4fd6ddb{width:100%; max-width:100%; overflow-x:hidden}
.c5326428.c5326428{flex:0 0 auto; width:9px; height:9px; margin-top:7px; background:oklch(0.52 0.19 28)}
.c53d6367.c53d6367{flex:1 1 280px; min-width:0}
.c563b2f6.c563b2f6{padding:clamp(56px,9vw,120px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(44px,7vw,96px)}
.c56d06ab.c56d06ab{padding:14px 0; border-bottom:1px solid oklch(0.985 0 0 / 0.14); font-size:16px; line-height:1.55; color:oklch(0.82 0.01 260)}
.c57b1693.c57b1693{border-top:3px solid oklch(0.17 0.01 260); padding:clamp(36px,5vw,72px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2)}
.c59c85a8.c59c85a8{padding:clamp(40px,6vw,80px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); background:oklch(0.17 0.01 260); color:oklch(0.985 0 0)}
.c5a4604c.c5a4604c{margin:0; flex:1 1 320px; min-width:0; max-width:48ch; font-size:clamp(16.5px,1.7vw,20px); line-height:1.55; color:oklch(0.3 0.01 260)}
.c5c0b845.c5c0b845{margin:0; max-width:18ch; font-weight:800; font-size:clamp(38px,7.5vw,92px); line-height:0.94; letter-spacing:-0.042em; text-transform:uppercase}
.c5c78bbd.c5c78bbd{padding:16px 32px; background:oklch(0.47 0.19 28); color:oklch(0.985 0 0); border:none; font-family:Archivo,sans-serif; font-size:15px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase; cursor:pointer}
.c5f763a2.c5f763a2{padding:6px 11px; border:1px solid oklch(0.17 0.01 260 / 0.35); color:oklch(0.35 0.01 260)}
.c602c7bd.c602c7bd{font-family:'IBM Plex Mono',monospace; font-size:11.5px; font-weight:500; letter-spacing:0.06em; text-transform:uppercase; color:oklch(0.78 0.16 30); padding-bottom:12px; border-bottom:1px solid oklch(0.985 0 0 / 0.25)}
.c604819d.c604819d{margin:24px 0 0; max-width:46ch; font-size:clamp(16px,1.7vw,20px); line-height:1.55; color:oklch(0.84 0.01 260)}
.c6350b72.c6350b72{display:flex; flex-wrap:wrap; gap:clamp(20px,4vw,64px); margin-top:clamp(36px,5vw,64px); align-items:flex-start}
.c63bdddd.c63bdddd{margin:0 0 clamp(28px,4vw,48px); max-width:20ch; font-weight:800; font-size:clamp(24px,3.4vw,42px); line-height:1.04; letter-spacing:-0.035em; text-transform:uppercase}
.c6465d5f.c6465d5f{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; color:oklch(0.35 0.01 260); padding:clamp(20px,3vw,28px) 0; margin:0; border-bottom:1px solid oklch(0.17 0.01 260 / 0.2)}
.c648774d.c648774d{display:flex; flex-wrap:wrap; gap:14px; margin-top:clamp(32px,4vw,48px)}
.c6684307.c6684307{display:flex; flex-wrap:wrap; gap:clamp(12px,2vw,26px); font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.02em; text-transform:uppercase}
.c679bdf5.c679bdf5{font-size:16px; color:oklch(0.17 0.01 260); padding:13px 14px; border:2px solid oklch(0.17 0.01 260); background:oklch(0.985 0 0)}
.c6945e22.c6945e22{flex:1 1 280px; min-width:0; padding:clamp(24px,3vw,36px); background:oklch(0.985 0 0)}
.c6a671cb.c6a671cb{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; color:oklch(0.52 0.19 28); margin-bottom:16px}
.c6b04a32.c6b04a32{width:14px; height:14px; background:oklch(0.52 0.19 28); flex:0 0 auto}
.c6e5d020.c6e5d020{padding:16px 32px; background:oklch(0.47 0.19 28); color:oklch(0.985 0 0); font-size:15px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase}
.c6f161ec.c6f161ec{margin:0 0 14px; font-size:16.5px; line-height:1.7; color:oklch(0.3 0.01 260)}
.c6fadf44.c6fadf44{margin:18px 0 0; max-width:40ch; font-size:16.5px; line-height:1.6; color:oklch(0.35 0.01 260)}
.c70fd270.c70fd270{display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; padding:18px max(clamp(18px,4vw,56px), (100% - 1180px) / 2); border-bottom:3px solid oklch(0.17 0.01 260)}
.c73b5ca7.c73b5ca7{font-size:18px; font-weight:700; letter-spacing:-0.015em}
.c74d8c51.c74d8c51{display:flex; flex-wrap:wrap; gap:clamp(24px,4vw,64px)}
.c7657fdb.c7657fdb{flex:1 1 220px; min-width:0; display:flex; flex-direction:column; gap:10px; font-family:'IBM Plex Mono',monospace; font-size:12px; color:oklch(0.4 0.01 260)}
.c788324f.c788324f{display:grid; gap:24px; margin-top:22px}
.c79cba14.c79cba14{min-width:0}
.c7a4ec5a.c7a4ec5a{margin:0 0 10px; font-weight:700; font-size:18px; letter-spacing:-0.015em}
.c7e5406e.c7e5406e{padding:0 max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(44px,6vw,80px)}
.c7fe321a.c7fe321a{display:grid; gap:18px; align-content:start}
.c806abf3.c806abf3{display:flex; flex-wrap:wrap; gap:clamp(20px,3vw,40px); margin-top:clamp(32px,4vw,56px)}
.c806fb79.c806fb79{padding:clamp(40px,6vw,80px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); background:oklch(0.17 0.01 260); color:oklch(0.985 0 0); border-bottom:3px solid oklch(0.17 0.01 260)}
.c817745b.c817745b{flex:1 1 260px; min-width:0; border-top:3px solid oklch(0.52 0.19 28); padding-top:18px}
.c81ad464.c81ad464{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; color:oklch(0.52 0.19 28)}
.c81fb3ca.c81fb3ca{display:grid; gap:8px; font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; color:oklch(0.35 0.01 260)}
.c82a11e0.c82a11e0{color:oklch(0.4 0.01 260)}
.c840f6da.c840f6da{display:flex; flex-wrap:wrap; gap:clamp(16px,3vw,56px); padding:clamp(22px,3vw,34px) 0; border-bottom:1px solid oklch(0.17 0.01 260 / 0.14); scroll-margin-top:24px}
.c85c457d.c85c457d{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.02em; text-transform:uppercase; color:oklch(0.35 0.01 260); margin-bottom:22px}
.c88635dc.c88635dc{display:block; height:auto}
.c8a00b39.c8a00b39{display:flex; gap:9px; align-items:baseline; padding:9px 14px; border:1px solid oklch(0.17 0.01 260 / 0.28); font-size:14.5px; line-height:1.3; color:oklch(0.17 0.01 260)}
.c8ae8363.c8ae8363{margin:0 0 14px; font-weight:700; font-size:clamp(22px,2.4vw,28px); line-height:1.1; letter-spacing:-0.025em; text-transform:uppercase}
.c90375cf.c90375cf{margin:0; max-width:22ch; font-weight:800; font-size:clamp(24px,3.4vw,42px); line-height:1.04; letter-spacing:-0.035em; text-transform:uppercase}
.c95a9fa7.c95a9fa7{display:flex; flex-wrap:wrap; gap:18px 28px; margin-top:22px; font-family:'IBM Plex Mono',monospace; font-size:11.5px; text-transform:uppercase; color:oklch(0.42 0.01 260)}
.c96fd57a.c96fd57a{width:14px; height:14px; background:oklch(0.65 0.01 260); flex:0 0 auto}
.c9816471.c9816471{margin-bottom:clamp(24px,3vw,40px); padding-bottom:clamp(20px,3vw,28px); border-bottom:3px solid oklch(0.17 0.01 260)}
.c98e6a7e.c98e6a7e{margin:clamp(28px,4vw,44px) 0 0; max-width:52ch; font-size:15.5px; line-height:1.65; color:oklch(0.76 0.01 260)}
.c9a4989e.c9a4989e{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; color:oklch(0.52 0.19 28); margin-bottom:22px}
.c9b9d481.c9b9d481{flex:0 0 auto; width:9px; height:9px; margin-top:6px; background:oklch(0.52 0.19 28)}
.ca1afcd4.ca1afcd4{margin:0; font-size:16px; line-height:1.6; color:oklch(0.35 0.01 260)}
.ca22549b.ca22549b{border-top:3px solid oklch(0.17 0.01 260)}
.ca2ad4e7.ca2ad4e7{margin:0; max-width:20ch; font-weight:800; font-size:clamp(32px,5.5vw,64px); line-height:0.98; letter-spacing:-0.04em; text-transform:uppercase}
.ca69f45f.ca69f45f{padding:clamp(36px,5vw,64px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(24px,3vw,40px); border-bottom:3px solid oklch(0.17 0.01 260)}
.ca70f50f.ca70f50f{padding:clamp(40px,6vw,80px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(28px,4vw,48px)}
.cac07c64.cac07c64{margin:0 0 12px; font-weight:700; font-size:18px; line-height:1.25; letter-spacing:-0.015em}
.cae26ae6.cae26ae6{font-weight:500; text-transform:uppercase; color:oklch(0.17 0.01 260); margin-bottom:4px}
.caf50553.caf50553{margin:0; max-width:34ch; font-size:15px; line-height:1.6; color:oklch(0.42 0.01 260)}
.cafbc1d5.cafbc1d5{margin:6px 0 0; max-width:44ch; font-size:14px; line-height:1.6; color:oklch(0.45 0.01 260)}
.cb10b6dd.cb10b6dd{flex:1 1 300px; min-width:0}
.cb2109d1.cb2109d1{padding:11px 16px; background:oklch(0.985 0 0); color:oklch(0.35 0.01 260)}
.cb32e17b.cb32e17b{display:flex; flex-wrap:wrap; gap:clamp(24px,4vw,64px); margin-top:clamp(32px,4vw,56px)}
.cb527bf3.cb527bf3{padding:16px 32px; background:oklch(0.17 0.01 260); color:oklch(0.985 0 0); font-size:15px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase}
.cb61e930.cb61e930{flex:1 1 340px; min-width:0}
.cb6c0bf6.cb6c0bf6{flex:1 1 320px; min-width:0}
.cb755cb0.cb755cb0{margin:26px 0 0; max-width:82ch; font-size:16.5px; line-height:1.65; color:oklch(0.33 0.01 260)}
.cb796eb4.cb796eb4{margin:0; max-width:20ch; font-weight:800; font-size:clamp(24px,3.4vw,40px); line-height:1.04; letter-spacing:-0.035em; text-transform:uppercase}
.cb9898a3.cb9898a3{display:flex; flex-wrap:wrap; gap:10px 14px}
.cba134df.cba134df{padding:clamp(44px,6vw,88px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); border-bottom:3px solid oklch(0.17 0.01 260)}
.cba2d751.cba2d751{padding:clamp(40px,6vw,80px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(32px,4vw,56px)}
.cba4d7e4.cba4d7e4{display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; font-family:'IBM Plex Mono',monospace; font-size:11.5px; letter-spacing:0.02em; text-transform:uppercase}
.cbc19aac.cbc19aac{display:flex; flex-wrap:wrap; gap:clamp(32px,5vw,72px)}
.cbe4ba4d.cbe4ba4d{margin:28px 0 0; max-width:50ch; font-size:clamp(16.5px,1.7vw,20px); line-height:1.55; color:oklch(0.33 0.01 260)}
.cc0b3f1f.cc0b3f1f{margin:0; flex:1 1 340px; min-width:0; max-width:46ch; font-size:clamp(17px,1.8vw,22px); line-height:1.5}
.cc0d8f24.cc0d8f24{display:block; flex:0 0 auto; overflow:visible}
.cc4c6b1e.cc4c6b1e{flex:1 1 240px; min-width:0}
.cc531785.cc531785{padding:0 max(clamp(18px,4vw,56px), (100% - 1180px) / 2) clamp(20px,3vw,32px)}
.cc67038b.cc67038b{flex:0 1 auto; display:flex; flex-wrap:wrap; gap:14px}
.cc7bf90d.cc7bf90d{display:flex; flex-wrap:wrap; gap:clamp(28px,4vw,64px)}
.cc9e6b65.cc9e6b65{margin:20px 0 0; max-width:42ch; font-size:16.5px; line-height:1.6; color:oklch(0.33 0.01 260)}
.ccd0e558.ccd0e558{padding-top:20px; border-top:1px solid oklch(0.17 0.01 260 / 0.18)}
.cce2ddf2.cce2ddf2{margin:18px 0 28px; max-width:44ch; font-size:16.5px; line-height:1.6; color:oklch(0.35 0.01 260)}
.cd3558ed.cd3558ed{display:flex; align-items:center; gap:12px; font-weight:800; font-size:clamp(17px,5vw,23px); letter-spacing:-0.02em; text-transform:uppercase}
.cd41e1de.cd41e1de{display:flex; flex-wrap:wrap; gap:1px; background:oklch(0.17 0.01 260 / 0.18)}
.cd584715.cd584715{display:inline-block; padding:16px 32px; background:oklch(0.47 0.19 28); color:oklch(0.985 0 0); font-size:15px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase}
.cd5d7428.cd5d7428{padding:clamp(36px,5vw,72px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); border-top:1px solid oklch(0.17 0.01 260 / 0.18)}
.cd65e8a9.cd65e8a9{margin:0; font-weight:700; font-size:clamp(19px,2.2vw,25px); line-height:1.15; letter-spacing:-0.02em; text-transform:uppercase}
.cd770fe6.cd770fe6{display:flex; flex-wrap:wrap; gap:clamp(20px,4vw,56px); align-items:flex-end}
.cd882829.cd882829{font-family:'IBM Plex Mono',monospace; font-size:12px; font-weight:500; color:oklch(0.52 0.19 28); margin-bottom:20px}
.cda9ccc0.cda9ccc0{margin:0; padding:0; list-style:none}
.cdc21207.cdc21207{padding:clamp(48px,7vw,104px) max(clamp(18px,4vw,56px), (100% - 1180px) / 2); background:oklch(0.17 0.01 260); color:oklch(0.985 0 0)}
.cdce875d.cdce875d{flex:0 1 200px; min-width:150px; display:flex; flex-direction:column; gap:10px; font-family:'IBM Plex Mono',monospace; font-size:12px}
.ce0358ff.ce0358ff{margin:0; max-width:24ch; font-weight:800; font-size:clamp(28px,4.8vw,64px); line-height:1.02; letter-spacing:-0.04em; text-transform:uppercase}
.ce189e2a.ce189e2a{padding:16px 32px; border:2px solid oklch(0.17 0.01 260); color:oklch(0.17 0.01 260); font-size:15px; font-weight:700; letter-spacing:0.04em; text-transform:uppercase}
.ce30c94f.ce30c94f{margin:18px 0 26px; max-width:44ch; font-size:16.5px; line-height:1.6; color:oklch(0.35 0.01 260)}
.ce58ccec.ce58ccec{margin:0; max-width:14ch; font-weight:800; font-size:clamp(26px,3.4vw,42px); line-height:1.02; letter-spacing:-0.035em; text-transform:uppercase}
.ce86e1dc.ce86e1dc{display:flex; flex-wrap:wrap; gap:clamp(20px,4vw,56px)}
.ce8bc6c6.ce8bc6c6{margin:28px 0 0; max-width:52ch; font-size:clamp(16.5px,1.7vw,20px); line-height:1.55; color:oklch(0.33 0.01 260)}
.ce9f9532.ce9f9532{margin:0; border:3px solid oklch(0.17 0.01 260); padding:clamp(22px,3vw,40px)}
.ceaf233d.ceaf233d{margin:0; max-width:16ch; font-weight:800; font-size:clamp(38px,7.5vw,92px); line-height:0.94; letter-spacing:-0.042em; text-transform:uppercase}
.ceb5d436.ceb5d436{margin:0 0 26px; max-width:56ch; font-size:15.5px; line-height:1.6; color:oklch(0.4 0.01 260)}
.cebd014b.cebd014b{color:oklch(0.52 0.19 28)}
.ceef2e24.ceef2e24{margin:20px 0 0; max-width:42ch; font-size:16.5px; line-height:1.6; color:oklch(0.35 0.01 260)}
.cf0f4e7f.cf0f4e7f{font-style:normal; line-height:1.7}
.cf123d2c.cf123d2c{display:flex; flex-wrap:wrap}
.cf17fa10.cf17fa10{font-family:'IBM Plex Mono',monospace; font-size:13px; font-weight:500; letter-spacing:0.04em; text-transform:uppercase; border-bottom:2px solid currentColor; padding-bottom:3px}
.cf3711d2.cf3711d2{margin:0 0 12px; font-weight:700; font-size:clamp(19px,2.1vw,23px); line-height:1.15; letter-spacing:-0.02em}
.cf522a35.cf522a35{color:oklch(0.17 0.01 260)}
.cf7b3b48.cf7b3b48{margin:0; border:3px solid oklch(0.17 0.01 260); padding:clamp(22px,3vw,36px)}
.cf901cd6.cf901cd6{padding:clamp(26px,3.5vw,44px) 0; border-bottom:1px solid oklch(0.17 0.01 260 / 0.14)}
.cf9ee072.cf9ee072{flex:0 1 180px; min-width:150px; display:flex; flex-direction:column; gap:10px; font-family:'IBM Plex Mono',monospace; font-size:12px}
.cfabd8ce.cfabd8ce{display:flex; gap:14px; padding:12px 0; border-bottom:1px solid oklch(0.17 0.01 260 / 0.1); font-size:15.5px; line-height:1.5; color:oklch(0.3 0.01 260)}
.cfcb53e4.cfcb53e4{flex:1 1 220px; min-width:0; border-top:3px solid oklch(0.52 0.19 28); padding-top:18px}
.h081a69c.h081a69c:hover{background:oklch(0.17 0.01 260)}
.h22d2bd4.h22d2bd4:hover{border-color:oklch(0.52 0.19 28); color:oklch(0.52 0.19 28)}
.hc340f7b.hc340f7b:hover{color:oklch(0.52 0.19 28)}
.he2961b1.he2961b1:hover{background:oklch(0.47 0.19 28)}
