/* ===================================================================
   Hingenia Apps — landing /apps/
   Scoped a .hsi-apps-landing para no chocar con el tema WP padre.
   =================================================================== */
.hsi-apps-landing {
  --bg:#ffffff; --bg-soft:#faf7f3; --canvas:#f3ede5; --ink:#1a1512; --muted:#7a7269;
  --border:#e9e2d6; --border-soft:#f0eadf;
  --primary:#ff6b35; --primary-dark:#e85d2e; --primary-soft:#fff0e8;
  --grad:linear-gradient(135deg,#ff6b35,#fb5d3e 55%,#ec4899);
  --grad-dark:linear-gradient(135deg,#0f0a05 0%,#2d1810 50%,#5c2e1a 100%);
  --green:#16a34a; --maxw:1500px;

  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--canvas);
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  line-height:1.55;
  position:relative;
  display:block;
}
.hsi-apps-landing *, .hsi-apps-landing *::before, .hsi-apps-landing *::after { box-sizing:border-box; }
.hsi-apps-landing a { color:inherit; text-decoration:none; }
.hsi-apps-landing button { font-family:inherit; cursor:pointer; }
.hsi-apps-landing .hsi-wrap { max-width:var(--maxw); margin:0 auto; padding:0 28px; }

/* Hero */
.hsi-apps-landing .hsi-hero { padding:54px 0 26px; text-align:center; }
.hsi-apps-landing .hsi-hero-in { max-width:920px; margin:0 auto; }
.hsi-apps-landing .hsi-badge {
  display:inline-flex; align-items:center; gap:8px;
  border:1px solid var(--border); background:var(--bg); border-radius:999px;
  padding:6px 14px; font-size:11px; font-weight:600;
  letter-spacing:.12em; text-transform:uppercase; color:var(--muted);
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-badge .dot {
  width:6px; height:6px; border-radius:50%; background:var(--primary);
  box-shadow:0 0 8px var(--primary);
}
.hsi-apps-landing h1.hsi-title {
  margin:20px auto 0; font-size:clamp(38px,5.4vw,70px); font-weight:900;
  letter-spacing:-.04em; line-height:.98; max-width:18ch;
}
.hsi-apps-landing h1.hsi-title .accent {
  background:linear-gradient(90deg,#ff6b35,#ec4899);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.hsi-apps-landing .hsi-subtitle {
  margin:18px auto 0; font-size:17.5px; color:var(--muted);
  max-width:62ch; line-height:1.55;
}
.hsi-apps-landing .hsi-subtitle b { color:var(--ink); font-weight:700; }
.hsi-apps-landing .hsi-hero-cta {
  margin-top:28px; display:inline-flex; gap:10px;
  flex-wrap:wrap; justify-content:center;
}
.hsi-apps-landing .hsi-btn {
  display:inline-flex; align-items:center; gap:8px;
  font-weight:700; font-size:14.5px;
  padding:13px 22px; border-radius:13px;
  border:1px solid transparent; transition:.13s; text-decoration:none;
}
.hsi-apps-landing .hsi-btn-primary { background:var(--primary); color:#fff; box-shadow:0 10px 22px -12px rgba(255,107,53,.6); }
.hsi-apps-landing .hsi-btn-primary:hover { background:var(--primary-dark); }
.hsi-apps-landing .hsi-btn-ghost { background:var(--bg); border-color:var(--border); color:var(--ink); }
.hsi-apps-landing .hsi-btn-ghost:hover { background:var(--bg-soft); }
.hsi-apps-landing .hsi-btn-dark { background:var(--ink); color:#fff; box-shadow:0 18px 36px -16px rgba(255,107,53,.65); }
.hsi-apps-landing .hsi-btn-dark:hover { background:#2a1f17; }

.hsi-apps-landing .hsi-trust {
  display:flex; flex-wrap:wrap; justify-content:center;
  gap:14px 28px; margin-top:26px;
  font-size:12.5px; color:#5b5349; font-weight:600;
}
.hsi-apps-landing .hsi-trust span { display:inline-flex; align-items:center; gap:7px; }
.hsi-apps-landing .hsi-trust .ic {
  width:20px; height:20px; border-radius:6px;
  background:var(--primary-soft); color:var(--primary);
  display:grid; place-items:center;
}

/* Hero showcase */
.hsi-apps-landing .hsi-hero-shot {
  max-width:1080px; margin:50px auto 0; padding:0 28px; position:relative;
}
.hsi-apps-landing .hsi-ss {
  background:#fff; border:1px solid var(--border); border-radius:18px;
  box-shadow:0 50px 100px -36px rgba(45,24,16,.5); overflow:hidden;
}
.hsi-apps-landing .hsi-ssh {
  display:flex; align-items:center; gap:7px;
  padding:9px 13px; background:#faf7f3;
  border-bottom:1px solid var(--border);
}
.hsi-apps-landing .hsi-ssh i { width:9px; height:9px; border-radius:50%; }
.hsi-apps-landing .hsi-ssh i:nth-child(1) { background:#fb7185; }
.hsi-apps-landing .hsi-ssh i:nth-child(2) { background:#fbbf24; }
.hsi-apps-landing .hsi-ssh i:nth-child(3) { background:#34d399; }
.hsi-apps-landing .hsi-ssh .url {
  margin-left:12px; font-size:11px;
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace; color:var(--muted);
}
.hsi-apps-landing .hsi-ssh .right { margin-left:auto; display:flex; align-items:center; gap:7px; }
.hsi-apps-landing .hsi-ssh .conn {
  font-size:9.5px; font-weight:800; padding:3px 8px; border-radius:999px;
  background:#e7f7ee; color:#166534; border:1px solid #bbf7d0;
  display:inline-flex; align-items:center; gap:5px;
}
.hsi-apps-landing .hsi-ssh .conn::before {
  content:''; width:6px; height:6px; border-radius:50%; background:var(--green);
}
.hsi-apps-landing .hsi-ssh .ai {
  font-size:9.5px; font-weight:800; padding:3px 8px; border-radius:999px;
  background:#1a1512; color:#ff8b3e;
  display:inline-flex; align-items:center; gap:5px;
}
.hsi-apps-landing .hsi-ss-body {
  display:grid; grid-template-columns:280px 1fr;
  min-height:380px; background:linear-gradient(180deg,#fff,#fff8f4);
}
.hsi-apps-landing .hsi-ss-side {
  background:#faf7f3; border-right:1px solid var(--border);
  padding:18px 14px; display:flex; flex-direction:column; gap:14px;
}
.hsi-apps-landing .hsi-ss-side .sb {
  display:flex; align-items:center; gap:9px;
  padding:7px 9px; border-radius:8px;
  font-size:12px; color:#5b5349; font-weight:700;
}
.hsi-apps-landing .hsi-ss-side .sb.on { background:var(--primary-soft); color:var(--primary-dark); }
.hsi-apps-landing .hsi-ss-side small {
  font-size:9px; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; color:#b0a89e;
  padding:6px 9px 2px; font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-ss-main {
  padding:20px 24px; display:flex; flex-direction:column; gap:14px;
}
.hsi-apps-landing .hsi-ss-main .pt { display:flex; align-items:center; gap:9px; }
.hsi-apps-landing .hsi-ss-main .pt b { font-size:18px; font-weight:900; letter-spacing:-.02em; }
.hsi-apps-landing .hsi-ss-main .pt small {
  font-size:10.5px; color:var(--muted);
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-ss-main .params-line { display:flex; gap:5px; flex-wrap:wrap; }
.hsi-apps-landing .hsi-ss-main .params-line span {
  font-size:10px; font-weight:800; padding:3px 9px; border-radius:6px;
  background:var(--primary-soft); color:var(--primary-dark);
  border:1px solid #fde0d1;
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-ss-chart {
  flex:1; min-height:200px;
  background:#fff; border:1px solid var(--border);
  border-radius:12px; padding:14px; position:relative;
}
.hsi-apps-landing .hsi-ss-chart svg { width:100%; height:100%; }
.hsi-apps-landing .hsi-ss-chart .legend {
  position:absolute; top:11px; right:14px; display:flex; gap:9px;
}
.hsi-apps-landing .hsi-ss-chart .legend span {
  font-size:9.5px; font-weight:800; color:#5b5349;
  display:inline-flex; align-items:center; gap:4px;
}
.hsi-apps-landing .hsi-ss-chart .legend span::before {
  content:''; width:7px; height:7px; border-radius:50%;
}
.hsi-apps-landing .hsi-ss-chart .legend .l1::before { background:var(--primary); }
.hsi-apps-landing .hsi-ss-chart .legend .l2::before { background:#7c3aed; }

/* Stats bar */
.hsi-apps-landing .hsi-stats-bar { padding:30px 0 18px; }
.hsi-apps-landing .hsi-stats-grid {
  background:var(--bg); border:1px solid var(--border);
  border-radius:18px; padding:24px 32px;
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
}
.hsi-apps-landing .hsi-stat .num {
  font-size:34px; font-weight:900; letter-spacing:-.03em;
  background:linear-gradient(90deg,#ff6b35,#ec4899);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
  line-height:1; font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-stat .lbl {
  font-size:13px; color:var(--muted);
  font-weight:600; margin-top:7px; line-height:1.4;
}
.hsi-apps-landing .hsi-stat .lbl b { color:var(--ink); }

/* Sections */
.hsi-apps-landing section { padding:70px 0 30px; }
.hsi-apps-landing .hsi-sec-h {
  text-align:center; max-width:780px; margin:0 auto 44px;
}
.hsi-apps-landing .hsi-sec-h .eyebrow {
  font-size:11px; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:var(--primary);
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
  display:inline-flex; align-items:center; gap:7px;
}
.hsi-apps-landing .hsi-sec-h .eyebrow::before {
  content:''; width:5px; height:5px; border-radius:50%;
  background:var(--primary); box-shadow:0 0 6px var(--primary);
}
.hsi-apps-landing .hsi-sec-h h2 {
  margin-top:10px; font-size:clamp(28px,3.5vw,44px);
  font-weight:900; letter-spacing:-.03em; line-height:1.08;
}
.hsi-apps-landing .hsi-sec-h h2 b {
  background:linear-gradient(90deg,#ff6b35,#ec4899);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.hsi-apps-landing .hsi-sec-h p {
  margin-top:14px; font-size:16px; color:var(--muted); line-height:1.6;
}

/* App detail */
.hsi-apps-landing .hsi-app {
  background:var(--bg); border:1px solid var(--border);
  border-radius:24px; overflow:hidden;
  display:grid; grid-template-columns:1.1fr 1fr;
}
.hsi-apps-landing .hsi-app-info {
  padding:42px; display:flex; flex-direction:column; justify-content:center;
}
.hsi-apps-landing .hsi-app-eb {
  display:inline-flex; align-items:center; gap:10px;
  font-size:10.5px; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; color:var(--primary-dark);
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-app-eb .ic {
  width:34px; height:34px; border-radius:10px;
  display:grid; place-items:center; color:#fff; background:var(--grad);
}
.hsi-apps-landing .hsi-app h3 {
  font-size:clamp(26px,2.8vw,34px); font-weight:900;
  letter-spacing:-.03em; margin-top:13px; line-height:1.1;
}
.hsi-apps-landing .hsi-app h3 .ac {
  background:linear-gradient(90deg,#ff6b35,#ec4899);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.hsi-apps-landing .hsi-app p.dsc {
  font-size:14.5px; color:var(--muted); margin-top:13px;
  line-height:1.6; max-width:46ch;
}
.hsi-apps-landing .hsi-app p.dsc b { color:var(--ink); }
.hsi-apps-landing .hsi-app .features {
  margin-top:22px; display:flex; flex-direction:column; gap:9px;
}
.hsi-apps-landing .hsi-app .feature {
  display:flex; gap:11px; align-items:flex-start;
}
.hsi-apps-landing .hsi-app .feature .ck {
  width:20px; height:20px; border-radius:6px;
  background:var(--primary-soft); color:var(--primary-dark);
  display:grid; place-items:center; flex-shrink:0; margin-top:1px;
}
.hsi-apps-landing .hsi-app .feature .ft b {
  font-size:13.5px; font-weight:800; display:block;
}
.hsi-apps-landing .hsi-app .feature .ft span {
  font-size:12.5px; color:var(--muted);
}
.hsi-apps-landing .hsi-app-cta {
  display:flex; gap:9px; margin-top:24px; flex-wrap:wrap;
}
.hsi-apps-landing .hsi-app-cta .btn-x {
  background:var(--primary); color:#fff; border:0;
  font-size:13px; padding:11px 17px; border-radius:11px;
  cursor:pointer; display:inline-flex; align-items:center;
  gap:7px; font-weight:700; text-decoration:none;
}
.hsi-apps-landing .hsi-app-cta .btn-x:hover { background:var(--primary-dark); }
.hsi-apps-landing .hsi-app .meta-row {
  margin-top:18px; display:flex; gap:14px;
  font-size:11.5px; color:var(--muted); font-weight:700; flex-wrap:wrap;
}
.hsi-apps-landing .hsi-app .meta-row span { display:inline-flex; align-items:center; gap:5px; }
.hsi-apps-landing .hsi-app .meta-row .ic { color:var(--primary); }

.hsi-apps-landing .hsi-app-visual {
  position:relative; overflow:hidden;
  min-height:380px; background:var(--grad-dark);
}
.hsi-apps-landing .hsi-app-visual::after {
  content:''; position:absolute; right:-60px; bottom:-80px;
  width:240px; height:240px; border-radius:50%;
  background:radial-gradient(rgba(255,107,53,.28),transparent 65%);
}
.hsi-apps-landing .mock {
  position:absolute; left:36px; right:36px; top:36px; bottom:36px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);
  border-radius:14px; padding:18px;
  display:flex; flex-direction:column; gap:14px; color:#fff;
  backdrop-filter:blur(6px);
}
.hsi-apps-landing .mock-h { display:flex; align-items:center; gap:9px; }
.hsi-apps-landing .mock-h .mhk {
  width:32px; height:32px; border-radius:9px;
  background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.14);
  display:grid; place-items:center; flex-shrink:0; color:#ff8b3e;
}
.hsi-apps-landing .mock-h small {
  font-size:9.5px; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; font-family:ui-monospace,'JetBrains Mono',Menlo,monospace; opacity:.7;
}
.hsi-apps-landing .mock-h b { font-size:14px; font-weight:900; display:block; }
.hsi-apps-landing .mock-esp .par { display:flex; gap:5px; flex-wrap:wrap; }
.hsi-apps-landing .mock-esp .par span {
  font-size:9.5px; font-weight:800; padding:3px 8px; border-radius:6px;
  background:rgba(255,107,53,.16); color:#ffb37a;
  border:1px solid rgba(255,179,122,.25);
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .mock-esp .chart {
  flex:1; background:rgba(0,0,0,.32); border:1px solid rgba(255,255,255,.1);
  border-radius:11px; padding:12px;
}
.hsi-apps-landing .mock-esp .chart svg { width:100%; height:100%; }

/* Próximas apps */
.hsi-apps-landing .hsi-coming {
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px;
}
.hsi-apps-landing .hsi-ca {
  background:var(--bg); border:1.5px dashed var(--border);
  border-radius:16px; padding:24px 22px; position:relative;
  transition:.16s; cursor:pointer;
}
.hsi-apps-landing .hsi-ca:hover {
  border-color:var(--primary);
  background:linear-gradient(180deg,#fff,var(--primary-soft));
  transform:translateY(-3px);
}
.hsi-apps-landing .hsi-ca .soon {
  position:absolute; top:14px; right:14px;
  font-size:9px; font-weight:800; letter-spacing:.06em;
  text-transform:uppercase; padding:3px 9px; border-radius:999px;
  background:#fff; color:var(--primary-dark); border:1px solid #fde0d1;
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
  display:inline-flex; align-items:center; gap:5px;
}
.hsi-apps-landing .hsi-ca .soon::before {
  content:''; width:5px; height:5px; border-radius:50%;
  background:var(--primary); animation:hsi-pulse 2s ease-in-out infinite;
}
@keyframes hsi-pulse { 0%,100% { opacity:1; } 50% { opacity:.5; } }
.hsi-apps-landing .hsi-ca .ic {
  width:48px; height:48px; border-radius:13px;
  display:grid; place-items:center; margin-bottom:14px;
  background:var(--primary-soft); color:var(--primary);
}
.hsi-apps-landing .hsi-ca.c2 .ic { background:#fce7f3; color:#be185d; }
.hsi-apps-landing .hsi-ca.c3 .ic { background:#fef3c7; color:#92400e; }
.hsi-apps-landing .hsi-ca.c4 .ic { background:#f1f5f9; color:#475569; }
.hsi-apps-landing .hsi-ca.c5 .ic { background:#e7f7ee; color:#166534; }
.hsi-apps-landing .hsi-ca.c6 .ic { background:#f3e8ff; color:#6b21a8; }
.hsi-apps-landing .hsi-ca h4 { font-size:16px; font-weight:900; letter-spacing:-.015em; }
.hsi-apps-landing .hsi-ca p { font-size:13px; color:var(--muted); margin-top:7px; line-height:1.5; }
.hsi-apps-landing .hsi-ca .eta {
  display:inline-flex; align-items:center; gap:5px;
  margin-top:13px; font-size:11px; font-weight:700;
  color:var(--primary-dark);
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}

.hsi-apps-landing .hsi-roadmap {
  display:flex; align-items:center; justify-content:center; gap:16px;
  padding:24px;
  background:linear-gradient(135deg,var(--primary-soft),#fff);
  border:1px solid #fde0d1; border-radius:16px;
  margin-top:24px; font-size:13.5px; color:#5b5349;
  flex-wrap:wrap;
}
.hsi-apps-landing .hsi-roadmap b { color:var(--primary-dark); font-weight:800; }

/* AI strip */
.hsi-apps-landing .hsi-ai-strip {
  background:var(--grad-dark); color:#fff;
  border-radius:24px; padding:48px 44px; margin:18px 0;
  position:relative; overflow:hidden;
}
.hsi-apps-landing .hsi-ai-strip::after {
  content:''; position:absolute; right:-100px; bottom:-130px;
  width:340px; height:340px; border-radius:50%;
  background:radial-gradient(rgba(255,107,53,.25),transparent 65%);
}
.hsi-apps-landing .hsi-ai-strip-in {
  position:relative; z-index:2;
  display:grid; grid-template-columns:1.2fr 1fr; gap:38px; align-items:center;
}
.hsi-apps-landing .hsi-ai-strip .ai-eb {
  display:inline-flex; align-items:center; gap:7px;
  font-size:10.5px; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; color:#ffb37a;
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-ai-strip .ai-eb::before {
  content:''; width:5px; height:5px; border-radius:50%;
  background:#ff8b3e; box-shadow:0 0 6px #ff8b3e;
}
.hsi-apps-landing .hsi-ai-strip h2 {
  font-size:clamp(28px,3.4vw,42px); font-weight:900;
  letter-spacing:-.03em; margin-top:13px; line-height:1.1;
}
.hsi-apps-landing .hsi-ai-strip h2 .ac {
  background:linear-gradient(90deg,#ff8b3e,#ec4899);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.hsi-apps-landing .hsi-ai-strip p {
  font-size:15px; color:rgba(255,179,122,.82);
  margin-top:13px; max-width:52ch; line-height:1.6;
}
.hsi-apps-landing .hsi-ai-strip ul {
  list-style:none; margin-top:22px; padding:0;
  display:flex; flex-direction:column; gap:10px;
}
.hsi-apps-landing .hsi-ai-strip li {
  display:flex; gap:11px; align-items:flex-start;
  font-size:13.5px; color:rgba(255,210,180,.9);
}
.hsi-apps-landing .hsi-ai-strip li svg { color:#ff8b3e; flex-shrink:0; margin-top:3px; }
.hsi-apps-landing .hsi-ai-strip li b { color:#fff; }
.hsi-apps-landing .hsi-ai-strip .ctas {
  display:flex; gap:10px; margin-top:26px; flex-wrap:wrap;
}
.hsi-apps-landing .hsi-ai-strip .btn-w {
  background:#fff; color:#92400e; font-weight:800;
  padding:11px 18px; border-radius:11px; font-size:13.5px;
  border:0; cursor:pointer;
  display:inline-flex; align-items:center; gap:7px;
  text-decoration:none;
}

.hsi-apps-landing .hsi-term {
  background:rgba(0,0,0,.55); border:1px solid rgba(255,107,53,.22);
  border-radius:14px; overflow:hidden;
  box-shadow:0 30px 60px -28px rgba(0,0,0,.6);
}
.hsi-apps-landing .hsi-term .term-h {
  display:flex; align-items:center; gap:6px;
  padding:9px 13px; background:rgba(0,0,0,.4);
  border-bottom:1px solid rgba(255,107,53,.15);
}
.hsi-apps-landing .hsi-term .term-h i { width:9px; height:9px; border-radius:50%; }
.hsi-apps-landing .hsi-term .term-h i:nth-child(1) { background:#fb7185; }
.hsi-apps-landing .hsi-term .term-h i:nth-child(2) { background:#fbbf24; }
.hsi-apps-landing .hsi-term .term-h i:nth-child(3) { background:#34d399; }
.hsi-apps-landing .hsi-term .term-h small {
  margin-left:10px; font-size:10px; color:#ffb37a;
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
}
.hsi-apps-landing .hsi-term .term-body {
  padding:18px 20px;
  font-family:ui-monospace,'JetBrains Mono',Menlo,monospace;
  font-size:12.5px; line-height:1.7; color:rgba(255,179,122,.85);
}
.hsi-apps-landing .hsi-term .pr { color:#ff8b3e; }
.hsi-apps-landing .hsi-term .ans { color:#fff; }
.hsi-apps-landing .hsi-term .com { color:rgba(255,210,180,.45); }
.hsi-apps-landing .hsi-term .hl {
  background:rgba(255,107,53,.18); padding:1px 6px; border-radius:4px; color:#ffd1b5;
}
.hsi-apps-landing .term-cursor {
  display:inline-block; width:7px; height:14px;
  background:#ff8b3e; vertical-align:-2px;
  animation:hsi-blink 1s steps(2) infinite;
}
@keyframes hsi-blink { 50% { opacity:0; } }

/* Use cases */
.hsi-apps-landing .hsi-cases {
  display:grid; grid-template-columns:repeat(3,1fr); gap:16px;
}
.hsi-apps-landing .hsi-case {
  background:var(--bg); border:1px solid var(--border);
  border-radius:18px; padding:24px; transition:.14s;
}
.hsi-apps-landing .hsi-case:hover {
  transform:translateY(-3px); border-color:#fde0d1;
  box-shadow:0 24px 44px -28px rgba(45,24,16,.25);
}
.hsi-apps-landing .hsi-case .ic {
  width:46px; height:46px; border-radius:13px;
  display:grid; place-items:center; margin-bottom:14px;
  background:var(--primary-soft); color:var(--primary);
}
.hsi-apps-landing .hsi-case.c2 .ic { background:#fce7f3; color:#be185d; }
.hsi-apps-landing .hsi-case.c3 .ic { background:#fef3c7; color:#92400e; }
.hsi-apps-landing .hsi-case h4 { font-size:17px; font-weight:900; letter-spacing:-.015em; }
.hsi-apps-landing .hsi-case p { font-size:13.5px; color:var(--muted); margin-top:9px; line-height:1.55; }

/* FAQ */
.hsi-apps-landing .hsi-faq {
  max-width:820px; margin:0 auto;
  display:flex; flex-direction:column; gap:10px;
}
.hsi-apps-landing .hsi-faq .fq {
  background:var(--bg); border:1px solid var(--border);
  border-radius:14px; overflow:hidden; transition:.14s;
}
.hsi-apps-landing .hsi-faq .fq button {
  width:100%; display:flex; align-items:center; gap:12px;
  padding:16px 20px; border:0; background:transparent;
  font-family:inherit; font-size:15px; font-weight:700;
  color:var(--ink); text-align:left; cursor:pointer;
}
.hsi-apps-landing .hsi-faq .fq button .chev {
  margin-left:auto; color:var(--muted);
  transition:transform .2s; flex-shrink:0;
}
.hsi-apps-landing .hsi-faq .fq.open button .chev {
  transform:rotate(90deg); color:var(--primary);
}
.hsi-apps-landing .hsi-faq .fq.open {
  border-color:var(--primary);
  box-shadow:0 14px 30px -22px rgba(255,107,53,.4);
}
.hsi-apps-landing .hsi-faq .fq-body {
  display:none; padding:0 20px 18px 52px;
  font-size:14px; color:#475068; line-height:1.6;
}
.hsi-apps-landing .hsi-faq .fq.open .fq-body { display:block; }
.hsi-apps-landing .hsi-faq .fq-body b { color:var(--ink); }

/* Final CTA */
.hsi-apps-landing .hsi-final-band {
  position:relative; overflow:hidden;
  border-radius:24px; background:var(--grad);
  color:#fff; padding:54px 44px; text-align:center; margin:24px 0 0;
}
.hsi-apps-landing .hsi-final-band::after {
  content:''; position:absolute; right:-90px; bottom:-110px;
  width:320px; height:320px; border-radius:50%;
  background:rgba(255,255,255,.08);
}
.hsi-apps-landing .hsi-final-band::before {
  content:''; position:absolute; left:-70px; top:-90px;
  width:240px; height:240px; border-radius:50%;
  background:rgba(255,255,255,.06);
}
.hsi-apps-landing .hsi-final-band h2 {
  position:relative; font-size:clamp(28px,3.6vw,42px);
  font-weight:900; letter-spacing:-.03em; line-height:1.1;
}
.hsi-apps-landing .hsi-final-band p {
  position:relative; color:rgba(255,255,255,.92);
  margin:14px auto 0; max-width:54ch; font-size:16px;
}
.hsi-apps-landing .hsi-final-band .row {
  position:relative; margin-top:28px;
  display:inline-flex; gap:10px; flex-wrap:wrap; justify-content:center;
}
.hsi-apps-landing .hsi-final-band .btn-w {
  background:#fff; color:#e85d2e; font-weight:800;
  padding:13px 24px; border-radius:13px; font-size:14.5px;
  border:0; cursor:pointer;
  display:inline-flex; align-items:center; gap:7px;
  text-decoration:none;
}
.hsi-apps-landing .hsi-final-band .btn-w:hover { background:#fff5ee; }

/* Responsive */
@media (max-width:1080px) {
  .hsi-apps-landing .hsi-ss-body { grid-template-columns:1fr; }
  .hsi-apps-landing .hsi-ss-side { display:none; }
  .hsi-apps-landing .hsi-stats-grid { grid-template-columns:1fr 1fr; }
  .hsi-apps-landing .hsi-app { grid-template-columns:1fr; }
  .hsi-apps-landing .hsi-app-info { padding:30px; }
  .hsi-apps-landing .hsi-app-visual { min-height:320px; }
  .hsi-apps-landing .hsi-ai-strip-in { grid-template-columns:1fr; }
  .hsi-apps-landing .hsi-coming { grid-template-columns:1fr 1fr; }
  .hsi-apps-landing .hsi-cases { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .hsi-apps-landing .hsi-coming { grid-template-columns:1fr; }
  .hsi-apps-landing .hsi-stats-grid { grid-template-columns:1fr; }
}

/* ===================================================================
   Dark mode para la landing /apps/
   El tema usa html.dark para activar el modo oscuro.
   =================================================================== */
html.dark .hsi-apps-landing {
  --bg: #1f1c19;
  --bg-soft: #2a2622;
  --canvas: #161311;
  --ink: #f1ede8;
  --muted: #a39a8f;
  --border: rgba(255, 255, 255, .08);
  --border-soft: rgba(255, 255, 255, .04);
}

/* Hero showcase mock browser */
html.dark .hsi-apps-landing .hsi-ss {
  background: #2a2622;
  border-color: rgba(255, 255, 255, .06);
  box-shadow: 0 50px 100px -36px rgba(0, 0, 0, .8);
}
html.dark .hsi-apps-landing .hsi-ssh {
  background: #1f1c19;
  border-bottom-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-ssh .url { color: #a39a8f; }
html.dark .hsi-apps-landing .hsi-ss-body {
  background: linear-gradient(180deg, #2a2622, rgba(255, 107, 53, .03));
}
html.dark .hsi-apps-landing .hsi-ss-side {
  background: #1f1c19;
  border-right-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-ss-side .sb { color: #d8d0c5; }
html.dark .hsi-apps-landing .hsi-ss-side .sb.on {
  background: rgba(245, 98, 30, .15);
  color: #ffb37a;
}
html.dark .hsi-apps-landing .hsi-ss-chart {
  background: #2a2622;
  border-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-ss-chart .legend span { color: #d8d0c5; }

/* Stats bar */
html.dark .hsi-apps-landing .hsi-stats-grid {
  background: #2a2622;
  border-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-stat .lbl b { color: #f1ede8; }

/* App detail */
html.dark .hsi-apps-landing .hsi-app {
  background: #2a2622;
  border-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-app p.dsc b { color: #f1ede8; }
html.dark .hsi-apps-landing .hsi-app .feature .ft b { color: #f1ede8; }
html.dark .hsi-apps-landing .hsi-app .feature .ck {
  background: rgba(245, 98, 30, .15);
  color: #ffb37a;
}

/* Próximas apps */
html.dark .hsi-apps-landing .hsi-ca {
  background: rgba(255, 255, 255, .02);
  border-color: rgba(255, 255, 255, .12);
}
html.dark .hsi-apps-landing .hsi-ca:hover {
  background: rgba(245, 98, 30, .06);
  border-color: rgba(245, 98, 30, .4);
}
html.dark .hsi-apps-landing .hsi-ca .soon {
  background: #2a2622;
  color: #ffb37a;
  border-color: rgba(245, 98, 30, .25);
}
html.dark .hsi-apps-landing .hsi-roadmap {
  background: linear-gradient(135deg, rgba(245, 98, 30, .1), rgba(255, 255, 255, .02));
  border-color: rgba(245, 98, 30, .25);
  color: #d8d0c5;
}
html.dark .hsi-apps-landing .hsi-roadmap b { color: #ffb37a; }

/* Cases */
html.dark .hsi-apps-landing .hsi-case {
  background: #2a2622;
  border-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-case h4 { color: #f1ede8; }

/* FAQ */
html.dark .hsi-apps-landing .hsi-faq .fq {
  background: #2a2622;
  border-color: rgba(255, 255, 255, .06);
}
html.dark .hsi-apps-landing .hsi-faq .fq button { color: #f1ede8; }
html.dark .hsi-apps-landing .hsi-faq .fq-body { color: #c8bfb3; }
html.dark .hsi-apps-landing .hsi-faq .fq-body b { color: #f1ede8; }
html.dark .hsi-apps-landing .hsi-faq .fq.open {
  border-color: rgba(245, 98, 30, .5);
  box-shadow: 0 14px 30px -22px rgba(245, 98, 30, .6);
}

/* Hero title/subtitle */
html.dark .hsi-apps-landing .hsi-subtitle b { color: #f1ede8; }
html.dark .hsi-apps-landing .hsi-badge {
  background: rgba(245, 98, 30, .08);
  border-color: rgba(245, 98, 30, .25);
  color: #ffb37a;
}
html.dark .hsi-apps-landing .hsi-trust { color: #d8d0c5; }
html.dark .hsi-apps-landing .hsi-trust .ic {
  background: rgba(245, 98, 30, .15);
  color: #ffb37a;
}

/* Sections title */
html.dark .hsi-apps-landing .hsi-sec-h h2 { color: #f1ede8; }

/* Botones generales */
html.dark .hsi-apps-landing .hsi-btn-ghost {
  background: rgba(255, 255, 255, .04);
  color: #f1ede8;
  border-color: rgba(255, 255, 255, .12);
}
html.dark .hsi-apps-landing .hsi-btn-ghost:hover {
  background: rgba(255, 255, 255, .08);
}
html.dark .hsi-apps-landing .hsi-btn-dark {
  background: rgba(245, 98, 30, .15);
  color: #fff;
  border: 1px solid rgba(245, 98, 30, .4);
  box-shadow: 0 18px 36px -16px rgba(245, 98, 30, .35);
}
html.dark .hsi-apps-landing .hsi-btn-dark:hover {
  background: rgba(245, 98, 30, .25);
}

/* Dotted pattern background del body */
html.dark .hsi-apps-landing body::after,
html.dark body.post-type-archive-hsi_app::after {
  background-image: radial-gradient(rgba(255, 107, 53, .07) 1px, transparent 1px);
}
