/* Nexura version 2: components added on top of the Nexura Enterprise system (nexura.css). */

/* sections: explicit alternation only (no automatic striping) */
main > .sec:nth-child(even):not(.dark):not(.endbegin):not(.alt) { background: var(--surface); }
.sec.tight-top { padding-top: 48px; }
.cta-row { display: flex; flex-wrap: wrap; gap: 12px; }

/* hero glow on industry pages too */
.p-fintech .sec.hero::before, .p-healthcare .sec.hero::before, .p-solutions .sec.hero::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: radial-gradient(40% 70% at 90% 10%, color-mix(in srgb, var(--fin) 16%, transparent), transparent 70%); }
.p-healthcare .sec.hero::before { background: radial-gradient(40% 70% at 90% 10%, color-mix(in srgb, var(--hc) 16%, transparent), transparent 70%); }

/* home: the two focus areas */
.focus { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 44px; }
.focus__card { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: var(--text); background: var(--surface); border: 1px solid var(--line); border-top: 4px solid var(--ind); border-radius: var(--r-lg); padding: 32px; box-shadow: var(--sh-1); transition: box-shadow .25s, transform .25s var(--ease), border-color .25s; }
.focus__card:hover { box-shadow: var(--sh-2); transform: translateY(-3px); }
.focus__top { display: flex; justify-content: space-between; align-items: center; }
.focus__n { font: 600 40px/1 var(--display); color: var(--line-strong); letter-spacing: -.03em; }
.focus__name { font: 600 34px/1.1 var(--display); letter-spacing: -.03em; color: var(--ink); margin-top: 10px; }
.focus__sub { font-weight: 600; color: var(--ind-ink); }
.focus__body { font-size: 15px; }
.focus__go { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--line); display: flex; gap: 8px; font-weight: 600; color: var(--ind-ink); }
.focus__card:hover .arr { transform: translateX(4px); }

/* solution cards */
.sgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 16px; }
.sgrid--one { grid-template-columns: minmax(0, 360px); margin-top: 32px; }
.scard { display: flex; flex-direction: column; gap: 6px; text-decoration: none; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r); padding: 22px; box-shadow: var(--sh-1); transition: border-color .2s, box-shadow .2s, transform .2s var(--ease); }
.scard:hover { border-color: var(--ind); box-shadow: var(--sh-2); transform: translateY(-2px); }
.scard__name { font: 600 18px/1.3 var(--display); color: var(--ink); margin-top: 8px; }
.scard__short { font-size: 14px; color: var(--muted); }
.scard__go { margin-top: auto; padding-top: 12px; display: flex; gap: 6px; font: 600 14px var(--sans); color: var(--ind-ink); }
.scard:hover .arr { transform: translateX(4px); }
.pgroup + .pgroup { margin-top: 32px; }
.pgroup__h { display: flex; align-items: baseline; gap: 10px; font: 600 20px var(--display); color: var(--ink); margin: 36px 0 14px; }
.pgroup__h small { font: 600 12px var(--sans); color: var(--muted); background: var(--surface); border: 1px solid var(--line); border-radius: 999px; padding: 2px 8px; }

/* solutions index filter */
.filter { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 32px; }
.chip { font: 600 14px var(--sans); color: var(--text); background: var(--surface); border: 1px solid var(--line-strong); border-radius: 999px; padding: 9px 18px; cursor: pointer; transition: all .2s; }
.chip:hover { border-color: var(--primary); color: var(--primary); }
.chip[aria-pressed="true"] { background: var(--ink); border-color: var(--ink); color: #fff; }
.setname { display: flex; align-items: center; gap: 14px; font: 600 28px var(--display); letter-spacing: -.02em; color: var(--ink); }
.setname small { font: 500 14px var(--sans); color: var(--muted); }
[data-set] + [data-set] { margin-top: 72px; }

/* solution detail */
.crumbs { display: flex; flex-wrap: wrap; gap: 8px; font-size: 13px; color: var(--muted); margin-bottom: 28px; }
.crumbs a { color: var(--primary); text-decoration: none; } .crumbs a:hover { text-decoration: underline; }
.caps { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.cap { display: flex; gap: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r); padding: 22px; }
.cap h3 { font-size: 17px; } .cap p { margin-top: 4px; font-size: 15px; }
.integr { display: flex; flex-wrap: wrap; gap: 8px; }
.integr span { font: 500 14px var(--sans); color: var(--ink); background: var(--surface); border: 1px solid var(--line); border-radius: 8px; padding: 8px 14px; }
.stages li > span:last-child:empty { display: none; }
.aiband { display: grid; grid-template-columns: auto 1fr auto; gap: 20px; align-items: center; background: var(--night); color: var(--on-night-mute); border-radius: var(--r-lg); padding: 28px 32px; }
.aiband .h3 { color: var(--on-night); margin-top: 4px; } .aiband .eyebrow { color: #9CC8F2; } .aiband p:last-child { margin-top: 6px; max-width: 60ch; }
.aiband .more { color: #9CC8F2; white-space: nowrap; }
.ibadge--ai { background: linear-gradient(135deg, var(--fin), var(--hc)); }
.aiband + .sub { margin-top: 56px; }

/* contact: two-up rows and select */
.form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.form select { font: 400 16px var(--sans); color: var(--ink); padding: 12px 14px; background: var(--surface); border: 1px solid var(--line-strong); border-radius: var(--r-sm); letter-spacing: 0; }
.form select:focus { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(38, 110, 180, .18); }

/* footer columns */
.ftr__cols { display: grid; grid-template-columns: repeat(3, minmax(160px, auto)); gap: 32px; }
.ftr__cols > div { display: grid; gap: 8px; align-content: start; }
.ftr__cols .label { color: var(--muted); margin-bottom: 4px; }
.ftr__cols a { color: var(--ink); }

@media (max-width: 960px) {
  .focus, .caps, .form__row { grid-template-columns: 1fr; }
  .aiband { grid-template-columns: 1fr; }
  .ftr__cols { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) { .ftr__cols { grid-template-columns: 1fr; } }

/* careers */
.caps--3 { grid-template-columns: repeat(3, 1fr); margin-top: 40px; }
.empty { margin-top: 28px; max-width: 760px; background: var(--surface); border: 1px dashed var(--line-strong); border-radius: var(--r-lg); padding: 28px 32px; display: grid; gap: 14px; }
.empty__mail { color: var(--ink); }
.empty a { color: var(--primary); font-weight: 600; }

/* blog */
.pgrid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.pcard { display: flex; flex-direction: column; gap: 10px; text-decoration: none; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 28px; box-shadow: var(--sh-1); transition: box-shadow .25s, transform .25s var(--ease), border-color .25s; }
.pcard:hover { box-shadow: var(--sh-2); transform: translateY(-3px); border-color: var(--line-strong); }
.pcard .ibadge { width: 40px; height: 40px; }
.pcard { border-top: 3px solid var(--primary); }
.pcard__meta { font: 600 12px var(--sans); letter-spacing: .12em; color: var(--primary); }
.pcard__title { font: 600 24px/1.2 var(--display); letter-spacing: -.02em; color: var(--ink); }
.pcard__dek { font-size: 15px; color: var(--text); }
.pcard .scard__go { color: var(--primary); }
.pcard:hover .arr { transform: translateX(4px); }
.post { max-width: 760px; }
.post .display { font-size: clamp(36px, 4.6vw, 56px); }
.post__body { margin-top: 32px; padding-top: 32px; border-top: 1px solid var(--line); }
.post__body .body { font-size: 18px; line-height: 1.75; max-width: none; margin-top: 20px; }
.post__body .body:first-child { margin-top: 0; }
.post__by { margin-top: 32px; font: 600 14px var(--sans); color: var(--muted); }
@media (max-width: 960px) { .caps--3, .pgrid { grid-template-columns: 1fr; } }

/* ---------- Solutions dropdown (mega menu) ---------- */
.hdr__in { position: relative; }
.hdr__nav { align-self: stretch; align-items: center; }
.nav-dd { align-self: stretch; display: flex; align-items: center; }
.nav-dd__btn { display: inline-flex; align-items: center; gap: 4px; }
.dd-chev { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform .2s var(--ease); }
.nav-dd.open .dd-chev { transform: rotate(180deg); }
.nav-dd.open .nav-dd__btn { color: var(--ink); background: var(--canvas); }

.mega { position: absolute; top: 100%; left: var(--gutter); right: var(--gutter); z-index: 30; margin-top: -1px;
  background: var(--surface); border: 1px solid var(--line); border-radius: 0 0 var(--r-lg) var(--r-lg); box-shadow: 0 24px 48px -20px rgba(11, 26, 46, .28);
  opacity: 0; visibility: hidden; transform: translateY(-6px); transition: opacity .18s var(--ease), transform .18s var(--ease), visibility 0s linear .18s; }
.nav-dd.open .mega { opacity: 1; visibility: visible; transform: none; transition: opacity .18s var(--ease), transform .18s var(--ease), visibility 0s; }
.mega__in { display: grid; grid-template-columns: 2.1fr 1fr; }
.mega__col { padding: 26px 28px; }
.mega__col--hc { background: var(--canvas); border-left: 1px solid var(--line); }
.mega__h { display: flex; align-items: center; gap: 12px; padding-bottom: 16px; margin-bottom: 8px; border-bottom: 1px solid var(--line); }
.mega__h .ibadge { width: 36px; height: 36px; border-radius: 9px; }
.mega__h .ibadge svg { width: 18px; height: 18px; }
.mega__h > span { display: grid; }
.mega__h b { font: 600 17px var(--display); color: var(--ink); }
.mega__h small { font-size: 13px; color: var(--muted); }
.mega__h > a { margin-left: auto; display: inline-flex; gap: 6px; font: 600 13px var(--sans); color: var(--primary); text-decoration: none; }
.mega__h > a:hover .arr { transform: translateX(3px); }
.mega__groups { columns: 2; column-gap: 20px; }
.mega__group { break-inside: avoid; padding-top: 12px; }
.mega__col--hc .mega__group { padding-top: 0; }
.mega__g { font: 600 12px var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--faint); margin: 0 0 4px 10px; }
.mega__link { display: grid; grid-template-columns: 1fr; gap: 10px; align-items: start; padding: 8px 10px; border-radius: 10px; text-decoration: none; transition: background .15s; }
.mega__link:hover, .mega__link:focus-visible { background: color-mix(in srgb, var(--ind) 8%, transparent); }
.mega__txt { display: grid; gap: 2px; }
.mega__txt b { font: 600 14px/1.3 var(--sans); color: var(--ink); }
.mega__txt small { font-size: 13px; line-height: 1.4; color: var(--muted); }
.mega__col--hc .mega__group { margin-top: 8px; }
.mega__col--hc .mega__link:hover { background: var(--surface); }
.mega__ai { display: flex; gap: 12px; align-items: flex-start; margin-top: 18px; padding: 16px; border-radius: var(--r); background: var(--night); color: var(--on-night-mute); font-size: 13px; }
.mega__ai .ibadge { width: 32px; height: 32px; border-radius: 8px; }
.mega__ai .ibadge svg { width: 16px; height: 16px; }
.mega__ai b { display: block; font: 600 14px var(--display); color: var(--on-night); margin-bottom: 2px; }
.mega__foot { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 14px 28px; border-top: 1px solid var(--line); font-size: 13px; color: var(--muted); }
.mega__foot .more { font-size: 14px; }
@media (max-width: 960px) { .mega { display: none; } }
@media (prefers-reduced-motion: reduce) { .mega, .nav-dd.open .mega { transition: none; } }

/* ---------- Industry colour bands: Fintech = blue, Healthcare = green ---------- */
.sec.band { position: relative; background: var(--band-bg) !important; border-top: 1px solid var(--band-line); border-bottom: 1px solid var(--band-line); }
.band--fin { --ind: var(--fin); --ind-ink: var(--fin-ink); --band-bg: linear-gradient(180deg, #E6F0FA 0%, #F3F8FD 100%); --band-line: #CFE0F3; }
.band--hc  { --ind: var(--hc);  --ind-ink: var(--hc-ink);  --band-bg: linear-gradient(180deg, #E3F4EA 0%, #F2FAF5 100%); --band-line: #C6E6D3; }
.sec.band::before { content: ''; position: absolute; top: 0; left: 0; right: 0; height: 4px; background: var(--ind); }
.band + .band { border-top: 0; }
.band__head { display: flex; align-items: center; gap: 18px; padding-bottom: 24px; margin-bottom: 28px; border-bottom: 1px solid var(--band-line); }
.band__head .ibadge { width: 56px; height: 56px; border-radius: 14px; }
.band__head .ibadge svg { width: 28px; height: 28px; }
.band__n { font: 700 12px var(--sans); letter-spacing: .16em; color: var(--ind-ink); }
.band__title { font: 600 clamp(28px, 3vw, 38px)/1.1 var(--display); letter-spacing: -.03em; color: var(--ink); margin-top: 2px; }
.band__sub { color: var(--text); margin-top: 2px; }
.band__over { margin-left: auto; display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 10px; background: var(--ind); color: #fff; font: 600 14px var(--sans); text-decoration: none; white-space: nowrap; transition: filter .2s; }
.band__over:hover { filter: brightness(.92); }
.band__over:hover .arr { transform: translateX(3px); }
.band .scard { border-color: var(--band-line); }
.band .scard:hover { border-color: var(--ind); }
.band .pgroup__h { color: var(--ind-ink); }
.band .pgroup__h small { border-color: var(--band-line); color: var(--ind-ink); }
.band .flows, .band .cap { border-color: var(--band-line); }
.band .sub, .band .eyebrow { color: var(--ind-ink); }
.band .stages li::before { background: var(--band-line); }
.band__foot { margin-top: 32px; }
.sec.sol-intro { padding-bottom: 40px; }
.sec.band[data-set] { padding-block: 64px; }
@media (max-width: 700px) { .band__head { flex-wrap: wrap; } .band__over { margin-left: 0; } }

/* ---------- Solutions dropdown: blue fintech side, green healthcare side ---------- */
.mega__in { gap: 0; }
.mega__col--fin { background: #F1F6FC; }
.mega__col--hc { background: #EFF8F2; border-left: 1px solid #D5EBDD; }
.mega__col .mega__h { margin: -26px -28px 10px; padding: 18px 28px; border-bottom: 0; }
.mega__col--fin .mega__h { background: var(--fin); }
.mega__col--hc .mega__h { background: var(--hc); }
.mega__col .mega__h b { color: #fff; }
.mega__col .mega__h small { color: rgba(255, 255, 255, .82); }
.mega__col .mega__h .ibadge { background: rgba(255, 255, 255, .18); color: #fff; }
.mega__col .mega__h > a { color: #fff; background: rgba(255, 255, 255, .16); padding: 6px 12px; border-radius: 8px; }
.mega__col .mega__h > a:hover { background: rgba(255, 255, 255, .26); }
.mega__col--fin .mega__g { color: var(--fin-ink); }
.mega__col .mega__link:hover, .mega__col .mega__link:focus-visible { background: #fff; box-shadow: var(--sh-1); }
.mega__col--hc .mega__group { margin-top: 14px; }
.sec.band[data-set] + .sec.band[data-set] { margin-top: 0; }
.mega__col .mega__h { min-height: 78px; box-sizing: border-box; }

/* hero headline: each industry in its own colour */
em.em-fin { color: var(--fin); background: linear-gradient(transparent 64%, rgba(38, 110, 180, .16) 64%); }
em.em-hc { color: var(--hc); background: linear-gradient(transparent 64%, rgba(3, 154, 73, .16) 64%); }

/* hero: "AI Integration" is the highlighted phrase; the industries keep their colours */
em.em-ai { position: relative; display: inline-block; padding: 0 .14em; margin-right: .04em; background: linear-gradient(90deg, var(--fin) 0%, var(--hc) 25%, var(--pd) 50%, var(--risk) 75%, var(--fin) 100%) 0 0 / 200% 100% repeat-x; -webkit-background-clip: text; background-clip: text; color: transparent; animation: aiFlow 8s linear infinite; }
em.em-ai::before { content: ''; position: absolute; inset: 8% -.02em 4%; z-index: -2; border-radius: 14px; background: linear-gradient(92deg, rgba(38, 110, 180, .12), rgba(3, 154, 73, .12)); box-shadow: inset 0 0 0 1.5px rgba(38, 110, 180, .18); transform-origin: left center; animation: aiSweep .9s var(--ease) .35s both; }
/* soft glint across the pill, behind the letters */
em.em-ai::after { content: ''; position: absolute; inset: 8% -.02em 4%; z-index: -1; border-radius: 14px; pointer-events: none; background: linear-gradient(105deg, transparent 35%, rgba(255, 255, 255, .85) 50%, transparent 65%) no-repeat -150% 0 / 60% 100%; animation: aiGlint 6s ease-in-out 1.4s infinite; }
/* the 4 logo colours travel left to right; -200% = one full tile, so the loop is seamless */
@keyframes aiFlow { to { background-position: -200% 0; } }
@keyframes aiSweep { from { transform: scaleX(0); opacity: 0; } 40% { opacity: 1; } to { transform: scaleX(1); opacity: 1; } }
@keyframes aiGlint { 0% { background-position: -150% 0; } 30%, 100% { background-position: 250% 0; } }
.played em.em-ai::before { animation: none; }
@media (prefers-reduced-motion: reduce) { em.em-ai, em.em-ai::before, em.em-ai::after { animation: none; } }
.display .t-fin { color: var(--fin); } .display .t-hc { color: var(--hc); }

/* ================= What we do (easy-read layout) ================= */
.wwd-hero { padding-bottom: var(--sec) !important; }
.wwd-hero .lede { font-size: 20px; max-width: 56ch; }

/* overview cards */
.ogrid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 44px; }
.ocard { display: flex; flex-direction: column; gap: 10px; text-decoration: none; color: var(--text); background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 28px; box-shadow: var(--sh-1); transition: transform .25s var(--ease), box-shadow .25s, border-color .25s; position: relative; }
.ocard:hover { transform: translateY(-3px); box-shadow: var(--sh-2); border-color: var(--primary); }
.oicon { display: inline-grid; place-items: center; width: 48px; height: 48px; border-radius: 12px; background: var(--primary-50); color: var(--primary); flex-shrink: 0; }
.oicon svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.ocard__n { position: absolute; top: 24px; right: 26px; font: 600 32px/1 var(--display); color: var(--line-strong); }
.ocard__name { font: 600 21px/1.25 var(--display); letter-spacing: -.015em; color: var(--ink); margin-top: 8px; }
.ocard__line { font-size: 15px; line-height: 1.6; }
.ocard__best { margin-top: 4px; padding: 12px 14px; border-radius: 10px; background: var(--canvas); font-size: 14px; color: var(--ink); }
.ocard__best b { display: block; font: 700 12px var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--primary-600); margin-bottom: 2px; }
.ocard__go { margin-top: auto; padding-top: 8px; display: flex; gap: 6px; font-weight: 600; color: var(--primary); }
.ocard:hover .arr { transform: translateX(4px); }

/* sticky tab bar */
.subnav { position: sticky; top: 76px; z-index: 15; background: rgba(255, 255, 255, .94); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.subnav__in { display: flex; align-items: center; gap: 6px; height: 60px; overflow-x: auto; }
.subnav__in > a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border-radius: 999px; font: 600 15px var(--sans); color: var(--text); text-decoration: none; white-space: nowrap; transition: background .2s, color .2s; }
.subnav__in > a span { font: 700 12px var(--sans); color: var(--faint); }
.subnav__in > a:hover { background: var(--canvas); color: var(--ink); }
.subnav__in > a.is-active { background: var(--primary); color: #fff; }
.subnav__in > a.is-active span { color: rgba(255, 255, 255, .7); }
.subnav__in > .subnav__cta { margin-left: auto; color: var(--primary); }
.subnav__cta:hover .arr { transform: translateX(3px); }
.p-what-we-do { scroll-padding-top: 150px; }
html:has(.p-what-we-do) { scroll-padding-top: 150px; }

/* one offering */
.offer-sec { padding-block: clamp(64px, 8vw, 104px); }
.offer { display: grid; grid-template-columns: minmax(300px, 400px) 1fr; gap: clamp(32px, 5vw, 72px); align-items: start; }
.offer__side { position: sticky; top: 156px; }
.offer__card { display: grid; gap: 14px; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); padding: 28px; box-shadow: var(--sh-2); }
.offer__card .btn { justify-self: start; margin-top: 6px; }
.offer__n { font: 700 12px var(--sans); letter-spacing: .16em; color: var(--primary); margin-top: 4px; }
.offer__name { font: 600 26px/1.2 var(--display); letter-spacing: -.02em; color: var(--ink); }
.offer__line { font-size: 16px; line-height: 1.6; color: var(--text); }
.offer__fit { display: grid; grid-template-columns: 28px 1fr; gap: 12px; padding: 14px; border-radius: 12px; font-size: 14px; line-height: 1.55; color: var(--ink); }
.offer__fit b { display: block; font: 700 12px var(--sans); letter-spacing: .12em; text-transform: uppercase; margin-bottom: 2px; }
.offer__fit--yes { background: var(--primary-50); } .offer__fit--yes b { color: var(--primary-600); }
.offer__fit--no { background: var(--risk-50); } .offer__fit--no b { color: var(--risk-ink); }
.offer__fit--no .qual__ico { background: #fff; color: var(--risk-ink); }
.offer__fit--yes .qual__ico { background: #fff; }
.offer__h { display: flex; align-items: baseline; gap: 10px; font: 600 22px var(--display); letter-spacing: -.015em; color: var(--ink); margin-bottom: 16px; }
.offer__h small { font: 500 14px var(--sans); color: var(--muted); }
.offer__h + .offer__why { margin-top: 0; }
.offer__why { display: grid; gap: 16px; max-width: 62ch; padding-left: 20px; border-left: 3px solid var(--primary); margin-bottom: 48px; }
.offer__why p { font-size: 18px; line-height: 1.7; color: var(--text); }
.offer__why p:first-child { font: 600 21px/1.45 var(--display); color: var(--ink); letter-spacing: -.01em; }

/* workflow cards with industry tags */
.wgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.wcard { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r); padding: 22px; transition: border-color .2s, box-shadow .2s; }
.wcard:hover { border-color: var(--line-strong); box-shadow: var(--sh-1); }
.wcard h4 { font: 600 17px/1.3 var(--display); color: var(--ink); margin-top: 12px; }
.wcard p { font-size: 15px; line-height: 1.6; margin-top: 6px; }
.itag { display: inline-flex; align-items: center; gap: 6px; font: 700 12px var(--sans); letter-spacing: .06em; border-radius: 999px; padding: 4px 10px; }
.itag::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.itag--fin { color: var(--fin-ink); background: var(--fin-50); }
.itag--hc { color: var(--hc-ink); background: var(--hc-50); }
.itag--both { color: var(--ink); background: linear-gradient(90deg, var(--fin-50), var(--hc-50)); }
.itag--both::before { background: linear-gradient(90deg, var(--fin), var(--hc)); }

/* at a glance */
.glance-wrap { margin-top: 36px; overflow-x: auto; border: 1px solid var(--line); border-radius: var(--r-lg); background: var(--surface); box-shadow: var(--sh-1); }
.glance { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 15px; }
.glance th, .glance td { text-align: left; vertical-align: top; padding: 20px 22px; border-top: 1px solid var(--line); line-height: 1.55; }
.glance thead th { border-top: 0; font: 700 12px var(--sans); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); background: var(--canvas); }
.glance tbody th a { display: flex; gap: 12px; align-items: center; text-decoration: none; }
.glance tbody th .oicon { width: 40px; height: 40px; border-radius: 10px; }
.glance tbody th .oicon svg { width: 20px; height: 20px; }
.glance tbody th span { display: grid; font: 600 16px/1.3 var(--display); color: var(--ink); }
.glance tbody th small { font: 700 12px var(--sans); color: var(--primary); letter-spacing: .1em; }
.glance tbody th a:hover span { color: var(--primary); }
.glance td b { color: var(--ink); font-weight: 600; }
.glance tbody tr:hover td, .glance tbody tr:hover th { background: #FAFBFD; }

/* discipline strip */
.discipline-sec { padding-block: 56px !important; }
.discipline { display: grid; gap: 20px; }
.discipline__h { font: 700 12px var(--sans); letter-spacing: .16em; text-transform: uppercase; color: var(--muted); text-align: center; }
.discipline__row { display: grid; grid-template-columns: repeat(3, 1fr); background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); }
.discipline__row > div { display: flex; gap: 14px; align-items: center; padding: 22px 26px; }
.discipline__row > div + div { border-left: 1px solid var(--line); }
.discipline__row p { font-size: 15px; color: var(--muted); }
.discipline__row b { display: block; font: 600 18px var(--display); color: var(--ink); }

@media (max-width: 1000px) {
  .ogrid, .offer, .wgrid, .discipline__row { grid-template-columns: 1fr; }
  .offer__side { position: static; }
  .discipline__row > div + div { border-left: 0; border-top: 1px solid var(--line); }
  .subnav__cta { display: none !important; }
}

/* ================= Mobile menu (below 960px) ================= */
.mnav-btn { display: none; place-items: center; align-content: center; gap: 5px; width: 44px; height: 44px; margin-left: 8px; border: 1px solid var(--line-strong); border-radius: 10px; background: var(--surface); cursor: pointer; flex-shrink: 0; }
.mnav-btn span { display: block; width: 20px; height: 2px; border-radius: 2px; background: var(--ink); transition: transform .25s var(--ease), opacity .2s; }
.mnav-btn[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.mnav-btn[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.mnav-btn[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
.mnav { position: fixed; left: 0; right: 0; top: var(--hdr-h, 76px); bottom: 0; z-index: 40; overflow-y: auto; overscroll-behavior: contain; background: var(--surface); border-top: 1px solid var(--line); padding: 8px var(--gutter) 32px; display: flex; flex-direction: column; gap: 24px; animation: mnavIn .22s var(--ease); }
@keyframes mnavIn { from { opacity: 0; transform: translateY(-8px); } }
.mnav__nav { display: grid; }
.mnav__link, .mnav__sol > summary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; padding: 0 4px; border-bottom: 1px solid var(--line); font: 600 19px var(--display); color: var(--ink); text-decoration: none; cursor: pointer; list-style: none; }
.mnav__sol > summary::-webkit-details-marker { display: none; }
.mnav__link[aria-current], .mnav__sol > summary[aria-current] { color: var(--primary); }
.mnav__sol[open] > summary .dd-chev { transform: rotate(180deg); }
.mnav__sol .dd-chev { width: 20px; height: 20px; }
.mnav__group { margin-top: 12px; padding: 12px; border-radius: var(--r); }
.mnav__group--fin { background: #F1F6FC; border-top: 3px solid var(--fin); }
.mnav__group--hc { background: #EFF8F2; border-top: 3px solid var(--hc); }
.mnav__group > p { font: 700 12px var(--sans); letter-spacing: .14em; text-transform: uppercase; padding: 4px 6px 8px; }
.mnav__group--fin > p { color: var(--fin-ink); } .mnav__group--hc > p { color: var(--hc-ink); }
.mnav__sol-link { display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 6px; border-radius: 8px; font-size: 15px; font-weight: 500; color: var(--ink); text-decoration: none; }
.mnav__sol-link:active, .mnav__sol-link:hover { background: #fff; }
.mnav__over { display: inline-flex; min-height: 40px; align-items: center; padding: 0 6px; font: 600 14px var(--sans); text-decoration: none; }
.mnav__group--fin .mnav__over { color: var(--fin-ink); } .mnav__group--hc .mnav__over { color: var(--hc-ink); }
.mnav__all { display: flex; align-items: center; min-height: 48px; padding: 0 4px; margin-bottom: 8px; font-weight: 600; color: var(--primary); text-decoration: none; }
.mnav__foot { display: grid; gap: 14px; margin-top: auto; }
.mnav__foot .btn { justify-content: space-between; width: 100%; }
.mnav__foot p { font-size: 14px; color: var(--muted); }
.mnav__foot a:not(.btn) { color: var(--primary); font-weight: 600; }
body.mnav-open { overflow: hidden; }

@media (max-width: 960px) {
  .mnav-btn { display: grid; }
  .btn--hdr { margin-left: auto; }
}
@media (max-width: 600px) {
  .btn--hdr { display: none; }
  .mnav-btn { margin-left: auto; }
  .hdr__in { height: 68px; }
  .mnav { top: 68px; }
}
@media (min-width: 961px) { .mnav { display: none !important; } }

/* responsive fixes (mobile check, 5 Oct 2026) */
.contact > *, .form > *, .form__row > * { min-width: 0; }
.form__row { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
.form input, .form textarea, .form select { width: 100%; min-width: 0; max-width: 100%; }
@media (max-width: 960px) { .form__row { grid-template-columns: minmax(0, 1fr); } }

/* the closed mobile menu must stay hidden (display:flex above would otherwise override [hidden]) */
.mnav[hidden] { display: none !important; }

/* ================= Process-driven Enterprises = Nexura yellow (5 Oct 2026) ================= */
.band--pd { --ind: var(--pd); --ind-ink: var(--pd-ink); --band-bg: linear-gradient(180deg, #FEF3D9 0%, #FFFAEE 100%); --band-line: #F3DDA6; }
.band--pd .band__over { color: var(--ink); }
.mega__col--pd { background: #FFF9EC; border-left: 1px solid #F3E2B8; }
.mega__col--pd .mega__h { background: var(--pd); }
.mega__col--pd .mega__h b, .mega__col--pd .mega__h small, .mega__col--pd .mega__h > a { color: var(--ink); }
.mega__col--pd .mega__h .ibadge { background: rgba(255, 255, 255, .45); color: var(--ink); }
.mega__col--pd .mega__group { margin-top: 14px; }
.mnav__group--pd { background: #FFF9EC; border-top: 3px solid var(--pd); }
.mnav__group--pd > p, .mnav__group--pd .mnav__over { color: var(--pd-ink); }
.itag--pd { color: var(--pd-ink); background: var(--pd-50); }
.itag--both { background: linear-gradient(90deg, var(--fin-50), var(--pd-50)); }
.itag--both::before { background: linear-gradient(90deg, var(--fin), var(--pd)); }
.display .t-pd { color: #B07800; }           /* darker logo-yellow so large text stays readable on white */
.p-process-driven .sec.hero::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; background: radial-gradient(40% 70% at 90% 10%, rgba(248, 178, 26, .18), transparent 70%); }
.display--hero { font-size: clamp(38px, 5vw, 64px); max-width: 21ch; }
.p-process-driven .display em, .band--pd em { color: #B07800; background: linear-gradient(transparent 64%, rgba(248, 178, 26, .28) 64%); }
.p-process-driven .eyebrow, .p-process-driven .counter + .eyebrow { color: var(--pd-ink); }
.h1 + .stages { margin-top: 40px; }

/* ================= Typeface: IBM Plex Sans (user choice, 5 Oct 2026) =================
   One family for headings and text: enterprise/banking-grade. Self-hosted (OFL); Inter stays as fallback. */
@font-face { font-family: 'IBM Plex Sans'; src: url(../fonts/IBMPlexSans-400.woff2) format('woff2'); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: 'IBM Plex Sans'; src: url(../fonts/IBMPlexSans-500.woff2) format('woff2'); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: 'IBM Plex Sans'; src: url(../fonts/IBMPlexSans-600.woff2) format('woff2'); font-weight: 600; font-style: normal; font-display: swap; }
@font-face { font-family: 'IBM Plex Sans'; src: url(../fonts/IBMPlexSans-700.woff2) format('woff2'); font-weight: 700; font-style: normal; font-display: swap; }
:root {
  --sans: 'IBM Plex Sans', 'Inter', 'Helvetica Neue', Arial, sans-serif;
  --display: 'IBM Plex Sans', 'Inter', 'Helvetica Neue', Arial, sans-serif;
  --label: 'IBM Plex Sans', 'Inter', 'Helvetica Neue', Arial, sans-serif;
}
/* Plex is wider than Outfit: relax the tight display tracking so headlines don't crowd */
.display { letter-spacing: -.022em; line-height: 1.08; }
.display--hero { font-size: clamp(36px, 4.6vw, 60px); max-width: 22ch; }
.h1 { letter-spacing: -.018em; line-height: 1.14; }
h3, .h3, .focus__name, .band__title, .engage__verb, .offer__name, .pcard__title, .setname { letter-spacing: -.012em; }
.stat, .rules__n, .focus__n, .ocard__n { letter-spacing: -.02em; }
.eyebrow, .label, .counter, .tag { letter-spacing: .1em; }

/* ================= Responsive audit fixes (5 Oct 2026) ================= */
/* long bracketed labels may wrap on narrow screens instead of pushing past the edge */
.legal > *, .clause { min-width: 0; }
@media (max-width: 520px) { .tag { white-space: normal; flex-wrap: wrap; } }

/* What we do tab bar sits flush under the header at every size */
@media (max-width: 600px) { .subnav { top: 68px; } html:has(.p-what-we-do) { scroll-padding-top: 136px; } }

/* touch screens: every standalone link or control at least 44px tall */
@media (max-width: 960px), (pointer: coarse) {
  .ftr__cols > div { gap: 0; }
  .ftr__cols a, .ftr__util a { display: flex; align-items: center; min-height: 44px; }
  .ftr__util { gap: 4px 20px; }
  .ftr__bot .more { min-height: 44px; }
  .crumbs { gap: 0 4px; align-items: center; }
  .crumbs a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 4px; }
  .more, .exp summary { min-height: 44px; }
  .subnav__in > a, .legal__toc a, .chip, .band__over, .jump a { min-height: 44px; }
  .legal__toc a { display: flex; align-items: center; }
  .brand { padding-block: 3px; }
}
/* narrow laptops (961–1100px): keep every menu item on one line */
.hdr__nav > a, .nav-dd__btn, .btn--hdr { white-space: nowrap; }
@media (max-width: 1100px) and (min-width: 961px) {
  .hdr__in { gap: 20px; }
  .hdr__nav { gap: 0; }
  .hdr__nav > a, .nav-dd__btn { padding: 8px 9px; font-size: 14px; }
  .brand img { height: 40px; }
}
/* Solutions dropdown never runs past the bottom of the screen */
.mega { max-height: calc(100vh - 96px); overflow-y: auto; overscroll-behavior: contain; }
@media (max-width: 1100px) { .mega__txt small { display: none; } .mega__link { padding: 7px 10px; align-items: center; } .mega__ai { display: none; } }
@media (max-height: 760px) { .mega__txt small { display: none; } .mega__ai { display: none; } }
/* section rhythm: 40px each side (80px between sections) on large screens, 32px minimum */
:root { --sec: clamp(32px, 3vw, 40px); }
.offer-sec { padding-block: var(--sec); }
.sec.hero { padding-bottom: var(--sec); }
.sec.tight, .sec.tight-top, .sec.band[data-set], .discipline-sec { padding-block: var(--sec) !important; }
/* tinted sections (grey, industry bands, dark) get more room inside their background */
:root { --sec-tint: clamp(48px, 4.5vw, 64px); }
.sec.alt, .sec.band, .sec.band[data-set], .sec.dark, .sec.endbegin { padding-block: var(--sec-tint) !important; }

/* ---------- Solutions dropdown: refined look (floating panel, light headers, clearer hover) ---------- */
.mega__col--fin { --c: var(--fin); --c-ink: var(--fin-ink); --c-50: var(--fin-50); }
.mega__col--pd  { --c: var(--pd);  --c-ink: var(--pd-ink);  --c-50: var(--pd-50); }
.mega__col--hc  { --c: var(--hc);  --c-ink: var(--hc-ink);  --c-50: var(--hc-50); }

/* panel floats a little below the header, fully rounded, softer layered shadow */
.mega { margin-top: 8px; border-radius: var(--r-lg); border-color: #DCE3EC; overflow-x: hidden;
  box-shadow: 0 1px 2px rgba(11, 26, 46, .05), 0 12px 24px -10px rgba(11, 26, 46, .14), 0 36px 72px -28px rgba(11, 26, 46, .32);
  transform: translateY(-8px) scale(.985); transform-origin: top center; }
.nav-dd.open::after { content: ''; position: absolute; left: var(--gutter); right: var(--gutter); top: 100%; height: 10px; }  /* hover bridge over the gap */
.nav-dd.open .nav-dd__btn { color: var(--primary); background: var(--primary-50); }
.mega__in { grid-template-columns: 2.15fr 1fr; }

/* column headers: white strip with a coloured top rule instead of a solid colour block */
.mega__col { padding: 22px 24px; }
.mega .mega__col .mega__h { position: relative; margin: -22px -24px 14px; padding: 18px 24px 16px; min-height: 0;
  background: rgba(255, 255, 255, .78); border-bottom: 1px solid color-mix(in srgb, var(--c) 18%, transparent); }
.mega .mega__col .mega__h::before { content: ''; position: absolute; left: 0; right: 0; top: 0; height: 3px; background: var(--c); }
.mega .mega__col .mega__h b { color: var(--ink); font-size: 16px; white-space: nowrap; }
.mega .mega__col .mega__h small { color: var(--muted); font-size: 12.5px; }
.mega .mega__col .mega__h .ibadge { background: var(--c); color: #fff; }
.mega .mega__col--pd .mega__h .ibadge { color: var(--ink); }
.mega .mega__col .mega__h > a { flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; gap: 0; font-size: 0; color: var(--c-ink); background: #fff; border: 1px solid color-mix(in srgb, var(--c) 32%, transparent); border-radius: 8px; transition: background .15s, border-color .15s; }
.mega .mega__col .mega__h > a .arr { font-size: 15px; line-height: 1; }  /* 'Overview' text stays as the link's accessible name */
.mega .mega__col .mega__h > a:hover { background: var(--c-50); border-color: var(--c); }

/* group labels with a hairline */
.mega__g { display: flex; align-items: center; gap: 10px; margin: 4px 10px 6px; font-size: 11px; }
.mega__g::after { content: ''; flex: 1; height: 1px; background: color-mix(in srgb, var(--fin) 16%, transparent); }

/* links: uniform code chips, title tints on hover, arrow slides in */
.mega__link { grid-template-columns: 68px 1fr; gap: 12px; padding: 9px 10px; transition: background .15s, box-shadow .15s; }
.mega__txt b::after { content: '\2192'; display: inline-block; margin-left: 6px; color: var(--ind-ink); opacity: 0; transform: translateX(-4px); transition: opacity .15s, transform .15s; }
.mega__link:hover .mega__txt b::after, .mega__link:focus-visible .mega__txt b::after { opacity: 1; transform: none; }
.mega__txt b { transition: color .15s; }
.mega__link:hover .mega__txt b, .mega__link:focus-visible .mega__txt b { color: var(--ind-ink); }
.mega .mega__col .mega__link:focus-visible { outline: 2px solid var(--ind); outline-offset: -2px; }

/* footer: quieter text, "View all solutions" as a small button */
.mega__foot { padding: 12px 24px; background: #fff; }
.mega__foot .more { padding: 7px 14px; border-radius: 8px; background: var(--primary-50); color: var(--primary); font-weight: 600; font-size: 13px; text-decoration: none; transition: background .15s; }
.mega__foot .more:hover { background: color-mix(in srgb, var(--primary) 16%, #fff); }

/* items settle in just after the panel opens */
@keyframes megaItem { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.nav-dd.open .mega__link, .nav-dd.open .mega__ai { animation: megaItem .26s var(--ease) both; }
.nav-dd.open .mega__link:nth-child(2) { animation-delay: .02s; } .nav-dd.open .mega__link:nth-child(3) { animation-delay: .04s; }
.nav-dd.open .mega__link:nth-child(4) { animation-delay: .06s; } .nav-dd.open .mega__link:nth-child(n+5) { animation-delay: .08s; }
@media (prefers-reduced-motion: reduce) { .nav-dd.open .mega__link, .nav-dd.open .mega__ai { animation: none; } .mega { transform: none; } }

/* ---------- Styled select (contact form "Solution"): button + listbox, built by nexura.js ---------- */
.sel { position: relative; letter-spacing: 0; font-weight: 400; }
.sel, .sel--fin { --sel-c: var(--fin); --sel-ink: var(--fin-ink); --sel-50: var(--primary-50); --sel-on: #fff; }   /* per-industry colours */
.sel--pd { --sel-c: var(--pd); --sel-ink: var(--pd-ink); --sel-50: var(--pd-50); --sel-on: var(--ink); }
.sel--hc { --sel-c: var(--hc); --sel-ink: var(--hc-ink); --sel-50: var(--hc-50); --sel-on: #fff; }
.sel__native { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; pointer-events: none; }
.sel__btn { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 50px; padding: 9px 12px 9px 14px; text-align: left; cursor: pointer;
  font: 400 16px var(--sans); color: var(--ink); background: var(--surface); border: 1px solid var(--line-strong); border-radius: var(--r-sm); transition: border-color .2s, box-shadow .2s; }
.sel__btn:hover { border-color: color-mix(in srgb, var(--primary) 45%, var(--line-strong)); }
.sel__btn:focus-visible, .sel.open .sel__btn { outline: none; border-color: var(--primary); box-shadow: 0 0 0 3px rgba(38, 110, 180, .18); }
.sel__val { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; }
.sel__val .sel__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sel__name--empty { color: var(--muted); }
.sel__chev { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 6px; color: var(--muted); transition: transform .2s var(--ease), background .2s, color .2s; }
.sel__chev svg, .sel__tick svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.sel.open .sel__chev { transform: rotate(180deg); background: var(--primary-50); color: var(--primary); }


.sel__list { position: absolute; z-index: 20; left: 0; right: 0; top: calc(100% + 6px); max-height: min(340px, 52vh); overflow-y: auto; overscroll-behavior: contain;
  padding: 6px; background: var(--surface); border: 1px solid #DCE3EC; border-radius: var(--r);
  box-shadow: 0 1px 2px rgba(11, 26, 46, .05), 0 12px 24px -10px rgba(11, 26, 46, .16), 0 28px 56px -24px rgba(11, 26, 46, .3);
  animation: selIn .16s var(--ease) both; outline: none; }
.sel__list[hidden] { display: none; }
.sel.up .sel__list { top: auto; bottom: calc(100% + 6px); animation-name: selInUp; }
@keyframes selIn { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
@keyframes selInUp { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.sel__g { position: sticky; top: -6px; z-index: 1; display: flex; align-items: center; gap: 10px; margin: 0 -6px; padding: 10px 16px 6px;
  background: var(--surface); font: 600 11px var(--sans); letter-spacing: .14em; text-transform: uppercase; color: var(--sel-ink); }
.sel__g::after { content: ''; flex: 1; height: 1px; background: color-mix(in srgb, var(--sel-c) 22%, transparent); }
.sel__opt { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 8px; cursor: pointer; font: 400 15px/1.35 var(--sans); letter-spacing: 0; color: var(--ink); }
.sel__opt .sel__name { flex: 1; min-width: 0; }
.sel__opt.is-active { background: var(--sel-50); }
.sel__opt[aria-selected="true"] { font-weight: 600; color: var(--sel-ink); }
.sel__tick { display: grid; place-items: center; width: 20px; color: var(--primary); opacity: 0; }
.sel__opt[aria-selected="true"] .sel__tick { opacity: 1; }
.sel__list:focus-visible .sel__opt.is-active { box-shadow: inset 0 0 0 2px color-mix(in srgb, var(--primary) 45%, transparent); }
@media (prefers-reduced-motion: reduce) { .sel__list { animation: none; } .sel__chev { transition: none; } }
@media (max-width: 560px) { .sel__opt { font-size: 14px; } }

/* ---------- Process-driven applications: one anchor each (#app-plant ...), linked from menus, footer and cards ---------- */
.flows--apps li { position: relative; scroll-margin-top: 20px; }  /* on top of the 96px header offset */
/* the application a visitor jumped to is briefly highlighted */
.flows--apps li:target, .flows--apps li.is-target { margin-inline: -22px; padding-inline: 22px; background: var(--pd-50); animation: appFlash 2.4s var(--ease) both; }
@keyframes appFlash { 0%, 55% { box-shadow: inset 3px 0 0 var(--pd); } 100% { box-shadow: inset 3px 0 0 transparent; } }
@media (prefers-reduced-motion: reduce) { .flows--apps li:target, .flows--apps li.is-target { animation: none; box-shadow: inset 3px 0 0 var(--pd); } }
/* contact: let the Solution list spill past the hero section instead of being clipped by it */
.p-contact .sec.hero { overflow: visible; }
/* wider site: content up to 1536px (was 1200px); paragraphs keep their own line-length limits */
:root { --max: 1536px; }

/* ---------- Code chips: Solutions menus only (header dropdown + mobile Solutions list) ---------- */
.mega .mega__col .mega__acr { justify-self: stretch; align-self: start; margin-top: 1px; text-align: center; white-space: nowrap; font: 700 11px/1 var(--sans); letter-spacing: .04em;
  color: var(--ind-ink); background: #fff; border: 1px solid color-mix(in srgb, var(--ind) 24%, transparent); border-radius: 6px; padding: 6px 3px;
  transition: background .15s, color .15s, border-color .15s; }
.mega .mega__col .mega__link:hover .mega__acr, .mega .mega__col .mega__link:focus-visible .mega__acr { background: var(--ind); border-color: var(--ind); color: #fff; }
.mega .mega__col--pd .mega__link:hover .mega__acr, .mega .mega__col--pd .mega__link:focus-visible .mega__acr { color: var(--ink); }
@media (max-width: 1100px) { .mega .mega__col .mega__acr { align-self: center; margin-top: 0; } }
.mnav__acr { flex: 0 0 80px; text-align: center; white-space: nowrap; font: 700 11.5px/1 var(--sans); letter-spacing: .03em; color: var(--ind-ink);
  background: #fff; border: 1px solid color-mix(in srgb, var(--ind) 25%, transparent); border-radius: 6px; padding: 5px 6px; }
