/* SVG-иконки: класс ico + ico-<имя>, иконка рисуется в ::before маской и красится в currentColor.
   Размер — font-size, цвет — color. Файлы: /images/ico/<имя>.svg; заменить иконку = подменить файл. */

.ico::before {
    content: '';
    display: inline-block;
    width: calc(1em * var(--ico-ratio, 1));
    /* Высота строки с иконкой по центру — как у глифа шрифта; 1em — для старых браузеров без lh */
    height: 1em;
    height: 1lh;
    vertical-align: -0.125em;
    vertical-align: calc(-0.125em - (1lh - 1em) / 2);
    background-color: currentColor;
    -webkit-mask: var(--ico) center / contain no-repeat;
            mask: var(--ico) center / contain no-repeat;
}

.ico-arrow-right { --ico: url(/images/ico/arrow-right.svg); }
.ico-award { --ico: url(/images/ico/award.svg); }
.ico-badge-check { --ico: url(/images/ico/badge-check.svg); }
.ico-benefit-eco { --ico: url(/images/ico/benefit-eco.svg); }
.ico-benefit-fat { --ico: url(/images/ico/benefit-fat.svg); }
.ico-benefit-fresh { --ico: url(/images/ico/benefit-fresh.svg); }
.ico-benefit-hot { --ico: url(/images/ico/benefit-hot.svg); }
.ico-benefit-microwave { --ico: url(/images/ico/benefit-microwave.svg); }
.ico-benefit-recycle { --ico: url(/images/ico/benefit-recycle.svg); }
.ico-benefit-snow { --ico: url(/images/ico/benefit-snow.svg); }
.ico-benefit-stack { --ico: url(/images/ico/benefit-stack.svg); }
.ico-benefit-steam { --ico: url(/images/ico/benefit-steam.svg); }
.ico-benefit-temp { --ico: url(/images/ico/benefit-temp.svg); }
.ico-benefit-transport { --ico: url(/images/ico/benefit-transport.svg); }
.ico-book { --ico: url(/images/ico/book.svg); }
.ico-calendar { --ico: url(/images/ico/calendar.svg); }
.ico-calendar-blank { --ico: url(/images/ico/calendar-blank.svg); }
.ico-callback { --ico: url(/images/ico/callback.svg); }
.ico-caret-down { --ico: url(/images/ico/caret-down.svg); --ico-ratio: 0.5714; }
.ico-caret-up { --ico: url(/images/ico/caret-up.svg); --ico-ratio: 0.5714; }
.ico-cart { --ico: url(/images/ico/cart.svg); }
.ico-chart { --ico: url(/images/ico/chart.svg); }
.ico-chevron-down { --ico: url(/images/ico/chevron-down.svg); }
.ico-chevron-right { --ico: url(/images/ico/chevron-right.svg); --ico-ratio: 0.3571; }
.ico-close { --ico: url(/images/ico/close.svg); }
.ico-diamond { --ico: url(/images/ico/diamond.svg); }
.ico-documents { --ico: url(/images/ico/documents.svg); }
.ico-eco { --ico: url(/images/ico/eco.svg); }
.ico-factory { --ico: url(/images/ico/factory.svg); }
.ico-file-doc { --ico: url(/images/ico/file-doc.svg); }
.ico-file-image { --ico: url(/images/ico/file-image.svg); }
.ico-file-pdf { --ico: url(/images/ico/file-pdf.svg); }
.ico-file-ppt { --ico: url(/images/ico/file-ppt.svg); }
.ico-file-table { --ico: url(/images/ico/file-table.svg); }
.ico-file-table-grid { --ico: url(/images/ico/file-table-grid.svg); }
.ico-file-text { --ico: url(/images/ico/file-text.svg); }
.ico-globe { --ico: url(/images/ico/globe.svg); }
.ico-goal { --ico: url(/images/ico/goal.svg); }
.ico-idea { --ico: url(/images/ico/idea.svg); }
.ico-info { --ico: url(/images/ico/info.svg); --ico-ratio: 0.3571; }
.ico-innovation { --ico: url(/images/ico/innovation.svg); }
.ico-laptop { --ico: url(/images/ico/laptop.svg); }
.ico-lock { --ico: url(/images/ico/lock.svg); }
.ico-magazine { --ico: url(/images/ico/magazine.svg); }
.ico-mic { --ico: url(/images/ico/mic.svg); }
.ico-minus { --ico: url(/images/ico/minus.svg); --ico-ratio: 0.7857; }
.ico-newspaper { --ico: url(/images/ico/newspaper.svg); }
.ico-palette { --ico: url(/images/ico/palette.svg); }
.ico-phone { --ico: url(/images/ico/phone.svg); }
.ico-player-next { --ico: url(/images/ico/player-next.svg); --ico-ratio: 0.5714; }
.ico-player-pause { --ico: url(/images/ico/player-pause.svg); --ico-ratio: 0.8571; }
.ico-player-play { --ico: url(/images/ico/player-play.svg); --ico-ratio: 0.7857; }
.ico-player-prev { --ico: url(/images/ico/player-prev.svg); --ico-ratio: 0.5714; }
.ico-player-rotate-left { --ico: url(/images/ico/player-rotate-left.svg); --ico-ratio: 0.8571; }
.ico-player-rotate-right { --ico: url(/images/ico/player-rotate-right.svg); --ico-ratio: 0.8571; }
.ico-player-zoom-in { --ico: url(/images/ico/player-zoom-in.svg); --ico-ratio: 0.9286; }
.ico-player-zoom-out { --ico: url(/images/ico/player-zoom-out.svg); --ico-ratio: 0.9286; }
.ico-plus { --ico: url(/images/ico/plus.svg); --ico-ratio: 0.7857; }
.ico-search { --ico: url(/images/ico/search.svg); }
.ico-shield-check { --ico: url(/images/ico/shield-check.svg); }
.ico-star { --ico: url(/images/ico/star.svg); }
.ico-star-filled { --ico: url(/images/ico/star-filled.svg); }
.ico-swatches { --ico: url(/images/ico/swatches.svg); }
.ico-team { --ico: url(/images/ico/team.svg); }
.ico-truck { --ico: url(/images/ico/truck.svg); }
.ico-video-play { --ico: url(/images/ico/video-play.svg); }
.ico-vk { --ico: url(/images/ico/vk.svg); }
.ico-zoom-in { --ico: url(/images/ico/zoom-in.svg); }
