/* ---------- Industries overview ---------- */
.in-hero { padding-block:56px 48px; }
.in-hero h1 { max-width:13ch; }
.in-list { padding-block:16px 112px; }
.in-feature { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:48px; align-items:center; padding:48px; border-radius:var(--r-lg); background:var(--tint-rose); color:var(--ink); text-decoration:none; box-shadow:var(--shadow-card); transition:transform .25s var(--ease), box-shadow .25s; }
.in-feature:hover { transform:translateY(-4px); box-shadow:var(--shadow-float); }
.in-tag { font-size:14px; font-weight:600; color:var(--rose-ink); }
.in-feature h2 { margin:14px 0 0; max-width:16ch; font-size:clamp(34px, 3.8vw, 52px); line-height:1.04; font-weight:500; letter-spacing:-.034em; text-wrap:balance; }
.in-feature p { margin:18px 0 0; max-width:44ch; font-size:17.5px; line-height:27px; color:var(--ink-muted); }
.in-chain { list-style:none; margin:22px 0 0; padding:0; display:flex; flex-wrap:wrap; gap:8px 0; font-size:14px; font-weight:600; }
.in-chain li { display:flex; align-items:center; }
.in-chain li + li::before { content:""; width:22px; height:1.5px; margin:0 8px; background:var(--line-control); }
.in-chain li { padding:0; }
.in-chain li span, .in-chain li { color:var(--ink); }
.in-go { margin-top:28px; display:inline-flex; align-items:center; gap:12px; font-size:15px; font-weight:600; }
.in-feature:hover .circle, .in-card:hover .circle { background:var(--ti, var(--rose-ink)); transform:translateX(3px); }
.in-vis { padding:24px; border-radius:var(--r-md); background:var(--paper); box-shadow:var(--shadow-float); }
.iv-top { display:flex; justify-content:space-between; align-items:baseline; font-size:15px; font-weight:600; }
.iv-top small { font-size:13px; font-weight:500; color:var(--ink-subtle); }
.in-vis ul { list-style:none; margin:18px 0 0; padding:0; display:flex; flex-direction:column; gap:14px; }
.in-vis li { display:grid; grid-template-columns:1fr 56px; gap:6px 12px; align-items:center; font-size:14px; color:var(--ink-muted); }
.in-vis li i { grid-column:1; display:block; height:10px; width:calc(var(--w) * 1%); border-radius:999px; background:color-mix(in srgb, var(--rose-ink) 30%, var(--paper)); }
.in-vis li b { grid-column:2; grid-row:1 / span 2; text-align:right; font-size:20px; font-weight:500; letter-spacing:-.02em; color:var(--ink); font-variant-numeric:tabular-nums; }
.iv-foot { margin-top:18px; padding-top:12px; border-top:1px solid var(--line); font-size:12.5px; color:var(--ink-subtle); }
.in-grid { margin-top:20px; display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:20px; }
.in-card { --t:var(--tint-iris); --ti:var(--iris-ink); display:flex; flex-direction:column; gap:10px; padding:32px; border-radius:var(--r-md); background:var(--t); color:var(--ink); text-decoration:none; box-shadow:var(--shadow-card); transition:transform .25s var(--ease), box-shadow .25s; }
.in-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-float); }
.in-card.sky { --t:var(--tint-sky); --ti:var(--sky-ink); } .in-card.aqua { --t:var(--tint-aqua); --ti:var(--aqua-ink); } .in-card.rose { --t:var(--tint-rose); --ti:var(--rose-ink); }
.in-name { display:flex; align-items:center; gap:8px; font-size:14.5px; font-weight:600; color:var(--ti); }
.in-name::before { content:""; width:9px; height:9px; border-radius:2px; background:var(--ti); }
.in-card h3 { margin:4px 0 0; max-width:20ch; font-size:26px; line-height:32px; font-weight:500; letter-spacing:-.02em; text-wrap:balance; }
.in-card .in-chain { margin-top:10px; font-size:13.5px; }
.in-who { margin-top:14px; padding-top:14px; border-top:1px solid color-mix(in srgb, var(--ink) 12%, transparent); display:flex; flex-direction:column; gap:2px; font-size:14.5px; line-height:21px; color:var(--ink-muted); }
.in-who b { font-size:12.5px; font-weight:600; color:var(--ink-subtle); }
.in-card .in-go { margin-top:auto; padding-top:18px; }
.in-other { padding-block:96px 120px; background:var(--mist); }
.in-other-in { display:grid; grid-template-columns:repeat(12, minmax(0,1fr)); column-gap:24px; row-gap:28px; align-items:start; }
.in-other-in > div:first-child { grid-column:1 / span 5; }
.in-other-in > .in-other-go { grid-column:7 / span 6; display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.in-other h2 { margin:0; font-size:clamp(30px, 3.2vw, 44px); line-height:1.08; font-weight:500; letter-spacing:-.028em; }
.in-other p { margin:16px 0 0; font-size:17px; line-height:27px; color:var(--ink-muted); }
.in-other .ab-card { background:var(--paper); }
@media (max-width: 1080px) {
  .in-feature { grid-template-columns:1fr; padding:32px; gap:32px; }
  .in-grid { grid-template-columns:1fr; }
  .in-other-in > div:first-child, .in-other-in > .in-other-go { grid-column:1 / -1; }
}
@media (max-width: 640px) {
  .in-feature { padding:24px 20px; border-radius:22px; } .in-card { padding:24px 20px; }
  .in-other-in > .in-other-go { grid-template-columns:1fr; }
  .in-list { padding-bottom:80px; } .in-other { padding-block:72px 80px; }
}
@media (prefers-reduced-motion: reduce) { .in-feature, .in-card { transition:none; } }
