/* Xeon Academy: an editorial video library with shared site navigation/footer. */
*,*::before,*::after { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:108px; }
body.academy-page { margin:0; background:#fff; color:#17191d; --xeon-title-size:clamp(46px,6.3vw,86px); --xa-line:#d5dbe1; --xa-muted:#5c646e; --xa-blue:#245cd6; font-family:Inter,Arial,sans-serif; line-height:1.65; }
.academy-page #main-nav { position:sticky; top:0; }
.academy-page [hidden] { display:none !important; }
.academy-page :is(button,input,select) { font:inherit; }
.academy-page main :is(h1,h2,h3,p,figure) { margin:0; }
.academy-page main a { color:inherit; text-underline-offset:4px; }
.academy-page :is(main,dialog) :is(button,input,select,a):focus-visible { outline:2px solid var(--xa-blue); outline-offset:5px; }
.xa-wrap { width:min(1280px,calc(100% - 96px)); margin-inline:auto; }
.xa-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.xa-skip { position:fixed; top:8px; left:12px; z-index:3000; padding:12px 18px; background:#fff; color:#111; transform:translateY(-180%); }
.xa-skip:focus { transform:translateY(0); }
.xa-eyebrow,.xa-topline > span,.xa-facts,.xa-course-top,.xa-image-status,.xa-feature-count,.xa-feature-image-label,.xa-resource-num,.xa-series-intro figcaption { font-family:'Share Tech Mono',monospace; font-weight:400; font-size:11px; letter-spacing:.07em; line-height:1.5; text-transform:uppercase; }
.xa-eyebrow { color:var(--xa-muted); }
.xa-topline { display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid var(--xa-line); padding:27px 0 23px; }
.xa-topline a { font-size:12px; text-decoration:none; }
.xa-topline > span { color:#64707c; font-size:10px; }
.xa-hero-heading { display:grid; grid-template-columns:1.2fr 1fr; gap:60px; padding:42px 0 38px; align-items:end; }
.xa-hero-heading .xa-eyebrow { display:flex; gap:9px; align-items:center; margin-bottom:18px; }
.xa-dot { width:5px; height:5px; background:var(--xa-blue); border-radius:50%; flex-shrink:0; }
.xa-hero-intro { max-width:370px; justify-self:end; padding-bottom:5px; }
.xa-hero-statement { font-size:25px; letter-spacing:-.04em; line-height:1.22; }
.xa-hero-intro > p:nth-child(2) { margin-top:17px; font-size:14px; color:var(--xa-muted); line-height:1.8; }
.xa-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:25px; font-size:12px; text-decoration:none; border-bottom:1px solid #adb7c2; padding:7px 0; }
.xa-text-link:hover { color:var(--xa-blue); border-color:var(--xa-blue); }
.xa-hero-intro .xa-text-link { margin-top:17px; }
.xa-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-block:1px solid var(--xa-line); color:var(--xa-muted); }
.xa-facts > span { display:flex; align-items:center; gap:15px; padding:15px 24px; border-right:1px solid var(--xa-line); font-size:10px; }
.xa-facts > span:first-child { padding-left:0; }
.xa-facts > span:last-child { border-right:0; }
.xa-facts strong { font-family:Inter,Arial,sans-serif; font-size:21px; letter-spacing:-.04em; color:#20252b; font-weight:500; text-transform:none; }
.xa-feature { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(0,1fr); margin-top:30px; background:#14171b; color:#fff; border:1px solid #14171b; }
.xa-feature-image { position:relative; min-height:360px; overflow:hidden; background:#dce1e6; }
.xa-feature-image > img { display:block; width:100%; height:100%; object-fit:cover; }
.xa-feature-image-label { position:absolute; inset:auto 18px 16px; display:flex; justify-content:space-between; gap:15px; padding:9px 12px; border:1px solid #ffffff45; background:#10161edb; color:#e1e6ec; font-size:9px; }
.xa-feature-copy { display:flex; flex-direction:column; align-items:flex-start; padding:30px 32px; }
.xa-feature-top { display:flex; justify-content:space-between; gap:15px; width:100%; margin-bottom:25px; }
.xa-feature-top .xa-eyebrow { color:#a7b1bd; font-size:10px; }
.xa-feature-status { display:inline-flex; align-items:center; gap:7px; color:#d5dbe2; font-size:10px; white-space:nowrap; }
.xa-feature-status::before { content:''; width:4px; height:4px; border-radius:50%; background:#e2b77c; }
.xa-feature h2 { font-size:clamp(29px,3.15vw,44px); }
.xa-feature-copy > p { color:#b0b9c5; font-size:13px; margin-top:20px !important; max-width:350px; }
.xa-feature-topics { display:flex; flex-wrap:wrap; gap:7px 16px; margin-top:20px; color:#c4ccd7; font-size:10px; }
.xa-feature-link { display:flex; align-items:center; justify-content:space-between; gap:20px; width:100%; padding-top:19px; border-top:1px solid #3b424c; margin-top:26px; text-decoration:none; font-size:13px; }
.xa-feature-link:hover { color:#a9c5ff; }
.xa-feature-count { display:block; margin-top:10px; color:#8997a8; font-size:9px; }
.xa-library { padding-top:65px; padding-bottom:64px; }
.xa-section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:27px; }
.xa-section-head h2 { font-size:clamp(28px,3.25vw,43px); margin-top:11px !important; }
.xa-section-head > p { max-width:360px; color:var(--xa-muted); font-size:13px; }
.xa-view-switch { display:flex; border:1px solid #b7c0ca; padding:3px; gap:3px; }
.xa-view-switch button { display:flex; align-items:center; gap:9px; padding:9px 14px; min-height:37px; font-size:12px; cursor:pointer; border:0; background:transparent; color:#59636f; }
.xa-view-switch button[aria-pressed="true"] { color:white; background:#17191d; }
.xa-view-switch svg { width:13px; height:13px; fill:currentColor; }
.xa-library-note { display:flex; align-items:baseline; gap:11px; background:#f4f6f8; border:1px solid #e0e5ea; padding:15px 18px; margin-bottom:24px; font-size:11px; color:#5a6471; }
.xa-library-note p { flex:1; }
.xa-library-note a { flex-shrink:0; text-decoration:none; color:#263d63 !important; }
.xa-notice-dot { flex-shrink:0; width:5px; height:5px; background:#987049; border-radius:50%; align-self:center; }
.xa-controls { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; align-items:center; padding:0; margin:0; }
.xa-search { display:flex; align-items:center; border:1px solid #bcc6d0; height:51px; padding:0 15px; gap:13px; }
.xa-search > svg { width:19px; height:19px; stroke:#7c8793; stroke-width:1.5; flex-shrink:0; }
.xa-search input { width:100%; min-width:0; background:transparent; border:0; border-radius:0; font-size:13px; color:#1c232b; height:100%; padding:0; }
.xa-search input::placeholder { color:#77818d; }
.xa-search:focus-within { border-color:var(--xa-blue); box-shadow:0 0 0 1px var(--xa-blue); }
.xa-search input:focus { outline:none !important; }
.xa-search input::-webkit-search-cancel-button { display:none; }
.xa-search button { background:none; border:0; font-size:22px; color:#596470; cursor:pointer; width:30px; height:35px; flex-shrink:0; }
.xa-level-filter { display:flex; align-items:center; gap:13px; font-size:11px; color:var(--xa-muted); }
.xa-level-filter select { height:51px; min-width:153px; padding:0 29px 0 13px; border:1px solid #bcc6d0; border-radius:0; background:#fff; color:#303943; font-size:12px; cursor:pointer; }
.xa-category-filters { display:flex; flex-wrap:wrap; gap:7px; margin-top:15px; }
.xa-category-filters button { min-height:37px; display:flex; align-items:center; gap:12px; padding:8px 13px; border:1px solid #d9dfe5; border-radius:0; background:#fff; color:#5c6570; font-size:11px; cursor:pointer; }
.xa-category-filters button span { color:#7c8795; font:10px 'Share Tech Mono',monospace; }
.xa-category-filters button[aria-pressed="true"] { color:#fff; background:#17191d; border-color:#17191d; }
.xa-category-filters button[aria-pressed="true"] span { color:#c2c9d2; }
.xa-category-filters button:hover:not([aria-pressed="true"]) { color:#17191d; border-color:#758293; }
.xa-results-bar { display:flex; justify-content:space-between; gap:15px; align-items:center; padding:23px 0 18px; font-size:11px; color:#65717e; }
.xa-reset { background:none; border:0; cursor:pointer; color:#526071; font-size:11px !important; padding:3px; }
.xa-reset:hover { color:#111; text-decoration:underline; text-underline-offset:3px; }
.xa-series-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px 26px; }
.xa-course { min-width:0; border:1px solid #c4ccd5; background:#fff; }
.xa-course > a { display:flex; flex-direction:column; height:100%; text-decoration:none; }
.xa-course-top { display:flex; justify-content:space-between; gap:10px; padding:10px 14px; color:#6a7787; font-size:9px; border-bottom:1px solid #cbd3dc; }
.xa-course-image { position:relative; overflow:hidden; aspect-ratio:16 / 9; background:#e9edf1; }
.xa-course-image img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .25s; }
.xa-image-status { position:absolute; left:12px; bottom:12px; padding:6px 9px; background:#ffffffed; color:#57616e; font-size:8px; letter-spacing:.04em; border:1px solid #c6cdd5; }
.xa-image-status.is-available { background:#eef9f0; color:#276444; }
.xa-course-body { display:flex; flex-direction:column; flex:1; padding:21px 20px 17px; }
.xa-course-body h3 { font-size:21px; }
.xa-course-body p { margin-top:12px !important; margin-bottom:21px !important; color:#5e6874; font-size:12px; line-height:1.8; }
.xa-course-foot { display:flex; justify-content:space-between; align-items:center; gap:10px; border-top:1px solid #dce1e7; padding-top:14px; margin-top:auto; font-size:10px; color:#5f6c7b; }
.xa-course-action { display:flex; gap:12px; align-items:center; color:#303e50; }
.xa-course > a:hover .xa-course-image img { transform:scale(1.035); }
.xa-course:has(> a:hover) { border-color:#66778a; }
.xa-course > a:hover h3 { color:var(--xa-blue); }
.xa-lessons-list { border-top:1px solid #bbc5cf; }
.xa-lesson { display:grid; grid-template-columns:102px minmax(0,1fr) 100px 111px; align-items:center; gap:23px; padding:24px 0; border-bottom:1px solid var(--xa-line); }
.xa-lesson-image { display:block; width:102px; height:78px; object-fit:cover; background:#edf0f4; }
.xa-lesson-copy .xa-eyebrow { font-size:9px; color:#728091; margin-bottom:7px; }
.xa-lesson-copy .xa-eyebrow span { margin-inline:5px; }
.xa-lesson-copy h3 { font-size:17px; }
.xa-lesson-copy > p:last-child { font-size:12px; color:var(--xa-muted); margin-top:8px; line-height:1.75; }
.xa-lesson-meta { align-self:center; display:flex; flex-direction:column; gap:6px; align-items:flex-start; }
.xa-level { color:#495869; font-size:10px; text-transform:capitalize; }
.xa-lesson-status { font-size:10px; color:#77828e; }
.xa-lesson-status.is-available { color:#286c45; }
.xa-lesson-action { display:flex; align-items:center; justify-content:flex-end; gap:9px; font-size:11px; text-decoration:none; }
.xa-lesson-action svg { width:16px; height:16px; }
.xa-lesson-action:hover { color:var(--xa-blue); }
.xa-empty { border:1px solid var(--xa-line); padding:50px 24px; text-align:center; background:#f7f9fb; }
.xa-empty h3 { margin-top:13px !important; font-size:27px; }
.xa-empty p { color:var(--xa-muted); font-size:13px; margin-top:12px !important; }
.xa-button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; min-height:48px; padding:12px 19px; border:1px solid #17191d; background:#17191d; color:#fff !important; font-size:12px !important; text-decoration:none; cursor:pointer; }
.xa-button:hover { background:#313944; }
.xa-empty .xa-button { margin-top:23px; }
.xa-no-script { font-size:12px; color:var(--xa-muted); margin-top:18px !important; }
.xa-resources { padding-bottom:60px; }
.xa-resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid #c6cfd8; }
.xa-resource-grid > a { padding:24px; border-right:1px solid #c6cfd8; text-decoration:none; display:flex; flex-direction:column; align-items:flex-start; }
.xa-resource-grid > a:last-child { border:0; }
.xa-resource-num { color:#6b7887; font-size:10px; }
.xa-resource-grid h3 { margin-top:17px !important; font-size:20px; }
.xa-resource-grid p { margin-top:12px !important; margin-bottom:23px !important; color:#637080; font-size:12px; }
.xa-resource-link { display:flex; gap:25px; justify-content:space-between; width:100%; font-size:11px; margin-top:auto; }
.xa-resource-grid a:hover { background:#f5f7fa; }
.xa-quote { padding-block:38px; border-top:1px solid #d7dde4; background-color:#f3f5f7; background-image:radial-gradient(#b5bec94d .8px,transparent .8px); background-size:8px 8px; }
.xa-quote > div { display:flex; align-items:center; justify-content:space-between; gap:30px; }
.xa-quote h2 { margin-top:10px !important; font-size:35px; }
.xa-series-intro { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:65px; align-items:center; padding:47px 0; }
.xa-series-intro h1 { --xeon-title-size:clamp(37px,4.6vw,66px); margin-top:16px !important; }
.xa-series-description { color:var(--xa-muted); font-size:15px; line-height:1.8; margin-top:23px !important; max-width:520px; }
.xa-series-actions { display:flex; gap:14px 24px; align-items:center; flex-wrap:wrap; margin-top:25px; }
.xa-series-actions .xa-text-link { font-size:11px; }
.xa-series-intro figure { border:1px solid #b9c3ce; padding:10px; }
.xa-series-intro figure img { display:block; width:100%; height:auto; aspect-ratio:3 / 2; object-fit:cover; }
.xa-series-intro figcaption { display:flex; justify-content:space-between; gap:15px; padding-top:10px; font-size:9px; color:#6e7c8d; }
.xa-curriculum { padding-block:58px; }
.xa-lesson--detail { grid-template-columns:42px minmax(0,1fr) 115px; gap:22px; padding-block:27px; }
.xa-lesson--detail:has(.xa-lesson-action) { grid-template-columns:42px minmax(0,1fr) 100px 111px; }
.xa-lesson-number { font:14px 'Share Tech Mono',monospace; color:#718195; align-self:start; padding-top:2px; }
.xa-lesson--detail .xa-lesson-copy .xa-eyebrow { display:none; }
.xa-lesson--detail .xa-lesson-copy p { max-width:760px; }
.xa-lesson--detail:target { background:#edf3fd; outline:1px solid #9bb6e8; outline-offset:10px; }
.xa-series-note { display:flex; align-items:center; gap:12px; border:1px solid #dde3e9; background:#f5f7f9; padding:14px 18px; margin-bottom:21px; font-size:12px; color:#667486; }
.xa-series-note a { color:#304e7e !important; }
.xa-more { padding-bottom:60px; }
/* Poster tiles expand over the grid, keeping the rest of the series in place. */
.xa-video-grid { position:relative; isolation:isolate; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; padding:1px; background:#a6afb9; }
.xa-video-card { min-width:0; background:#12161b; color:#fff; scroll-margin-top:110px; }
.xa-video-cover { position:relative; display:block; width:100%; list-style:none; aspect-ratio:16 / 10; cursor:pointer; overflow:hidden; }
.xa-video-cover::-webkit-details-marker { display:none; }
.xa-video-cover::after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,#050a10c9 0%,#050a101a 62%,#050a10b5 100%); pointer-events:none; transition:background-color .35s; }
.xa-video-cover > img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.22,1,.36,1),filter .45s; }
.xa-video-heading { position:absolute; z-index:1; inset:19px 20px auto; }
.xa-video-index { display:block; font:10px/1.5 'Share Tech Mono',monospace; letter-spacing:.055em; text-transform:uppercase; }
.xa-video-index > span { color:#d0d7df; }
.xa-video-title { display:block; max-width:320px; margin-top:9px; font-size:19px; font-weight:500; line-height:1.3; letter-spacing:-.025em; text-wrap:balance; }
.xa-video-bottom { position:absolute; z-index:1; inset:auto 20px 18px; display:flex; align-items:center; justify-content:space-between; gap:15px; }
.xa-video-status { font:9px 'Share Tech Mono',monospace; letter-spacing:.03em; text-transform:uppercase; color:#e5e9ee; }
.xa-video-prompt { display:flex; align-items:center; gap:12px; font-size:10px; }
.xa-video-prompt svg { width:24px; height:24px; transition:transform .35s; }
.xa-video-cover:hover > img,.xa-video-cover:focus-visible > img { transform:scale(1.06); }
.xa-video-cover:hover::after,.xa-video-cover:focus-visible::after { background-color:#050a101f; }
.xa-video-cover:hover .xa-video-prompt svg { transform:rotate(90deg); }
.xa-video-cover:focus-visible { outline:2px solid #8cbbff; outline-offset:-5px; z-index:2; }
.xa-video-card:target .xa-video-cover { outline:2px solid #8cbbff; outline-offset:-3px; }
.xa-video-panel { background:#11171f; color:#fff; border:1px solid #b8c5d2; overflow:hidden; }
.xa-video-panel-head { display:flex; align-items:center; justify-content:space-between; min-height:48px; gap:20px; padding:10px 20px; border-bottom:1px solid #46505d; }
.xa-video-panel-head > span { color:#b9c6d6; font-size:9px; }
.xa-video-close { display:flex; align-items:center; gap:16px; background:none; color:#fff; border:0; padding:5px 0 5px 12px; cursor:pointer; font-size:11px !important; flex-shrink:0; }
.xa-video-close span { font-size:22px; line-height:1; }
.xa-video-close:hover { color:#b1cdff; }
.xa-video-screen { position:relative; aspect-ratio:16 / 9; background:#e7e9ed; }
.xa-video-screen > img { display:block; width:100%; height:100%; position:absolute; object-fit:contain; }
.xa-video-screen-label { position:absolute; left:16px; bottom:13px; background:#101720e8; color:#d9e4f1; padding:7px 10px; font:9px/1.4 'Share Tech Mono',monospace; letter-spacing:.04em; text-transform:uppercase; }
.xa-video-embed:empty { display:none; }
.xa-video-embed { position:absolute; inset:0; background:#000; }
.xa-video-embed iframe { width:100%; height:100%; display:block; border:0; }
.xa-video-caption { padding:20px 23px 22px; display:flex; gap:25px; align-items:flex-end; border-top:1px solid #46505d; }
.xa-video-caption > div { flex:1; min-width:0; }
.xa-video-caption .xa-video-index { color:#98abc2; font-size:9px; }
.xa-video-caption h3 { color:#fff; font-size:21px; margin-top:8px !important; line-height:1.25; }
.xa-video-caption p:last-child { color:#b9c4d2; font-size:12px; line-height:1.7; margin-top:10px !important; }
.xa-video-caption > a { white-space:nowrap; font-size:11px; flex-shrink:0; text-decoration:none; border-bottom:1px solid #8193aa; padding:7px 0; }
.xa-video-caption > a:hover { color:#b1cdff; }
.xa-video-card[open] { grid-column:1 / -1; }
.xa-video-card[open] > .xa-video-cover { aspect-ratio:auto; min-height:125px; }
.xa-video-card[open] > .xa-video-cover > img { position:absolute; object-fit:cover; }
.xa-video-grid.is-enhanced .xa-video-card[open] { grid-column:auto; }
.xa-video-grid.is-enhanced .xa-video-card[open] > .xa-video-cover { aspect-ratio:16 / 10; min-height:0; }
.xa-video-grid.is-enhanced .xa-video-card[open] > .xa-video-cover > img { position:static; }
.xa-video-grid.is-enhanced .xa-video-panel { position:absolute; z-index:5; top:0; left:0; width:66.666%; transform-origin:0 0; box-shadow:0 16px 45px #050b1633; }
.xa-video-card.is-obscured > summary { pointer-events:none; }
.xa-video-grid-foot { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:19px; color:#697789; font-size:11px; }
.xa-video-grid-foot > span { font:9px 'Share Tech Mono',monospace; letter-spacing:.04em; text-transform:uppercase; }
.xa-video-grid-foot a { color:#354d6d !important; text-decoration:none; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
  .xa-video-prompt { opacity:0; transform:translateY(8px); transition:opacity .3s,transform .4s cubic-bezier(.22,1,.36,1); }
  .xa-video-cover:hover .xa-video-prompt,.xa-video-cover:focus-visible .xa-video-prompt { opacity:1; transform:translateY(0); }
}
@media(max-width:1000px) {
  .xa-video-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .xa-video-title { font-size:18px; }
}
@media(max-width:600px) {
  .xa-video-grid { grid-template-columns:1fr; }
  .xa-video-cover,.xa-video-grid.is-enhanced .xa-video-card[open] > .xa-video-cover { aspect-ratio:16 / 9; min-height:210px; }
  .xa-video-heading { inset:17px 18px auto; }
  .xa-video-title { font-size:20px; }
  .xa-video-caption { flex-direction:column; align-items:flex-start; gap:12px; padding:18px; }
  .xa-video-caption h3 { font-size:20px; }
  .xa-video-panel-head { padding:9px 14px; gap:8px; }
  .xa-video-panel-head > span { font-size:8px; }
  .xa-video-screen-label { left:10px; bottom:10px; font-size:8px; }
  .xa-video-grid-foot { align-items:flex-start; flex-direction:column; gap:8px; }
}
.xa-player { width:min(1040px,calc(100vw - 48px)); max-height:calc(100dvh - 48px); border:1px solid #aebccc; padding:0; color:#edf1f6; background:#12161c; }
.xa-player::backdrop { background:#070b12df; }
.xa-player-head { display:flex; justify-content:space-between; align-items:flex-start; gap:22px; padding:22px 25px; border-bottom:1px solid #343e4b; }
.xa-player-head .xa-eyebrow { color:#9cafc6; font-size:10px; margin:0 0 7px; }
.xa-player-head h2 { margin:0; font-size:22px; }
.xa-player-head button { width:36px; height:36px; flex-shrink:0; cursor:pointer; border:1px solid #4e5c6e; color:#fff; background:none; font-size:23px; }
.xa-player-frame { width:100%; aspect-ratio:16 / 9; background:#000; }
.xa-player-frame iframe { display:block; width:100%; height:100%; border:0; }
.xa-player-foot { padding:20px 25px; display:flex; justify-content:space-between; gap:30px; font-size:12px; }
.xa-player-foot p { margin:0; color:#b3c0d1; max-width:680px; }
.xa-player-foot a { color:#b8d0ff; flex-shrink:0; }
.academy-player-open { overflow:hidden; }
@media(max-width:1100px) {
  .xa-wrap { width:calc(100% - 64px); }
  .xa-hero-heading { gap:40px; }
  .xa-feature { grid-template-columns:1.15fr 1fr; }
  .xa-feature-copy { padding:25px; }
  .xa-feature-top { gap:10px; margin-bottom:20px; }
  .xa-series-grid { gap:23px 19px; }
  .xa-course-body { padding:19px 16px 16px; }
  .xa-course-body h3 { font-size:20px; }
  .xa-course-foot { flex-wrap:wrap; gap:8px; }
  .xa-course-top { font-size:8px; padding:9px 12px; }
  .xa-level-filter > span { display:none; }
  .xa-lesson { gap:17px; grid-template-columns:85px minmax(0,1fr) 80px 97px; }
  .xa-lesson-image { width:85px; height:70px; }
  .xa-resource-grid > a { padding:21px; }
  .xa-series-intro { gap:40px; }
  .xa-lesson--detail { grid-template-columns:32px minmax(0,1fr) 105px; }
}
@media(max-width:850px) {
  .xa-feature-top { flex-direction:column; gap:6px; }
  .xa-feature h2 { font-size:30px; }
  .xa-series-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .xa-library-note { flex-wrap:wrap; gap:6px 11px; }
  .xa-library-note a { margin-left:16px; }
  .xa-lesson { grid-template-columns:75px minmax(0,1fr) 89px; }
  .xa-lesson-image { width:75px; height:65px; }
  .xa-lesson-meta { grid-column:2; flex-direction:row; gap:13px; }
  .xa-lesson-action { grid-column:3; grid-row:1 / 3; }
  .xa-lesson-copy { grid-column:2; }
  .xa-lesson--detail { grid-template-columns:30px minmax(0,1fr); }
  .xa-lesson--detail:has(.xa-lesson-action) { grid-template-columns:30px minmax(0,1fr) 100px; }
  .xa-resource-grid h3 { font-size:18px; }
}
@media(max-width:700px) {
  html { scroll-padding-top:95px; }
  body.academy-page { --xeon-title-size:clamp(44px,11vw,72px); }
  .xa-wrap { width:calc(100% - 40px); }
  .xa-topline { padding:22px 0 19px; }
  .xa-topline a { font-size:11px; }
  .xa-topline > span { font-size:8px; max-width:140px; text-align:right; }
  .xa-hero-heading { grid-template-columns:1fr; gap:25px; padding:32px 0 28px; }
  .xa-hero-heading .xa-eyebrow { font-size:9px; margin-bottom:16px; }
  .xa-hero-intro { justify-self:start; max-width:450px; }
  .xa-hero-statement { font-size:21px; }
  .xa-hero-statement br { display:none; }
  .xa-hero-statement br::after { content:' '; }
  .xa-hero-intro > p:nth-child(2) { font-size:13px; margin-top:12px; }
  .xa-hero-intro .xa-text-link { margin-top:12px; }
  .xa-facts > span { flex-direction:column; align-items:flex-start; gap:3px; font-size:8px; padding:12px 13px; }
  .xa-facts strong { font-size:19px; }
  .xa-feature { grid-template-columns:1fr; margin-top:23px; }
  .xa-feature-image { min-height:0; aspect-ratio:16 / 9; }
  .xa-feature-image-label { font-size:8px; left:12px; right:12px; bottom:12px; padding:7px 9px; }
  .xa-feature-copy { padding:24px; }
  .xa-feature-top { flex-direction:row; width:100%; gap:10px; }
  .xa-feature h2 { font-size:34px; }
  .xa-feature-copy > p { margin-top:16px !important; }
  .xa-feature-topics { margin-top:16px; }
  .xa-feature-link { margin-top:23px; }
  .xa-library { padding-block:42px; }
  .xa-section-head { flex-direction:column; align-items:flex-start; gap:20px; margin-bottom:23px; }
  .xa-section-head h2 { font-size:32px; }
  .xa-section-head > p { font-size:12px; }
  .xa-view-switch { width:100%; }
  .xa-view-switch button { flex:1; justify-content:center; }
  .xa-library-note { padding:14px; font-size:10px; }
  .xa-library-note a { width:100%; }
  .xa-controls { grid-template-columns:minmax(0,1fr); gap:12px; }
  .xa-level-filter { justify-content:space-between; }
  .xa-level-filter > span { display:block; }
  .xa-level-filter select { height:40px; font-size:11px; }
  .xa-search { height:48px; gap:10px; padding-inline:12px; }
  .xa-search input { font-size:12px; }
  .xa-category-filters { margin-top:15px; gap:6px; }
  .xa-category-filters button { font-size:10px; padding:7px 10px; gap:9px; min-height:35px; }
  .xa-results-bar { padding-block:21px 16px; font-size:10px; }
  .xa-series-grid { gap:22px; }
  .xa-course-top { font-size:9px; }
  .xa-course-body { padding:20px; }
  .xa-course-foot { flex-wrap:nowrap; }
  .xa-lesson { grid-template-columns:42px minmax(0,1fr); gap:10px 13px; padding-block:21px; }
  .xa-lesson-image { width:42px; height:42px; align-self:start; margin-top:2px; }
  .xa-lesson-copy h3 { font-size:16px; }
  .xa-lesson-copy .xa-eyebrow { font-size:8px; }
  .xa-lesson-copy > p:last-child { font-size:11px; }
  .xa-lesson-meta { grid-column:2; }
  .xa-lesson-action { grid-row:auto; grid-column:2; justify-content:flex-start; padding-top:3px; }
  .xa-resources,.xa-more { padding-bottom:42px; }
  .xa-resource-grid { grid-template-columns:1fr; }
  .xa-resource-grid > a { padding:23px; border-right:0; border-bottom:1px solid #c6cfd8; }
  .xa-resource-grid h3 { font-size:22px; margin-top:12px !important; }
  .xa-resource-grid p { margin-bottom:19px !important; }
  .xa-quote { padding-block:30px; }
  .xa-quote > div { flex-direction:column; align-items:flex-start; gap:22px; }
  .xa-quote h2 { font-size:31px; }
  .xa-series-intro { grid-template-columns:1fr; gap:28px; padding-block:32px; }
  .xa-series-intro h1 { --xeon-title-size:clamp(36px,9vw,60px); }
  .xa-series-description { font-size:13px; margin-top:19px !important; }
  .xa-series-actions { gap:12px 20px; }
  .xa-curriculum { padding-block:40px; }
  .xa-series-note { flex-direction:column; align-items:flex-start; gap:5px; font-size:11px; }
  .xa-lesson--detail,.xa-lesson--detail:has(.xa-lesson-action) { grid-template-columns:25px minmax(0,1fr); }
  .xa-lesson-number { font-size:12px; }
  .xa-player { width:calc(100vw - 24px); max-height:calc(100dvh - 24px); }
  .xa-player-head { padding:17px; }
  .xa-player-head h2 { font-size:18px; }
  .xa-player-foot { padding:17px; flex-direction:column; gap:12px; }
}
@media(max-width:540px) { .xa-series-grid { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .xa-course-image img,.xa-video-cover > img,.xa-video-cover::after,.xa-video-prompt,.xa-video-prompt svg { transition:none; }
  .xa-video-cover:hover > img,.xa-video-cover:focus-visible > img,.xa-video-cover:hover .xa-video-prompt svg { transform:none; }
}
