.tiptap ul {
  list-style-type: disc;
  padding-left: 1.5rem;
}

.tiptap ol {
  list-style-type: decimal;
  padding-left: 1.5rem;
}

.tiptap li {
  margin: 0.3rem 0;
}

/* Fix YouTube iframe inside Tiptap editor */
.tiptap iframe {
  display: block;
  margin: 1.5rem auto;
  width: 100%;
  max-width: 800px;
  border-radius: 12px;
  aspect-ratio: 16 / 9;
}


  :root {
    --lp-bg: #ffffff;
    --lp-card: #f9fafb;
    --lp-card-2: #f3f4f6;
    --lp-text: #111827;
    --lp-muted: #6b7280;
    --lp-accent: #2563eb;
    --lp-accent-2: #0ea5e9;
    --radius: 16px;
  }

  * { box-sizing:border-box; }

  body {
    margin:0;
    background:var(--lp-bg);
    color:var(--lp-text);
    font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial;
  }

  /* Base typography for raw HTML */
  .lp-prose {
    line-height: 1.75;
    color: var(--lp-text);
  }
  .lp-prose h1 { font-size: 2.5rem; font-weight: 800; margin: 0 0 0.75rem; }
  .lp-prose h2 { font-size: 2rem; font-weight: 700; margin: 2rem 0 0.75rem; }
  .lp-prose h3 { font-size: 1.35rem; font-weight: 600; margin: 1.5rem 0 0.5rem; }
  .lp-prose p  { margin: 0.75rem 0; }
  .lp-prose a  { color: var(--lp-accent); text-decoration: underline; }

  .lp-prose ul { list-style: disc; padding-left: 1.5rem; margin: 0.5rem 0; }
  .lp-prose ol { list-style: decimal; padding-left: 1.5rem; margin: 0.5rem 0; }
  .lp-prose li { margin: 0.25rem 0; color:#374151; }

  /* Layout helpers */
  .lp-container, .lp-wrap {
    max-width: 1120px;
    margin: 0 auto;
    padding: 1.5rem;
  }
  .lp-section { margin: 2.5rem 0; }

  /* Hero */
  .lp-hero {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 1.75rem;
    align-items: center;
    background: #fff;
    border-radius: var(--radius);
    border: 1px solid #e5e7eb;
    box-shadow: 0 10px 25px rgba(15,23,42,0.05);
    padding: 1.75rem;
  }
  .lp-eyebrow {
    color: var(--lp-accent-2);
    font-size: 0.75rem;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 700;
    display: inline-block;
    margin-bottom: 0.5rem;
  }
  .lp-title {
    font-size: 3rem;
    line-height: 1.05;
    margin: 0.4rem 0 0.75rem;
    font-weight: 800;
  }
  .lp-sub {
    font-size: 1.05rem;
    color: var(--lp-muted);
    margin: 0 0 1rem;
  }
  .lp-cta { display:flex; flex-wrap:wrap; gap:0.75rem; }

  .lp-btn {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:0 1.1rem;
    height:2.75rem;
    border-radius:0.75rem;
    font-weight:700;
    border:1px solid #e5e7eb;
    background:var(--lp-accent);
    color:#fff;
    text-decoration:none;
    box-shadow:0 8px 18px rgba(37,99,235,0.25);
    transition:all .2s ease;
  }
  .lp-btn:hover {
    transform:translateY(-1px);
    box-shadow:0 12px 25px rgba(37,99,235,0.35);
  }
  .lp-btn.secondary {
    background:#fff;
    color:var(--lp-text);
    box-shadow:0 4px 10px rgba(15,23,42,0.04);
  }
  .lp-btn.secondary:hover {
    box-shadow:0 8px 20px rgba(15,23,42,0.1);
  }

  /* Cards / grid */
  .lp-row { display:grid; gap:1.25rem; }
  .lp-row.cols-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lp-row.cols-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }

  .lp-card {
    background:#fff;
    border-radius:var(--radius);
    border:1px solid #e5e7eb;
    box-shadow:0 10px 25px rgba(15,23,42,0.04);
    transition:all .3s ease;
  }
  .lp-card:hover {
    transform:translateY(-2px);
    box-shadow:0 20px 40px rgba(15,23,42,0.1);
  }
  .lp-pad { padding:1.5rem; }

  .lp-card .amt {
    font-size:2.4rem;
    font-weight:800;
    margin-bottom:0.35rem;
    color:var(--lp-text);
  }
  .lp-card .lp-muted,
  .lp-muted {
    color:var(--lp-muted);
    font-size:0.9rem;
  }
  .lp-card .lp-btn {
    margin-top:0.9rem;
    width:100%;
    justify-content:center;
  }

  /* Gradients & badges used in pricing/features snippets */
  .gradient-purple { background:linear-gradient(135deg,#667eea 0%,#764ba2 100%); }
  .gradient-pink   { background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%); }
  .gradient-blue   { background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%); }

  .icon-container {
    width:60px;
    height:60px;
    border-radius:16px;
    margin:0 auto 1rem;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
    color:#fff;
  }

  .plan-badge {
    color:#fff;
    padding:0.5rem 1rem;
    border-radius:20px;
    font-size:0.75rem;
    font-weight:700;
    display:inline-block;
    margin-bottom:1rem;
    text-transform:uppercase;
    letter-spacing:.05em;
  }

  /* CTA box */
  .lp-ctaBox {
    text-align:center;
    padding:2rem;
  }
  .lp-ctaBox h2 {
    font-size:2.5rem;
    font-weight:800;
    margin:0 0 1rem;
    color:#111827;
  }
  .lp-ctaBox p {
    margin:0 0 2rem;
    color:#6b7280;
    font-size:1.1rem;
    max-width:600px;
    margin-left:auto;
    margin-right:auto;
  }
  .lp-ctaBox .benefits {
    font-size:0.9rem;
    margin-top:1.5rem;
    color:#f9fafb;
  }

  /* Section header (Why Choose Us?, Pricing title, dll) */
  .section-header {
    text-align:center;
    margin-bottom:2rem;
  }
  .section-header h2 {
    font-size:2.5rem;
    font-weight:800;
    margin-bottom:0.5rem;
    color:#111827;
  }
  .section-header p {
    font-size:1.1rem;
    color:#6b7280;
    max-width:600px;
    margin:0 auto;
  }

  /* Video wrapper (dipakai di enhanceRawHtml) */
  .lp-video {
    border-radius:1rem;
    overflow:hidden;
    border:1px solid #e5e7eb;
    background:#000;
    margin-top:0.5rem;
  }
  .lp-video iframe,
  .lp-video video {
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
  }
  .lp-video.ratio-16x9 { aspect-ratio:16/9; }
  .lp-video.ratio-4x3  { aspect-ratio:4/3; }
  .lp-video.ratio-1x1  { aspect-ratio:1/1; }
  .lp-video.size-sm { max-width:520px; }
  .lp-video.size-md { max-width:720px; }
  .lp-video.size-lg { max-width:960px; }
  .lp-video.align-left   { margin-left:0; margin-right:auto; }
  .lp-video.align-center { margin-left:auto; margin-right:auto; }
  .lp-video.align-right  { margin-left:auto; margin-right:0; }

  /* Fallback styling untuk iframe youtube yang langsung dari Quill/Tiptap */
  .ql-video,
  .tiptap-youtube,
  .lp-prose iframe[src*="youtube.com/embed"],
  .lp-prose iframe[src*="vimeo.com"] {
    display:block;
    width:100%;
    max-width:960px;
    aspect-ratio:16/9;
    margin:1.5rem auto;
    border-radius:1rem;
    border:1px solid #e5e7eb;
    background:#000;
  }

  @media (max-width:1024px) {
    .lp-hero { grid-template-columns:1fr; }
    .lp-title { font-size:2.2rem; }
    .lp-container, .lp-wrap { padding:1.25rem; }
    .lp-row.cols-3 { grid-template-columns:1fr; }
    .section-header h2 { font-size:2rem; }
    .lp-ctaBox h2 { font-size:2rem; }
  }