/* Generated from supplied FIN HTML, scoped to its native reader. */
.fin{
    --navy: #0B1F3A;
    --teal: #1A6B72;
    --teal-soft: #BFDDE0;
    --orange: #D4550A;
    --orange-soft: #F6D3BF;
    --paper: #F2F4F7;
    --surface: #FFFFFF;
    --text: #0B1F3A;
    --muted: #4A5A70;
    --line: #D3DAE3;
    --focus: #D4550A;
    color-scheme: light;
  }
@media (prefers-color-scheme: dark){.fin{
      --paper: #071528;
      --surface: #0E2442;
      --text: #E9EEF5;
      --muted: #A9B6C8;
      --line: #23395A;
      --teal: #3E9AA2;
      --teal-soft: #24585E;
      --orange-soft: #6B3417;
      color-scheme: dark;
    }}
.fin,.fin{ margin: 0; }
.fin{
    background: var(--paper);
    color: var(--text);
    font: 400 17px/1.55 var(--sans);
  }
.fin-wrap{ max-width: 720px; margin: 0 auto; padding: 0 24px; }
.fin header.fin-brand{ background: var(--navy); color: #fff; }
.fin header.fin-brand .fin-wrap{ padding-top: 18px; padding-bottom: 18px; font: 800 18px/1 var(--display); letter-spacing: 0.02em; }
.fin-body{ padding: 56px 0 72px; }
.fin h1,.fin h2{ font-family: var(--display); font-weight: 800; line-height: 1.12; margin: 0 0 16px; }
.fin-eyebrow{ font-weight: 600; font-size: 14px; letter-spacing: 0.04em; text-transform: uppercase; color: var(--teal); margin-bottom: 14px; }
.fin h1{ font-size: clamp(34px, 6vw, 52px); max-width: 15ch; }
.fin h2{ font-size: 28px; }
.fin p{ margin: 0 0 16px; max-width: 62ch; }
.fin-lead{ font-size: 19px; color: var(--muted); }
.fin-scale{ margin: 32px 0; padding: 0; list-style: none; border-top: 1px solid var(--line); }
.fin-scale li{ display: grid; grid-template-columns: 28px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.fin-swatch{ width: 28px; height: 14px; margin-top: 6px; border-radius: 2px; }
.fin-sw-show{ background: var(--teal); }
.fin-sw-believe{ background: var(--teal-soft); }
.fin-sw-no{ background: var(--orange); }
.fin-sw-ask{ background: repeating-linear-gradient(135deg, var(--orange) 0 4px, var(--orange-soft) 4px 8px); }
.fin button,.fin-btn{
    font: 600 16px/1 var(--sans); border: 0; border-radius: 4px; cursor: pointer;
    padding: 15px 22px; background: var(--orange); color: #fff;
  }
.fin button.fin-secondary{ background: transparent; color: var(--text); border: 1px solid var(--line); }
.fin button:focus-visible,.fin input:focus-visible,.fin select:focus-visible,.fin-choice input:focus-visible + span{
    outline: 3px solid var(--focus); outline-offset: 2px;
  }
.fin-steps{ display: flex; gap: 6px; margin: 0 0 32px; padding: 0; list-style: none; }
.fin-steps li{ flex: 1; font-size: 13px; color: var(--muted); }
.fin-steps li::before{ content: ""; display: block; height: 4px; background: var(--line); margin-bottom: 8px; border-radius: 2px; }
.fin-steps li.fin-done::before{ background: var(--teal); }
.fin-steps li.fin-current{ color: var(--text); font-weight: 600; }
.fin-steps li.fin-current::before{ background: var(--orange); }
.fin fieldset{ border: 0; margin: 0 0 28px; padding: 0; }
.fin legend{ font-weight: 600; font-size: 18px; margin-bottom: 12px; padding: 0; }
.fin-choices{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; }
.fin-choice{ position: relative; }
.fin-choice input{ position: absolute; opacity: 0; inset: 0; margin: 0; }
.fin-choice span{
    display: block; height: 100%; padding: 12px 10px; font-size: 14px; line-height: 1.3;
    background: var(--surface); border: 1px solid var(--line); border-radius: 4px; cursor: pointer;
  }
.fin-choice input:checked + span{ border-color: var(--navy); box-shadow: inset 0 0 0 1px var(--navy); font-weight: 600; }
@media (prefers-color-scheme: dark){.fin-choice input:checked + span{ border-color: var(--text); box-shadow: inset 0 0 0 1px var(--text); }}
.fin-nav{ display: flex; justify-content: space-between; gap: 12px; margin-top: 8px; }
.fin-error{ color: var(--orange); font-weight: 600; min-height: 1.5em; }
.fin-fields{ display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
.fin-fields label{ display: block; font-size: 14px; font-weight: 600; }
.fin-fields .fin-full{ grid-column: 1 / -1; }
.fin input[type=text],.fin input[type=email],.fin select{
    width: 100%; margin-top: 6px; padding: 12px; font: 400 16px var(--sans); color: var(--text);
    background: var(--surface); border: 1px solid var(--line); border-radius: 4px;
  }
.fin-result{ padding: 20px 0; border-top: 1px solid var(--line); }
.fin-result-head{ display: flex; justify-content: space-between; align-items: baseline; gap: 12px; }
.fin-result-head h3{ font: 800 20px/1.2 var(--display); margin: 0; }
.fin-band{ font-weight: 600; }
.fin-bar{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 4px; height: 18px; margin: 12px 0; }
.fin-bar div{ border-radius: 2px; }
.fin-seg-show{ background: var(--teal); }
.fin-seg-believe{ background: var(--teal-soft); }
.fin-seg-no{ background: var(--orange); }
.fin-seg-ask{ background: repeating-linear-gradient(135deg, var(--orange) 0 4px, var(--orange-soft) 4px 8px); }
.fin-ask-count{ font-size: 20px; font-weight: 600; margin: 32px 0 16px; max-width: 40ch; }
.fin-note{ font-size: 14px; color: var(--muted); }
.fin footer{ border-top: 1px solid var(--line); padding: 24px 0; font-size: 14px; color: var(--muted); }
.fin [hidden]{ display: none !important; }
@media (max-width: 640px){.fin-choices{ grid-template-columns: 1fr 1fr; }
.fin-fields{ grid-template-columns: 1fr; }
.fin-steps li{ font-size: 11px; }}
.fin { padding-bottom: 1px; overflow-wrap: anywhere; }
.fin .fin-toolbar { padding-top: 2rem; }
.fin .resource-back { color: var(--text); }
.fin .fin-body { padding: 2rem 24px 4rem; }
.fin .fin-wrap { max-width: 808px; }
.fin h1 { max-width: 18ch; }
.fin h2 { font-size: clamp(1.7rem, 4vw, 2.3rem); }
.fin h1, .fin h2 { scroll-margin-top: calc(var(--header-h) + 1rem); }
.fin button { line-height: 1.3; min-height: 48px; }
.fin .fin-choice span { min-height: 68px; }
.fin .fin-result-head { flex-wrap: wrap; }
.fin .fin-steps { padding-left: 0; }
.fin .fin-scale { padding-left: 0; }
.fin .fin-fields label { min-width: 0; }
.fin .fin-note[role="status"] { padding: 1rem; border-left: 4px solid var(--orange); }
.fin .fin-steps li { overflow-wrap: normal; }
@media (max-width: 400px) { .fin .fin-steps { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; } }
