/* Supporting pages share the blue palette while retaining their content,
   native structure, theme toggle and purchase behaviour. */
.document-page { overflow-wrap:break-word; font-size:17px; line-height:1.65; }
.document-page > div > div[style*='position:fixed'],
.document-page > div[style*='position:fixed'],
.document-page x-dc > div > div[style*='position:fixed'] { display:none; }
.document-page header { background:var(--page); }
.document-page header > div { max-width:1360px!important; width:calc(100% - var(--gutter) * 2); min-height:90px; padding:0!important; }
.document-page header > div > a:first-child span { font-family:var(--serif)!important; font-size:33px!important; letter-spacing:-.035em; }
.document-page header > div > a:first-child svg > rect:first-child { fill:#153c26; stroke:#78b092; }
.document-page header > div > a:first-child svg > rect:not(:first-child) { fill:#f2f8f5; }
.document-page header > div > a:first-child svg > circle,
.document-page header > div > a:first-child svg > rect:nth-of-type(3) { fill:#bfffd3; }
.document-page header > div > a:nth-child(2) { display:inline-flex; align-items:center; min-height:44px; font-family:var(--sans)!important; font-size:14px!important; line-height:1.4; text-transform:none!important; letter-spacing:0!important; }
.document-page main { max-width:960px!important; width:calc(100% - var(--gutter) * 2); padding:100px 0 110px!important; }
.document-page main h1 { font-family:var(--sans)!important; font-weight:400; font-size:clamp(52px,6.7vw,96px)!important; line-height:1.04!important; letter-spacing:-.055em!important; max-width:12em; margin-bottom:35px!important; }
.document-page main h1:has(a[href^='mailto:']) { font-size:clamp(28px,6vw,82px)!important; max-width:none; letter-spacing:-.045em!important; }
.document-page main h2 { font-family:var(--sans)!important; line-height:1.18!important; letter-spacing:-.03em!important; }
.document-page main h3 { font-family:var(--sans)!important; letter-spacing:-.02em; }
.document-page main > h2 { margin-top:65px!important; }
.document-page main :is(p,li,dd,td) { font-size:17px!important; line-height:1.7!important; }
.document-page main > p { max-width:40em!important; }
.document-page .eyebrow,
.document-page main [style*='text-transform:uppercase'] { font-family:var(--sans)!important; text-transform:none!important; font-size:14px!important; line-height:1.5!important; letter-spacing:.01em!important; }
.document-page main > div:first-child:not(.security-opening) { font-family:var(--sans)!important; text-transform:none!important; letter-spacing:.01em!important; }
.document-page main section[style*='border-radius'],
.document-page main > div[style*='border-radius'] { border-radius:5px!important; box-shadow:none!important; }
.document-page main a:not(.card):not([style*='display:flex']) { text-decoration:underline; text-underline-offset:4px; }
.document-page main a:hover { color:var(--ink); }
.document-page footer > div { max-width:1360px!important; width:calc(100% - var(--gutter) * 2); padding:32px 0!important; font-family:var(--sans)!important; letter-spacing:.01em!important; font-size:14px!important; line-height:1.6; }
.document-page footer a { display:inline-flex; align-items:center; min-height:44px; text-transform:none; }
.document-page .card { padding:35px 32px; border-radius:5px; background:var(--panel); border-color:var(--rule); max-width:none; }
.document-page .card h3 { font-size:34px; line-height:1.15; }
.document-page .card p { max-width:37em; }
.document-page .card:hover { border-color:var(--sage); }
.document-page table { max-width:none; }
.document-page th { color:var(--sage); font:500 14px/1.5 var(--sans); text-transform:none; letter-spacing:0; }
.document-page th,.document-page td { padding:18px 16px; }
.document-page .tablewrap { margin:30px 0; overflow-x:auto; }
.document-page .tablewrap table { min-width:560px; }
.document-page code { overflow-wrap:anywhere; }
.document-page main .fine { font-size:16px!important; }
.checkout-page main { max-width:600px!important; padding-top:80px!important; }
.checkout-page main h1 { font-size:clamp(62px,7.5vw,96px)!important; margin-bottom:25px!important; }
.checkout-page main > div[style*='border-radius'] { border-top:3px solid var(--signal)!important; }
.checkout-page main button { border-radius:5px!important; min-height:56px!important; }
.checkout-page #buy { color:var(--button-ink)!important; background:var(--signal)!important; font-size:18px!important; font-weight:500!important; }
.checkout-page #buy:hover { background:var(--button-hover)!important; }
.document-page.security-page .security-main { width:min(calc(100% - var(--gutter) * 2),1360px); max-width:1360px!important; margin-inline:auto; }
.security-opening { position:relative; padding:5px 32% 80px 0; border-bottom:1px solid var(--rule); }
.document-page .security-opening h1 { max-width:9em!important; font-size:clamp(56px,7vw,108px)!important; }
.document-page .security-opening > p { font-size:19px!important; margin-top:35px; max-width:32em; }
.security-seal { position:absolute; width:27%; aspect-ratio:1; right:1%; top:60px; }
.security-seal > span { position:absolute; inset:0; border:1px solid var(--rule); transform:rotate(-9deg); }
.security-seal > span:nth-child(2) { inset:12%; transform:rotate(6deg); background:var(--panel); border-color:var(--quiet); }
.security-seal > span:last-child { inset:26%; display:flex; align-items:center; justify-content:center; transform:none; background:var(--surface); border-color:var(--sage); }
.security-seal svg { width:50px; height:50px; }
.security-document { display:grid; grid-template-columns:240px minmax(0,1fr); gap:9%; padding-top:65px; }
.security-index { position:sticky; top:50px; align-self:start; }
.security-page .security-index a { display:flex; gap:16px; padding:18px 0; color:var(--muted); border-top:1px solid var(--rule); text-decoration:none!important; font-size:15px; line-height:1.55; }
.security-page .security-index a:hover { color:var(--signal); }
.security-index a span { color:var(--quiet); font:14px/1.65 var(--sans); }
.security-document section { padding-bottom:55px; margin-bottom:35px; border-bottom:1px solid var(--rule); scroll-margin-top:50px; }
.security-document section:last-child { border-bottom:0; margin-bottom:0; }
.security-document h2 { margin:0 0 28px; font-size:40px; line-height:1.15; }
.security-document ol { list-style:none; counter-reset:procedure; padding:0; margin-block:30px; max-width:none; }
.security-document ol li { counter-increment:procedure; position:relative; padding:24px 0 24px 58px; margin:0; border-top:1px solid var(--rule); }
.security-document ol li::before { content:'0' counter(procedure); position:absolute; left:0; top:23px; color:var(--sage); font:400 28px/1.2 var(--sans); }
@media (max-width:1000px) {
  .security-document { grid-template-columns:180px minmax(0,1fr); gap:6%; }
  .security-opening { padding-right:29%; }
}
@media (max-width:760px) {
  .document-page header > div { min-height:76px; gap:13px!important; }
  .document-page header > div > a:first-child span { font-size:28px!important; }
  .document-page header > div > a:nth-child(2) { font-size:14px!important; }
  .document-page main { padding:60px 0 75px!important; }
  .document-page main h1 { font-size:clamp(43px,10.5vw,70px)!important; margin-bottom:28px!important; }
  .document-page main h1:has(a[href^='mailto:']) { font-size:clamp(28px,7vw,52px)!important; }
  .document-page main :is(p,li,dd,td) { font-size:16px!important; }
  .document-page main section[style*='padding:30px'] { padding:25px 20px!important; }
  .document-page .card { padding:27px 22px; }
  .document-page .card h3 { font-size:29px; }
  .document-page footer > div { align-items:flex-start!important; }
  .document-page footer > div > div { margin-left:0!important; flex-wrap:wrap; }
  .document-page [style*='grid-template-columns:minmax(0,15em)'],
  .document-page [style*='grid-template-columns:minmax(0,16em)'],
  .document-page [style*='grid-template-columns:170px'] { grid-template-columns:1fr!important; gap:8px!important; }
  .checkout-page main { padding-top:55px!important; }
  .checkout-page main h1 { font-size:clamp(44px,13.5vw,78px)!important; }
  .security-opening { padding:0 0 45px; }
  .document-page .security-opening h1 { font-size:clamp(43px,10.5vw,70px)!important; }
  .document-page .security-opening > p { font-size:17px!important; }
  .security-seal { position:relative; width:60%; margin:50px auto 10px; right:auto; top:auto; }
  .security-document { display:block; padding-top:35px; }
  .security-index { position:static; margin-bottom:50px; }
  .security-index a { padding-block:14px; }
  .security-document h2 { font-size:33px; }
  .security-document section { padding-bottom:30px; margin-bottom:45px; }
}
@media (prefers-reduced-motion:reduce) { .document-page { scroll-behavior:auto; } }
