/* ════════════════════════════════════════════════════════════════
   PRESNSE — INDUSTRY · PRIVATE CLINICS  ·  bespoke SIGNATURE only
   ----------------------------------------------------------------
   The umbrella industry page. Everything else reuses .ind-* from
   industry.css. This file holds ONE invented signature module:
   the MULTI-SERVICE ROUTING SELECTOR — a clinic weak in one of the
   four layers (website / SEO / Maps / AI) is routed to the right
   service. Light selector panel glowing on the dark .entity band
   (the page's single premium moment), modelled on the dental
   signature's "bordered light panel on dark" structure.
   Consumes tokens from foundation.css ONLY — no raw colour.
   ════════════════════════════════════════════════════════════════ */

/* root chip + layer-legend ─ the four layers the selector routes across */
.route-wrap{margin-top:44px;}
.route-legend{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px;}
.route-layer{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);
  font-size:var(--label-sm);letter-spacing:.06em;text-transform:uppercase;color:var(--tx-on-62);
  border:1px solid var(--line-on-mid);border-radius:var(--radius-sm);padding:9px 14px;}
.route-layer .lx{font-size:.58rem;color:var(--tx-on-45);}
.route-layer .ld{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px var(--lime-glow-2);}

/* the selector instrument — light panel on substrate (glows on dark) */
.route-panel{background:var(--paper-card);border:1px solid var(--line-mid);box-shadow:var(--shadow-card);}
.route-head{display:grid;grid-template-columns:1.3fr auto 1fr;gap:14px;align-items:center;
  padding:14px 20px;border-bottom:1px dashed var(--line-dash);
  font-family:var(--mono);font-size:var(--label-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);}
.route-head .h-route{color:var(--lime-ink);text-align:right;}
.route-head .h-arrow{color:var(--faint);}

/* each symptom row routes a weak layer → the right service */
.rsel{display:grid;grid-template-columns:1.3fr auto 1fr;gap:14px;align-items:center;
  padding:16px 20px;border-bottom:1px dashed var(--line-soft);transition:background .2s;}
.rsel:last-of-type{border-bottom:none;}
.rsel:hover{background:var(--wash-soft);}
.rsel .sym-cell{display:flex;flex-direction:column;gap:6px;}
.rsel .sym-cell .sx{font-size:.92rem;color:var(--ink);line-height:1.3;}
.rsel .sym-cell .layer{display:inline-flex;align-items:center;gap:7px;align-self:flex-start;
  font-family:var(--mono);font-size:.58rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);
  border:1px dashed var(--line-rule);border-radius:var(--radius-tag);padding:3px 8px;}
.rsel .sym-cell .layer .ld{width:5px;height:5px;border-radius:50%;background:var(--amber);}

/* the routing connector — symptom → service */
.rsel .conn{display:flex;align-items:center;justify-content:center;}
.rsel .conn svg{width:34px;height:12px;color:var(--lime-deep);}
.rsel:hover .conn svg{color:var(--lime-deep);transform:translateX(3px);transition:transform .25s var(--ease);}

/* the routed-to service (the answer) */
.rsel .route-cell{text-align:right;}
.rsel .route-cell .svc{font-family:var(--mono);font-size:.74rem;letter-spacing:.03em;color:var(--lime-ink);
  display:inline-flex;align-items:center;gap:8px;border:1px solid var(--green-line);
  border-radius:var(--radius-tag);padding:6px 11px;}
.rsel .route-cell .svc .arr{color:var(--lime-deep);transition:transform .25s var(--ease);}
.rsel:hover .route-cell .svc .arr{transform:translateX(4px);}
.rsel .route-cell .note{display:block;font-family:var(--mono);font-size:.58rem;letter-spacing:.04em;
  text-transform:uppercase;color:var(--faint);margin-top:6px;}

.route-foot{padding:12px 20px;border-top:1px dashed var(--line-dash);
  font-family:var(--mono);font-size:var(--label-xs);letter-spacing:.05em;color:var(--muted);
  display:flex;align-items:center;gap:9px;}
.route-foot .d{width:5px;height:5px;border-radius:50%;background:var(--lime);flex:0 0 auto;box-shadow:0 0 0 3px var(--lime-glow);}

.route-note{margin-top:20px;font-family:var(--mono);font-size:var(--label-sm);color:var(--tx-on-60);
  border-left:2px solid var(--lime);padding-left:16px;max-width:76ch;line-height:1.6;letter-spacing:.01em;}

/* ── bridge module: the misconception / objection reframe (M02 variant) ── */
.ind-reframe{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(28px,4.5vw,60px);margin-top:40px;align-items:start;}
.ind-reframe .body p{font-size:1rem;color:var(--ink-soft);line-height:1.62;margin-top:16px;max-width:62ch;}
.ind-reframe .body p:first-child{margin-top:0;}
.ind-reframe .line{align-self:start;border:1px solid var(--line-mid);border-left:3px solid var(--lime);
  background:var(--paper-card);padding:clamp(22px,3vw,34px);box-shadow:var(--shadow-card);}
.ind-reframe .line .seg-lbl{font-family:var(--mono);font-size:var(--label-sm);letter-spacing:.1em;
  text-transform:uppercase;color:var(--lime-ink);display:block;margin-bottom:12px;}
.ind-reframe .line .big{font-size:clamp(1.05rem,1.6vw,1.34rem);line-height:1.36;color:var(--ink);
  font-weight:500;letter-spacing:-.01em;}
.ind-reframe .line .big .sym{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--lime-ink);}

/* ── density strip for the Maps/local-search context (small market read) ── */
.dens-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));
  border:1px solid var(--line-mid);margin-top:36px;background:var(--bg);}
.dens-cell{padding:clamp(20px,2.5vw,30px);border-right:1px dashed var(--line-soft);}
.dens-cell:last-child{border-right:none;}
.dens-cell .dk{font-family:var(--mono);font-size:var(--label-sm);letter-spacing:.08em;
  text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:8px;}
.dens-cell .dk .dd{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px var(--lime-glow);}
.dens-cell .dv{font-size:.92rem;color:var(--ink);line-height:1.45;margin-top:11px;}
.dens-cell .dv b{font-weight:600;}

/* ── category architecture cards (5, links to industry pages) ── */
.cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  border:1px solid var(--line-mid);margin-top:40px;background:var(--bg);}
.cat-card{padding:clamp(24px,3vw,38px);border-right:1px dashed var(--line-soft);
  border-bottom:1px dashed var(--line-soft);display:flex;flex-direction:column;transition:background .2s;}
.cat-card:hover{background:var(--wash-soft);}
.cat-card .ct-top{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;}
.cat-card h3{font-size:1.1rem;font-weight:600;letter-spacing:-.01em;}
.cat-card .zh{font-family:"Noto Sans HK","PingFang HK",var(--sans);font-size:.92rem;color:var(--muted);}
.cat-card p{font-size:.88rem;color:var(--ink-soft);line-height:1.55;margin-top:11px;flex:1;}
.cat-card .go{margin-top:18px;font-family:var(--mono);font-size:.74rem;display:inline-flex;gap:8px;align-items:center;color:var(--ink);}
.cat-card .go .arr{color:var(--lime-deep);transition:transform .25s var(--ease);}
.cat-card:hover .go .arr{transform:translateX(4px);}
.cat-card .go + .go{margin-top:10px;}

/* ── timing / summary answer block ── */
.ind-time{margin-top:36px;border:1px dashed var(--line-rule);background:var(--bg);
  padding:clamp(24px,3vw,40px);max-width:74ch;}
.ind-time p{font-size:1rem;color:var(--ink-soft);line-height:1.62;}
.ind-sum{margin-top:40px;border:1px solid var(--line-mid);border-left:3px solid var(--lime);
  background:var(--paper-card);padding:clamp(26px,3.4vw,44px);box-shadow:var(--shadow-card);}
.ind-sum .seg-lbl{font-family:var(--mono);font-size:var(--label-sm);letter-spacing:.1em;
  text-transform:uppercase;color:var(--lime-ink);display:block;margin-bottom:14px;}
.ind-sum p{font-size:clamp(1rem,1.25vw,1.16rem);color:var(--ink);line-height:1.55;max-width:78ch;}

/* ── responsive (signature + bespoke) ── */
@media(max-width:960px){
  .ind-reframe{grid-template-columns:1fr;gap:28px;}
}
@media(max-width:640px){
  .route-head{display:none;}
  .rsel{grid-template-columns:1fr;gap:12px;text-align:left;}
  .rsel .conn{justify-self:start;}
  .rsel .conn svg{transform:rotate(90deg);}
  .rsel .route-cell{text-align:left;}
}
