
  :root {
    /* Payne Home Loans palette, sample v1 */
    --espresso: #17120E;   /* primary dark surface */
    --walnut:   #231B15;   /* raised dark surface */
    --umber:    #3A2E24;   /* dark hairlines */
    --ivory:    #F4EDE1;   /* text on dark, light section bg */
    --paper:    #FBF8F2;   /* lightest surface */
    --ink:      #1E1813;   /* text on light */
    --stone:    #75685A;   /* muted text on light */
    --sand:     #B9AC9B;   /* muted text on dark */
    --line:     #E3D9C9;   /* light hairlines */
    --honey:    #D4A04C;   /* accent on dark */
    --honey-d:  #95661F;   /* accent on light (AA contrast) */
    --flag:     #8E3B2E;   /* underline + eyebrow dot on light sections */
    --flag-l:   #B4483A;   /* same job on dark sections */

    --serif: "Source Serif 4", Georgia, serif;
    --sans: "Inter", system-ui, -apple-system, sans-serif;
    --wrap: 1180px;
  }
  * { box-sizing: border-box; margin: 0; }
  html { scroll-behavior: smooth; }
  body { background: var(--paper); color: var(--ink); font: 400 17px/1.65 var(--sans); -webkit-font-smoothing: antialiased; }
  img { display: block; max-width: 100%; }
  a { color: inherit; text-decoration: none; }
  .wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 24px; }
  .eyebrow { font: 600 12px/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--honey-d); }
  .dark .eyebrow { color: var(--honey); }
  h1, h2, h3 { font-family: var(--serif); font-weight: 600; letter-spacing: -.015em; line-height: 1.1; }
  h2 { font-size: clamp(34px, 4.4vw, 52px); }
  h2 em, h1 em { font-style: normal; text-decoration: underline; text-decoration-color: var(--flag-l); text-decoration-thickness: .07em; text-underline-offset: .14em; text-decoration-skip-ink: none; }
  .light h2 em { text-decoration-color: var(--flag); }
  @media (min-width: 961px) { h1 em, h2 em { white-space: nowrap; } }
  .eyebrow::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--flag); margin-right: 10px; vertical-align: 1px; }
  .dark .eyebrow::before { background: var(--flag-l); }
  .btn { display: inline-flex; align-items: center; gap: 10px; padding: 15px 26px; border-radius: 999px; font: 600 15px/1 var(--sans); transition: transform .15s, background .15s; }
  .btn:hover { transform: translateY(-1px); }
  .btn-honey { background: var(--honey); color: var(--espresso); }
  .btn-honey:hover { background: #E0B062; }
  .btn-ghost { border: 1px solid rgba(244,237,225,.28); color: var(--ivory); }
  .btn-ghost:hover { border-color: var(--ivory); }
  .btn-ink { background: var(--ink); color: var(--ivory); }

  /* nav */
  header { position: absolute; inset: 0 0 auto; z-index: 10; }
  nav { display: flex; align-items: center; justify-content: space-between; height: 84px; }
  .logo { display: flex; align-items: center; gap: 12px; color: var(--ivory); }
  .mark { height: 40px; width: auto; }
  .logo b { display: block; font: 600 19px/1.05 var(--serif); }
  .logo small { display: block; font: 600 10px/1.4 var(--sans); letter-spacing: .22em; color: var(--sand); }
  .links { display: flex; gap: 30px; font-size: 14.5px; color: var(--sand); }
  .links a:hover { color: var(--ivory); }
  .navcta { display: flex; align-items: center; gap: 20px; font-size: 14.5px; color: var(--ivory); }
  .navcta .btn { padding: 11px 20px; font-size: 14px; }

  /* hero */
  .hero { background: var(--espresso); color: var(--ivory); position: relative; overflow: hidden; min-height: 760px; display: flex; align-items: center; }
  /* photo keeps its own 16:9 shape: height follows the hero, width follows the height, pinned right below the nav */
  .hero-img { position: absolute; top: 78px; bottom: 0; right: max(0px, calc((100% - 1180px) / 2 - 160px)); width: auto; aspect-ratio: 1672 / 941; background: url(img/hero.jpg) center/cover no-repeat; }
  /* soft fade on every edge, like The Lone Haus hero: the photo dissolves into the page instead of ending in a box */
  .hero-img { -webkit-mask-image: radial-gradient(ellipse 58% 66% at 58% 42%, #000 38%, rgba(0,0,0,.55) 66%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 22%); -webkit-mask-composite: source-in; mask-image: radial-gradient(ellipse 58% 66% at 58% 42%, #000 38%, rgba(0,0,0,.55) 66%, transparent 100%), linear-gradient(180deg, transparent 0%, #000 22%); mask-composite: intersect; animation: heroZoom 7s cubic-bezier(.16,.7,.2,1) both; transform-origin: 58% 40%; }
  .hero-img::after { content: ""; position: absolute; inset: 0; background: radial-gradient(120% 90% at 58% 42%, rgba(23,18,14,0) 45%, rgba(23,18,14,.45) 100%), linear-gradient(180deg, rgba(23,18,14,0) 55%, var(--espresso) 100%); }
  @keyframes heroZoom { from { transform: scale(1.22); } to { transform: scale(1); } }
  @media (prefers-reduced-motion: reduce) { .hero-img { animation: none; } }
  .hero .wrap { position: relative; width: 100%; padding-top: 110px; padding-bottom: 80px; }
  .hero-copy { max-width: 600px; }
  .hero h1 { font-size: clamp(48px, 6.6vw, 86px); margin: 22px 0 24px; }
  .hero p { font-size: 19px; color: var(--sand); max-width: 500px; }
  .hero .actions { display: flex; flex-wrap: wrap; gap: 14px; margin: 38px 0 48px; }
  .proof { display: flex; flex-wrap: wrap; gap: 14px 32px; font-size: 14px; color: var(--sand); }
  .proof span b { color: var(--ivory); font-weight: 600; }
  .stars { color: var(--honey); letter-spacing: 2px; margin-right: 6px; }

  /* trust strip */
  .strip { background: var(--walnut); color: var(--sand); border-top: 1px solid var(--umber); }
  .strip .wrap { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 18px 40px; padding-top: 26px; padding-bottom: 26px; font-size: 14px; }
  .strip b { font: 500 22px/1 var(--serif); color: var(--ivory); margin-right: 8px; }

  /* services */
  section { padding: 120px 0; }
  .light { background: var(--paper); }
  .ivory { background: var(--ivory); }
  .head { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; align-items: end; margin-bottom: 64px; }
  .head p { color: var(--stone); max-width: 470px; }
  .services { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
  .svc { padding: 36px 32px 40px 0; border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: 14px; }
  .svc:not(:nth-child(3n+1)) { padding-left: 32px; border-left: 1px solid var(--line); }
  .svc .n { font: 600 15px/1 var(--serif); color: var(--honey-d); }
  .svc h3 { font-size: 28px; }
  .svc p { color: var(--stone); font-size: 16px; flex: 1; }
  .svc a { font-weight: 600; font-size: 14.5px; color: var(--ink); border-bottom: 1px solid var(--honey-d); align-self: flex-start; padding-bottom: 2px; }
  .svc.feature { background: var(--ink); color: var(--ivory); padding: 36px 32px 40px; border: 0; }
  .svc.feature p { color: var(--sand); }
  .svc.feature .n { color: var(--honey); }
  .svc.feature a { color: var(--ivory); border-color: var(--honey); }
  .tag { font: 600 11px/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--espresso); background: var(--honey); padding: 6px 10px; border-radius: 99px; align-self: flex-start; }

  /* about */
  .about { background: var(--espresso); color: var(--ivory); }
  .about .grid { display: grid; grid-template-columns: 5fr 6fr; gap: 80px; align-items: center; }
  .about figure { position: relative; }
  .about figure img { border-radius: 4px; aspect-ratio: 4/5; object-fit: cover; object-position: 50% 25%; width: 100%; }
  .about figcaption { position: absolute; left: -1px; bottom: 28px; background: var(--honey); color: var(--espresso); padding: 14px 20px; font: 600 17px/1.3 var(--serif); }
  .about h2 { margin: 20px 0 28px; }
  .about p { color: var(--sand); margin-bottom: 18px; }
  .about p.lead { font: 400 23px/1.45 var(--serif); color: var(--ivory); }
  .stats { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--umber); margin-top: 40px; padding-top: 28px; gap: 20px; }
  .stats b { display: block; font: 500 34px/1 var(--serif); color: var(--honey); margin-bottom: 8px; }
  .stats span { font-size: 13.5px; color: var(--sand); line-height: 1.4; display: block; }
  .about .actions { display: flex; gap: 14px; margin-top: 40px; flex-wrap: wrap; }

  /* steps */
  .steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
  .step { background: var(--paper); border: 1px solid var(--line); border-radius: 6px; padding: 36px 32px; }
  .step .n { font: 400 64px/1 var(--serif); color: var(--honey-d); opacity: .9; }
  .step h3 { font-size: 26px; margin: 22px 0 12px; }
  .step p { color: var(--stone); font-size: 16px; }

  /* reviews */
  .review { display: grid; grid-template-columns: 1fr 2fr; gap: 80px; align-items: start; }
  .score b { display: block; font: 400 120px/.9 var(--serif); color: var(--ink); }
  .score .stars { color: var(--honey-d); font-size: 20px; display: block; margin: 16px 0 8px; }
  .score span { color: var(--stone); font-size: 15px; }
  blockquote { font: 400 clamp(26px, 3vw, 36px)/1.35 var(--serif); color: var(--ink); }
  blockquote::before { content: "\201C"; display: block; font: 600 90px/.6 var(--serif); color: var(--honey-d); margin-bottom: 18px; }
  .who { margin-top: 28px; font-size: 15px; color: var(--stone); }
  .who b { color: var(--ink); font-weight: 600; }
  .note { margin-top: 18px; font-size: 12.5px; color: var(--flag); }

  /* cta */
  .cta { background: var(--walnut); color: var(--ivory); text-align: center; }
  .cta h2 { font-size: clamp(40px, 5.4vw, 68px); max-width: 820px; margin: 22px auto 22px; }
  .cta p { color: var(--sand); max-width: 560px; margin: 0 auto 40px; }
  .cta .actions { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

  footer { background: var(--espresso); color: var(--sand); padding: 72px 0 40px; font-size: 14px; }
  .fgrid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 40px; padding-bottom: 48px; border-bottom: 1px solid var(--umber); }
  footer h4 { font: 600 11px/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--ivory); margin-bottom: 18px; }
  footer li { list-style: none; margin-bottom: 10px; }
  footer ul { padding: 0; }
  footer a:hover { color: var(--ivory); }
  .legal { padding-top: 28px; font-size: 12.5px; line-height: 1.7; }

  @media (max-width: 960px) {
    .links { display: none; }
    .navcta .phone { display: none; }
    .head, .about .grid, .review { grid-template-columns: 1fr; gap: 40px; }
    .services, .steps { grid-template-columns: 1fr; }
    .svc, .svc:not(:nth-child(3n+1)) { padding: 30px 0; border-left: 0; }
    .svc.feature { padding: 30px 24px; }
    .stats { grid-template-columns: repeat(2, 1fr); }
    .fgrid { grid-template-columns: 1fr 1fr; }
    .hero { min-height: 0; }
    .hero-img { inset: 0; right: 0; width: auto; aspect-ratio: auto; background: url(img/hero-mobile.jpg) center top/cover no-repeat; }
    .hero-img { -webkit-mask-image: linear-gradient(180deg, #000 50%, transparent 92%); mask-image: linear-gradient(180deg, #000 50%, transparent 92%); }
    .hero-img::after { background: linear-gradient(0deg, var(--espresso) 30%, rgba(23,18,14,.55) 70%, rgba(23,18,14,.4) 100%); }
    .hero .wrap { padding-top: 470px; }
    section { padding: 84px 0; }
  }
  @media (max-width: 520px) {
    .wrap { padding: 0 16px; }
    .navcta .btn { display: none; }
    .fgrid { grid-template-columns: 1fr; }
  }

  :root { color-scheme: light; }
  .logo em.pw { display: block; margin-top: 3px; font: italic 400 11px/1.3 var(--serif); letter-spacing: .01em; color: var(--sand); opacity: .78; white-space: nowrap; }
  @media (max-width: 420px) { .logo em.pw { font-size: 10px; } }
  /* nav dropdown + mobile menu */
  .links { align-items: center; }
  .drop { position: relative; }
  .drop > button { all: unset; cursor: pointer; color: var(--sand); }
  .drop > button:hover, .drop:focus-within > button { color: var(--ivory); }
  .drop > button::after { content: " \25BE"; font-size: 11px; }
  .menu { position: absolute; top: 100%; left: -18px; padding-top: 14px; display: none; }
  .menu div { background: var(--walnut); border: 1px solid var(--umber); border-radius: 6px; padding: 10px 0; min-width: 230px; box-shadow: 0 18px 40px rgba(0,0,0,.35); }
  .menu a { display: block; padding: 9px 18px; color: var(--sand); }
  .menu a:hover { color: var(--ivory); background: rgba(244,237,225,.05); }
  .drop:hover .menu, .drop:focus-within .menu { display: block; }
  .links a[aria-current="page"], .drop.on > button { color: var(--ivory); }
  details.mnav { display: none; }
  details.mnav summary { list-style: none; cursor: pointer; color: var(--ivory); border: 1px solid rgba(244,237,225,.28); border-radius: 99px; padding: 9px 16px; font-size: 14px; }
  details.mnav summary::-webkit-details-marker { display: none; }
  details.mnav[open] summary { border-color: var(--honey); }
  details.mnav .panel { position: absolute; left: 16px; right: 16px; top: 76px; background: var(--walnut); border: 1px solid var(--umber); border-radius: 8px; padding: 14px 20px 18px; display: grid; gap: 2px; z-index: 20; }
  details.mnav .panel a { padding: 9px 0; color: var(--ivory); border-bottom: 1px solid var(--umber); }
  details.mnav .panel small { color: var(--honey); letter-spacing: .16em; font-size: 11px; font-weight: 600; margin-top: 12px; }
  .navcta details.mnav .panel .btn { display: inline-flex; }
  details.mnav .panel .btn { margin-top: 14px; justify-content: center; border: 0; color: var(--espresso); }
  :focus-visible { outline: 2px solid var(--honey); outline-offset: 3px; }

  /* inner page hero */
  .phero { background: var(--espresso); color: var(--ivory); padding: 170px 0 96px; position: relative; overflow: hidden; }
  .phero::before { content: ""; position: absolute; inset: auto -10% -60% 45%; height: 420px; background: radial-gradient(closest-side, rgba(212,160,76,.12), transparent); }
  .phero .wrap { position: relative; }
  .phero h1 { font-size: clamp(42px, 5.6vw, 70px); margin: 22px 0 22px; max-width: 900px; text-wrap: balance; }
  .phero p.lead { font-size: 19px; color: var(--sand); max-width: 640px; }
  .phero .actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 36px; }
  h2, h3 { text-wrap: balance; }

  /* content blocks */
  .block { padding: 104px 0; }
  .block + .block.light, .block.light + .block.light { border-top: 1px solid var(--line); }
  .block.ivory + .block.ivory { padding-top: 0; }
  .split { display: grid; grid-template-columns: 5fr 7fr; gap: 72px; align-items: start; }
  .split > * { min-width: 0; }
  .split h2 { margin-top: 18px; }
  .prose p { color: var(--stone); margin-bottom: 18px; max-width: 66ch; }
  .prose p:first-child { font: 400 22px/1.5 var(--serif); color: var(--ink); }
  .dark .prose p { color: var(--sand); }
  .dark .prose p:first-child { color: var(--ivory); }
  .ticks { list-style: none; padding: 0; display: grid; gap: 0; border-top: 1px solid var(--line); }
  .ticks li { padding: 14px 0 14px 32px; border-bottom: 1px solid var(--line); position: relative; color: var(--ink); }
  .ticks li::before { content: ""; position: absolute; left: 4px; top: 22px; width: 12px; height: 7px; border-left: 2px solid var(--honey-d); border-bottom: 2px solid var(--honey-d); transform: rotate(-45deg); }
  .dark .ticks { border-color: var(--umber); }
  .dark .ticks li { color: var(--ivory); border-color: var(--umber); }
  .dark .ticks li::before { border-color: var(--honey); }
  .two-lists { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
  .two-lists h3 { font-size: 24px; margin-bottom: 18px; }
  .glance { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); border: 1px solid var(--line); border-radius: 6px; background: var(--paper); }
  .glance div { padding: 24px 24px 26px; border-right: 1px solid var(--line); }
  .glance div:last-child { border-right: 0; }
  .glance dt { font: 600 11px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--stone); margin-bottom: 12px; }
  .glance dd { margin: 0; font: 600 20px/1.3 var(--serif); color: var(--ink); }
  .cards { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
  .cards.c2 { grid-template-columns: repeat(2, 1fr); }
  .cards.c4 { grid-template-columns: repeat(4, 1fr); }
  .card { padding: 32px 28px 36px 0; border-bottom: 1px solid var(--line); }
  .card + .card { padding-left: 28px; border-left: 1px solid var(--line); }
  .cards.c3 .card:nth-child(3n+1), .cards:not(.c2):not(.c4) .card:nth-child(3n+1) { padding-left: 0; border-left: 0; }
  .cards.c2 .card:nth-child(2n+1) { padding-left: 0; border-left: 0; }
  .cards.c4 .card:nth-child(4n+1) { padding-left: 0; border-left: 0; }
  .card h3 { font-size: 24px; margin-bottom: 10px; }
  .card p { color: var(--stone); font-size: 16px; }
  .card .k { font: 600 11px/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--honey-d); display: block; margin-bottom: 14px; }
  .dark .cards, .dark .card { border-color: var(--umber); }
  .dark .card p { color: var(--sand); }
  .dark .card .k { color: var(--honey); }
  .tl { display: grid; gap: 0; border-left: 1px solid var(--line); margin-left: 8px; }
  .tl li { list-style: none; padding: 0 0 34px 34px; position: relative; }
  .tl li::before { content: ""; position: absolute; left: -6px; top: 8px; width: 11px; height: 11px; border-radius: 50%; background: var(--paper); border: 2px solid var(--honey-d); }
  .tl b { display: block; font: 600 13px/1 var(--sans); letter-spacing: .14em; color: var(--honey-d); margin-bottom: 8px; }
  .tl h3 { font-size: 22px; margin-bottom: 6px; }
  .tl p { color: var(--stone); font-size: 16px; max-width: 60ch; }
  ol.steps2 { list-style: none; padding: 0; counter-reset: s; display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 56px; }
  ol.steps2 li { counter-increment: s; padding: 26px 0 28px 64px; border-top: 1px solid var(--line); position: relative; }
  ol.steps2 li::before { content: counter(s); position: absolute; left: 0; top: 22px; font: 600 34px/1 var(--serif); color: var(--honey-d); }
  ol.steps2 h3 { font-size: 21px; margin-bottom: 6px; }
  ol.steps2 p { color: var(--stone); font-size: 15.5px; }
  .tablewrap { overflow-x: auto; border: 1px solid var(--line); border-radius: 6px; background: var(--paper); }
  table { border-collapse: collapse; width: 100%; min-width: 620px; font-size: 15px; font-variant-numeric: tabular-nums; }
  th, td { text-align: left; padding: 14px 18px; border-bottom: 1px solid var(--line); vertical-align: top; }
  thead th { font: 600 11px/1.3 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--stone); background: var(--ivory); }
  tbody th { font-weight: 600; color: var(--ink); }
  tbody tr:last-child > * { border-bottom: 0; }
  td { color: var(--stone); }
  .callout { margin-top: 36px; padding: 22px 26px; border-left: 3px solid var(--flag); background: var(--paper); color: var(--ink); font-size: 16px; }
  .dark .callout { background: var(--walnut); color: var(--ivory); border-color: var(--flag-l); }
  .contact-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
  .contact-grid .step b { display: block; font: 600 26px/1.2 var(--serif); margin: 14px 0 6px; color: var(--ink); word-break: break-word; }
  .contact-grid .step span { color: var(--stone); font-size: 15px; }
  .platforms { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; margin-top: 48px; }
  .platforms .step b { font: 600 46px/1 var(--serif); display: block; margin: 12px 0 8px; }
  .ph { border: 1px dashed var(--line); border-radius: 6px; padding: 28px; color: var(--stone); font: 400 20px/1.5 var(--serif); }
  .ph small { display: block; margin-top: 14px; font: 500 13px/1.4 var(--sans); color: var(--flag); }
  .test-banner { background: var(--flag); color: var(--ivory); text-align: center; font-size: 13px; padding: 8px 16px; position: relative; z-index: 30; }
  .test-banner a { text-decoration: underline; }
  .test-banner { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; height: 36px; line-height: 20px; }
  @media (max-width: 600px) { .test-banner .long { display: none; } }

  /* home chooser: sliding cards */
  .chooser { background: var(--espresso); color: var(--ivory); padding: 40px 0 110px; }
  .chooser-head { display: grid; gap: 16px; margin-bottom: 44px; max-width: 640px; }
  .chooser-head h2 { font-size: clamp(36px, 4.6vw, 56px); }
  .chooser-head p { color: var(--sand); font-size: 18px; }
  .picks { display: flex; gap: 14px; height: 540px; }
  .pick { position: relative; flex: 1 1 0; min-width: 0; border-radius: 10px; overflow: hidden; background: var(--walnut) var(--img) center/cover no-repeat; border: 1px solid var(--umber); transition: flex-grow .55s cubic-bezier(.2,.7,.2,1), border-color .3s; }
  .pick::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(23,18,14,.95) 0%, rgba(23,18,14,.55) 45%, rgba(23,18,14,.25) 100%); pointer-events: none; }
  .pick.on { flex-grow: 5.2; border-color: rgba(212,160,76,.7); }
  .pick-tab { all: unset; position: absolute; inset: 0; z-index: 2; cursor: pointer; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 28px; }
  .pick-tab span { writing-mode: vertical-rl; transform: rotate(180deg); font: 600 19px/1 var(--serif); color: var(--ivory); white-space: nowrap; }
  .pick-tab:focus-visible { outline: 2px solid var(--honey); outline-offset: -4px; border-radius: 10px; }
  .pick.on .pick-tab { display: none; }
  .pick-body { position: absolute; left: 0; right: 0; bottom: 0; z-index: 3; padding: 34px 36px 36px; display: grid; gap: 12px; max-width: 620px; opacity: 0; transform: translateY(14px); visibility: hidden; transition: opacity .35s .15s, transform .45s .15s, visibility 0s .5s; }
  .pick.on .pick-body { opacity: 1; transform: none; visibility: visible; transition-delay: .2s, .2s, 0s; }
  .pick-goal { font: 600 12px/1 var(--sans); letter-spacing: .18em; text-transform: uppercase; color: var(--honey); }
  .pick-goal::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--flag-l); margin-right: 10px; vertical-align: 1px; }
  .pick-body h3 { font-size: clamp(30px, 3.2vw, 42px); color: var(--ivory); }
  .pick-body p { color: var(--sand); font-size: 17px; max-width: 52ch; }
  .pick-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 10px; }
  .also { margin-top: 34px; color: var(--sand); font-size: 15.5px; }
  .also a { color: var(--ivory); border-bottom: 1px solid var(--honey); }
  .also a:hover { color: var(--honey); }
  .hero { min-height: 700px; }
  @media (max-width: 820px) {
    .picks { flex-direction: column; height: auto; gap: 10px; }
    .pick { flex: none; height: 74px; transition: height .5s cubic-bezier(.2,.7,.2,1), border-color .3s; }
    .pick.on { height: 440px; }
    .pick.on::after { background: linear-gradient(0deg, rgba(23,18,14,.97) 0%, rgba(23,18,14,.85) 50%, rgba(23,18,14,.3) 100%); }
    .pick-tab { align-items: center; justify-content: flex-start; padding: 0 22px; }
    .pick-tab span { writing-mode: horizontal-tb; transform: none; font-size: 20px; }
    .pick-tab span::after { content: "+"; margin-left: 12px; color: var(--honey); font-family: var(--sans); }
    .pick-body { padding: 24px 22px 24px; }
    .chooser { padding: 24px 0 80px; }
  }
  @media (prefers-reduced-motion: reduce) { .pick, .pick-body { transition: none !important; } }

  /* embedded forms */
  .embed { background: var(--paper); border: 1px solid var(--line); border-radius: 10px; overflow: hidden; min-height: 640px; display: grid; }
  .embed iframe { width: 100%; height: 720px; border: 0; display: block; }
  .embed-fallback { display: none; place-content: center; justify-items: center; gap: 16px; text-align: center; padding: 48px 24px; }
  .embed-fallback p { color: var(--stone); max-width: 46ch; font-size: 17px; }
  .embed.is-fallback { min-height: 380px; }
  .embed.is-fallback .embed-fallback { display: grid; }
  .embed-alt { margin-top: 22px; color: var(--stone); font-size: 15.5px; }
  .embed-alt b { color: var(--ink); font-weight: 600; }

  /* videos */
  .sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .vbar { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; justify-content: space-between; }
  .chips { display: flex; flex-wrap: wrap; gap: 8px; }
  .chip { all: unset; cursor: pointer; padding: 8px 14px; border: 1px solid var(--line); border-radius: 99px; font: 500 14px/1 var(--sans); color: var(--stone); background: var(--paper); }
  .chip:hover { color: var(--ink); border-color: var(--stone); }
  .chip.on { background: var(--ink); color: var(--ivory); border-color: var(--ink); }
  .chip:focus-visible { outline: 2px solid var(--honey-d); outline-offset: 2px; }
  .vsearch input { font: 400 15px/1 var(--sans); padding: 11px 16px; border: 1px solid var(--line); border-radius: 99px; background: var(--paper); color: var(--ink); width: 260px; max-width: 100%; }
  .vcount { margin: 22px 0 26px; color: var(--stone); font-size: 14px; }
  .vcount b { color: var(--ink); }
  .vgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 34px 26px; }
  .vcard { display: grid; gap: 8px; align-content: start; color: var(--ink); }
  .vcard[hidden] { display: none; }
  .vthumb { position: relative; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: var(--walnut); display: block; }
  .vthumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
  .vcard:hover .vthumb img { transform: scale(1.04); }
  .vplay { position: absolute; right: 10px; bottom: 10px; width: 34px; height: 34px; border-radius: 50%; background: rgba(23,18,14,.75); }
  .vplay::after { content: ""; position: absolute; left: 13px; top: 10px; border: 7px solid transparent; border-left: 11px solid var(--honey); border-right: 0; }
  .vtopic { font: 600 11px/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--honey-d); margin-top: 6px; }
  .vtitle { font: 600 18px/1.3 var(--serif); }
  .vcard:hover .vtitle { text-decoration: underline; text-decoration-color: var(--flag); text-underline-offset: 3px; }
  .vmeta { font-size: 13.5px; color: var(--stone); }
  .vempty { color: var(--stone); margin-top: 20px; }
  /* faq */
  .faqwrap { display: grid; grid-template-columns: 260px 1fr; gap: 56px; align-items: start; }
  .faqwrap > * { min-width: 0; }
  .faqnav { position: sticky; top: 24px; flex-direction: column; flex-wrap: nowrap; align-items: flex-start; }
  .faqgroup { margin-bottom: 56px; scroll-margin-top: 24px; }
  .faqgroup h2 { font-size: 32px; margin-bottom: 18px; }
  details.qa { border-top: 1px solid var(--line); }
  details.qa:last-child { border-bottom: 1px solid var(--line); }
  details.qa summary { list-style: none; cursor: pointer; padding: 20px 40px 20px 0; position: relative; font: 600 19px/1.4 var(--serif); color: var(--ink); }
  details.qa summary::-webkit-details-marker { display: none; }
  details.qa summary::after { content: "+"; position: absolute; right: 6px; top: 16px; font: 400 26px/1 var(--sans); color: var(--honey-d); }
  details.qa[open] summary::after { content: "\2212"; }
  details.qa p { color: var(--stone); padding: 0 40px 22px 0; max-width: 70ch; }
  @media (max-width: 960px) {
    .faqwrap { grid-template-columns: 1fr; gap: 28px; }
    .faqnav { position: static; flex-direction: row; flex-wrap: wrap; }
    .vsearch, .vsearch input { width: 100%; }
  }

  /* about bio */
  .bio-grid { display: grid; grid-template-columns: 4fr 7fr; gap: 80px; align-items: start; }
  .bio-grid > * { min-width: 0; }
  .bio-photo { position: sticky; top: 32px; margin: 0; }
  .bio-photo img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; object-position: 50% 25%; border-radius: 6px; }
  .bio-photo figcaption { margin-top: 18px; font-size: 14px; line-height: 1.6; color: var(--stone); }
  .bio-photo figcaption b { display: block; font: 600 20px/1.3 var(--serif); color: var(--ink); }
  .bio-text h2 { margin: 18px 0 34px; }
  .bio-text p { color: var(--ink); font-size: 18px; line-height: 1.75; margin-bottom: 22px; max-width: 64ch; }
  .bio-text p.sig { font: 600 22px/1 var(--serif); color: var(--honey-d); margin-top: 34px; }
  @media (max-width: 960px) {
    .bio-grid { grid-template-columns: 1fr; gap: 40px; }
    .bio-photo { position: static; max-width: 420px; }
  }

  /* licensing map */
  .lic { display: grid; grid-template-columns: 4fr 7fr; gap: 64px; align-items: center; }
  .lic > * { min-width: 0; }
  .lic h2 { margin: 18px 0 20px; }
  .lic-copy p { color: var(--stone); }
  .lic-key { list-style: none; padding: 0; margin: 26px 0; display: grid; gap: 10px; font-size: 15px; color: var(--ink); }
  .lic-key li { display: flex; gap: 12px; align-items: flex-start; }
  .sw { width: 16px; height: 16px; border-radius: 4px; flex: none; margin-top: 3px; }
  .sw.on { background: var(--honey); }
  .sw.home { background: var(--espresso); box-shadow: inset 0 0 0 2px var(--flag-l); }
  .sw.off { background: var(--paper); box-shadow: inset 0 0 0 1px var(--line); }
  .lic-small { font-size: 15px; }
  .lic-small a { color: var(--ink); border-bottom: 1px solid var(--honey-d); }
  .lic-map svg { width: 100%; height: auto; display: block; }
  .tile rect { fill: var(--honey); }
  .tile text { font: 600 15px var(--sans); fill: var(--espresso); }
  .tile.home rect { fill: var(--espresso); stroke: var(--flag-l); stroke-width: 3; }
  .tile.home text { fill: var(--honey); }
  .tile.off rect { fill: var(--paper); stroke: var(--line); stroke-width: 1.5; }
  .tile.off text { fill: var(--sand); }
  @media (max-width: 960px) { .lic { grid-template-columns: 1fr; gap: 36px; } }

  /* real map */
  .lic-map { position: relative; }
  .usmap { width: 100%; height: auto; display: block; overflow: visible; }
  .usmap .st { stroke: var(--paper); stroke-width: 1; stroke-linejoin: round; cursor: pointer; transition: fill .15s; outline: none; }
  .usmap .st.on { fill: var(--honey); }
  .usmap .st.home { fill: var(--honey); stroke: var(--flag-l); stroke-width: 3.5; }
  .usmap .st.off { fill: #E7DED0; }
  .usmap .st.on.hot, .usmap .st.on:focus-visible { fill: var(--honey-d); }
  .usmap .st.home.hot, .usmap .st.home:focus-visible { fill: var(--honey-d); }
  .maptip .homebase { display: block; color: var(--honey); font-weight: 600; margin-bottom: 2px; }
  .usmap .st.off.hot { fill: var(--line); }
  .usmap .lead { stroke: var(--sand); stroke-width: 1; }
  .usmap .callout { cursor: pointer; outline: none; }
  .usmap .callout rect { fill: var(--honey); }
  .usmap .callout.off rect { fill: #E7DED0; }
  .usmap .callout text { font: 700 17px var(--sans); fill: var(--espresso); pointer-events: none; }
  .usmap .callout.hot rect, .usmap .callout:focus-visible rect { fill: var(--honey-d); }
  .usmap .callout.hot text { fill: var(--ivory); }
  .maptip { position: absolute; z-index: 5; pointer-events: none; background: var(--espresso); color: var(--sand); border-radius: 8px; padding: 12px 14px; font-size: 13.5px; line-height: 1.5; max-width: 280px; box-shadow: 0 12px 30px rgba(0,0,0,.25); }
  .maptip b { display: block; color: var(--ivory); font: 600 17px/1.3 var(--serif); margin-bottom: 4px; }
  .lic { grid-template-columns: 4fr 8fr; }
  /* license list */
  .lhead { display: flex; flex-wrap: wrap; gap: 20px; align-items: end; justify-content: space-between; }
  .lgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 0 40px; }
  .lrow { padding: 20px 0; border-top: 1px solid var(--line); scroll-margin-top: 120px; transition: background .4s; }
  .lrow[hidden] { display: none; }
  .lrow.flash { background: rgba(212,160,76,.18); }
  .lrow h3 { font-size: 21px; margin-bottom: 8px; }
  .lrow ul { list-style: none; padding: 0; display: grid; gap: 6px; }
  .lrow li { display: flex; justify-content: space-between; gap: 16px; font-size: 14.5px; color: var(--stone); }
  .lrow li b { color: var(--ink); font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }

  /* license cards */
  .lcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; margin-top: 8px; }
  .lcard { background: var(--paper); border: 1px solid var(--line); border-radius: 12px; padding: 24px 26px 22px; box-shadow: 0 1px 2px rgba(30,24,19,.04), 0 10px 24px rgba(30,24,19,.05); display: grid; gap: 18px; align-content: start; scroll-margin-top: 120px; transition: box-shadow .3s, transform .3s; }
  .lcard:hover { box-shadow: 0 1px 2px rgba(30,24,19,.05), 0 16px 34px rgba(30,24,19,.09); transform: translateY(-2px); }
  .lcard[hidden] { display: none; }
  .lcard.home { border: 2px solid var(--flag); }
  .lcard.flash { box-shadow: 0 0 0 3px var(--honey), 0 16px 34px rgba(30,24,19,.12); }
  .lc-top { display: grid; grid-template-columns: 48px 1fr; gap: 16px; align-items: start; }
  .lc-top > div { min-width: 0; }
  .lc-badge { width: 48px; height: 48px; border-radius: 10px; background: rgba(212,160,76,.22); color: var(--honey-d); display: grid; place-items: center; font: 700 15px/1 var(--sans); letter-spacing: .04em; }
  .lcard.home .lc-badge { background: var(--flag); color: var(--ivory); }
  .lcard h3 { font-size: 22px; line-height: 1.2; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
  .lc-tag { font: 600 10.5px/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--ivory); background: var(--flag); padding: 5px 8px; border-radius: 99px; }
  .lc-kind { color: var(--stone); font-size: 15.5px; margin-top: 6px; line-height: 1.45; }
  .lc-num { margin-top: 8px; font: 600 16px/1.2 ui-monospace, "SF Mono", Menlo, monospace; color: var(--honey-d); letter-spacing: .02em; word-break: break-all; }
  .lc-nonum { font: 500 14px/1.2 var(--sans); color: var(--stone); letter-spacing: 0; }
  .lc-agent { border-top: 1px solid var(--line); padding-top: 14px; font-size: 14px; line-height: 1.55; color: var(--stone); }
  .lc-agent b { color: var(--ink); font-weight: 600; }

  /* guide page */
  .guide { display: grid; grid-template-columns: 4fr 6fr; gap: 72px; align-items: start; }
  .guide > * { min-width: 0; }
  .guide-cover img { width: 100%; border-radius: 6px; box-shadow: 0 2px 4px rgba(30,24,19,.08), 0 24px 50px rgba(30,24,19,.18); transition: transform .3s; }
  .guide-cover:hover img { transform: translateY(-4px); }
  ol.toc { counter-reset: t; list-style: none; padding: 0; border-top: 1px solid var(--line); }
  ol.toc li { counter-increment: t; padding: 13px 0 13px 44px; border-bottom: 1px solid var(--line); position: relative; color: var(--ink); }
  ol.toc li::before { content: counter(t, decimal-leading-zero); position: absolute; left: 0; top: 13px; font: 600 15px/1.6 var(--serif); color: var(--honey-d); }
  @media (max-width: 960px) { .guide { grid-template-columns: 1fr; gap: 40px; } .guide-cover { max-width: 360px; } }

  /* guide download popup */
  button.guide-cover { all: unset; cursor: pointer; display: block; }
  button.guide-cover:focus-visible { outline: 2px solid var(--honey-d); outline-offset: 6px; }
  button.btn { border: 0; cursor: pointer; font-family: var(--sans); }
  .gm { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 16px; }
  .gm[hidden] { display: none; }
  .gm-back { position: absolute; inset: 0; background: rgba(23,18,14,.78); backdrop-filter: blur(3px); }
  .gm-box { position: relative; width: min(560px, 100%); max-height: calc(100vh - 32px); overflow: auto; background: var(--walnut); border: 1px solid var(--umber); border-radius: 14px; padding: 30px 26px 26px; text-align: center; color: var(--ivory); box-shadow: 0 30px 80px rgba(0,0,0,.5); animation: gmIn .25s ease-out; }
  @keyframes gmIn { from { opacity: 0; transform: translateY(10px) scale(.98); } }
  .gm-ico { color: var(--honey); }
  .gm-box h2 { font-size: 24px; margin: 10px 0 6px; }
  .gm-sub { color: var(--sand); font-size: 15px; margin-bottom: 18px; }
  .gm-x { all: unset; position: absolute; top: 12px; right: 14px; font-size: 26px; line-height: 1; color: var(--sand); cursor: pointer; padding: 4px 8px; border-radius: 6px; }
  .gm-x:hover, .gm-x:focus-visible { color: var(--ivory); background: rgba(244,237,225,.08); }
  .gm-form iframe { width: 100%; height: 520px; border: 0; border-radius: 10px; display: block; background: var(--espresso); }
  .gm-fb { color: var(--sand); margin-bottom: 16px; }

  /* guide-depth loan pages */
  .gl-meta { color: var(--sand); font-size: 14px; margin-top: 14px; }
  .gl-hero .actions .btn-ghost { border: 1px solid rgba(244,237,225,.28); color: var(--ivory); background: none; }
  .gl { background: var(--paper); padding: 64px 0 90px; }
  .gl-grid { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 56px; align-items: start; }
  .gl-nav { position: sticky; top: 24px; display: grid; gap: 14px; max-height: calc(100vh - 48px); overflow: auto; }
  .gl-nav nav { display: grid; height: auto; border-left: 1px solid var(--line); }
  .gl-jump nav { display: block; height: auto; }
  .gl-nav nav a, .gl-jump nav a { display: block; padding: 7px 0 7px 14px; margin-left: -1px; border-left: 2px solid transparent; font-size: 14px; line-height: 1.35; color: var(--stone); }
  .gl-nav nav a:hover { color: var(--ink); }
  .gdoc a.gpromo { transition: transform .2s, box-shadow .2s; }
  .gdoc a.gpromo:hover { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(30,24,19,.18); }
  .gdoc a.gpromo:hover p:last-child { text-decoration: underline; text-underline-offset: 3px; }
  .gl-nav nav a.on { color: var(--ink); text-shadow: 0 0 .5px currentColor, 0 0 .5px currentColor; border-left-color: var(--flag); }
  .gl-navbtn { justify-self: start; font-size: 13.5px; padding: 11px 16px; }
  .gl-jump { display: none; }
  .gdoc { zoom: 1.12; color: var(--ink); }
  .gch { padding: 0 0 56px; margin-bottom: 56px; border-bottom: 1px solid var(--line); scroll-margin-top: 20px; }
  .gch:last-child { border-bottom: 0; margin-bottom: 0; }
  .gch .gcont { margin-top: 30px; }
  .gdoc .sheet--dark.wealth { background: var(--espresso); color: var(--ivory); padding: 36px 34px; border-radius: 10px; }
  .gdoc a { color: inherit; border-bottom: 1px solid var(--honey-d); }
  .gl-float { position: fixed; z-index: 40; left: 50%; transform: translateX(-50%); bottom: calc(18px + env(safe-area-inset-bottom, 0px)); display: flex; align-items: center; gap: 14px; background: var(--espresso); color: var(--ivory); border-radius: 99px; padding: 7px 7px 7px 20px; box-shadow: 0 14px 40px rgba(0,0,0,.35); font-size: 14px; white-space: nowrap; animation: glIn .3s ease-out; }
  .gl-float[hidden] { display: none; }
  .gl-float .btn { padding: 11px 18px; font-size: 14px; }
  @keyframes glIn { from { opacity: 0; transform: translate(-50%, 12px); } }
  @media (max-width: 960px) {
    .gl-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    .gdoc table { min-width: 0 !important; width: 100% !important; font-size: 13px; }
    .gdoc th, .gdoc td { padding-left: 8px !important; padding-right: 8px !important; }
    .gdoc .tline { grid-template-columns: 1fr 1fr !important; row-gap: 16px; }
    .gdoc a.gpromo { grid-template-columns: 1fr !important; }
    .gdoc a.gpromo > div:first-child { min-height: 170px; }
    .gl-nav { display: none; }
    .gl-jump { display: block; position: sticky; top: 0; z-index: 30; background: var(--paper); border: 1px solid var(--line); border-radius: 10px; padding: 12px 16px; }
    .gl-jump summary { cursor: pointer; font-weight: 600; color: var(--ink); }
    .gl-jump nav { margin-top: 8px; max-height: 60vh; overflow: auto; }
    .gdoc { zoom: 1; }
    .gdoc .grid2, .gdoc .two, .gdoc .story, .gdoc .check, .gdoc .grid2.benefits, .gdoc .w-grid, .gdoc .w-nums { grid-template-columns: 1fr !important; }
    .gdoc table { display: block; overflow-x: auto; }
    .gl-float span { display: none; }
    .gl-float { padding: 6px; }
  }

  @media (max-width: 960px) {
    .links { display: none; }
    details.mnav { display: block; }
    .split, .two-lists, ol.steps2, .contact-grid, .platforms { grid-template-columns: 1fr; gap: 32px; }
    .cards, .cards.c2, .cards.c4 { grid-template-columns: 1fr; }
    .card, .card + .card { padding: 26px 0; border-left: 0; }
    .glance div { border-right: 0; border-bottom: 1px solid var(--line); }
    .phero { padding: 140px 0 72px; }
    .block { padding: 72px 0; }
  }
.gdoc-std {
 & {
  --espresso:#17120E; --walnut:#231B15; --umber:#3A2E24; --ivory:#F4EDE1; --paper:#FBF8F2;
  --ink:#1E1813; --stone:#6E6153; --sand:#B9AC9B; --line:#E3D9C9; --honey:#D4A04C; --honey-d:#95661F;
  --flag:#8E3B2E; --flag-l:#B4483A;
  --serif:"Source Serif 4", Georgia, serif; --sans:"Inter", -apple-system, sans-serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; } & { background: #777; } & { font: 400 10.4pt/1.55 var(--sans); color: var(--ink); -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.page { width: 8.5in; height: 11in; position: relative; overflow: hidden; background: var(--paper); padding: .62in .7in .95in; page-break-after: always; break-after: page; margin: 0 auto; }
@media screen { .page { margin: 24px auto; box-shadow: 0 6px 30px rgba(0,0,0,.35); } }
.page.dark { background: var(--espresso); color: var(--ivory); }
.foot { position: absolute; left: .7in; right: .7in; bottom: .38in; display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; font-size: 7.4pt; color: var(--stone); border-top: 1px solid var(--line); padding-top: 8px; line-height: 1.5; }
.foot b { color: var(--ink); font-weight: 600; }
.foot .n { font: 600 11pt/1 var(--serif); color: var(--honey-d); }
.dark .foot { border-color: var(--umber); color: var(--sand); }
.dark .foot b { color: var(--ivory); }
.dark .foot .n { color: var(--honey); }
.eyebrow { font: 600 7.6pt/1 var(--sans); letter-spacing: .2em; text-transform: uppercase; color: var(--honey-d); }
.eyebrow::before { content: ""; display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--flag); margin-right: 8px; vertical-align: 1px; }
.dark .eyebrow { color: var(--honey); }
.dark .eyebrow::before { background: var(--flag-l); }
h1 { font: 600 25pt/1.1 var(--serif); letter-spacing: -.01em; margin: 10px 0 12px; }
h1 em { font-style: normal; text-decoration: underline; text-decoration-color: var(--flag-l); text-decoration-thickness: .07em; text-underline-offset: .14em; }
h2 { font: 600 13.5pt/1.25 var(--serif); margin: 18px 0 8px; }
.num { font: 600 13pt/1 var(--serif); color: var(--honey-d); margin-right: 10px; }
.lead { font-size: 10.6pt; color: var(--stone); max-width: 6.6in; }
.dark .lead { color: var(--sand); }
p + p { margin-top: 8px; }
.grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 22px; margin-top: 16px; }
.card { background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; }
.card h3 { font: 600 11pt/1.3 var(--serif); margin-bottom: 4px; }
.card h3::before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 2px; background: var(--honey); margin-right: 8px; vertical-align: 1px; }
.card p { font-size: 9.4pt; color: var(--stone); line-height: 1.5; }
.callout { margin-top: 14px; padding: 11px 14px 11px 16px; background: var(--ivory); border-left: 3px solid var(--flag); border-radius: 0 6px 6px 0; font-size: 9.6pt; line-height: 1.5; }
.callout b { font: 600 7.8pt/1 var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--flag); margin-right: 6px; }
.callout.ink { background: var(--ink); color: var(--ivory); border-left-color: var(--honey); }
.callout.ink b { color: var(--honey); }
.callout.honey { background: rgba(212,160,76,.16); border-left-color: var(--honey-d); }
.callout.honey b { color: var(--honey-d); }
.callout.star { display: flex; align-items: center; gap: 12px; margin-top: 10px; background: #F6E1DB; border: 1.5px solid var(--flag); border-left-width: 5px; font: 600 11pt/1.4 var(--sans); color: #6E2318; }
.callout.star b { font: 700 26pt/.8 var(--serif); letter-spacing: 0; margin: 0; padding-top: 6px; color: var(--flag); }
table { width: 100%; border-collapse: collapse; margin-top: 10px; font-size: 9.2pt; font-variant-numeric: tabular-nums; }
th { text-align: left; background: var(--ink); color: var(--ivory); font: 600 7.4pt/1.3 var(--sans); letter-spacing: .12em; text-transform: uppercase; padding: 7px 10px; }
td { padding: 6.5px 10px; border-bottom: 1px solid var(--line); vertical-align: top; }
tr:nth-child(even) td { background: rgba(244,237,225,.6); }
td:first-child { font-weight: 600; }
ul.ticks { list-style: none; margin-top: 6px; }
ul.ticks li { position: relative; padding: 3.5px 0 3.5px 18px; font-size: 9.6pt; line-height: 1.45; }
ul.ticks li::before { content: ""; position: absolute; left: 1px; top: 8px; width: 8px; height: 4.5px; border-left: 1.6px solid var(--honey-d); border-bottom: 1.6px solid var(--honey-d); transform: rotate(-45deg); }
.dark ul.ticks li::before { border-color: var(--honey); }
ol.steps { list-style: none; counter-reset: s; margin-top: 12px; }
ol.steps li { counter-increment: s; position: relative; padding: 9px 0 9px 40px; border-top: 1px solid var(--line); font-size: 9.8pt; line-height: 1.5; }
ol.steps li::before { content: counter(s); position: absolute; left: 0; top: 7px; width: 26px; height: 26px; border-radius: 50%; background: var(--ink); color: var(--honey); display: grid; place-items: center; font: 600 10pt/1 var(--serif); }
ol.steps li b { font-weight: 600; }
.two { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; }
.two > div { min-width: 0; }
.box { border: 1px solid var(--line); border-radius: 8px; padding: 12px 14px; background: #fff; }
.box h3 { font: 600 11pt/1.3 var(--serif); margin-bottom: 4px; }
.myth { display: grid; grid-template-columns: 54px 1fr; gap: 3px 10px; padding: 10px 0; border-top: 1px solid var(--line); font-size: 9.7pt; line-height: 1.45; }
.tag { font: 700 7pt/1 var(--sans); letter-spacing: .14em; padding: 4px 0; border-radius: 3px; text-align: center; align-self: start; margin-top: 1px; }
.tag.m { background: var(--flag); color: var(--ivory); }
.tag.t { background: var(--honey); color: var(--espresso); }
.myth .q { font-weight: 600; }
.check { display: grid; grid-template-columns: 1fr 1fr; gap: 0 26px; margin-top: 12px; }
.check div { display: flex; gap: 10px; align-items: center; padding: 6.5px 0; border-bottom: 1px solid var(--line); font-size: 9.6pt; }
.check i { width: 13px; height: 13px; border: 1.5px solid var(--honey-d); border-radius: 3px; flex: none; }
.check span { font: 600 8.5pt var(--serif); color: var(--honey-d); width: 16px; text-align: right; }
.qa { padding: 8px 0; border-top: 1px solid var(--line); }
.qa h3 { font: 600 10.6pt/1.35 var(--serif); }
.qa h3::before { content: "Q"; font: 700 8pt var(--sans); color: var(--ivory); background: var(--honey-d); border-radius: 3px; padding: 2px 5px; margin-right: 8px; vertical-align: 1px; }
.qa p { font-size: 9.4pt; color: var(--stone); margin-top: 3px; line-height: 1.5; }
.toc { margin-top: 20px; border-top: 1px solid var(--line); }
.toc div { display: grid; grid-template-columns: 34px 1fr 30px; align-items: baseline; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 11pt; }
.toc span:first-child { font: 600 11pt var(--serif); color: var(--honey-d); }
.toc span:last-child { text-align: right; font-variant-numeric: tabular-nums; color: var(--stone); }
/* cover */
.cover { padding: 0; color: var(--ivory); background: var(--espresso); }
.cover .bg { position: absolute; inset: 0; background-size: cover; background-position: 44% 50%; }
.cover .bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(23,18,14,.92) 0%, rgba(23,18,14,.68) 44%, rgba(23,18,14,.25) 64%, rgba(23,18,14,.92) 100%); }
.cover .eyebrow { color: var(--honey); }
.cover .in { position: absolute; inset: .7in .7in .6in; display: flex; flex-direction: column; }
.cover .logo { display: flex; align-items: center; gap: 12px; }
.cover .logo img { height: 40px; }
.cover .logo b { display: block; font: 600 14pt/1.05 var(--serif); }
.cover .logo small { display: block; font: 600 7pt/1.5 var(--sans); letter-spacing: .24em; color: var(--sand); }
.cover h1 { font-size: 50pt; line-height: 1.02; margin: 46px 0 16px; }
.cover .sub { font-size: 13pt; color: var(--ivory); max-width: 5.6in; }
.cover .pill { display: inline-block; margin-top: 22px; background: var(--honey); color: var(--espresso); font: 700 9pt/1 var(--sans); letter-spacing: .14em; padding: 10px 16px; border-radius: 99px; align-self: flex-start; }
.cover .bottom { margin-top: auto; display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; }
.cover .who b { display: block; font: 600 15pt/1.2 var(--serif); }
.cover .who span { display: block; font-size: 8.4pt; color: var(--sand); line-height: 1.6; }
.cover .quote { font: 400 10.5pt/1.45 var(--serif); font-style: italic; color: var(--ivory); white-space: nowrap; text-align: right; }
/* back page */
.cta3 { display: grid; gap: 12px; margin-top: 22px; }
.cta3 > div { display: grid; grid-template-columns: 1.3in 1fr auto; gap: 16px; align-items: center; background: var(--walnut); border: 1px solid var(--umber); border-radius: 8px; padding: 14px 18px; }
.cta3 h3 { font: 600 12pt/1.2 var(--serif); color: var(--honey); }
.cta3 p { font-size: 9.4pt; color: var(--sand); }
.cta3 a { font: 600 9pt var(--sans); color: var(--ivory); border-bottom: 1px solid var(--honey); text-decoration: none; white-space: nowrap; }
.sig { display: flex; gap: 18px; align-items: center; margin-top: 26px; }
.sig img { width: 86px; height: 86px; border-radius: 50%; object-fit: cover; border: 2px solid var(--honey); }
.sig b { display: block; font: 600 17pt/1.2 var(--serif); }
.sig span { display: block; font-size: 8.8pt; color: var(--sand); line-height: 1.6; }
/* last page: photo of Josh, one call to action */
.endp { background: var(--espresso); color: var(--ivory); padding: 0; }
.endp .ph { position: absolute; background-repeat: no-repeat; }
.endp.tall .ph { inset: 0; background-image: url(img/josh-flag-tall.jpg); background-size: 8.5in auto; background-position: center -.35in; }
.endp.tall .ph::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(23,18,14,.35) 0%, rgba(23,18,14,0) 18%, rgba(23,18,14,0) 40%, rgba(23,18,14,.82) 55%, #17120E 66%); }
.endp.wide .ph { left: 0; right: 0; top: 0; height: 7.5in; background-image: linear-gradient(180deg, rgba(23,18,14,0) 48%, rgba(23,18,14,.85) 78%, #17120E 94%), linear-gradient(90deg, rgba(23,18,14,.9) 0%, rgba(23,18,14,.35) 30%, rgba(23,18,14,0) 50%), url(img/josh-flag-wide.jpg); background-size: 100% 100%, 100% 100%, auto 7.4in; background-position: 0 0, 0 0, 56% 0; }
.endp .txt { position: absolute; left: .7in; right: .7in; bottom: 1.2in; }
.endp .eyebrow { color: var(--honey); }
.endp .eyebrow::before { background: var(--flag-l); }
.endp h1 { font-size: 34pt; margin: 10px 0 12px; color: var(--ivory); }
.endp .say { font-size: 11.6pt; line-height: 1.6; color: #D9CFC0; max-width: 6.1in; }
.endp .act { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 24px; padding: 18px 22px; background: rgba(35,27,21,.92); border: 1px solid var(--umber); border-left: 4px solid var(--honey); border-radius: 8px; }
.endp .act small { display: block; font: 600 7.6pt/1 var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--honey); margin-bottom: 7px; }
.endp .act b { display: block; font: 600 15pt/1.2 var(--serif); color: var(--ivory); }
.endp .act a { font: 700 15pt/1 var(--sans); color: var(--ivory); text-decoration: none; border-bottom: 2px solid var(--honey); padding-bottom: 3px; white-space: nowrap; }
.endp .who { margin-top: 16px; font-size: 9pt; color: var(--sand); letter-spacing: .01em; }
.endp .who b { color: var(--ivory); font-weight: 600; }
.legal { position: absolute; left: .7in; right: .7in; bottom: .38in; font-size: 6.9pt; line-height: 1.5; color: var(--sand); border-top: 1px solid var(--umber); padding-top: 8px; }
/* wealth story */
.story { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 16px; }
.story div { background: #fff; border: 1px solid var(--line); border-radius: 8px; padding: 12px; }
.story span { font: 600 18pt/1 var(--serif); color: var(--honey-d); }
.story h3 { font: 700 7.8pt/1.3 var(--sans); letter-spacing: .12em; text-transform: uppercase; margin: 8px 0 5px; }
.story p { font-size: 9pt; color: var(--stone); line-height: 1.45; }
.payoff { margin-top: 16px; background: var(--ink); color: var(--ivory); border-radius: 10px; padding: 18px 20px; }
.payoff b { font: 600 18pt/1.2 var(--serif); color: var(--honey); display: block; margin: 4px 0; }
.payoff small { font-size: 9.2pt; color: var(--sand); display: block; }
.dense { font-size: 9.6pt; line-height: 1.5; }
.dense p + p { margin-top: 6px; }

}
.gdoc-fha {
 &{
  
  
} &{
  --ink:#14161A; --ink-2:#0D0F12; --ink-3:#33383E; --ink-4:#394046;
  --gray:#5C626B; --gray-2:#9A9FA8; --line:#C6CCD2; --line-2:#EAEDF1; --line-3:#D9DEE2;
  --paper:#F7F8F1; --white:#FFFFFF; --lime:#CFFF00;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%} &{
  font-family:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',Helvetica,Arial,sans-serif;
  background:#1A1D22; color:var(--ink); line-height:1.5;
  -webkit-font-smoothing:antialiased; padding:32px 16px;
}
.doc{width:8.5in;margin:0 auto;display:flex;flex-direction:column;gap:28px;
  transform-origin:top center}

/* ---------- SHEET ---------- */
.sheet{
  position:relative; background:var(--white);
  width:8.5in; height:11in; overflow:hidden;
  padding:.5in .55in .45in; display:flex; flex-direction:column;
  box-shadow:0 18px 50px rgba(0,0,0,.45); border-radius:2px;
}
.sheet--dark{background:var(--ink);color:var(--paper)}
.lime{color:var(--lime)}
.sep{color:var(--gray-2);padding:0 5px}

/* ---------- RUNNING HEAD / FOOT ---------- */
.ph-head{
  display:flex;justify-content:space-between;align-items:baseline;
  font-size:7.6pt;letter-spacing:.02em;color:var(--gray);
  border-bottom:1px solid var(--line-2);padding-bottom:7px;margin-bottom:22px;flex:0 0 auto;
}
.ph-head .strong{font-weight:700;color:var(--ink-3)}
.ph-foot{
  margin-top:auto;padding-top:12px;border-top:1px solid var(--line-2);
  display:flex;justify-content:space-between;align-items:baseline;
  font-size:7.4pt;color:var(--gray-2);flex:0 0 auto;
}
.ph-foot .pg{font-weight:900;color:var(--ink);font-size:9pt}

/* ---------- HEADINGS ---------- */
.page-h{
  font-size:20.5pt;font-weight:900;letter-spacing:-.012em;line-height:1.1;
  display:flex;align-items:center;gap:12px;margin-bottom:12px;text-transform:uppercase;
}
.sec-n{
  flex:0 0 auto;background:var(--lime);color:var(--ink);
  font-size:12pt;font-weight:900;line-height:1;
  min-width:29px;height:29px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:3px;padding:0 6px;
}
.sub-h{
  font-size:11.2pt;font-weight:900;text-transform:uppercase;letter-spacing:.05em;
  color:var(--ink);margin:16px 0 8px;padding-bottom:5px;border-bottom:2px solid var(--lime);
  display:inline-block;
}
.lede{font-size:11pt;color:var(--ink-3);line-height:1.55;margin-bottom:14px}
p{font-size:10.4pt;color:var(--ink-3);line-height:1.55}

/* ---------- GRIDS ---------- */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:17px 26px}
.grid2.tight{gap:8px 26px}

/* ---------- BENEFIT BLOCKS ---------- */
.benefits{gap:17px 26px;margin-bottom:16px}
.ben{border-left:3px solid var(--lime);padding-left:11px}
.ben h3{font-size:11.2pt;font-weight:900;margin-bottom:3px;letter-spacing:-.008em}
  .ben p{font-size:9.7pt;color:var(--gray);line-height:1.45}

/* ---------- CALLOUTS ---------- */
.callout{
  background:var(--paper);border-left:4px solid var(--lime);
  padding:12px 15px;margin-top:13px;
}
.callout--lg{padding:17px 19px;margin-top:20px}
.callout--warn{background:#FBF9E8;border-left-color:var(--ink)}
.callout--key{background:var(--ink);border-left-color:var(--lime)}
.callout--key p{color:#D8DCE2}
.callout--key .co-lead{color:var(--lime)}
.co-lead{
  display:block;font-size:9pt;font-weight:900;letter-spacing:.07em;
  text-transform:uppercase;color:var(--ink);margin-bottom:3px;
}
.callout p{font-size:10pt;line-height:1.52}

/* ---------- TABLES ---------- */
.tbl{width:100%;border-collapse:collapse;margin:10px 0 4px;font-size:10pt}
.tbl thead th{
  background:var(--ink);color:var(--paper);text-align:left;
  font-size:8.8pt;font-weight:900;letter-spacing:.06em;text-transform:uppercase;
  padding:9px 11px;
}
.tbl .th-sm{display:block;font-weight:400;letter-spacing:.01em;text-transform:none;
  color:var(--gray-2);font-size:7.4pt;margin-top:1px}
.tbl td{padding:9px 11px;border-bottom:1px solid var(--line-2);color:var(--ink-3);vertical-align:top}
.tbl tbody tr:nth-child(even){background:var(--paper)}
.tbl td.k{font-weight:700;color:var(--ink)}
.tbl .td-sm{display:block;font-weight:400;color:var(--gray-2);font-size:7.6pt}
.tbl td.num{text-align:right;font-weight:700;white-space:nowrap}
.tbl--calc td{font-size:10.1pt}
.tbl--calc tr.hi td{background:var(--lime);color:var(--ink);font-weight:900;border-bottom:none}
.tbl--cmp td{font-size:9.7pt}
.tbl--cmp td.win{font-weight:700;color:var(--ink)}
.tbl--cmp thead th:nth-child(2),.tbl--cmp thead th:nth-child(3){width:33%}

/* placeholder */
.ph{
  background:var(--lime);color:var(--ink);font-weight:900;
  padding:1px 6px;border-radius:2px;white-space:nowrap;
}
.ph::after{
  content:attr(data-tag);font-size:6.4pt;font-weight:900;letter-spacing:.08em;
  vertical-align:super;margin-left:5px;opacity:.6;
}

/* ---------- LISTS ---------- */
.bul{list-style:none}
.bul li{
  font-size:10pt;color:var(--ink-3);line-height:1.48;
  padding-left:15px;position:relative;margin-bottom:7px;
}
.bul li::before{
  content:'';position:absolute;left:0;top:6px;
  width:5px;height:5px;background:var(--lime);border-radius:1px;
}
.bul li strong{color:var(--ink);font-weight:900}

/* ---------- NUMBERED STEPS ---------- */
.steps{list-style:none;counter-reset:s}
.steps li{
  counter-increment:s;position:relative;padding-left:36px;margin-bottom:14px;
}
.steps li::before{
  content:counter(s);position:absolute;left:0;top:0;
  width:23px;height:23px;background:var(--ink);color:var(--lime);
  font-size:10pt;font-weight:900;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
.steps h4{font-size:10.8pt;font-weight:900;margin-bottom:2px;padding-top:3px}
.steps p{font-size:9.7pt;color:var(--gray);line-height:1.45}

/* ---------- CHECKLIST ---------- */
.checklist{gap:0 26px;margin-top:6px}
.ck{list-style:none;counter-reset:none}
.ck li{
  font-size:9.9pt;color:var(--ink-3);line-height:1.35;
  padding:8.5px 0 8.5px 42px;position:relative;border-bottom:1px solid var(--line-2);
}
.ck{counter-reset:c}
.ck--b{counter-reset:c 11}
.ck li{counter-increment:c}
.ck li::before{
  content:'';position:absolute;left:0;top:8px;
  width:14px;height:14px;border:1.6px solid var(--ink);border-radius:2px;
}
.ck li::after{
  content:counter(c);position:absolute;left:21px;top:8px;
  font-size:8.6pt;font-weight:900;color:var(--gray-2);width:14px;text-align:right;
}

/* ---------- MYTHS ---------- */
.myth{margin-bottom:13.5px;padding-bottom:12.5px;border-bottom:1px solid var(--line-2)}
.myth:last-of-type{border-bottom:none}
.m-q,.m-a{font-size:10.2pt;line-height:1.48;display:block}
.m-q{font-weight:900;color:var(--ink);margin-bottom:3px}
.m-a{color:var(--gray)}
.m-q span,.m-a span{
  display:inline-block;font-size:7.2pt;font-weight:900;letter-spacing:.09em;
  padding:2px 7px;margin-right:9px;border-radius:2px;vertical-align:1px;
}
.m-q span{background:var(--ink);color:var(--lime)}
.m-a span{background:var(--lime);color:var(--ink)}

/* ---------- FAQ ---------- */
.faq{margin-bottom:11px;padding-bottom:10px;border-bottom:1px solid var(--line-2)}
.faq:last-of-type{border-bottom:none}
.faq .q{font-size:10.4pt;font-weight:900;color:var(--ink);margin-bottom:2px}
.faq .q::before{content:'Q';color:var(--ink);background:var(--lime);
  font-size:7.4pt;font-weight:900;padding:1px 6px;border-radius:2px;margin-right:8px;vertical-align:1.5px}
.faq .a{font-size:9.8pt;color:var(--gray);line-height:1.47;padding-left:25px}

/* ---------- PRODUCT CARDS ---------- */
.card{background:var(--paper);padding:14px 16px;border-top:3px solid var(--lime)}
.card h3{font-size:10pt;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:var(--gray)}
.card .big{font-size:28pt;font-weight:900;color:var(--ink);line-height:1.05;margin:2px 0 5px}
.card p{font-size:9.6pt;line-height:1.45;color:var(--gray)}
.prod{border-left:3px solid var(--lime);padding:3px 0 3px 14px;margin-bottom:17px}
.prod h3{font-size:12.3pt;font-weight:900;margin-bottom:4px;letter-spacing:-.01em}
.prod p{font-size:10pt;margin-bottom:6px}

/* ---------- CROSS PROMO ---------- */
.promo{
  background:var(--ink);color:var(--paper);display:flex;gap:20px;align-items:center;
  padding:16px 18px;margin-top:14px;
}
.promo-l{flex:1}
.promo-k{font-size:10.1pt;font-weight:900;color:var(--lime);letter-spacing:.06em;margin-bottom:4px}
.promo p{font-size:9.6pt;color:#C6CCD2;line-height:1.45}
.promo em{color:var(--white);font-style:italic;font-weight:700}
.promo-r{flex:0 0 auto;text-align:center;border-left:1px solid var(--ink-4);padding-left:20px}
.promo-r span{display:block;font-size:7pt;letter-spacing:.12em;color:var(--gray-2);font-weight:900}
.promo-r strong{display:block;font-size:11pt;font-weight:900;color:var(--lime);margin-top:3px}

.fine{font-size:7.2pt;color:var(--gray-2);line-height:1.4;margin-top:10px}

/* ---------- CONTENTS ---------- */
.toc{list-style:none;margin:6px 0 4px}
.toc li{
  display:flex;align-items:baseline;gap:11px;
  padding:8.5px 0;border-bottom:1px solid var(--line-2);font-size:10.8pt;
}
.toc-n{
  flex:0 0 22px;font-size:8.4pt;font-weight:900;color:var(--ink);
  background:var(--lime);text-align:center;border-radius:2px;padding:1px 0;
}
.toc-t{flex:1;font-weight:700;color:var(--ink-3)}
.toc-p{font-weight:900;color:var(--gray-2);font-size:9pt}

/* ---------- COVER ---------- */
.cover{justify-content:space-between;padding:.8in .7in .72in}
.eyebrow{
  font-size:9.6pt;font-weight:900;letter-spacing:.34em;color:var(--lime);
}
.cover-mid{padding:0}
.cover-title{
  font-size:70pt;font-weight:900;line-height:.94;letter-spacing:-.028em;
  color:var(--white);margin-bottom:16px;
}
.cover-sub{font-size:13.5pt;color:#C6CCD2;line-height:1.4;max-width:5.4in;margin-bottom:22px}
.cover-bar{
  display:inline-block;background:var(--lime);color:var(--ink);
  font-size:10pt;font-weight:900;letter-spacing:.11em;padding:8px 16px;margin-bottom:18px;
}
.cover-bar i{font-style:normal;opacity:.42;padding:0 3px}
.cover-line{font-size:11.2pt;color:#C3C9D1;max-width:5.1in}
.cover-foot{border-top:1px solid rgba(255,255,255,.22);padding-top:18px}
.quote{font-size:11.2pt;font-style:italic;color:#C6CCD2;margin-bottom:12px}
.cover-name{font-size:19pt;font-weight:900;color:var(--white);line-height:1.1}
.cover-meta{font-size:9.2pt;color:#B9BFC7;margin-top:3px}

/* ---------- WEALTH PAGE ---------- */
.wealth{padding:.55in .6in .5in}
.w-eyebrow{font-size:8.6pt;font-weight:900;letter-spacing:.3em;color:var(--lime);margin-bottom:7px}
.w-title{font-size:33pt;font-weight:900;line-height:1;letter-spacing:-.022em;color:var(--white);margin-bottom:12px}
.w-lede{font-size:10.4pt;color:#C6CCD2;line-height:1.5;max-width:6.1in;margin-bottom:19px}
.w-meet{display:inline-flex;align-items:baseline;gap:11px;border:1px solid var(--ink-4);
  padding:9px 17px;margin-bottom:19px}
.w-meet span{font-size:8pt;letter-spacing:.22em;color:var(--gray-2);font-weight:900}
.w-meet strong{font-size:16pt;font-weight:900;color:var(--lime);letter-spacing:.02em}
.w-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:19px;margin-bottom:21px}
.w-step{border-top:2px solid var(--ink-4);padding-top:11px}
.w-n{
  width:25px;height:25px;background:var(--lime);color:var(--ink);
  font-size:11pt;font-weight:900;border-radius:50%;
  display:flex;align-items:center;justify-content:center;margin-bottom:7px;
}
.w-step h4{font-size:9.4pt;font-weight:900;color:var(--white);letter-spacing:.04em;margin-bottom:5px;line-height:1.2}
.w-step p{font-size:8.9pt;color:var(--gray-2);line-height:1.48}
.w-payoff{background:var(--lime);color:var(--ink);padding:19px 20px;text-align:center;margin-bottom:20px}
.w-payoff-k{font-size:8pt;font-weight:900;letter-spacing:.24em;opacity:.62;color:var(--ink)}
.w-payoff-v{font-size:22pt;font-weight:900;letter-spacing:-.018em;line-height:1.08;margin:3px 0 4px;color:var(--ink)}
.w-payoff-s{font-size:9.6pt;color:var(--ink);opacity:.78}
.w-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
.w-nums>div{border-left:2px solid var(--lime);padding-left:11px}
.w-nk{display:block;font-size:7.2pt;font-weight:900;letter-spacing:.13em;color:var(--gray-2)}
.w-nv{display:block;font-size:17pt;font-weight:900;color:var(--white);line-height:1.15;margin:2px 0 1px}
.w-ns{display:block;font-size:7.8pt;color:var(--gray);line-height:1.3}
.w-keys{border-top:1px solid var(--ink-4);padding-top:14px;margin-top:auto}
.w-keys-h{font-size:9.4pt;font-weight:900;letter-spacing:.07em;color:var(--lime);margin-bottom:5px}
.w-keys p{font-size:9.2pt;color:var(--gray-2);line-height:1.5}
.w-fine{font-size:7.6pt !important;color:#6E747D !important;line-height:1.4;margin-top:8px}
.w-foot{margin-top:15px;padding-top:13px;border-top:1px solid var(--ink-4);
  display:flex;justify-content:space-between;font-size:7.4pt;color:var(--gray);align-items:baseline}
.w-foot .pg{font-weight:900;color:var(--lime);font-size:9pt}


/* ---------- FULL BLEED PHOTO PAGES (cover + back cover) ---------- */
.has-photo{isolation:isolate}
.has-photo>*{position:relative;z-index:2}
.photo{
  position:absolute;inset:0;z-index:0;
  background-image:var(--img-house);
  background-size:cover;background-position:52% 62%;
}
.scrim{
  position:absolute;inset:0;z-index:1;
  background:
    linear-gradient(180deg,
      rgba(20,22,26,.93) 0%,
      rgba(20,22,26,.72) 28%,
      rgba(20,22,26,.55) 47%,
      rgba(20,22,26,.88) 72%,
      rgba(20,22,26,.97) 100%);
}
.photo--cta{background-position:50% 66%}
.scrim--cta{
  background:
    linear-gradient(180deg,
      rgba(20,22,26,.95) 0%,
      rgba(20,22,26,.90) 35%,
      rgba(20,22,26,.93) 60%,
      rgba(20,22,26,.98) 100%);
}
.cta-avatar{
  flex:0 0 auto;width:74px;height:74px;border-radius:50%;
  background-image:var(--img-josh);background-size:cover;background-position:center 22%;
  border:2px solid var(--lime);
}
.cta-sig{display:flex;align-items:center;gap:16px}

/* ---------- CTA ---------- */
.cta{padding:.75in .7in;justify-content:center}
.cta-eyebrow{font-size:8.4pt;font-weight:900;letter-spacing:.3em;color:var(--lime);margin-bottom:8px}
.cta-title{font-size:40pt;font-weight:900;line-height:1;letter-spacing:-.025em;color:var(--white);margin-bottom:14px}
.cta-lede{font-size:11pt;color:#C6CCD2;line-height:1.5;max-width:5.6in;margin-bottom:26px}
.cta-rows{border-top:1px solid rgba(255,255,255,.22)}
.cta-row{display:flex;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.22)}
.cta-k{flex:0 0 1.55in;font-size:10pt;font-weight:900;color:var(--lime);letter-spacing:.03em}
.cta-d{flex:1;font-size:9.4pt;color:#BFC5CD;line-height:1.4}
.cta-u{flex:0 0 auto;font-size:10.5pt;font-weight:900;color:var(--white)}
.cta-close{font-size:10pt;color:#C6CCD2;margin:24px 0 0;font-style:italic}
.cta-sig{margin-top:26px;border-top:1px solid rgba(255,255,255,.22);padding-top:18px}
.cta-name{font-size:16pt;font-weight:900;color:var(--white);line-height:1.1}
.cta-role{font-size:8.6pt;color:var(--gray-2);margin-top:2px}
.cta-role.dim{color:#7E858E;margin-top:6px}


/* ---------- TIMELINE STRIP (checklist page) ---------- */
.tline{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:4px 0 2px}
.tline>div{border-top:2px solid var(--lime);padding-top:9px}
.tl-k{display:block;font-size:7.4pt;font-weight:900;letter-spacing:.09em;color:var(--gray-2);line-height:1.25;min-height:27px}
.tl-v{display:block;font-size:10.4pt;font-weight:900;color:var(--ink);line-height:1.2;margin-top:3px}

/* ---------- PAGE 6: MIP (density trim) ---------- */
.sheet:nth-of-type(6) .card{padding:11px 13px}
.sheet:nth-of-type(6) .card .big{font-size:25pt;margin:1px 0 4px}
.sheet:nth-of-type(6) .card p{font-size:9.1pt;line-height:1.4}
.sheet:nth-of-type(6) .tbl td{padding:7px 11px}
.sheet:nth-of-type(6) .tbl thead th{padding:7.5px 11px}
.sheet:nth-of-type(6) .sub-h{margin:12px 0 6px}
.sheet:nth-of-type(6) .callout{padding:10px 14px;margin-top:10px}
.sheet:nth-of-type(6) .callout p{font-size:9.5pt}
.sheet:nth-of-type(6) .lede{margin-bottom:10px}
.sheet:nth-of-type(6) .fine{margin-top:7px}
.sheet:nth-of-type(6) .tbl{margin:8px 0 2px}

/* ---------- PAGE 7: COMPARISON (density trim) ---------- */
.sheet:nth-of-type(7) .tbl--cmp td{font-size:9.1pt;padding:6.4px 11px}
.sheet:nth-of-type(7) .tbl--cmp thead th{padding:7px 11px}
.sheet:nth-of-type(7) .callout{padding:10px 14px;margin-top:9px}
.sheet:nth-of-type(7) .callout p{font-size:9.5pt}
.sheet:nth-of-type(7) .lede{margin-bottom:11px}

/* ---------- PAGE 9: CREDIT EVENTS (density trim) ---------- */
.sheet:nth-of-type(9) .tbl td{padding:7.4px 11px}
.sheet:nth-of-type(9) .callout{padding:10px 14px;margin-top:10px}
.sheet:nth-of-type(9) .callout p{font-size:9.6pt}
.sheet:nth-of-type(9) .bul li{margin-bottom:5px}

/* ---------- SCREEN FIT ---------- */
/* The sheet is always a true 8.5x11in page. Narrow viewports scale the whole
   document via zoom (set inline by the fit script) rather than reflowing it,
   so screen and print stay identical. */
/* wide tables never break the page on mobile */
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* ---------- PRINT ---------- */

html, &,.sheet,*{-webkit-print-color-adjust:exact;print-color-adjust:exact} &{ --ink:#1E1813; --ink-2:#17120E; --ink-3:#3A2E24; --ink-4:#3A2E24; --gray:#6E6153; --gray-2:#9C8F80;
  --line:#E3D9C9; --line-2:#E9E0D2; --line-3:#E3D9C9; --paper:#F4EDE1; --white:#FBF8F2; --lime:#D4A04C;
    } &{ font-family:Inter,-apple-system,sans-serif; background:#5f5750; }
.sheet{ background:var(--white); }
.sheet--dark{ background:#17120E; color:#F4EDE1; }
.lime{ color:#D4A04C; }
.page-h{ font-family:'Source Serif 4',Georgia,serif; font-weight:600; text-transform:none; font-size:24pt; letter-spacing:-.01em; }
.sec-n{ font-family:'Source Serif 4',Georgia,serif; font-weight:600; background:none; color:#95661F; font-size:15pt; min-width:0; padding:0; height:auto; }
.sub-h{ color:#95661F; border-bottom-color:#B4483A; font-size:9.6pt; letter-spacing:.12em; }
.ph-foot .pg{ font-family:'Source Serif 4',Georgia,serif; color:#95661F; font-size:11pt; }
.ph-foot .co{ display:block; color:var(--gray-2); }
.ph-head .strong{ color:#95661F; }
.callout--warn{ background:#F6E7E2; border-left-color:#B4483A; }
.callout--key .co-lead, .promo-k, .promo-r strong, .w-eyebrow, .w-keys-h, .cta-eyebrow, .cta-k, .w-meet strong{ color:#D4A04C; }
.callout--key p, .promo p, .w-lede, .cta-lede, .cta-d{ color:#D9CFC0; }
.tbl thead th{ background:#1E1813; color:#F4EDE1; }
.tbl--calc tr.hi td, .w-payoff{ background:#D4A04C; color:#17120E; }
.m-q span{ background:#B4483A; color:#F4EDE1; }
.m-a span{ background:#D4A04C; color:#17120E; }
.faq .q::before{ background:#95661F; color:#F4EDE1; }
.toc-n{ background:none; color:#95661F; font-family:'Source Serif 4',Georgia,serif; font-weight:600; font-size:10.5pt; }
.ph{ background:#F2D58F; color:#17120E; }
.steps li::before{ background:#1E1813; color:#D4A04C; }
.w-title, .cta-title{ font-family:'Source Serif 4',Georgia,serif; font-weight:600; text-transform:none; letter-spacing:-.01em; }
.cta-title .lime, .w-title .lime{ color:#F4EDE1; text-decoration:underline; text-decoration-color:#B4483A; text-decoration-thickness:.07em; text-underline-offset:.14em; }
.w-n{ background:#D4A04C; color:#17120E; }
.cta-avatar{ border-color:#D4A04C; }
.scrim, .scrim--cta{ background:linear-gradient(180deg, rgba(23,18,14,.94) 0%, rgba(23,18,14,.9) 40%, rgba(23,18,14,.94) 70%, rgba(23,18,14,.98) 100%); }
.cta-name{ font-family:'Source Serif 4',Georgia,serif; font-weight:600; }
/* shared cover, identical to the VA and construction guides */
.gcover{ padding:0 !important; color:#F4EDE1; background:#17120E; }
.gcover .bg{ position:absolute; inset:0; background-size:cover; background-position:44% 50%; z-index:0; }
.gcover .bg::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(23,18,14,.92) 0%, rgba(23,18,14,.68) 44%, rgba(23,18,14,.25) 64%, rgba(23,18,14,.92) 100%); }
.gcover .in{ position:absolute; inset:.7in .7in .6in; display:flex; flex-direction:column; z-index:1; }
.gcover .logo{ display:flex; align-items:center; gap:12px; }
.gcover .logo img{ height:40px; }
.gcover .logo b{ display:block; font:600 14pt/1.05 'Source Serif 4',Georgia,serif; }
.gcover .logo small{ display:block; font:600 7pt/1.5 Inter,sans-serif; letter-spacing:.24em; color:#B9AC9B; }
.gcover .eyebrow{ font:600 7.6pt/1 Inter,sans-serif; letter-spacing:.2em; text-transform:uppercase; color:#D4A04C; margin-top:70px; }
.gcover .eyebrow::before{ content:""; display:inline-block; width:6px; height:6px; border-radius:50%; background:#B4483A; margin-right:8px; vertical-align:1px; }
.gcover h1{ font:600 50pt/1.02 'Source Serif 4',Georgia,serif; letter-spacing:-.01em; margin:46px 0 16px; color:#F4EDE1; }
.gcover h1 em{ font-style:normal; text-decoration:underline; text-decoration-color:#B4483A; text-decoration-thickness:.07em; text-underline-offset:.14em; }
.gcover .sub{ font-size:13pt; color:#F4EDE1; max-width:5.6in; line-height:1.45; }
.gcover .pill{ display:inline-block; margin-top:22px; background:#D4A04C; color:#17120E; font:700 9pt/1 Inter,sans-serif; letter-spacing:.14em; padding:10px 16px; border-radius:99px; align-self:flex-start; }
.gcover .bottom{ margin-top:auto; display:flex; justify-content:space-between; align-items:flex-end; gap:20px; }
.gcover .who b{ display:block; font:600 15pt/1.2 'Source Serif 4',Georgia,serif; }
.gcover .who span{ display:block; font-size:8.4pt; color:#B9AC9B; line-height:1.6; }
.gcover .gquote{ font:italic 400 10.5pt/1.45 'Source Serif 4',Georgia,serif; color:#F4EDE1; white-space:nowrap; text-align:right; margin:0; }

}

.gdoc.gdoc-std, .gdoc.gdoc-fha { background: none; color: var(--ink); }
.gdoc .gch { padding: 0 0 56px; margin: 0 0 56px; border-bottom: 1px solid #E3D9C9; }
.gdoc .gch:last-child { border-bottom: 0; margin-bottom: 0; padding-bottom: 0; }
.gdoc .gch .gcont { margin-top: 30px; }

/* split headings wrap inside their column instead of overflowing */
.split h2 em { white-space: normal; }
.split h2 { overflow-wrap: break-word; }
