:root {
    --itsc-ink: #101523;
    --itsc-ink-2: #171e2e;
    --itsc-paper: #f4f2eb;
    --itsc-white: #fffefa;
    --itsc-muted: #667085;
    --itsc-line: rgba(16, 21, 35, .14);
    --itsc-line-light: rgba(255, 255, 255, .15);
    --itsc-signal: #96ff69;
    --itsc-blue: #506dff;
    --itsc-cyan: #4fd8ff;
    --itsc-max: 1320px;
    --itsc-pad: clamp(20px, 4vw, 56px);
    --itsc-radius: 4px;
    --itsc-shadow: 0 24px 70px rgba(16, 21, 35, .11);
    --itsc-font: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --itsc-font-ar: Tahoma, Arial, "Noto Sans Arabic", sans-serif;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 112px; }
body.itsc-theme {
    margin: 0;
    background: var(--itsc-paper);
    color: var(--itsc-ink);
    font-family: var(--itsc-font);
    font-size: 16px;
    line-height: 1.65;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}
body.itsc-ui-ar { font-family: var(--itsc-font-ar); }
body.admin-bar .itsc-header { top: 32px; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--itsc-signal); color: var(--itsc-ink); }
.itsc-container { width: min(100% - (var(--itsc-pad) * 2), var(--itsc-max)); margin-inline: auto; }
.itsc-main { display: block; overflow: clip; }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.itsc-skip { position: fixed; inset-block-start: 8px; inset-inline-start: 8px; z-index: 100000; transform: translateY(-150%); padding: 10px 14px; background: var(--itsc-signal); color: var(--itsc-ink); font-weight: 800; }
.itsc-skip:focus { transform: none; }
:focus-visible { outline: 3px solid var(--itsc-blue); outline-offset: 3px; }

/* Header */
.itsc-header { position: sticky; inset-block-start: 0; z-index: 1000; background: rgba(244, 242, 235, .94); backdrop-filter: blur(18px); border-block-end: 1px solid var(--itsc-line); }
.itsc-header__signal { background: var(--itsc-ink); color: #fff; font-size: 10px; line-height: 1; letter-spacing: .14em; text-transform: uppercase; }
.itsc-header__signal .itsc-container { min-height: 28px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.itsc-header__signal span { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.itsc-header__signal i, .itsc-availability i { width: 7px; height: 7px; border-radius: 50%; background: var(--itsc-signal); box-shadow: 0 0 0 4px rgba(150, 255, 105, .13); }
.itsc-header__main { min-height: 80px; display: flex; align-items: center; }
.itsc-header__row { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.itsc-brand { display: inline-flex; align-items: center; gap: 12px; flex: 0 0 auto; }
.itsc-brand img { display: block; width: 46px; height: 46px; }
.itsc-brand span { display: grid; gap: 1px; }
.itsc-brand strong { font-size: 15px; line-height: 1.2; letter-spacing: -.02em; }
.itsc-brand small { color: var(--itsc-muted); font-size: 8px; font-weight: 800; letter-spacing: .15em; }
.itsc-nav { display: flex; align-items: center; justify-content: center; gap: clamp(16px, 2.4vw, 34px); margin-inline-start: auto; }
.itsc-nav > a, .itsc-nav__services > button { min-height: 50px; padding: 0; border: 0; background: none; color: #32394a; display: flex; align-items: center; gap: 6px; cursor: pointer; font-size: 13px; font-weight: 720; white-space: nowrap; }
.itsc-nav > a:hover, .itsc-nav__services > button:hover { color: var(--itsc-blue); }
.itsc-nav__services { position: static; }
.itsc-nav__services > button span { font-size: 15px; transition: transform .2s ease; }
.itsc-nav__services > button[aria-expanded="true"] span { transform: rotate(180deg); }
.itsc-mega { position: absolute; inset-block-start: 100%; inset-inline: max(var(--itsc-pad), calc((100vw - var(--itsc-max)) / 2)); display: grid; grid-template-columns: 280px 1fr; gap: 28px; padding: 28px; background: var(--itsc-ink); color: #fff; box-shadow: 0 30px 80px rgba(0, 0, 0, .25); opacity: 0; visibility: hidden; transform: translateY(8px); transition: .2s ease; }
.itsc-nav__services:focus-within .itsc-mega, .itsc-nav__services.is-open .itsc-mega { opacity: 1; visibility: visible; transform: none; }
.itsc-mega__lead { border-inline-end: 1px solid var(--itsc-line-light); padding-inline-end: 28px; }
.itsc-mega__lead small { color: var(--itsc-signal); font-size: 9px; font-weight: 850; letter-spacing: .17em; }
.itsc-mega__lead strong { display: block; margin-block: 14px 10px; font-size: 24px; line-height: 1.18; letter-spacing: -.035em; }
.itsc-mega__lead p { color: #aeb8ca; font-size: 13px; line-height: 1.65; }
.itsc-mega__lead a { display: inline-flex; margin-block-start: 14px; color: var(--itsc-signal); font-size: 12px; font-weight: 800; }
.itsc-mega__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3px; }
.itsc-mega__grid > a { min-height: 76px; padding: 13px; display: flex; align-items: center; gap: 12px; background: rgba(255,255,255,.045); border: 1px solid rgba(255,255,255,.07); transition: .2s ease; }
.itsc-mega__grid > a:hover { background: rgba(255,255,255,.09); border-color: var(--accent); transform: translateY(-2px); }
.itsc-mega__grid > a > i { width: 34px; height: 34px; display: grid; place-items: center; background: color-mix(in srgb, var(--accent), transparent 84%); color: var(--accent); border: 1px solid color-mix(in srgb, var(--accent), transparent 55%); font-style: normal; font-weight: 850; }
.itsc-mega__grid span { display: grid; line-height: 1.25; }
.itsc-mega__grid strong { font-size: 12px; }
.itsc-mega__grid small { margin-block-start: 4px; color: #8f9aaf; font-size: 9px; }
.itsc-header__actions { display: flex; align-items: center; gap: 11px; }
.itsc-language { display: flex; align-items: center; gap: 7px; font-size: 12px; font-weight: 850; }
.itsc-language span { color: var(--itsc-muted); font-size: 10px; font-weight: 600; }
.itsc-header__cta { display: flex; align-items: center; gap: 20px; min-height: 42px; padding: 0 16px; background: var(--itsc-ink); color: #fff; font-size: 11px; font-weight: 800; }
.itsc-header__cta span { color: var(--itsc-signal); }
.itsc-menu-button { display: none; border: 0; background: none; color: var(--itsc-ink); }
.itsc-mobile { position: fixed; inset: 0; z-index: 1200; overflow: auto; background: var(--itsc-ink); color: #fff; padding: 24px; }
.itsc-mobile[hidden] { display: none; }
.itsc-mobile__head { display: flex; align-items: center; justify-content: space-between; padding-block-end: 24px; border-block-end: 1px solid var(--itsc-line-light); }
.itsc-mobile__head .itsc-brand small { color: #8f9aaf; }
.itsc-mobile__head button { width: 44px; height: 44px; border: 1px solid var(--itsc-line-light); background: none; color: #fff; font-size: 28px; }
.itsc-mobile nav { display: grid; }
.itsc-mobile nav > a, .itsc-mobile summary { display: grid; grid-template-columns: 42px 1fr 28px; align-items: center; min-height: 68px; border-block-end: 1px solid var(--itsc-line-light); cursor: pointer; list-style: none; }
.itsc-mobile nav span { color: var(--itsc-signal); font: 10px var(--itsc-font); letter-spacing: .1em; }
.itsc-mobile nav strong { font-size: 20px; }
.itsc-mobile nav i { color: #8f9aaf; font-style: normal; text-align: end; }
.itsc-mobile details div { display: grid; padding: 6px 0 18px 42px; border-block-end: 1px solid var(--itsc-line-light); }
[dir="rtl"] .itsc-mobile details div { padding: 6px 42px 18px 0; }
.itsc-mobile details div a { padding: 9px 0; color: #bdc5d3; font-size: 13px; }
.itsc-mobile__cta { margin-block-start: 24px; min-height: 54px; padding: 0 18px; background: var(--itsc-signal); color: var(--itsc-ink); display: flex; align-items: center; justify-content: space-between; font-weight: 850; }
body.itsc-menu-open { overflow: hidden; }

/* Shared typography and controls */
.itsc-section { padding-block: clamp(76px, 9vw, 132px); }
.itsc-kicker, .itsc-eyebrow { display: inline-flex; align-items: center; gap: 10px; font: 800 10px/1.2 var(--itsc-font); letter-spacing: .15em; text-transform: uppercase; }
.itsc-kicker i { width: 8px; height: 8px; border-radius: 50%; background: var(--itsc-signal); box-shadow: 0 0 0 5px rgba(150,255,105,.13); }
.itsc-eyebrow { color: var(--itsc-blue); }
.itsc-section-head { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(250px, .55fr); gap: clamp(30px, 6vw, 100px); align-items: end; margin-block-end: clamp(36px, 5vw, 68px); }
.itsc-section-head h2, .itsc-split h2 { max-width: 850px; margin: 12px 0 0; font-size: clamp(34px, 4.6vw, 68px); line-height: 1.03; letter-spacing: -.055em; }
.itsc-section-head > p, .itsc-lead { margin: 0; color: #545f72; font-size: clamp(17px, 1.6vw, 22px); line-height: 1.7; }
.itsc-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(48px, 8vw, 130px); align-items: start; }
.itsc-actions { display: flex; flex-wrap: wrap; gap: 11px; margin-block-start: 32px; }
.itsc-button { min-height: 52px; padding: 0 22px; display: inline-flex; align-items: center; justify-content: center; gap: 24px; border: 1px solid var(--itsc-line); font-size: 12px; font-weight: 850; transition: .2s ease; }
.itsc-button:hover { transform: translateY(-2px); }
.itsc-button--signal { background: var(--itsc-signal); border-color: var(--itsc-signal); color: var(--itsc-ink); }
.itsc-button--line { background: transparent; }
.itsc-button--darkline { border-color: rgba(255,255,255,.25); color: #fff; }
.itsc-button--service { background: var(--service-accent); border-color: var(--service-accent); color: var(--itsc-ink); }
.itsc-arrow-link { display: inline-flex; align-items: center; gap: 12px; color: var(--itsc-blue); font-size: 12px; font-weight: 850; }
.itsc-arrow-link span, .itsc-arrow-link i { font-style: normal; transition: transform .2s ease; }
.itsc-arrow-link:hover span, .itsc-arrow-link:hover i { transform: translate(3px, -3px); }
[dir="rtl"] .itsc-arrow-link:hover span, [dir="rtl"] .itsc-arrow-link:hover i { transform: translate(-3px, -3px); }
.itsc-arrow-link--large { margin-block-start: 38px; font-size: 15px; }
.itsc-breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-block-end: 40px; color: #7d879a; font-size: 10px; font-weight: 750; letter-spacing: .04em; }
.itsc-breadcrumbs a:hover { color: var(--itsc-blue); }
.itsc-breadcrumbs strong { color: inherit; max-width: 38ch; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

/* Home hero */
.itsc-home-hero { position: relative; min-height: calc(100svh - 108px); padding-block: clamp(72px, 9vw, 125px) 0; background: var(--itsc-ink); color: #fff; }
.itsc-home-hero__grid, .itsc-service-hero__mesh { position: absolute; inset: 0; opacity: .38; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, black, transparent 90%); }
.itsc-home-hero__layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(390px, .72fr); gap: clamp(45px, 8vw, 130px); align-items: center; }
.itsc-home-hero__copy h1 { max-width: 860px; margin: 22px 0 24px; font-size: clamp(49px, 6.4vw, 96px); line-height: .96; letter-spacing: -.065em; font-weight: 760; }
.itsc-home-hero__copy h1 em { color: var(--itsc-signal); font-style: normal; }
.itsc-home-hero__copy > p { max-width: 710px; margin: 0; color: #b7c0d1; font-size: clamp(17px, 1.5vw, 22px); line-height: 1.68; }
.itsc-home-hero__proof { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-block-start: 50px; border-block: 1px solid var(--itsc-line-light); }
.itsc-home-hero__proof span { min-height: 65px; padding: 13px 12px; display: grid; grid-template-columns: 25px 1fr; align-items: center; gap: 8px; color: #adb7c9; border-inline-end: 1px solid var(--itsc-line-light); font-size: 10px; line-height: 1.4; }
.itsc-home-hero__proof span:last-child { border-inline-end: 0; }
.itsc-home-hero__proof b { color: var(--itsc-signal); font: 750 9px var(--itsc-font); }
.itsc-system-map { min-width: 0; border: 1px solid rgba(255,255,255,.18); background: rgba(8,13,24,.68); box-shadow: 0 30px 100px rgba(0,0,0,.3); }
.itsc-system-map__head { min-height: 44px; padding: 0 15px; display: flex; align-items: center; justify-content: space-between; border-block-end: 1px solid rgba(255,255,255,.12); color: #8591a7; font: 750 8px var(--itsc-font); letter-spacing: .13em; }
.itsc-system-map__head b { display: flex; align-items: center; gap: 7px; color: var(--itsc-signal); }
.itsc-system-map__head i { width: 6px; height: 6px; border-radius: 50%; background: var(--itsc-signal); animation: itsc-pulse 2s infinite; }
.itsc-system-map__stage { position: relative; aspect-ratio: 1.28; min-height: 360px; overflow: hidden; }
.itsc-system-map__stage svg { position: absolute; inset: 7% 5%; width: 90%; height: 86%; fill: none; stroke: rgba(150,255,105,.26); stroke-width: 1; stroke-dasharray: 6 6; }
.itsc-system-node { position: absolute; z-index: 2; width: 104px; min-height: 64px; padding: 10px; display: grid; background: #131b2b; border: 1px solid rgba(255,255,255,.15); box-shadow: 0 9px 30px rgba(0,0,0,.32); }
.itsc-system-node i { color: var(--itsc-signal); font: 750 7px var(--itsc-font); font-style: normal; }
.itsc-system-node b { margin-block-start: 3px; font: 850 13px var(--itsc-font); }
.itsc-system-node small { color: #778399; font: 700 7px var(--itsc-font); letter-spacing: .12em; }
.itsc-system-node.n-web { inset-block-start: 9%; inset-inline-start: 5%; }
.itsc-system-node.n-ai { inset-block-start: 9%; inset-inline-end: 5%; }
.itsc-system-node.n-ops { inset-block-end: 9%; inset-inline-start: 5%; }
.itsc-system-node.n-data { inset-block-end: 9%; inset-inline-end: 5%; }
.itsc-system-core { position: absolute; inset: 50% auto auto 50%; z-index: 3; width: 132px; height: 132px; transform: translate(-50%, -50%); display: grid; place-items: center; background: #0f1624; border: 1px solid rgba(150,255,105,.52); box-shadow: 0 0 0 16px rgba(150,255,105,.025), 0 0 60px rgba(150,255,105,.08); }
[dir="rtl"] .itsc-system-core { transform: translate(-50%, -50%); }
.itsc-system-core img { width: 72px; }
.itsc-system-core span { color: #7f8ba0; text-align: center; font: 700 7px/1.4 var(--itsc-font); letter-spacing: .12em; }
.itsc-system-map__foot { min-height: 48px; padding: 0 14px; display: flex; align-items: center; justify-content: space-between; gap: 8px; border-block-start: 1px solid rgba(255,255,255,.12); color: #6f7b91; font: 700 6px var(--itsc-font); }
.itsc-system-map__foot b { color: #bdc6d5; }
.itsc-home-hero__rail { position: relative; z-index: 1; margin-block-start: clamp(70px, 8vw, 110px); min-height: 52px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-block-start: 1px solid var(--itsc-line-light); color: #6f7b91; font: 700 8px var(--itsc-font); letter-spacing: .12em; }

/* Home sections */
.itsc-diagnosis { background: var(--itsc-white); }
.itsc-diagnosis__steps { display: grid; grid-template-columns: repeat(3, 1fr); margin-block-start: 42px; border-block-start: 1px solid var(--itsc-line); }
.itsc-diagnosis__steps div { min-height: 95px; padding: 17px 12px 8px; border-inline-end: 1px solid var(--itsc-line); }
.itsc-diagnosis__steps div:last-child { border-inline-end: 0; }
.itsc-diagnosis__steps span { display: block; color: var(--itsc-blue); font: 800 8px var(--itsc-font); letter-spacing: .12em; }
.itsc-diagnosis__steps strong { display: block; margin-block-start: 18px; font-size: 13px; }
.itsc-services { border-block: 1px solid var(--itsc-line); }
.itsc-service-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block-start: 1px solid var(--itsc-line); border-inline-start: 1px solid var(--itsc-line); }
.itsc-service-card { position: relative; min-height: 330px; padding: 26px; display: flex; flex-direction: column; border-block-end: 1px solid var(--itsc-line); border-inline-end: 1px solid var(--itsc-line); overflow: hidden; transition: .25s ease; }
.itsc-service-card::before { content: ""; position: absolute; inset: 0 auto auto 0; width: 100%; height: 3px; background: var(--accent); transform: scaleX(0); transform-origin: left; transition: .25s ease; }
[dir="rtl"] .itsc-service-card::before { transform-origin: right; }
.itsc-service-card:hover { background: var(--itsc-ink); color: #fff; transform: translateY(-4px); box-shadow: var(--itsc-shadow); z-index: 2; }
.itsc-service-card:hover::before { transform: scaleX(1); }
.itsc-service-card__index { align-self: flex-end; color: #9aa2b0; font: 750 9px var(--itsc-font); }
.itsc-service-card > i { width: 51px; height: 51px; margin-block: 23px 20px; display: grid; place-items: center; border: 1px solid color-mix(in srgb, var(--accent), #222 25%); color: var(--accent); font-style: normal; font-size: 20px; font-weight: 850; }
.itsc-service-card > small { color: var(--accent); font: 800 8px var(--itsc-font); letter-spacing: .14em; }
.itsc-service-card h3 { margin: 9px 0 4px; font-size: clamp(21px, 2vw, 28px); line-height: 1.18; letter-spacing: -.035em; }
.itsc-service-card p { margin: 0; color: #737d8f; font-size: 12px; }
.itsc-service-card:hover p { color: #98a3b5; }
.itsc-service-card > b { margin-block-start: auto; padding-block-start: 24px; display: flex; align-items: center; justify-content: space-between; font-size: 10px; }
.itsc-service-card > b span { color: var(--accent); font-size: 16px; }
.itsc-operating-model { background: var(--itsc-ink); color: #fff; }
.itsc-operating-model .itsc-eyebrow { color: var(--itsc-signal); }
.itsc-process-line { margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); list-style: none; border-block-start: 1px solid var(--itsc-line-light); border-inline-start: 1px solid var(--itsc-line-light); }
.itsc-process-line li { min-height: 255px; padding: 24px; border-block-end: 1px solid var(--itsc-line-light); border-inline-end: 1px solid var(--itsc-line-light); }
.itsc-process-line li > span { display: grid; place-items: center; width: 36px; height: 36px; background: var(--itsc-signal); color: var(--itsc-ink); font: 850 9px var(--itsc-font); }
.itsc-process-line div { margin-block-start: 53px; }
.itsc-process-line small { color: var(--itsc-signal); font: 800 8px var(--itsc-font); letter-spacing: .14em; }
.itsc-process-line strong { display: block; margin-block: 8px; font-size: 17px; }
.itsc-process-line p { margin: 0; color: #8d98ab; font-size: 12px; }
.itsc-operating-model .itsc-arrow-link { color: var(--itsc-signal); }

/* Page and service heroes */
.itsc-page-hero, .itsc-service-hero { position: relative; padding-block: clamp(70px, 9vw, 128px); background: var(--itsc-ink); color: #fff; }
.itsc-page-hero__layout, .itsc-service-hero__layout { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(300px, .5fr); gap: clamp(50px, 9vw, 150px); align-items: center; }
.itsc-page-hero h1, .itsc-service-hero h1 { max-width: 970px; margin: 22px 0; font-size: clamp(46px, 6vw, 88px); line-height: .98; letter-spacing: -.06em; }
.itsc-page-hero p, .itsc-service-hero__copy > p { max-width: 770px; margin: 0; color: #aeb8ca; font-size: clamp(17px, 1.45vw, 21px); line-height: 1.7; }
.itsc-page-hero__stamp { width: min(100%, 320px); aspect-ratio: 1; justify-self: end; display: grid; place-items: center; align-content: center; gap: 18px; border: 1px solid rgba(255,255,255,.18); background: radial-gradient(circle, rgba(150,255,105,.1), transparent 55%); }
.itsc-page-hero__stamp img { width: 94px; }
.itsc-page-hero__stamp span { color: #8d98ab; text-align: center; font: 750 9px/1.6 var(--itsc-font); letter-spacing: .14em; }
.itsc-service-hero { padding-block: clamp(62px, 8vw, 112px); }
.itsc-service-hero__mesh { opacity: .26; background-size: 36px 36px; }
.itsc-service-hero .itsc-kicker i { background: var(--service-accent); box-shadow: 0 0 0 5px color-mix(in srgb, var(--service-accent), transparent 85%); }
.itsc-service-console { align-self: stretch; min-height: 430px; padding: 18px; border: 1px solid rgba(255,255,255,.18); background: rgba(6,10,19,.6); display: flex; flex-direction: column; }
.itsc-service-console > span { color: #748095; font: 750 8px var(--itsc-font); letter-spacing: .14em; }
.itsc-service-console > div { margin-block: 35px; padding-block-end: 30px; border-block-end: 1px solid var(--itsc-line-light); display: grid; grid-template-columns: 72px 1fr; gap: 15px; align-items: center; }
.itsc-service-console > div i { grid-row: span 2; width: 72px; height: 72px; display: grid; place-items: center; border: 1px solid var(--service-accent); color: var(--service-accent); font-style: normal; font-size: 28px; }
.itsc-service-console > div b { font-size: 20px; line-height: 1.2; }
.itsc-service-console > div small { color: var(--service-accent); font: 750 7px var(--itsc-font); letter-spacing: .12em; }
.itsc-service-console ul { margin: 0; padding: 0; display: grid; gap: 14px; list-style: none; }
.itsc-service-console li { display: flex; align-items: center; gap: 10px; color: #aab4c6; font-size: 12px; }
.itsc-service-console li i { width: 7px; height: 7px; background: var(--service-accent); }
.itsc-capability-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block-start: 1px solid var(--itsc-line); border-inline-start: 1px solid var(--itsc-line); }
.itsc-capability-grid article { min-height: 230px; padding: 25px; border-block-end: 1px solid var(--itsc-line); border-inline-end: 1px solid var(--itsc-line); }
.itsc-capability-grid span { color: var(--service-accent); font: 850 9px var(--itsc-font); }
.itsc-capability-grid h3 { margin: 48px 0 12px; font-size: clamp(20px, 2vw, 27px); line-height: 1.2; letter-spacing: -.035em; }
.itsc-capability-grid p { margin: 0; color: #727c8e; font-size: 12px; }
.itsc-service-outcomes { background: var(--itsc-ink); color: #fff; }
.itsc-service-outcomes .itsc-eyebrow { color: var(--service-accent); }
.itsc-service-outcomes .itsc-lead { margin-block-start: 30px; color: #929eb1; }
.itsc-service-outcomes ol { margin: 0; padding: 0; list-style: none; border-block-start: 1px solid var(--itsc-line-light); }
.itsc-service-outcomes li { min-height: 100px; padding: 18px 0; display: grid; grid-template-columns: 60px 1fr; align-items: center; gap: 16px; border-block-end: 1px solid var(--itsc-line-light); }
.itsc-service-outcomes li span { color: var(--service-accent); font: 850 9px var(--itsc-font); }
.itsc-service-outcomes li strong { font-size: clamp(18px, 2vw, 26px); }

/* Requests */
.itsc-request { padding-block: clamp(76px, 9vw, 130px); background: #e9e6dc; }
.itsc-request__layout { display: grid; grid-template-columns: minmax(280px, .55fr) minmax(0, 1fr); gap: clamp(45px, 8vw, 120px); align-items: start; }
.itsc-request__intro { position: sticky; top: 140px; }
.itsc-request__intro h2 { margin: 12px 0 18px; font-size: clamp(35px, 4vw, 61px); line-height: 1.03; letter-spacing: -.05em; }
.itsc-request__intro p, .itsc-request__intro li { color: #626d7e; }
.itsc-request__intro ul { padding-inline-start: 20px; }
.itsc-request__form .itsol-request { margin: 0; max-width: none; border-radius: 0; box-shadow: var(--itsc-shadow); }
.itsc-request__form .itsol-request__heading { text-align: start; }
.itsc-request__form input, .itsc-request__form select, .itsc-request__form textarea { border-radius: 0 !important; }
.itsc-request__form button[type="submit"] { border-radius: 0 !important; }
.itsc-request--contact { background: var(--itsc-paper); }

/* Core page layouts */
.itsc-process-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block-start: 1px solid var(--itsc-line); border-inline-start: 1px solid var(--itsc-line); }
.itsc-process-grid article { min-height: 360px; padding: 25px; border-block-end: 1px solid var(--itsc-line); border-inline-end: 1px solid var(--itsc-line); }
.itsc-process-grid article > span { display: grid; place-items: center; width: 38px; height: 38px; background: var(--itsc-blue); color: #fff; font: 850 9px var(--itsc-font); }
.itsc-process-grid small { display: block; margin-block-start: 80px; color: var(--itsc-blue); font: 850 9px var(--itsc-font); letter-spacing: .13em; }
.itsc-process-grid h2 { margin: 9px 0 16px; font-size: 25px; line-height: 1.18; }
.itsc-process-grid p { margin: 0; color: #626d7e; font-size: 13px; }
.itsc-principles { background: #dedbd1; }
.itsc-principles ul { margin: 0; padding: 0; list-style: none; border-block-start: 1px solid var(--itsc-line); }
.itsc-principles li { padding: 20px 0; border-block-end: 1px solid var(--itsc-line); font-size: clamp(17px, 2vw, 24px); font-weight: 750; }
.itsc-principles li::before { content: "↳"; margin-inline-end: 15px; color: var(--itsc-blue); }
.itsc-dark-section { background: var(--itsc-ink); color: #fff; }
.itsc-dark-section .itsc-eyebrow { color: var(--itsc-signal); }
.itsc-value-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-block-start: 1px solid var(--itsc-line-light); border-inline-start: 1px solid var(--itsc-line-light); }
.itsc-value-grid article { min-height: 260px; padding: 28px; border-block-end: 1px solid var(--itsc-line-light); border-inline-end: 1px solid var(--itsc-line-light); }
.itsc-value-grid span { color: var(--itsc-signal); font: 850 9px var(--itsc-font); }
.itsc-value-grid h3 { margin: 75px 0 12px; font-size: 26px; }
.itsc-value-grid p { color: #929caf; }
.itsc-faq-layout, .itsc-legal-layout { display: grid; grid-template-columns: minmax(240px, .34fr) minmax(0, 1fr); gap: clamp(45px, 8vw, 130px); align-items: start; }
.itsc-faq-layout > aside, .itsc-legal-layout > aside { position: sticky; top: 140px; }
.itsc-faq-layout aside h2 { margin: 12px 0 28px; font-size: 40px; line-height: 1.05; }
.itsc-faq-list { border-block-start: 1px solid var(--itsc-line); }
.itsc-faq-list details { border-block-end: 1px solid var(--itsc-line); }
.itsc-faq-list summary { min-height: 90px; display: grid; grid-template-columns: 50px 1fr 32px; align-items: center; gap: 12px; cursor: pointer; list-style: none; }
.itsc-faq-list summary::-webkit-details-marker { display: none; }
.itsc-faq-list summary span { color: var(--itsc-blue); font: 850 9px var(--itsc-font); }
.itsc-faq-list summary strong { font-size: clamp(17px, 2vw, 23px); }
.itsc-faq-list summary i { font-style: normal; font-size: 22px; transition: transform .2s ease; }
.itsc-faq-list details[open] summary i { transform: rotate(45deg); }
.itsc-faq-list details p { margin: -5px 44px 28px 62px; color: #5f6a7d; font-size: 16px; }
[dir="rtl"] .itsc-faq-list details p { margin: -5px 62px 28px 44px; }
.itsc-legal-version { display: inline-flex; padding: 8px 10px; background: var(--itsc-ink); color: var(--itsc-signal); font: 800 9px var(--itsc-font); letter-spacing: .12em; }
.itsc-legal-layout aside p { color: #687286; }
.itsc-legal-layout aside a { color: var(--itsc-blue); font-size: 12px; font-weight: 850; }
.itsc-legal-sections { border-block-start: 1px solid var(--itsc-line); }
.itsc-legal-sections > section { padding: 31px 0; display: grid; grid-template-columns: 56px 1fr; gap: 20px; border-block-end: 1px solid var(--itsc-line); }
.itsc-legal-sections > section > span { color: var(--itsc-blue); font: 850 9px var(--itsc-font); }
.itsc-legal-sections h2 { margin: 0 0 12px; font-size: 25px; }
.itsc-legal-sections p { max-width: 810px; margin: 0; color: #5f697c; }
.itsc-prose-page { max-width: 850px; }

/* Tools */
.itsc-page-hero--tools { background: #111727; }
.itsc-tool-radar { position: relative; width: min(100%, 390px); aspect-ratio: 1; justify-self: end; border: 1px solid rgba(255,255,255,.17); border-radius: 50%; background: repeating-radial-gradient(circle, transparent 0 54px, rgba(255,255,255,.08) 55px 56px); animation: itsc-float 7s ease-in-out infinite; }
.itsc-tool-radar::before, .itsc-tool-radar::after { content: ""; position: absolute; inset: 50% 5%; height: 1px; background: rgba(255,255,255,.13); }
.itsc-tool-radar::after { transform: rotate(90deg); }
.itsc-tool-radar > span { position: absolute; padding: 4px 7px; background: #1b2436; color: #9ba7ba; font: 750 8px var(--itsc-font); }
.itsc-tool-radar > span:nth-child(1) { top: 12%; left: 18%; }
.itsc-tool-radar > span:nth-child(2) { top: 18%; right: 12%; }
.itsc-tool-radar > span:nth-child(3) { bottom: 17%; left: 12%; }
.itsc-tool-radar > span:nth-child(4) { bottom: 10%; right: 20%; }
.itsc-tool-radar > i { position: absolute; inset: 8%; border-radius: 50%; background: conic-gradient(from 10deg, rgba(150,255,105,.22), transparent 30%); animation: itsc-spin 8s linear infinite; }
.itsc-tool-radar > b { position: absolute; inset: 50% auto auto 50%; transform: translate(-50%, -50%); width: 104px; height: 104px; display: grid; place-items: center; align-content: center; border: 1px solid var(--itsc-signal); background: #111727; color: var(--itsc-signal); text-align: center; font: 800 34px/1 var(--itsc-font); }
.itsc-tool-radar > b small { color: #8995a9; font-size: 8px; letter-spacing: .15em; }
.itsc-tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block-start: 1px solid var(--itsc-line); border-inline-start: 1px solid var(--itsc-line); }
.itsc-tool-card { min-height: 330px; padding: 25px; display: flex; flex-direction: column; border-block-end: 1px solid var(--itsc-line); border-inline-end: 1px solid var(--itsc-line); transition: .25s ease; }
.itsc-tool-card:hover { background: var(--itsc-white); box-shadow: var(--itsc-shadow); transform: translateY(-3px); z-index: 2; }
.itsc-tool-card__number { align-self: flex-end; color: #98a0ae; font: 800 9px var(--itsc-font); }
.itsc-tool-card__signal { margin-block: 20px 44px; display: flex; align-items: center; gap: 8px; color: #5c6a7e; font: 750 8px var(--itsc-font); letter-spacing: .12em; }
.itsc-tool-card__signal i { width: 7px; height: 7px; border-radius: 50%; background: var(--itsc-signal); box-shadow: 0 0 0 4px rgba(80,109,255,.1); }
.itsc-tool-card h2 { margin: 0 0 12px; font-size: 24px; line-height: 1.22; letter-spacing: -.035em; }
.itsc-tool-card p { margin: 0; color: #6c7688; font-size: 13px; }
.itsc-tool-card .itsc-arrow-link { margin-block-start: auto; padding-block-start: 22px; }
.itsc-tool-hero { padding-block: clamp(60px, 8vw, 105px); background: var(--itsc-ink); color: #fff; }
.itsc-tool-hero h1 { max-width: 970px; margin: 20px 0; font-size: clamp(43px, 5vw, 75px); line-height: 1; letter-spacing: -.055em; }
.itsc-tool-hero p { max-width: 760px; margin: 0; color: #aeb8c9; font-size: 18px; }
.itsc-tool-hero__trust { display: flex; flex-wrap: wrap; gap: 25px; margin-block-start: 38px; color: #9aa5b8; font-size: 10px; }
.itsc-tool-hero__trust span { display: flex; align-items: center; gap: 8px; }
.itsc-tool-hero__trust i { width: 6px; height: 6px; border-radius: 50%; background: var(--itsc-signal); }
.itsc-tool-workspace { background: #e5e8ed; }
.itsc-tool-shell { border: 1px solid rgba(16,21,35,.2); background: #fff; box-shadow: var(--itsc-shadow); }
.itsc-tool-shell__bar { min-height: 46px; padding: 0 16px; display: flex; align-items: center; justify-content: space-between; background: var(--itsc-ink); color: #9da8b9; font: 750 8px var(--itsc-font); letter-spacing: .12em; }
.itsc-tool-shell__bar span { display: flex; align-items: center; gap: 8px; color: var(--itsc-signal); }
.itsc-tool-shell__bar i { width: 6px; height: 6px; background: var(--itsc-signal); border-radius: 50%; }
.itsc-tool-output { padding: clamp(16px, 3.5vw, 48px); }
.itsc-tool-output > :first-child { margin-block-start: 0; }
.itsc-tool-output .itsc-demoted-tool-heading { margin-block: 0 25px; color: inherit; font-size: clamp(42px, 4.3vw, 66px); font-weight: 900; letter-spacing: -.05em; line-height: 1.2; }
.itsc-tool-output .itsc-demoted-tool-heading em { font-style: normal; }

/* Editorial and category */
.itsc-blog, .itsc-article-page, .itsc-archive-page { font-family: var(--itsc-font-ar); }
.itsc-editorial-hero { padding-block: clamp(70px, 10vw, 145px); background: var(--itsc-ink); color: #fff; }
.itsc-editorial-hero__layout { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .5fr); gap: clamp(55px, 10vw, 150px); align-items: end; }
.itsc-editorial-hero h1 { max-width: 900px; margin: 22px 0; font-size: clamp(54px, 7vw, 104px); line-height: .94; letter-spacing: -.055em; }
.itsc-editorial-hero h1 em { color: var(--itsc-signal); font-style: normal; }
.itsc-editorial-hero p { max-width: 720px; margin: 0; color: #aeb8ca; font-size: clamp(18px, 1.7vw, 24px); }
.itsc-editorial-hero__index { display: grid; grid-template-columns: repeat(3, 1fr); border-block-start: 1px solid var(--itsc-line-light); border-inline-start: 1px solid var(--itsc-line-light); }
.itsc-editorial-hero__index span { min-height: 120px; padding: 18px 14px; display: flex; flex-direction: column; justify-content: space-between; border-block-end: 1px solid var(--itsc-line-light); border-inline-end: 1px solid var(--itsc-line-light); }
.itsc-editorial-hero__index b { color: var(--itsc-signal); font: 800 29px var(--itsc-font); }
.itsc-editorial-hero__index small { color: #8390a5; font-size: 9px; }
.itsc-blog-feature { background: #e4e1d7; }
.itsc-post-card { display: flex; flex-direction: column; min-width: 0; background: transparent; border: 1px solid var(--itsc-line); }
.itsc-post-card__media { position: relative; aspect-ratio: 1.58; display: block; overflow: hidden; background: #dce0e8; border-block-end: 1px solid var(--itsc-line); }
.itsc-post-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .45s ease; }
.itsc-post-card:hover .itsc-post-card__media img { transform: scale(1.035); }
.itsc-post-placeholder { position: absolute; inset: 0; padding: 22px; display: flex; flex-direction: column; justify-content: space-between; background: var(--itsc-ink); color: #fff; overflow: hidden; direction: ltr; }
.itsc-post-placeholder::before { content: ""; position: absolute; width: 62%; aspect-ratio: 1; top: -25%; right: -10%; border: 1px solid rgba(150,255,105,.3); border-radius: 50%; box-shadow: 0 0 0 40px rgba(150,255,105,.025), 0 0 0 80px rgba(150,255,105,.015); }
.itsc-post-placeholder i { width: 8px; height: 8px; border-radius: 50%; background: var(--itsc-signal); }
.itsc-post-placeholder b { position: relative; color: var(--itsc-signal); font: 800 clamp(34px, 5vw, 62px) var(--itsc-font); letter-spacing: -.05em; }
.itsc-post-placeholder small { color: #808ca2; font: 750 8px var(--itsc-font); letter-spacing: .15em; }
.itsc-post-card__body { padding: 23px; display: flex; flex: 1; flex-direction: column; }
.itsc-post-card__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; color: #858e9d; font-size: 9px; }
.itsc-post-card__meta > * + *::before { content: "/"; margin-inline-end: 14px; color: #c0c4cb; }
.itsc-post-card__meta a { color: var(--itsc-blue); font-weight: 800; }
.itsc-post-card h2 { margin: 16px 0 12px; font-size: clamp(20px, 2vw, 27px); line-height: 1.32; letter-spacing: -.025em; }
.itsc-post-card h2 a:hover { color: var(--itsc-blue); }
.itsc-post-card__body > p { margin: 0 0 24px; color: #6b7587; font-size: 13px; }
.itsc-post-card .itsc-arrow-link { margin-block-start: auto; }
.itsc-post-card.is-featured { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); border-color: rgba(16,21,35,.2); background: var(--itsc-white); }
.itsc-post-card.is-featured .itsc-post-card__media { aspect-ratio: 1.45; border-block-end: 0; border-inline-end: 1px solid var(--itsc-line); }
.itsc-post-card.is-featured .itsc-post-card__body { padding: clamp(28px, 4vw, 55px); justify-content: center; }
.itsc-post-card.is-featured h2 { font-size: clamp(29px, 3.4vw, 50px); line-height: 1.15; }
.itsc-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.itsc-topic-explorer { background: var(--itsc-white); }
.itsc-topic-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block-start: 1px solid var(--itsc-line); border-inline-start: 1px solid var(--itsc-line); }
.itsc-topic { min-height: 88px; padding: 13px 17px; display: grid; grid-template-columns: 48px 1fr 20px; gap: 14px; align-items: center; border-block-end: 1px solid var(--itsc-line); border-inline-end: 1px solid var(--itsc-line); transition: .2s ease; }
.itsc-topic:hover { background: var(--itsc-ink); color: #fff; transform: translateY(-2px); box-shadow: 0 15px 35px rgba(16,21,35,.12); z-index: 2; }
.itsc-topic__glyph { width: 45px; height: 45px; display: grid; place-items: center; background: color-mix(in srgb, var(--topic), transparent 85%); border: 1px solid color-mix(in srgb, var(--topic), var(--itsc-ink) 25%); color: color-mix(in srgb, var(--topic), var(--itsc-ink) 28%); font: 850 11px var(--itsc-font); }
.itsc-topic:hover .itsc-topic__glyph { color: var(--topic); border-color: var(--topic); }
.itsc-topic > span:nth-child(2) { display: grid; line-height: 1.3; }
.itsc-topic strong { font-size: 14px; }
.itsc-topic small { margin-block-start: 5px; color: #858e9e; font-size: 9px; }
.itsc-topic > i { color: var(--topic); font-style: normal; }
.itsc-pagination { margin-block-start: 55px; }
.itsc-pagination ul { margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 5px; list-style: none; }
.itsc-pagination a, .itsc-pagination span { min-width: 43px; height: 43px; padding: 0 12px; display: grid; place-items: center; border: 1px solid var(--itsc-line); font: 800 11px var(--itsc-font); }
.itsc-pagination .current, .itsc-pagination a:hover { background: var(--itsc-ink); color: #fff; border-color: var(--itsc-ink); }
.itsc-empty { padding: 35px; border: 1px solid var(--itsc-line); color: #687286; }
.itsc-archive-hero { padding-block: clamp(55px, 8vw, 105px); background: var(--itsc-ink); color: #fff; }
.itsc-archive-hero__layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: clamp(45px, 8vw, 125px); align-items: center; }
.itsc-archive-hero__glyph { position: relative; width: 220px; height: 220px; display: grid; place-items: center; border: 1px solid color-mix(in srgb, var(--topic, var(--itsc-signal)), transparent 25%); color: var(--topic, var(--itsc-signal)); font: 800 66px var(--itsc-font); overflow: hidden; }
.itsc-archive-hero__glyph::before { content: ""; position: absolute; width: 155%; height: 1px; background: color-mix(in srgb, var(--topic, var(--itsc-signal)), transparent 55%); transform: rotate(45deg); }
.itsc-archive-hero__glyph i { position: absolute; inset: 13px; border: 1px dashed rgba(255,255,255,.14); }
.itsc-archive-hero h1 { margin: 18px 0 14px; font-size: clamp(50px, 7vw, 96px); line-height: .98; letter-spacing: -.055em; }
.itsc-archive-hero p, .itsc-archive-description { max-width: 760px; margin: 0; color: #aeb8ca; font-size: 17px; }
.itsc-archive-hero__count { display: flex; align-items: center; gap: 12px; margin-block-start: 28px; }
.itsc-archive-hero__count b { color: var(--topic); font: 800 30px var(--itsc-font); }
.itsc-archive-hero__count span { color: #8e9aaf; font-size: 10px; }
.itsc-search-hero { padding-block: 80px; background: var(--itsc-ink); color: #fff; }
.itsc-search-hero h1 { margin: 20px 0 30px; font-size: clamp(38px, 5vw, 68px); line-height: 1; }
.itsc-search-hero form { max-width: 780px; display: grid; grid-template-columns: 1fr auto; }
.itsc-search-hero input { min-width: 0; min-height: 58px; padding: 0 18px; border: 1px solid rgba(255,255,255,.23); border-inline-end: 0; border-radius: 0; background: rgba(255,255,255,.06); color: #fff; }
.itsc-search-hero button { padding: 0 26px; border: 0; background: var(--itsc-signal); color: var(--itsc-ink); font-weight: 850; }

/* Article */
.itsc-article-hero { padding-block: clamp(55px, 8vw, 105px); background: var(--itsc-ink); color: #fff; }
.itsc-article-hero__inner { max-width: 1080px; }
.itsc-article-hero__meta { display: flex; flex-wrap: wrap; gap: 10px 25px; color: #8f9baf; font: 750 9px var(--itsc-font); letter-spacing: .08em; }
.itsc-article-hero__meta span:first-child { color: var(--itsc-signal); }
.itsc-article-hero h1 { max-width: 1000px; margin: 25px 0 22px; font-size: clamp(45px, 6vw, 84px); line-height: 1.08; letter-spacing: -.045em; }
.itsc-article-hero > .itsc-container > p, .itsc-article-hero__inner > p { max-width: 820px; margin: 0; color: #b2bccd; font-size: clamp(18px, 1.7vw, 23px); }
.itsc-article-hero__byline { margin-block-start: 35px; padding-block-start: 20px; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 14px; border-block-start: 1px solid var(--itsc-line-light); color: #7f8b9f; font-size: 9px; }
.itsc-article-cover { margin: 0; padding-block-start: 0; background: var(--itsc-ink); }
.itsc-article-cover img { display: block; width: 100%; max-height: 720px; object-fit: cover; }
.itsc-article-layout { display: grid; grid-template-columns: 230px minmax(0, 780px); justify-content: center; gap: clamp(45px, 7vw, 105px); padding-block: clamp(70px, 9vw, 125px); }
.itsc-article-aside { position: sticky; top: 140px; align-self: start; border-block-start: 1px solid var(--itsc-line); }
.itsc-article-aside > span { display: block; padding-block: 15px; color: var(--itsc-blue); font-size: 10px; font-weight: 850; }
.itsc-article-aside [data-article-toc] { display: grid; border-block-start: 1px solid var(--itsc-line); }
.itsc-article-aside [data-article-toc] a { padding: 10px 0; color: #6d7788; border-block-end: 1px solid var(--itsc-line); font-size: 11px; line-height: 1.4; }
.itsc-article-aside [data-article-toc] a:hover, .itsc-article-aside [data-article-toc] a.is-active { color: var(--itsc-blue); }
.itsc-article-aside > a { margin-block-start: 24px; padding: 15px; display: flex; justify-content: space-between; background: var(--itsc-ink); color: #fff; font-size: 11px; font-weight: 800; }
.itsc-article-aside > a i { color: var(--itsc-signal); font-style: normal; }
.itsc-article-content { min-width: 0; color: #273044; font-size: clamp(17px, 1.35vw, 19px); line-height: 1.95; }
.itsc-article-content > :first-child { margin-block-start: 0; }
.itsc-article-content h2, .itsc-article-content h3, .itsc-article-content h4 { scroll-margin-top: 135px; color: var(--itsc-ink); line-height: 1.25; letter-spacing: -.025em; }
.itsc-article-content h2 { margin: 2.5em 0 .7em; padding-block-start: .8em; border-block-start: 1px solid var(--itsc-line); font-size: clamp(29px, 3vw, 42px); }
.itsc-article-content h3 { margin: 2em 0 .6em; font-size: clamp(23px, 2.2vw, 31px); }
.itsc-article-content h4 { margin: 1.7em 0 .5em; font-size: 21px; }
.itsc-article-content p { margin: 0 0 1.35em; }
.itsc-article-content a { color: #274bd6; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.itsc-article-content ul, .itsc-article-content ol { margin: 0 0 1.5em; padding-inline-start: 1.3em; }
.itsc-article-content li { margin-block: .5em; padding-inline-start: .3em; }
.itsc-article-content blockquote { margin: 2em 0; padding: 25px 30px; border-inline-start: 4px solid var(--itsc-blue); background: #e8e9e5; color: #3e485b; }
.itsc-article-content blockquote p:last-child { margin-block-end: 0; }
.itsc-article-content img { border: 1px solid var(--itsc-line); }
.itsc-article-content figure { margin: 2em 0; }
.itsc-article-content figcaption { margin-block-start: 8px; color: #737d8d; font-size: 12px; text-align: center; }
.itsc-article-content table { width: 100%; margin: 2em 0; border-collapse: collapse; font-size: 14px; }
.itsc-article-content th, .itsc-article-content td { padding: 12px; border: 1px solid var(--itsc-line); text-align: start; vertical-align: top; }
.itsc-article-content th { background: var(--itsc-ink); color: #fff; }
.itsc-article-content pre { max-width: 100%; overflow: auto; padding: 20px; background: var(--itsc-ink); color: #dbe4f5; direction: ltr; text-align: left; font: 13px/1.7 ui-monospace, SFMono-Regular, Menlo, monospace; }
.itsc-article-content code { padding: 2px 5px; background: rgba(16,21,35,.07); direction: ltr; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }
.itsc-article-content pre code { padding: 0; background: none; }
.itsc-article-footer { padding-block: 0 70px; display: flex; justify-content: space-between; gap: 30px; border-block-start: 1px solid var(--itsc-line); }
.itsc-article-footer > div { padding-block-start: 18px; display: flex; flex-wrap: wrap; gap: 12px 20px; }
.itsc-article-footer span { color: #7d8797; font-size: 10px; }
.itsc-article-footer a { color: var(--itsc-blue); font-size: 11px; font-weight: 800; }
.itsc-related { background: #e5e2d8; }

/* Footer and 404 */
.itsc-footer { background: #0d121e; color: #fff; }
.itsc-footer__cta { padding-block: clamp(60px, 8vw, 105px); display: flex; align-items: flex-end; justify-content: space-between; gap: 35px; border-block-end: 1px solid var(--itsc-line-light); }
.itsc-footer__cta small { color: var(--itsc-signal); font: 800 9px var(--itsc-font); letter-spacing: .13em; }
.itsc-footer__cta h2 { max-width: 850px; margin: 13px 0 0; font-size: clamp(36px, 5vw, 72px); line-height: 1; letter-spacing: -.055em; }
.itsc-footer__cta > a { flex: 0 0 auto; width: 150px; height: 150px; padding: 18px; display: flex; flex-direction: column; justify-content: space-between; background: var(--itsc-signal); color: var(--itsc-ink); font-size: 12px; font-weight: 850; }
.itsc-footer__cta > a span { align-self: flex-end; font-size: 24px; }
.itsc-footer__grid { padding-block: 70px; display: grid; grid-template-columns: minmax(300px, 1.45fr) repeat(3, minmax(140px, .55fr)); gap: clamp(35px, 5vw, 80px); }
.itsc-footer__brand p { max-width: 400px; color: #8d98ab; font-size: 13px; }
.itsc-footer__brand .itsc-brand small { color: #7d899e; }
.itsc-availability { display: inline-flex; align-items: center; gap: 9px; color: #a8b2c3; font-size: 9px; }
.itsc-footer__grid > div:not(:first-child) { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.itsc-footer__grid h3 { margin: 0 0 13px; color: #6f7c91; font: 800 9px var(--itsc-font); letter-spacing: .14em; text-transform: uppercase; }
.itsc-footer__grid > div:not(:first-child) a { color: #bbc4d2; font-size: 12px; }
.itsc-footer__grid > div:not(:first-child) a:hover { color: var(--itsc-signal); }
.itsc-footer__bottom { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-block-start: 1px solid var(--itsc-line-light); color: #677389; font-size: 9px; }
.itsc-not-found { min-height: 72vh; padding-block: 100px; display: grid; align-items: center; background: var(--itsc-ink); color: #fff; }
.itsc-not-found .itsc-container > span { color: var(--itsc-signal); font: 800 10px var(--itsc-font); letter-spacing: .15em; }
.itsc-not-found h1 { max-width: 950px; margin: 20px 0; font-size: clamp(55px, 8vw, 110px); line-height: .92; letter-spacing: -.065em; }
.itsc-not-found p { color: #aeb8ca; font-size: 19px; }

/* Motion */
[data-reveal] { opacity: 0; transform: translateY(18px); transition: opacity .65s ease, transform .65s ease; }
[data-reveal].is-visible { opacity: 1; transform: none; }
@keyframes itsc-pulse { 50% { opacity: .35; box-shadow: 0 0 0 7px rgba(150,255,105,.1); } }
@keyframes itsc-spin { to { transform: rotate(360deg); } }
@keyframes itsc-float { 50% { transform: translateY(-8px); } }

/* Responsive */
@media (max-width: 1160px) {
    .itsc-nav { display: none; }
    .itsc-menu-button { width: 46px; height: 42px; padding: 5px; display: grid; align-content: center; gap: 5px; border: 1px solid var(--itsc-line); }
    .itsc-menu-button span { width: 18px; height: 1px; margin-inline: auto; background: currentColor; }
    .itsc-menu-button b { font-size: 7px; letter-spacing: .12em; }
    .itsc-home-hero__layout { grid-template-columns: 1fr minmax(340px, .7fr); gap: 45px; }
    .itsc-home-hero__copy h1 { font-size: clamp(48px, 6.5vw, 78px); }
    .itsc-service-grid, .itsc-capability-grid, .itsc-tools-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .itsc-process-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .itsc-topic-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .itsc-footer__grid { grid-template-columns: 1.3fr repeat(3, .6fr); gap: 30px; }
}

@media (max-width: 900px) {
    :root { --itsc-pad: 24px; }
    body.admin-bar .itsc-header { top: 46px; }
    .itsc-header__signal span:last-child { display: none; }
    .itsc-header__cta { display: none; }
    .itsc-home-hero { min-height: auto; }
    .itsc-home-hero__layout, .itsc-page-hero__layout, .itsc-service-hero__layout, .itsc-editorial-hero__layout { grid-template-columns: 1fr; }
    .itsc-system-map { max-width: 590px; width: 100%; }
    .itsc-home-hero__rail { overflow: hidden; justify-content: flex-start; }
    .itsc-home-hero__rail span { min-width: max-content; }
    .itsc-split, .itsc-request__layout, .itsc-faq-layout, .itsc-legal-layout { grid-template-columns: 1fr; }
    .itsc-request__intro, .itsc-faq-layout > aside, .itsc-legal-layout > aside { position: static; }
    .itsc-section-head { grid-template-columns: 1fr; gap: 20px; }
    .itsc-process-line { grid-template-columns: repeat(2, 1fr); }
    .itsc-process-line li { min-height: 220px; }
    .itsc-page-hero__stamp, .itsc-tool-radar { justify-self: start; width: 280px; }
    .itsc-service-console { min-height: auto; }
    .itsc-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .itsc-post-card.is-featured { grid-template-columns: 1fr; }
    .itsc-post-card.is-featured .itsc-post-card__media { border-inline-end: 0; border-block-end: 1px solid var(--itsc-line); }
    .itsc-archive-hero__layout { grid-template-columns: 170px minmax(0, 1fr); gap: 38px; }
    .itsc-archive-hero__glyph { width: 160px; height: 160px; font-size: 48px; }
    .itsc-article-layout { grid-template-columns: 1fr; }
    .itsc-article-aside { position: static; order: 2; }
    .itsc-footer__cta { align-items: flex-start; flex-direction: column; }
    .itsc-footer__cta > a { width: 100%; height: 72px; flex-direction: row; align-items: center; }
    .itsc-footer__grid { grid-template-columns: 1fr 1fr; }
    .itsc-footer__brand { grid-column: 1 / -1; }
}

@media (max-width: 620px) {
    :root { --itsc-pad: 18px; }
    html { scroll-padding-top: 94px; }
    .itsc-header__main { min-height: 66px; }
    .itsc-header__row { gap: 12px; }
    .itsc-brand img { width: 39px; height: 39px; }
    .itsc-brand strong { font-size: 13px; }
    .itsc-brand small { font-size: 6.5px; }
    .itsc-language span { display: none; }
    .itsc-header__actions { gap: 8px; }
    .itsc-home-hero { padding-block-start: 62px; }
    .itsc-home-hero__copy h1, .itsc-editorial-hero h1 { font-size: clamp(43px, 13vw, 64px); }
    .itsc-home-hero__proof { grid-template-columns: 1fr; }
    .itsc-home-hero__proof span { border-inline-end: 0; border-block-end: 1px solid var(--itsc-line-light); }
    .itsc-home-hero__proof span:last-child { border-block-end: 0; }
    .itsc-system-map__stage { min-height: 285px; }
    .itsc-system-node { width: 78px; min-height: 54px; padding: 7px; }
    .itsc-system-node b { font-size: 10px; }
    .itsc-system-core { width: 100px; height: 100px; }
    .itsc-system-core img { width: 53px; }
    .itsc-system-map__foot { display: none; }
    .itsc-section { padding-block: 72px; }
    .itsc-section-head h2, .itsc-split h2 { font-size: 36px; }
    .itsc-diagnosis__steps { grid-template-columns: 1fr; }
    .itsc-diagnosis__steps div { border-inline-end: 0; border-block-end: 1px solid var(--itsc-line); }
    .itsc-service-grid, .itsc-capability-grid, .itsc-tools-grid, .itsc-process-grid, .itsc-value-grid, .itsc-post-grid, .itsc-topic-grid { grid-template-columns: 1fr; }
    .itsc-service-card { min-height: 285px; }
    .itsc-process-line { grid-template-columns: 1fr; }
    .itsc-page-hero h1, .itsc-service-hero h1 { font-size: 44px; }
    .itsc-page-hero__layout, .itsc-service-hero__layout { gap: 48px; }
    .itsc-page-hero__stamp, .itsc-tool-radar { width: 230px; }
    .itsc-service-console > div { grid-template-columns: 58px 1fr; }
    .itsc-service-console > div i { width: 58px; height: 58px; }
    .itsc-request__form .itsol-request { margin-inline: -8px; }
    .itsc-process-grid article { min-height: 280px; }
    .itsc-process-grid small { margin-block-start: 45px; }
    .itsc-editorial-hero__index { grid-template-columns: 1fr 1fr 1fr; }
    .itsc-editorial-hero__index span { min-height: 95px; }
    .itsc-editorial-hero__index b { font-size: 22px; }
    .itsc-post-card.is-featured h2 { font-size: 28px; }
    .itsc-topic { min-height: 78px; }
    .itsc-archive-hero__layout { grid-template-columns: 1fr; }
    .itsc-archive-hero__glyph { width: 105px; height: 105px; font-size: 32px; }
    .itsc-archive-hero h1 { font-size: 48px; }
    .itsc-search-hero form { grid-template-columns: 1fr; gap: 8px; }
    .itsc-search-hero input { border-inline-end: 1px solid rgba(255,255,255,.23); }
    .itsc-search-hero button { min-height: 50px; }
    .itsc-article-hero h1 { font-size: 42px; }
    .itsc-article-layout { padding-block: 60px; }
    .itsc-article-content { font-size: 17px; line-height: 1.9; }
    .itsc-article-content h2 { font-size: 29px; }
    .itsc-article-content table { display: block; overflow-x: auto; }
    .itsc-article-footer { flex-direction: column; }
    .itsc-footer__grid { grid-template-columns: 1fr; }
    .itsc-footer__brand { grid-column: auto; }
    .itsc-footer__bottom { align-items: flex-start; flex-direction: column; justify-content: center; padding-block: 18px; }
    .itsc-not-found h1 { font-size: 58px; }
}

@media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
    [data-reveal] { opacity: 1; transform: none; }
}
