    .am-site {
      --am-paper:light-dark(#fafbf9,#101419);
      --am-ink:light-dark(#18212a,#ecedea);
      --am-muted:light-dark(#59636b,#a6afb7);
      --am-line:light-dark(#d8dedc,#39424a);
      --am-accent:light-dark(#315fc2,#9bb5ff);
      --am-space:44px;
      background:var(--am-paper); color:var(--am-ink);
      font-family:Inter,Arial,sans-serif; font-size:16px; line-height:1.5;
      font-weight:400; display:flex; flex-direction:column;
      padding:0 var(--am-space); box-sizing:border-box; isolation:isolate;
    }
    .am-site *,
    .am-site *::before,
    .am-site *::after { box-sizing:border-box; }
    .am-site h1,
    .am-site h2,
    .am-site h3,
    .am-site p,
    .am-site dl,
    .am-site dd { margin:0; }
    .am-site button,
    .am-site a { -webkit-tap-highlight-color:transparent; }
    .am-site a { color:inherit; text-decoration:none; }
    .am-site button { font:inherit; color:inherit; }
    .am-header {
      min-height:94px; display:flex; align-items:center; justify-content:space-between;
      gap:22px; border-bottom:1px solid var(--am-line); padding-right:72px;
    }
    .am-brand {
      font-size:16px; font-weight:500; letter-spacing:-.6px; white-space:nowrap;
    }
    .am-nav { display:flex; align-items:center; gap:18px; }
    .am-nav a { font-size:12px; color:var(--am-muted); white-space:nowrap; padding:12px 0; }
    .am-nav a:hover,
    .am-nav .am-current { color:var(--am-ink); }
    .am-kicker {
      font-size:11px; line-height:1.5; letter-spacing:1.4px; font-weight:500;
      text-transform:uppercase; color:var(--am-muted);
    }
    .am-hero {
      display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:44px;
      padding:68px 0 46px; align-items:start;
    }
    .am-copy { min-width:0; padding-top:34px; }
    .am-copy h1 {
      font-size:clamp(38px,5.4vw,64px); line-height:1.02;
      font-weight:500; letter-spacing:-3px; margin:24px 0 26px;
    }
    .am-copy > p {
      font-size:16px; line-height:1.75; max-width:420px; color:var(--am-muted);
    }
    .am-copy > p + p { margin-top:14px; }
    .am-actions { margin-top:30px; display:flex; flex-wrap:wrap; align-items:center; gap:20px; }
    .am-primary {
      display:inline-flex; gap:16px; align-items:center; justify-content:space-between;
      background:var(--am-ink); color:var(--am-paper) !important;
      font-size:13px; font-weight:500; padding:14px 18px; border-radius:3px; min-height:46px;
    }
    .am-primary:hover { opacity:.87; }
    .am-secondary { font-size:13px; color:var(--am-ink); padding:10px 0; border-bottom:1px solid var(--am-line); }
    .am-study { min-width:0; }
    .am-study-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 10px; margin-bottom:16px; }
    .am-study-top .am-kicker:last-child { letter-spacing:0; text-transform:none; }
    .am-diagram { border:1px solid var(--am-line); padding:24px 22px 18px; min-width:0; }
    .am-axis {
      display:block; width:100%; background:transparent; border:0;
      padding:0 0 20px; text-align:center; border-bottom:1px solid var(--am-line);
    }
    .am-axis strong { display:block; font-size:24px; letter-spacing:-.8px; font-weight:500; }
    .am-axis small { display:block; font-size:13px; color:var(--am-muted); margin-top:5px; }
    .am-functions-label,
    .am-perspectives-label { font-size:12px; color:var(--am-muted); }
    .am-functions-label { padding-top:17px; }
    .am-functions {
      container-type:inline-size; container-name:function-pair;
      display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
      position:relative; padding:9px 0 0;
    }
    .am-functions::before {
      content:"↔"; position:absolute; left:50%; top:50%;
      transform:translate(-50%,-50%); color:var(--am-muted); font-size:18px;
      pointer-events:none;
    }
    .am-concept {
      background:transparent; border:0; text-align:left; padding:12px;
      min-width:0; min-height:74px; border-radius:2px;
      transition:background .16s ease,color .16s ease;
    }
    .am-concept strong { display:block; font-size:18px; font-weight:500; letter-spacing:-.45px; }
    .am-concept small { display:block; margin-top:6px; font-size:12px; color:var(--am-muted); }
    .am-functions .am-concept {
      display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start;
      gap:8px; padding:14px 8px; text-align:center;
    }
    .am-functions .am-function-name {
      display:flex; justify-content:center; gap:.25em; line-height:1.25;
    }
    .am-function-name span,
    .am-function-caption span { white-space:nowrap; }
    .am-functions .am-function-caption {
      display:flex; justify-content:center; gap:.25em; margin-top:0;
    }
    .am-concept.is-related { background:color-mix(in srgb,var(--am-accent) 6%,transparent); }
    .am-concept:hover,
    .am-concept[aria-pressed="true"] { background:color-mix(in srgb,var(--am-accent) 10%,transparent); }
    [data-concept][aria-pressed="true"] > strong { color:var(--am-accent); }
    .am-shared-connection { position:relative; height:30px; }
    .am-shared-connection::before {
      content:""; position:absolute; left:25%; right:25%; top:0; height:14px;
      border:1px solid var(--am-line); border-top:0;
    }
    .am-shared-connection::after {
      content:""; position:absolute; left:50%; top:14px; bottom:0;
      width:1px; background:var(--am-line);
    }
    .am-perspective-group { border:1px dashed var(--am-line); }
    .am-diagram .am-perspectives-label { padding:12px 10px 2px; text-align:center; text-wrap:balance; }
    .am-perspectives { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
    .am-perspective { display:block; width:100%; min-height:112px; padding:14px 7px 16px; text-align:center; }
    .am-perspective strong { font-size:16px; line-height:1.3; }
    .am-perspective strong span { display:block; }
    .am-perspective small { margin-top:3px; }
    .am-visually-hidden { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
    .am-diagram .am-diagram-note { margin-top:14px; font-size:12px; line-height:1.6; color:var(--am-muted); }
    .am-detail { margin-top:15px; min-height:116px; color:var(--am-muted); }
    .am-detail-label { font-size:11px; letter-spacing:.2px; }
    .am-detail h2 { font-size:14px; font-weight:500; line-height:1.5; color:var(--am-ink); margin:6px 0; }
    .am-detail .am-detail-text { font-size:12px; line-height:1.65; }
    .am-case { border-top:1px solid var(--am-line); }
    .am-case summary { padding:22px 0; font-size:14px; }
    .am-case-title { display:inline-grid; grid-template-columns:auto auto; align-items:baseline; gap:4px 16px; margin-left:8px; vertical-align:middle; }
    .am-case summary strong { font-weight:500; }
    .am-case-body { padding:0 0 27px; }
    .am-case dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px 32px; }
    .am-case dt { font-size:14px; font-weight:500; margin-bottom:6px; }
    .am-case dd,
    .am-case-body > p { font-size:13px; line-height:1.75; color:var(--am-muted); }
    .am-case-body > p { margin-top:23px; max-width:670px; }
    .am-lower { border-top:1px solid var(--am-line); padding:31px 0 42px; }
    .am-section-intro { display:flex; align-items:baseline; justify-content:space-between; gap:20px; margin-bottom:25px; }
    .am-section-intro h2 { font-size:21px; font-weight:500; letter-spacing:-.7px; }
    .am-sections { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; }
    .am-entry { display:block; border-top:1px solid var(--am-line); padding:18px 0 0; min-width:0; }
    .am-entry-top { display:flex; align-items:center; justify-content:space-between; color:var(--am-accent); font-size:11px; letter-spacing:.8px; }
    .am-entry h3 { font-size:17px; line-height:1.4; letter-spacing:-.45px; font-weight:500; margin:13px 0 8px; }
    .am-entry p { color:var(--am-muted); font-size:13px; line-height:1.7; }
    .am-footer { border-top:1px solid var(--am-line); padding:23px 0 27px; display:flex; justify-content:space-between; gap:16px; font-size:11px; color:var(--am-muted); }
    .am-footer span:last-child { white-space:nowrap; }
    .am-expanded { padding:25px 0 38px; border-top:1px solid var(--am-line); }
    .am-expanded h2 { font-size:23px; letter-spacing:-.6px; font-weight:500; margin-bottom:12px; }
    .am-expanded p { max-width:620px; font-size:16px; line-height:1.8; color:var(--am-muted); }
    @container function-pair (max-width:340px) {
      .am-functions .am-function-name,
      .am-functions .am-function-caption { flex-direction:column; gap:0; }
    }
    @media(max-width:950px) {
      .am-header { padding-right:0; flex-wrap:wrap; padding-top:24px; padding-bottom:16px; }
      .am-brand { margin-right:90px; }
      .am-nav { width:100%; justify-content:space-between; gap:10px; }
      .am-hero { gap:30px; padding-top:48px; }
      .am-copy h1 { letter-spacing:-2px; }
    }
    @media(max-width:820px) {
      .am-hero { grid-template-columns:minmax(0,1fr); gap:39px; padding-top:40px; padding-bottom:30px; }
      .am-copy { padding-top:0; }
      .am-copy > p { max-width:620px; }
      .am-detail { min-height:98px; }
    }
    @media(max-width:700px) {
      .am-header { gap:17px; }
      .am-nav { flex-wrap:wrap; justify-content:flex-start; gap:4px 17px; }
      .am-nav a { padding:7px 0; min-height:38px; }
      .am-copy h1 { font-size:clamp(34px,11vw,48px); margin-top:19px; letter-spacing:-2px; }
      .am-copy > p { max-width:100%; }
      .am-diagram { padding:21px 16px 16px; }
      .am-functions .am-concept strong { font-size:17px; }
      .am-detail { min-height:136px; }
      .am-sections,
      .am-case dl { grid-template-columns:minmax(0,1fr); gap:23px; }
      .am-entry { padding-top:15px; }
      .am-entry h3 { margin:10px 0 6px; }
      .am-section-intro { display:block; }
      .am-section-intro .am-kicker { margin-top:8px; }
      .am-footer { flex-wrap:wrap; gap:9px; }
      .am-case-title { grid-template-columns:minmax(0,1fr); }
    }
    @media(pointer:coarse) {
      .am-nav a,
      .am-secondary { display:inline-flex; align-items:center; min-height:44px; }
    }
    @media(prefers-reduced-motion:reduce) {
      .am-site * { transition:none !important; scroll-behavior:auto !important; }
    }
