:root{
  --za-bg:#07111f;
  --za-bg-2:#101b2f;
  --za-text:#0f172a;
  --za-muted:#64748b;
  --za-blue:#2563eb;
  --za-blue-2:#1d4ed8;
  --za-line:#e2e8f0;
  --za-soft:#f8fafc;
  --za-radius:26px;
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--za-text);background:#f4f7fb;line-height:1.55}
a{color:inherit}
.za-container{max-width:1180px;margin:0 auto;padding:0 24px}
.za-header{background:#08111f;color:#fff;position:sticky;top:0;z-index:50;box-shadow:0 12px 40px rgba(2,6,23,.18)}
.za-header__in{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.za-logo{font-weight:900;font-size:24px;letter-spacing:.08em;text-decoration:none}
.za-nav{display:flex;gap:24px;align-items:center}
.za-nav a{color:#cbd5e1;text-decoration:none;font-weight:700;font-size:15px}
.za-nav a:hover{color:#fff}
.za-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:16px;font-weight:800;text-decoration:none;border:1px solid transparent;cursor:pointer}
.za-btn--primary{background:var(--za-blue);color:#fff}
.za-btn--primary:hover{background:var(--za-blue-2)}
.za-btn--light{background:#fff;color:#08111f}
.za-btn--ghost{border-color:#cbd5e1;color:#fff}
.za-btn:focus-visible{outline:3px solid #f59e0b;outline-offset:4px;box-shadow:0 0 0 6px rgba(255,255,255,.9)}
.za-hero{background:radial-gradient(circle at 80% 10%,rgba(37,99,235,.35),transparent 36%),linear-gradient(135deg,#07111f,#111c31 60%,#0b1323);color:#fff;padding:78px 0 64px}
.za-hero__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:44px;align-items:center}
.za-hero__grid>*{min-width:0}
.za-eyebrow{display:inline-flex;max-width:100%;padding:8px 13px;border:1px solid rgba(255,255,255,.18);border-radius:999px;color:#cbd5e1;font-weight:800;margin-bottom:20px;white-space:normal;overflow-wrap:anywhere}
.za-hero h1{margin:0 0 22px;font-size:clamp(42px,5.4vw,76px);line-height:.94;letter-spacing:-.055em}
.za-hero p{color:#d6e2f3;font-size:20px;max-width:720px}
.za-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.za-hero-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);border-radius:30px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.28)}
.za-hero-card h2{margin:0 0 16px;font-size:24px}
.za-hero-card ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.za-hero-card li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:14px 16px;border-radius:18px;color:#e5eefb;font-weight:750}
.za-trust{margin-top:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.za-trust div{background:#fff;color:#0f172a;border-radius:18px;padding:18px;font-weight:900}
.za-section{padding:72px 0}
.za-section--white{background:#fff}
.za-section h2{margin:0 0 18px;font-size:clamp(32px,4vw,52px);line-height:1;letter-spacing:-.04em}
.za-section__lead{color:var(--za-muted);font-size:19px;max-width:820px;margin:0 0 34px}
.za-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.za-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.za-grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.za-card{display:block;min-width:0;background:#fff;border:1px solid var(--za-line);border-radius:var(--za-radius);padding:26px;box-shadow:0 18px 45px rgba(15,23,42,.06);text-decoration:none}
.za-card h3{margin:0 0 10px;font-size:22px;line-height:1.15}
.za-card p{margin:0;color:var(--za-muted)}
.za-badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.za-badge{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:7px 11px;border-radius:999px;font-weight:800;font-size:13px}
.za-case{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:stretch;background:#fff;border:1px solid var(--za-line);border-radius:34px;padding:34px;box-shadow:0 24px 70px rgba(15,23,42,.08)}
.za-case h3{font-size:34px;line-height:1.02;margin:0 0 14px}
.za-case p{color:var(--za-muted);font-size:18px}
.za-case__panel{background:linear-gradient(135deg,#0b1220,#172554);color:#fff;border-radius:26px;padding:26px}
.za-case__panel ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}
.za-case__panel li{padding:13px 15px;border-radius:16px;background:rgba(255,255,255,.1)}
.za-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--za-line);border-radius:24px;overflow:hidden}
.za-table th,.za-table td{padding:18px;border-bottom:1px solid var(--za-line);text-align:left;vertical-align:top}
.za-table th{background:#0f172a;color:#fff}
.za-table tr:last-child td{border-bottom:0}
.za-form-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start}
.za-form{background:#fff;border:1px solid var(--za-line);border-radius:30px;padding:28px;box-shadow:0 24px 70px rgba(15,23,42,.08)}
.za-form label{display:grid;gap:8px;margin-bottom:14px;font-weight:800}
.za-form input,.za-form textarea{width:100%;border:1px solid #cbd5e1;border-radius:14px;padding:14px 15px;font:inherit}
.za-form textarea{min-height:120px}
.za-footer{background:#08111f;color:#cbd5e1;padding:36px 0}
@media(max-width:900px){
  .za-hero__grid,.za-case,.za-form-wrap{grid-template-columns:1fr}
  .za-grid-2,.za-grid-3,.za-grid-4,.za-trust{grid-template-columns:minmax(0,1fr)}
  .za-nav{display:none}
  .za-header__in{min-height:68px}
}
@media(max-width:600px){
  .za-hero{padding:56px 0 48px}
  .za-hero h1{font-size:clamp(36px,11vw,48px);line-height:.98;letter-spacing:-.045em}
  .za-hero p{font-size:18px}
}

/* Service geography and campaign landing pages */
.zc-delivery{
  background:#eaf2ff;
  border-bottom:1px solid #cfe0fb;
}
.zc-delivery__inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
  padding-top:24px;
  padding-bottom:24px;
}
.zc-delivery__inner span,
.zc-delivery-badge{
  display:block;
  margin:0 0 7px;
  color:#1d4ed8;
  font-size:12px;
  line-height:1.35;
  font-weight:900;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.zc-delivery__inner strong{
  display:block;
  color:#10213b;
  font-size:20px;
  line-height:1.25;
}
.zc-delivery__inner p{
  max-width:830px;
  margin:7px 0 0;
  color:#4c607a;
}
.zc-delivery__links{
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:flex-end;
}
.zc-delivery__links a{
  color:#1d4ed8;
  font-size:14px;
  font-weight:850;
  text-decoration:none;
}
.zc-delivery__links a:hover{text-decoration:underline}
.zc-geo-choice .za-card{min-height:230px}
.zc-geo-note{padding:34px}
.zc-geo-note p{font-size:18px;line-height:1.75}

@media(max-width:760px){
  .zc-delivery__inner{grid-template-columns:1fr;gap:14px}
  .zc-delivery__links{align-items:flex-start}
  .zc-delivery__inner strong{font-size:18px}
  .zc-geo-note{padding:24px}
}

/* Case official photos */
.za-case-photo{margin:0;border-radius:26px;overflow:hidden;background:#0f172a;box-shadow:0 24px 70px rgba(15,23,42,.18)}
.za-case-photo img{display:block;width:100%;height:auto;max-height:520px;object-fit:cover}
.za-case-photo figcaption{padding:14px 18px;color:#64748b;background:#fff;font-size:14px}
.za-card-img{display:block;width:100%;height:210px;object-fit:cover;border-radius:22px;margin:0 0 18px;background:#e2e8f0}
.zc-service-visual{padding-top:40px;padding-bottom:40px}
.zc-service-visual figure{margin:0;overflow:hidden;background:#07111f;border-radius:30px;box-shadow:0 28px 80px rgba(15,23,42,.18)}
.zc-service-visual img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.zc-service-visual figcaption{padding:12px 18px;color:#cbd5e1;background:#07111f;font-size:13px}

/* Legal documents */
.zc-legal-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}
.zc-legal-doc{padding:40px}
.zc-legal-doc section+section{margin-top:30px;padding-top:30px;border-top:1px solid #e2e8f0}
.zc-legal-doc h2,.zc-legal-contact h2{margin:0 0 12px;color:#0f172a;font-size:24px;line-height:1.2}
.zc-legal-doc p,.zc-legal-contact p{margin:0;color:#475569;font-size:17px;line-height:1.75}
.zc-legal-doc a,.zc-legal-contact a,.za-hero-card a{color:#1d4ed8;font-weight:750}
.zc-legal-contact{position:sticky;top:108px;padding:28px}
.zc-legal-contact p+p{margin-top:16px}
@media(max-width:900px){.zc-legal-layout{grid-template-columns:1fr}.zc-legal-contact{position:static}.zc-legal-doc{padding:28px}}

/* Long-form customer cases */
.zc-case-hero .za-hero-card{align-self:stretch}
.zc-case-snapshot>small{display:block;margin-bottom:10px;color:#2563eb;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.zc-case-snapshot h2{margin:0 0 8px}
.zc-case-snapshot>p{margin:0 0 8px;color:#64748b;font-size:14px;line-height:1.55}
.zc-case-snapshot>span{display:inline-flex;margin-bottom:20px;padding:6px 10px;border:1px solid #cbd5e1;border-radius:999px;color:#475569;font-size:12px;font-weight:800}
.zc-case-snapshot dl{display:grid;gap:14px;margin:18px 0 0}
.zc-case-snapshot dl div{padding-top:14px;border-top:1px solid #e2e8f0}
.zc-case-snapshot dt{color:#94a3b8;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.zc-case-snapshot dd{margin:4px 0 0;color:#0f172a;font-weight:800}
.zc-case-visual{padding-top:42px;padding-bottom:42px}
.zc-case-reading{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.8fr);gap:34px;align-items:start}
.zc-case-prose{margin:0;color:#334155;font-size:20px;line-height:1.75}
.zc-case-list,.zc-case-checklist{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.zc-case-list li,.zc-case-checklist li{position:relative;padding-left:28px;color:#334155;line-height:1.55}
.zc-case-list li:before,.zc-case-checklist li:before{content:'✓';position:absolute;left:0;top:0;color:#2563eb;font-weight:950}
.zc-case-architecture{display:flex;align-items:center;justify-content:center;gap:13px;margin-bottom:30px;padding:28px;overflow:auto;background:#07111f;color:#fff}
.zc-case-architecture b{flex:0 0 auto;padding:12px 15px;border:1px solid rgba(96,165,250,.38);border-radius:13px;background:rgba(37,99,235,.15);font-size:14px}
.zc-case-architecture i{color:#60a5fa;font-style:normal;font-weight:950}
.zc-case-work-grid{align-items:stretch}
.zc-case-work{height:100%}
.zc-case-work h3{margin:12px 0 10px}
.zc-case-work p{margin:0;color:#64748b;line-height:1.65}
.zc-case-stack{display:flex;flex-wrap:wrap;gap:12px}
.zc-case-stack span{padding:12px 16px;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1e3a8a;font-size:14px;font-weight:850}
.zc-davis-hero{position:relative;min-height:500px;overflow:hidden;background:#06111e;border:1px solid rgba(255,255,255,.1);border-radius:30px;box-shadow:0 28px 80px rgba(3,10,20,.38)}
.zc-davis-hero figure{position:absolute;inset:0;margin:0}
.zc-davis-hero__photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.zc-davis-hero figure:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,10,20,.08) 20%,rgba(3,10,20,.88) 100%)}
.zc-davis-hero figcaption{position:absolute;left:20px;bottom:14px;z-index:2;color:#d5dee8;font-size:12px}
.zc-davis-hero__brand{position:absolute;top:20px;left:20px;z-index:3;display:flex;align-items:center;gap:10px;padding:9px 12px;background:rgba(255,255,255,.94);border-radius:15px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.zc-davis-hero__brand img{width:42px;height:42px;object-fit:contain;border-radius:9px}
.zc-davis-hero__brand span{color:#173b28;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.zc-davis-phone{position:absolute;right:20px;bottom:20px;z-index:3;display:grid;gap:10px;width:190px;padding:25px 17px 16px;color:#10233c;background:#fff;border:6px solid #081426;border-radius:28px;box-shadow:0 20px 45px rgba(0,0,0,.38)}
.zc-davis-phone>span{position:absolute;top:8px;left:50%;width:46px;height:5px;background:#d7dee8;border-radius:9px;transform:translateX(-50%)}
.zc-davis-phone strong{color:#143824;font-size:16px;text-align:center}
.zc-davis-phone i{padding:10px;color:#728197;background:#f1f5f9;border:1px solid #dbe4ef;border-radius:9px;font-size:11px;font-style:normal}
.zc-davis-phone b{padding:10px;color:#fff;background:#23945a;border-radius:9px;font-size:11px;text-align:center}
.zc-davis-phone small{color:#7b8797;font-size:10px;text-align:center}
.zc-davis-intro .za-eyebrow{margin-bottom:14px;color:#2563eb}
.zc-davis-user-flow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none}
.zc-davis-user-flow li{position:relative;padding:22px 18px;background:#fff;border:1px solid #dce5ef;border-radius:20px;box-shadow:0 12px 35px rgba(15,23,42,.06)}
.zc-davis-user-flow li:not(:last-child):after{content:"→";position:absolute;top:28px;right:-19px;z-index:2;width:25px;color:#2563eb;font-weight:950;text-align:center}
.zc-davis-user-flow span{display:block;margin-bottom:18px;color:#2563eb;font-size:12px;font-weight:950;letter-spacing:.08em}
.zc-davis-user-flow strong{display:block;color:#10203a;font-size:17px;line-height:1.25}
.zc-davis-user-flow p{margin:10px 0 0;color:#64748b;font-size:14px;line-height:1.55}
.zc-davis-architecture{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(150px,1fr) auto minmax(180px,1.2fr) auto minmax(150px,1fr) auto minmax(140px,1fr);gap:11px;align-items:center;width:100%;min-width:930px}
.zc-davis-architecture>div{display:grid;gap:6px;padding:17px 14px;background:#10233c;border:1px solid #315176;border-radius:16px;text-align:center}
.zc-davis-architecture>i{color:#7dd3fc;font-size:20px;font-style:normal;font-weight:950;text-align:center}
.zc-davis-architecture small{color:#8fd7ff;font-size:10px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}
.zc-davis-architecture strong{font-size:15px}
.zc-davis-architecture span{color:#bcd2eb;font-size:11px}
.zc-davis-architecture__core{background:#16315a!important;border-color:#3b82f6!important}
.zc-davis-architecture__network{background:#173a2e!important;border-color:#2f8f6b!important}
.zc-davis-own{border-color:#a7d7bd;background:#f1fbf5}
.zc-support-flow{display:grid;grid-template-columns:minmax(170px,1fr) auto minmax(300px,1.7fr) auto minmax(190px,1fr) auto minmax(190px,1fr);gap:14px;align-items:center;width:100%;min-width:900px}
.zc-support-flow>i{color:#7dd3fc;font-size:25px;font-style:normal;text-align:center;transform:rotate(-90deg)}
.zc-support-flow__node,.zc-support-flow__channels>div{display:grid;gap:6px;padding:20px;color:#fff;background:#10233c;border:1px solid #315176;border-radius:17px;text-align:center}
.zc-support-flow__node small,.zc-support-flow__channels small{color:#8fd7ff;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.zc-support-flow__node strong,.zc-support-flow__channels strong{font-size:17px}
.zc-support-flow__channels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.zc-support-flow__channels>div{background:#16315a;border-color:#3b82f6}
.zc-support-flow__team{background:#173a2e;border-color:#2f8f6b}
.zc-mica-flow{display:grid;gap:14px;width:100%;color:#fff;text-align:center}
.zc-mica-flow__brand,.zc-mica-flow__site,.zc-mica-flow__branches>div,.zc-mica-flow__outcomes>div{display:grid;gap:6px;padding:18px;border:1px solid #315176;border-radius:17px;background:#10233c}
.zc-mica-flow__brand{justify-self:center;width:min(420px,100%);background:#173a2e;border-color:#2f8f6b}
.zc-mica-flow__brand small{color:#9ee7c8;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.zc-mica-flow__brand:after,.zc-mica-flow__branches:after,.zc-mica-flow__site:after{content:'↓';display:block;position:absolute;left:50%;bottom:-27px;color:#7dd3fc;font-size:22px;font-weight:950;transform:translateX(-50%)}
.zc-mica-flow__brand,.zc-mica-flow__branches,.zc-mica-flow__site{position:relative;margin-bottom:14px}
.zc-mica-flow__branches{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.zc-mica-flow__branches>div{background:#16315a;border-color:#3b82f6}
.zc-mica-flow__branches span,.zc-mica-flow__site span,.zc-mica-flow__outcomes span{color:#bcd2eb;font-size:13px}
.zc-mica-flow__site{justify-self:center;width:min(520px,100%);background:#172c4a}
.zc-mica-flow__outcomes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zc-mica-flow__outcomes>div:last-child{background:#2b2347;border-color:#6d5da7}
.zc-event-proof small{display:block;margin-bottom:12px;color:#2563eb;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.zc-event-proof h3{margin:0 0 18px;font-size:26px}
.zc-event-proof dl{display:grid;gap:11px;margin:0 0 18px}
.zc-event-proof dl div{display:grid;grid-template-columns:130px 1fr;gap:15px;padding-top:11px;border-top:1px solid #e2e8f0}
.zc-event-proof dt{color:#64748b;font-size:12px;font-weight:850;text-transform:uppercase}
.zc-event-proof dd{margin:0;color:#0f172a;font-weight:750}
.zc-case-note{padding:14px 16px;border-left:3px solid #2563eb;background:#eff6ff;color:#334155!important}
.zc-cycle{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.zc-cycle span{padding:12px 14px;color:#173a69;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;font-size:13px;font-weight:850}
.zc-cycle i{color:#2563eb;font-style:normal;font-weight:950}
.zc-case-index__meta{display:block;margin:12px 0 0;color:#64748b;font-weight:750}
@media(max-width:900px){.zc-case-reading{grid-template-columns:1fr}.zc-case-architecture{justify-content:flex-start}.zc-case-prose{font-size:18px}.zc-davis-user-flow{grid-template-columns:1fr 1fr}.zc-davis-user-flow li:not(:last-child):after{display:none}.zc-support-flow{grid-template-columns:1fr;min-width:0}.zc-support-flow>i{transform:none}.zc-support-flow__channels,.zc-mica-flow__branches,.zc-mica-flow__outcomes{grid-template-columns:1fr}.zc-event-proof dl div{grid-template-columns:1fr;gap:4px}}
@media(max-width:560px){.zc-case-architecture{padding:20px;gap:9px}.zc-case-architecture b{font-size:12px}.zc-case-visual{padding-top:24px;padding-bottom:24px}.zc-davis-hero{min-height:430px;border-radius:22px}.zc-davis-hero__brand{top:14px;left:14px}.zc-davis-hero__brand img{width:36px;height:36px}.zc-davis-phone{right:14px;bottom:38px;width:164px}.zc-davis-user-flow{grid-template-columns:1fr}.zc-support-flow__node,.zc-support-flow__channels>div,.zc-mica-flow__brand,.zc-mica-flow__site,.zc-mica-flow__branches>div,.zc-mica-flow__outcomes>div{padding:16px}.zc-cycle{align-items:stretch;flex-direction:column}.zc-cycle i{transform:rotate(90deg);text-align:center}}



/* Cases portfolio grid cleanup */
.za-cases-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:26px !important;
  align-items:stretch !important;
}
.za-case-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  min-height:520px !important;
  padding:0 !important;
  overflow:hidden !important;
  border:1px solid #e2e8f0 !important;
  border-radius:26px !important;
  background:#fff !important;
  box-shadow:0 18px 45px rgba(15,23,42,.08) !important;
  text-decoration:none !important;
}
.za-case-card__img{
  width:100% !important;
  height:230px !important;
  object-fit:cover !important;
  display:block !important;
  background:#e2e8f0 !important;
  margin:0 !important;
  border-radius:0 !important;
}
.za-case-card__body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 !important;
  padding:22px !important;
}
.za-case-card__body h3{
  margin:0 0 10px !important;
  font-size:22px !important;
  line-height:1.15 !important;
}
.za-case-card__body p{
  margin:0 0 18px !important;
  color:#64748b !important;
}
.za-case-card__meta{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  margin:0 0 18px !important;
}
.za-case-card__cta{
  margin-top:auto !important;
  color:#2563eb !important;
  font-weight:900 !important;
}
@media(max-width:960px){
  .za-cases-grid{grid-template-columns:1fr !important}
  .za-case-card{min-height:auto !important}
  .za-case-card__img{height:240px !important}
}


/* =======================================================
   SERVICES CATALOG CARDS v3 — scoped
   ======================================================= */

#services-expanded-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
    margin-top:28px;
    align-items:stretch;
}

#services-expanded-grid > .za-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:260px;
    padding:32px;
    overflow:hidden;
    color:#0f172a;
    text-decoration:none;
    background:
        linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);
    border:1px solid #dbe4f0;
    border-radius:24px;
    box-shadow:
        0 12px 32px rgba(15,23,42,.06);
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease;
}

#services-expanded-grid > .za-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    right:0;
    height:4px;
    background:linear-gradient(90deg,#2563eb,#3b82f6,#60a5fa);
}

#services-expanded-grid > .za-card::after{
    content:"Подробнее  →";
    margin-top:auto;
    padding-top:24px;
    color:#2563eb;
    font-size:15px;
    line-height:1;
    font-weight:800;
    letter-spacing:.01em;
    transition:transform .22s ease;
}

#services-expanded-grid > .za-card:hover{
    transform:translateY(-5px);
    border-color:#93b4f8;
    box-shadow:
        0 22px 55px rgba(37,99,235,.14);
}

#services-expanded-grid > .za-card:hover::after{
    transform:translateX(5px);
}

#services-expanded-grid > .za-card h3{
    margin:0 0 14px;
    color:#0b1630;
    font-size:24px;
    line-height:1.18;
    font-weight:850;
    text-decoration:none;
}

#services-expanded-grid > .za-card p{
    margin:0;
    color:#53657d;
    font-size:16px;
    line-height:1.65;
    text-decoration:none;
}

#services-expanded-grid > .za-card p + p{
    margin-top:18px;
}

#services-expanded-grid > article.za-card .za-btn{
    margin-top:auto;
    align-self:flex-start;
}

#services-expanded-grid > article.za-card::after{
    display:none;
}

@media (max-width:1100px){
    #services-expanded-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:720px){
    #services-expanded-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    #services-expanded-grid > .za-card{
        min-height:auto;
        padding:26px;
        border-radius:20px;
    }

    #services-expanded-grid > .za-card h3{
        font-size:22px;
    }
}

/* RADO educational ecosystem case */
.zc-rado-hero{
    display:grid;
    gap:18px;
    align-content:start;
    min-width:0;
    padding:22px;
    color:#fff;
    background:linear-gradient(145deg,#10213a 0%,#152b49 68%,#74311c 140%);
    border:1px solid rgba(255,255,255,.12);
    border-radius:30px;
    box-shadow:0 28px 70px rgba(7,18,35,.3);
}

.zc-rado-hero__brand{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 13px}
.zc-rado-hero__brand small{width:100%;color:#ffb08f;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.zc-rado-hero__brand strong{color:#ff6b2c;font-size:38px;line-height:1}
.zc-rado-hero__brand span{color:#dbe8f6;font-size:15px}
.zc-rado-hero figure{overflow:hidden;margin:0;background:#fff;border-radius:18px}
.zc-rado-hero figure img{display:block;width:100%;height:auto;aspect-ratio:1440/340;object-fit:cover}
.zc-rado-hero figcaption{padding:9px 12px;color:#607087;background:#fff;font-size:13px}
.zc-rado-hero__tags{display:flex;flex-wrap:wrap;gap:8px}
.zc-rado-hero__tags span{padding:7px 10px;color:#dbe8f6;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:999px;font-size:13px;font-weight:750}
.zc-rado-intro .za-eyebrow{margin-bottom:14px;color:#e7521f}
.zc-rado-case-hero h1{overflow-wrap:normal;word-break:normal;hyphens:none}

.zc-rado-before-after{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.zc-rado-before-after article{min-width:0;border-top:4px solid #94a3b8}
.zc-rado-before-after article small,.zc-rado-communications article small{color:#64748b;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.zc-rado-before-after__after{background:#fff8f3;border-color:#f0642b!important}

.zc-rado-journey{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.zc-rado-journey li{position:relative;min-width:0;padding:20px 14px;background:#fff;border:1px solid #dce5ef;border-radius:18px;box-shadow:0 10px 30px rgba(15,23,42,.05)}
.zc-rado-journey li:not(:last-child):after{content:"→";position:absolute;top:27px;right:-14px;z-index:2;width:18px;color:#f0642b;font-weight:950;text-align:center}
.zc-rado-journey span{display:block;margin-bottom:18px;color:#e7521f;font-size:12px;font-weight:950;letter-spacing:.08em}
.zc-rado-journey strong{display:block;color:#10203a;font-size:16px;line-height:1.3}
.zc-rado-journey p{margin:9px 0 0;color:#5c6b7d;font-size:15px;line-height:1.5}

.zc-rado-architecture{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.15fr) auto minmax(0,1fr);gap:13px;align-items:center;width:100%;color:#fff;text-align:center}
.zc-rado-architecture>div{display:grid;gap:7px;min-width:0;padding:20px 16px;background:#10233c;border:1px solid #315176;border-radius:17px}
.zc-rado-architecture>i{color:#ff9a6f;font-size:22px;font-style:normal;font-weight:950}
.zc-rado-architecture small{color:#94d7ff;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.zc-rado-architecture strong{font-size:17px;line-height:1.25}
.zc-rado-architecture span{color:#c7d7e9;font-size:14px;line-height:1.45}
.zc-rado-architecture__core{background:#173b62!important;border-color:#4c91d8!important}
.zc-rado-architecture__comms{grid-column:1/-1;width:min(720px,100%);justify-self:center;background:#3c2824!important;border-color:#c8653c!important}

.zc-rado-process{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;padding:25px;color:#fff;background:#10233c;border-radius:22px}
.zc-rado-process span{padding:11px 14px;background:#17375d;border:1px solid #345d88;border-radius:999px;font-size:15px;font-weight:800}
.zc-rado-process i{color:#ff9a6f;font-size:19px;font-style:normal;font-weight:950}

.zc-rado-communications{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.zc-rado-communications article{min-width:0;border-top:4px solid #4c91d8}
.zc-rado-communications article h3{margin-top:10px}
.zc-rado-communications article a{color:#1d63b7;font-weight:800}
.zc-rado-communications__policy{background:#fff8f3;border-color:#f0642b!important}

@media(max-width:1050px){
    .zc-rado-journey{grid-template-columns:repeat(4,minmax(0,1fr))}
    .zc-rado-journey li:not(:last-child):after{display:none}
}

@media(max-width:820px){
    .zc-rado-before-after,.zc-rado-communications{grid-template-columns:1fr}
    .zc-rado-architecture{grid-template-columns:1fr}
    .zc-rado-architecture>i{transform:rotate(90deg)}
    .zc-rado-architecture__comms{grid-column:auto}
}

@media(max-width:600px){
    .zc-rado-case-hero h1{font-size:clamp(32px,9vw,38px)}
    .zc-rado-hero{padding:16px;border-radius:22px}
    .zc-rado-hero__brand strong{font-size:32px}
    .zc-rado-journey{grid-template-columns:1fr}
    .zc-rado-process{align-items:stretch;flex-direction:column}
    .zc-rado-process i{transform:rotate(90deg);text-align:center}
}

/* Commercial catalog stage 3 */
.zc-breadcrumb{
  padding:14px 0;
  color:#64748b;
  background:#fff;
  border-bottom:1px solid var(--za-line);
  font-size:14px;
}
.zc-breadcrumb .za-container{display:flex;gap:10px;align-items:center;white-space:nowrap;overflow:hidden}
.zc-breadcrumb a{color:#334155;text-decoration:none}
.zc-breadcrumb span:last-child{overflow:hidden;text-overflow:ellipsis}
.zc-quick-nav{position:sticky;top:72px;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--za-line);box-shadow:0 8px 24px rgba(15,23,42,.05);backdrop-filter:blur(12px)}
.zc-quick-nav .za-container{display:flex;gap:8px;overflow-x:auto;padding-top:12px;padding-bottom:12px;scrollbar-width:none}
.zc-quick-nav .za-container::-webkit-scrollbar{display:none}
.zc-quick-nav a{flex:0 0 auto;padding:9px 13px;color:#334155;background:#f8fafc;border:1px solid var(--za-line);border-radius:999px;font-size:14px;font-weight:800;text-decoration:none}
.zc-quick-nav a:hover{color:#1d4ed8;border-color:#93c5fd;background:#eff6ff}
.zc-section-head{display:flex;gap:20px;align-items:flex-start;margin-bottom:32px}
.zc-section-head>span{
  flex:0 0 auto;
  display:grid;
  place-items:center;
  width:46px;
  height:46px;
  color:#1d4ed8;
  background:#dbeafe;
  border-radius:14px;
  font-size:13px;
  font-weight:900;
}
.zc-section-head h2{margin:0}
.zc-section-head .za-section__lead{margin:12px 0 0}
.zc-number{display:block;margin-bottom:22px;color:#2563eb;font-size:13px;font-weight:900;letter-spacing:.1em}
.zc-problem,.zc-outcome{min-height:180px}
.zc-problem p,.zc-outcome p,.za-grid-4>.za-card p{font-size:17px;line-height:1.55}
.zc-split{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;align-items:start}
.zc-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.zc-check-list li{position:relative;padding:18px 18px 18px 50px;background:#f8fafc;border:1px solid var(--za-line);border-radius:18px;font-weight:750}
.zc-check-list li::before{content:"✓";position:absolute;left:18px;top:18px;color:#16a34a;font-weight:900}
.zc-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.zc-scope-card{min-height:250px}
.zc-scope-card h3{margin:0 0 12px;font-size:21px;line-height:1.25}
.zc-scope-card p{margin:0;color:#53657d;font-size:15px;line-height:1.65}
.zc-mid-cta{padding:42px 0;color:#fff;background:linear-gradient(120deg,#1d4ed8,#2563eb 58%,#0ea5e9)}
.zc-mid-cta .za-container{display:flex;align-items:center;justify-content:space-between;gap:28px}
.zc-mid-cta span{color:#dbeafe;font-weight:800}
.zc-mid-cta h2{max-width:760px;margin:6px 0 0;font-size:clamp(28px,4vw,46px);line-height:1.05;letter-spacing:-.035em}
.zc-steps .za-card{position:relative;min-height:230px;padding-top:70px}
.zc-steps b{position:absolute;top:24px;left:26px;color:#2563eb;font-size:13px;letter-spacing:.1em}
.zc-factors .za-card{box-shadow:none}
.zc-formats .za-card{min-height:210px}
.zc-proof__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:44px;align-items:center}
.zc-proof__media{margin:0;overflow:hidden;background:#0f172a;border-radius:28px;box-shadow:0 26px 70px rgba(15,23,42,.16)}
.zc-proof__media img{width:100%;height:auto;aspect-ratio:4/3;display:block;object-fit:cover}
.zc-proof__media figcaption{padding:12px 18px;color:#cbd5e1;background:#0f172a;font-size:12px}
.zc-proof__copy h2{margin:8px 0 18px;font-size:clamp(34px,4vw,52px);line-height:1.04;letter-spacing:-.04em}
.zc-proof__copy>p{color:var(--za-muted);font-size:19px}
.zc-proof__copy ul{margin:24px 0;padding-left:20px;color:#334155}
.zc-proof__copy li+li{margin-top:8px}
.zc-tech{display:flex;flex-wrap:wrap;gap:12px}
.zc-tech span{padding:13px 17px;color:#dbeafe;background:#0f172a;border:1px solid #334155;border-radius:999px;font-weight:800}
.zc-price{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.8fr);gap:42px;align-items:start}
.zc-price>div{min-width:0}
.zc-commercial-offer{background:linear-gradient(180deg,#f4f9ff 0%,#fff 100%)}
.zc-offer-grid{align-items:stretch}
.zc-offer-grid .za-card{border-top:3px solid #1677ff}
.zc-offer-grid .za-card p{margin:.7rem 0 0}
.zc-offer-grid .za-card ul{margin:.75rem 0 0;padding-left:1.15rem}
.zc-offer-grid .za-card li+li{margin-top:.45rem}
.zc-commercial-offer .za-actions{margin-top:1.5rem}
.zc-service-group--priority{padding:1.5rem;border:1px solid #cfe2f7;border-radius:24px;background:linear-gradient(135deg,#f4f9ff,#fff)}
.zc-service-group--priority .zc-link-card{border-top:3px solid #1677ff}
@media(max-width:640px){.zc-service-group--priority{padding:1rem;border-radius:18px}.zc-commercial-offer .za-actions{align-items:stretch}.zc-commercial-offer .za-actions .za-btn{width:100%;justify-content:center}}
.zc-price>div>p{max-width:760px;color:#334155;font-size:22px;line-height:1.6}
.zc-price aside ul{display:grid;gap:10px;margin:18px 0 24px;padding-left:20px;color:#475569}
.zc-faq-list{display:grid;gap:12px;max-width:920px}
.zc-faq{background:#fff;border:1px solid var(--za-line);border-radius:18px;overflow:hidden}
.zc-faq summary{position:relative;padding:22px 58px 22px 24px;cursor:pointer;font-size:18px;font-weight:850;list-style:none}
.zc-faq summary::-webkit-details-marker{display:none}
.zc-faq summary::after{content:"+";position:absolute;right:22px;top:16px;color:#2563eb;font-size:28px}
.zc-faq[open] summary::after{content:"−"}
.zc-faq p{margin:0;padding:0 24px 22px;color:#64748b;font-size:17px}
.zc-related-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.zc-link-card{display:flex;flex-direction:column;color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.zc-link-card:hover{transform:translateY(-3px);border-color:#93c5fd;box-shadow:0 22px 50px rgba(37,99,235,.12)}
.zc-link-card>span:last-child,.zc-case-index__more{margin-top:auto;padding-top:20px;color:#2563eb;font-weight:900;text-decoration:none}
.zc-related-grid .za-card{min-height:260px;padding:22px}
.zc-related-grid .za-card h3{font-size:19px}
.zc-related-grid .za-card p{font-size:14px}
.zc-case-card{min-height:330px}
.zc-case-card .za-badge{align-self:flex-start;margin-bottom:20px}
.zc-reviews{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:50px;align-items:start}
.zc-review-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.zc-review-links .za-card{min-height:250px}
.zc-request{color:#fff;background:#081426}
.zc-request .za-section__lead{color:#bdc9da}
.zc-contact-list{display:grid;gap:12px;margin:28px 0 0;padding:0;list-style:none}
.zc-contact-list a{color:#fff}
.zc-request .za-form{color:#0f172a}
.zc-request .za-form>.za-btn{width:100%}
.zc-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.zc-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.zc-catalog-grid .za-card{min-height:340px}
.zc-service-group+.zc-service-group{margin-top:72px}
.zc-service-group__heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:40px;align-items:end;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--za-line)}
.zc-service-group__heading span{display:block;margin-bottom:8px;color:#2563eb;font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.zc-service-group__heading h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.08;letter-spacing:-.035em}
.zc-service-group__heading p{margin:0;color:#64748b;font-size:17px;line-height:1.6}
.za-hero-card a{color:inherit;text-decoration-color:rgba(255,255,255,.45);text-underline-offset:3px}
.zc-cases-index{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-width:0}
.zc-case-index{display:flex;flex-direction:column;min-width:0;min-height:390px}
.zc-case-index h2{margin:18px 0 12px;font-size:28px;line-height:1.12;letter-spacing:-.025em}
.zc-case-index h2 a{text-decoration:none}
.zc-case-index>p{font-size:17px}
.zc-case-tags{display:flex;min-width:0;flex-wrap:wrap;gap:8px;margin-top:24px}
.zc-case-tags a,.zc-case-tags span{max-width:100%;padding:7px 10px;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;font-size:12px;font-weight:800;text-decoration:none;overflow-wrap:anywhere}
.zc-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}
.zc-footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.zc-footer-grid a{text-decoration:none}
.zc-footer-bottom{margin-top:30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);font-size:13px}
.za-card h2,.za-card h3,.za-card p,.za-hero h1{overflow-wrap:anywhere}

/* Service-family visual system */
.zc-service-page{--zc-accent:#2563eb;--zc-accent-rgb:37,99,235}
.zc-service-page--support{--zc-accent:#0f766e;--zc-accent-rgb:15,118,110}
.zc-service-page--systems{--zc-accent:#6d28d9;--zc-accent-rgb:109,40,217}
.zc-service-page--network{--zc-accent:#0369a1;--zc-accent-rgb:3,105,161}
.zc-service-page--development{--zc-accent:#a21caf;--zc-accent-rgb:162,28,175}
.zc-service-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 78% 16%,rgba(var(--zc-accent-rgb),.46),transparent 34%),linear-gradient(135deg,#07111f,#111c31 60%,#0b1323)}
.zc-service-hero::before{content:"";position:absolute;z-index:-1;inset:0;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.16) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,transparent 8%,#000 68%,transparent)}
.zc-service-hero::after{content:"";position:absolute;z-index:-1;width:360px;aspect-ratio:1;right:-110px;bottom:-220px;border:70px solid rgba(var(--zc-accent-rgb),.22);border-radius:50%}
.zc-service-page .za-hero-card{backdrop-filter:blur(14px);border-color:rgba(255,255,255,.22)}
.zc-service-page .za-btn--primary{background:var(--zc-accent)}
.zc-service-page .zc-section-head>span,.zc-service-page .zc-number,.zc-service-page .zc-link-card>span:last-child{color:var(--zc-accent)}
.zc-service-page .zc-section-head>span{background:rgba(var(--zc-accent-rgb),.12)}
.zc-service-page .zc-scope-card{position:relative;overflow:hidden;border-top:4px solid rgba(var(--zc-accent-rgb),.78);transition:transform .18s ease,box-shadow .18s ease}
.zc-service-page .zc-scope-card:hover{transform:translateY(-3px);box-shadow:0 24px 56px rgba(var(--zc-accent-rgb),.12)}
.zc-service-page .zc-tech span{border-color:rgba(var(--zc-accent-rgb),.54);background:linear-gradient(135deg,#0f172a,rgba(var(--zc-accent-rgb),.28))}
.zc-service-page .zc-delivery{background:linear-gradient(90deg,rgba(var(--zc-accent-rgb),.12),#f8fafc)}
.zc-hero-price{margin-top:22px;padding-top:18px;border-top:1px solid #dbe4ef}
.zc-hero-price span{display:block;color:#64748b;font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.zc-hero-price p{margin:7px 0 0!important;color:#0f172a!important;font-size:14px!important;line-height:1.5!important}
.zc-service-map__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.7fr);gap:36px;align-items:end;margin-bottom:28px}
.zc-service-map__head small{color:var(--zc-accent);font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.zc-service-map__head h2{margin:10px 0 0}
.zc-service-map__head p{margin:0;color:#64748b;font-size:17px;line-height:1.65}
.zc-service-map__flow{display:flex;align-items:stretch;gap:12px;padding:26px;overflow-x:auto;color:#fff;background:linear-gradient(135deg,#07111f,#13243d);border-radius:24px}
.zc-service-map__flow span{min-width:165px;display:flex;flex:1 0 165px;align-items:center;justify-content:center;padding:22px 16px;text-align:center;background:rgba(var(--zc-accent-rgb),.19);border:1px solid rgba(255,255,255,.15);border-radius:16px;font-size:14px;font-weight:850;line-height:1.35}
.zc-service-map__flow i{display:flex;align-items:center;color:#7dd3fc;font-style:normal;font-weight:950}
.zc-proof__media--logo,.zc-case-visual--logo .za-case-photo{display:grid;place-items:center;background:linear-gradient(145deg,#071426,#12335f)}
.zc-proof__media--logo img,.zc-case-visual--logo .za-case-photo img{width:min(100%,360px);height:auto;object-fit:contain}
.zc-case-visual--logo .za-case-photo figcaption{width:100%;color:#d8e6f8;text-align:center}
.zc-case-visual--portrait .za-case-photo{max-width:900px;margin-right:auto;margin-left:auto}
.zc-case-visual--portrait .za-case-photo img{width:100%;height:auto;max-height:none;object-fit:contain;object-position:50% 0}
.zc-case-index__facts{display:grid;gap:7px;margin:18px 0 0;padding:0;list-style:none}
.zc-case-index__facts li{position:relative;padding-left:22px;color:#334155;font-size:14px;font-weight:750;line-height:1.45}
.zc-case-index__facts li:before{position:absolute;left:0;content:'✓';color:#2563eb;font-weight:950}
.zc-article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start}
.zc-article{padding:clamp(26px,5vw,58px)}
.zc-article section+section{margin-top:48px;padding-top:48px;border-top:1px solid #dbe4ef}
.zc-article h2{margin:0 0 20px;font-size:clamp(27px,4vw,40px);line-height:1.08;letter-spacing:-.035em}
.zc-article p,.zc-article li{color:#334155;font-size:18px;line-height:1.75}
.zc-article p{margin:0 0 18px}.zc-article p:last-child{margin-bottom:0}
.zc-article ul,.zc-article ol{display:grid;gap:10px;margin:20px 0;padding-left:25px}
.zc-article a{color:#1d4ed8;font-weight:750;text-underline-offset:3px}
.zc-article-note{margin:24px 0;padding:20px 22px;color:#17345d;background:#eff6ff;border-left:4px solid #2563eb;border-radius:0 16px 16px 0;font-size:16px;line-height:1.65}
.zc-article-toc{position:sticky;top:105px;display:grid;gap:11px;padding:25px}
.zc-article-toc>span{margin-bottom:5px;color:#64748b;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.zc-article-toc a{color:#334155;font-size:14px;font-weight:750;line-height:1.4;text-decoration:none}
.zc-article-toc a:hover{color:#1d4ed8}
.zc-article-toc .zc-article-toc__service{margin-top:10px;padding-top:16px;color:#1d4ed8;border-top:1px solid #dbe4ef}
.zc-article-contact{display:grid;gap:11px;padding:28px;background:#fff}
.zc-article-contact a:not(.za-btn){color:#1d4ed8;font-weight:800;text-decoration:none}

@media(max-width:1100px){
  .zc-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zc-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .zc-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .zc-split,.zc-price,.zc-reviews{grid-template-columns:1fr}
  .zc-service-group__heading{grid-template-columns:1fr;gap:12px}
  .zc-mid-cta .za-container{align-items:flex-start;flex-direction:column}
  .zc-cases-index{grid-template-columns:minmax(0,1fr)}
  .zc-proof__grid{grid-template-columns:1fr}
  .zc-service-map__head{grid-template-columns:1fr;gap:12px}
  .zc-article-layout{grid-template-columns:1fr}.zc-article-toc{position:static;grid-row:1}
  .zc-footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .za-container{padding-left:18px;padding-right:18px}
  .za-hero{padding:54px 0 48px}
  .za-hero h1{font-size:clamp(36px,12vw,54px);line-height:1}
  .za-hero p{font-size:18px}
  .za-section{padding:54px 0}
  .za-section h2{font-size:clamp(30px,9vw,42px)}
  .za-header__in{gap:12px}
  .za-header__cta{min-height:42px;padding:0 14px;font-size:13px}
  .zc-section-head{gap:12px}
  .zc-section-head>span{width:38px;height:38px;border-radius:12px}
  .zc-check-list,.zc-scope-grid,.zc-related-grid,.zc-catalog-grid,.zc-review-links{grid-template-columns:1fr}
  .zc-scope-card{min-height:auto}
  .zc-quick-nav{top:64px}
  .zc-problem,.zc-outcome,.zc-related-grid .za-card,.zc-catalog-grid .za-card,.zc-case-card,.zc-case-index{min-height:auto}
  .zc-case-index .za-badge{align-self:flex-start;max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .zc-mid-cta{padding:34px 0}
  .zc-price>div>p{font-size:19px}
  .zc-footer-grid{grid-template-columns:1fr}
}
@media(max-width:360px){
  .za-container{padding-left:14px;padding-right:14px}
  .za-logo{font-size:20px}
  .za-header__cta{padding:0 11px}
  .za-hero h1{font-size:34px}
  .za-card{padding:22px}
  .zc-section-head>span{display:none}
}

@media(prefers-reduced-motion:reduce){
  .zc-service-page .zc-scope-card,.zc-service-page .zc-link-card{transition:none}
}



/* =======================================================
   CONTACTS PAGE v2 — scoped
   ======================================================= */

#contacts-page{
    background:#fff;
}

#contacts-page a{
    text-decoration:none;
}

.zc-hero{
    padding:88px 0 72px;
    background:
        radial-gradient(circle at 82% 15%,rgba(37,99,235,.14),transparent 32%),
        linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
    border-bottom:1px solid #e6edf6;
}

.zc-hero__grid{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);
    gap:56px;
    align-items:end;
}

.zc-hero h1{
    max-width:900px;
    margin:14px 0 22px;
    font-size:clamp(42px,5vw,68px);
    line-height:1.02;
    letter-spacing:-.045em;
}

.zc-hero__lead{
    max-width:850px;
    margin:0;
    color:#58708f;
    font-size:20px;
    line-height:1.65;
}

.zc-hero__actions{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:32px;
}

.zc-status{
    display:flex;
    gap:18px;
    align-items:flex-start;
    padding:28px;
    background:#0b162c;
    color:#fff;
    border-radius:24px;
    box-shadow:0 24px 65px rgba(15,23,42,.18);
}

.zc-status__indicator{
    flex:0 0 auto;
    width:12px;
    height:12px;
    margin-top:5px;
    background:#22c55e;
    border:3px solid rgba(255,255,255,.28);
    border-radius:50%;
    box-shadow:0 0 0 8px rgba(34,197,94,.12);
}

.zc-status strong{
    display:block;
    margin-bottom:8px;
    font-size:18px;
}

.zc-status p{
    margin:2px 0;
    color:#cbd6e8;
    font-size:15px;
    line-height:1.5;
}

.zc-section{
    padding:88px 0;
}

.zc-section--muted{
    background:#f5f8fc;
    border-top:1px solid #e6edf6;
    border-bottom:1px solid #e6edf6;
}

.zc-section__head{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(280px,480px);
    gap:50px;
    align-items:end;
    margin-bottom:42px;
}

.zc-section__head h2,
.zc-office h2,
.zc-routing h2,
.zc-request h2{
    margin:12px 0 0;
    font-size:clamp(34px,4vw,52px);
    line-height:1.08;
    letter-spacing:-.035em;
}

.zc-section__head > p{
    margin:0;
    color:#60738e;
    font-size:17px;
    line-height:1.7;
}

.zc-channels{
    border-top:1px solid #dce5f0;
}

.zc-channel{
    display:grid;
    grid-template-columns:70px minmax(0,1fr) auto;
    gap:26px;
    align-items:center;
    min-height:150px;
    padding:28px 12px;
    color:#0f172a;
    border-bottom:1px solid #dce5f0;
    transition:
        padding .2s ease,
        background .2s ease;
}

.zc-channel:hover{
    padding-left:24px;
    padding-right:24px;
    background:#f7faff;
}

.zc-channel--primary{
    background:linear-gradient(90deg,rgba(37,99,235,.07),transparent 70%);
}

.zc-channel--support{
    background:linear-gradient(90deg,rgba(14,165,233,.08),transparent 70%);
}

.zc-channel__number{
    color:#9aabc1;
    font-size:15px;
    font-weight:800;
    letter-spacing:.12em;
}

.zc-channel__body{
    min-width:0;
}

.zc-channel__label{
    display:block;
    margin-bottom:7px;
    color:#647892;
    font-size:14px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
}

.zc-channel__body strong{
    display:block;
    color:#0b1630;
    font-size:clamp(24px,3vw,34px);
    line-height:1.15;
    overflow-wrap:anywhere;
}

.zc-channel__body p{
    max-width:760px;
    margin:10px 0 0;
    color:#5c6f88;
    font-size:16px;
    line-height:1.6;
}

.zc-channel__action{
    display:flex;
    gap:14px;
    align-items:center;
    justify-content:flex-end;
    min-width:160px;
    color:#2563eb;
    font-size:15px;
    font-weight:800;
}

.zc-channel__action span{
    font-size:22px;
    transition:transform .2s ease;
}

.zc-channel:hover .zc-channel__action span{
    transform:translateX(6px);
}

.zc-info-layout{
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    gap:70px;
}

.zc-office,
.zc-routing{
    min-width:0;
}

.zc-office__rows{
    margin-top:34px;
    border-top:1px solid #d8e1ec;
}

.zc-office__row{
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:26px;
    padding:22px 0;
    border-bottom:1px solid #d8e1ec;
}

.zc-office__row span{
    color:#71839a;
    font-size:14px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.07em;
}

.zc-office__row strong{
    color:#16233b;
    font-size:17px;
    line-height:1.55;
}

.zc-office__actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:28px;
}

.zc-routing__item{
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:20px;
    padding:25px 0;
    border-bottom:1px solid #d8e1ec;
}

.zc-routing__item:first-of-type{
    margin-top:20px;
}

.zc-routing__item > span{
    display:flex;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    color:#2563eb;
    background:#e8f0ff;
    border-radius:14px;
    font-size:13px;
    font-weight:900;
}

.zc-routing__item strong{
    display:block;
    margin-bottom:7px;
    color:#10203a;
    font-size:19px;
}

.zc-routing__item p{
    margin:0;
    color:#657892;
    font-size:15px;
    line-height:1.6;
}

.zc-request{
    padding:96px 0;
    background:#081426;
    color:#fff;
}

.zc-request__layout{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:70px;
    align-items:start;
}

.zc-request .za-eyebrow{
    color:#82aaff;
}

.zc-request h2{
    color:#fff;
}

.zc-request__content > p{
    margin:24px 0 0;
    color:#b8c6da;
    font-size:18px;
    line-height:1.7;
}

.zc-request__content ul{
    display:grid;
    gap:11px;
    margin:30px 0 0;
    padding:0;
    color:#d4deec;
    list-style:none;
}

.zc-request__content li{
    position:relative;
    padding-left:24px;
    line-height:1.55;
}

.zc-request__content li::before{
    content:"";
    position:absolute;
    top:.65em;
    left:0;
    width:8px;
    height:8px;
    background:#3b82f6;
    border-radius:50%;
}

.zc-form{
    padding:34px;
    color:#14213a;
    background:#fff;
    border-radius:28px;
    box-shadow:0 30px 90px rgba(0,0,0,.25);
}

.zc-form__row{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}

.zc-form label{
    display:grid;
    gap:8px;
    margin-bottom:16px;
}

.zc-form label > span:first-child{
    color:#31415c;
    font-size:14px;
    font-weight:800;
}

.zc-form input,
.zc-form textarea{
    width:100%;
    padding:15px 16px;
    color:#14213a;
    background:#f8fafc;
    border:1px solid #d9e2ee;
    border-radius:13px;
    font:inherit;
    box-sizing:border-box;
    outline:none;
    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.zc-form input:focus,
.zc-form textarea:focus{
    background:#fff;
    border-color:#3b82f6;
    box-shadow:0 0 0 4px rgba(59,130,246,.12);
}

.zc-form textarea{
    min-height:150px;
    resize:vertical;
}

.zc-form__consent{
    display:grid !important;
    grid-template-columns:20px minmax(0,1fr);
    gap:12px !important;
    align-items:start;
    margin:4px 0 22px !important;
    color:#607089;
    font-size:13px;
    line-height:1.5;
}

.zc-form__consent input{
    width:18px;
    height:18px;
    margin:2px 0 0;
    padding:0;
}

.zc-form__consent a{
    color:#2563eb;
    text-decoration:underline !important;
}

.zc-form__honeypot{
    position:absolute;
    left:-9999px;
    width:1px;
    height:1px;
    overflow:hidden;
}

.zc-form .za-btn{
    width:100%;
    justify-content:center;
}

@media (max-width:1000px){

    .zc-hero__grid,
    .zc-info-layout,
    .zc-request__layout{
        grid-template-columns:1fr;
    }

    .zc-section__head{
        grid-template-columns:1fr;
        gap:20px;
    }

    .zc-status{
        max-width:480px;
    }

}

@media (max-width:720px){

    .zc-hero,
    .zc-section,
    .zc-request{
        padding:62px 0;
    }

    .zc-channel{
        grid-template-columns:42px minmax(0,1fr);
        gap:16px;
        padding:24px 0;
    }

    .zc-channel:hover{
        padding-left:0;
        padding-right:0;
    }

    .zc-channel__action{
        grid-column:2;
        justify-content:flex-start;
        min-width:0;
    }

    .zc-office__row{
        grid-template-columns:1fr;
        gap:8px;
    }

    .zc-form__row{
        grid-template-columns:1fr;
        gap:0;
    }

    .zc-form{
        padding:24px;
        border-radius:22px;
    }

}

/* 2026-08-19: unified case presentation */
.zc-case-visual .za-container::before{content:"Проект в двух предложениях";display:block;margin:0 0 18px;color:#1d4ed8;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.zc-case-visual .zc-case-reading{font-size:clamp(1rem,1.5vw,1.15rem);line-height:1.75}
.zc-case-visual .zc-case-snapshot{border-top:4px solid #2563eb;box-shadow:0 22px 52px rgba(15,23,42,.12)}
.zc-case-visual .za-case-photo{box-shadow:0 22px 52px rgba(15,23,42,.14)}
main>.zc-case-hero~section[id]{scroll-margin-top:132px}
@media(max-width:760px){.zc-case-visual .za-container::before{margin-bottom:14px}.zc-case-visual .zc-case-reading{font-size:1rem;line-height:1.65}}

@media (max-width:600px){
    .zc-case-hero.zc-rado-case-hero h1{
        overflow-wrap:normal;
        word-break:normal;
        hyphens:none;
        font-size:32px;
    }
}

/* Verified project screenshots in public case studies. */
.zc-case-screenshots-section{
    overflow:hidden;
    scroll-margin-top:132px;
}

.zc-case-screenshots-section .zc-section-head>span{
    width:auto;
    min-width:46px;
    padding:0 12px;
    white-space:nowrap;
}

.zc-case-screenshots{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:24px;
    align-items:start;
}

.zc-case-screenshot{
    margin:0;
    overflow:hidden;
    border:1px solid #dbe4ef;
    border-radius:24px;
    background:#fff;
    box-shadow:0 22px 52px rgba(15,23,42,.11);
}

.zc-case-screenshot__image{
    display:block;
    overflow:hidden;
    border-bottom:1px solid #dbe4ef;
    background:#eef3f8;
}

.zc-case-screenshot__image img{
    display:block;
    width:100%;
    height:auto;
    object-fit:cover;
    object-position:top center;
    transition:transform .28s ease;
}

.zc-case-screenshot--desktop .zc-case-screenshot__image img{
    aspect-ratio:16/10;
}

.zc-case-screenshot--mobile{
    width:min(100%,430px);
    justify-self:center;
}

.zc-case-screenshot--mobile .zc-case-screenshot__image img{
    aspect-ratio:390/844;
}

.zc-case-screenshot__image:hover img{
    transform:scale(1.015);
}

.zc-case-screenshot figcaption{
    display:grid;
    gap:8px;
    padding:18px 20px 20px;
    color:#41536b;
    font-size:.94rem;
    line-height:1.55;
}

.zc-case-screenshot figcaption span{
    font-weight:750;
    color:#12213a;
}

.zc-case-screenshot figcaption a{
    width:max-content;
    max-width:100%;
    color:#1d5fd1;
    font-weight:750;
    text-decoration:none;
}

.zc-case-screenshot figcaption a:hover{
    text-decoration:underline;
}

@media (prefers-reduced-motion:reduce){
    .zc-case-screenshot__image img{transition:none}
}

@media (max-width:640px){
    .zc-case-screenshots-section .zc-section-head>span{min-width:38px}
    .zc-case-screenshots{grid-template-columns:1fr;gap:18px}
    .zc-case-screenshot{border-radius:18px}
    .zc-case-screenshot figcaption{padding:16px 17px 18px}
}

/* Public business name on the requisites page. */
.zr-business-name {
  margin: 14px 0 20px;
  color: #2563eb;
  font-size: clamp(1.35rem, 3vw, 2.15rem);
  font-weight: 900;
  line-height: 1.08;
  letter-spacing: -0.03em;
}
.zc-service-price-table{margin-top:22px;overflow-x:auto;border:1px solid #d6e2ef;border-radius:16px;background:#fff}.zc-service-price-table table{width:100%;border-collapse:collapse;min-width:560px}.zc-service-price-table th,.zc-service-price-table td{padding:12px 14px;text-align:left;border-top:1px solid #e4edf6}.zc-service-price-table th{border-top:0;background:#eef5fc;color:#304b6b;font-size:12px;text-transform:uppercase;letter-spacing:.035em}.zc-service-price-table td:nth-child(2){color:#66768a}.zc-service-price-table td:last-child{font-weight:800;color:#0b5ed7;white-space:nowrap}.zc-service-price-table>p{margin:0;padding:12px 14px;border-top:1px solid #e4edf6}.zc-service-price-table a{color:#0b65da;font-weight:700;text-decoration:none}
