
@font-face{font-family:'Jakarta';src:url('/assets/fonts/jakarta-var.woff2')format('woff2-variations');
  font-weight:200 800;font-display:swap;font-style:normal}
@font-face{font-family:'Instrument';src:url('/assets/fonts/instrument-var.woff2')format('woff2-variations');
  font-weight:400 700;font-display:swap;font-style:normal}
@font-face{font-family:'Instrument';src:url('/assets/fonts/instrument-var-italic.woff2')format('woff2-variations');
  font-weight:400 700;font-display:swap;font-style:italic}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#ffffff;color:#3a4358;
  font:400 18px/1.68 'Instrument',system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img,svg{max-width:100%;height:auto}
a{color:#1d4ed8;text-underline-offset:3px}
a:hover{color:#1739a8}
:focus-visible{outline:3px solid #1d4ed8;outline-offset:3px}

.ez-skip{position:absolute;left:-9999px}
.ez-skip:focus{left:8px;top:8px;z-index:9;background:#0d1b32;color:#fff;
  padding:10px 15px;font-family:'Jakarta',sans-serif;font-size:14px}

/* Боковые отступы задаются ТОЛЬКО здесь. Секционные классы ниже обязаны
   использовать padding-top/padding-bottom, а не сокращённую запись: при
   равной специфичности shorthand обнулит боковые отступы и на мобильном
   текст пойдёт от края до края. Эта ошибка уже случалась в ledger. */
.ez-col{max-width:720px;margin:0 auto;padding:0 22px}
.ez-wide{max-width:1160px;margin:0 auto;padding:0 22px}

/* --- шапка --- */
.ez-bar{border-bottom:1px solid #dde3ec;background:#ffffff;position:relative}
.ez-bar__in{max-width:1160px;margin:0 auto;padding:15px 22px;display:flex;
  flex-wrap:wrap;gap:10px 26px;align-items:center;justify-content:space-between}
.ez-logo{font-family:'Jakarta',sans-serif;font-weight:800;font-size:18px;
  letter-spacing:-.03em;color:#0d1b32;text-decoration:none}
.ez-logo:hover{color:#1d4ed8}
.ez-links{display:flex;flex-wrap:wrap;gap:5px 20px;font-family:'Jakarta',sans-serif;
  font-size:14.5px;font-weight:500}
.ez-links a{color:#5d6679;text-decoration:none;padding:3px 0;
  border-bottom:2px solid transparent}
.ez-links a:hover{color:#0d1b32;border-bottom-color:#dde3ec}
.ez-links a[aria-current]{color:#0d1b32;border-bottom-color:#1d4ed8}

/* --- первый экран --- */
.ez-hero{background:#0d1b32;color:#fff;padding-top:66px;padding-bottom:62px}
.ez-hero h1{font-family:'Jakarta',sans-serif;font-weight:800;
  font-size:clamp(32px,5vw,52px);line-height:1.08;letter-spacing:-.035em;
  color:#fff;margin:0 0 20px;max-width:19ch}
.ez-hero__lede{font-size:19.5px;line-height:1.62;color:#c3ccdc;margin:0;max-width:56ch}
.ez-hero__go{margin:32px 0 0;display:flex;flex-wrap:wrap;gap:12px}
.ez-hero__go a{font-family:'Jakarta',sans-serif;font-weight:700;font-size:15px;
  text-decoration:none;padding:13px 22px;border:2px solid #fff;color:#fff}
.ez-hero__go a:first-child{background:#fff;color:#0d1b32}
.ez-hero__go a:hover{background:#1d4ed8;border-color:#1d4ed8;color:#fff}

/* --- УКАЗАТЕЛЬ: квадратный фрагмент той же картинки ------------------- */
.ez-index{background:#f6f8fb;padding-top:54px;padding-bottom:60px}
.ez-index__hd{max-width:62ch;margin:0 0 40px}
.ez-index__hd h2{font-family:'Jakarta',sans-serif;font-weight:800;font-size:26px;
  line-height:1.24;letter-spacing:-.03em;color:#0d1b32;margin:0 0 10px}
.ez-index__hd p{margin:0;color:#5d6679;font-size:18px;line-height:1.6}

.ez-grp{margin:0 0 48px}
.ez-grp__t{display:flex;flex-wrap:wrap;align-items:baseline;
  justify-content:space-between;gap:6px 18px;
  padding-bottom:12px;border-bottom:2px solid #0d1b32}
.ez-grp__t h3{font-family:'Jakarta',sans-serif;font-weight:800;font-size:21px;
  letter-spacing:-.025em;color:#0d1b32;margin:0}
.ez-grp__t h3 a{color:#0d1b32;text-decoration:none}
.ez-grp__t h3 a:hover{color:#1d4ed8;text-decoration:underline}
.ez-grp__n{font-family:'Jakarta',sans-serif;font-size:13px;font-weight:600;
  color:#8b93a5;white-space:nowrap}
.ez-grp__d{font-size:16.5px;line-height:1.6;color:#5d6679;margin:14px 0 24px;
  max-width:74ch}

.ez-cards{list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(auto-fill,minmax(268px,1fr));gap:22px}
.ez-card{background:#ffffff;border:1px solid #dde3ec;display:flex;
  flex-direction:column;overflow:hidden}
.ez-card__pic{aspect-ratio:16/9;overflow:hidden;background:#eaeef4;
  border-bottom:1px solid #dde3ec}
.ez-card__pic svg{width:100%;height:100%;display:block}
.ez-card__in{padding:15px 16px 17px}
.ez-card__k{font-family:'Jakarta',sans-serif;font-size:11.5px;font-weight:700;
  letter-spacing:.05em;text-transform:uppercase;color:#8b93a5;margin:0 0 7px}
.ez-card h4{font-family:'Jakarta',sans-serif;font-weight:700;font-size:17px;
  line-height:1.32;letter-spacing:-.015em;margin:0}
.ez-card h4 a{color:#0d1b32;text-decoration:none}
.ez-card h4 a:hover{color:#1d4ed8;text-decoration:underline}
.ez-card:hover{border-color:#1d4ed8}

/* --- вводный текст --- */
.ez-note{padding-top:50px;padding-bottom:56px}
.ez-note p{margin:0 0 20px}
.ez-note h2{font-family:'Jakarta',sans-serif;font-weight:800;font-size:23px;
  line-height:1.3;letter-spacing:-.028em;color:#0d1b32;margin:38px 0 14px}
.ez-note h2:first-child{margin-top:0}
.ez-note ul,.ez-note ol{margin:0 0 20px;padding-left:22px}
.ez-note li{margin:0 0 8px}

/* --- страница материала: широкая полоса из той же картинки ----------- */
.ez-banner{background:#eaeef4;border-bottom:1px solid #dde3ec}
.ez-banner__in{max-width:1160px;margin:0 auto;height:clamp(130px,20vw,220px);overflow:hidden}
.ez-banner svg{width:100%;height:100%;display:block}

.ez-piece{padding-top:38px;padding-bottom:66px}
.ez-trail{font-family:'Jakarta',sans-serif;font-size:13.5px;font-weight:500;
  color:#5d6679;margin:0 0 20px}
.ez-trail a{color:#5d6679;text-decoration:none}
.ez-trail a:hover{color:#1d4ed8;text-decoration:underline}
.ez-h1{font-family:'Jakarta',sans-serif;font-weight:800;
  font-size:clamp(28px,4.2vw,42px);line-height:1.12;letter-spacing:-.035em;
  color:#0d1b32;margin:0 0 18px}
.ez-sum{font-size:19.5px;line-height:1.6;color:#5d6679;margin:0 0 14px}
.ez-kind{font-family:'Jakarta',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:.05em;text-transform:uppercase;color:#8b93a5;
  margin:0 0 32px;padding-bottom:16px;border-bottom:2px solid #1d4ed8}

.ez-text p{margin:0 0 20px}
.ez-text h2{font-family:'Jakarta',sans-serif;font-weight:800;
  font-size:clamp(21px,2.8vw,27px);line-height:1.26;letter-spacing:-.03em;
  color:#0d1b32;margin:42px 0 15px;padding-top:16px;
  border-top:1px solid #dde3ec}
.ez-text h3{font-family:'Jakarta',sans-serif;font-weight:700;font-size:18px;
  color:#0d1b32;margin:28px 0 9px}
.ez-text h4{font-family:'Jakarta',sans-serif;font-weight:700;font-size:16px;
  color:#16223a;margin:22px 0 8px}
.ez-text ul,.ez-text ol{margin:0 0 20px;padding-left:22px}
.ez-text li{margin:0 0 8px}
.ez-text strong{font-weight:700;color:#0d1b32}
.ez-text em{font-style:italic}
.ez-text blockquote{margin:0 0 20px;padding:2px 0 2px 18px;
  border-left:3px solid #b45309;color:#5d6679}
.ez-text code{font-family:ui-monospace,monospace;font-size:.88em;
  background:#eaeef4;padding:1px 5px}

/* --- подвал материала --- */
.ez-next{margin:48px 0 0;padding-top:22px;border-top:2px solid #0d1b32}
.ez-next__t{font-family:'Jakarta',sans-serif;font-weight:800;font-size:14px;
  color:#0d1b32;margin:0 0 12px}
.ez-next ul{list-style:none;margin:0;padding:0}
.ez-next li{margin:0 0 9px;line-height:1.42}
.ez-next li a{color:#3a4358;text-decoration:none;font-size:17px}
.ez-next li a:hover{color:#1d4ed8;text-decoration:underline}

/* --- страница раздела --- */
.ez-hub{padding-top:40px;padding-bottom:58px}
.ez-count{font-family:'Jakarta',sans-serif;font-size:13px;font-weight:600;
  color:#5d6679;margin:0 0 30px;padding-bottom:14px;border-bottom:2px solid #1d4ed8}
.ez-row{margin:0 0 28px;padding-bottom:26px;border-bottom:1px solid #eaeef4}
.ez-row:last-child{border-bottom:0}
.ez-row h2{font-family:'Jakarta',sans-serif;font-weight:700;font-size:21px;
  line-height:1.28;letter-spacing:-.025em;margin:0 0 8px}
.ez-row h2 a{color:#0d1b32;text-decoration:none}
.ez-row h2 a:hover{color:#1d4ed8}
.ez-row p{margin:0 0 7px;font-size:17px;line-height:1.6}
.ez-row__k{font-family:'Jakarta',sans-serif;font-size:12px;font-weight:700;
  letter-spacing:.04em;text-transform:uppercase;color:#8b93a5;margin:0}

/* --- подвал --- */
.ez-foot{background:#0d1b32;color:#c3ccdc;padding-top:44px;padding-bottom:48px;
  margin-top:10px}
.ez-foot__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(178px,1fr));
  gap:26px 32px}
.ez-foot__t{font-family:'Jakarta',sans-serif;font-weight:800;font-size:13px;
  color:#fff;margin:0 0 10px}
.ez-foot ul{list-style:none;margin:0;padding:0}
.ez-foot li{margin:0 0 7px}
.ez-foot li a{font-family:'Jakarta',sans-serif;font-size:14.5px;color:#c3ccdc;
  text-decoration:none}
.ez-foot li a:hover{color:#fff;text-decoration:underline}
.ez-foot__note{font-size:14px;line-height:1.65;color:#8e9ab0;margin:30px 0 0;
  padding-top:20px;border-top:1px solid #253552;max-width:82ch}

@media(prefers-reduced-motion:reduce){*{transition:none!important}}


/* --- independent software guides --- */
.ez-table-wrap{overflow-x:auto;margin:18px 0 34px}
.ez-table{width:100%;min-width:650px;border-collapse:collapse;background:#fff;font-size:14px;line-height:1.45}
.ez-table th,.ez-table td{padding:11px 12px;text-align:left;vertical-align:top;border:1px solid #dde3ec}
.ez-table th{font:700 11.5px/1.4 'Jakarta',sans-serif;letter-spacing:.05em;text-transform:uppercase;color:#5d6679;background:#eaeef4}
.ez-tool{position:relative;margin-top:46px;padding-top:22px;border-top:2px solid #0d1b32}
.ez-tool .ez-tool__rank{position:absolute;right:0;top:19px;margin:0;color:#aab4c5;font:800 26px/1 'Jakarta',sans-serif}
.ez-tool h2{margin-top:0;padding-right:50px;border-top:0}
.ez-best{background:#eef3ff;border-left:3px solid #1d4ed8;padding:10px 13px}
@media(max-width:700px){.ez-table{font-size:13.5px}.ez-table th,.ez-table td{padding:9px 10px}}
