/* Editorial guides — page and article models validated on 29 October 2026.
   Loaded only by curated editorial documents. The shared landing styles
   and the shared header are not changed by this stylesheet. */
@font-face {
  font-family: "Dealokr Editorial Geist";
  src: url("/editorial/payment-guide/fonts/geist.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
@font-face {
  font-family: "Dealokr Editorial Fraunces";
  src: url("/editorial/payment-guide/fonts/fraunces.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}

body.editorial-guide {
  --paper: #f6f5ef;
  --ink: #282b28;
  --muted: #70736c;
  --line: #dddfd5;
  --mint: #c8e8b8;
  --green: #00bc7d;
  --deep: #224a36;
  --reading: 780px;
  --sans: "Dealokr Editorial Geist", Arial, sans-serif;
  --serif: "Dealokr Editorial Fraunces", Georgia, serif;
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font: 400 16px/1.6 var(--sans);
  -webkit-font-smoothing: antialiased;
}
.editorial-guide *, .editorial-guide *::before, .editorial-guide *::after { box-sizing: border-box; }
.editorial-guide ::selection { background: var(--mint); color: var(--ink); }
.editorial-guide main {
  max-width: 1168px;
  margin: 0 auto;
  padding: 44px 0 0;
}
.editorial-guide main a {
  color: inherit;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.editorial-guide :is(a, button, summary):focus-visible {
  outline: 3px solid #047857;
  outline-offset: 5px;
}
.editorial-guide button { font: inherit; cursor: pointer; }
.editorial-guide .skip {
  position: fixed;
  top: -90px;
  left: 20px;
  padding: 12px 20px;
  border-radius: 9px;
  background: var(--ink);
  color: #fff;
  z-index: 200;
}
.editorial-guide .skip:focus { top: 12px; }
.editorial-guide .editorial-reading-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 101;
  height: 3px;
  pointer-events: none;
}
.editorial-guide .editorial-reading-progress > span {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--green);
  transform: scaleX(0);
  transform-origin: left;
}
.editorial-guide .breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  align-items: center;
  margin: 0 0 30px 312px;
  color: #777d73;
  font-size: 12px;
  line-height: 1.6;
}
.editorial-guide .breadcrumbs a { text-decoration: none; }
.editorial-guide .breadcrumbs [aria-hidden] { color: #a2a79b; }
.editorial-guide .article-header { max-width: var(--reading); margin-left: 312px; }
.editorial-guide .eyebrow {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  font-size: 10px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.editorial-guide .eyebrow .pill { padding: 5px 9px; border-radius: 4px; background: var(--mint); }
.editorial-guide .eyebrow .dot { width: 3px; height: 3px; border-radius: 50%; background: #777d73; }
.editorial-guide main h1 {
  max-width: 780px;
  margin: 20px 0 21px;
  color: var(--ink);
  font: 480 48px/1.1 var(--serif);
  letter-spacing: -.035em;
  font-variation-settings: "SOFT" 25, "WONK" 1;
  overflow-wrap: break-word;
}
.editorial-guide .dek { max-width: 680px; margin: 0; color: #70746b; font-size: 18px; line-height: 1.7; }
.editorial-guide .byline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  align-items: center;
  margin: 24px 0 27px;
  color: #72796f;
  font-size: 12px;
}
.editorial-guide .avatar {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 29px;
  height: 29px;
  border: 1px solid #d2dec8;
  border-radius: 50%;
  background: #e2ecd9;
  color: #385c35;
  font: 400 15px/1 var(--serif);
}
.editorial-guide .byline strong { color: #4f594b; font-size: 12px; font-weight: 550; }
.editorial-guide .byline .dot { width: 3px; height: 3px; border-radius: 50%; background: #b1b8a8; }
.editorial-guide .hero { margin: 0 auto; }
.editorial-guide :is(.hero, .editorial-photo) { width: 100%; max-width: var(--photo-max-width, 720px); }
.editorial-guide .hero-image,
.editorial-guide .content-image img,
.editorial-guide .editorial-photo img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  aspect-ratio: var(--photo-ratio, auto);
  border-radius: 12px;
  background: #dce1d2;
  object-fit: cover;
  object-position: var(--photo-position, 50% 50%);
}
.editorial-guide .editorial-photo { margin: 30px auto; }
.editorial-guide .article-grid {
  display: grid;
  grid-template-columns: 264px minmax(0, var(--reading));
  gap: 48px;
  align-items: start;
  margin-top: 44px;
}
.editorial-guide .side-rail { min-width: 0; }
.editorial-guide .side {
  position: fixed;
  top: var(--rail-top, 168px);
  left: var(--rail-left, max(36px, calc((100vw - 1168px) / 2)));
  z-index: 15;
  width: var(--rail-width, 264px);
  max-height: calc(100dvh - var(--rail-top, 168px) - 24px);
  padding: 0 8px 12px 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  scrollbar-color: #becdb1 transparent;
}
.editorial-guide .side.is-at-footer,
.editorial-guide .side.reading-guide-hidden,
.editorial-guide.reading-guide-hidden .side {
  visibility: hidden;
  pointer-events: none;
}
.editorial-guide .side-label { margin: 0 0 18px; color: #77826e; font-size: 12px; line-height: 1.5; font-weight: 600; letter-spacing: .11em; text-transform: uppercase; }
.editorial-guide .toc { list-style: none; margin: 0; padding: 0; border-left: 1px solid #d9dfce; }
.editorial-guide .toc li { margin: 0; padding: 0; }
.editorial-guide .toc a {
  display: flex;
  gap: 12px;
  align-items: baseline;
  margin-left: -1px;
  padding: 8px 0 8px 16px;
  border-left: 2px solid transparent;
  color: #78856d;
  font-size: 15px;
  line-height: 1.6;
  text-decoration: none;
  transition: color .18s, border-color .18s;
}
.editorial-guide .toc .number { min-width: 17px; font-size: 12px; font-variant-numeric: tabular-nums; opacity: .7; }
.editorial-guide .toc a:hover { color: var(--deep); }
.editorial-guide .toc a.is-active,
.editorial-guide .toc a[aria-current="location"] { border-color: #69a35b; color: var(--deep); font-weight: 600; }
.editorial-guide .side-note { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); }
.editorial-guide .side-note > span { color: #8a9280; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.editorial-guide .side-note p { margin: 12px 0 0; color: #54704c; font: 400 28px/1.25 var(--serif); letter-spacing: -.04em; }
.editorial-guide .mobile-toc { display: none; }
.editorial-guide .article-body { min-width: 0; color: #50584b; font-size: 18px; line-height: 1.8; overflow-wrap: break-word; }
.editorial-guide .article-body p { margin: 0 0 25px; }
.editorial-guide .article-body .intro { color: #404b3a; font-size: 20px; line-height: 1.75; }
.editorial-guide .article-body strong { color: #303c2c; font-weight: 570; }
.editorial-guide .article-body section { margin-top: 55px; scroll-margin-top: 146px; }
.editorial-guide .article-body h2 { margin: 0 0 21px; color: #2d3928; font: 480 37px/1.2 var(--serif); letter-spacing: -.035em; }
.editorial-guide .article-body h3 { margin: 29px 0 10px; color: #34402e; font: 600 20px/1.4 var(--sans); letter-spacing: -.025em; }
.editorial-guide .section-kicker { display: block; margin-bottom: 12px; color: #89967e; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.editorial-guide .article-body :is(ul, ol):not(.steps) { padding-left: 1.2em; }
.editorial-guide .article-body li { margin: 8px 0; }
.editorial-guide .article-body .inline-link { color: #486b38; text-decoration-color: #a7bc99; }
.editorial-guide .takeaway { margin: 30px 0 0; padding: 23px 27px 22px; border: 1px solid #d9e6ca; border-radius: 10px; background: #e9f1df; }
.editorial-guide .takeaway-title { margin-bottom: 12px; color: #4d6940; font-size: 12px; line-height: 1.6; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.editorial-guide .takeaway ul { list-style: none; margin: 0; padding: 0 !important; }
.editorial-guide .takeaway li { display: flex; gap: 11px; align-items: baseline; margin: 8px 0; font-size: 16px; line-height: 1.75; }
.editorial-guide .takeaway li::before { content: "→"; flex-shrink: 0; color: #60834e; }
.editorial-guide .takeaway li:last-child { margin-bottom: 0; }
.editorial-guide .working-example { margin: 28px 0; padding: 23px 25px; border-block: 1px solid #dce3d2; background: #fffef8; }
.editorial-guide .working-example .section-kicker { margin-bottom: 9px; font-size: 10px; }
.editorial-guide .working-example p { margin: 0; color: #536c43; font: 400 24px/1.4 var(--serif); letter-spacing: -.025em; }
.editorial-guide .reperes-table { margin: 25px 0 18px; border: 1px solid #d8dfd0; border-radius: 10px; overflow: hidden; font-size: 16px; }
.editorial-guide .reperes-row { display: grid; grid-template-columns: 1fr 1.1fr; gap: 30px; padding: 16px 20px; border-bottom: 1px solid #dde3d5; background: #ffffff48; }
.editorial-guide .reperes-row:last-child { border-bottom: 0; }
.editorial-guide .reperes-row strong { font-size: 16px; }
.editorial-guide .reperes-head { padding-block: 11px; background: #eaf0e1; color: #75816a; font-size: 11px; font-weight: 550; letter-spacing: .08em; text-transform: uppercase; }
.editorial-guide .table-scroll { margin: 25px 0; overflow-x: auto; }
.editorial-guide .article-body table { width: 100%; border-collapse: collapse; text-align: left; font-size: 16px; }
.editorial-guide .article-body :is(th, td) { padding: 14px 16px; border-bottom: 1px solid var(--line); vertical-align: top; }
.editorial-guide .article-body th { color: #4d6940; font-weight: 600; background: #eaf0e1; }
.editorial-guide .example { margin: 25px 0 22px; border: 1px solid #dce0d3; border-radius: 12px; overflow: hidden; background: #fffefa; }
.editorial-guide .example-top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px 20px; padding: 16px 24px; border-bottom: 1px solid #e9ebdf; background: #f8f9f2; color: #859078; font-size: 12px; }
.editorial-guide .example-top strong { color: #4b5b40; font-size: 12px; letter-spacing: .07em; text-transform: uppercase; }
.editorial-guide .example-badge { padding: 3px 8px; border-radius: 30px; background: #e9eddf; font-size: 11px; }
.editorial-guide .invoice { padding: 30px 29px 22px; }
.editorial-guide .invoice-top { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 20px; margin-bottom: 29px; }
.editorial-guide .invoice-title { color: #424d39; font: 400 33px/1 var(--serif); letter-spacing: -.05em; }
.editorial-guide .invoice-title small { display: block; margin-top: 9px; color: #8b9480; font: 400 12px/1.6 var(--sans); letter-spacing: .04em; }
.editorial-guide .invoice-company { color: #8b9580; font-size: 12px; line-height: 1.6; text-align: right; }
.editorial-guide .invoice-line { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding: 13px 0; border-top: 1px solid #e7ebdf; color: #7a846e; font-size: 15px; }
.editorial-guide .invoice-line:last-child { border-bottom: 1px solid #e7ebdf; }
.editorial-guide .invoice-due { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px 20px; margin-top: 20px; padding: 17px 18px; border-left: 3px solid #a5c88a; border-radius: 0 6px 6px 0; background: #edf4e5; }
.editorial-guide .invoice-due small { display: block; color: #7c8f6c; font-size: 11px; line-height: 1.5; letter-spacing: .07em; text-transform: uppercase; }
.editorial-guide .invoice-due strong { color: #4e6940; font: 450 26px/1.3 var(--serif); letter-spacing: -.035em; }
.editorial-guide .due-annotation { max-width: 180px; color: #6e855c; font-size: 12px; line-height: 1.6; }
.editorial-guide .timeline { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 17px 28px 20px; border-top: 1px solid #e5ebdd; background: #f7f9f1; }
.editorial-guide .timeline-point { color: #7f8d70; font-size: 12px; line-height: 1.6; }
.editorial-guide .timeline-point strong { display: block; color: #4a613a; font-size: 14px; font-weight: 550; }
.editorial-guide .timeline-point:last-child { text-align: right; }
.editorial-guide .timeline-axis { position: relative; flex: 1; min-width: 24px; height: 1px; margin: 0 3px; background: #c7d8b7; }
.editorial-guide .timeline-axis span { position: absolute; top: -11px; left: 50%; transform: translate(-50%, -50%); color: #87a16f; font-size: 11px; white-space: nowrap; }
.editorial-guide .message-box { margin: 24px 0; border: 1px solid #d9e1ce; border-radius: 10px; overflow: hidden; background: #ffffff52; }
.editorial-guide .message-header { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px 16px; padding: 12px 19px; border-bottom: 1px solid #e3e8da; color: #819273; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.editorial-guide .copy-button { padding: 3px 0; border: 0; background: none; color: #5b7449; font-size: 13px; letter-spacing: 0; text-transform: none; }
.editorial-guide .message-box blockquote { margin: 0; padding: 21px 23px; color: #65725b; font-size: 16px; line-height: 1.85; }
.editorial-guide .message-box pre { margin: 0; white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; }
.editorial-guide .steps { counter-reset: steps; list-style: none; margin: 26px 0; padding: 0; }
.editorial-guide .steps li { position: relative; counter-increment: steps; margin: 0; padding: 0 0 20px 39px; }
.editorial-guide .steps li::before { content: counter(steps, decimal-leading-zero); position: absolute; left: 0; top: 2px; display: flex; align-items: center; justify-content: center; width: 25px; height: 25px; border: 1px solid #ccd8c1; border-radius: 50%; color: #789068; font-size: 10px; }
.editorial-guide .steps strong { display: block; margin-bottom: 3px; font-size: 17px; }
.editorial-guide .steps p { margin: 0; font-size: 16px; line-height: 1.8; }
.editorial-guide .steps li:last-child { padding-bottom: 0; }
.editorial-guide .notice { margin: 25px 0; padding: 2px 0 2px 18px; border-left: 2px solid #bacbad; color: #7b886f; font-size: 14px; line-height: 1.8; }
.editorial-guide .notice p { margin: 0; }
.editorial-guide .article-body .note { margin: 0; color: #858d7d; font-size: 14px; line-height: 1.75; }
.editorial-guide .faq { margin-top: 25px; border-top: 1px solid #d8e0cf; }
.editorial-guide .faq details { border-bottom: 1px solid #d8e0cf; }
.editorial-guide .faq summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 19px 0; list-style: none; cursor: pointer; }
.editorial-guide .faq summary::-webkit-details-marker { display: none; }
.editorial-guide .faq summary::after { content: "+"; flex-shrink: 0; color: #839873; font-size: 22px; font-weight: 300; }
.editorial-guide .faq details[open] summary::after { content: "−"; }
.editorial-guide .article-body .faq h3 { margin: 0; color: #4b5d3e; font: 500 17px/1.5 var(--sans); letter-spacing: -.015em; }
.editorial-guide .faq .answer { padding: 0 36px 19px 0; color: #7c8871; font-size: 16px; line-height: 1.85; }
.editorial-guide .faq .answer p { margin: 0 0 10px; }
.editorial-guide .faq .answer p:last-child { margin-bottom: 0; }
.editorial-guide .sources { margin-top: 38px; padding-top: 19px; border-top: 1px solid var(--line); color: #707b65; font-size: 12px; line-height: 1.8; }
.editorial-guide .sources > span { display: block; margin-bottom: 7px; font-size: 11px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.editorial-guide .sources ul { margin: 0; padding-left: 15px; }
.editorial-guide .sources a { text-decoration-color: #bdc8b3; }
.editorial-guide .editorial-signoff { display: flex; align-items: center; gap: 12px; margin-top: 27px; padding-top: 22px; border-top: 1px solid var(--line); }
.editorial-guide .editorial-signoff .avatar { width: 38px; height: 38px; font-size: 21px; }
.editorial-guide .editorial-signoff strong { font-size: 12px; }
.editorial-guide .editorial-signoff p { margin: 1px 0 0; color: #8b9580; font-size: 12px; line-height: 1.7; }
.editorial-guide .article-body .closing { margin-top: 32px; padding-top: 25px; border-top: 1px solid #dbe1d0; color: #4f6940; font: 400 30px/1.45 var(--serif); letter-spacing: -.025em; }
.editorial-guide .dealokr-shared-footer { margin-top: 72px; }

@media (max-width: 1240px) {
  .editorial-guide main { padding-inline: 36px; }
}
@media (max-width: 1099px) {
  .editorial-guide main { max-width: 840px; padding: 35px 36px 0; }
  .editorial-guide .article-header { max-width: none; margin-left: 0; }
  .editorial-guide .breadcrumbs { margin-left: 0; }
  .editorial-guide .article-grid { display: block; margin-top: 32px; }
  .editorial-guide .side-rail, .editorial-guide .side { display: none; }
  .editorial-guide .mobile-toc { display: block; margin-bottom: 27px; border-block: 1px solid var(--line); }
  .editorial-guide .mobile-toc summary { display: flex; align-items: center; justify-content: space-between; padding: 15px 0; list-style: none; color: #687c58; font-size: 15px; cursor: pointer; }
  .editorial-guide .mobile-toc summary::-webkit-details-marker { display: none; }
  .editorial-guide .mobile-toc summary::after { content: "+"; color: #8fa17f; font-size: 22px; }
  .editorial-guide .mobile-toc[open] summary::after { content: "−"; }
  .editorial-guide .mobile-toc nav { display: grid; gap: 12px; padding: 0 0 20px; color: #6a7c5f; font-size: 14px; }
  .editorial-guide .mobile-toc a { text-decoration: none; }
}
@media (max-width: 560px) {
  .editorial-guide main { padding: 28px 23px 0; }
  .editorial-guide .breadcrumbs { gap: 6px 8px; margin-bottom: 25px; font-size: 11px; }
  .editorial-guide main h1 { margin: 17px 0 16px; font-size: 37px; line-height: 1.12; letter-spacing: -.045em; }
  .editorial-guide .dek { font-size: 16px; line-height: 1.75; }
  .editorial-guide .eyebrow { font-size: 9px; letter-spacing: .1em; }
  .editorial-guide .byline { margin: 20px 0 23px; }
  .editorial-guide .hero-image, .editorial-guide .content-image img, .editorial-guide .editorial-photo img { border-radius: 8px; }
  .editorial-guide .article-body { font-size: 17px; line-height: 1.8; }
  .editorial-guide .article-body .intro { font-size: 18px; line-height: 1.75; }
  .editorial-guide .article-body p { margin-bottom: 23px; }
  .editorial-guide .article-body section { margin-top: 40px; scroll-margin-top: 132px; }
  .editorial-guide .article-body h2 { font-size: 31px; }
  .editorial-guide .article-body h3 { margin-top: 23px; font-size: 19px; }
  .editorial-guide .takeaway { margin-top: 25px; padding: 19px 18px 18px; border-radius: 8px; }
  .editorial-guide .takeaway-title { font-size: 11px; }
  .editorial-guide .takeaway li { font-size: 15px; }
  .editorial-guide .working-example { margin: 23px 0; padding: 20px 18px; }
  .editorial-guide .working-example p { font-size: 22px; }
  .editorial-guide .reperes-row { grid-template-columns: 1fr 1.05fr; gap: 13px; padding: 13px; font-size: 14px; }
  .editorial-guide .reperes-row strong { font-size: 14px; }
  .editorial-guide .reperes-head { font-size: 10px; }
  .editorial-guide .article-body table { font-size: 14px; }
  .editorial-guide .article-body :is(th, td) { padding: 12px 10px; }
  .editorial-guide .example-top { padding: 13px 17px; }
  .editorial-guide .invoice { padding: 24px 17px 19px; }
  .editorial-guide .invoice-title { font-size: 29px; }
  .editorial-guide .invoice-line { padding: 11px 0; font-size: 14px; }
  .editorial-guide .invoice-due { margin-top: 17px; padding: 13px 12px; }
  .editorial-guide .invoice-due strong { font-size: 23px; }
  .editorial-guide .timeline { gap: 11px; padding: 18px 17px 17px; }
  .editorial-guide .timeline-point { font-size: 11px; }
  .editorial-guide .timeline-point strong { font-size: 12px; }
  .editorial-guide .timeline-axis span { font-size: 10px; }
  .editorial-guide .message-header { padding: 10px 15px; }
  .editorial-guide .message-box blockquote { padding: 18px 17px; font-size: 15px; }
  .editorial-guide .steps li { padding-left: 34px; padding-bottom: 19px; }
  .editorial-guide .steps strong { font-size: 16px; }
  .editorial-guide .steps p { font-size: 15px; }
  .editorial-guide .notice, .editorial-guide .article-body .note { font-size: 13px; }
  .editorial-guide .faq summary { padding: 17px 0; }
  .editorial-guide .article-body .faq h3 { font-size: 16px; }
  .editorial-guide .faq .answer { padding-right: 20px; font-size: 15px; }
  .editorial-guide .sources { font-size: 11px; }
  .editorial-guide .article-body .closing { font-size: 27px; }
  .editorial-guide .dealokr-shared-footer { margin-top: 48px; }
}
@media (prefers-reduced-motion: reduce) {
  .editorial-guide *, .editorial-guide *::before, .editorial-guide *::after { scroll-behavior: auto !important; transition: none !important; }
}
