.aicg-lp {
  /* Design tokens (scoped) */
  --bg:#f6f7f9; 
  --card:#fff; 
  --text:#111318; 
  --muted:#5b6472;
  --brand:#111318; 
  --accent:#e63b4f; 
  --border:#e8eaee;
  --radius:16px; 
  --shadow:0 10px 30px rgba(17,19,24,.08);
  --max:980px;

  color:var(--text);
  font:16px/1.55 system-ui,-apple-system,Segoe UI,Inter,Roboto,Arial;
  max-width:var(--max);
  margin:0 auto;
  padding:24px 24px 28px;
}

.aicg-lp * { box-sizing:border-box; }
.aicg-lp img { max-width:100%; display:block; }
.aicg-lp a { color:var(--accent); text-decoration:none; }

/* Cards */
.aicg-lp .card {
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}

/* Typographic helpers */
.aicg-lp .eyebrow {
  font-size:.85rem; color:var(--muted);
  letter-spacing:.12em; text-transform:uppercase;
}
.aicg-lp .title { margin:8px 0 14px; text-align:center; color:var(--muted); }
.aicg-lp .lead  { color:var(--muted); }

/* Buttons — long rectangular with soft radius */
.aicg-lp .btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.5rem;
  padding:16px 28px; border-radius:12px;
  border:1px solid transparent; background:var(--brand); color:#fff;
  font-weight:800; letter-spacing:.2px; cursor:pointer;
  box-shadow:0 8px 20px rgba(0,0,0,.12); transition:transform .2s ease, box-shadow .2s ease;
}
.aicg-lp .btn:hover { transform:translateY(-1px); }
.aicg-lp .btn:focus-visible { outline:2px solid #000; outline-offset:2px; }
.aicg-lp .btn--ghost { background:#fff; color:#111; border:1px solid var(--border); box-shadow:none; }
.aicg-lp .btn--wide  { width:100%; max-width:680px; }
.aicg-lp .btn-row { display:flex; justify-content:center; padding:20px; }

/* Progress bar */
.aicg-lp .progress { height:6px; background:#eceff3; border-radius:999px; overflow:hidden; }
.aicg-lp .progress > i { display:block; height:100%; width:35%; background:linear-gradient(90deg,#111,#333); }

/* Stacks & checks */
.aicg-lp .stack { display:grid; gap:16px; }
.aicg-lp .checks { display:grid; gap:10px; margin:18px 0; }
.aicg-lp .check {
  display:flex; align-items:center; gap:10px; padding:12px;
  border:1px solid var(--border); border-radius:10px;
}
.aicg-lp .check svg { flex:0 0 20px; }

/* Promo block */
.aicg-lp .promo { display:grid; gap:0; }
.aicg-lp .promo .media { border-bottom:1px solid var(--border); }
.aicg-lp .promo .copy { padding:22px; }
.aicg-lp .promo h3 { margin:0 0 10px; text-align:center; font-size:1.125rem; }
.aicg-lp .promo p { color:var(--muted); margin:0 auto 10px; max-width:58ch; text-align:center; }
.aicg-lp .promo .more { display:flex; justify-content:center; }

/* Image card */
.aicg-lp .img-card { border:1px solid var(--border); border-radius:14px; overflow:hidden; }

/* Ads placeholders (top/bottom shortcodes output area) */
.aicg-lp .ad-placeholder,
.aicg-lp .ad-space {
  min-height:280px; background:#eef1f5;
  border:1px dashed #cfd6df; color:#a1a9b3;
  display:flex; align-items:center; justify-content:center;
  border-radius:12px;
}

/* Responsive adjustments */
@media (min-width:900px) {
  .aicg-lp .promo { grid-template-columns:1.4fr 1fr; }
  .aicg-lp .promo .media { border-bottom:0; border-right:1px solid var(--border); }
}

/* =====================
   Mobile responsiveness (Manaho)
   ===================== */
@media (max-width: 767px) {
  .aicg-lp { padding: 16px 14px 22px; font-size: 15px; }
  .aicg-lp .btn { padding: 12px 18px; border-radius: 10px; }
  .aicg-lp .btn-row { padding: 12px; }
  .aicg-lp .title { margin: 6px 0 10px; }
  .aicg-lp .lead { font-size: .98rem; }
  .aicg-lp .eyebrow { font-size: .8rem; }

  .aicg-lp .ad-placeholder,
  .aicg-lp .ad-space { min-height: 180px; margin: 10px 0; border-radius: 11px; }

  .aicg-lp .checks { gap: 8px; margin: 14px 0; }
  .aicg-lp .check { padding: 10px; }
  .aicg-lp .check svg { width: 20px; height: 20px; }

  /* Ensure promo collapses to single column and tighter paddings */
  .aicg-lp .promo { grid-template-columns: 1fr; }
  .aicg-lp .promo .copy { padding: 18px; }

  /* Slimmer progress bar */
  .aicg-lp .progress { height: 4px; }
}

@media (max-width: 480px) {
  .aicg-lp { padding: 0; font-size: 14.5px; }
  .aicg-lp .btn { padding: 11px 16px; border-radius: 10px; }
  .aicg-lp .btn-row { padding: 10px; }

  .aicg-lp .ad-placeholder,
  .aicg-lp .ad-space { min-height: 150px; margin: 8px 0; border-radius: 10px; }

  .aicg-lp .eyebrow { font-size: .78rem; }
  .aicg-lp .lead { font-size: .96rem; }

  /* Neutralize any inline horizontal margins that might squeeze the viewport */
  .aicg-lp .img-card { margin-left: 0 !important; margin-right: 0 !important; }
}

@media (max-width: 360px) {
  .aicg-lp { padding: 12px 10px 16px; }
  .aicg-lp .btn { padding: 10px 14px; border-radius: 9px; }
}