.courses-catalog-hero{padding-bottom:38px}
.courses-catalog-hero .site-container{position:relative}
.courses-catalog-hero h1{max-width:760px}
.catalog-search{max-width:720px;margin-top:24px;padding:7px;border:1px solid var(--line);border-radius:17px;background:var(--panel);box-shadow:0 12px 34px rgba(15,23,42,.06)}
.catalog-search input{border:0!important;background:transparent!important;box-shadow:none!important;min-height:48px!important;font-size:15px!important}
.catalog-search .button{min-width:112px;gap:8px;border-radius:13px}
.courses-catalog-section{padding-top:34px;background:linear-gradient(180deg,color-mix(in srgb,var(--primary) 2%,var(--bg)),var(--bg))}
.catalog-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 20px;padding:14px 18px;border:1px solid var(--line);border-radius:18px;background:var(--panel);box-shadow:0 8px 24px rgba(15,23,42,.04)}
.catalog-summary>div{display:flex;align-items:baseline;gap:8px}.catalog-summary strong{font-size:24px;color:var(--primary)}.catalog-summary span{font-size:13px;font-weight:900;color:var(--text)}.catalog-summary p{margin:0;color:var(--muted);font-size:13px}
.course-grid-modern{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.course-card-modern{border-radius:24px;border:1px solid color-mix(in srgb,var(--line) 88%,transparent);background:var(--panel);overflow:hidden;box-shadow:0 12px 34px rgba(15,23,42,.055);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.course-card-modern:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--primary) 24%,var(--line));box-shadow:0 22px 48px rgba(15,23,42,.10)}
.course-card-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 13%,var(--panel)),color-mix(in srgb,var(--secondary) 12%,var(--panel)))}
.course-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}
.course-card-modern:hover .course-card-media img{transform:scale(1.035)}
.course-card-image-fallback{width:100%;height:100%;display:grid;place-items:center;position:relative;color:var(--primary)}
.course-card-image-fallback span{position:absolute;right:18px;top:16px;font-size:11px;font-weight:900;letter-spacing:.12em;opacity:.55}.course-card-image-fallback b{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--secondary));color:#fff;font-size:31px;box-shadow:0 18px 38px color-mix(in srgb,var(--primary) 20%,transparent)}
.course-card-media-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,0) 48%,rgba(15,23,42,.24) 100%);pointer-events:none}
.course-card-mode,.course-card-price{position:absolute;top:14px;z-index:2;display:inline-flex;align-items:center;min-height:32px;padding:6px 11px;border-radius:999px;font-size:11px;font-weight:900;backdrop-filter:blur(10px);box-shadow:0 8px 20px rgba(15,23,42,.10)}
.course-card-mode{right:14px;background:rgba(255,255,255,.94);color:var(--text)}
.course-card-price{left:14px;background:rgba(7,138,135,.94);color:#fff}
.course-body-modern{padding:19px 19px 18px;gap:0}
.course-card-tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:11px}
.course-card-tags span{padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:var(--bg);color:var(--muted);font-size:10.5px;font-weight:800}
.course-body-modern h2{margin:0 0 8px;font-size:21px;line-height:1.55;min-height:65px}.course-body-modern h2 a{color:var(--text);text-decoration:none}.course-body-modern h2 a:hover{color:var(--primary)}
.course-card-description{margin:0;color:var(--muted);font-size:13px;line-height:1.85;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:48px}
.course-card-facts{display:grid;grid-template-columns:1.35fr .75fr .75fr;gap:8px;margin-top:16px}
.course-card-facts>div{min-width:0;display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--bg) 70%,var(--panel))}.course-card-facts>div>i,.course-card-facts>div>.svg-inline--fa{width:15px;height:15px;flex:0 0 15px;color:var(--primary)}.course-card-facts span{min-width:0}.course-card-facts small,.course-card-facts b{display:block}.course-card-facts small{font-size:9.5px;color:var(--muted);margin-bottom:2px}.course-card-facts b{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text)}
.course-card-subfacts{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px;color:var(--muted);font-size:11px}.course-card-subfacts span{display:inline-flex;align-items:center;gap:6px}.course-card-subfacts i,.course-card-subfacts .svg-inline--fa{width:12px;height:12px;color:var(--primary)}
.course-foot-modern{margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}
.course-card-price-bottom small,.course-card-price-bottom strong{display:block}.course-card-price-bottom small{font-size:9.5px;color:var(--muted);margin-bottom:2px}.course-card-price-bottom strong{font-size:16px;color:var(--primary)}
.course-details-button{min-height:42px!important;width:auto!important;gap:8px;border-radius:13px!important;padding-inline:15px!important;font-size:12px!important}.course-details-button i,.course-details-button .svg-inline--fa{width:13px;height:13px}
.catalog-empty{text-align:center;padding:48px 24px;border-radius:24px}.catalog-empty h2{font-size:25px}
@media(max-width:1100px){.course-grid-modern{grid-template-columns:repeat(2,minmax(0,1fr))}.course-card-facts{grid-template-columns:1fr 1fr}.course-card-facts>div:first-child{grid-column:1/-1}}
@media(max-width:700px){.catalog-search{display:grid;padding:8px}.catalog-search .button{width:100%}.catalog-summary{align-items:flex-start;flex-direction:column}.course-grid-modern{grid-template-columns:1fr}.course-body-modern h2{min-height:0}.course-card-facts{grid-template-columns:1fr 1fr}.course-card-facts>div:first-child{grid-column:1/-1}.course-foot-modern{align-items:center;flex-direction:row}.course-details-button{width:auto!important}}
@media(max-width:430px){.course-card-facts{grid-template-columns:1fr}.course-card-facts>div:first-child{grid-column:auto}.course-foot-modern{align-items:stretch;flex-direction:column}.course-details-button{width:100%!important}.course-card-price-bottom{text-align:center}}
