/* Success story PDF (US Letter, 816 × 1056 CSS px), see src/components/Site/StoryPrint.tsx */
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:100 900;font-display:block;src:url(/assets/fonts/4179443c5359.woff2) format('woff2');unicode-range:U+0000-00FF,U+2013-2014,U+2018-201D,U+2026;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:block;src:url(/assets/fonts/f11d729bb0a4.woff2) format('woff2');unicode-range:U+0000-00FF,U+2013-2014,U+2018-201D,U+2026;}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:block;src:url(/assets/fonts/bf78de0410d3.woff2) format('woff2');unicode-range:U+2022,U+2190-2193,U+2197,U+2318,U+25A0,U+25B2,U+25C6,U+25CF,U+2605-2606,U+2713;}

@page { size: 8.5in 11in; margin: 0; }

:root {
  --sp-ink: #111827;
  --sp-text: #4b5563;
  --sp-navy: #0b2441;
  --sp-cyan: #18a4d6;
  --sp-blue: #0d63c5;
  --sp-credit: #4a6db4;
  --sp-line: #e5e7eb;
  --sp-side: 38px;
  --sp-acc: linear-gradient(90deg, #1ba6e0 0%, #0f74c9 70%, #0d63c5 100%);
}

html, body { margin: 0; background: #fff; }
#epiA11yBtn, #epiA11yPanel, nextjs-portal { display: none !important; }
/* On screen: pages on a gray desk, so the layout can be checked in a browser */
@media screen {
  body { background: #e6e9ee; }
  .sp { width: 816px; margin: 24px auto; background: #fff; box-shadow: 0 10px 40px rgba(0,0,0,.18); }
  .sp-foot { position: static !important; }
}
.sp { color: var(--sp-text); font: 400 13.5px/1.36 'Inter', system-ui, sans-serif; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.sp img { display: block; }
.sp a { color: inherit; text-decoration: none; }

.sp-eyebrow { margin: 0; font: 700 13px/1 'Inter', sans-serif; letter-spacing: .02em; text-transform: uppercase; color: var(--sp-cyan); }
/* Gradient text; an inline block so Chromium's PDF output can't paint the gradient above the line */
.acc { display: inline-block; padding-bottom: .06em; background: var(--sp-acc); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* Contact line at the foot of every page */
.sp-foot { position: fixed; left: 32px; right: 32px; bottom: 0; height: 66px; box-sizing: border-box; padding-top: 10px; border-top: 1px solid var(--sp-line); text-align: right; font: 500 10.5px/1 'Inter', sans-serif; color: #6b7280; padding-right: 6px; }
.sp-foot span { margin: 0 4px; color: #9ca3af; }

/* Headings: tight letter-spacing plus a little word-spacing, so PDF readers still see the spaces
   (copy, search, screen readers) */
/* Cover */
.sp-cover { position: relative; height: 1056px; box-sizing: border-box; padding: 38px var(--sp-side) 0; break-after: page; overflow: hidden; }
.sp-logo { width: 182px; height: auto; margin-bottom: 38px; }
.sp-hero { width: 100%; height: 258px; object-fit: cover; border-radius: 10px; margin-bottom: 44px; }
.sp-title { margin: 30px 0 30px; font: 800 52px/1 'Inter Tight', sans-serif; letter-spacing: -.045em; word-spacing: .08em; color: var(--sp-ink); }
.sp-title.is-long { font-size: 44px; }
.sp-title .ln { display: block; padding-bottom: 2px; }
.sp-summary { margin: 0 0 10px; font-size: 13.5px; line-height: 1.38; color: var(--sp-text); }
.sp-photos { display: grid; gap: 26px; margin-top: 30px; }
.sp-photos.n3 { grid-template-columns: repeat(3, 1fr); padding: 0 8px; }
.sp-photos.n2 { grid-template-columns: repeat(2, 1fr); }
.sp-photos img { width: 100%; height: 208px; object-fit: cover; border-radius: 10px; }
.sp-photos.n1 img { height: auto; max-height: 230px; object-fit: contain; }

/* Story pages: the navy band is the table header, repeated on every page */
.sp-pages { width: 100%; border-collapse: collapse; }
.sp-pages td { padding: 0; }
.sp-band { position: relative; height: 158px; display: flex; justify-content: space-between; align-items: flex-start; padding: 40px var(--sp-side) 0; box-sizing: border-box; background: linear-gradient(100deg, #0d2b4c 0%, #0b2441 45%, #0b1220 100%); clip-path: polygon(0 0, 100% 0, 100% 74%, 0 100%); margin-bottom: 52px; }
.sp-band img { width: 182px; height: auto; margin-top: 2px; }
.sp-band > div { text-align: right; }
.sp-band .sp-eyebrow { font-size: 12.5px; margin-top: 2px; }
.sp-merchant { margin: 10px 0 0; font: 800 34px/1 'Inter Tight', sans-serif; letter-spacing: -.04em; word-spacing: .08em; color: #fff; }
.sp-footspace { height: 76px; }

.sp-body { padding: 0 var(--sp-side); }
.sp-body h2, .sp-body h3 { margin: 30px 0 16px; font: 700 29px/1.12 'Inter Tight', sans-serif; letter-spacing: -.035em; word-spacing: .07em; color: var(--sp-ink); break-after: avoid; max-width: 680px; }
.sp-body h3 { font-size: 27px; }
.sp-body > :first-child { margin-top: 0; }
.sp-body p { margin: 0 0 16px; orphans: 3; widows: 3; }
.sp-body strong { font-weight: 600; color: #374151; }
.sp-body ol { margin: 0 0 18px; padding-left: 92px; }
.sp-body li { margin-bottom: 14px; }
.sp-checks { list-style: none; margin: 4px 0 22px; padding: 0 0 0 72px; }
.sp-checks li { position: relative; padding-left: 42px; margin-bottom: 18px; color: #1f2937; font-weight: 500; font-size: 13.5px; break-inside: avoid; }
.sp-checks li::before { content: ''; position: absolute; left: 0; top: -1px; width: 19px; height: 19px; border-radius: 50%; background: #e3effb url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.3l3 3 6-6.3' fill='none' stroke='%231d6fd1' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat; }
.sp-quote { margin: 4px 0 22px; padding: 22px 26px 20px; border: 1px solid var(--sp-line); border-radius: 10px; background: #fff; box-shadow: 0 6px 14px -6px rgba(17,24,39,.22), 0 1px 2px rgba(17,24,39,.06); break-inside: avoid; }
.sp-quote blockquote { margin: 0; font: italic 700 17.5px/1.45 'Inter', sans-serif; letter-spacing: .035em; color: var(--sp-ink); }
.sp-quote figcaption { margin-top: 18px; font: 700 13px/1 'Inter', sans-serif; color: var(--sp-credit); }
.sp-figure { margin: 6px 0 22px; break-inside: avoid; }
.sp-figure img { width: 100%; max-height: 330px; object-fit: cover; border-radius: 10px; }

/* Closing call to action */
.sp-cta { margin: 14px 0 0; padding: 32px 110px 34px; background: #f3f7fb; border-top: 1px solid #e8eef5; text-align: center; break-inside: avoid; }
.sp-cta p { margin: 0; font: 800 28px/1.1 'Inter Tight', sans-serif; letter-spacing: -.045em; word-spacing: .08em; color: var(--sp-ink); }

/* Symbols missing from the Latin font files above: ℠ ™ and arrows (← ↑ → ↓ ↗). Without these the
   browser borrows them from another font, often a serif. Tiny subsets from Google Fonts, only
   downloaded on pages that use one. */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-symbols.woff2) format('woff2');unicode-range:U+2120,U+2122,U+2190-2193,U+2197;}
@font-face{font-family:'Inter Tight';font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts/inter-tight-symbols.woff2) format('woff2');unicode-range:U+2120,U+2122,U+2190-2193,U+2197;}
