/* DMS Global Supply — site.css
   Tokens follow the official identity: ink black, DMS orange (accent only), white, industrial grey. */
@font-face{font-family:"Plex Cond";src:url(../fonts/ibm-plex-sans-condensed-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Plex Cond";src:url(../fonts/ibm-plex-sans-condensed-latin-700-normal.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Plex";src:url(../fonts/ibm-plex-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Plex";src:url(../fonts/ibm-plex-sans-latin-600-normal.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --ink:#0A0B0E;--ink2:#12141A;--ink3:#1A1D25;--line:#2B303B;
  --steel:#A3A9B5;--mist:#D9DCE2;--paper:#F2F3F4;--white:#fff;
  --or:#FF6600;--or-hi:#FF8533;--or-ink:#B84500;
  --text-l:#0A0B0E;--sub-l:#444A56;--rule-l:#C9CDD3;
  --ok-d:#6EE7A8;--ok-l:#0F6B3F;
  --head:"Plex Cond","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --body:"Plex",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --wrap:1240px;--pad:clamp(20px,4vw,56px);--r:2px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:150px}
body{margin:0;background:var(--ink);color:#fff;font:400 1.0625rem/1.65 var(--body);-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img,svg{max-width:100%;height:auto;display:block}
a{color:inherit}
p{margin:0 0 1em;max-width:68ch}
ul,ol{margin:0;padding:0}
h1,h2,h3,h4{font-family:var(--head);font-weight:700;margin:0;letter-spacing:-.005em}
h1{font-size:clamp(2.5rem,6.4vw,4.9rem);line-height:1}
h2{font-size:clamp(1.85rem,3.6vw,2.85rem);line-height:1.06;margin-bottom:.5em}
h3{font-size:1.3rem;line-height:1.2;font-weight:600;margin-bottom:.4em}
.lead{font-size:clamp(1.12rem,1.7vw,1.3rem);line-height:1.55;max-width:62ch}
.small{font-size:.9rem;line-height:1.55}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.skip{position:absolute;left:-999px;top:8px;z-index:100;background:var(--or);color:var(--ink);padding:12px 18px;font-weight:600;text-decoration:none}
.skip:focus{left:8px}
:focus-visible{outline:3px solid var(--or);outline-offset:3px}
.band--paper :focus-visible,.band--white :focus-visible{outline-color:var(--ink)}

/* ── bands ── */
.band{padding:clamp(56px,8vw,108px) 0}
.band--ink{background:var(--ink)}
.band--ink2{background:var(--ink2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band--paper{background:var(--paper);color:var(--text-l)}
.band--white{background:var(--white);color:var(--text-l)}
.band--paper .muted,.band--white .muted{color:var(--sub-l)}
.muted{color:var(--steel)}
.band--paper a.tlink,.band--white a.tlink{color:var(--or-ink)}
a.tlink{color:var(--or);text-underline-offset:3px;text-decoration-thickness:1px;font-weight:600}
a.tlink:hover{text-decoration-thickness:2px}

/* ── header ── */
.site-header{position:sticky;top:0;z-index:50;background:var(--ink);border-bottom:1px solid var(--line)}
.hdr-top{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.hdr-logo{display:block;line-height:0}
.hdr-logo img{height:52px;width:auto}
.hdr-actions{display:flex;align-items:center;gap:14px}
.lang{display:inline-flex;align-items:center;min-height:44px;min-width:44px;justify-content:center;font:600 .95rem var(--body);text-decoration:none;color:var(--steel);padding:8px 10px;border:1px solid var(--line);border-radius:var(--r)}
.lang:hover{color:#fff;border-color:var(--steel)}
.menu-btn{display:none;min-height:48px;padding:0 16px;background:transparent;color:#fff;border:1px solid var(--steel);border-radius:var(--r);font:600 1rem var(--body);cursor:pointer}
.hdr-nav{border-top:1px solid var(--line)}
.hdr-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:0 clamp(16px,2.2vw,32px)}
.hdr-nav a{display:block;padding:13px 0 11px;font:600 1rem var(--head);text-decoration:none;color:var(--mist);border-bottom:2px solid transparent}
.hdr-nav a:hover{color:#fff;border-bottom-color:var(--line)}
.hdr-nav a[aria-current="page"]{color:#fff;border-bottom-color:var(--or)}

/* ── buttons ── */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 26px;border:2px solid transparent;border-radius:var(--r);font:600 1rem var(--body);text-decoration:none;cursor:pointer;text-align:center;transition:background .15s,color .15s,border-color .15s}
.btn--primary{background:var(--or);border-color:var(--or);color:var(--ink)}
.btn--primary:hover{background:var(--or-hi);border-color:var(--or-hi)}
.btn--ghost{border-color:#fff;color:#fff;background:transparent}
.btn--ghost:hover{background:#fff;color:var(--ink)}
.band--paper .btn--ghost,.band--white .btn--ghost{border-color:var(--ink);color:var(--ink)}
.band--paper .btn--ghost:hover,.band--white .btn--ghost:hover{background:var(--ink);color:#fff}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}

/* ── hero ── */
.hero{padding:clamp(48px,7vw,96px) 0 clamp(40px,5vw,72px);border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(28px,4vw,64px);align-items:center}
.hero-copy{grid-column:1/8}
.hero-media{grid-column:8/13}
.hero h1{margin-bottom:.45em}
.hero .lead{color:var(--mist)}
.hero-support{margin-top:28px;font:600 1.05rem var(--head);color:var(--steel)}
.pos-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:clamp(36px,5vw,64px);border-top:1px solid var(--line)}
.pos-strip div{padding:18px 20px 0 0}
.pos-strip strong{display:block;font:600 1.15rem var(--head)}
.pos-strip span{color:var(--steel);font-size:.95rem}

.page-head{padding:clamp(44px,6vw,84px) 0 clamp(36px,5vw,64px);border-bottom:1px solid var(--line)}
.page-head h1{font-size:clamp(2.3rem,5.4vw,4rem);margin-bottom:.4em}
.page-head .lead{color:var(--mist)}
.crumbs{font-size:.92rem;margin-bottom:22px;color:var(--steel)}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--line)}
.crumbs a{color:var(--steel)}
.head-split{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(28px,4vw,64px);align-items:end}
.head-split>div:first-child{grid-column:1/9}
.head-split>.ph,.head-split>.photo{grid-column:9/13}

/* ── layout helpers ── */
.split{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(28px,4vw,64px)}
.s-4{grid-column:span 4}.s-5{grid-column:span 5}.s-6{grid-column:span 6}.s-7{grid-column:span 7}.s-8{grid-column:span 8}
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,48px)}
.cols2{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(24px,3vw,48px)}
.cols4{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,2.4vw,36px)}
.topline{border-top:2px solid var(--or);padding-top:20px}
.band--paper .topline,.band--white .topline{border-top-color:var(--ink)}
.rows>.row{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:clamp(16px,3vw,48px);border-top:1px solid var(--line);padding:26px 0}
.band--paper .rows>.row,.band--white .rows>.row{border-top-color:var(--rule-l)}
.rows>.row:last-child{border-bottom:1px solid var(--line)}
.band--paper .rows>.row:last-child,.band--white .rows>.row:last-child{border-bottom-color:var(--rule-l)}
.rows h3{margin:0}
.rows p:last-child{margin-bottom:0}
.tick{list-style:none}
.tick li{position:relative;padding:7px 0 7px 22px;border-top:1px solid var(--line)}
.band--paper .tick li,.band--white .tick li{border-top-color:var(--rule-l)}
.tick li:first-child{border-top:0}
.tick li::before{content:"";position:absolute;left:0;top:1.05em;width:8px;height:8px;background:var(--or)}
.band--paper .tick li::before,.band--white .tick li::before{background:var(--ink)}
.dl{display:grid;grid-template-columns:minmax(120px,220px) 1fr;margin:0}
.dl dt,.dl dd{margin:0;padding:12px 0;border-top:1px solid var(--rule-l)}
.dl dt{font-weight:600;color:var(--sub-l)}
.band--ink .dl dt,.band--ink2 .dl dt{color:var(--steel)}
.band--ink .dl dt,.band--ink .dl dd,.band--ink2 .dl dt,.band--ink2 .dl dd{border-top-color:var(--line)}
.dl dd{overflow-wrap:anywhere}

/* ── status chips ── */
.chip{display:inline-flex;align-items:center;gap:8px;font:600 .88rem var(--body);padding:3px 0}
.chip i{display:inline-block;width:12px;height:12px;border:2px solid currentColor;flex:none}
.chip--live{color:var(--ok-d)}.chip--live i{background:currentColor}
.chip--dev,.chip--current{color:var(--or)}.chip--dev i,.chip--current i{background:linear-gradient(90deg,currentColor 50%,transparent 50%)}
.chip--road,.chip--soon{color:var(--steel)}
.chip--done,.chip--ongoing{color:var(--mist)}.chip--done i{background:currentColor}.chip--ongoing i{background:linear-gradient(90deg,currentColor 50%,transparent 50%)}
.band--paper .chip--live,.band--white .chip--live{color:var(--ok-l)}
.band--paper .chip--dev,.band--white .chip--dev,.band--paper .chip--current,.band--white .chip--current{color:var(--or-ink)}
.band--paper .chip--road,.band--white .chip--road,.band--paper .chip--soon,.band--white .chip--soon{color:var(--sub-l)}
.band--paper .chip--done,.band--white .chip--done,.band--paper .chip--ongoing,.band--white .chip--ongoing{color:var(--text-l)}
.status-box{border:1px solid var(--line);padding:22px 22px 10px}
.status-box h3{display:flex;margin-bottom:12px}

/* ── placeholder / images ── */
.ph{position:relative;margin:0;background:var(--ink3);border:1px solid var(--line);aspect-ratio:var(--ar,4/3);display:flex;align-items:flex-end;overflow:hidden}
.ph::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(255,255,255,.04) 14px 15px)}
.ph figcaption{position:relative;padding:10px 12px;font-size:.82rem;color:var(--steel);line-height:1.35}
.band--paper .ph,.band--white .ph{background:#E5E7EA;border-color:var(--rule-l)}
.band--paper .ph::before,.band--white .ph::before{background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(0,0,0,.045) 14px 15px)}
.band--paper .ph figcaption,.band--white .ph figcaption{color:var(--sub-l)}
.photo{position:relative;margin:0;aspect-ratio:var(--ar,4/3);overflow:hidden;background:var(--ink3)}
.photo img{display:block;width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:0;bottom:0;padding:5px 10px;font:600 .75rem/1.2 var(--body);color:#fff;background:rgba(10,11,14,.78)}
.photo--hero img{object-position:50% 70%}
.cat .photo{margin-bottom:2px}
.head-split>.photo{align-self:end}

/* ── procurement rail: sequence of 11 steps ── */
.rail{list-style:none;display:grid;grid-template-columns:repeat(11,1fr);position:relative;margin-top:44px}
.rail::before,.rail::after{content:"";position:absolute;left:0;top:11px;height:2px}
.rail::before{right:0;background:var(--line)}
.rail::after{width:100%;background:var(--or);transform-origin:left}
.js .rail::after{transform:scaleX(0);transition:transform 1.4s cubic-bezier(.2,.7,.2,1)}
.js .rail.is-in::after{transform:scaleX(1)}
.rail li{position:relative;padding:34px 10px 0 0}
.rail li::before{content:"";position:absolute;left:0;top:4px;width:16px;height:16px;background:var(--ink);border:2px solid var(--or)}
.band--paper .rail li::before,.band--white .rail li::before{background:var(--paper)}
.rail .n{display:block;font:700 .9rem var(--head);color:var(--or);margin-bottom:4px}
.band--paper .rail .n,.band--white .rail .n{color:var(--or-ink)}
.rail .t{display:block;font:600 .98rem/1.25 var(--head)}
.rail .r{display:block;font-size:.8rem;color:var(--steel);margin-top:4px}

/* chain detail rows */
.steps{list-style:none;margin-top:12px}
.steps li{display:grid;grid-template-columns:64px minmax(0,3fr) minmax(0,7fr);gap:clamp(12px,3vw,40px);padding:26px 0;border-top:1px solid var(--rule-l)}
.steps li:last-child{border-bottom:1px solid var(--rule-l)}
.steps .n{font:700 2rem/1 var(--head);color:var(--or-ink)}
.steps h3{margin:0 0 6px}
.steps .who{font-size:.88rem;font-weight:600;color:var(--sub-l)}
.steps p{margin:0}
/* timeline (history) */
.tl{list-style:none;border-left:2px solid var(--rule-l);margin-left:6px}
.tl li{position:relative;padding:0 0 34px 30px}
.tl li::before{content:"";position:absolute;left:-9px;top:6px;width:16px;height:16px;background:var(--paper);border:2px solid var(--ink)}
.tl li.is-done::before{background:var(--ink)}
.tl li.is-current::before{border-color:var(--or-ink);background:linear-gradient(90deg,var(--or-ink) 50%,var(--paper) 50%)}
.tl .yr{font:700 1.5rem var(--head)}
.tl h3{margin:2px 0 4px}
.tl p{margin:6px 0 0}
/* flow (procurement page) */
.flow{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;counter-reset:f}
.flow li{counter-increment:f;border:1px solid var(--line);padding:10px 14px 10px 12px;font:600 1rem var(--head);display:flex;gap:10px;align-items:baseline}
.flow li::before{content:counter(f);font-size:.85rem;color:var(--or)}

/* ── product / industry cards ── */
.cat{border-top:2px solid var(--ink);padding-top:16px;display:flex;flex-direction:column;gap:12px}
.cat h3{margin:0}
.cat .tag{font-size:.85rem;font-weight:600;color:var(--or-ink)}
.cat .tick li{font-size:.97rem;padding:5px 0 5px 20px}
.cat .tick li::before{top:.95em;width:6px;height:6px}
.cat .btn-row{margin-top:auto;padding-top:8px}
.ind-list{list-style:none}
.ind-list li{border-top:1px solid var(--line)}
.ind-list li:last-child{border-bottom:1px solid var(--line)}
.ind-list a{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px;padding:20px 0;text-decoration:none}
.ind-list a:hover strong{color:var(--or)}
.ind-list strong{font:600 1.35rem var(--head)}
.ind-list span{color:var(--steel)}
.band--paper .ind-list li,.band--white .ind-list li{border-color:var(--rule-l)}
.band--paper .ind-list a:hover strong,.band--white .ind-list a:hover strong{color:var(--or-ink)}
.band--paper .ind-list span,.band--white .ind-list span{color:var(--sub-l)}
.sol{padding:clamp(36px,5vw,64px) 0;border-top:1px solid var(--rule-l)}
.sol:first-of-type{border-top:0}
.sol .lbl{font:700 .85rem var(--body);color:var(--sub-l);margin:0 0 4px}
.sol-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(24px,3vw,56px)}
.sol-grid>div:nth-child(1){grid-column:1/5}.sol-grid>div:nth-child(2){grid-column:5/13}
.sol-grid p{margin-bottom:.9em}
.toc{list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:26px}
.toc a{font-weight:600;color:var(--or);text-underline-offset:3px}
.band--paper .toc a,.band--white .toc a{color:var(--or-ink)}
.brand-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,48px)}
.brand-groups ul{list-style:none}
.brand-groups li{font:600 1.35rem var(--head);padding:10px 0;border-top:1px solid var(--rule-l)}
.notice{border-left:4px solid var(--or);padding:14px 18px;background:var(--ink2);max-width:72ch}
.band--paper .notice,.band--white .notice{background:#fff;border-left-color:var(--ink)}
.cta-band{border-top:4px solid var(--or)}
.cta-band .inner{display:grid;grid-template-columns:repeat(12,1fr);gap:32px;align-items:center}
.cta-band .inner>div:first-child{grid-column:1/8}
.cta-band .inner>div:last-child{grid-column:8/13;display:flex;flex-wrap:wrap;gap:14px;justify-content:flex-end}
.legal h2{font-size:1.45rem;margin:1.8em 0 .4em}
.legal p,.legal li{max-width:72ch}

/* ── forms ── */
.form{display:grid;gap:22px}
.form fieldset{border:0;margin:0;padding:0;display:grid;gap:18px}
.form legend{font:700 1.45rem var(--head);padding:0 0 10px;margin-bottom:4px;width:100%;border-bottom:2px solid var(--ink)}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fld{display:flex;flex-direction:column;gap:6px}
.fld label{font-weight:600;font-size:.98rem}
.fld .req{color:var(--or-ink);margin-left:2px}
.fld .hint{font-size:.88rem;color:var(--sub-l)}
.fld input,.fld select,.fld textarea{width:100%;min-height:50px;padding:12px 14px;font:400 1rem var(--body);color:var(--text-l);background:#fff;border:1.5px solid #7B818D;border-radius:var(--r)}
.fld textarea{min-height:130px;resize:vertical}
.fld input:focus-visible,.fld select:focus-visible,.fld textarea:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-color:var(--ink)}
.fld input[aria-invalid="true"],.fld select[aria-invalid="true"],.fld textarea[aria-invalid="true"]{border-color:#B3261E;border-width:2px}
.err{color:#B3261E;font-size:.9rem;font-weight:600;min-height:0}
.err:empty{display:none}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-summary{border:2px solid #B3261E;padding:14px 16px;background:#fff;color:#7A1812;font-weight:600}
.form-summary[hidden]{display:none}
.panel{background:#fff;border:1px solid var(--rule-l);padding:clamp(22px,3vw,40px)}
.result{border:1px solid var(--rule-l);background:#fff;padding:clamp(22px,3vw,40px)}
.result[hidden]{display:none}
.refno{font:700 clamp(1.6rem,4vw,2.4rem) var(--head);letter-spacing:.02em;background:var(--ink);color:#fff;padding:14px 18px;display:inline-block;margin:10px 0 18px;overflow-wrap:anywhere}
.rfq-layout{display:grid;grid-template-columns:repeat(12,1fr);gap:clamp(28px,4vw,56px);align-items:start}
.rfq-layout>.main{grid-column:1/9}.rfq-layout>aside{grid-column:9/13;position:sticky;top:170px}
.rfq-layout ol{padding-left:1.2em}
.rfq-layout aside li{margin-bottom:10px}

/* ── footer ── */
.site-footer{background:var(--ink);border-top:1px solid var(--line);padding:clamp(44px,6vw,80px) 0 28px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.3fr;gap:clamp(24px,4vw,56px)}
.foot-grid h2{font:700 1.05rem var(--head);margin-bottom:12px;color:#fff}
.foot-grid ul{list-style:none}
.foot-grid li{margin-bottom:8px}
.foot-grid a{color:var(--mist);text-decoration:none}
.foot-grid a:hover{color:#fff;text-decoration:underline}
.foot-grid p{color:var(--steel);font-size:.95rem}
.foot-logo img{height:56px;width:auto;margin-bottom:16px}
.foot-bottom{margin-top:44px;padding-top:20px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px 28px;justify-content:space-between;color:var(--steel);font-size:.9rem}
.foot-bottom p{margin:0;max-width:none}
.wa-fab{position:fixed;right:16px;bottom:16px;z-index:40;width:56px;height:56px;border-radius:50%;background:var(--or);color:var(--ink);display:none;align-items:center;justify-content:center;box-shadow:0 4px 18px rgba(0,0,0,.45)}
.wa-fab svg{width:28px;height:28px}
.lang-root{min-height:100vh;display:grid;place-items:center;text-align:center;padding:40px 20px}
.lang-root img{margin:0 auto 32px;height:auto;width:min(360px,80vw)}
.lang-root .btn-row{justify-content:center}

/* ── responsive ── */
@media(max-width:1040px){
  .hero-media{max-width:560px}
  .photo--hero{aspect-ratio:1/1!important}
  .photo--hero img{object-position:50% 88%}
  .head-split>.photo,.head-split>.ph{max-width:640px}
  .hero-grid,.head-split,.split,.sol-grid,.rfq-layout,.cta-band .inner{grid-template-columns:minmax(0,1fr)}
  .hero-grid>*,.head-split>*,.split>*,.sol-grid>*,.rfq-layout>*,.cta-band .inner>*{grid-column:1/-1!important}
}
@media(max-width:1040px){
  .js .menu-btn{display:inline-flex;align-items:center}
  .js .hdr-nav{display:none}
  .js .nav-open .hdr-nav{display:block;position:fixed;inset:76px 0 0 0;background:var(--ink);overflow:auto;padding:12px var(--pad) 40px;border-top:1px solid var(--line)}
  .hdr-nav ul{flex-direction:column}
  .hdr-nav a{font-size:1.25rem;padding:16px 0;border-bottom:1px solid var(--line)}
  .hdr-cta{display:none}
  .hero-copy,.hero-media{grid-column:1/-1}
  .head-split>div:first-child,.head-split>.ph,.head-split>.photo{grid-column:1/-1}
  .rfq-layout>.main,.rfq-layout>aside{grid-column:1/-1;position:static}
  .rail{display:block;margin-top:30px;border-left:2px solid var(--line);margin-left:7px}
  .rail::before,.rail::after{display:none}
  .rail li{padding:0 0 22px 28px}
  .rail li::before{left:-9px;top:4px}
  .rail .n,.rail .t,.rail .r{display:inline}
  .rail .n{margin-right:8px}
  .rail .r{display:block;margin-top:2px}
  .cols4{grid-template-columns:repeat(2,1fr)}
  .foot-grid{grid-template-columns:1fr 1fr}
  .cta-band .inner>div:first-child,.cta-band .inner>div:last-child{grid-column:1/-1;justify-content:flex-start}
}
@media(max-width:820px){
  .cols3,.brand-groups{grid-template-columns:1fr 1fr}
  .s-4,.s-5,.s-6,.s-7,.s-8{grid-column:1/-1}
  .rows>.row,.ind-list a{grid-template-columns:1fr}
  .sol-grid>div:nth-child(1),.sol-grid>div:nth-child(2){grid-column:1/-1}
  .steps li{grid-template-columns:48px 1fr}
  .steps li>div:last-child{grid-column:2/3}
  .wa-fab{display:flex}
}
@media(max-width:600px){
  .cols3,.cols2,.cols4,.brand-groups,.grid2,.pos-strip{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .dl{grid-template-columns:1fr}
  .dl dt{border-top:1px solid var(--rule-l);padding-bottom:0}
  .dl dd{border-top:0;padding-top:2px}
  .band--ink .dl dt,.band--ink2 .dl dt{border-top-color:var(--line)}
  .btn{width:100%}
  .btn-row .btn{width:100%}
  .hdr-logo img{height:44px}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
  .js .rail::after{transform:none}
}
@media print{.site-header,.wa-fab,.site-footer .btn{display:none}body{background:#fff;color:#000}}

/* ── client portal ── */
.pbar{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center;justify-content:space-between;margin-bottom:18px}
.pbar p{margin:0;font-weight:600}
.ptabs{display:flex;flex-wrap:wrap;gap:6px;border-bottom:2px solid var(--ink);margin-bottom:22px}
.ptab{min-height:48px;padding:0 20px;background:transparent;border:0;border-bottom:4px solid transparent;margin-bottom:-2px;font:600 1rem var(--head);color:var(--sub-l);cursor:pointer}
.ptab[aria-selected="true"]{color:var(--text-l);border-bottom-color:var(--or-ink)}
.tscroll{overflow-x:auto;max-width:100%}
.ptable{width:100%;border-collapse:collapse;min-width:520px}
.ptable th,.ptable td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--rule-l);vertical-align:middle}
.ptable th{font:700 .85rem var(--body);color:var(--sub-l)}
.phist{padding-left:1.2em}.phist li{margin-bottom:8px}
.pre{white-space:pre-wrap;overflow-wrap:anywhere}
.linkbtn{background:none;border:0;padding:6px 0;font:600 1rem var(--body);color:var(--or-ink);text-decoration:underline;cursor:pointer;text-align:left}
.msg.notice{margin-bottom:16px}
#portal-app[hidden],#portal-off[hidden]{display:none}

[hidden]{display:none!important}
