@font-face { font-display: block; font-family: "icomoon"; font-style: normal; font-weight: normal; src: url("../educrat/fonts/icomoon.woff?4q0qb7") format("woff"); }
.session-row [class^="icon-"], .session-row [class*=" icon-"] { font-family: "icomoon" !important; font-style: normal; font-weight: normal; line-height: 1; }
  .sessions-catalog__page-button [class^="icon-"] { font-family: "icomoon" !important; }
.session-row .icon-book::before { content: "\e95f"; }
.session-row .icon-clock-2::before { content: "\e954"; }
.session-row .icon-video-file::before { content: "\e958"; }
.session-row .icon-calendar-2::before { content: "\e94c"; }
.session-row .icon-person-3::before { content: "\e94d"; }
.session-row .icon-graduate-cap::before { content: "\e926"; }
.session-row .icon-person::before { content: "\e933"; }
.session-row .icon-check::before { content: "\e953"; }
.session-row .icon-close::before { content: "\e94f"; }
.session-row .icon-save-money::before { content: "\e93a"; }

.session-row { align-items: center; border: 1px solid #e8eaf0; border-radius: 8px; color: inherit; display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr) auto; min-width: 0; padding: 18px; transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease; }
.session-row:hover { border-color: #c7d2fe; box-shadow: 0 10px 24px rgb(15 23 42 / .07); transform: translateY(-2px); }
.session-row__title { -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: #0f172a; display: -webkit-box; font-size: 1.05rem; font-weight: 600; line-height: 1.4; margin: 9px 0 6px; max-height: 2.8em; overflow: hidden; text-overflow: ellipsis; white-space: normal; }
.site-main:not(.home-theme-main) .session-row__title { font-size: 1.05rem; }
.session-row__description { -webkit-box-orient: vertical; -webkit-line-clamp: 3; color: #64748b; display: -webkit-box; font-size: .92rem; line-height: 1.6; margin-bottom: 12px; max-width: 800px; overflow: hidden; }
.session-row__meta { color: #64748b; display: flex; flex-wrap: wrap; font-size: .84rem; gap: 8px 18px; }
.session-row__meta-item { align-items: center; display: inline-flex; gap: 7px; }
.session-row__meta-item > [class^="icon-"] { color: #64748b; flex: 0 0 auto; font-size: .9rem; }
.session-row__meta-price { color: #64748b; font-weight: 400; }
.session-row__meta-price > [class^="icon-"] { color: #64748b; }
.session-row__status { align-items: center; border-radius: 100px; display: inline-flex; font-size: .75rem; font-weight: 600; gap: 6px; padding: 5px 10px; }
.session-row__status--live { background: #fff0ef; color: #c2413b; }
.session-row__status--waiting { background: #fff7e6; color: #9a6700; }
.session-row__status--proposed { background: #eef2ff; color: #4338ca; }
.session-row__status--confirmed { background: #eaf7ef; color: #247044; }
.session-row__status--closed { background: #f1f3f5; color: #596273; }
.session-row__side { align-items: flex-end; display: flex; flex-direction: column; gap: 14px; min-width: 150px; }
.session-row__price { align-items: center; color: #0f172a; display: flex; font-size: 1.2rem; font-weight: 600; gap: 7px; white-space: nowrap; }
.session-row__price > [class^="icon-"] { color: #4338ca; font-size: .95rem; }
.session-row__trainer { align-items: center; display: flex; gap: 9px; max-width: 100%; min-width: 0; }
.session-row__trainer-logo { border-radius: 50%; flex: 0 0 30px; height: 30px; object-fit: cover; object-position: center; width: 30px; }
.session-row__trainer-name { color: #334155; font-size: .92rem; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@media (max-width: 991px) {
  .session-row { grid-template-columns: minmax(0, 1fr); }
  .session-row__side { align-items: center; flex-direction: row; flex-wrap: wrap; gap: 16px; justify-content: flex-start; min-width: 0; }
}

@media (max-width: 640px) {
  .session-row { align-items: start; gap: 16px; padding: 20px 18px; }
}

.home-sessions-grid { display: grid; gap: 24px; grid-template-columns: repeat(3, minmax(0, 1fr)); padding-top: 40px; }
.home-sessions-grid .session-row { align-items: stretch; grid-template-columns: minmax(0, 1fr); grid-template-rows: minmax(0, 1fr) auto; }
.home-sessions-grid .session-row__main { align-self: stretch; display: flex; flex-direction: column; min-width: 0; }
.home-sessions-grid .session-row__meta { display: grid; gap: 8px 18px; grid-template-columns: minmax(0, auto) minmax(0, 1fr); margin-top: auto; padding-top: 12px; }
.home-sessions-grid .session-row__meta-category,
.home-sessions-grid .session-row__meta-date,
.home-sessions-grid .session-row__meta-price { grid-column: 1 / -1; }
.home-sessions-grid .session-row__side { align-items: center; flex-direction: row; flex-wrap: wrap; justify-content: space-between; min-width: 0; }

@media (max-width: 991px) {
  .home-sessions-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .home-sessions-grid { grid-template-columns: minmax(0, 1fr); padding-top: 28px; }
}