*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    body {
      font-family: 'Segoe UI', Arial, sans-serif;
      background: #f3f4f6;
      min-height: 100vh;
      display: flex;
      flex-direction: column;
    }

    /* ════════════════════
       HERO
    ════════════════════ */
    .hero {
      background: #111827;
      padding: 48px 32px 52px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }

    /* Subtle decorative circles */
    .hero::before,
    .hero::after {
      content: '';
      position: absolute;
      border-radius: 50%;
      opacity: 0.06;
      background: #fff;
      pointer-events: none;
    }
    .hero::before { width: 420px; height: 420px; top: -160px; left: -120px; }
    .hero::after  { width: 300px; height: 300px; bottom: -100px; right: -60px; }

    /* ── Logo banner ── */
    .logo-banner {
      background: #fff;
      border-bottom: 1px solid #e5e7eb;
      padding: 10px 40px;
      text-align: center;
    }

    .logo-banner img {
      height: 60px;
      display: inline-block;
    }

    .badge {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: rgba(220,38,38,0.18);
      color: #f87171;
      font-size: 0.72rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.09em;
      padding: 5px 14px;
      border-radius: 20px;
      margin-bottom: 14px;
      position: relative;
      z-index: 1;
    }

    .hero h1 {
      font-size: 2.4rem;
      font-weight: 800;
      color: #fff;
      line-height: 1.15;
      margin-bottom: 12px;
      position: relative;
      z-index: 1;
    }

    .hero h1 span { color: #ef4444; }

    .hero p {
      font-size: 1rem;
      color: #9ca3af;
      line-height: 1.6;
      max-width: 500px;
      margin: 0 auto 32px;
      position: relative;
      z-index: 1;
    }

    .cta-btn {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      background: #dc2626;
      color: #fff;
      text-decoration: none;
      font-size: 1.05rem;
      font-weight: 700;
      padding: 16px 44px;
      border-radius: 8px;
      box-shadow: 0 4px 20px rgba(220,38,38,0.45);
      transition: background 0.15s, transform 0.15s, box-shadow 0.15s;
      position: relative;
      z-index: 1;
    }

    .cta-btn:hover {
      background: #b91c1c;
      transform: translateY(-2px);
      box-shadow: 0 8px 28px rgba(220,38,38,0.5);
    }

    .cta-btn:active { transform: translateY(0); }
    .cta-btn svg { width: 18px; height: 18px; flex-shrink: 0; }

    .cta-url {
      display: block;
      margin-top: 12px;
      font-size: 0.83rem;
      color: #4b5563;
      position: relative;
      z-index: 1;
    }

    /* ════════════════════
       CARDS GRID
    ════════════════════ */
    .grid-section {
      flex: 1;
      padding: 32px 28px 28px;
      max-width: 1100px;
      width: 100%;
      margin: 0 auto;
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 20px;
      align-items: stretch;
    }

    .card {
      background: #fff;
      border-radius: 14px;
      box-shadow: 0 1px 6px rgba(0,0,0,0.08);
      padding: 26px 24px;
    }

    .section-title {
      font-size: 0.7rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.09em;
      color: #9ca3af;
      margin-bottom: 16px;
    }

    /* ── Checklist ── */
    .checklist { list-style: none; }

    .checklist li {
      display: flex;
      align-items: flex-start;
      gap: 10px;
      padding: 9px 0;
      font-size: 0.9rem;
      color: #374151;
      border-bottom: 1px solid #f3f4f6;
      line-height: 1.5;
    }

    .checklist li:last-child { border-bottom: none; padding-bottom: 0; }
    .checklist li:first-child { padding-top: 0; }

    .check-icon {
      flex-shrink: 0;
      width: 20px; height: 20px;
      background: #fef2f2;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      margin-top: 1px;
    }

    .check-icon svg {
      width: 10px; height: 10px;
      stroke: #dc2626;
      stroke-width: 2.5;
      fill: none;
      stroke-linecap: round;
      stroke-linejoin: round;
    }

    /* ── Benefits ── */
    .benefits { list-style: none; }

    .benefits li {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 10px 0;
      font-size: 0.9rem;
      color: #374151;
      border-bottom: 1px solid #f3f4f6;
      font-weight: 500;
    }

    .benefits li:last-child { border-bottom: none; padding-bottom: 0; }
    .benefits li:first-child { padding-top: 0; }

    .benefit-icon {
      flex-shrink: 0;
      width: 34px; height: 34px;
      background: #f3f4f6;
      border-radius: 8px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.1rem;
    }

    /* ── Resources card ── */
    .card-resources { border-top: 4px solid #dc2626; }

    .resources-list { list-style: none; display: flex; flex-direction: column; gap: 8px; }

    .resource-item {
      display: flex;
      align-items: center;
      gap: 12px;
      padding: 12px 13px;
      border-radius: 10px;
      border: 1.5px solid #f3f4f6;
      text-decoration: none;
      background: #fafafa;
      transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
    }

    .resource-item:hover {
      border-color: #dc2626;
      background: #fff;
      box-shadow: 0 2px 10px rgba(220,38,38,0.10);
    }

    .resource-icon {
      flex-shrink: 0;
      width: 38px; height: 38px;
      border-radius: 8px;
      background: #fef2f2;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.2rem;
    }

    .resource-info { flex: 1; min-width: 0; }

    .resource-info strong {
      display: block;
      font-size: 0.85rem;
      font-weight: 700;
      color: #111827;
    }

    .resource-info span {
      font-size: 0.74rem;
      color: #9ca3af;
    }

    .resource-arrow {
      flex-shrink: 0;
      color: #d1d5db;
      transition: color 0.15s, transform 0.15s;
    }

    .resource-item:hover .resource-arrow { color: #dc2626; transform: translateX(3px); }

    /* Video link item */
    .resource-item.video-item .resource-icon {
      background: #f0fdf4;
    }

    /* ════════════════════
       FOOTER
    ════════════════════ */
    footer {
      text-align: center;
      padding: 16px;
      font-size: 0.8rem;
      color: #9ca3af;
    }

    /* ════════════════════
       MOBILE (≤ 700px)
    ════════════════════ */
    @media (max-width: 700px) {
      .hero { padding: 36px 20px 40px; }
      .logo-banner { padding: 18px 24px; }
      .logo-banner img { height: 56px; }
      .hero h1 { font-size: 1.6rem; }
      .hero p { font-size: 0.92rem; }
      .cta-btn { padding: 14px 32px; font-size: 0.97rem; }

      .grid-section {
        grid-template-columns: 1fr;
        padding: 20px 16px 24px;
        gap: 14px;
      }

      .card { padding: 22px 18px; }
      .video-wrap video { max-height: 200px; }
    }