/* ── ProductCard (.kqpc) ──────────────────────────────────────────────────── */
.kqpc{position:relative;display:flex;flex-direction:column;gap:var(--space-4);
  background:var(--card,#fcfbf7);border:1px solid var(--border-subtle);
  border-radius:var(--radius-lg,12px);padding:var(--space-6);text-decoration:none;
  transition:border-color var(--dur-base,200ms) var(--ease-out,cubic-bezier(.22,1,.36,1)),
             box-shadow var(--dur-base,200ms) var(--ease-out),
             transform var(--dur-base,200ms) var(--ease-out);}
.kqpc:hover{border-color:var(--green-border,#C4DDA0);box-shadow:var(--shadow-md);transform:translateY(-3px);}
.kqpc__top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);}
.kqpc__icon{display:inline-flex;align-items:center;justify-content:center;
  width:48px;height:48px;border-radius:var(--radius-md,8px);
  background:var(--surface-lavender,#f3f1fb);color:var(--accent,#1430AD);flex:none;}
.kqpc__icon svg{width:24px;height:24px;}
.kqpc__arrow{width:22px;height:22px;color:var(--text-muted);flex:none;opacity:.5;
  transition:transform var(--dur-base,200ms) var(--ease-out),
             color var(--dur-base,200ms) var(--ease-out),
             opacity var(--dur-base,200ms) var(--ease-out);}
.kqpc:hover .kqpc__arrow{transform:translateX(4px) translateY(-4px);color:var(--accent,#1430AD);opacity:1;}
.kqpc__body{display:flex;flex-direction:column;gap:var(--space-2);margin-top:auto;}
.kqpc__name{font-family:var(--font-display);font-weight:var(--fw-bold,700);
  font-size:var(--fs-h3);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);
  color:var(--text-strong);margin:0;}
.kqpc__summary{font-size:var(--fs-body);color:var(--text-body);margin:0;line-height:var(--lh-snug);}

/* ── ServiceCard (.kqsc) ─────────────────────────────────────────────────── */
.kqsc{position:relative;display:flex;flex-direction:column;gap:var(--space-3);
  background:transparent;border-top:2px solid var(--ink,#080A15);
  padding:var(--space-5) 0 var(--space-6);text-decoration:none;color:var(--text-body);
  transition:border-color var(--dur-base,200ms) var(--ease-out);}
.kqsc:hover{border-color:var(--accent,#1430AD);}
.kqsc__index{font-family:var(--font-mono);font-size:var(--fs-caption);
  font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);}
.kqsc__title{font-family:var(--font-display);font-weight:var(--fw-bold,700);
  font-size:var(--fs-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);
  color:var(--text-strong);margin:0;}
.kqsc__desc{font-size:var(--fs-body-lg);color:var(--text-body);margin:0;line-height:var(--lh-snug);max-width:46ch;}
.kqsc__more{display:inline-flex;align-items:center;gap:.5em;margin-top:var(--space-2);
  font-family:var(--font-sans);font-weight:600;font-size:var(--fs-body-sm);
  color:var(--text-muted);text-decoration:none;
  transition:color var(--dur-base,200ms) var(--ease-out);}
.kqsc:hover .kqsc__more{color:var(--accent,#1430AD);}
.kqsc__more svg{width:16px;height:16px;transition:transform var(--dur-base,200ms) var(--ease-out);}
.kqsc:hover .kqsc__more svg{transform:translateX(3px);}

/* ── IndustryCard (.kqic) ────────────────────────────────────────────────── */
.kqic{position:relative;display:flex;flex-direction:column;justify-content:flex-end;
  min-height:220px;border-radius:var(--radius-lg,12px);overflow:hidden;text-decoration:none;
  background:var(--surface-lavender,#f3f1fb);color:var(--ink,#080A15);isolation:isolate;
  transition:transform var(--dur-base,200ms) var(--ease-out),
             box-shadow var(--dur-base,200ms) var(--ease-out);}
.kqic:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);}
.kqic__pattern{position:absolute;inset:0;z-index:0;color:var(--blue-brand,#1430AD);opacity:.35;}
.kqic__pattern svg{width:100%;height:100%;display:block;}
.kqic__body{position:relative;z-index:1;padding:var(--space-5);
  background:linear-gradient(to top,var(--lavender,#CBCDE6) 10%,transparent);}
.kqic__name{font-family:var(--font-display);font-weight:700;
  font-size:var(--fs-h3);line-height:var(--lh-heading);
  color:var(--ink,#080A15);margin:0 0 var(--space-1);}
.kqic__sub{font-size:var(--fs-body-sm);color:var(--graphite,#424553);margin:0;line-height:var(--lh-snug);}

/* ── FAQAccordion (.kqfaq) ───────────────────────────────────────────────── */
.kqfaq{display:flex;flex-direction:column;}
.kqfaq__item{border-top:1px solid var(--border-default);}
.kqfaq__item:last-child{border-bottom:1px solid var(--border-default);}
.kqfaq__q{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);
  list-style:none;cursor:pointer;padding:var(--space-5) 0;
  font-family:var(--font-display);font-weight:600;font-size:var(--fs-h4);
  color:var(--text-strong);transition:color var(--dur-fast,120ms) var(--ease-out);margin:0;}
.kqfaq__q::-webkit-details-marker{display:none;}
.kqfaq__q:hover,.kqfaq__item[open] .kqfaq__q{color:var(--accent,#1430AD);}
.kqfaq__icon{flex:none;width:22px;height:22px;color:var(--graphite,#424553);
  transition:transform var(--dur-base,200ms) var(--ease-out),
             color var(--dur-base,200ms) var(--ease-out);}
.kqfaq__item[open] .kqfaq__icon{transform:rotate(45deg);color:var(--accent,#1430AD);}
.kqfaq__a{padding:0 0 var(--space-5);max-width:64ch;}
.kqfaq__a p{margin:0;color:var(--text-body);font-size:var(--fs-body);line-height:var(--lh-body);}

/* ── Feature card hover ──────────────────────────────────────────────────── */
.kqfeat{transition:box-shadow var(--dur-base,200ms) var(--ease-out),
                   transform var(--dur-base,200ms) var(--ease-out);}
.kqfeat:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);}

/* ── Case study metric card hover ────────────────────────────────────────── */
.kqcase__metric{transition:box-shadow var(--dur-base,200ms) var(--ease-out),
                            transform var(--dur-base,200ms) var(--ease-out);}
.kqcase__metric:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);}

/* ── PricingBlock (.kqprice) ─────────────────────────────────────────────── */
.kqprice{display:flex;flex-direction:column;gap:var(--space-5);
  background:var(--card,#fcfbf7);border:1px solid var(--border-default);
  border-radius:var(--radius-lg,12px);padding:var(--space-6);box-shadow:var(--shadow-sm);}
.kqprice--feature{border-color:var(--green-border,#C4DDA0);box-shadow:var(--shadow-md);}
.kqprice__head{display:flex;flex-direction:column;gap:var(--space-2);}
.kqprice__tier{font-family:var(--font-mono);font-size:var(--fs-eyebrow);font-weight:500;
  letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--accent,#1430AD);}
.kqprice__amount{display:flex;align-items:baseline;gap:.3em;flex-wrap:wrap;}
.kqprice__value{font-family:var(--font-mono);font-weight:600;
  font-size:clamp(2.5rem,1.5rem+3vw,3.5rem);line-height:1;color:var(--text-strong);
  letter-spacing:-0.02em;}
.kqprice__period{font-family:var(--font-sans);font-size:var(--fs-body);color:var(--text-body);font-weight:500;}
.kqprice__note{font-size:var(--fs-body-sm);color:var(--text-body);margin:0;line-height:var(--lh-snug);}
.kqprice__list{list-style:none;margin:0;padding:var(--space-5) 0 0;display:flex;flex-direction:column;gap:var(--space-3);
  border-top:1px solid var(--border-subtle);}
.kqprice__item{display:flex;gap:var(--space-3);font-size:var(--fs-body);color:var(--text-body);line-height:var(--lh-snug);align-items:flex-start;}
.kqprice__check{flex:none;width:20px;height:20px;color:var(--accent,#1430AD);margin-top:1px;}

/* ── Offerings card (.kqoff__card) ──────────────────────────────────────── */
.kqoff__grid{display:flex;flex-direction:column;gap:var(--space-5);}
.kqoff__card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);
  background:var(--card,#fcfbf7);border:1px solid var(--border-subtle);
  border-radius:var(--radius-card,16px);
  transition:box-shadow var(--dur-base,200ms) var(--ease-out),
             border-color var(--dur-base,200ms) var(--ease-out);}
.kqoff__card:hover{box-shadow:var(--shadow-md);border-color:var(--border-default);}
