/* CatchaCRM — industry blueprint pages (/industries/*).
   Same tokens as style.css. Loaded only by the 26 industry pages via the
   `stylesheets:` front-matter hook, so nothing else pays for it. */

/* ---------- hero ---------- */
.ind-eyebrow{display:inline-flex;align-items:center;gap:8px}
.ind-eyebrow svg{width:15px;height:15px;flex:none}
.ind-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.ind-cta-mid{justify-content:center;margin-top:26px}

/* ---------- pain tiles: plain surfaces, not glass ---------- */
.ind-pains{padding:64px 0 20px}
.pain-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:34px}
.pain{
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 24px 26px;
}
.pain .n{
  display:block;font-size:11px;font-weight:800;letter-spacing:.1em;
  color:var(--ghost);margin-bottom:12px;
}
.pain h3{font-size:17.5px;line-height:1.3;margin-bottom:8px}
.pain p{font-size:14px;color:var(--muted);line-height:1.6}

/* ---------- what installs ---------- */
.ind-install{padding:76px 0 20px}
.ind-install .h2{margin-top:2px}
.ind-install>.wrap>.lead{margin-top:14px}
.bp-part{margin-top:34px}
.bp-h{
  font-size:13px;font-weight:800;letter-spacing:.02em;color:var(--ink);
  display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:16px;
}
.bp-sub{font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:0}
.bp-two{display:grid;grid-template-columns:1fr 1fr;gap:18px 34px;align-items:start}

/* connected step strip */
.steps{list-style:none;display:flex;flex-wrap:wrap;align-items:stretch;gap:10px 0;margin:0}
.steps .step{display:flex;align-items:center;min-width:0}
.steps .step .lab{
  display:inline-flex;align-items:center;gap:9px;
  background:#fff;border:1px solid var(--line);border-radius:100px;
  padding:8px 16px 8px 9px;font-size:13px;font-weight:600;color:var(--ink-soft);
  line-height:1.35;
}
.steps .step .i{
  flex:none;display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:100px;background:rgba(59,130,246,.12);
  color:var(--blue-ink);font-size:11px;font-weight:800;
}
.steps .step:last-child .lab{border-color:rgba(59,130,246,.45);background:rgba(59,130,246,.06);color:var(--blue-ink)}
.steps .step:not(:last-child)::after{
  content:"";flex:none;width:14px;height:1px;background:var(--line);margin:0 4px;
}

/* fields table */
.field-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;font-size:13.5px}
.field-table th,.field-table td{text-align:left;padding:9px 14px;border-bottom:1px solid var(--line)}
.field-table thead th{background:var(--bg);font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.field-table tbody tr:last-child th,.field-table tbody tr:last-child td{border-bottom:none}
.field-table tbody th{font-weight:600;color:var(--ink)}
.field-table td{color:var(--muted);white-space:nowrap;width:1%}

/* catalog / records list */
.cat-list{list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px 0;font-size:13.5px}
.cat-list li{padding:7px 16px 7px 38px;position:relative;color:var(--ink-soft);font-weight:500}
.cat-list li::before{
  content:"";position:absolute;left:17px;top:15px;width:6px;height:6px;border-radius:100px;background:var(--blue);
}
.cat-list li.more{color:var(--muted);font-weight:600}
.cat-list li.more::before{background:var(--ghost)}
.bp-note{font-size:12.5px;color:var(--muted);margin-top:10px}

/* ---------- built for ---------- */
.ind-built{padding:76px 0 20px}
.ind-built-list{margin-top:26px;gap:12px 40px}
.ind-built-list li{font-size:15px}
.ind-note{font-size:13.5px;color:var(--muted);margin-top:6px}

/* ---------- related ---------- */
.ind-related{padding:64px 0 20px}
.rel-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:32px 0 18px}
.rel{
  display:flex;align-items:center;gap:14px;
  background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;
  transition:border-color .2s ease,transform .2s ease;
}
.rel:hover{border-color:var(--blue);transform:translate3d(0,-2px,0)}
.rel svg{width:22px;height:22px;flex:none;color:var(--blue)}
.rel b{display:block;font-size:15px;font-weight:700;letter-spacing:-.01em}
.rel span{display:block;font-size:12.5px;color:var(--muted);margin-top:1px}

/* ---------- light CTA band ---------- */
.cta-light{
  margin-top:60px;padding:74px 0;text-align:center;
  background:linear-gradient(180deg,#fff,#eef4ff);
  border-top:1px solid var(--line);
}
.cta-light h2{font-size:clamp(26px,3.4vw,38px);max-width:22ch;margin:0 auto}
.cta-light p{color:var(--ink-soft);font-size:16px;margin:16px auto 0;max-width:54ch}

/* ---------- index page ---------- */
.ind-index{padding-bottom:8px}
.ind-group{padding:0;margin-top:56px}
.ind-group h2{font-size:20px;display:flex;align-items:baseline;gap:10px}
.ind-group h2 span{font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:0}
.ind-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:20px}
.ind-tile{
  display:block;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;
  transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;
}
.ind-tile:hover{border-color:var(--blue);transform:translate3d(0,-3px,0);box-shadow:var(--shadow-sm)}
.ind-tile svg{width:22px;height:22px;color:var(--blue);margin-bottom:12px}
.ind-tile b{display:block;font-size:16px;font-weight:700;letter-spacing:-.01em}
.ind-tile span{display:block;font-size:13px;color:var(--muted);margin-top:6px;line-height:1.5}

/* ---------- responsive ---------- */
@media(max-width:960px){
  .pain-row,.rel-row{grid-template-columns:1fr}
  .bp-two{grid-template-columns:1fr;gap:30px}
  .ind-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:720px){
  .ind-pains,.ind-install,.ind-built,.ind-related{padding:52px 0 12px}
  .ind-grid{grid-template-columns:1fr}
  .steps{gap:8px 0}
  .steps .step{width:100%}
  .steps .step .lab{width:100%;padding-right:14px}
  .steps .step:not(:last-child)::after{display:none}
  .field-table td{white-space:normal}
  .ind-cta .btn{flex:1 1 100%;text-align:center}
  .cta-light{padding:56px 0}
}
