.price-card .btn {
      width: 100%;
      margin-top: 22px;
      border: 0;
      cursor: pointer;
    }

    .cta-stack {
      display: flex;
      flex-direction: column;
      gap: 12px;
      max-width: 420px;
      margin: 24px auto 0;
    }

    .cta-secondary {
      display: inline-flex;
      width: 100%;
      min-height: 58px;
      justify-content: center;
      align-items: center;
      padding: 16px 20px;
      border: 0;
      border-radius: 25px;
      color: var(--white);
      font-size: 17px;
      font-weight: 900;
      line-height: 1.15;
      text-align: center;
      text-decoration: none;
      cursor: pointer;
      transition: transform 0.1s ease, box-shadow 0.2s ease;
    }

    .cta-secondary {
      background: #25d366;
      box-shadow: 0 6px 0 #169b47;
    }

    .cta-secondary:hover {
      transform: translateY(2px);
      box-shadow: 0 4px 0 rgba(0, 0, 0, 0.18);
    }

    .installments-box {
      padding: 20px;
      border: 1px solid rgba(255, 255, 255, 0.28);
      border-radius: var(--radius);
      background: rgba(255, 255, 255, 0.12);
      text-align: center;
    }

    .installments-box p {
      margin-bottom: 14px;
      color: var(--white);
      font-size: 18px;
      font-weight: 900;
    }

    .installments-box .btn {
      width: 100%;
      border: 0;
      cursor: pointer;
    }

    .method-band {
      padding: 74px 20px;
      color: var(--ink);
      background: #e8fbf5;
    }

    .method-box {
      display: grid;
      grid-template-columns: minmax(0, 0.8fr) minmax(300px, 1fr);
      gap: 34px;
      align-items: center;
    }

    .method-box h2 {
      font-size: clamp(35px, 5vw, 58px);
      line-height: 1;
      font-weight: 950;
      text-transform: uppercase;
    }

    .method-box p {
      color: #244844;
      font-size: clamp(20px, 2.6vw, 32px);
      font-weight: 850;
      line-height: 1.2;
    }

    .list-grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 14px;
    }

    .check-item,
    .final-item {
      display: flex;
      gap: 14px;
      align-items: flex-start;
      padding: 19px 20px;
      border: 1px solid var(--line);
      color: var(--ink);
      background: var(--white);
      font-size: 18px;
      font-weight: 800;
      line-height: 1.25;
    }

    .check-item::before {
      content: "✓";
      flex: 0 0 24px;
      width: 24px;
      height: 24px;
      display: grid;
      place-items: center;
      border-radius: 50%;
      color: var(--white);
      background: var(--teal);
      font-size: 14px;
      font-weight: 950;
    }

    .check-item.no::before {
      content: "×";
      background: var(--pink);
    }

    .split {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(320px, 0.82fr);
      gap: 42px;
      align-items: start;
    }

    .soft-panel {
      padding: 28px;
      border: 1px solid var(--line);
      border-radius: var(--radius);
      background: var(--soft);
    }

    .soft-panel h3 {
      margin-bottom: 18px;
      font-size: 28px;
      line-height: 1.1;
    }

    .bonus-list {
      display: grid;
      gap: 12px;
    }

    .bonus-list div {
      padding: 16px 0;
      border-top: 1px solid var(--line);
      font-size: 18px;
      font-weight: 850;
    }

    .final-section {
      padding: 90px 20px;
      color: var(--white);
      background: var(--ink);
    }

    .final-section .section-header {
      align-items: start;
    }

    .final-section .eyebrow {
      color: var(--white);
      background: rgba(255, 255, 255, 0.12);
      border-color: rgba(255, 255, 255, 0.22);
    }

    .final-list {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 12px;
      margin: 36px 0;
    }

    .final-item {
      min-height: 140px;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-end;
      border-color: rgba(255, 255, 255, 0.14);
      color: var(--white);
      background: rgba(255, 255, 255, 0.08);
    }

    .final-item::before {
      content: "×";
      width: 32px;
      height: 32px;
      display: grid;
      place-items: center;
      margin-bottom: 16px;
      border-radius: 50%;
      color: var(--white);
      background: var(--brand);
      font-size: 22px;
      font-weight: 950;
      line-height: 1;
    }

    .closing-line {
      max-width: 780px;
      margin: 0 auto 30px;
      color: rgba(255, 255, 255, 0.86);
      font-size: clamp(22px, 3vw, 34px);
      font-weight: 850;
      line-height: 1.2;
      text-align: center;
    }

    .mobile-only {
      display: none;
    }

    @media (min-width: 941px) {
      .hero {
        min-height: 680px;
        align-items: end;
        padding-bottom: 0;
      }

      .hero-grid {
        align-items: end;
      }

      .hero-copy {
        padding-bottom: 92px;
      }

      .hero-visual {
        min-height: 600px;
        place-items: end center;
      }

      .hero-art {
        width: min(610px, 112%);
        max-height: 660px;
      }

      .hero-logo {
        width: min(504px, 100%);
      }

      .event-date {
        font-size: 40px;
      }

      .hero .btn {
        min-width: 356px;
      }

      .hero .microcopy {
        width: 356px;
        padding-bottom: 35px;
        text-align: center;
      }

      .section-title,
      .statement h2,
      .method-box h2 {
        font-size: 35px;
        line-height: 1.08;
      }

      .method-box p {
        font-size: 25px;
      }

      .learning-title {
        padding-right: 100px;
      }

      .offer-box {
        grid-template-columns: 1fr;
      }

      .offer-section {
        padding-top: 5px;
        padding-bottom: 75px;
        background: transparent;
      }

      .audience-split {
        grid-template-columns: 1fr 1fr;
      }

      .bonus-title {
        padding-bottom: 15px;
      }

      .cta-section {
        text-align: center;
      }

      .cta-panel {
        max-width: 760px;
        margin: 0 auto;
      }

      .cta-panel .section-title {
        font-size: 45px;
      }

      .cta-panel .section-subtitle {
        margin: 18px auto 0;
      }

      .cta-panel .hero-actions {
        justify-content: center;
      }

      .cta-panel .microcopy {
        width: 100%;
        text-align: center;
      }

      .final-section .section-header {
        align-items: end;
      }

      .final-section > .container > .btn {
        display: flex;
        width: fit-content;
        margin: 0 auto;
      }

      .proof-item strong {
        font-size: 25px;
      }

      .statement p,
      .statement ul {
        font-size: 25px;
      }

      .statement li::before {
        margin-top: 10px;
      }

      .cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
      }

      .card {
        min-height: 128px;
        align-content: center;
        grid-template-columns: auto 1fr;
        gap: 20px;
        align-items: center;
      }

      .card span {
        font-size: 34px;
        line-height: 1;
      }

      .card strong {
        margin-top: 0;
        font-size: 22px;
      }
    }

    @media (max-width: 940px) {
      .hero {
        min-height: auto;
        padding-top: 46px;
      }

      .hero-grid,
      .section-header,
      .statement .container,
      .method-box,
      .offer-box,
      .split {
        grid-template-columns: 1fr;
      }

      .cost-infographic {
        grid-template-columns: repeat(2, 1fr);
      }

      .offer-section {
        padding-top: 39px;
        padding-right: 5vw;
        padding-left: 5vw;
        background: var(--ink);
      }

      .offer-box {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
      }

      .offer-payment {
        width: 100%;
        max-width: 100%;
      }

      .price-card {
        width: 100%;
      }

      .offer-includes {
        width: 100%;
      }

      .offer-includes h3 {
        font-size: 24px;
      }

      .offer-includes li {
        font-size: 17px;
        font-weight: 900;
      }

      .cost-infographic::before {
        display: none;
      }

      .infographic-shirt {
        grid-column: 1 / -1;
        grid-row: auto;
      }

      .node-dtf,
      .node-shirt,
      .node-total,
      .node-sale {
        grid-column: auto;
        grid-row: auto;
      }

      .hero-visual {
        min-height: 430px;
      }

      .hero-art {
        width: min(360px, 88%);
        max-height: 500px;
      }

      .cards,
      .final-list {
        grid-template-columns: repeat(2, 1fr);
      }
    }
