@font-face {
  font-family: "Instrument Sans";
  src: url("/assets/unknot/instrument-sans-647f35c4.ttf") format("truetype");
  font-weight: 400 700;
  font-style: normal;
  font-display: swap;
}
:root {
  --paper: #fff;
  --ink: #181818;
  --rule: #e5e5e5;
  --accent: #2455ff;
  --muted: #575757;
  --font: "Instrument Sans", sans-serif;
}
* { box-sizing: border-box; }
html { scrollbar-color: var(--ink) var(--paper); scroll-padding-block-start: 24px; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 400 17px/1.55 var(--font); -webkit-text-size-adjust: 100%; }
h1, p { margin: 0; }
a { color: inherit; text-underline-offset: 5px; text-decoration-thickness: 1px; }
a:hover { text-decoration-color: var(--accent); }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
::selection { color: var(--paper); background: var(--accent); }
svg { display: block; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; flex: 0 0 auto; }
.shell { width: min(calc(100% - 96px), 1184px); margin-inline: auto; }
.skip-link { position: absolute; top: -80px; left: 16px; padding: 12px 16px; color: var(--paper); background: var(--ink); z-index: 2; }
.skip-link:focus { top: 16px; }
.masthead { display: flex; align-items: center; gap: 36px; padding-block: 24px; border-bottom: 1px solid var(--rule); }
.wordmark { display: inline-flex; align-items: center; min-height: 44px; margin-inline-end: auto; font-size: 32px; font-weight: 600; letter-spacing: -0.04em; line-height: 1; text-decoration: none; }
.wordmark span { color: var(--accent); }
.masthead nav { display: flex; gap: 28px; }
.masthead nav a, .header-request { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; text-decoration: none; }
.masthead a:hover { text-decoration: underline; text-decoration-color: var(--accent); }
.header-request { color: var(--accent); }
.offer-section { padding-block: 64px 72px; border-bottom: 1px solid var(--rule); }
h1 { font-size: 60px; font-weight: 550; line-height: 1.08; letter-spacing: -0.035em; text-wrap: balance; }
h1 .question, h1 .answer { display: block; }
h1 .key { white-space: nowrap; text-decoration: underline; text-decoration-color: var(--accent); text-decoration-thickness: 2px; text-underline-offset: 8px; }
.description { max-width: 62ch; font-size: 18px; line-height: 1.6; color: var(--muted); text-wrap: pretty; }
.description + .description { margin-top: 16px; }
.credit { font-size: 15px; color: var(--muted); }
.credit span { color: var(--ink); }
.price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; font-size: 40px; font-weight: 550; letter-spacing: -0.025em; line-height: 1.2; font-variant-numeric: tabular-nums; }
.price span { font-size: 14px; font-weight: 400; letter-spacing: 0; }
.conditions { max-width: 44ch; margin-block-start: 12px; color: var(--muted); font-size: 14px; line-height: 1.55; }
.actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; }
.primary { display: inline-flex; align-items: center; justify-content: space-between; gap: 28px; min-height: 52px; padding: 14px 20px; color: var(--paper); background: var(--ink); font-size: 15px; font-weight: 500; line-height: 1.4; text-decoration: none; }
.primary svg { width: 20px; height: 20px; }
.primary:hover { background: #333; }
.secondary { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; color: var(--accent); font-size: 15px; }
.secondary svg { width: 16px; height: 16px; }
.layout-c h1 { max-width: 30ch; font-size: 66px; line-height: 1.07; }
.layout-c h1 .answer { max-width: 27ch; }
.layout-c .offer-details { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 80px; margin-block-start: 44px; }
.layout-c .description { max-width: 54ch; }
.layout-c .credit { margin-block-start: 24px; }
.layout-c .enquiry { padding-block-start: 20px; border-top: 1px solid var(--rule); }
.layout-c .price { font-size: 34px; }
.layout-c .actions { margin-block-start: 24px; gap: 12px 24px; }
@media (min-width: 960px) {
  .layout-c h1 .answer { max-width: none; }
  .layout-c h1 .launch { display: block; }
}
@media (max-width: 1100px) {
  .shell { width: calc(100% - 64px); }
  .masthead { gap: 24px; }
  .masthead nav { gap: 20px; }
  h1 { font-size: 54px; }
  .layout-c h1 { font-size: 58px; }
  .layout-c .offer-details { gap: 48px; }
}
@media (max-width: 780px) {
  .shell { width: calc(100% - 40px); }
  .masthead { display: grid; grid-template-columns: 1fr auto; gap: 0 20px; padding-block: 14px 10px; }
  .wordmark { font-size: 29px; }
  .header-request { grid-column: 2; grid-row: 1; }
  .masthead nav { grid-column: 1 / -1; justify-content: space-between; gap: 16px; }
  .offer-section { padding-block: 36px 40px; }
  h1 { font-size: 44px; line-height: 1.1; }
  h1 .key { text-underline-offset: 5px; }
  .description { font-size: 17px; line-height: 1.6; }
  .credit { font-size: 14px; }
  .price { font-size: 34px; }
  .layout-c h1 { font-size: 48px; }
  .layout-c .offer-details { grid-template-columns: 1fr; gap: 28px; margin-block-start: 28px; }
  .layout-c .credit { margin-block-start: 20px; }
  .layout-c .enquiry { padding-block-start: 24px; }
  .layout-c .actions { margin-block-start: 20px; }
}
@media (max-width: 480px) {
  h1 { font-size: 36px; letter-spacing: -0.03em; }
  .layout-c h1 { font-size: 40px; letter-spacing: -0.03em; }
  .actions { gap: 10px 20px; }
  .primary { gap: 24px; }
}
@media (max-width: 360px) {
  .shell { width: calc(100% - 32px); }
  h1 { font-size: 32px; }
  .layout-c h1 { font-size: 34px; }
  .masthead nav a, .header-request { font-size: 13px; }
  .primary { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}


.example-section { padding: 64px 0 72px; border-bottom: 1px solid var(--rule); scroll-margin-top: 24px; }
.example-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: start; }
.example-heading h2 { margin: 0; max-width: 24ch; font-size: 44px; font-weight: 550; line-height: 1.12; letter-spacing: -0.025em; text-wrap: balance; }
.example-intro { max-width: 52ch; color: var(--muted); font-size: 17px; line-height: 1.6; }
.example-disclosure { margin-top: 16px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.example-body { display: grid; grid-template-columns: minmax(0, 1.9fr) minmax(270px, 1fr); gap: 48px; align-items: start; margin-top: 48px; }
.system-figure { min-width: 0; margin: 0; }
.system-art { display: block; width: 100%; height: auto; }
.system-figure figcaption { display: flex; align-items: baseline; gap: 16px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--rule); }
.figure-caption { flex: 1; color: var(--muted); font-size: 14px; line-height: 1.6; }
.figure-open { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; white-space: nowrap; color: var(--accent); font-size: 13px; }
.figure-open svg { width: 16px; height: 16px; }
.finding-ref { color: var(--accent); font: 400 13px/1.4 ui-monospace, "SFMono-Regular", Consolas, monospace; }
.report-excerpt { min-width: 0; padding-top: 20px; border-top: 1px solid var(--rule); scroll-margin-top: 28px; }
.report-excerpt:target { outline: 1px solid var(--accent); outline-offset: 12px; }
.report-reference { display: flex; align-items: baseline; gap: 12px; color: var(--accent); font-size: 14px; line-height: 1.5; }
.report-excerpt dl { margin: 24px 0 0; }
.report-excerpt dl > div + div { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--rule); }
.report-excerpt dt { font-size: 15px; font-weight: 550; line-height: 1.4; }
.report-excerpt dd { margin: 8px 0 0; max-width: 65ch; color: var(--muted); font-size: 16px; line-height: 1.6; }
.report-excerpt code { font-size: .9em; overflow-wrap: anywhere; }
@media (max-width: 1100px) {
 .example-heading { gap: 40px; }
 .example-heading h2 { font-size: 38px; }
 .example-body { grid-template-columns: minmax(0, 1.7fr) minmax(250px, 1fr); gap: 32px; }
}
@media (max-width: 780px) {
 .example-section { padding: 40px 0 48px; }
 .example-heading { display: block; }
 .example-heading h2 { font-size: 32px; }
 .example-intro { margin-top: 20px; font-size: 16px; }
 .example-disclosure { margin-top: 14px; }
 .example-body { display: block; margin-top: 32px; }
 .system-figure figcaption { display: block; margin-top: 16px; padding-top: 12px; }
 .figure-open { margin-top: 8px; }
 .report-excerpt { margin-top: 28px; padding-top: 24px; }
}



.includes-section { padding: 64px 0 72px; border-bottom: 1px solid var(--rule); scroll-margin-top: 24px; }
.includes-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.7fr); gap: 96px; align-items: start; }
.includes-heading h2 { margin: 0; max-width: 16ch; font-size: 38px; font-weight: 550; line-height: 1.16; letter-spacing: -.025em; text-wrap: balance; }
.includes-heading h2 span { display: block; }
.includes-passages { min-width: 0; }
.includes-entry h3 { margin: 0; max-width: 28ch; font-size: 22px; font-weight: 550; line-height: 1.3; letter-spacing: -.015em; text-wrap: balance; }
.includes-copy { margin-top: 12px; max-width: 65ch; color: var(--muted); font-size: 17px; line-height: 1.65; text-wrap: pretty; }
.includes-entry + .includes-entry { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--rule); }
.includes-boundary { margin-top: 32px; padding-top: 24px; border-top: 1px solid var(--rule); color: var(--muted); font-size: 14px; line-height: 1.6; }
@media (max-width: 1100px) {
 .includes-layout { gap: 48px; }
 .includes-heading h2 { font-size: 34px; }
}
@media (max-width: 780px) {
 .includes-section { padding: 40px 0 48px; }
 .includes-layout { display: block; }
 .includes-heading h2 { max-width: 20ch; font-size: 30px; }
 .includes-passages { margin-top: 28px; }
 .includes-entry h3 { font-size: 21px; }
 .includes-copy { margin-top: 12px; font-size: 16px; }
 .includes-boundary { width: auto; max-width: none; margin-top: 28px; margin-left: 0; }
}


.person-section { padding: 64px 0 72px; border-bottom: 1px solid var(--rule); scroll-margin-top: 24px; }
.person-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.7fr); gap: 24px 96px; align-items: start; }
.person-heading { grid-column: 1; grid-row: 1; }
.person-heading h2 { margin: 0; max-width: 18ch; font-size: 38px; font-weight: 550; line-height: 1.16; letter-spacing: -.025em; text-wrap: balance; }
.person-heading h2 span { display: block; }
.person-figure { grid-column: 1; grid-row: 2; width: 208px; max-width: 100%; margin: 0; }
.person-portrait { display: block; width: 100%; height: auto; }
.person-figure figcaption { margin-top: 12px; color: var(--muted); font-size: 14px; line-height: 1.5; }
.person-copy { grid-column: 2; grid-row: 1 / span 2; min-width: 0; }
.person-bio { max-width: 65ch; color: var(--muted); font-size: 17px; line-height: 1.65; text-wrap: pretty; }
.person-principle { max-width: 48ch; margin-top: 32px; font-size: 22px; line-height: 1.5; letter-spacing: -.01em; text-wrap: pretty; }
.person-background { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; margin-top: 24px; color: var(--accent); font-size: 14px; }
.person-background svg { width: 16px; height: 16px; }
.person-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; margin-top: 24px; }
.person-actions .person-background { margin-top: 0; }
.reviewer-b .person-layout { grid-template-columns: 248px minmax(0, 1fr); gap: 28px 80px; }
.reviewer-b .person-heading { grid-column: 2; grid-row: 1; }
.reviewer-b .person-heading h2 { max-width: 28ch; font-size: 36px; }
.reviewer-b .person-figure { grid-column: 1; grid-row: 1 / span 2; width: 248px; }
.reviewer-b .person-copy { grid-column: 2; grid-row: 2; }
.reviewer-b .person-principle { margin-top: 28px; }
@media (max-width: 1100px) {
 .person-layout { column-gap: 48px; }
 .person-heading h2 { font-size: 34px; }
 .reviewer-b .person-layout { grid-template-columns: 224px minmax(0, 1fr); column-gap: 48px; }
 .reviewer-b .person-heading h2 { font-size: 34px; }
 .reviewer-b .person-figure { width: 224px; }
}
@media (max-width: 780px) {
 .person-section { padding: 40px 0 48px; }
 .person-layout { display: block; }
 .person-heading h2 { max-width: 24ch; font-size: 30px; }
 .person-figure { width: 144px; margin-top: 24px; }
 .person-figure figcaption { margin-top: 10px; font-size: 13px; }
 .person-copy { margin-top: 28px; }
 .person-bio { font-size: 16px; }
 .person-principle { margin-top: 24px; font-size: 20px; }
 .person-background { margin-top: 20px; }
 .reviewer-b .person-layout { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 28px 24px; }
 .reviewer-b .person-heading { grid-column: 2; grid-row: 1; }
 .reviewer-b .person-heading h2 { max-width: 20ch; font-size: 28px; }
 .reviewer-b .person-figure { grid-column: 1; grid-row: 1; width: 112px; margin-top: 0; }
 .reviewer-b .person-copy { grid-column: 1 / -1; grid-row: 2; margin-top: 0; }
 .reviewer-b .person-principle { margin-top: 24px; }
}
@media (max-width: 360px) {
 .reviewer-b .person-layout { grid-template-columns: 96px minmax(0, 1fr); column-gap: 20px; }
 .reviewer-b .person-figure { width: 96px; }
 .reviewer-b .person-heading h2 { font-size: 26px; }
}


.workflow-section { padding: 64px 0 72px; border-bottom: 1px solid var(--rule); scroll-margin-top: 24px; }
.workflow-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.7fr); gap: 96px; align-items: start; }
.workflow-heading h2 { margin: 0; max-width: 18ch; font-size: 38px; font-weight: 550; line-height: 1.16; letter-spacing: -.025em; text-wrap: balance; }
.workflow-heading h2 span { display: block; }
.workflow-body { min-width: 0; }
.workflow-steps { list-style: none; margin: 0; padding: 0; }
.workflow-step { display: grid; grid-template-columns: 32px minmax(0, 1fr); gap: 18px; align-items: baseline; }
.workflow-number { color: var(--accent); font: 400 14px/1.5 ui-monospace, "SFMono-Regular", Consolas, monospace; }
.workflow-step h3 { margin: 0; font-size: 22px; font-weight: 550; line-height: 1.3; letter-spacing: -.015em; }
.workflow-copy { max-width: 65ch; margin-top: 12px; color: var(--muted); font-size: 17px; line-height: 1.65; text-wrap: pretty; }
.workflow-step + .workflow-step { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--rule); }
.process-b .workflow-layout { display: block; }
.process-b .workflow-heading h2 { max-width: 26ch; font-size: 40px; line-height: 1.12; }
.process-b .workflow-body { margin-top: 40px; }
.process-b .workflow-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; }
.process-b .workflow-step { display: block; padding-top: 24px; border-top: 1px solid var(--rule); }
.process-b .workflow-content { display: block; margin-top: 16px; }
.process-b .workflow-step h3 { font-size: 20px; line-height: 1.4; }
.process-b .workflow-copy { margin-top: 12px; }
.process-b .workflow-step + .workflow-step { margin-top: 0; padding-top: 24px; }
@media (max-width: 1100px) {
 .workflow-layout { gap: 48px; }
 .workflow-heading h2 { font-size: 34px; }
 .process-b .workflow-heading h2 { font-size: 36px; }
 .process-b .workflow-steps { grid-template-columns: minmax(0, 1fr); gap: 0; }
 .process-b .workflow-step { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 24px; }
 .process-b .workflow-content { margin-top: 0; }
 .process-b .workflow-step + .workflow-step { margin-top: 28px; padding-top: 28px; }
}
@media (max-width: 780px) {
 .workflow-section { padding: 40px 0 48px; }
 .workflow-layout { display: block; }
 .workflow-heading h2, .process-b .workflow-heading h2 { max-width: 24ch; font-size: 30px; }
 .workflow-body, .process-b .workflow-body { margin-top: 28px; }
 .workflow-step, .process-b .workflow-step { grid-template-columns: 24px minmax(0, 1fr); gap: 16px; }
 .workflow-step h3 { font-size: 21px; }
 .workflow-copy { margin-top: 10px; font-size: 16px; }
 .process-b .workflow-content { display: block; }
 .process-b .workflow-step h3 { font-size: 20px; }
 .process-b .workflow-copy { margin-top: 10px; }
 .process-b .workflow-step + .workflow-step { margin-top: 28px; padding-top: 28px; }
}


.questions-section { padding: 64px 0 72px; border-bottom: 1px solid var(--rule); scroll-margin-top: 24px; }
.questions-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.7fr); gap: 96px; align-items: start; }
.questions-heading h2 { margin: 0; max-width: 18ch; font-size: 38px; font-weight: 550; line-height: 1.16; letter-spacing: -.025em; text-wrap: balance; }
.questions-list { min-width: 0; }
.question-item h3 { margin: 0; max-width: 38ch; font-size: 20px; font-weight: 550; line-height: 1.4; letter-spacing: -.01em; text-wrap: pretty; }
.question-answer { max-width: 65ch; margin-top: 12px; color: var(--muted); font-size: 17px; line-height: 1.65; text-wrap: pretty; }
.question-item + .question-item { margin-top: 28px; padding-top: 28px; border-top: 1px solid var(--rule); }
.questions-b .questions-layout { display: block; }
.questions-b .questions-heading h2 { font-size: 40px; line-height: 1.12; }
.questions-b .questions-list { margin-top: 40px; }
.questions-b .question-item { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.7fr); gap: 96px; align-items: baseline; }
.questions-b .question-item h3 { max-width: 30ch; }
.questions-b .question-answer { margin-top: 0; }
.questions-b .question-item + .question-item { margin-top: 32px; padding-top: 32px; }
@media (max-width: 1100px) {
 .questions-layout, .questions-b .question-item { gap: 48px; }
 .questions-heading h2 { font-size: 34px; }
 .questions-b .questions-heading h2 { font-size: 36px; }
}
@media (max-width: 780px) {
 .questions-section { padding: 40px 0 48px; }
 .questions-layout, .questions-b .question-item { display: block; }
 .questions-heading h2, .questions-b .questions-heading h2 { font-size: 30px; }
 .questions-list, .questions-b .questions-list { margin-top: 28px; }
 .question-item h3 { max-width: none; font-size: 19px; }
 .question-answer, .questions-b .question-answer { margin-top: 10px; font-size: 16px; }
 .questions-b .question-item + .question-item { margin-top: 28px; padding-top: 28px; }
}



.request-section { padding: 64px 0 72px; border-bottom: 1px solid var(--rule); scroll-margin-top: 24px; }
.contact-layout { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.7fr); gap: 96px; align-items: start; }
.request-heading h2 { margin: 0; max-width: 18ch; font-size: 38px; font-weight: 550; line-height: 1.16; letter-spacing: -.025em; text-wrap: balance; }
.request-intro { max-width: 54ch; margin-top: 24px; color: var(--muted); font-size: 17px; line-height: 1.65; text-wrap: pretty; }
.request-offer { margin-top: 36px; padding-top: 24px; border-top: 1px solid var(--rule); }
.request-conditions { max-width: 44ch; margin-top: 14px; color: var(--muted); font-size: 14px; line-height: 1.6; text-wrap: pretty; }
.request-form { min-width: 0; }
.request-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.request-control, .request-context { min-width: 0; }
.request-form label { display: block; margin-bottom: 8px; font-size: 15px; font-weight: 500; line-height: 1.5; }
.request-form label span { color: var(--muted); font-size: 13px; font-weight: 400; }
.request-field { display: block; width: 100%; min-height: 48px; margin: 0; padding: 12px 14px; border: 1px solid rgb(24 24 24 / 50%); border-radius: 0; background: var(--paper); color: var(--ink); caret-color: var(--accent); font: 400 16px/1.5 var(--font); }
.request-field:hover { border-color: var(--ink); }
.request-field:focus-visible { border-color: var(--accent); outline-offset: 3px; }
textarea.request-field { min-height: 144px; resize: vertical; }
.request-hint { margin-top: 8px; color: var(--muted); font-size: 13px; line-height: 1.55; }
.request-context { margin-top: 24px; }
.request-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: 24px; }
.request-reply { max-width: 36ch; color: var(--muted); font-size: 14px; line-height: 1.6; }
.request-submit { border: 0; font-family: var(--font); cursor: pointer; }
.request-submit:disabled { opacity: .55; cursor: not-allowed; }
.request-submit:disabled:hover { background: var(--ink); }
.page-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding: 24px 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.footer-contact { display: flex; flex-wrap: wrap; gap: 12px 24px; }
.footer-contact a { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.footer-info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; width: 100%; }
.footer-info details { min-width: 0; }
.footer-info summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 44px; padding: 8px 0; list-style: none; cursor: pointer; }
.footer-info summary::-webkit-details-marker { display: none; }
.footer-info summary svg { color: var(--accent); }
.footer-info summary:hover { color: var(--ink); }
.footer-info details[open] .footer-vertical { display: none; }
.footer-info p { max-width: 65ch; padding: 12px 0; }
@media (max-width: 1100px) {
 .contact-layout { column-gap: 48px; }
 .request-heading h2 { font-size: 34px; }
}
@media (max-width: 780px) {
 .request-section { padding: 40px 0 48px; }
 .contact-layout { display: block; }
 .request-heading h2 { max-width: 24ch; font-size: 30px; }
 .request-intro { margin-top: 20px; font-size: 16px; }
 .request-offer { margin-top: 28px; padding-top: 24px; }
 .request-form { margin-top: 32px; }
 .request-fields { grid-template-columns: minmax(0, 1fr); gap: 24px; }
 .request-actions { margin-top: 24px; }
 .page-footer { align-items: start; padding-top: 20px; }
 .footer-contact { width: 100%; gap: 12px 20px; }
 .footer-info { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}

.enquiry-a :is(.description, .example-intro, .report-excerpt dd, .includes-copy, .person-bio, .workflow-copy, .question-answer, .request-intro) { color: var(--ink); }
.enquiry-a :is(.includes-copy, .workflow-copy, .question-answer) { font-size: 18px; line-height: 1.65; }
.enquiry-a .report-excerpt dd { font-size: 17px; line-height: 1.65; }
.enquiry-a :is(.conditions, .includes-boundary, .request-conditions) { font-size: 15px; }
.enquiry-a .price-summary { max-width: 44ch; margin-top: 16px; font-size: 17px; line-height: 1.6; }
.payment-diagram { padding: 28px; border: 1px solid var(--rule); background: radial-gradient(var(--rule) 1px, transparent 1px) 0 0 / 16px 16px var(--paper); }
.payment-trace { margin: 0; padding: 0; list-style: none; }
.payment-browser { border: 1.5px solid var(--ink); background: var(--paper); }
.payment-browser-bar { display: flex; align-items: center; gap: 12px; min-height: 44px; padding: 12px 16px; border-bottom: 1.5px solid var(--ink); }
.payment-address { flex: 1; min-width: 0; font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.payment-confirmation { display: flex; align-items: center; gap: 16px; padding: 24px; }
.payment-confirmation strong { display: block; font-size: 20px; font-weight: 550; line-height: 1.3; }
.payment-confirmation p { margin-top: 6px; font-size: 16px; line-height: 1.5; }
.payment-redirect { display: grid; grid-template-columns: minmax(0, 1fr) 24px minmax(0, 1fr); align-items: center; gap: 12px; padding-block: 16px 12px; }
.payment-redirect svg { grid-column: 2; }
.payment-redirect p { grid-column: 3; max-width: 18ch; color: var(--muted); background: var(--paper); font-size: 13px; line-height: 1.5; }
.payment-interruption { display: flex; flex-direction: column; align-items: center; gap: 10px; color: var(--accent); font-size: 16px; line-height: 1.5; text-align: center; text-decoration: none; }
.payment-interruption > svg { background: var(--paper); }
.payment-interruption > span { max-width: 30ch; background: var(--paper); }
.payment-interruption:hover > span { text-decoration: underline; text-underline-offset: 4px; }
.payment-interruption-detail { display: block; }
.payment-unreached-arrow { margin: 12px auto 0; color: var(--accent); }
.payment-skipped { border-color: var(--muted); border-style: dashed; color: var(--muted); }
.payment-skipped .payment-browser-bar { border-color: var(--muted); border-bottom-style: dashed; }
.payment-browser-state { padding: 4px 6px; border: 1px dashed var(--muted); font-size: 12px; line-height: 1.25; }
.payment-internals { display: grid; grid-template-columns: minmax(0, 1fr) 28px minmax(0, 1fr); align-items: center; gap: 12px; padding: 24px; }
.payment-code { padding: 14px; border: 1.5px solid var(--muted); }
.payment-node-label { display: block; font-size: 14px; font-weight: 500; line-height: 1.5; }
.payment-code code { display: block; margin-top: 10px; font: 400 15px/1.5 ui-monospace, "SFMono-Regular", Consolas, monospace; }
.payment-code strong { display: block; margin-top: 10px; font-size: 15px; font-weight: 550; line-height: 1.5; }
.payment-orders { width: 100%; border: 1.5px solid var(--muted); border-collapse: collapse; table-layout: fixed; font-size: 13px; line-height: 1.5; text-align: left; }
.payment-orders caption { padding-bottom: 8px; font-size: 14px; font-weight: 500; text-align: left; }
.payment-orders th { padding: 8px; border-bottom: 1px solid var(--rule); font-weight: 500; }
.payment-orders td { padding: 14px 8px; border-top: 1px solid var(--rule); }
@media (max-width: 1100px) {
 .payment-internals { grid-template-columns: minmax(0, 1fr); }
 .payment-order-arrow { margin-inline: auto; transform: rotate(90deg); }
}
@media (max-width: 780px) {
 .enquiry-a :is(.includes-copy, .workflow-copy, .question-answer) { font-size: 17px; }
 .payment-diagram { padding: 20px 16px; }
 .payment-browser-bar { gap: 8px; padding: 10px 12px; }
 .payment-browser-controls { width: 28px; }
 .payment-address { font-size: 12px; }
 .payment-confirmation { gap: 12px; padding: 20px 16px; }
 .payment-confirmation strong { font-size: 18px; }
 .payment-confirmation p { font-size: 15px; }
 .payment-internals { padding: 20px 16px; }
 .payment-orders { font-size: 14px; }
 .payment-orders caption { padding-bottom: 10px; }
}
@media (max-width: 360px) {
 .payment-diagram { padding-inline: 12px; }
 .payment-browser-state { padding-inline: 4px; font-size: 11px; }
}



.request-alert,
.request-error-summary {
  padding: 24px;
  border: 1px solid var(--ink);
  margin-bottom: 24px;
}
.request-error-summary ul { margin: 12px 0 0; padding-left: 20px; }
.request-field-error { margin-top: 8px; font-size: 14px; line-height: 1.5; color: var(--ink); }
.request-field[aria-invalid="true"] { border: 2px solid var(--ink); }
.request-success { padding: 24px; border-top: 1px solid var(--rule); }
.request-success h3 { font-size: 24px; line-height: 1.3; }
.request-success p { margin-top: 16px; font-size: 18px; line-height: 1.65; }
.request-success a { display: inline-flex; min-height: 44px; margin-top: 16px; color: var(--accent); }
.request-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.request-form .field_with_errors { display: contents; }
