/* Sector page · the rulebook — sticky contents (areas with level pips and counts, frameworks) beside the book of rules. */
.ind-sx-rules__grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--bdh-gap-l);align-items:start}
.ind-sx-rules__side{position:sticky;top:var(--bdh-sticky);display:flex;flex-direction:column;gap:32px}
.ind-sx-rules__kicker{margin-bottom:12px;font-family:var(--f);font-size:var(--t-lbl);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--faint)}
.ind-sx-rules__areas{border-top:1px solid var(--ink)}
.ind-sx-rules__jump{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto 26px;align-items:center;gap:12px;min-height:48px;padding:10px 6px 10px 14px;
  border-bottom:1px solid var(--line);font-size:var(--t-sm);color:var(--txt);transition:color var(--d1) var(--e-io),background var(--d1) var(--e-io)}
.ind-sx-rules__jump::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:2px;border-radius:2px;background:var(--blue);transform:scaleY(0);transition:transform var(--d2) var(--e)}
.ind-sx-rules__jump:hover{color:var(--ink);background:var(--paper-2)}
.ind-sx-rules__jump.is-on{color:var(--ink)}
.ind-sx-rules__jump.is-on::before{transform:none}
.ind-sx-rules__jc{font-family:var(--f);font-size:var(--t-xs);color:var(--faint);text-align:right;font-variant-numeric:tabular-nums}
.ind-sx-rules__legend{display:flex;align-items:center;gap:10px;margin-top:12px;font-size:var(--t-xs);color:var(--muted)}
.ind-sx-rules__badges{display:flex;flex-wrap:wrap;gap:6px}
.ind-sx-rules__fwn{margin-top:12px;font-size:var(--t-xs);line-height:1.55;color:var(--muted)}

.ind-sx-rules__book{display:flex;flex-direction:column;gap:clamp(44px,5vw,72px);min-width:0}
.ind-sx-rules__ah{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:10px 24px;padding-bottom:14px;border-bottom:1px solid var(--ink)}
.ind-sx-rules__at{font-family:var(--f-h);font-size:clamp(1.3rem,1.9vw,1.65rem);font-weight:500;line-height:1.2;letter-spacing:-.016em;color:var(--ink)}
.ind-sx-rules__alv{display:inline-flex;align-items:center;gap:10px;font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.ind-sx-rules__list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--bdh-gap)}
.ind-sx-rule{display:flex;flex-direction:column;gap:10px;padding:22px 0 24px;border-bottom:1px solid var(--line);min-width:0}
.ind-sx-rule__by{font-family:var(--f);font-size:var(--t-lbl);letter-spacing:.1em;line-height:1.5;text-transform:uppercase;color:var(--faint)}
.ind-sx-rule__t{font-family:var(--f-h);font-size:1.0625rem;font-weight:500;line-height:1.3;letter-spacing:-.006em;color:var(--ink)}
.ind-sx-rule__d{font-size:var(--t-sm);line-height:1.62;color:var(--txt)}
.ind-sx-rule__we{display:flex;flex-direction:column;gap:5px;padding:11px 14px;border-left:2px solid var(--blue);border-radius:0 var(--r-xs) var(--r-xs) 0;background:var(--blue-wash);
  font-size:var(--t-sm);line-height:1.55;color:var(--ink)}
.ind-sx-rule__k{font-family:var(--f);font-size:var(--t-lbl);font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--blue-d)}
.ind-sx-rule__cite{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin-top:auto;padding-top:4px;font-family:var(--f);font-size:var(--t-lbl);line-height:1.6;letter-spacing:.02em;color:var(--muted)}
.ind-sx-rule__cite cite{font-style:normal}
.ind-sx-rule__src{display:inline-flex;align-items:center;gap:6px;min-height:28px;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-3);text-underline-offset:4px;white-space:nowrap}
.ind-sx-rule__src:hover{color:var(--blue-d);text-decoration-color:var(--blue)}
.ind-sx-rules__note{max-width:72ch;font-size:var(--t-xs);line-height:1.6;color:var(--muted)}

@media (max-width:1023px){
  .ind-sx-rules__grid{grid-template-columns:minmax(0,1fr)}
  .ind-sx-rules__side{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--bdh-gap)}
}
@media (max-width:860px){
  .ind-sx-rules__side{grid-template-columns:minmax(0,1fr)}
  .ind-sx-rules__areas{display:flex;flex-wrap:wrap;gap:8px;border-top:0}
  .ind-sx-rules__areas li{display:flex}
  .ind-sx-rules__jump{display:inline-flex;gap:10px;min-height:44px;padding:0 14px;border:1px solid var(--line-3);border-radius:var(--r-pill)}
  .ind-sx-rules__jump::before{display:none}
  .ind-sx-rules__list{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .ind-sx-rule__src{min-height:44px}
}

/* touch screens (phones and tablets): 44px tap targets (integrator, responsive pass) */
@media (pointer:coarse){
  .ind-sx-rule__src{min-height:44px}
}
