:root {
  --color-bg: #f5f8f7;
  --color-surface: #f1f8f7;
  --color-surface-blue: #edf6fb;
  --color-surface-aqua: #e9f8f7;
  --color-surface-lilac: #f3f1fb;
  --color-surface-peach: #fbf4ee;
  --color-text: #163033;
  --color-heading: #0d2528;
  --color-muted: #5a7375;
  --color-border: rgba(36, 83, 86, 0.12);
  --color-brand: #147c76;
  --color-brand-dark: #0b5d59;
  --color-focus: #1b8f88;
  --font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --container: 1280px;
  --radius-sm: 12px;
  --radius-md: 22px;
  --radius-lg: 34px;
  --shadow-card: 0 24px 70px rgba(9, 45, 48, 0.1);
  --section-space: clamp(4.5rem, 9vw, 8rem);
  --type-page-title: clamp(3.25rem, 4.2vw, 4.2rem);
  --type-section-title: clamp(2rem, 4vw, 3.5rem);
  --type-feature-title: clamp(1.55rem, 2.2vw, 2rem);
  --type-card-title: clamp(1.35rem, 1.8vw, 1.7rem);
  --type-card-title-dense: clamp(1.08rem, 1.25vw, 1.25rem);
  --type-lead: clamp(1.05rem, 1.4vw, 1.22rem);
  --type-section-intro: 1.08rem;
  --type-body: 1rem;
  --type-small: .92rem;
  --type-label: .78rem;
  --leading-body: 1.65;
  --leading-page-title: 1.02;
  --leading-section-title: 1.06;
  --leading-feature-title: 1.1;
  --leading-card-title: 1.14;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--color-text); background: var(--color-bg); font-family: var(--font-sans) !important; font-size: var(--type-body); line-height: var(--leading-body); text-rendering: optimizeLegibility; }
body, button, input, textarea, select { font-family: var(--font-sans) !important; }
img, svg { display: block; max-width: 100%; }
a { color: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.agree { display: none !important; }
:focus-visible { outline: 3px solid var(--color-focus); outline-offset: 4px; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { color: var(--color-heading); font-family: var(--font-sans) !important; font-weight: 720; }
h1 { margin-bottom: 1.2rem; font-size: var(--type-page-title); line-height: var(--leading-page-title); letter-spacing: -.055em; }
h2 { margin-bottom: 1.4rem; font-size: var(--type-section-title); line-height: var(--leading-section-title); letter-spacing: -.045em; }
h3 { font-size: var(--type-card-title); line-height: var(--leading-card-title); letter-spacing: -.025em; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.section { padding-block: var(--section-space); }
.section--compact { padding-block: clamp(3rem, 6vw, 5rem); }
.content-flow > * + * { margin-top: 1.5rem; }
.align-center { text-align: center; }
.align-center > * { margin-inline: auto; }
.eyebrow { margin-bottom: 1.2rem; color: var(--color-brand-dark); font-size: var(--type-label); font-weight: 750; letter-spacing: .13em; text-transform: uppercase; }
.lead { max-width: 580px; margin-bottom: 2rem; color: var(--color-muted); font-size: var(--type-lead); line-height: 1.62; }
.lead p:last-child { margin-bottom: 0; }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: center; gap: .7rem; padding: .75rem 1.25rem; border: 1px solid transparent; border-radius: 999px; color: #fff; background: var(--color-brand); box-shadow: 0 12px 30px rgba(20, 124, 118, .18); cursor: pointer; font-weight: 700; text-decoration: none; transition: transform .25s ease, background-color .25s ease, box-shadow .25s ease; }
.button:hover { background: var(--color-brand-dark); box-shadow: 0 16px 34px rgba(20, 124, 118, .24); transform: translateY(-2px); }
.button--small { min-height: 42px; padding: .55rem .7rem; font-size: .9rem; }
.button--telegram { background: #2b78db; box-shadow: 0 12px 30px rgba(43, 120, 219, .2); }
.button--telegram:hover { background: #2368c2; box-shadow: 0 16px 34px rgba(43, 120, 219, .28); }
.button--light { color: var(--color-heading); background: #fff; box-shadow: none; }
.button--light:hover { color: #fff; background: var(--color-heading); }
.button--outline-light { border-color: rgba(164,242,223,.34); color: #eafffa; background: rgba(255,255,255,.06); box-shadow: none; }
.button--outline-light:hover { border-color: #a4f2df; color: #08282b; background: #a4f2df; box-shadow: 0 16px 38px rgba(38,214,176,.16); }
.skip-link { position: fixed; z-index: 1000; top: 12px; left: 12px; padding: .65rem 1rem; color: #fff; background: var(--color-heading); border-radius: 8px; transform: translateY(-160%); }
.skip-link:focus { transform: translateY(0); }

.site-header { position: relative; z-index: 30; background: #f8fcfb; }
.site-header__inner { display: flex; min-height: 72px; padding-top: 5px; padding-bottom: 5px; align-items: center; justify-content: space-between; gap: 2rem; border-bottom: 1px solid var(--color-border); }
.site-branding { display: inline-flex; align-items: center; color: var(--color-heading); font-weight: 850; letter-spacing: -.03em; text-decoration: none; }
.site-branding__name { font-size: 1.02rem; letter-spacing: -.015em; }
.site-branding__name span { color: var(--color-brand); }
.site-branding__image { display: block; width: auto; max-width: min(220px, 46vw); height: auto; max-height: 64px; object-fit: contain; }
.site-branding--footer .site-branding__image { max-height: 64px; }
.site-nav, .site-nav__list { display: flex; align-items: center; gap: 1.5rem; }
.site-nav__list { margin: 0; padding: 0; list-style: none; }
.site-nav__list a { color: var(--color-muted); font-size: .94rem; font-weight: 650; text-decoration: none; }
.site-nav__list a:hover, .current-menu-item > a { color: var(--color-heading); }
.nav-toggle { display: none; min-width: 46px; min-height: 46px; border: 0; color: var(--color-heading); background: transparent; }
.nav-toggle__label { position: absolute; overflow: hidden; width: 1px; height: 1px; clip: rect(0,0,0,0); }
.nav-toggle__icon { display: grid; gap: 6px; }
.nav-toggle__icon span { width: 24px; height: 2px; background: currentColor; transition: transform .2s ease; }

.home .site-header { background: #071d20; }
.home .site-header__inner { border-bottom-color: rgba(255,255,255,.1); }
.home .site-branding, .home .nav-toggle { color: #fff; }
.home .site-nav__list a { color: rgba(235,250,247,.7); }
.home .site-nav__list a:hover { color: #fff; }
.home .site-nav > .button { color: #08282b; background: #83ead2; box-shadow: 0 12px 30px rgba(38,214,176,.15); }
.home .site-nav > .button:hover { background: #a4f2df; }

.service-hub { position: relative; isolation: isolate; display: flex; min-height: clamp(640px, calc(100svh - 72px), 820px); align-items: center; overflow: hidden; padding-block: clamp(4.5rem, 8vw, 7rem); color: #fff; background: radial-gradient(circle at 76% 18%, rgba(47,198,181,.2), transparent 29%), radial-gradient(circle at 8% 82%, rgba(92,110,231,.2), transparent 32%), linear-gradient(135deg, #06191c 0%, #0a2c30 53%, #092225 100%); }
.service-hub::before { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(153,235,220,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(153,235,220,.055) 1px, transparent 1px); background-size: 58px 58px; content: ""; mask-image: linear-gradient(to bottom, rgba(0,0,0,.75), transparent 88%); }
.service-hub__layout { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, .92fr) minmax(420px, 1.08fr); align-items: center; gap: clamp(2.5rem, 6vw, 6.5rem); }
.service-hub__intro { max-width: 680px; }
.service-hub__intro h1 { max-width: 560px; margin-bottom: 1.5rem; color: #fff; text-wrap: balance; }
.service-hub__intro .eyebrow { margin-bottom: 1.1rem; color: #82ead3; }
.service-hub__intro .lead { max-width: 54ch; margin-bottom: 2rem; color: rgba(232,248,245,.72); }
.service-hub__intro .button { min-height: 56px; padding-inline: 1.55rem; color: #08282b; background: #83ead2; box-shadow: 0 18px 45px rgba(38,214,176,.2); }
.service-hub__intro .button:hover { background: #a4f2df; box-shadow: 0 22px 55px rgba(38,214,176,.28); }
.service-hub :focus-visible, .task-examples :focus-visible { outline-color: #a4f2df; }
.service-hub__visual { position: relative; width: min(650px, 100%); margin: 0; justify-self: center; }
.service-hub__visual::before { position: absolute; z-index: -1; inset: 8% 6%; border-radius: 50%; background: linear-gradient(135deg, rgba(55,226,192,.28), rgba(98,103,238,.22)); filter: blur(50px); content: ""; }
.service-hub__visual-frame { position: relative; height: 520px; overflow: hidden; border: 1px solid rgba(199,255,244,.18); border-radius: clamp(24px, 3vw, 40px); background: rgba(255,255,255,.04); box-shadow: 0 38px 110px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.12); transform: perspective(1200px) rotateY(-2deg) rotateX(1deg); }
.service-hub__visual-frame::after { position: absolute; inset: 0; border-radius: inherit; background: linear-gradient(135deg, rgba(255,255,255,.13), transparent 32%, transparent 68%, rgba(88,224,197,.08)); content: ""; pointer-events: none; }
.service-hub__visual-image { position: absolute; inset: 10px; width: calc(100% - 20px); height: calc(100% - 20px); object-fit: contain; object-position: center; }
.service-hub__glow { position: absolute; z-index: -1; border-radius: 46% 54% 58% 42% / 52% 44% 56% 48%; filter: blur(18px); opacity: .22; pointer-events: none; will-change: transform, border-radius; }
.service-hub__glow--one { top: -150px; right: 8%; width: 430px; height: 430px; background: #43d8bd; animation: glow-drift-one 14s cubic-bezier(.45,.05,.55,.95) infinite alternate; }
.service-hub__glow--two { bottom: -170px; left: -90px; width: 470px; height: 470px; background: #6674ed; animation: glow-drift-two 18s cubic-bezier(.45,.05,.55,.95) -6s infinite alternate; }

.services-showcase { position: relative; overflow: hidden; background: radial-gradient(circle at 5% 0%, rgba(97,214,190,.11), transparent 24%), radial-gradient(circle at 95% 100%, rgba(127,113,227,.1), transparent 24%), #f7f9f8; }
.services-showcase > .container { position: relative; z-index: 1; }
.services-showcase__network { position: absolute; z-index: 0; top: clamp(3.15rem, 4.8vw, 4.15rem); left: 50%; width: min(calc(100% - 40px), var(--container)); height: 170px; pointer-events: none; transform: translateX(-50%); }
.services-showcase__network-map { position: absolute; top: 0; width: clamp(200px, 18vw, 250px); height: auto; overflow: visible; color: #228fa0; }
.services-showcase__network-map--left { left: 0; }
.services-showcase__network-map--right { right: 0; color: #278b79; }
.services-showcase__network-line { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.1; opacity: .14; vector-effect: non-scaling-stroke; }
.services-showcase__network-branch { opacity: .09; }
.services-showcase__network-node { fill: currentColor; opacity: .2; }
.services-showcase__network-icon { filter: drop-shadow(0 0 7px rgba(41,151,137,.1)); }
.services-showcase__network-icon-ring { fill: rgba(255,255,255,.62); stroke: currentColor; stroke-width: 1; opacity: .24; vector-effect: non-scaling-stroke; }
.services-showcase__network-glyph { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.1; opacity: .28; vector-effect: non-scaling-stroke; }
.services-showcase__header { max-width: 800px; margin: 0 auto clamp(2.5rem, 5vw, 4rem); text-align: center; }
.services-showcase__header .eyebrow { margin-bottom: .9rem; }
.services-showcase__header h2 { margin-inline: auto; text-wrap: balance; }
.services-showcase__header > p:not(.eyebrow) { max-width: 64ch; margin: 0 auto; color: var(--color-muted); font-size: var(--type-section-intro); }
.services-showcase__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: stretch; gap: clamp(.85rem, 1.4vw, 1.25rem); }
.service-card { position: relative; isolation: isolate; display: flex; width: 100%; min-width: 0; flex-direction: column; justify-content: flex-start; gap: 1.1rem; padding: 20px; overflow: hidden; border: 1px solid rgba(255,255,255,.86); border-radius: 26px; box-shadow: var(--shadow-card); text-decoration: none; transition: transform .28s cubic-bezier(.2,.75,.25,1), box-shadow .28s ease, border-color .28s ease; }
.service-card::after { position: absolute; z-index: -1; top: -100px; right: -90px; width: 220px; height: 220px; border-radius: 50%; background: var(--card-glow, rgba(72,190,170,.18)); filter: blur(8px); content: ""; }
.service-card--feature { min-height: 100%; }
.service-card--compact { min-height: 190px; padding: 1rem 1.15rem; gap: .55rem; }
.service-card--showcase { height: 100%; min-height: 610px; padding: clamp(1.25rem, 1.65vw, 1.55rem); }
.service-card:has(.service-card__link:hover) { z-index: 2; border-color: rgba(20,124,118,.2); box-shadow: 0 25px 65px rgba(24,73,76,.14); transform: translateY(-3px); }
.service-card--blue { --card-accent: #328fda; --card-glow: rgba(62,161,230,.2); background: linear-gradient(155deg, #eef8ff, #e4f2fb); }
.service-card--mint { --card-accent: #178c77; --card-glow: rgba(38,190,158,.2); background: linear-gradient(155deg, #effbf7, #e4f5ef); }
.service-card--aqua { --card-accent: #0d8e9d; --card-glow: rgba(29,185,200,.2); background: linear-gradient(155deg, #edfbfc, #e1f3f5); }
.service-card--lilac { --card-accent: #6757bf; --card-glow: rgba(128,105,220,.2); background: linear-gradient(155deg, #f6f2ff, #ece8f9); }
.service-card--peach { --card-accent: #b86b45; --card-glow: rgba(220,133,91,.18); background: linear-gradient(155deg, #fff5ee, #faebe1); }
.service-card__top { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .85rem; }
.service-card__icon { display: grid; width: 56px; height: 56px; flex: 0 0 auto; place-items: center; overflow: hidden; border: 1px solid rgba(255,255,255,.95); border-radius: 18px; color: var(--card-accent, var(--color-brand-dark)); background: radial-gradient(circle at 24% 18%, rgba(255,255,255,.96), transparent 38%), linear-gradient(145deg, color-mix(in srgb, var(--card-accent) 16%, #fff), rgba(255,255,255,.76)); box-shadow: 0 12px 30px rgba(20,63,66,.09), inset 0 1px 0 rgba(255,255,255,.9); }
.service-card__icon svg { width: 38px; height: 38px; }
.service-card__icon-image { width: 40px; height: 40px; object-fit: contain; filter: drop-shadow(0 3px 4px rgba(12,47,50,.14)); }
.service-card__title { min-width: 0; color: var(--color-heading); font-size: var(--type-card-title); line-height: var(--leading-card-title); letter-spacing: -.025em; }
.service-card__content { min-height: 4.6em; margin: 0; color: var(--color-muted); font-size: var(--type-small); line-height: 1.52; }
.ui-chip-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem; margin: 0; padding: 0; list-style: none; }
.ui-chip { display: flex; min-width: 0; min-height: 36px; align-items: center; gap: .48rem; padding: .42rem .58rem; border: 1px solid rgba(18,72,75,.1); border-radius: 11px; color: var(--color-text); background: rgba(255,255,255,.76); box-shadow: 0 5px 15px rgba(24,73,76,.04), inset 0 1px 0 rgba(255,255,255,.9); font-size: .84rem; font-weight: 680; line-height: 1.2; }
.ui-chip::before { width: 6px; height: 6px; flex: 0 0 auto; border-radius: 100%; background: var(--color-brand); content: ""; opacity: .72; }
.ui-chip--has-icon::before { display: none; }
.ui-chip--full-width { grid-column: 1 / -1; }
.ui-chip__icon { display: block; width: 19px; height: 19px; flex: 0 0 auto; color: var(--card-accent, var(--color-brand)); fill: currentColor; object-fit: contain; }
.ui-chip__label { min-width: 0; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; hyphens: auto; }
.service-card__arrow { display: grid; width: 38px; height: 38px; flex: 0 0 auto; place-items: center; border-radius: 50%; color: var(--card-accent, var(--color-brand-dark)); background: rgba(255,255,255,.72); text-decoration: none; transition: color .25s ease, background-color .25s ease, transform .25s ease; }
.service-card__arrow:hover { color: #fff; background: var(--color-brand); transform: translate(2px,-2px); }
.service-card__more { width: fit-content; margin-top: auto; color: var(--color-brand-dark); font-size: .92rem; font-weight: 750; text-decoration: none; }
.service-card__more:hover span { transform: translateX(3px); }
.service-card__more span { display: inline-block; transition: transform .25s ease; }
.service-card__actions { display: grid; gap: .55rem; margin-top: auto; }
.service-card__modal-trigger { width: 100%; margin-top: 0; text-align: center; }
.service-card__modal-trigger.button { position: relative; isolation: isolate; min-height: 44px; overflow: hidden; border-color: rgba(255,255,255,.42); color: #fff; background: radial-gradient(circle at 18% 0%, rgba(157,255,229,.3), transparent 38%), linear-gradient(135deg, #0b716b 0%, #159688 52%, #09605c 100%); box-shadow: 0 12px 26px rgba(8,91,85,.22), inset 0 1px 0 rgba(255,255,255,.38), inset 0 -1px 0 rgba(4,55,53,.18); text-shadow: 0 1px 1px rgba(3,47,45,.22); }
.service-card__modal-trigger.button > * { position: relative; z-index: 1; }
.service-card__modal-trigger.button::before { position: absolute; z-index: 0; inset: 1px; border-radius: inherit; background: linear-gradient(180deg, rgba(255,255,255,.13), transparent 48%); content: ""; pointer-events: none; }
.service-card__modal-trigger.button::after { position: absolute; z-index: 0; top: -110%; left: -42%; width: 28%; height: 320%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.48), transparent); content: ""; pointer-events: none; transform: translateX(-180%) rotate(18deg); transition: transform .7s cubic-bezier(.2,.75,.25,1); }
.service-card__modal-trigger.button:hover { border-color: rgba(255,255,255,.58); background: radial-gradient(circle at 18% 0%, rgba(177,255,235,.38), transparent 40%), linear-gradient(135deg, #0a8178 0%, #18a291 52%, #086861 100%); box-shadow: 0 16px 32px rgba(8,91,85,.29), inset 0 1px 0 rgba(255,255,255,.44), inset 0 -1px 0 rgba(4,55,53,.18); }
.service-card__modal-trigger.button:hover::after { transform: translateX(560%) rotate(18deg); }
.service-card__modal-trigger.button:active { box-shadow: 0 8px 18px rgba(8,91,85,.22), inset 0 1px 0 rgba(255,255,255,.28); transform: translateY(0); }
.service-card__modal-trigger.button.button--telegram { background: radial-gradient(circle at 18% 0%, rgba(166,226,255,.36), transparent 38%), linear-gradient(135deg, #2295e8 0%, #2b78db 54%, #3158bd 100%); box-shadow: 0 12px 28px rgba(35,104,198,.27), inset 0 1px 0 rgba(255,255,255,.4), inset 0 -1px 0 rgba(18,54,141,.22); }
.service-card__modal-trigger.button.button--telegram:hover { background: radial-gradient(circle at 18% 0%, rgba(191,237,255,.44), transparent 40%), linear-gradient(135deg, #27a3f1 0%, #2c80e5 54%, #345fc7 100%); box-shadow: 0 16px 34px rgba(35,104,198,.34), inset 0 1px 0 rgba(255,255,255,.46), inset 0 -1px 0 rgba(18,54,141,.22); }
.service-card__modal-trigger.button.button--telegram:active { box-shadow: 0 8px 20px rgba(35,104,198,.26), inset 0 1px 0 rgba(255,255,255,.3); }
.service-card__modal-trigger--text { width: fit-content; min-height: 44px; justify-self: center; padding: .45rem 0 .3rem; border: 0; border-bottom: 1px solid currentColor; border-radius: 0; color: var(--color-brand-dark); background: transparent; box-shadow: none; cursor: pointer; font-size: .9rem; font-weight: 700; line-height: 1.3; }
.service-card__modal-trigger--text:hover { border-bottom-color: transparent; color: var(--color-heading); background: transparent; }
.service-card__action-icon { width: 19px; height: 19px; flex: 0 0 auto; object-fit: contain; filter: drop-shadow(0 2px 3px rgba(5,45,75,.2)); }
.service-card:has(.service-card__modal-trigger) .service-card__more { margin-top: 0; }
.service-card--showcase .service-card__title { font-size: var(--type-card-title); }
.service-card--showcase .service-card__top { min-height: 56px; }
.service-card--showcase .ui-chip-list { align-content: start; }
.service-card--showcase .service-card__actions { width: 100%; }
.service-card--compact .service-card__title { font-size: var(--type-card-title-dense); }
.service-card--compact .service-card__content { display: -webkit-box; overflow: hidden; font-size: .94rem; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.service-card--compact .ui-chip-list { gap: .35rem; }
.service-card--compact .ui-chip { min-height: 29px; padding: .3rem .45rem; border-radius: 8px; font-size: .78rem; }
.service-card--compact .ui-chip::before { width: 5px; height: 5px; }
.service-card--compact .ui-chip__icon { width: 17px; height: 17px; }
.service-card--compact .service-card__more { font-size: .84rem; }

.task-examples { position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 92% 12%, rgba(95,91,210,.28), transparent 25%), radial-gradient(circle at 5% 88%, rgba(35,188,162,.18), transparent 27%), #081f22; }
.task-examples::before { position: absolute; inset: 0; background-image: radial-gradient(rgba(146,231,215,.16) 1px, transparent 1px); background-size: 24px 24px; content: ""; opacity: .28; mask-image: linear-gradient(to right, transparent, #000 35%, #000 65%, transparent); }
.task-examples__inner { position: relative; }
.task-examples__header { max-width: 790px; margin: 0 auto clamp(2.5rem, 5vw, 4rem); text-align: center; }
.task-examples__header .eyebrow { color: #82ead3; }
.task-examples__header h2 { margin-inline: auto; color: #fff; text-wrap: balance; }
.task-examples__header > p:not(.eyebrow) { max-width: 64ch; margin-inline: auto; color: rgba(232,248,245,.68); font-size: var(--type-section-intro); }
.task-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.task-list li { position: relative; display: grid; grid-template-columns: 1fr; align-content: space-between; gap: 1rem; padding: 1.4rem; border: 1px solid rgba(186,244,233,.13); border-radius: 20px; color: #fff; background: linear-gradient(145deg, rgba(255,255,255,.085), rgba(255,255,255,.035)); box-shadow: inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter: blur(10px); transition: transform .25s ease, border-color .25s ease, background-color .25s ease; }
.task-list li:hover { border-color: rgba(130,234,211,.32); background-color: rgba(255,255,255,.04); transform: translateY(-4px); }
.task-list li p { grid-column: 1 / -1; margin: 0; color: rgba(244,253,251,.9); font-size: var(--type-body); font-weight: 620; line-height: 1.5; }
.task-list__index { color: #82ead3; font-size: .74rem; font-weight: 800; letter-spacing: .14em; }
.task-examples__actions { display: flex; justify-content: center; margin-top: clamp(2rem, 4vw, 3.25rem); }

.card-topline { display: flex; min-width: 0; align-items: flex-start; justify-content: space-between; gap: .85rem; }
.automation-level { --automation-level-accent: var(--case-accent, var(--color-brand)); display: grid; flex: 0 0 auto; justify-items: end; gap: .28rem; color: var(--color-muted); line-height: 1; }
.automation-level__status { display: flex; align-items: center; justify-content: flex-end; gap: .48rem; }
.automation-level__meter { display: flex; gap: .28rem; }
.automation-level__dot { width: 8px; height: 8px; border: 1px solid color-mix(in srgb, var(--automation-level-accent) 34%, transparent); border-radius: 50%; background: color-mix(in srgb, var(--automation-level-accent) 12%, transparent); box-shadow: inset 0 1px 1px rgba(255,255,255,.35); }
.automation-level__dot.is-active { border-color: var(--automation-level-accent); background: var(--automation-level-accent); box-shadow: 0 0 0 3px color-mix(in srgb, var(--automation-level-accent) 13%, transparent), 0 0 12px color-mix(in srgb, var(--automation-level-accent) 28%, transparent); }
.automation-level__value { color: var(--automation-level-accent); font-size: .7rem; font-weight: 790; letter-spacing: .01em; }
.automation-level--dark { --automation-level-accent: #82ead3; color: rgba(224,248,243,.48); }
.automation-level--dark .automation-level__dot { border-color: rgba(130,234,211,.2); background: rgba(130,234,211,.07); box-shadow: inset 0 1px 1px rgba(255,255,255,.08); }
.automation-level--dark .automation-level__dot.is-active { border-color: #82ead3; background: #82ead3; box-shadow: 0 0 0 3px rgba(130,234,211,.1), 0 0 13px rgba(130,234,211,.24); }

.home-process { position: relative; overflow: hidden; background: radial-gradient(circle at 6% 12%, rgba(48,196,170,.11), transparent 25%), radial-gradient(circle at 94% 86%, rgba(103,87,191,.1), transparent 26%), #f7f9f8; }
.home-process::before { position: absolute; inset: 0; background-image: linear-gradient(rgba(20,124,118,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(20,124,118,.035) 1px, transparent 1px); background-size: 64px 64px; content: ""; mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent); pointer-events: none; }
.home-process__inner { position: relative; }
.home-process__header { max-width: 800px; margin: 0 auto clamp(2.75rem, 5vw, 4.5rem); text-align: center; }
.home-process__header h2 { margin-inline: auto; text-wrap: balance; }
.home-process__header > p:not(.eyebrow) { max-width: 66ch; margin-inline: auto; color: var(--color-muted); font-size: var(--type-section-intro); line-height: var(--leading-body); }
.home-process__steps { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.home-process-step { --process-accent: #208fce; position: relative; isolation: isolate; display: flex; min-width: 0; min-height: 310px; flex-direction: column; gap: 1rem; overflow: visible; padding: 1.5rem; border: 1px solid rgba(255,255,255,.92); border-radius: 26px; background: linear-gradient(150deg, rgba(255,255,255,.98), rgba(235,246,249,.92)); box-shadow: 0 22px 58px rgba(9,45,48,.09), inset 0 1px 0 rgba(255,255,255,.9); }
.home-process-step:nth-child(2) { --process-accent: #158c77; background: linear-gradient(150deg, rgba(255,255,255,.98), rgba(231,247,241,.93)); }
.home-process-step:nth-child(3) { --process-accent: #6b5cc5; background: linear-gradient(150deg, rgba(255,255,255,.98), rgba(240,237,252,.94)); }
.home-process-step:nth-child(4) { --process-accent: #b76a45; background: linear-gradient(150deg, rgba(255,255,255,.98), rgba(251,238,229,.94)); }
.home-process-step::before { position: absolute; z-index: -1; top: -84px; right: -82px; width: 190px; height: 190px; border-radius: 50%; background: color-mix(in srgb, var(--process-accent) 15%, transparent); content: ""; }
.home-process-step::after { position: absolute; z-index: 2; top: 49px; left: calc(100% + 1px); width: 1rem; height: 1px; background: linear-gradient(90deg, color-mix(in srgb, var(--process-accent) 48%, transparent), rgba(20,124,118,.18)); content: ""; }
.home-process-step:last-child::after { content: none; }
.home-process-step__number { display: grid; width: 52px; height: 52px; place-items: center; border: 1px solid color-mix(in srgb, var(--process-accent) 26%, white); border-radius: 17px; color: var(--process-accent); background: color-mix(in srgb, var(--process-accent) 10%, white); box-shadow: 0 12px 28px color-mix(in srgb, var(--process-accent) 14%, transparent), inset 0 1px 0 rgba(255,255,255,.9); font-size: .76rem; font-weight: 850; letter-spacing: .12em; }
.home-process-step h3 { max-width: 14ch; margin: .3rem 0 0; font-size: var(--type-card-title); line-height: var(--leading-card-title); letter-spacing: -.025em; text-wrap: balance; }
.home-process-step p { margin: 0; color: #496568; font-size: var(--type-small); line-height: 1.62; }

.cases-page-view .site-header, .system-service-page-view .site-header { background: #071d20; }
.cases-page-view .site-header__inner, .system-service-page-view .site-header__inner { border-bottom-color: rgba(255,255,255,.1); }
.cases-page-view .site-branding, .cases-page-view .nav-toggle, .system-service-page-view .site-branding, .system-service-page-view .nav-toggle { color: #fff; }
.cases-page-view .site-nav__list a, .system-service-page-view .site-nav__list a { color: rgba(235,250,247,.7); }
.cases-page-view .site-nav__list a:hover, .system-service-page-view .site-nav__list a:hover { color: #fff; }
.cases-page-view .site-nav > .button, .system-service-page-view .site-nav > .button { color: #08282b; background: #83ead2; box-shadow: 0 12px 30px rgba(38,214,176,.15); }
.cases-page-view .site-footer, .system-service-page-view .site-footer { color: rgba(226,245,241,.62); background: #071d20; }
.cases-page-view .site-footer .site-branding, .system-service-page-view .site-footer .site-branding { color: #fff; }

.cases-hero { position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(5rem, 9vw, 8rem); color: #fff; background: radial-gradient(circle at 78% 16%, rgba(71,209,185,.22), transparent 28%), radial-gradient(circle at 8% 90%, rgba(91,103,226,.2), transparent 30%), #081f22; }
.cases-hero::before { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(153,235,220,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(153,235,220,.05) 1px, transparent 1px); background-size: 58px 58px; content: ""; mask-image: linear-gradient(to bottom, #000, transparent 94%); }
.cases-hero__layout { display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(390px, .96fr); align-items: center; gap: clamp(3rem, 7vw, 7rem); }
.cases-hero__content h1 { max-width: 620px; margin-bottom: 1.5rem; color: #fff; text-wrap: balance; }
.cases-hero__content .eyebrow { color: #82ead3; }
.cases-hero__content .lead { max-width: 58ch; color: rgba(232,248,245,.72); line-height: 1.65; }
.cases-hero__content .button { color: #08282b; background: #83ead2; }
.cases-route { padding: clamp(1.5rem, 3vw, 2.25rem); border: 1px solid rgba(184,245,232,.16); border-radius: 30px; background: linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.035)); box-shadow: 0 32px 90px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter: blur(12px); }
.cases-route__label { margin-bottom: 1.5rem; color: #a4f2df; font-size: .76rem; font-weight: 780; letter-spacing: .12em; text-transform: uppercase; }
.cases-route ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.cases-route li { display: grid; grid-template-columns: 42px 1fr; gap: 1rem; padding-block: 1.05rem; border-top: 1px solid rgba(255,255,255,.1); }
.cases-route li:first-child { padding-top: 0; border-top: 0; }
.cases-route li:last-child { padding-bottom: 0; }
.cases-route li > span { display: grid; width: 36px; height: 36px; place-items: center; border: 1px solid rgba(130,234,211,.24); border-radius: 50%; color: #82ead3; font-size: .7rem; font-weight: 800; letter-spacing: .08em; }
.cases-route strong { display: block; margin-bottom: .2rem; color: #fff; font-size: 1.02rem; }
.cases-route li p { margin: 0; color: rgba(232,248,245,.62); font-size: .9rem; line-height: 1.5; }

.cases-catalog { position: relative; overflow: hidden; background: radial-gradient(circle at 0 12%, rgba(75,203,178,.1), transparent 22%), radial-gradient(circle at 100% 72%, rgba(118,103,224,.09), transparent 24%), #f7f9f8; }
.cases-catalog__header { display: grid; max-width: 900px; grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr); gap: 1rem 4rem; margin-bottom: clamp(2.75rem, 5vw, 4.5rem); }
.cases-catalog__header .eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
.cases-catalog__header h2 { margin-bottom: 0; text-wrap: balance; }
.cases-catalog__header > p:not(.eyebrow) { align-self: end; margin: 0; color: var(--color-muted); font-size: var(--type-section-intro); line-height: var(--leading-body); }
.case-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(1rem, 2vw, 1.5rem); }
.case-card { --case-accent: #328fda; position: relative; isolation: isolate; display: flex; min-width: 0; flex-direction: column; gap: 1.6rem; overflow: hidden; padding: clamp(1.5rem, 3vw, 2.25rem); border: 1px solid rgba(255,255,255,.9); border-radius: 30px; background: linear-gradient(145deg, #eef8ff, #e8f2f7); box-shadow: 0 24px 70px rgba(9,45,48,.09); }
.case-card::before { position: absolute; z-index: -1; top: -100px; right: -90px; width: 260px; height: 260px; border-radius: 50%; background: color-mix(in srgb, var(--case-accent) 18%, transparent); filter: blur(4px); content: ""; }
.case-card--mint { --case-accent: #178c77; background: linear-gradient(145deg, #effbf7, #e5f4ed); }
.case-card--aqua { --case-accent: #0d8e9d; background: linear-gradient(145deg, #edfbfc, #e3f2f4); }
.case-card--lilac { --case-accent: #6757bf; background: linear-gradient(145deg, #f6f2ff, #ece9f8); }
.case-card--peach { --case-accent: #b86b45; background: linear-gradient(145deg, #fff6ef, #faece2); }
.case-card__header { display: grid; gap: .8rem; }
.case-card__industry { width: fit-content; padding: .38rem .7rem; border: 1px solid rgba(255,255,255,.9); border-radius: 999px; color: var(--case-accent); background: rgba(255,255,255,.68); font-size: .75rem; font-weight: 760; }
.case-card__header h3 { max-width: 22ch; margin: .25rem 0 0; font-size: var(--type-feature-title); line-height: var(--leading-feature-title); letter-spacing: -.03em; text-wrap: balance; }
.case-card__label { display: block; margin-bottom: .55rem; color: color-mix(in srgb, var(--case-accent) 76%, #0d2528); font-size: .72rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.case-card__challenge { padding: 1.15rem 1.25rem; border: 1px solid rgba(255,255,255,.86); border-radius: 18px; background: rgba(255,255,255,.55); }
.case-card__challenge p, .case-card__result p { margin: 0; color: #304f52; line-height: 1.58; }
.case-card__solution ul { display: grid; gap: .58rem; margin: 0; padding: 0; list-style: none; }
.case-card__solution li { position: relative; padding-left: 1.35rem; color: #1d4144; line-height: 1.48; }
.case-card__solution li::before { position: absolute; top: .58em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: var(--case-accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--case-accent) 12%, transparent); content: ""; }
.case-card__footer { display: grid; grid-template-columns: 130px 1fr; gap: 1.25rem; margin-top: auto; padding-top: 1.35rem; border-top: 1px solid rgba(13,73,76,.12); }
.case-card__timeline strong { color: var(--color-heading); font-size: 1.05rem; }
.case-card__result .case-card__label, .case-card__timeline .case-card__label { margin-bottom: .35rem; }
.case-card__result p { font-size: .92rem; }
.cases-cta { background: #f7f9f8; }

.erp-hero { position: relative; isolation: isolate; overflow: hidden; padding-block: clamp(5rem, 9vw, 8rem); color: #fff; background: radial-gradient(circle at 82% 14%, rgba(54,206,180,.23), transparent 28%), radial-gradient(circle at 7% 92%, rgba(76,104,229,.22), transparent 31%), #071e21; }
.erp-hero::before { position: absolute; z-index: -1; inset: 0; background-image: linear-gradient(rgba(153,235,220,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(153,235,220,.05) 1px, transparent 1px); background-size: 58px 58px; content: ""; mask-image: linear-gradient(to bottom, #000, transparent 94%); }
.erp-hero__layout { display: grid; grid-template-columns: minmax(0, 1.04fr) minmax(420px, .96fr); align-items: center; gap: clamp(3rem, 7vw, 7rem); }
.erp-hero__content h1 { margin-bottom: 1.5rem; color: #fff; text-wrap: balance; }
.erp-hero__content .eyebrow { color: #82ead3; }
.erp-hero__content .lead { max-width: 56ch; color: rgba(232,248,245,.72); line-height: 1.65; }
.erp-hero__content .button { color: #08282b; background: #83ead2; }
.erp-system-map { padding: clamp(1.4rem, 3vw, 2rem); border: 1px solid rgba(184,245,232,.16); border-radius: 30px; background: linear-gradient(145deg, rgba(255,255,255,.1), rgba(255,255,255,.035)); box-shadow: 0 32px 90px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.08); backdrop-filter: blur(12px); }
.erp-system-map__core { display: flex; align-items: center; gap: .9rem; margin-bottom: 1.25rem; padding-bottom: 1.25rem; border-bottom: 1px solid rgba(255,255,255,.1); }
.erp-system-map__core span { display: grid; width: 58px; height: 58px; place-items: center; border-radius: 18px; color: #08282b; background: #82ead3; box-shadow: 0 14px 34px rgba(44,211,178,.2); font-size: 1.05rem; font-weight: 850; }
.erp-system-map__core strong { color: #fff; font-size: 1.08rem; }
.erp-system-map ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .7rem; margin: 0; padding: 0; list-style: none; }
.erp-system-map li { display: grid; min-width: 0; grid-template-columns: 10px 1fr; gap: .7rem; padding: .85rem; border: 1px solid rgba(255,255,255,.08); border-radius: 15px; background: rgba(255,255,255,.045); }
.erp-system-map__dot { width: 8px; height: 8px; margin-top: .38rem; border-radius: 50%; background: #82ead3; box-shadow: 0 0 0 4px rgba(130,234,211,.1); }
.erp-system-map li strong { display: block; color: #fff; font-size: .9rem; }
.erp-system-map li p { margin: .15rem 0 0; color: rgba(232,248,245,.58); font-size: .78rem; line-height: 1.42; }

.erp-capabilities { background: radial-gradient(circle at 5% 0%, rgba(97,214,190,.11), transparent 24%), radial-gradient(circle at 95% 100%, rgba(127,113,227,.1), transparent 24%), #f7f9f8; }
.erp-section-header, .erp-cases__header { max-width: 820px; margin: 0 auto clamp(2.5rem, 5vw, 4rem); text-align: center; }
.erp-section-header h2, .erp-cases__header h2 { margin-inline: auto; text-wrap: balance; }
.erp-section-header > p:not(.eyebrow), .erp-cases__header > p:not(.eyebrow) { max-width: 64ch; margin-inline: auto; color: var(--color-muted); font-size: var(--type-section-intro); }
.erp-capabilities__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.erp-capability { position: relative; min-height: 250px; overflow: hidden; padding: 1.6rem; border: 1px solid rgba(255,255,255,.92); border-radius: 24px; background: rgba(255,255,255,.72); box-shadow: 0 20px 60px rgba(9,45,48,.08); }
.erp-capability::after { position: absolute; right: -50px; bottom: -70px; width: 150px; height: 150px; border-radius: 50%; background: rgba(84,204,181,.12); content: ""; }
.erp-capability__marker { display: block; width: 38px; height: 5px; margin-bottom: 2.25rem; border-radius: 999px; background: linear-gradient(90deg, #1aa88f, #5c75df); }
.erp-capability h3 { margin-bottom: .8rem; font-size: var(--type-card-title); line-height: var(--leading-card-title); letter-spacing: -.025em; }
.erp-capability p { position: relative; z-index: 1; margin: 0; color: var(--color-muted); font-size: .94rem; line-height: 1.58; }

.erp-cases { position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 93% 10%, rgba(95,91,210,.26), transparent 24%), radial-gradient(circle at 4% 88%, rgba(35,188,162,.17), transparent 26%), #081f22; }
.erp-cases::before { position: absolute; inset: 0; background-image: radial-gradient(rgba(146,231,215,.14) 1px, transparent 1px); background-size: 24px 24px; content: ""; opacity: .24; mask-image: linear-gradient(to right, transparent, #000 35%, #000 65%, transparent); }
.erp-cases > .container { position: relative; }
.erp-cases__header .eyebrow { color: #82ead3; }
.erp-cases__header h2 { color: #fff; }
.erp-cases__header > p:not(.eyebrow) { color: rgba(232,248,245,.66); }
.erp-case-list { display: grid; gap: .9rem; max-width: 1080px; margin-inline: auto; }
.erp-case { --erp-case-accent: #328fda; overflow: hidden; border: 1px solid rgba(255,255,255,.85); border-radius: 24px; color: var(--color-text); background: linear-gradient(145deg, #eef8ff, #e7f2f8); box-shadow: 0 20px 55px rgba(0,0,0,.16); }
.erp-case--mint { --erp-case-accent: #178c77; background: linear-gradient(145deg, #effbf7, #e5f4ed); }
.erp-case--aqua { --erp-case-accent: #0d8e9d; background: linear-gradient(145deg, #edfbfc, #e3f2f4); }
.erp-case--lilac { --erp-case-accent: #6757bf; background: linear-gradient(145deg, #f6f2ff, #ece9f8); }
.erp-case--peach { --erp-case-accent: #b86b45; background: linear-gradient(145deg, #fff6ef, #faece2); }
.erp-case summary { display: grid; min-height: 150px; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 2rem; padding: 1.5rem 1.75rem; cursor: pointer; list-style: none; }
.erp-case summary::-webkit-details-marker { display: none; }
.erp-case summary:hover { background: rgba(255,255,255,.26); }
.erp-case summary:focus-visible { outline: 3px solid var(--erp-case-accent); outline-offset: -5px; }
.erp-case__summary-content { min-width: 0; }
.erp-case__industry { display: inline-flex; margin-bottom: .65rem; padding: .34rem .68rem; border: 1px solid rgba(255,255,255,.92); border-radius: 999px; color: var(--erp-case-accent); background: rgba(255,255,255,.66); font-size: .72rem; font-weight: 780; }
.erp-case__summary-content h3 { max-width: 28ch; margin-bottom: .5rem; font-size: var(--type-feature-title); line-height: var(--leading-feature-title); letter-spacing: -.03em; text-wrap: balance; }
.erp-case__summary-content p { max-width: 72ch; margin: 0; color: #456164; line-height: 1.55; }
.erp-case__toggle { display: inline-flex; min-width: 132px; align-items: center; justify-content: flex-end; gap: .7rem; color: var(--erp-case-accent); font-size: .82rem; font-weight: 780; }
.erp-case__toggle b { position: relative; display: block; width: 38px; height: 38px; border-radius: 50%; background: var(--erp-case-accent); box-shadow: 0 10px 24px color-mix(in srgb, var(--erp-case-accent) 22%, transparent); }
.erp-case__toggle b::before, .erp-case__toggle b::after { position: absolute; top: 50%; left: 50%; width: 14px; height: 2px; border-radius: 2px; background: #fff; content: ""; transform: translate(-50%,-50%); }
.erp-case__toggle b::after { transform: translate(-50%,-50%) rotate(90deg); transition: transform .2s ease; }
.erp-case__toggle-close { display: none; }
.erp-case[open] .erp-case__toggle-open { display: none; }
.erp-case[open] .erp-case__toggle-close { display: inline; }
.erp-case[open] .erp-case__toggle b::after { transform: translate(-50%,-50%) rotate(0); }
.erp-case__body { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 1.5rem; padding: 0 1.75rem 1.75rem; border-top: 1px solid rgba(13,73,76,.12); }
.erp-case__challenge, .erp-case__solution { padding-top: 1.5rem; }
.erp-case__challenge { padding: 1.25rem; margin-top: 1.5rem; border: 1px solid rgba(255,255,255,.88); border-radius: 18px; background: rgba(255,255,255,.55); }
.erp-case__label { display: block; margin-bottom: .5rem; color: color-mix(in srgb, var(--erp-case-accent) 78%, #0d2528); font-size: .7rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.erp-case__challenge p, .erp-case__meta p { margin: 0; color: #304f52; line-height: 1.58; }
.erp-case__solution ul { display: grid; gap: .55rem; margin: 0; padding: 0; list-style: none; }
.erp-case__solution li { position: relative; padding-left: 1.35rem; color: #1d4144; line-height: 1.5; }
.erp-case__solution li::before { position: absolute; top: .58em; left: 0; width: 7px; height: 7px; border-radius: 50%; background: var(--erp-case-accent); box-shadow: 0 0 0 4px color-mix(in srgb, var(--erp-case-accent) 12%, transparent); content: ""; }
.erp-case__meta { display: grid; grid-column: 1 / -1; grid-template-columns: 150px 1fr; gap: 1.4rem; padding: 1.25rem; border: 1px solid rgba(255,255,255,.86); border-radius: 18px; background: rgba(255,255,255,.42); }
.erp-case__meta strong { color: var(--color-heading); }
.erp-case__meta .erp-case__label { margin-bottom: .3rem; }
.erp-case__meta p { font-size: .92rem; }
.erp-cta { background: #f7f9f8; }
.consultation { position: relative; overflow: hidden; padding-top: clamp(3rem, 6vw, 5rem); background: #f7f9f8; }
.consultation__card { position: relative; isolation: isolate; display: flex; min-height: 330px; align-items: center; justify-content: space-between; gap: 3rem; overflow: hidden; padding: clamp(2.5rem, 6vw, 5.5rem); border: 1px solid rgba(255,255,255,.85); border-radius: 38px; color: #234f50; background: radial-gradient(circle at 82% 20%, rgba(111,99,220,.17), transparent 29%), radial-gradient(circle at 15% 110%, rgba(32,183,150,.25), transparent 42%), linear-gradient(135deg, #dff8ef, #e9f2ff 58%, #f1ecff); box-shadow: 0 30px 90px rgba(13,53,55,.12); }
.consultation__card::after { position: absolute; z-index: -1; right: -70px; bottom: -120px; width: 310px; height: 310px; border: 1px solid rgba(77,67,168,.12); border-radius: 50%; box-shadow: 0 0 0 38px rgba(77,67,168,.04), 0 0 0 78px rgba(77,67,168,.025); content: ""; }
.consultation__card .eyebrow { margin-bottom: 1rem; color: #126b60; }
.consultation__card h2 { max-width: 14ch; margin-bottom: 1rem; color: #0b3033; font-size: var(--type-section-title); text-wrap: balance; }
.consultation__card p:not(.eyebrow) { max-width: 620px; margin-bottom: 0; font-size: var(--type-section-intro); }
.consultation__card .button { flex: 0 0 auto; min-height: 58px; padding-inline: 1.55rem; color: #fff; background: #0a4144; box-shadow: 0 16px 40px rgba(8,52,55,.18); }
.consultation__card .button:hover { background: #071f22; }
.consultation__card--form { display: grid; grid-template-columns: minmax(0, .9fr) minmax(440px, 1.1fr); gap: clamp(2rem, 4vw, 4rem); padding: clamp(2rem, 4vw, 3.5rem); }
.consultation__copy { min-width: 0; }
.consultation__form { width: min(540px, 100%); padding: clamp(1rem, 1.8vw, 1.4rem); border: 1px solid rgba(255,255,255,.7); border-radius: 24px; background: rgba(255,255,255,.46); box-shadow: 0 18px 48px rgba(15,76,78,.09), inset 0 1px 0 rgba(255,255,255,.7); backdrop-filter: blur(8px); justify-self: end; }
.consultation__form .ui-popup-form { gap: .65rem; }
.consultation__form .ui-popup-form__grid { gap: .65rem; }
.consultation__form .ui-popup-form input:not([type="submit"]):not([type="checkbox"]), .consultation__form .ui-popup-form textarea { background: rgba(255,255,255,.62); }
.consultation__form .ui-popup-form textarea { min-height: 72px; }

.site-footer { padding-block: 2.5rem; color: var(--color-muted); background: #eef7f5; }
.site-footer__inner { display: grid; grid-template-columns: minmax(220px, 1.2fr) minmax(110px, .65fr) minmax(110px, .65fr) minmax(300px, 1.5fr); align-items: start; gap: clamp(2rem, 4vw, 4rem); }
.site-footer__description { max-width: 270px; margin-top: .6rem; }
.site-footer__description p { margin: 0; }
.site-footer__description p + p { margin-top: .5rem; }
.site-footer__title { margin: .15rem 0 1rem; color: var(--color-heading); font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.site-footer__menu { display: grid; gap: .65rem; margin: 0; padding: 0; list-style: none; }
.site-footer__menu a, .site-footer__contacts a { color: inherit; font-size: .92rem; text-decoration: none; transition: color .2s ease; }
.site-footer__menu a:hover, .site-footer__contacts a:hover { color: var(--color-heading); }
.site-footer__contacts { display: grid; gap: .65rem; font-style: normal; }
.site-footer__phone { width: fit-content; font-size: 1rem !important; font-weight: 750; }
.site-footer__contact-links { display: flex; flex-wrap: nowrap; align-items: center; gap: .45rem; }
.site-footer__contact-links a { display: grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border: 1px solid color-mix(in srgb, currentColor 20%, transparent); border-radius: 50%; color: inherit; background: color-mix(in srgb, currentColor 5%, transparent); transition: color .2s ease, border-color .2s ease, background-color .2s ease, transform .2s ease; }
.site-footer__contact-links a:hover { border-color: color-mix(in srgb, var(--color-brand) 48%, transparent); color: var(--color-brand); background: color-mix(in srgb, var(--color-brand) 10%, transparent); transform: translateY(-2px); }
.site-footer__contact-icon { display: block; width: 15px; height: 15px; }
.site-footer__meta { margin-top: 2rem; padding-top: 1.25rem; border-top: 1px solid var(--color-border); font-size: .85rem; }
.home .site-footer { color: rgba(226,245,241,.62); background: #071d20; }
.home .site-footer .site-branding, .home .site-footer__title { color: #fff; }
.home .site-footer__menu a:hover, .home .site-footer__contacts a:hover { color: #fff; }
.home .site-footer__meta { border-top-color: rgba(255,255,255,.1); }
.cases-page-view .site-footer__title, .system-service-page-view .site-footer__title { color: #fff; }
.cases-page-view .site-footer__menu a:hover, .cases-page-view .site-footer__contacts a:hover, .system-service-page-view .site-footer__menu a:hover, .system-service-page-view .site-footer__contacts a:hover { color: #fff; }
.cases-page-view .site-footer__meta, .system-service-page-view .site-footer__meta { border-top-color: rgba(255,255,255,.1); }
.scroll-top { display: none; }
.has-js .scroll-top { position: fixed; z-index: 50; right: max(1.25rem, env(safe-area-inset-right)); bottom: max(1.25rem, env(safe-area-inset-bottom)); display: grid; width: 50px; height: 50px; padding: 0; place-items: center; border: 1px solid rgba(255,255,255,.32); border-radius: 50%; color: #effffc; background: radial-gradient(circle at 30% 18%, rgba(153,244,222,.28), transparent 38%), linear-gradient(145deg, #147f78, #0b5f5b); box-shadow: 0 14px 34px rgba(5,54,56,.22), inset 0 1px 0 rgba(255,255,255,.3); cursor: pointer; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(9px) scale(.96); transition: opacity .22s ease, visibility .22s ease, transform .22s ease, box-shadow .22s ease, background-color .22s ease; }
.has-js .scroll-top[data-visible], .has-js .scroll-top:focus-visible { opacity: 1; visibility: visible; pointer-events: auto; transform: none; }
.scroll-top svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.scroll-top:hover { background: radial-gradient(circle at 30% 18%, rgba(178,255,236,.34), transparent 40%), linear-gradient(145deg, #17968b, #0a6660); box-shadow: 0 18px 38px rgba(5,54,56,.28), inset 0 1px 0 rgba(255,255,255,.34); transform: translateY(-3px); }
.scroll-top:active { box-shadow: 0 9px 22px rgba(5,54,56,.22), inset 0 1px 0 rgba(255,255,255,.24); transform: translateY(0); }
.ui-modal-open .scroll-top { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }
.entry-card { padding: 1.5rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); }

body.ui-modal-open { overflow: hidden; }
.ui-modal[hidden] { display: none; }
.ui-modal { position: fixed; z-index: 1000; inset: 0; display: grid; overflow-y: auto; padding: clamp(1rem, 3vw, 2rem); place-items: center; background: rgba(5, 26, 29, .7); backdrop-filter: blur(10px); animation: modal-backdrop-in .22s ease both; }
.ui-modal__dialog { position: relative; isolation: isolate; width: min(620px, 100%); max-height: calc(100dvh - 2rem); overflow-x: hidden; overflow-y: auto; padding: clamp(1.5rem, 3vw, 2.25rem); border: 1px solid rgba(115,211,196,.34); border-radius: var(--radius-lg); background: radial-gradient(circle at 96% 3%, rgba(132,226,211,.2), transparent 32%), radial-gradient(circle at 8% 100%, rgba(111,197,222,.12), transparent 34%), linear-gradient(145deg, rgba(255,255,255,.99), #f5fbfa 58%, #eef8f8); box-shadow: 0 28px 80px rgba(4,34,36,.25), inset 0 1px 0 rgba(255,255,255,.9); animation: modal-dialog-in .28s cubic-bezier(.2,.75,.25,1) both; scrollbar-gutter: stable; }
.ui-modal__network { position: absolute; z-index: -1; top: 1.35rem; right: 3.7rem; width: 175px; color: #2a9d91; opacity: .68; pointer-events: none; }
.ui-modal__network svg { width: 100%; height: auto; overflow: visible; }
.ui-modal__network-line { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1; opacity: .13; vector-effect: non-scaling-stroke; }
.ui-modal__network-branch { opacity: .08; }
.ui-modal__network-node { fill: currentColor; opacity: .19; }
.ui-modal__network-icon-ring { fill: rgba(255,255,255,.58); stroke: currentColor; stroke-width: 1; opacity: .23; vector-effect: non-scaling-stroke; }
.ui-modal__network-glyph { fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1; opacity: .25; vector-effect: non-scaling-stroke; }
.ui-modal__content { position: relative; z-index: 1; padding-right: clamp(.4rem, 2vw, 1rem); }
.ui-modal__eyebrow { margin: 0 0 .65rem; color: var(--color-brand-dark); font-size: .7rem; font-weight: 780; letter-spacing: .13em; text-transform: uppercase; }
.ui-modal__content h2 { max-width: 18ch; margin-bottom: .6rem; font-size: clamp(1.55rem, 3vw, 2.05rem); line-height: 1.1; text-wrap: balance; }
.ui-modal__text { max-width: 50ch; color: var(--color-muted); font-size: 1rem; line-height: 1.52; }
.ui-modal__text p:last-child { margin-bottom: 0; }
.ui-modal__action { margin-top: 1.25rem; }
.ui-modal__contact-choice { display: flex; align-items: center; flex-wrap: wrap; gap: .3rem .48rem; margin-top: .85rem; padding: .62rem .75rem; border: 1px solid rgba(34,151,149,.16); border-radius: 15px; color: var(--color-muted); background: linear-gradient(135deg, rgba(225,248,245,.78), rgba(237,248,251,.72)); font-size: .84rem; line-height: 1.42; }
.ui-modal__phone-link { display: inline-flex; align-items: center; padding: .12rem .22rem; border-radius: 7px; color: var(--color-brand-dark); font-size: .92rem; font-weight: 820; text-decoration-color: rgba(11,93,89,.26); text-underline-offset: 3px; }
.ui-modal__phone-link:hover { color: var(--color-heading); background: rgba(20,124,118,.07); text-decoration-color: currentColor; }
.ui-modal__form { margin-top: 1.05rem; }
.ui-popup-form { display: grid; gap: .72rem; }
.ui-popup-form p { margin: 0; }
.ui-popup-form label { display: grid; gap: .3rem; color: var(--color-heading); font-size: .84rem; font-weight: 700; }
.ui-popup-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .72rem; }
.ui-popup-form input:not([type="submit"]):not([type="checkbox"]), .ui-popup-form textarea { width: 100%; min-height: 44px; padding: .65rem .78rem; border: 1px solid rgba(31,126,128,.2); border-radius: 12px; color: var(--color-text); background: rgba(255,255,255,.74); box-shadow: inset 0 1px 2px rgba(19,69,71,.035); font: inherit; font-weight: 500; transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease; }
.ui-popup-form input::placeholder, .ui-popup-form textarea::placeholder { color: #819496; opacity: 1; }
.ui-popup-form textarea { min-height: 78px; resize: vertical; }
.ui-popup-form input:focus, .ui-popup-form textarea:focus { border-color: var(--color-focus); outline: none; background: rgba(255,255,255,.94); box-shadow: 0 0 0 4px rgba(27,143,136,.1), inset 0 1px 2px rgba(19,69,71,.025); }
.ui-popup-form .wpcf7-submit { width: 100%; min-height: 48px; margin-top: .05rem; padding: .68rem 1.1rem; border: 1px solid rgba(255,255,255,.32); border-radius: 999px; color: #fff; background: linear-gradient(135deg, #0b716b, #159688 58%, #0b6b66); box-shadow: 0 12px 26px rgba(8,91,85,.2), inset 0 1px 0 rgba(255,255,255,.28); cursor: pointer; font-weight: 760; transition: transform .22s ease, box-shadow .22s ease, background-color .22s ease; }
.ui-popup-form .wpcf7-submit:hover { box-shadow: 0 15px 30px rgba(8,91,85,.26), inset 0 1px 0 rgba(255,255,255,.32); transform: translateY(-1px); }
.ui-popup-form .wpcf7-submit:active { box-shadow: 0 8px 18px rgba(8,91,85,.2), inset 0 1px 0 rgba(255,255,255,.2); transform: none; }
.ui-popup-form .wpcf7-submit:disabled { cursor: wait; opacity: .55; }
.ui-popup-form .wpcf7-not-valid-tip { margin-top: .2rem; color: #a45656; font-size: .76rem; font-weight: 600; line-height: 1.35; }
.ui-popup-form:not(.invalid):not(.unaccepted):not(.failed):not(.spam) .wpcf7-not-valid-tip { display: none; }
.ui-popup-form .wpcf7-response-output { margin: .2rem 0 0 !important; padding: .55rem .7rem !important; border-radius: 10px; font-size: .8rem; line-height: 1.4; }
.ui-popup-form .wpcf7-spinner { margin: .35rem auto 0; }
.ui-modal__close { position: absolute; z-index: 3; top: .85rem; right: .85rem; display: grid; width: 42px; height: 42px; padding: 0; place-items: center; border: 1px solid rgba(31,126,128,.16); border-radius: 50%; color: var(--color-heading); background: rgba(244,251,250,.9); box-shadow: 0 8px 20px rgba(13,65,67,.08); cursor: pointer; font-size: 1.65rem; line-height: 1; transition: color .2s ease, background-color .2s ease, transform .2s ease; }
.wpcf7-form-control.wpcf7-acceptance.invert { display: block; height: 1px; }
.ui-modal__close:hover { color: #fff; background: var(--color-brand); transform: rotate(5deg); }
@keyframes modal-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes modal-dialog-in { from { opacity: 0; transform: translateY(20px) scale(.98); } to { opacity: 1; transform: none; } }

.has-js .reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease var(--reveal-delay, 0ms), transform .7s cubic-bezier(.2,.75,.25,1) var(--reveal-delay, 0ms); }
.has-js .reveal[data-visible] { opacity: 1; transform: translateY(0); }
@keyframes glow-drift-one {
  0% { border-radius: 46% 54% 58% 42% / 52% 44% 56% 48%; transform: translate3d(-24px,-12px,0) scale(.94) rotate(-4deg); }
  48% { border-radius: 58% 42% 45% 55% / 44% 57% 43% 56%; transform: translate3d(28px,34px,0) scale(1.06) rotate(3deg); }
  100% { border-radius: 42% 58% 52% 48% / 58% 46% 54% 42%; transform: translate3d(-10px,66px,0) scale(1.13) rotate(7deg); }
}
@keyframes glow-drift-two {
  0% { border-radius: 52% 48% 42% 58% / 46% 58% 42% 54%; transform: translate3d(-18px,24px,0) scale(1.02) rotate(2deg); }
  52% { border-radius: 43% 57% 55% 45% / 58% 43% 57% 42%; transform: translate3d(42px,-26px,0) scale(.93) rotate(-5deg); }
  100% { border-radius: 58% 42% 48% 52% / 44% 55% 45% 56%; transform: translate3d(82px,-58px,0) scale(1.09) rotate(-9deg); }
}


@media (min-width: 1181px) {
  .service-card--showcase .service-card__top { grid-template-columns: 48px minmax(0, 1fr) 34px; gap: .55rem; }
  .service-card--showcase .service-card__icon { width: 48px; height: 48px; border-radius: 15px; }
  .service-card--showcase .service-card__icon svg,
  .service-card--showcase .service-card__icon-image { width: 44px; height: 44px; }
  .service-card--showcase .service-card__title { overflow-wrap: anywhere; font-size: var(--type-card-title-dense); line-height: 1.15; }
  .service-card--showcase .service-card__arrow { width: 34px; height: 34px; }
}

@media (max-width: 1180px) {
  .services-showcase__network-map { width: 155px; }
  .services-showcase__network-detail { display: none; }
  .services-showcase__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .service-card--showcase { min-height: 560px; }
  .erp-capabilities__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
  .site-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .consultation__card--form { grid-template-columns: 1fr; }
  .consultation__card--form .consultation__form { width: 100%; max-width: 620px; justify-self: stretch; }
  .ui-modal__network { width: 140px; opacity: .52; }
  .services-showcase__network { top: 2.25rem; }
  .services-showcase__network-map { width: 92px; }
  .services-showcase__network-branch, .services-showcase__network-icon { display: none; }
  .site-nav { position: absolute; top: calc(100% + 1px); right: 20px; left: 20px; display: none; align-items: stretch; flex-direction: column; padding: 1.25rem; border: 1px solid var(--color-border); border-radius: var(--radius-md); background: #fff; box-shadow: var(--shadow-card); }
  .site-nav[data-open] { display: flex; }
  .site-nav__list { align-items: stretch; flex-direction: column; gap: .2rem; }
  .site-nav__list a { display: block; padding: .7rem; }
  .site-nav .button { width: 100%; }
  .nav-toggle { display: inline-grid; place-items: center; cursor: pointer; }
  .home .site-nav, .cases-page-view .site-nav, .system-service-page-view .site-nav { border-color: rgba(255,255,255,.12); background: #0b292d; box-shadow: 0 25px 65px rgba(0,0,0,.28); }
  .home .site-nav__list a, .cases-page-view .site-nav__list a, .system-service-page-view .site-nav__list a { color: rgba(235,250,247,.76); }
  .task-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-process__steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .home-process-step { min-height: 270px; }
  .home-process-step::after { content: none; }
  .case-grid { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
  .service-hub { min-height: auto; }
  .service-hub__layout { grid-template-columns: 1fr; gap: 3rem; }
  .service-hub__intro { max-width: 720px; text-align: center; }
  .service-hub__intro h1 { max-width: 14ch; margin-inline: auto; }
  .service-hub__intro .lead { margin-inline: auto; }
  .service-hub__visual { width: min(520px, 100%); margin-inline: auto; }
  .service-hub__visual-frame { height: 380px; }
  .cases-hero__layout { grid-template-columns: 1fr; }
  .cases-hero__content { text-align: center; }
  .cases-hero__content h1, .cases-hero__content .lead { margin-inline: auto; }
  .cases-route { width: min(620px, 100%); margin-inline: auto; }
  .cases-catalog__header { grid-template-columns: 1fr; gap: 1rem; text-align: center; }
  .cases-catalog__header .eyebrow, .cases-catalog__header h2, .cases-catalog__header > p:not(.eyebrow) { margin-inline: auto; }
  .erp-hero__layout { grid-template-columns: 1fr; }
  .erp-hero__content { text-align: center; }
  .erp-hero__content h1, .erp-hero__content .lead { margin-inline: auto; }
  .erp-system-map { width: min(650px, 100%); margin-inline: auto; }
}

@media (max-width: 760px) {
  .services-showcase__network { display: none; }
}

@media (max-width: 680px) {
  :root {
    --section-space: 4.25rem;
    --type-page-title: clamp(2.45rem, 10.5vw, 3.15rem);
  }
  .container { width: min(calc(100% - 32px), var(--container)); }
  .service-hub { min-height: auto; padding-block: 4.5rem; }
  .service-hub__intro { padding-inline: .25rem; }
  .service-hub__intro h1 { max-width: 100%; }
  .service-hub__visual { width: 100%; }
  .service-hub__visual-frame { height: auto; aspect-ratio: 1.12 / 1; border-radius: 24px; transform: none; }
  .service-hub__visual-image { inset: 6px; width: calc(100% - 12px); height: calc(100% - 12px); }
  .services-showcase__grid, .task-list { grid-template-columns: 1fr; }
  .home-process__steps { grid-template-columns: 1fr; }
  .home-process-step { min-height: 0; padding: 1.35rem; border-radius: 22px; }
  .home-process-step h3 { max-width: none; }
  .services-showcase__header h2 { max-width: none; }
  .service-card { min-height: 0; }
  .service-card--feature { min-height: 300px; }
  .service-card--compact { min-height: 180px; }
  .service-card--showcase { min-height: 0; }
  .service-card__content { min-height: 0; }
  .service-card { padding: 1.35rem; }
  .service-card--compact .ui-chip { font-size: .88rem; }
  .task-list li { min-height: 155px; }
  .task-examples__actions .button { width: 100%; }
  .cases-hero { padding-block: 4.5rem; }
  .cases-hero__content h1 { max-width: 100%; }
  .cases-route { padding: 1.35rem; border-radius: 24px; }
  .case-card { gap: 1.3rem; padding: 1.35rem; border-radius: 24px; }
  .case-card__footer { grid-template-columns: 1fr; gap: 1rem; }
  .erp-hero { padding-block: 4.5rem; }
  .erp-hero__content h1 { max-width: 100%; }
  .erp-system-map { padding: 1.25rem; border-radius: 24px; }
  .erp-system-map ul, .erp-capabilities__grid { grid-template-columns: 1fr; }
  .erp-capability { min-height: 0; }
  .erp-case summary { min-height: 0; grid-template-columns: 1fr; gap: 1.15rem; padding: 1.3rem; }
  .erp-case__toggle { min-width: 0; justify-content: flex-start; }
  .erp-case__body { grid-template-columns: 1fr; gap: 0; padding: 0 1.3rem 1.3rem; }
  .erp-case__meta { grid-template-columns: 1fr; gap: 1rem; }
  .consultation__card { min-height: 0; align-items: flex-start; flex-direction: column; padding: 2.25rem 1.5rem; border-radius: 28px; }
  .consultation__card .button { width: 100%; }
  .consultation__card--form { display: grid; gap: 1.5rem; padding: 1.5rem; }
  .consultation__form { padding: 1rem; border-radius: 20px; }
  .ui-modal { align-items: end; padding: .75rem; }
  .ui-modal__dialog { max-height: calc(100dvh - 1.5rem); padding: 2.5rem 1.2rem 1.25rem; border-radius: 24px; scrollbar-gutter: auto; }
  .ui-modal__network { display: none; }
  .ui-modal__content { padding-right: 0; }
  .ui-modal__eyebrow { margin-bottom: .5rem; }
  .ui-modal__content h2 { margin-bottom: .5rem; font-size: clamp(1.5rem, 7.5vw, 1.85rem); }
  .ui-modal__contact-choice { padding: .58rem .65rem; }
  .ui-modal__form { margin-top: .85rem; }
  .ui-modal__action { width: 100%; }
  .ui-popup-form__grid { grid-template-columns: 1fr; }
  .site-footer__inner { grid-template-columns: 1fr; gap: 1.75rem; }
  .has-js .scroll-top { right: max(.85rem, env(safe-area-inset-right)); bottom: max(.85rem, env(safe-area-inset-bottom)); width: 46px; height: 46px; }
}

@media (max-width: 480px) {
  .site-footer__contact-links { width: 100%; gap: 2px; justify-content: space-between; }
  .site-footer__contact-links a { flex-basis: 30px; width: 30px; height: 30px; }
  .site-footer__contact-icon { width: 14px; height: 14px; }
}

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