/* Preserve the full desktop artwork; reflow content at reading-sized widths. */
.integration-content,.choice-content,.choice-art,.choice-art-canvas {display:contents;}
.governance-visual,.governance-art,.governance-panel,.provenance-art,.provenance-art-scale,.provenance-art-canvas {display:contents;}
.governance-art,.provenance-art {pointer-events:none;}
/* The entire ending shares one canvas, so the source mark and line stay joined. */
.choice-art-canvas>.ending-art {position:absolute;left:0;top:var(--ending-top);width:1440px;height:2100px;}
.ending-use-cases {background:transparent;}
.ending-intro,.ending-cases {z-index:3;}
.site-nav .layer-1-978,.site-nav .layer-1-979,.site-nav .layer-1-982,.mobile-navigation a {
  font-family:"Helvetica Neue",Arial,sans-serif;
  font-weight:400;
}
body:has(dialog[open]) {overflow:hidden;}

@media (min-width:1201px) {
  /* These illustrations now belong to their text groups; retain their desktop coordinates. */
  .governance-art {display:block;position:absolute;left:0;top:0;width:1148px;height:550px;pointer-events:none;}
  .provenance-art {display:block;position:absolute;left:0;top:0;width:1px;height:1px;pointer-events:none;}
  .governance-content .layer-105-10 {position:relative;inset:auto;width:auto;height:auto;transform:none;}
  .governance-visual .layer-39-4 {left:562px;top:-160px;}
  .governance-visual .layer-139-2 {left:439.952px;top:239.65px;}
  .governance-visual .layer-148-50 {left:673.952px;top:7px;}
  .provenance-art .layer-154-107 {left:-329.5px;top:110.5px;}
  .provenance-art .layer-154-109 {left:-271.548px;top:-146.5px;}
  .provenance-art .layer-154-97 {left:-354.5px;top:-251.5px;}
  .provenance-art .layer-195-4 {left:-359.04px;top:-328.15px;}
  .provenance-art .layer-154-108 {left:-295.5px;top:15.49px;}
  .provenance-art .layer-154-64 {left:-27.5px;top:7.5px;}
}

@media (max-width:1200px) {
  :root {--page-gutter:clamp(20px,4vw,48px);--nav-height:64px;}
  .design-viewport {height:auto;background:var(--page-bg);overflow:clip;}
  #landing {
    display:flex;flex-direction:column;gap:80px;position:relative;inset:auto;
    width:100%;max-width:1120px;height:auto;margin:0 auto;
    padding:0 var(--page-gutter) 80px;zoom:1;overflow:visible;
  }
  #landing>* {display:none;}
  /* Legacy anchor placeholders must not create empty rows in the mobile flex layout. */
  #landing>.section-anchor {display:none;}
  #landing>.layer-33-2,
  #landing>.governance-content,#landing>.provenance-content,
  #landing>.integration-content,#landing>.choice-content,
  #landing>.ending-use-cases,#landing>.ending-access {
    display:block;position:relative;inset:auto;width:100%;height:auto;
    margin:0;padding:0;transform:none;min-width:0;
  }
  #landing>.layer-33-2 {order:1;}
  #landing>.governance-content {order:2;}
  #landing>.provenance-content {order:3;}
  #landing>.integration-content {order:4;}
  #landing>.choice-content {order:5;}
  #landing>.ending-use-cases {order:7;}
  #landing>.ending-access {order:8;}
  #landing .layer-82-49 {
    position:static;width:auto;height:auto;transform:none;font-size:clamp(28px,4vw,40px);
    letter-spacing:.035em;line-height:1.4;max-width:24ch;
  }
  #landing>.governance-content,#landing>.provenance-content,#landing>.choice-content {
    display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start;
  }
  #landing .section-copy,#landing .feature-list {
    display:block;position:relative;inset:auto;width:100%;height:auto;
    margin:0;transform:none;white-space:normal;min-width:0;line-height:1.65;order:0;
  }
  #landing .section-label {
    position:static;inset:auto;font-size:13px;letter-spacing:.04em;line-height:1.5;
    margin:0 0 12px;color:var(--copy-color);
  }
  #landing .section-heading {
    font-size:clamp(26px,3.1vw,32px);line-height:1.4;font-weight:400;
    letter-spacing:.015em;margin:0 0 20px;text-wrap:balance;
  }
  #landing .section-description {font-size:17px;line-height:1.7;letter-spacing:0;max-width:60ch;}
  #landing .feature-list .feature-title {
    font-size:18px;line-height:1.5;font-weight:500;letter-spacing:.015em;margin:28px 0 8px;
  }
  #landing .feature-list .feature-title:first-child {margin-top:0;}
  #landing .feature-list .feature-body {font-size:16px;line-height:1.7;letter-spacing:0;}
  .feature-spacer,.desktop-break {display:none;}
  /* Original artwork is uniformly scaled. Copy never controls its height. */
  .governance-visual {display:block;position:relative;isolation:isolate;width:100%;max-width:520px;margin:0 auto;}
  .governance-art {display:block;position:relative;width:100%;aspect-ratio:708/710;}
  .governance-art .layer-39-4 {left:17.24%;top:0;width:78.53%;height:auto;aspect-ratio:556/576;z-index:1;}
  .governance-art .layer-139-2 {
    left:0;top:56.34%;z-index:0;transform:scale(var(--governance-scale,.6));transform-origin:top left;
  }
  .governance-art .layer-148-50 {left:26%;top:23.5%;width:1.84%;height:28.87%;z-index:2;}
  #landing .governance-visual .layer-105-10 {padding:0;background:transparent;border-radius:0;color:var(--copy-color);}
  .governance-panel {display:block;}
  .governance-panel+.governance-panel {margin-top:28px;}
  .governance-controls {display:none;}
  .governance-interactive .governance-controls {
    display:flex;position:relative;justify-content:space-between;gap:8px;margin-bottom:16px;
  }
  .governance-interactive .governance-art {margin-top:60px;top:14px;}
  .governance-interactive .governance-controls {position:absolute;left:0;right:0;top:0;}
  .governance-controls button {font-family:"Helvetica Neue",Arial,sans-serif;font-size:14px;font-weight:400;min-height:44px;padding:8px 4px;color:var(--copy-color);background:transparent;border-bottom:1px solid transparent;-webkit-tap-highlight-color:transparent;}
  .governance-controls button[aria-selected="true"] {border-bottom-color:currentColor;}
  #landing .governance-interactive .layer-105-10 {
    position:absolute;left:31%;top:74px;width:54%;height:auto;display:flex;align-items:flex-start;
    padding-top:22%;color:var(--page-bg);z-index:3;
  }
  .governance-interactive .governance-panel {margin:0;}
  .governance-interactive .governance-panel[hidden] {display:none;}
  #landing .governance-interactive .feature-title {font-size:18px;line-height:1.4;min-height:2lh;margin:0 0 12px;}
  #landing .governance-interactive .feature-body {font-size:16px;line-height:1.55;}
  .governance-interactive .layer-148-50 {opacity:.55;}
  #landing>.provenance-content {grid-template-columns:minmax(84px,.55fr) minmax(0,1fr);gap:28px 20px;align-items:center;}
  .provenance-art {display:block;position:relative;width:100%;max-width:220px;justify-self:center;height:calc(920px * var(--provenance-scale,.3) * var(--provenance-art-zoom,1));grid-column:1;grid-row:2;}
  .provenance-art-scale {display:block;position:relative;width:420px;height:920px;transform:scale(calc(var(--provenance-scale,.3) * var(--provenance-art-zoom,1)));transform-origin:top left;}
  .provenance-art-canvas {display:block;position:relative;width:1440px;height:2700px;transform:translate(-70px,-1790px);transform-origin:top left;}
  #landing .provenance-content .section-copy {grid-column:1/-1;grid-row:1;}
  #landing .provenance-content .feature-list {grid-column:2;grid-row:2;}
  .integration-content>.layer-154-64,.integration-content>.layer-260-42 {display:none;}
  #landing .integration-content>.section-copy {max-width:620px;margin-bottom:40px;}

  /* The source diagram uses real text sizes instead of shrinking a 1248px image. */
  #landing .live-flow {
    display:grid;grid-template-columns:minmax(0,1fr);gap:60px;align-items:center;
    position:relative;inset:auto;width:100%;height:auto;margin:0;zoom:1;
    padding:0;overflow:visible;isolation:isolate;
  }
  .live-flow>.layer-238-2 {
    display:flex;left:50%;top:50%;z-index:-1;pointer-events:none;
    transform:translate(-50%,-50%) scale(var(--flow-backdrop-scale,.24));
  }
  .live-flow .live-flow-input,.live-flow .live-flow-answer {
    position:relative;inset:auto;width:min(100%,360px);margin:0 auto;min-width:0;
  }
  .live-flow .live-flow-input {order:1;height:158px;}
  .live-flow .flow-source-group {
    order:2;position:relative;inset:auto;width:min(100%,560px);height:auto;
    display:grid;grid-template-columns:minmax(0,1fr);gap:12px;
    padding:0 20px;margin:0 auto;overflow:visible;
  }
  .live-flow .flow-chip {
    position:relative;inset:auto;width:100%;min-width:0;min-height:52px;
    padding:10px 14px;gap:10px;margin:0;border-radius:28px;
  }
  .live-flow .flow-chip>p {font-size:16px;line-height:1.4;white-space:normal;}
  .live-flow .live-flow-sources {display:none;}
  .live-flow .live-flow-answer {order:3;height:auto;padding:20px;}
  .live-flow .layer-208-130,.live-flow .layer-208-131 {font-size:16px;opacity:1;}
  .live-flow .layer-208-137,.live-flow .layer-208-138 {
    position:static;inset:auto;font-size:16px;line-height:1.6;opacity:1;
  }
  .live-flow .layer-208-138 {margin-top:12px;}
  .live-flow .layer-208-139 {position:relative;inset:auto;width:min(100%,230px);height:40px;margin-top:20px;}
  .live-flow .layer-208-140 {top:11px;}
  .live-flow .layer-208-141 {font-size:14px;line-height:22px;top:8px;width:auto;right:8px;}
  .live-flow .answer-border-svg {display:none;}

  /* Preserve the whole bead → line → burst sequence on every screen size. */
  #landing>.choice-art {
    display:block;position:relative;order:6;width:100%;max-width:640px;
    height:calc(1820px * var(--choice-scale,.24));margin:0 auto;overflow:clip;
  }
  .choice-art-canvas {display:block;position:relative;width:1440px;height:1820px;transform:scale(var(--choice-scale,.24));transform-origin:top left;}
  .choice-art .choice-bead,.choice-art .choice-finish-item {top:-4000px;}
  .choice-art .choice-scroll-anchor {top:266px;}
  .choice-art-canvas>.ending-art {display:block;top:140px;}
  .choice-foreground {--source-y:134.115px;}
  [data-ray="beam-bottom"] {d:path("M718 855.44L721.5 1635");}
  [data-ray-dot="beam-bottom"]>g {translate:0 -460.5px;}
  .ending-intro,.ending-cases,.ending-cases article {
    position:static;inset:auto;width:100%;height:auto;transform:none;
  }
  .ending-intro {display:block;}
  .ending-label {font-size:13px;line-height:1.5;letter-spacing:.05em;}
  .ending-intro h2,.ending-access h2 {
    font-size:clamp(28px,3.5vw,36px);line-height:1.4;letter-spacing:.02em;font-weight:400;
  }
  .ending-intro h2 {margin:14px 0 24px;}
  .ending-intro>p:last-child,.ending-cases p {font-size:17px;line-height:1.7;letter-spacing:0;}
  .ending-intro br,.ending-access br {display:none;}
  .ending-cases {display:grid;gap:28px;margin-top:36px;}
  .ending-cases article {min-height:0;padding-top:24px;border-top:1px solid #6f6866;}
  .ending-cases h3 {font-size:18px;font-weight:500;line-height:1.5;letter-spacing:.015em;margin:0 0 12px;}
  #landing>.ending-access {
    display:flex;align-items:center;flex-direction:column;gap:24px;text-align:center;
    padding-top:56px;border-top:1px solid #6f6866;
  }
  .ending-access .ending-label {font-size:13px;font-weight:400;letter-spacing:.05em;}
  .ending-access h2,.ending-access-description,.ending-request {
    position:static;inset:auto;width:auto;height:auto;margin:0;transform:none;
  }
  .ending-access h2 {max-width:26ch;text-wrap:balance;}
  .ending-access-description {max-width:58ch;font-size:17px;line-height:1.7;letter-spacing:0;white-space:normal;}
  .ending-request {font-family:"Helvetica Neue",Arial,sans-serif;font-size:16px;letter-spacing:0;min-height:48px;min-width:200px;padding:12px 24px;}

  .site-nav {height:calc(var(--nav-height) + env(safe-area-inset-top));padding-top:env(safe-area-inset-top);}
  .site-nav-inner {display:flex;align-items:center;gap:12px;padding:0 var(--page-gutter);}
  .site-nav .layer-49-12 {left:var(--page-gutter);width:18px;height:20px;}
  .site-nav .layer-20-110 {position:static;transform:none;order:1;font-size:15px;margin-left:26px;letter-spacing:.04em;}
  .site-nav .layer-1-977 {position:static;transform:none;order:2;margin-left:auto;gap:24px;}
  .site-nav .layer-1-978,.site-nav .layer-1-979 {display:flex;font-size:14px;min-height:44px;}
  .site-nav .layer-1-981 {min-height:44px;padding:10px 16px;}
  .site-nav .layer-1-982 {font-size:14px;letter-spacing:0;}
  .mobile-menu-toggle {display:none;}
  .mobile-navigation {display:none;}
  .hero {
    min-height:0;padding:calc(var(--nav-height) + env(safe-area-inset-top) + 64px) var(--page-gutter) 88px;
  }
  .hero h1 {font-size:clamp(30px,4.8vw,46px);letter-spacing:.035em;line-height:1.4;margin-bottom:28px;}
  .hero p {font-size:18px;line-height:1.65;letter-spacing:0;max-width:560px;}
  .hero-mark {width:clamp(180px,26vw,240px);margin-bottom:32px;transform:translateX(24px);}
  .footer-shell {height:auto;}
  .site-footer,.site-footer.is-at-bottom {
    position:relative;inset:auto;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;
    gap:20px 32px;width:100%;height:auto;padding:32px var(--page-gutter) max(32px,env(safe-area-inset-bottom));
    margin:0;zoom:1;
  }
  .site-footer>* {position:static;inset:auto;width:auto;height:auto;transform:none;white-space:normal;font-size:13px;letter-spacing:0;}
  .site-footer .layer-1-975,.site-footer .layer-260-32 {display:none;}
  .site-footer .layer-260-30 {display:flex;align-items:center;min-height:44px;font-size:16px;letter-spacing:.04em;}
  .site-footer .layer-260-36 {max-width:32ch;}
  dialog {width:min(560px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:32px 24px 24px;}
  dialog h2 {font-size:26px;margin-right:20px;}
  html {scroll-padding-top:calc(var(--nav-height) + env(safe-area-inset-top) + 24px);}
}

/* Size the illustration canvases in CSS as well, including when scripts are disabled. */
@supports (transform:scale(calc(1px / 1px))) {
  @media (max-width:1200px) {
    #landing>.choice-art {container-type:inline-size;height:auto;aspect-ratio:1440/1820;}
    .choice-art-canvas {position:absolute;left:0;top:0;transform:scale(calc(100cqw / 1440px));}
    .provenance-art {container-type:inline-size;height:auto;aspect-ratio:420 / calc(920 * var(--provenance-art-zoom,1));}
    .provenance-art-scale {position:absolute;left:0;top:0;transform:scale(calc(100cqw / 420px * var(--provenance-art-zoom,1)));}
    .governance-visual {container-type:inline-size;}
    .governance-visual .layer-139-2 {transform:scale(calc(100cqw / 708px));}
  }
}

@media (min-width:600px) and (max-width:1200px) {
  .live-flow .flow-source-group {grid-template-columns:repeat(2,minmax(0,1fr));}
  .mobile-navigation:not([hidden]) {display:none;}
}

@media (min-width:700px) and (max-width:1200px) {
  #landing {gap:100px;}
  #landing>.governance-content,#landing>.provenance-content,#landing>.choice-content,
  #landing>.ending-use-cases {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;align-items:start;}
  #landing>.provenance-content {grid-template-columns:minmax(150px,.65fr) minmax(0,1fr);gap:40px 48px;max-width:880px;align-self:center;}
  #landing .provenance-content .section-copy {grid-column:1/-1;grid-row:1;}
  #landing .provenance-content .feature-list {grid-column:2;grid-row:2;}
  .ending-cases {margin-top:0;}
  .ending-cases article:first-child {padding-top:0;border-top:0;}
  .hero {padding-bottom:104px;}
}

@media (min-width:1000px) and (max-width:1200px) {
  #landing .live-flow {grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;}
  .live-flow .flow-source-group {grid-template-columns:minmax(0,1fr);padding:0 14px;}
  .live-flow .flow-chip {padding:10px;gap:8px;}
}

@media (max-width:699px) {
  #landing .integration-content>.live-flow {display:none;}
  #landing .integration-content>.section-copy {margin-bottom:0;}
}

@media (max-width:599px) {
  :root {--page-gutter:20px;--nav-height:60px;}
  .site-nav-inner {gap:4px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));}
  .site-nav .layer-49-12 {left:max(16px,env(safe-area-inset-left));width:16px;height:18px;}
  .site-nav .layer-20-110 {font-size:12px;margin-left:22px;}
  .site-nav .layer-1-977 {gap:0;}
  .site-nav .layer-1-978,.site-nav .layer-1-979 {display:none;}
  .site-nav .layer-1-981 {padding:10px;}
  .site-nav .layer-1-982 {font-size:12px;}
  .mobile-menu-toggle {display:flex;position:static;order:3;width:44px;height:44px;flex-shrink:0;}
  .mobile-navigation:not([hidden]) {
    display:flex;position:absolute;top:calc(var(--nav-height) + env(safe-area-inset-top));left:0;right:0;
    padding:8px 20px 16px;flex-direction:column;background:white;border-top:1px solid #e7e4e4;
  }
  .mobile-navigation a {display:flex;align-items:center;min-height:48px;font-size:16px;letter-spacing:0;}
  .hero {padding-top:calc(var(--nav-height) + env(safe-area-inset-top) + 48px);padding-bottom:72px;}
  .hero p {font-size:17px;}
  #landing {gap:64px;padding-bottom:64px;}
  #landing .layer-105-10 {padding:24px;}
  /* Fill more of the art column on phones while preserving the source mark's proportions. */
  #landing>.provenance-content {gap:32px 24px;}
  .provenance-art {--provenance-art-zoom:1.4;max-width:120px;}
  .site-footer,.site-footer.is-at-bottom {flex-direction:column;text-align:center;gap:12px;}
}

@media (max-height:500px) and (max-width:1200px) {
  .hero {padding-top:calc(var(--nav-height) + env(safe-area-inset-top) + 32px);padding-bottom:56px;}
  .hero-mark {width:160px;margin-bottom:20px;}
  dialog {max-height:calc(100dvh - 16px);}
}

@media (pointer:coarse) and (min-width:1201px) {
  .site-nav .layer-1-981 {min-height:44px;}
  .site-nav .layer-1-978,.site-nav .layer-1-979,.site-nav .layer-1-982 {font-size:14px;}
}

@media (max-width:1200px) {
  #landing>.ending-use-cases {display:contents;}
  .ending-intro {order:6;max-width:620px;}
  #landing>.choice-art {order:7;margin:-24px auto -32px;}
  .ending-cases {order:8;width:100%;margin-top:0;}
  #landing>.ending-access {order:9;}
  .ending-intro h2 {margin-bottom:20px;}
  .ending-cases article:first-child {padding-top:0;border-top:0;}
}
@media (min-width:700px) and (max-width:1200px) {
  .ending-cases {grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;}
  .ending-cases article {padding:0;border:0;}
}
@media (max-width:359px) {
  .provenance-art {--provenance-art-zoom:1.6;}
  .governance-controls button {font-size:13px;}
  #landing .governance-interactive .feature-title {font-size:16px;margin-bottom:8px;}
  #landing .governance-interactive .feature-body {font-size:15px;line-height:1.45;}
}

@container (max-width:320px) {
  #landing .governance-interactive .feature-title {font-size:16px;margin-bottom:8px;}
  #landing .governance-interactive .feature-body {font-size:15px;line-height:1.45;}
}
