/* AIVORA MARKETPLACE PRO — Version 2.5.0
   Refined responsive course catalogue inspired by the approved UI concept.
   Pure CSS design (no image screenshot baked into the website). */
:root{--av-blue:#1460e5;--av-deep:#102b58;--av-muted:#647b9c;--av-line:#e3ecf7}
.courses-section{background:radial-gradient(ellipse 440px 280px at -6% 23%,#dceaff 0,transparent 75%),radial-gradient(ellipse 460px 320px at 109% 73%,#ddf5f1 0,transparent 74%),linear-gradient(180deg,#f7fbff 0%,#f2f8ff 100%)!important;position:relative;overflow:hidden}
.courses-section:before{content:"";pointer-events:none;position:absolute;width:135px;height:135px;top:220px;left:max(12px,calc((100vw - 1410px)/2));opacity:.29;background-image:radial-gradient(#68a7ed 1.8px,transparent 2px);background-size:17px 17px;z-index:0}
.courses-section>.container{position:relative;z-index:1}
.courses-section .section-heading{align-items:end;margin-bottom:30px;gap:20px}
.courses-section .section-heading h2{color:#132f56;font-size:clamp(35px,4.2vw,59px);line-height:1.12;letter-spacing:-.055em}
.courses-section .section-heading h2 span{color:#1a67e9}
.courses-section .section-heading>p{max-width:460px;font-size:14px;line-height:1.8;color:#7287a0}
.catalog-toolbar{border:1px solid #e4edf7;background:#ffffffdb;padding:12px 13px;border-radius:19px;box-shadow:0 13px 38px #326aae09;gap:15px}
.catalog-controls{display:flex;gap:9px;align-items:center}
.category-pills{gap:7px}
.category-pill{border-radius:11px;border:1px solid transparent!important;color:#546c8d;background:transparent;font-size:11px;font-weight:800;padding:12px 15px}
.category-pill.active{border-color:#bcd5ff!important;background:#eaf2ff!important;color:#115ada!important}
.category-pill:hover{background:#f0f6ff}
.catalog-controls .search-field,.catalog-controls .sort-field{height:43px;border-radius:11px;border-color:#e1eaf5;background:#f8fbff}
.catalog-meta{margin:23px 0 17px;font-size:12px;color:#7d90a8}
.catalog-meta>span{font-size:11px}
.course-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.course-card{min-width:0;display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e3edf8;border-radius:19px;box-shadow:0 7px 23px #255e9c0c,0 20px 48px #326aac09;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.course-card:hover{transform:translateY(-6px);box-shadow:0 17px 38px #23569420,0 36px 75px #4380b412;border-color:#d3e5fd}
.course-card .thumb-trigger{position:relative;display:block;flex:none;isolation:isolate;overflow:hidden}
.course-card .thumb-trigger:focus-visible,.course-action:focus-visible,.course-card button:focus-visible{outline:3px solid #4f94f2;outline-offset:3px}
.course-thumb{height:170px!important;border-radius:0!important;position:relative}
.course-thumb:before{background:radial-gradient(circle at 26% 25%,#fff9,transparent 60%),radial-gradient(circle at 84% 30%,#ffffff2a,transparent 60%);opacity:.7}
.course-thumb:after{content:"";position:absolute;inset:auto -26px -40px auto;width:156px;height:156px;border:1px solid #ffffff55;border-radius:38px;transform:rotate(18deg);pointer-events:none}
.course-thumb .thumb-center{inset:8px 0 -1px;transform:scale(.91);filter:drop-shadow(2px 13px 18px #193c6a20);transition:transform .35s}
.course-card:hover .thumb-center{transform:scale(1.01) translateY(-2px)}
.course-thumb .thumb-topline{top:14px;left:17px;right:17px;opacity:.85}
.course-thumb .thumb-topline>span:first-child{font-size:9px;letter-spacing:.12em}
.course-thumb .thumb-watermark{font-size:55px;color:#ffffff38;right:12px;bottom:6px;letter-spacing:-.07em}
.course-thumb .course-badge{bottom:13px;left:13px;max-width:calc(100% - 52px);padding:7px 11px;border-radius:10px;background:#fffc!important;color:#17426a!important;font-size:9px;box-shadow:0 3px 11px #284f6114;backdrop-filter:blur(8px)}
.av-card-bookmark{position:absolute;right:13px;top:12px;z-index:5;width:34px;height:34px;display:grid;place-items:center;border:1px solid #dce6f9;background:#fffe;border-radius:50%;box-shadow:0 4px 13px #2657ad12;color:#194879}
.av-card-bookmark .icon{width:16px;height:16px}
.course-body{padding:20px 20px 19px;flex:1;display:flex;flex-direction:column}
.course-cat{font-size:10px;color:#6e86ad;letter-spacing:.12em;font-weight:800;margin-bottom:9px}
.course-card h3{min-height:55px;font-size:17px!important;letter-spacing:-.035em;line-height:1.34;color:#132e55;margin:0 0 10px;overflow-wrap:anywhere}
.course-card h3 button{color:inherit}
.course-card h3 button:hover{color:#115dd5}
.course-summary{font-size:12px!important;line-height:1.65;color:#697e9b;min-height:79px;margin:0 0 18px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.course-facts{margin-top:auto;display:flex;align-items:center;gap:15px;flex-wrap:wrap;color:#627eab;font-size:11px!important;padding:0 0 16px;border-bottom:1px solid #e8eff8}
.course-facts .icon{width:14px;height:14px;color:#4775be}
.course-bottom{display:flex;gap:10px;align-items:center;justify-content:space-between;padding-top:16px;min-height:58px}
.course-price{font-size:22px!important;line-height:1.1;color:#1363de;font-weight:800;white-space:nowrap}
.course-price small{font-size:11px;line-height:1.2;letter-spacing:0;margin-top:6px;color:#a1aec0}
.course-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:43px;padding:9px 12px;border:0;border-radius:12px;text-decoration:none!important;background:linear-gradient(135deg,#2377f8,#0757d8);color:white!important;font-size:11px;font-weight:800;line-height:1.15;box-shadow:0 9px 20px #1960c522;cursor:pointer;white-space:nowrap;flex-shrink:0}
.course-action:hover{background:linear-gradient(135deg,#135fdf,#073fb2);transform:translateY(-1px)}
.course-action .icon{width:15px;height:15px}
.course-action.is-owned{background:#e9f7f0;color:#13865d!important;box-shadow:none}
.course-action.is-soon{color:#6c819a!important;background:#f2f5fa;border:1px solid #dee8f2;box-shadow:none;cursor:default}
.av-course-status{font-size:10px;color:#7d90a6;margin-top:8px;line-height:1.45}
.course-card.is-coming-soon .course-price{color:#617b9e}
.course-card.is-coming-soon .course-badge{color:#7a5181!important}
.courses-endnote{padding:32px 0 0}
@media (min-width:1480px){.courses-section .container{max-width:1420px}.course-grid{gap:23px}.course-thumb{height:184px!important}.course-body{padding:22px}.course-card h3{font-size:18px!important}}
@media (max-width:1170px){.course-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.course-body{padding:17px}.course-summary{min-height:82px}}
@media (max-width:900px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-toolbar{display:block}.catalog-controls{margin-top:10px}.course-thumb{height:166px!important}}
@media (max-width:650px){.courses-section .container{width:calc(100% - 28px)}.courses-section .section-heading h2{font-size:35px}.catalog-toolbar{padding:9px;border-radius:14px}.category-pills{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.category-pill{white-space:nowrap;padding:11px 12px}.catalog-controls{display:grid;grid-template-columns:minmax(0,1fr) 123px}.course-grid{gap:12px}.course-thumb{height:132px!important}.course-thumb .thumb-center{transform:scale(.71)}.course-body{padding:13px 12px 14px}.course-cat{font-size:8.5px}.course-card h3{font-size:14px!important;min-height:58px}.course-summary{font-size:10.5px!important;line-height:1.55;min-height:79px}.course-facts{gap:7px;font-size:9px!important;padding-bottom:12px}.course-price{font-size:17px!important}.course-price small{font-size:9px}.course-bottom{align-items:stretch;flex-direction:column;gap:10px}.course-action{width:100%;min-height:38px;font-size:10.5px}.av-card-bookmark{width:28px;height:28px}.course-thumb .course-badge{font-size:8px;bottom:9px;left:9px;padding:5px 7px}.course-card{border-radius:14px}.course-thumb .thumb-topline{left:10px;right:10px;top:10px}}
@media (max-width:380px){.course-grid{grid-template-columns:1fr}.course-thumb{height:185px!important}.course-card h3{min-height:auto}.course-summary{min-height:auto}.course-bottom{flex-direction:row}.course-action{width:auto}}
@media (prefers-reduced-motion:reduce){.course-card,.course-thumb .thumb-center,.course-action{transition:none!important}.course-card:hover{transform:none}}
