/* ====== Base ====== */
.ill-wrapper{ margin-top:28px; border-radius:16px; overflow:hidden; position:relative; background: var(--ill-bg, transparent); color: var(--ill-text, inherit); }
.ill-head{ padding:10px 16px; border-bottom:1px solid rgba(255,255,255,0.06); }
.ill-kicker{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; font-weight:600; }
.ill-title{ font-size:20px; line-height:1.35; font-weight:700; word-wrap:break-word; }
.ill-cta{ display:inline-flex; align-self:flex-start; margin-top:4px; padding:8px 14px; border-radius:999px; font-weight:700; transition:transform .15s ease, box-shadow .15s ease; }
.ill-wrapper a{ color: var(--ill-text, inherit); }

/* ====== Layout: Split Horizontal ====== */
.ill-layout-horizontal .ill-card{ display:grid; grid-template-columns:220px 1fr; align-items:stretch; text-decoration:none; }
.ill-layout-horizontal .ill-item.no-thumb .ill-card{ grid-template-columns:1fr; }
.ill-layout-horizontal .ill-media{ position:relative; overflow:hidden; min-height:160px; }
.ill-layout-horizontal .ill-thumb{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s ease; }
.ill-layout-horizontal .ill-card:hover .ill-thumb{ transform:scale(1.05); }
.ill-layout-horizontal .ill-body{ padding:16px 18px; display:flex; flex-direction:column; justify-content:center; gap:8px; }

/* ====== Layout: Overlay Banner ====== */
.ill-layout-overlay .ill-head{ display:none; }
.ill-layout-overlay .ill-overlay{ display:block; position:relative; min-height:240px; background-size:cover; background-position:center; text-decoration:none; }
.ill-layout-overlay .ill-overlay-mask{ position:absolute; inset:0; background: linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.55)); }
.ill-layout-overlay .ill-overlay-content{ position:absolute; inset:auto 0 0 0; padding:18px 20px; }
.ill-layout-overlay .ill-overlay-kicker{ font-size:12px; letter-spacing:.08em; text-transform:uppercase; font-weight:700; margin-bottom:6px; }
.ill-layout-overlay .ill-overlay-title{ font-size:22px; font-weight:800; line-height:1.3; margin-bottom:8px; }
.ill-layout-overlay .ill-overlay-cta{ display:inline-flex; padding:8px 14px; border-radius:999px; font-weight:700; border:1px solid rgba(255,255,255,.6); background: rgba(255,255,255,.08); }

/* ====== Skins ====== */
.ill-style-classic{ border:1px solid rgba(255,255,255,0.08); box-shadow:0 10px 30px rgba(0,0,0,.25); }
.ill-style-classic .ill-head{ background:linear-gradient(90deg, rgba(255,255,255,.04), rgba(255,255,255,0)); }
.ill-style-classic .ill-cta{ border:1px solid rgba(0,255,170,.6); box-shadow:0 0 18px rgba(0,255,170,.2), inset 0 0 8px rgba(0,255,170,.15); }

.ill-style-minimal{ border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 18px rgba(0,0,0,.06); }
.ill-style-minimal .ill-head{ border-bottom:1px solid rgba(0,0,0,.06); background:#fafafa; }
.ill-style-minimal .ill-cta{ border:1px solid rgba(0,0,0,.2); background:#f3f3f3; }

/* ====== Mobile ====== */
@media (max-width: 549px){
  .ill-layout-horizontal .ill-card{ grid-template-columns:1fr; }
  .ill-title{ font-size:18px; }
}
