/* Catalog and course details use AlexWeb's existing design tokens. */
.ax-training-catalog,.ax-training-detail,.ax-training-spotlight{--ax-course-accent:var(--ax-gold,var(--ax-accent,#d6a857));--ax-course-line:rgba(121,156,192,.26);--ax-course-panel:rgba(17,38,58,.35);--ax-course-muted:#aebfce;overflow-wrap:anywhere}
.ax-training-catalog,.ax-training-detail{padding-block:clamp(40px,6vw,95px);min-height:55vh}
.ax-training-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:24px;min-height:360px;padding:clamp(26px,5vw,72px);border:1px solid var(--ax-course-line);border-radius:20px;overflow:hidden;background:radial-gradient(ellipse at 84% 32%,rgba(42,93,138,.24),transparent 54%),linear-gradient(125deg,rgba(8,17,29,.65),rgba(11,27,44,.72));}
.ax-training-hero::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0 43px,rgba(143,175,209,.045) 44px),repeating-linear-gradient(0deg,transparent 0 43px,rgba(143,175,209,.045) 44px);mask-image:linear-gradient(90deg,transparent 20%,#000 100%)}
.ax-training-hero h1,.ax-training-detail-header h1{font-family:AXEditorial,Georgia,serif;font-size:clamp(36px,5.4vw,76px);line-height:1.05;letter-spacing:-.04em;margin:0 0 18px}
.ax-training-hero h1 em{font-style:normal;color:var(--ax-course-accent)}
.ax-training-hero-copy>p:not(.ax-eyebrow),.ax-training-detail-header>p:not(.ax-eyebrow){max-width:58ch;color:var(--ax-course-muted);font-size:clamp(15px,1.55vw,18px);line-height:1.65;margin:0 0 24px}
.ax-training-hero-art{align-self:center;margin:0;max-width:410px;width:100%;justify-self:end;color:var(--ax-course-accent)}
.ax-training-hero-art svg{width:100%;height:auto;display:block;filter:drop-shadow(0 14px 24px #030a14)}
.ax-training-catalog #catalogo{padding-top:clamp(42px,6vw,78px);scroll-margin-top:32px}
.ax-training-catalog h2,.ax-training-detail h2,.ax-training-spotlight h2{margin:0 0 12px;font-family:AXEditorial,Georgia,serif;font-size:clamp(24px,3vw,38px);line-height:1.18}
.ax-training-catalog .ax-eyebrow,.ax-training-detail .ax-eyebrow,.ax-training-card .ax-eyebrow{color:var(--ax-course-accent)}
.ax-training-filters{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:22px 0 28px}
.ax-training-filters a,.ax-training-meta>span,.ax-training-status{display:inline-block;border:1px solid var(--ax-course-line);border-radius:999px;padding:6px 11px;font-size:.85rem;line-height:1.25}
.ax-training-filters a{padding:9px 14px;color:inherit;text-decoration:none}
.ax-training-filters a[aria-current="page"],.ax-training-filters a:hover{border-color:var(--ax-course-accent);color:var(--ax-course-accent);background:#b18a3c15}
.ax-training-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.ax-training-grid .ax-training-card{display:flex;flex-direction:column;min-width:0;margin:0;overflow:hidden;border:1px solid var(--ax-course-line);border-radius:12px;background:var(--ax-course-panel)}
.ax-training-cover{display:block;position:relative;aspect-ratio:16/8;overflow:hidden;background:radial-gradient(ellipse at 75% 28%,#1b3b5b,#091827 70%)}
.ax-training-cover img,.ax-training-detail-cover img{display:block;width:100%;height:100%;object-fit:cover}
.ax-training-symbol{display:grid;place-items:center;color:var(--ax-course-accent);line-height:1;flex:none}
.ax-training-symbol svg{width:32px;height:32px}
.ax-training-cover-symbol{position:absolute;inset:0;background:radial-gradient(circle,transparent 24%,#6389b126 25%,transparent 26%,transparent 36%,#6389b120 37%,transparent 38%);}
.ax-training-cover-symbol svg{width:49px;height:49px}
.ax-training-card-body{display:flex;flex-direction:column;gap:9px;flex:1;padding:20px}
.ax-training-card-body h3,.ax-training-card-body p{margin:0}
.ax-training-card-body h3{font-size:1.13rem;line-height:1.35}
.ax-training-summary,.ax-training-meta{color:var(--ax-course-muted)}
.ax-training-meta{display:flex;flex-wrap:wrap;gap:7px;padding-block:4px 10px}
.ax-training-status,.ax-training-meta>.ax-training-status{color:var(--ax-course-accent);border-color:#b18a3c66;background:#b18a3c12}
.ax-training-status[data-status="open"],.ax-training-meta>.ax-training-status[data-status="open"]{color:#9fd4bd;border-color:#53977b77;background:#397f6320}
.ax-training-status[data-status="closed"],.ax-training-meta>.ax-training-status[data-status="closed"]{color:var(--ax-course-muted);border-color:var(--ax-course-line);background:transparent}
.ax-training-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:auto;padding-top:14px;border-top:1px solid var(--ax-course-line)}
.ax-training-card-bottom>span{font-weight:700}
.ax-training-link,.ax-training-crumb a,.ax-training-enroll dd a,.ax-training-nav-active{color:var(--ax-course-accent,var(--ax-accent));text-underline-offset:4px}
.ax-training-link:hover,.ax-training-crumb a:hover,.ax-training-enroll dd a:hover{text-decoration:underline}
.ax-training-empty,.ax-training-spotlight-head{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;padding:clamp(22px,3vw,38px);border:1px solid var(--ax-course-line);border-radius:12px;background:var(--ax-course-panel)}
.ax-training-empty>.ax-training-symbol{width:56px;height:56px;border:1px solid var(--ax-course-line);border-radius:13px}
.ax-training-empty>div,.ax-training-spotlight-head>div{flex:1 1 235px}
.ax-training-empty h3,.ax-training-empty p,.ax-training-spotlight-head .ax-description{margin:0}
.ax-training-empty h3{margin-bottom:6px}
.ax-training-empty p{color:var(--ax-course-muted)}
.ax-training-spotlight .ax-training-grid{margin-top:20px}
.ax-training-crumb{margin-bottom:25px}
.ax-training-detail-header{margin-bottom:28px}
.ax-training-detail-header h1{font-size:clamp(34px,4.8vw,66px);max-width:19ch}
.ax-training-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:clamp(22px,5vw,68px);align-items:start}
.ax-training-body{min-width:0}
.ax-training-detail-cover{overflow:hidden;border:1px solid var(--ax-course-line);border-radius:12px;margin-bottom:30px;aspect-ratio:16/9}
.ax-training-prose,.ax-training-program{margin-bottom:32px}
.ax-training-prose p{line-height:1.72}
.ax-training-prose figure,.ax-training-prose pre{max-width:100%;overflow:auto}
.ax-training-panel,.ax-training-program details,.ax-training-module-line{padding:17px 20px;border:1px solid var(--ax-course-line);border-radius:9px;background:var(--ax-course-panel)}
.ax-training-program details,.ax-training-module-line{margin:10px 0}
.ax-training-program summary{cursor:pointer;font-weight:700}
.ax-training-program summary::marker,.ax-training-program summary span,.ax-training-module-line span{color:var(--ax-course-accent)}
.ax-training-program summary span,.ax-training-module-line span{margin-right:.6em;font-variant-numeric:tabular-nums}
.ax-training-program details p{margin:.65rem 0 0;color:var(--ax-course-muted)}
.ax-training-enroll{padding:24px}
.ax-training-detail .ax-training-enroll h2{font-size:24px;margin:0 0 16px}
.ax-training-enroll dl{margin:12px 0 22px}
.ax-training-enroll dl>div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:10px;padding:10px 0;border-bottom:1px solid var(--ax-course-line)}
.ax-training-enroll dd{margin:0}
.ax-training-enroll dd a{display:block}
.ax-training-enroll dt{color:var(--ax-course-muted)}
.ax-training-price{font-size:1.5rem;font-weight:700;color:var(--ax-course-accent);margin:16px 0 4px}
.ax-training-catalog .pagination{margin-top:28px}
.ax-training-catalog .nav-links{display:flex;gap:8px;flex-wrap:wrap}
.ax-training-catalog .page-numbers{border:1px solid var(--ax-course-line);padding:7px 12px;border-radius:6px}
.ax-training-catalog .page-numbers.current{border-color:var(--ax-course-accent);color:var(--ax-course-accent)}
@media(max-width:920px){.ax-training-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ax-training-detail-grid{grid-template-columns:minmax(0,1fr) minmax(230px,280px)}}
@media(max-width:660px){.ax-training-grid,.ax-training-detail-grid,.ax-training-hero{grid-template-columns:minmax(0,1fr)}.ax-training-hero{gap:12px}.ax-training-hero-art{max-width:220px;justify-self:center}.ax-training-catalog,.ax-training-detail{padding-block:36px 56px}.ax-training-hero h1{font-size:clamp(31px,8vw,48px)}}

.ax-training-symbol .icon{color:inherit}
.ax-header nav a.ax-training-nav-active,.ax-header nav a[aria-current="page"]:hover{color:var(--ax-gold,var(--ax-accent))}
.ax-training-catalog h1,.ax-training-detail h1,.ax-training-catalog h2,.ax-training-detail h2{font-weight:600}
