

    body { line-break: strict; }

    .jp-hero-cap {
      margin-top: .75rem;
      font-size: 12.5px;
      line-height: 1.7;
      color: rgba(18, 43, 32, .76);
      text-align: center;
    }
    @media (min-width: 640px) { .jp-hero-cap { font-size: 13.5px; } }

    .jp-story-real {
      margin-top: 1.25rem;
      font-size: .8125rem;
      line-height: 1.9;
      color: rgba(228, 220, 207, .78);
    }
    @media (min-width: 640px) { .jp-story-real { font-size: .875rem; } }

    .jp-note-left { text-align: left; }

    @media (min-width: 640px) {
      .sm\:hidden { display: none; }
    }

    .mf-br-pc { display: none; }
    @media (min-width: 640px) {
      .mf-br-pc { display: inline; }
    }

    .jp-learn-quiet {
      background: transparent;
      border: 1px solid rgba(18, 43, 32, .22);
      color: rgba(18, 43, 32, .78);
      font-weight: 600;
      transition: border-color .2s, background-color .2s, color .2s;
    }
    .jp-learn-quiet:hover {
      border-color: rgba(18, 43, 32, .45);
      background: rgba(18, 43, 32, .04);
      color: #122B20;
    }
    .jp-learn-quiet:focus-visible { outline: 2px solid #C5A059; outline-offset: 3px; }

    .btn-arrow {

      display: inline-block;
      width: 1em; height: 1em;
      flex: 0 0 auto;
      vertical-align: -0.125em;
      fill: none;
      stroke: currentColor;
      stroke-width: 2.4;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    .mf-cta .btn-arrow { margin-left: .5em; }

    .mf-cta { white-space: nowrap; }

    .jp-pdr-link .btn-arrow { margin-left: .4em; }
    .jp-pdr-link:hover > span { text-decoration: underline; }

    .mf-cta {
      background: #BC8C2E;
      box-shadow: 0 14px 30px -12px rgba(140, 100, 20, .62), 0 2px 6px -2px rgba(28, 25, 23, .18);
    }
    .mf-cta:hover { background: #A87A22; }
    .mf-cta:focus-visible { outline: 3px solid #122B20; outline-offset: 3px; }

    @media (max-width: 479px) {
      .chart-hdr { display: block; }
      .chart-hdr > span:last-child { display: block; margin-top: 2px; }
    }

    @media (max-width: 639px) {
      .mf-h1      { font-size: min(30px, calc((100vw - 2rem) / 11.5)); }
      .mf-hero    { font-size: min(16px, calc((100vw - 2rem) / 27.6)); }
      .mf-routine { font-size: min(14px, calc((100vw - 2rem) / 24.5)); }
      .mf-h2      { font-size: min(24px, calc((100vw - 2rem) / 15.6)); }

      .mf-h2b     { font-size: min(24px, calc((100vw - 2rem) / 20.6)); font-feature-settings: "palt"; }
      .mf-lead    { font-size: min(16px, calc((100vw - 2rem) / 25.1)); }
      .mf-card-h  { font-size: min(18px, calc((100vw - 5rem) / 15.5)); }
      .mf-line    { font-size: min(16px, calc((100vw - 2rem) / 31.6)); }

      .mf-note    { font-size: 12.5px; color: rgb(28 25 23 / .72); }

      .jp-hero-cap { font-size: min(12.5px, calc((100vw - 2rem) / 24.2)); }

      .mf-ba      { font-size: min(12px, calc((100vw - 7rem) / 28.6)); line-height: 1.35; }

      .mf-vision  { font-size: min(16px, calc((100vw - 2rem) / 29.6)); }

      .mf-set     { font-size: min(14px, calc((100vw - 6.5rem) / 20.6)); }

      .mf-cta     { font-size: min(18px, calc((100vw - 8.25rem) / 15.0)); padding-left: 1rem; padding-right: 1rem; }

      .mf-fg      { font-size: min(16px, calc((100vw - 5rem) / 17.4)); }
    }

    @media (min-width: 768px) {
      .rt-card { padding: 1.25rem; container-type: inline-size; }

      .mf-card-h { font-size: min(18px, calc(100cqw / 13.6)); }
    }

    .bg-brand-green {
      background-color: #16281c;
      background-image: url("img/texture.webp");
      background-repeat: repeat;
      background-size: 340px auto;
      background-position: top center;
    }
    @media (min-width: 768px) {
      .bg-brand-green { background-size: 460px auto; }
    }

    .bg-brand-dark\/60 { background-color: rgba(10, 23, 15, 0.72); }

    .nb { white-space: nowrap; }

    html { scroll-behavior: smooth; }
    @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }

    #buy { scroll-margin-top: 55vh; }
    @media (min-width: 768px) { #buy { scroll-margin-top: 48vh; } }

    .jp-midcta {
      display: inline-flex; align-items: center; justify-content: center;
      padding: .875rem 1.75rem; border-radius: 9999px;
      background: #C5A059; color: #122B20;
      font-weight: 700; font-size: 1rem; line-height: 1.4;
      box-shadow: 0 10px 24px -12px rgba(0, 0, 0, .55);
      transition: background-color .18s ease;
    }
    .jp-midcta:hover { background: #B08C43; }
    .jp-midcta:focus-visible { outline: 2px solid #F8F6F0; outline-offset: 3px; }

    @media (max-width: 389px) {
      .jp-midcta { font-size: .9375rem; padding-left: 1.25rem; padding-right: 1.25rem; }
    }

    .jp-stickybar {
      position: fixed; left: 0; right: 0; bottom: 0; z-index: 40;
      padding: .625rem .75rem calc(.625rem + env(safe-area-inset-bottom, 0px));
      background: rgba(18, 43, 32, .96);

      border-top: 1px solid rgba(0, 0, 0, .28);
      transform: translateY(110%);
      visibility: hidden;
      transition: transform .28s ease, visibility 0s linear .28s;
    }
    .jp-stickybar.is-on {
      transform: translateY(0);
      visibility: visible;
      transition: transform .28s ease, visibility 0s;
    }
    @media (prefers-reduced-motion: reduce) {
      .jp-stickybar { transition: visibility 0s; }
    }
    .jp-stickybar a {
      display: flex; align-items: center; justify-content: center;
      max-width: 26rem; margin: 0 auto;
      padding: .8125rem 1.25rem; border-radius: 9999px;
      background: #C5A059; color: #122B20;
      font-weight: 700; font-size: 1rem; line-height: 1.4; letter-spacing: .02em;
      text-decoration: none;
      transition: background-color .18s ease;
    }

    #story { padding-bottom: calc(4rem + 76px); }
    @media (min-width: 768px) { #story { padding-bottom: calc(5rem + 76px); } }

    .jp-stickybar a:hover { background: #B08C43; }
    .jp-stickybar a:focus-visible { outline: 2px solid #F8F6F0; outline-offset: 3px; }

    @media (max-width: 389px) {
      .jp-stickybar a { font-size: .9375rem; padding-left: 1rem; padding-right: 1rem; }
    }

    .jp-qa {
      background: rgba(10, 23, 15, .72);
      border-left: 2px solid rgba(197, 160, 89, .8);
      border-radius: 0 .75rem .75rem 0;
      padding: 1.5rem;
    }
    .jp-qa-q { font-weight: 700; color: #fff; line-height: 1.7; }
    .jp-qa-a { margin-top: .5rem; color: #d1d5db; line-height: 1.9; }
    @media (max-width: 639px) {
      .jp-qa { padding: 1.25rem; }
      .jp-qa-q { font-size: .9375rem; }
      .jp-qa-a { font-size: .75rem; }
    }
    @media (min-width: 640px) {
      .jp-qa-q { font-size: 1rem; }
      .jp-qa-a { font-size: .875rem; }
    }

    .jp-story-inline { color: #C5A059; border-bottom: 1px solid rgba(197,160,89,.45); padding-bottom: 1px; }
    .jp-story-inline:hover { border-bottom-color: #C5A059; }

    .jp-routine-close { font-size: min(14px, calc((100vw - 2rem) / 17)); line-height: 1.9; font-weight: 600; color: #F3F4F6; }
    .space-y-6 > .jp-routine-close:not([hidden]) { margin-top: 16px; margin-bottom: 36px; }

    @media (min-width: 768px) { .jp-cards3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

    .jp-story-box { border: 1px solid rgba(197,160,89,.35); border-radius: .75rem; padding: 1.5rem 1.25rem; background: rgba(18,43,32,.45); }
    .jp-story-title { color: #C5A059; font-weight: 700; font-size: 1.0625rem; text-align: center; letter-spacing: .02em; margin-bottom: 1rem; }
    .jp-story-list { display: flex; flex-direction: column; gap: .5rem; max-width: 24rem; margin-left: auto; margin-right: auto; }
    .jp-story-link { display: flex; align-items: center; justify-content: space-between; gap: .75rem;
      padding: .875rem 1.25rem; border: 1px solid rgba(197,160,89,.35); border-radius: .75rem;
      background: rgba(18,43,32,.45); color: #F8F6F0; font-size: .875rem; text-align: left; line-height: 1.6;
      transition: border-color .2s, background-color .2s; }
    .jp-story-link:hover { border-color: rgba(197,160,89,.7); background: rgba(18,43,32,.7); }
    .jp-story-link::after { content: "\2192"; color: #C5A059; flex: 0 0 auto; }

    .jp-price-unit { font-size: min(16px, calc((100vw - 190px) / 12)); }

    .jp-buy-info { margin-top: 1.5rem; text-align: left; border-top: 1px solid rgba(18,43,32,.12); padding-top: 1.25rem; }
    .jp-buy-info-t { font-size: .8125rem; font-weight: 700; color: #122B20; margin-top: 1rem; }
    .jp-buy-info-t:first-child { margin-top: 0; }
    .jp-buy-info-b { font-size: .75rem; color: #4B5563; line-height: 1.9; margin-top: .25rem; }

    .faq { display: grid; gap: .75rem; margin-top: 2rem; text-align: left; }

    .faq-item {
      background: #FFFFFF;
      border: 1px solid rgba(197, 160, 89, .2);
      border-radius: .75rem;
    }

    .faq-item > summary {
      list-style: none;
      cursor: pointer;
      display: flex;

      align-items: center;

      gap: .75rem;
      padding: 1.125rem 1.25rem;
      font-size: 15px;
      line-height: 1.6;
      font-weight: 700;
      color: #1C1917;
    }
    .faq-item > summary::-webkit-details-marker { display: none; }

    .faq-item > summary::after {
      content: "+";
      margin-left: auto;
      flex: 0 0 auto;
      font-size: 17px;
      line-height: 1.1;
      font-weight: 400;
      color: #8A6D28;
    }
    .faq-item[open] > summary::after { content: "\2212"; }
    .faq-item[open] > summary { padding-bottom: .625rem; }
    .faq-item > summary:focus-visible {
      outline: 2px solid #C5A059;
      outline-offset: 2px;
      border-radius: .75rem;
    }
    .faq-a { padding: 0 1.25rem 1.25rem; }
    .faq-a p {
      font-size: 14px;
      line-height: 1.9;
      color: rgba(28, 25, 23, .72);
    }
    @media (min-width: 640px) {
      .faq-item > summary { font-size: 16px; padding: 1.25rem 1.5rem; }
      .faq-a { padding: 0 1.5rem 1.5rem; }
      .faq-a p { font-size: 15px; }
    }

    .faq-link-row { margin-top: .75rem; }
    .faq-link {
      display: inline-flex;
      align-items: center;
      color: #1C1917;
      font-weight: 600;
      font-size: 14px;
    }
    .faq-link > span {
      text-decoration: underline;
      text-decoration-color: rgba(197, 160, 89, .85);
      text-decoration-thickness: 1.5px;
      text-underline-offset: 3px;
    }
    .faq-link .btn-arrow { margin-left: .4em; }
    .faq-link:hover > span { text-decoration-color: #C5A059; }
    @media (min-width: 640px) { .faq-link { font-size: 15px; } }
    @media (max-width: 639px) {
      .mf-story-lead { font-size: .8125rem; }
    }
