:root {
      --red-dark:    #7a1a1a;
      --red-mid:     #a02020;
      --red-bright:  #c0392b;
      --check-green: #2ecc40;
      --shadow:      0 6px 30px rgba(0,0,0,0.25);
    }

    body {
      font-family: 'Open Sans', sans-serif;
      background-color: #d0d8e0;
      background: url('https://thestockpilesavior.com/fb/img/newversion/background.webp') center/cover no-repeat fixed; 
      min-height: 100vh;
    }

    /* ── HEADLINE ── */
    .quote-line {
      font-family: 'Montserrat',sans-serif;
      font-style: italic;
      font-size: 30px;
      color: rgb(88,17,17);
      font-weight: 900;
    }
   

    .sub-line {
      font-family: 'Poppins',sans-serif;
      font-size: 22px;
      font-weight: 700;
      color: #1a1a1a;
      letter-spacing: 0.02em;
    }
    @media (max-width:725px) {
        .quote-line {
            font-size:22px;
        }
        .sub-line {
            font-size:17px;
        }
        body {
            background: none; 
        }
    }

    /* ── VSL BOX ── */
    .vsl-outer {
      background: linear-gradient(135deg, #6b1212 0%, #3a0a0a 100%);
      border: 3px solid #5a1010;
      border-radius: 6px;
      overflow: hidden;
      box-shadow: var(--shadow);
    }
    .vsl-title-bar {
      background: linear-gradient(90deg, #8b1a1a 0%, #6b1212 100%);
      padding: 14px 20px;
    }
    .vsl-title-bar h1 {
      font-family: 'Oswald', sans-serif;
      font-size: clamp(22px, 5vw, 38px);
      font-weight: 700;
      color: #fff;
      letter-spacing: 0.02em;
      text-shadow: 2px 2px 6px rgba(0,0,0,0.6);
      margin: 0;
    }
    /* VSL player — empty space */
    #vsl-player {
      width: 100%;
      aspect-ratio: 16 / 9;
      background: #000;
      display: block;
    }
    .vsl-quote {
      padding: 12px 20px;
      font-style: italic;
      font-size: clamp(13px, 2.2vw, 16px);
      color: rgba(255,255,255,0.75);
    }

    /* ── PRODUCT CARD ── */
    .product-card {
      border-radius: 10px;
      overflow: hidden;
      box-shadow: var(--shadow);
      background: #fff;
      display: flex;
      flex-direction: column;
      height: 100%;
    }
    .card-header-bar {
      background: linear-gradient(90deg, var(--red-dark) 0%, var(--red-mid) 100%);
      padding: 14px 20px;
      text-align: center;
    }
    .card-header-bar h2 {
      font-family: 'Oswald', sans-serif;
      font-size: clamp(17px, 3vw, 22px);
      font-weight: 700;
      color: #fff;
      letter-spacing: 0.03em;
      line-height: 1.2;
      margin: 0;
    }
    .card-notch {
      width: 100%;
      height: 18px;
      background: linear-gradient(90deg, var(--red-dark) 0%, var(--red-mid) 100%);
      clip-path: polygon(0 0, 100% 0, 50% 100%);
      margin-top: -1px;
    }

    /* Book placeholders */
    .card-book-wrap {
      padding: 18px 20px 10px;
      display: flex;
      justify-content: center;
      align-items: flex-end;
      min-height: 160px;
      background: #fff;
    }
    .book-img-placeholder {
      width: 160px; height: 145px;
      background: linear-gradient(145deg, #7a1a1a 0%, #3d0d0d 100%);
      border-radius: 4px;
      display: flex; align-items: center; justify-content: center;
      box-shadow: 4px 4px 14px rgba(0,0,0,0.4);
    }
    .book-label {
      font-family: 'Oswald', sans-serif;
      font-size: 11px;
      color: rgba(255,255,255,0.45);
      text-align: center;
      line-height: 1.5;
    }
    .book-stack { position: relative; width: 200px; height: 155px; }
    .book-stack .book-back {
      position: absolute; top: 0; right: 0;
      width: 155px; height: 140px;
      background: linear-gradient(145deg, #7a1a1a 0%, #3d0d0d 100%);
      border-radius: 4px;
      box-shadow: 4px 4px 14px rgba(0,0,0,0.35);
      display: flex; align-items: center; justify-content: center;
    }
    .book-stack .book-front {
      position: absolute; bottom: 0; left: 0;
      width: 120px; height: 108px;
      background: linear-gradient(145deg, #6b1212 0%, #2a0808 100%);
      border-radius: 3px;
      box-shadow: 3px 3px 10px rgba(0,0,0,0.4);
      display: flex; align-items: center; justify-content: center;
    }

    /* Checklist */
    .card-features {
      list-style: none;
      padding: 14px 24px 6px;
      margin: 0;
      flex: 1;
    }
    .card-features li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      font-size: clamp(12px, 2vw, 14px);
      font-weight: 600;
      color: #333;
      padding: 5px 0;
      border-bottom: 1px solid #f0f0f0;
      line-height: 1.4;
    }
    .card-features li:last-child { border-bottom: none; }
    .check-icon {
      flex-shrink: 0;
      width: 20px; height: 20px;
      background: var(--check-green);
      border-radius: 50%;
      display: flex; align-items: center; justify-content: center;
      margin-top: 1px;
    }
    .check-icon svg {
      width: 11px; height: 11px;
      stroke: white; fill: none;
      stroke-width: 2.5; stroke-linecap: round; stroke-linejoin: round;
    }

    /* Price */
    .card-price-block {
      background: #f7f7f7;
      border-top: 2px solid #e8e8e8;
      padding: 16px 20px;
      text-align: center;
    }
    .price-main {
      font-family: 'Oswald', sans-serif;
      font-size: clamp(38px, 7vw, 52px);
      font-weight: 700;
      color: #1a1a1a;
      line-height: 1;
    }
    .price-main sup { font-size: 55%; vertical-align: super; font-weight: 600; }
    .price-shipping { font-size: 12px; color: var(--red-bright); font-weight: 600; margin-top: 3px; }

    /* CTA button image */
    .cta-btn-wrap { padding: 12px 18px 22px; text-align: center; }
    .cta-btn {
      display: inline-block;
      width: 100%;
      max-width: 320px;
      cursor: pointer;
      transition: transform 0.15s, filter 0.15s;
      text-decoration: none;
    }
    .cta-btn img { width: 100%; height: auto; display: block; }
    .cta-btn:hover  { transform: translateY(-2px) scale(1.02); filter: brightness(1.06); }
    .cta-btn:active { transform: translateY(1px) scale(0.98);  filter: brightness(0.96); }

    /* equal-height cards */
    @media (min-width: 768px) {
      .cards-equal > [class*="col"] { display: flex; }
      .product-card { width: 100%; }
    }

    .padding-top-400 {
      padding-top:400px;
    }

    @media (max-width:725px) {
      .padding-top-400 {
      padding-top:150px;
    }
    }