.aq-home-catalog {--aq-ink:#20104e; --aq-purple:#6424d8; --aq-soft:#f0eafb; width:100%; color:var(--aq-ink); scroll-margin-top:100px;}
.aq-home-catalog * {box-sizing:border-box;}
.aq-home-toolbar {display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:18px;}
.aq-home-catalog .aq-home-toolbar h2 {margin:0; color:var(--aq-ink); font-size:clamp(24px,3vw,36px); line-height:1.2; text-transform:uppercase;}
.aq-home-search {display:flex; align-items:center; flex:0 1 300px; min-width:0; margin:0; border:1px solid #ded6ef; border-radius:999px; background:white; overflow:hidden;}
.aq-home-catalog .aq-home-search input[type=search] {display:block; min-width:0; width:100%; height:44px; padding:10px 8px 10px 18px; border:0; border-radius:0; color:var(--aq-ink); background:transparent; font-size:14px; box-shadow:none;}
.aq-home-search button {display:flex; align-items:center; justify-content:center; flex:0 0 44px; min-height:44px; padding:10px; color:var(--aq-ink); background:none; border:0; cursor:pointer;}
.aq-home-search svg {width:20px; height:20px;}
.aq-home-filters {display:block; margin-bottom:14px;}
.aq-home-mobile-filters {display:none;}
.aq-home-filter-label {display:block; margin:0 0 8px; color:#67557c; font-size:12px; font-weight:600; line-height:1.4;}
.aq-home-filter-links {display:flex; flex-wrap:wrap; gap:8px;}
.aq-home-subcategories {margin-top:12px; padding:12px 14px; border-left:3px solid #c3a4ee; border-radius:0 8px 8px 0; background:#f8f5fc;}
.aq-home-subcategories[hidden] {display:none !important;}
.aq-home-catalog .aq-home-filters .aq-home-subcategories a {border-color:#ded6ef; background:#fff;}
.aq-home-catalog .aq-home-filters a.aq-home-is-ancestor {border-color:#9363cf; box-shadow:inset 0 0 0 1px #9363cf;}
.aq-home-catalog .aq-home-filters a {display:inline-flex; align-items:center; justify-content:center; padding:7px 16px; border:1px solid transparent; border-radius:999px; background:var(--aq-soft); color:var(--aq-ink); font-size:12px; font-weight:500; line-height:1.4; text-decoration:none; text-transform:none;}
.aq-home-catalog .aq-home-filters a:hover {border-color:#a884e6;}
.aq-home-catalog .aq-home-filters a[aria-current=true] {background:var(--aq-purple); color:white;}
.aq-home-filters a.aq-home-has-children::after {
  content:""; display:inline-block; width:6px; height:6px; flex:0 0 6px;
  margin-left:9px; margin-top:-3px; border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor; transform:rotate(45deg);
}
.aq-home-filters a.aq-home-has-children[aria-expanded=true]::after {transform:rotate(225deg); margin-top:3px;}
.aq-home-catalog a:focus-visible,.aq-home-catalog button:focus-visible,.aq-home-catalog input:focus-visible {outline:3px solid #a884e6; outline-offset:3px;}
.aq-home-status {margin:0 0 16px; color:#746486; font-size:13px; line-height:1.5;}
.aq-home-status.aq-home-error {color:#942133;}
.aq-home-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px;}
.aq-home-grid[aria-busy=true] {opacity:.6;}
.aq-home-catalog .aq-home-card {display:flex; flex-direction:column; min-width:0; margin:0; padding:0; border:1px solid #ece7f4; border-radius:10px; background:#fff; overflow:hidden; box-shadow:0 2px 7px #2610520b;}
.aq-home-cover {display:block; aspect-ratio:16/9; overflow:hidden; background:var(--aq-soft);}
.aq-home-cover img {display:block; width:100%; height:100%; margin:0; object-fit:cover; transition:transform .2s;}
.aq-home-cover:hover img {transform:scale(1.025);}
.aq-home-no-image {display:flex; align-items:center; justify-content:center; height:100%; font-size:20px; color:#746486;}
.aq-home-card-content {display:flex; flex-direction:column; align-items:flex-start; flex:1; padding:14px; min-width:0;}
.aq-home-category {margin-bottom:7px; font-size:10px; color:#746486; line-height:1.4; text-transform:none;}
.aq-home-catalog .aq-home-vip {display:inline-flex; align-items:center; gap:5px; max-width:100%; margin:0 0 9px; padding:4px 8px; border:1px solid #dfd1f5; border-radius:999px; color:#321154; background:#f2ecfb; font-size:10px; line-height:1.4; white-space:normal;}
.aq-home-vip svg {width:13px; height:13px; flex:0 0 13px; fill:#321154;}
.aq-home-catalog .aq-home-card .course-title {margin:0 0 5px; padding:0; min-height:0; font-size:15px; font-weight:700; line-height:1.35; text-transform:uppercase; overflow-wrap:anywhere;}
.aq-home-catalog .course-title a {color:var(--aq-ink); text-decoration:none;}
.aq-home-author {margin:0 0 12px; font-size:11px; line-height:1.4; color:#746486;}
.aq-home-card-bottom {display:flex; align-items:flex-end; justify-content:space-between; gap:8px; width:100%; margin-top:auto;}
.aq-home-price {min-width:0; font-size:17px; line-height:1.4; font-weight:700; color:var(--aq-ink);}
.aq-home-catalog .aq-home-price .price,.aq-home-catalog .aq-home-price .course-item-price {font-size:inherit; line-height:inherit; font-weight:inherit; color:inherit;}
.aq-home-price .origin-price,.aq-home-price del {margin-right:5px; color:#8b8395; font-size:12px; font-weight:400;}
.aq-home-price .course-price-prefix {display:block; font-size:10px; font-weight:400;}
.aq-home-price .course-price {margin:0; padding:0;}
.aq-home-catalog .aq-home-cart {display:flex; align-items:center; justify-content:center; flex:0 0 36px; width:36px; height:36px; color:var(--aq-ink); border-radius:6px;}
.aq-home-cart:hover {background:var(--aq-soft);}
.aq-home-cart svg {width:23px; height:23px;}
.aq-home-empty {grid-column:1/-1; padding:32px 0;}
.aq-home-pagination {display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-top:28px;}
.aq-home-pagination a {display:flex; align-items:center; justify-content:center; min-width:40px; min-height:40px; padding:8px; border:1px solid #ded6ef; border-radius:8px; color:var(--aq-ink); text-decoration:none;}
.aq-home-pagination a[aria-current=page] {background:var(--aq-purple); color:white; border-color:var(--aq-purple);}
.aq-home-sr {position:absolute; width:1px; height:1px; padding:0; margin:-1px; clip:rect(0,0,0,0); overflow:hidden; white-space:nowrap;}
@media(max-width:900px) {.aq-home-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px;}}
@media(max-width:767px) {
  .aq-home-toolbar {flex-direction:column; align-items:stretch; gap:14px;}
  .aq-home-search {flex:auto; width:100%;}
  .aq-home-catalog.aq-home-has-mobile-filters .aq-home-filters {display:none !important;}
  .aq-home-mobile-filters {display:grid; grid-template-columns:minmax(0,1fr); gap:10px; margin:0 0 14px;}
  .aq-home-mobile-field {min-width:0;}
  .aq-home-mobile-field label {display:block; margin:0 0 5px; color:#67557c; font-size:12px; font-weight:600; line-height:1.4;}
  .aq-home-select-wrap {position:relative;}
  .aq-home-select-wrap::after {content:""; position:absolute; right:17px; top:18px; width:8px; height:8px; border-right:2px solid #6424d8; border-bottom:2px solid #6424d8; transform:rotate(45deg); pointer-events:none;}
  .aq-home-catalog .aq-home-mobile-filters select {
    display:block; appearance:none; -webkit-appearance:none; width:100%; max-width:100%; min-width:0;
    height:46px; margin:0; padding:9px 42px 9px 14px; border:1px solid #ded6ef;
    border-radius:10px; background:#faf8fd; color:var(--aq-ink); font-family:inherit;
    font-size:16px; line-height:1.5; font-weight:500; text-overflow:ellipsis;
  }
  .aq-home-catalog .aq-home-mobile-filters select:focus-visible {outline:3px solid #a884e6; outline-offset:2px;}
  .aq-home-catalog .aq-home-search input[type=search] {font-size:16px;}
}
@media(max-width:600px) {.aq-home-toolbar {flex-direction:column; align-items:stretch; gap:14px;} .aq-home-search {flex:auto; width:100%;} .aq-home-filters {gap:7px;} .aq-home-catalog .aq-home-filters a {font-size:12px; padding:9px 12px;} .aq-home-grid {gap:12px;} .aq-home-card-content {padding:11px;} .aq-home-catalog .aq-home-card .course-title {font-size:13px;} .aq-home-price {font-size:15px;}}
@media(max-width:420px) {
  .aq-home-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px;}
  .aq-home-card-content {padding:9px;}
  .aq-home-catalog .aq-home-card .course-title {font-size:12px; line-height:1.4;}
  .aq-home-catalog .aq-home-vip {font-size:9px; padding:4px 6px; gap:4px;}
  .aq-home-vip svg {width:11px; height:11px; flex-basis:11px;}
  .aq-home-author {font-size:10px;}
  .aq-home-price {font-size:13px;}
  .aq-home-catalog .aq-home-cart {flex-basis:28px; width:28px; height:32px;}
  .aq-home-cart svg {width:20px; height:20px;}
}
@media(prefers-reduced-motion:reduce) {.aq-home-cover img {transition:none;}}
