.hiwx{--fd:'IBM Plex Serif',serif;--fb:'IBM Plex Sans',sans-serif;--fm:'IBM Plex Mono',ui-monospace,Menlo,monospace;--ease:cubic-bezier(.16,1,.3,1);--k:#791553;--s:#2250A0;--n:#3C845C;--pu:#3a3540;--lnum:#5E8597;--outc:#2c2a27;--ed-bd:#E6E1D9;--warn:#B26A00;--accent:#840055;--accent-dark:#4B0532;--bg-dark:#1A1520;--bg-surface:#fff;--bg-learn:#F4EFE6;--text-primary:#1A1520;--text-secondary:#4A4540;--text-tertiary:#8B857B;--border:#E8E3DB;--border-light:#F0ECE5;--radius:6px;--radius-large:12px;--cta:#F89C2A;--font-display:'IBM Plex Serif',serif;--font-mono:'IBM Plex Mono',monospace;--font-body:'IBM Plex Sans',sans-serif;--seam-lip:rgba(248,156,42,0.16);--elev-1:0 1px 2px rgba(26,21,32,0.05),0 4px 12px rgba(26,21,32,0.06);}.hiwx .wrap{max-width:1240px;margin:0 auto;padding:0 1.5rem;}
.hiwx .hiw{padding:clamp(64px,7vw,96px) 0;}
.hiwx .h2{font-family:var(--fd);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:400;line-height:1.14;letter-spacing:-.015em;}
.hiwx .head{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:8px;}
.hiwx .btn-text{color:var(--accent);font-size:.9063rem;font-weight:500;text-decoration:none;border-bottom:1px solid transparent;}
.hiwx .btn-text:hover{border-bottom-color:var(--accent);}
.hiwx .sub{font-size:.9375rem;color:var(--text-secondary);margin-bottom:26px;}
.hiwx .steps{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--border);}
.hiwx .step{position:relative;text-align:left;background:none;border:0;cursor:pointer;padding:2px 22px 13px 0;}
.hiwx .step .nu{font-family:var(--fm);font-size:.625rem;letter-spacing:.16em;color:var(--text-tertiary);}
.hiwx .step.on .nu{color:var(--accent);}
.hiwx .step .ti{display:block;margin-top:6px;font-size:.875rem;font-weight:600;line-height:1.3;color:#9a948b;transition:color .2s;}
.hiwx .step.on .ti, .hiwx .step:hover .ti{color:var(--text-primary);}
.hiwx .step::after{content:'';position:absolute;left:0;right:22px;bottom:-1px;height:2px;background:transparent;transition:background .25s;}
.hiwx .step.on::after{background:var(--accent);}
.hiwx .stepdesc{font-size:.875rem;color:var(--text-secondary);line-height:1.5;max-width:820px;margin:14px 0 22px;min-height:40px;}

.hiwx .ed{border:1px solid var(--ed-bd);border-radius:9px;box-shadow:var(--elev-3);overflow:hidden;background:#fff;}
.hiwx .panes{display:grid;grid-template-columns:29% 37% 34%;height:512px;}
.hiwx .pane{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--ed-bd);overflow:hidden;}
.hiwx .pane:last-child{border-right:0;}

.hiwx .lh1{display:flex;align-items:center;gap:11px;height:36px;padding:0 11px;border-bottom:1px solid var(--border-light);font-family:var(--fb);white-space:nowrap;}
.hiwx .lh1 .dd{font-size:11.5px;color:#2c2733;display:flex;align-items:center;gap:5px;overflow:hidden;text-overflow:ellipsis;}
.hiwx .lh1 .dd::before{content:'\2304';color:#b7b1a6;}
.hiwx .lh1 .qe{margin-left:auto;background:#2f6bd6;color:#fff;font-size:11px;font-weight:500;padding:4px 9px;border-radius:6px;white-space:nowrap;}
.hiwx .lh2{display:flex;align-items:center;gap:8px;height:30px;padding:0 11px;border-bottom:1px solid var(--ed-bd);}
.hiwx .lh2 .cv{font-size:10.5px;color:#6a655e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.hiwx .lh2 .cv b{color:#2c2733;font-weight:600;}
.hiwx .lh2 .ics{margin-left:auto;display:flex;gap:5px;flex-shrink:0;}
.hiwx .ic{width:24px;height:21px;border:1px solid var(--ed-bd);border-radius:5px;display:flex;align-items:center;justify-content:center;color:#8a847a;font-size:10px;}
.hiwx .code{flex:1;display:flex;overflow:auto;background:#fff;}
.hiwx .gut{flex-shrink:0;text-align:right;padding:7px 0;color:var(--lnum);font-family:var(--fm);font-size:11px;line-height:1.5;user-select:none;}
.hiwx .gut div{padding:0 8px 0 13px;}
.hiwx .src{padding:7px 11px;font-family:var(--fm);font-size:11px;line-height:1.5;white-space:pre;color:var(--pu);flex:1;}
.hiwx .src .ln{display:block;opacity:0;transition:opacity .14s;}.hiwx .src .ln.in{opacity:1;}
.hiwx .k{color:var(--k);}.hiwx .s{color:var(--s);}.hiwx .n{color:var(--n);}.hiwx .p{color:var(--pu);}
.hiwx .cur{display:inline-block;width:1.5px;height:11px;background:var(--accent);vertical-align:-2px;animation:blink 1s step-end infinite;}
@keyframes blink{50%{opacity:0;}}

.hiwx .ch{display:flex;align-items:center;gap:9px;height:36px;padding:0 11px;border-bottom:1px solid var(--ed-bd);font-family:var(--fb);font-size:11px;color:#6a655e;white-space:nowrap;overflow:hidden;}
.hiwx .ch .dd{color:#2c2733;display:flex;align-items:center;gap:4px;}.hiwx .ch .dd::before{content:'\2304';color:#b7b1a6;}
.hiwx .ch .sep{width:1px;height:15px;background:var(--ed-bd);flex-shrink:0;}
.hiwx .ch .ci{color:#9a948b;font-size:12px;}
.hiwx .docview{flex:1;overflow:hidden;background:#E7E3DC;display:flex;align-items:flex-start;justify-content:center;padding:11px;}
.hiwx .docimg{position:relative;width:100%;box-shadow:0 1px 4px rgba(0,0,0,.13);}
.hiwx .docimg img{display:block;width:100%;}
.hiwx .dhl{position:absolute;border-radius:2px;background:rgba(132,0,85,.10);box-shadow:0 0 0 1.5px rgba(132,0,85,.72);opacity:0;transition:opacity .3s var(--ease),background .3s,box-shadow .3s;pointer-events:none;}
.hiwx .dhl.on{opacity:1;}
.hiwx .dhl.warn{background:rgba(178,106,0,.15);box-shadow:0 0 0 1.5px rgba(178,106,0,.8);}
.hiwx .dhl .tag{position:absolute;top:-13px;left:0;font-family:var(--fm);font-size:7.5px;font-weight:500;color:#fff;background:var(--accent);padding:1px 4px;border-radius:2px;white-space:nowrap;}
.hiwx .dhl.warn .tag{background:var(--warn);}

.hiwx .rh{display:flex;align-items:center;gap:7px;height:36px;padding:0 11px;border-bottom:1px solid var(--border-light);}
.hiwx .spin{width:11px;height:11px;border:1.5px solid var(--ed-bd);border-top-color:var(--accent);border-radius:50%;opacity:0;}
.hiwx .spin.on{opacity:1;animation:spin .7s linear infinite;}@keyframes spin{to{transform:rotate(360deg);}}
.hiwx .dot{width:7px;height:7px;border-radius:50%;background:#0B8A4B;}.hiwx .dot.warn{background:var(--warn);}
.hiwx .st{font-size:11.5px;color:#3a352f;}
.hiwx .rh .ics{margin-left:auto;display:flex;gap:5px;}
.hiwx .tabs{display:flex;height:34px;border-bottom:1px solid var(--ed-bd);}
.hiwx .tab{display:flex;align-items:center;gap:7px;padding:0 15px;font-size:12px;color:#6a655e;position:relative;}
.hiwx .tab.on{color:#1a1520;font-weight:500;}.hiwx .tab.on::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:#3a352f;}
.hiwx .badge{font-family:var(--fm);font-size:9px;font-weight:500;min-width:15px;height:15px;padding:0 5px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#EBE7E0;color:#8B857B;transition:transform .2s;}
.hiwx .badge.amber{background:#D98A1A;color:#fff;}.hiwx .badge.pop{transform:scale(1.3);}
.hiwx .out{flex:1;display:flex;overflow:auto;background:#fff;}.hiwx .out .src{color:var(--outc);}

@media (max-width:980px){.hiwx .panes{grid-template-columns:1fr;height:auto;}.hiwx .pane{border-right:0;border-bottom:1px solid var(--ed-bd);}.hiwx .docview{height:360px;}.hiwx .steps{grid-template-columns:repeat(2,1fr);}}
@media (prefers-reduced-motion:reduce){.hiwx .src .ln, .hiwx .dhl{transition:none!important;}.hiwx .spin.on{animation:none;}}


/* ===================== M5.5 · FACTS BAND — a full-width dark break ===================== */
.hiwx .d12-facts{ position: relative; overflow: hidden; background: var(--bg-dark); padding: clamp(46px, 5vw, 68px) 0; box-shadow: inset 0 1px 0 rgba(254,253,251,0.06), inset 0 -1px 0 rgba(254,253,251,0.06); }
.hiwx .d12-facts::after{ content: ''; position: absolute; inset: 0; background: var(--dark-glow); pointer-events: none; }
.hiwx .d12-facts .sp-container{ position: relative; z-index: 1; }
.hiwx .d12-facts-row{ display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 48px; }
.hiwx .d12-fact{ display: flex; flex-direction: column; gap: 3px; position: relative; }
.hiwx .d12-fact + .d12-fact{ border-left: 1px solid rgba(254,253,251,0.1); padding-left: 36px; margin-left: -24px; }
.hiwx .d12-fact .f{ font-family: var(--font-display); font-size: 1.1875rem; font-weight: 400; color: #E5E0D8; }
.hiwx .d12-fact .m{ font-family: var(--font-mono); font-size: 0.625rem; text-transform: uppercase; letter-spacing: 0.12em; color: var(--text-tertiary); }

/* ===================== M3 · INDUSTRIES: a clean card index ===================== */
.hiwx .d12-ind{ background: var(--bg-learn); padding: clamp(72px, 8vw, 104px) 0; min-height: min(900px, calc(100svh - 60px)); display: flex; align-items: center; }
.hiwx .d12-ind .sp-container{ width: 100%; }
.hiwx .d12-ind-sub{ font-size: 1rem; color: var(--text-secondary); margin-top: 10px; max-width: 460px; }
.hiwx .d12-ind-head{ margin-bottom: 40px; }
.hiwx .d12-ind-head .d12-ind-sub{ margin-top: 12px; max-width: 540px; }
/* the grid: a clean ruled table — top & bottom rules with hairline column
   dividers and no gaps (1px tracks reveal the rule color and wrap cleanly) */
.hiwx .ind-grid{ display: grid; grid-template-columns: repeat(5, 1fr); gap: 1px; background: #D8CFC0; border-top: 1px solid #D8CFC0; border-bottom: 1px solid #D8CFC0; }
.hiwx .ds{ display: flex; flex-direction: column; background: var(--bg-learn); padding: 24px 20px 22px; transition: background 0.25s; }
.hiwx .ds:hover{ background: var(--bg-surface); }
/* the specimen: a zoomed hi-res render, sharp and obvious at card size */
.hiwx .ds-doc{ position: relative; display: block; aspect-ratio: 1 / 0.92; border: 1px solid var(--border); border-radius: 4px; overflow: hidden; background: #fff; box-shadow: var(--elev-1); transition: transform 0.3s; }
.hiwx .ds:hover .ds-doc{ transform: translateY(-3px); }
/* zoomed in on the masthead + first rows so the document reads sharp,
   not a muddy full page */
.hiwx .ds-doc img{ position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 138%; height: auto; }
/* header row: industry name + arrow to the landing page */
.hiwx .ds-h{ display: flex; align-items: center; justify-content: space-between; gap: 8px; margin: 16px 0 8px; color: inherit; }
.hiwx .ds-h h3{ font-family: var(--font-display); font-size: 1.1875rem; font-weight: 400; color: var(--text-primary); line-height: 1.15; transition: color 0.2s; }
.hiwx .ds-ar{ flex: 0 0 auto; color: var(--text-tertiary); transition: color 0.2s, transform 0.2s; }
.hiwx .ds:hover .ds-h h3{ color: var(--accent); }
.hiwx .ds:hover .ds-ar{ color: var(--accent); transform: translateX(2px); }
.hiwx .ds-types{ font-family: var(--font-mono); font-size: 0.5625rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--text-tertiary); line-height: 1.7; margin-bottom: 16px; }
.hiwx .ds-demo{ margin-top: auto; align-self: flex-start; font-size: 0.8125rem; font-weight: 500; color: var(--accent); border-bottom: 1px solid rgba(132,0,85,0.32); padding-bottom: 2px; transition: border-color 0.2s; }
.hiwx .ds-demo:hover{ border-bottom-color: var(--accent); }

/* the feature band: one wide card to close the section, like the closer's promise */
.hiwx .ix-feature{ margin-top: 44px; display: grid; grid-template-columns: 312px 1fr; background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-large); overflow: hidden; box-shadow: var(--elev-1); }
.hiwx .ix-feature-img{ position: relative; background: var(--bg-dark); overflow: hidden; min-height: 192px; }
.hiwx .ix-feature-img img{ width: 100%; height: 100%; object-fit: cover; object-position: left top; opacity: 0.42; }
.hiwx .ix-feature-img::after{ content: ''; position: absolute; inset: 0; background: var(--dark-glow); }
.hiwx .ix-feature-img .ovl{ position: absolute; z-index: 1; left: 24px; bottom: 20px; font-family: var(--font-mono); font-size: 0.625rem; letter-spacing: 0.12em; text-transform: uppercase; color: rgba(229,224,216,0.85); }
.hiwx .ix-feature-body{ display: flex; align-items: center; gap: 28px; padding: 28px 34px; flex-wrap: wrap; }
.hiwx .ix-feature-body .tx{ flex: 1; min-width: 240px; }
.hiwx .ix-feature-body h3{ font-family: var(--font-display); font-size: 1.4375rem; font-weight: 400; line-height: 1.2; letter-spacing: -0.01em; margin-bottom: 8px; }
.hiwx .ix-feature-body p{ font-size: 0.9375rem; color: var(--text-secondary); line-height: 1.6; max-width: 50ch; }
.hiwx .ix-feature-btns{ display: flex; gap: 12px; flex-wrap: wrap; flex: 0 0 auto; }

/* ===================== M4 · CASE STUDIES (d12-stories) — dark proof chapter ===================== */
.hiwx .d12-stories{ position: relative; overflow: hidden; background: var(--dark-glow), var(--bg-dark); box-shadow: inset 0 1px 0 var(--seam-lip);
  padding: clamp(72px, 8vw, 104px) 0; min-height: min(900px, calc(100svh - 60px)); display: flex; align-items: center; }
.hiwx .d12-stories .sp-container{ width: 100%; position: relative; z-index: 1; }
.hiwx .d12-stories-head{ margin-bottom: 28px; align-items: center; }
/* the selector: a contained segmented control, not floating text */
.hiwx .d12-sw-wrap{ display: inline-flex; align-items: center; background: var(--bg-alt); border: 1px solid var(--border); border-radius: 100px; padding: 3px; gap: 2px; }
.hiwx .d12-nt{ background: none; border: 0; border-radius: 100px; font-family: var(--font-mono); font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.1em; color: var(--text-tertiary); padding: 8px 18px; transition: color 0.2s, background 0.2s, box-shadow 0.2s; }
.hiwx .d12-nt:hover{ color: var(--text-primary); }
.hiwx .d12-nt.on{ background: var(--bg-surface); color: var(--accent); box-shadow: var(--elev-1); }
.hiwx .d12-slide{ display: none; grid-template-columns: 1fr 1.1fr; gap: 56px; align-items: stretch; }
.hiwx .d12-slide.on{ display: grid; animation: paneIn 0.25s cubic-bezier(0.4,0,0.2,1);
  background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-large); box-shadow: var(--elev-1); padding: 26px 32px 26px 26px; gap: 48px; }
/* the dark card runs the panel's full height: brand top, quote centered,
   attribution pinned to a bottom hairline */
.hiwx .d12-story-visual{ background: var(--bg-dark); border-radius: 8px; padding: 30px 32px 26px; position: relative; overflow: hidden;
  display: flex; flex-direction: column; min-height: 360px;
  box-shadow: inset 0 1px 0 rgba(254,253,251,0.09), var(--elev-2); }
.hiwx .d12-story-visual::before{ content: ''; position: absolute; inset: 0; background: var(--dark-glow); }
.hiwx .d12-story-visual > *{ position: relative; }
.hiwx .d12-story-brand{ font-family: var(--font-display); font-size: 1.3125rem; font-weight: 500; color: #FEFDFB; padding-bottom: 14px; border-bottom: 1px solid rgba(254,253,251,0.14); }
.hiwx .d12-story-quote{ font-family: var(--font-display); font-style: italic; font-weight: 300; font-size: clamp(1.1875rem, 1.7vw, 1.4375rem); line-height: 1.45; color: #E5E0D8; margin: auto 0; padding: 24px 0; text-indent: -0.45em; }
.hiwx .d12-who{ display: flex; align-items: center; gap: 12px; min-height: 42px; border-top: 1px solid rgba(254,253,251,0.14); padding-top: 16px; }
.hiwx .d12-who img{ width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 1px solid rgba(255,255,255,0.25); }
.hiwx .d12-who-i{ font-family: var(--font-mono); font-size: 0.59375rem; text-transform: uppercase; letter-spacing: 0.14em; color: #8B857B; line-height: 1.7; }
.hiwx .d12-who-i strong{ display: block; color: #E5E0D8; font-weight: 500; font-size: 0.65625rem; }
.hiwx .d12-story-content{ display: flex; flex-direction: column; justify-content: center; padding: 14px 0; }
.hiwx .d12-story-content h3{ font-family: var(--font-display); font-size: clamp(1.375rem, 2.6vw, 1.875rem); font-weight: 400; line-height: 1.15; margin-bottom: 14px; }
.hiwx .d12-story-content h3 .nb{ white-space: nowrap; }
.hiwx .d12-story-content p{ font-size: 1rem; line-height: 1.7; color: var(--text-secondary); margin-bottom: 22px; max-width: 500px; }
.hiwx .d12-stats{ display: flex; gap: 40px; margin-bottom: 22px; border-top: 1px solid var(--border); padding-top: 18px; max-width: 500px; }
.hiwx .d12-sv{ font-family: var(--font-mono); font-size: 1.5rem; font-weight: 500; color: var(--accent); line-height: 1.1; margin-bottom: 4px; }
.hiwx .d12-sl{ font-family: var(--font-mono); font-size: 0.59375rem; text-transform: uppercase; letter-spacing: 0.12em; color: var(--text-tertiary); line-height: 1.6; max-width: 180px; }
/* dark-ground overrides (placed after the base rules so they win) */
.hiwx .d12-stories .sp-section-h2{ color: #F0EDE6; }
.hiwx .d12-stories .sp-btn-text{ color: #C97AA8; border-bottom-color: transparent; }
.hiwx .d12-stories .sp-btn-text:hover{ color: #FFF; border-bottom-color: #C97AA8; }
.hiwx .d12-stories .d12-sw-wrap{ background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.14); }
.hiwx .d12-stories .d12-nt{ color: rgba(229,224,216,0.62); }
.hiwx .d12-stories .d12-nt:hover{ color: #FFF; }
.hiwx .d12-stories .d12-nt.on{ background: rgba(255,255,255,0.1); color: #FFF; box-shadow: none; }
.hiwx .d12-stories .d12-slide.on{ background: #221B2B; border-color: rgba(255,255,255,0.1); box-shadow: var(--elev-3); }
.hiwx .d12-stories .d12-story-visual{ background: rgba(0,0,0,0.24); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.05); }
.hiwx .d12-stories .d12-story-visual::before{ opacity: 0.45; }
.hiwx .d12-stories .d12-story-content h3{ color: #F0EDE6; }
.hiwx .d12-stories .d12-story-content p{ color: rgba(229,224,216,0.72); }
.hiwx .d12-stories .d12-stats{ border-top-color: rgba(255,255,255,0.12); }
.hiwx .d12-stories .d12-sv{ color: #C97AA8; }

/* ===================== M6 · BLOG (d12-blog) ===================== */
.hiwx .d12-blog{ background: var(--bg-learn); border-top: 1px solid var(--border); padding: 0 0 clamp(72px, 8vw, 104px); }
.hiwx .d12-blog .sp-container{ padding-top: clamp(56px, 6.5vw, 80px); }
.hiwx .d12-blog-head{ margin-bottom: 36px; }
.hiwx .d12-blog-grid{ display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: start; }
.hiwx .d12-blog-grid > *{ min-width: 0; }

/* featured card — bounded like the side panel, so the text has a home */
.hiwx .d12-feat{ display: flex; flex-direction: column; background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-large); overflow: hidden; box-shadow: var(--elev-1); transition: transform 0.2s, box-shadow 0.2s; }
.hiwx .d12-feat:hover{ transform: translateY(-2px); box-shadow: var(--elev-2); }
.hiwx .d12-feat:hover h3{ color: var(--accent); }
.hiwx .d12-feat .th{ border-bottom: 1px solid var(--border-light); }
.hiwx .d12-feat .th img{ width: 100%; aspect-ratio: 2 / 1; object-fit: cover; object-position: center; }
.hiwx .d12-feat-body{ padding: 22px 26px 24px; display: flex; flex-direction: column; gap: 9px; }
.hiwx .d12-kind{ font-family: var(--font-mono); font-size: 0.6875rem; text-transform: uppercase; letter-spacing: 0.16em; color: var(--accent); }
.hiwx .d12-feat h3{ font-family: var(--font-display); font-size: 1.4375rem; font-weight: 400; line-height: 1.25; transition: color 0.2s; }
.hiwx .d12-feat p{ font-size: 0.9063rem; color: var(--text-secondary); line-height: 1.6; max-width: 52ch; }
.hiwx .d12-feat .rd{ margin-top: 8px; align-self: flex-start; }

/* side reading panel — one panel system with the stories slide */
.hiwx .d12-side{ display: flex; flex-direction: column; background: var(--bg-surface); border: 1px solid var(--border); border-radius: var(--radius-large); padding: 10px 26px 14px; box-shadow: var(--elev-1); }
.hiwx .d12-row{ display: grid; grid-template-columns: 92px 1fr; gap: 18px; align-items: start; padding: 20px 0; border-bottom: 1px solid var(--border); }
.hiwx .d12-side .d12-row:first-child{ padding-top: 18px; }
.hiwx .d12-row .tb{ width: 92px; aspect-ratio: 3 / 2; border-radius: 4px; overflow: hidden; border: 1px solid var(--border-light); margin-top: 3px; }
.hiwx .d12-row .tb img{ width: 100%; height: 100%; object-fit: cover; }
.hiwx .d12-row .t{ font-family: var(--font-display); font-size: 1.0625rem; line-height: 1.35; margin: 4px 0 5px; display: flex; justify-content: space-between; gap: 16px; transition: color 0.2s; }
.hiwx .d12-row:hover .t{ color: var(--accent); }
.hiwx .d12-row .t .ar{ color: var(--text-tertiary); transition: color 0.2s; }
.hiwx .d12-row:hover .t .ar{ color: var(--accent); }
.hiwx .d12-row .d{ font-size: 0.8438rem; color: var(--text-secondary); line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
/* the freshness marker: the panel's one quiet accent */
.hiwx .d12-kind .nw{ color: var(--accent); }
.hiwx .d12-kind .nw::before{ content: ''; display: inline-block; width: 5px; height: 5px; border-radius: 50%; background: var(--cta); margin-right: 6px; vertical-align: 1px; }
.hiwx .d12-kind .mut{ color: var(--text-tertiary); }
.hiwx .d12-side-foot{ margin-top: auto; padding: 14px 0 4px; }

/* ===================== M7 · CLOSER (d12-closer): the pure ask ===================== */
.hiwx .d12-closer{ padding: clamp(96px, 11vw, 144px) 0 clamp(88px, 10vw, 128px); position: relative; overflow: hidden;
  background: var(--dark-glow), var(--bg-dark);
  box-shadow: inset 0 1px 0 var(--seam-lip); }
.hiwx .d12-closer-inner{ position: relative; z-index: 1; max-width: 620px; margin: 0 auto; text-align: center; }
.hiwx .d12-closer-inner h2{ font-family: var(--font-display); font-size: clamp(1.875rem, 4vw, 2.875rem); font-weight: 400; line-height: 1.12; letter-spacing: -0.015em; color: #E5E0D8; margin-bottom: 16px; }
.hiwx .d12-closer-inner h2 em{ font-style: italic; color: #C97AA8; }
.hiwx .d12-closer-inner p{ font-size: 1.0625rem; color: rgba(229,224,216,0.7); margin: 0 auto 32px; max-width: 440px; }
.hiwx .d12-closer-btns{ display: flex; gap: 12px; flex-wrap: wrap; justify-content: center; }
.hiwx .d12-closer-note{ margin-top: 22px; font-family: var(--font-mono); font-size: 0.6875rem; letter-spacing: 0.16em; color: #8B857B; }
/* dot-grid echo of the hero (bookend motif), settled in the ground below the ask */
.hiwx .d12-closer::after{ content: ''; position: absolute; inset: 0; pointer-events: none;
  background-image: radial-gradient(rgba(254,253,251,0.11) 1px, transparent 1px); background-size: 20px 20px;
  -webkit-mask-image: radial-gradient(ellipse 70% 42% at 50% 100%, #000 30%, transparent 80%);
  mask-image: radial-gradient(ellipse 70% 42% at 50% 100%, #000 30%, transparent 80%); }

/* ===================== M7 · FOOTER (sp-footer), fused with the closer ===================== */
.hiwx .sp-footer{ background: var(--bg-dark); border-top: 1px solid rgba(255,255,255,0.07); padding: 48px 0 28px; color: rgba(229,224,216,0.7); }
.hiwx .sp-footer-grid{ display: grid; grid-template-columns: 1.15fr 1fr; gap: 80px; margin-bottom: 44px; align-items: start; }
.hiwx .sp-footer-cols{ display: grid; grid-template-columns: 1.2fr 1.2fr 1fr; gap: 32px; }
.hiwx .sp-footer-logo{ height: 22px; margin-bottom: 16px; filter: brightness(0) invert(1); }
.hiwx .sp-footer-tagline{ font-size: 0.875rem; color: rgba(254,253,251,0.5); max-width: 240px; }
.hiwx .sp-footer-col-title{ font-family: var(--font-mono); font-size: 0.625rem; font-weight: 500; text-transform: uppercase; letter-spacing: 0.12em; color: #C97AA8; margin-bottom: 16px; }
.hiwx .sp-footer-links{ list-style: none; }
.hiwx .sp-footer-links li{ margin-bottom: 10px; }
.hiwx .sp-footer-links a{ font-size: 0.875rem; color: rgba(254,253,251,0.72); transition: color 0.2s; }
.hiwx .sp-footer-links a:hover{ color: #FFF; }
.hiwx .sp-footer-bottom{ border-top: 1px solid rgba(255,255,255,0.06); padding-top: 22px; display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; font-size: 0.8125rem; color: rgba(254,253,251,0.35); }
.hiwx .sp-footer-cert{ font-family: var(--font-mono); font-size: 0.625rem; text-transform: uppercase; letter-spacing: 0.12em; color: rgba(254,253,251,0.4); }
.hiwx .sp-footer-legal{ display: flex; gap: 20px; list-style: none; }
.hiwx .sp-footer-legal a{ color: rgba(254,253,251,0.35); transition: color 0.2s; }
.hiwx .sp-footer-legal a:hover{ color: rgba(254,253,251,0.7); }

/* ===================== RESPONSIVE ===================== */
@media (max-width: 1180px) {
  .hiwx .d12-field{ --fs: 0.88; }
}
@media (max-width: 1100px) {
  .hiwx .hiw-grid{ grid-template-columns: 300px 1fr; gap: 40px; }
  .hiwx .hiw-step-desc{ max-width: none; }
  .hiwx .d12-set.on{ gap: 40px; }
}
@media (max-width: 991px) {
  .hiwx .sp-nav-links{ display: none; }
  /* hero releases the viewport lock below desktop */
  .hiwx .d12-hero{ min-height: 0; }
  .hiwx .d12-hero-main{ padding: 40px 0 12px; }
  .hiwx .d12-hero-grid{ grid-template-columns: 1fr; gap: 40px; }
  .hiwx .d12-stage{ min-height: 340px; padding: 8px 0 16px; }
  .hiwx .drop{ width: min(420px, 100%); }
  /* chapters release their full-height lock below desktop */
  .hiwx .d12-dark, .hiwx .d12-ind, .hiwx .d12-stories, .hiwx .hiw{ min-height: 0; }
  .hiwx .d12-dark-grid{ grid-template-columns: 1fr; gap: 40px; padding: 80px 0 72px; }
  .hiwx .d12-field{ --fs: 0.92; min-height: 320px; max-width: 560px; margin: 0 auto; width: 100%; }
  /* industries: five-up becomes three-up; feature band keeps its split */
  .hiwx .ind-grid{ grid-template-columns: repeat(3, 1fr); }
  /* facts */
  .hiwx .d12-facts-row{ grid-template-columns: 1fr; gap: 18px; }
  .hiwx .d12-fact + .d12-fact{ border-left: 0; padding-left: 0; margin-left: 0; border-top: 1px solid rgba(254,253,251,0.1); padding-top: 16px; }
  /* stories */
  .hiwx .d12-slide.on{ grid-template-columns: 1fr; gap: 28px; padding: 18px 18px 24px; }
  /* blog */
  .hiwx .d12-blog-grid{ grid-template-columns: 1fr; }
  /* footer */
  .hiwx .sp-footer-grid{ grid-template-columns: 1fr; gap: 36px; }
}
@media (max-width: 767px) {
  /* hero */
  .hiwx .d12-hero-main{ padding-top: 32px; }
  .hiwx .drop{ width: 100%; }
  /* statement */
  .hiwx .d12-dark-grid{ padding: 64px 0; }
  /* how it works */
  .hiwx .hiw-grid{ display: block; }
  .hiwx .hiw-rail{ display: none; }
  .hiwx .hiw-chips{ display: grid; }
  .hiwx .hiw-mobile-desc{ display: block; }
  .hiwx .hiw-cap{ text-align: left; }
  .hiwx .hiw-frame-bar{ padding: 8px 12px; }
  .hiwx .hiw-note{ max-width: 64%; padding: 11px 13px; }
  .hiwx .hiw-note .x{ font-size: 0.875rem; }
  /* industries: two-up cards; feature band stacks */
  .hiwx .ind-grid{ grid-template-columns: repeat(2, 1fr); }
  .hiwx .ix-feature{ grid-template-columns: 1fr; }
  .hiwx .ix-feature-img{ min-height: 150px; }
  /* stories: control gets its own line; explicit two-up stats */
  .hiwx .d12-stories-head{ align-items: baseline; }
  .hiwx .d12-stats{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; }
  .hiwx .d12-sl{ max-width: none; }
  /* blog */
  .hiwx .d12-feat-body{ padding: 18px 20px 22px; }
  .hiwx .d12-side{ padding: 6px 18px 10px; }
  .hiwx .d12-row{ grid-template-columns: 76px 1fr; gap: 14px; }
  .hiwx .d12-row .tb{ width: 76px; }
  /* footer */
  .hiwx .sp-footer-cols{ grid-template-columns: 1fr; gap: 28px; }
  .hiwx .sp-footer-bottom{ flex-direction: column; gap: 10px; }
}
@media (max-width: 560px) {
  /* ribbon: 2x2 grid, hairline rules between cells */
  .hiwx .d12-proof{ grid-template-columns: 1fr 1fr; }
  .hiwx .d12-proof .cell + .cell{ border-left: 0; }
  .hiwx .d12-proof .cell:nth-child(even){ border-left: 1px solid var(--border); }
  .hiwx .d12-proof .cell:nth-child(n+3){ border-top: 1px solid var(--border); }
  .hiwx .d12-proof .v{ font-size: 1.25rem; }
  .hiwx .d12-nt{ padding: 8px 13px; }
}
@media (max-width: 540px) {
  /* statement field: mobile is a recomposition, not a shrink */
  .hiwx .d12-field{ --fs: 0.72; min-height: 300px; }
  .hiwx .d12-field img{ opacity: calc(var(--o) + 0.08); }
  .hiwx .d12-field img:nth-child(2){ --x: 38%; --y: 5%;  }
  .hiwx .d12-field img:nth-child(1){ --x: 75%; --y: 12%; }
  .hiwx .d12-field img:nth-child(3){ --x: 30%; --y: 21%; }
  .hiwx .d12-field img:nth-child(5){ --x: 62%; --y: 31%; }
  .hiwx .d12-field img:nth-child(6){ --x: 22%; --y: 43%; }
  .hiwx .d12-field img:nth-child(4){ --x: 80%; --y: 48%; }
  .hiwx .d12-field img:nth-child(8){ --x: 48%; --y: 58%; }
  .hiwx .d12-field img:nth-child(7){ --x: 18%; --y: 70%; }
  .hiwx .d12-field img:nth-child(11){ --x: 76%; --y: 72%; }
  .hiwx .d12-field img:nth-child(9){ --x: 38%; --y: 84%; }
  .hiwx .d12-field img:nth-child(10){ --x: 66%; --y: 93%; }
}

/* ===================== SCROLL REVEAL (motion-gated; JS adds .rv/.in) ===================== */
.hiwx .rv{ opacity: 0; }
.hiwx .rv.in{ opacity: 1; animation: rvIn 0.55s cubic-bezier(0.4,0,0.2,1); }
@keyframes rvIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: none; } }

/* ===================== REDUCED MOTION (one consolidated gate) ===================== */
@media (prefers-reduced-motion: reduce) {
  .hiwx .rv{ opacity: 1; }
  .hiwx .rv.in, .hiwx .d12-set.on, .hiwx .d12-slide.on{ animation: none !important; }
  .hiwx .hiw-pane.on .hiw-spot, .hiwx .hiw-pane.on .hiw-frame, .hiwx .hiw-pane.on .hiw-note{ animation: none !important; }
  .hiwx .d12-field img, .hiwx .d12-field.in img{ animation: none !important; transition: none; }
  .hiwx .ind-tab, .hiwx .drop-zone{ transition: none; }
  .hiwx .d12-feat, .hiwx .d12-row .t, .hiwx .d12-row .t .ar{ transition: none; }
  .hiwx .d12-feat:hover{ transform: none; }
}
