/* v9.2.1 home: Methods block, Courses grid (real cards, art + animation on every card), Index rows (the 9.2 accordion, now in #cxidx). */
/* Methods block (replaces the old Methods home section) */
.mx5{max-width:1280px;margin:0 auto;padding:var(--s3,1.5rem) var(--gutter) var(--s4,2.5rem);scroll-margin-top:72px}
.mx5-in{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:.4rem 1.6rem;padding:1.5rem 0 1.4rem;border-top:1px solid var(--rule-2,#2a2d30);border-bottom:1px solid color-mix(in srgb,var(--rule,#1c1e20) 70%,transparent);color:#f2efe8;text-decoration:none;position:relative}
.mx5-in::before{content:"";position:absolute;left:0;top:-1px;width:2.2rem;height:1px;background:var(--tq,#5fd9cc)}
.mx5-k{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-4,#7c8084)}
.mx5-t{font-family:var(--sans);font-weight:300;font-size:clamp(1.45rem,2.6vw,2.15rem);line-height:1.15;letter-spacing:-.025em;color:#f2efe8}
.mx5-go{font-style:italic;font-weight:300;color:var(--tq,#5fd9cc);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .4s var(--ease,ease)}
.mx5-ar{font-family:var(--sans);font-weight:200;font-size:clamp(1.4rem,2.4vw,2rem);color:var(--tq,#5fd9cc);transition:transform .3s var(--ease,ease)}
.mx5-in:hover .mx5-go,.mx5-in:focus-visible .mx5-go{background-size:100% 1px}.mx5-in:hover .mx5-ar{transform:translateX(4px)}
.mx5-in:focus-visible{outline:1px solid var(--tq,#5fd9cc);outline-offset:6px}
@media (max-width:640px){.mx5{padding:var(--s2,1rem) var(--gutter) var(--s3,1.5rem)}.mx5-in{grid-template-columns:1fr auto;padding:1.1rem 0 1rem;min-height:44px}.mx5-k{grid-column:1/-1}.mx5-t{font-size:1.3rem}}

/* Courses grid: 3 columns on desktop, 2 on tablet, 1 dense column on phones */
#courses{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.6rem 2.2rem;max-width:none;margin:0;padding:0}
#courses>section.course,#courses>section.course:nth-child(even){display:flex!important;flex-direction:column;align-items:stretch;grid-template-columns:none!important;grid-template-rows:none!important;min-height:0!important;max-width:none;margin:0!important;padding:0!important;gap:0!important;border-top:1px solid color-mix(in srgb,var(--rule,#1c1e20) 60%,transparent);border-radius:0;background:none}
#courses>section.course::before{content:"";position:absolute;left:0;top:-1px;height:1px;width:2.2rem;background:var(--c)}
#courses>section.course>*{grid-column:auto!important;grid-row:auto!important}
#courses>section.course .c-art,#courses>section.course:nth-child(even) .c-art{order:0!important;display:block!important;position:relative;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:4/3!important;max-height:none!important;margin:1rem 0 2.2rem!important;border-radius:0;overflow:visible;background:none}
#courses>section.course .c-art .tex{display:block!important;position:absolute;inset:10px}
#courses>section.course .c-art .sig{display:block!important;position:absolute;inset:10px;width:calc(100% - 20px)!important;height:calc(100% - 20px)!important;pointer-events:none}
#courses>section.course .c-art .crop{display:block!important}
#courses>section.course .c-art .coord{display:flex!important;bottom:-1.5rem;font-size:11px}
#courses>section.course .c-num,#courses>section.course:nth-child(even) .c-num{position:absolute;top:.3rem;right:.3rem;left:auto;bottom:auto;font-size:clamp(3.4rem,5vw,5rem)!important;text-shadow:none;color:transparent}
#courses>section.course .c-txt{max-width:none;padding:0!important;margin:0!important;min-width:0;grid-column:auto!important}
#courses>section.course .c-sub{display:flex!important;font-size:12px!important;margin:0 0 .5rem!important}
#courses>section.course .c-title{font-size:clamp(1.55rem,2.1vw,2.05rem)!important;line-height:1.08;margin:0 0 .2rem!important}
#courses>section.course .c-subtitle{font-size:1.05rem!important;margin:0 0 .45rem!important}
#courses>section.course .c-hook{display:block!important;font-size:15px!important;line-height:1.5;margin:0 0 .6rem!important;color:var(--fg-2,#cfcfca)}
#courses>section.course .c-meta{display:flex!important;flex-wrap:wrap;gap:.2rem .8rem;font-size:12.5px!important;margin:0 0 .3rem!important}
#courses>section.course .c-span{display:block!important;font-size:11.5px!important;margin:0 0 .6rem!important}
#courses>section.course .c-go{margin-top:.3rem!important;font-size:14px}
.courses5 .sec-h{margin-bottom:var(--s4,2.5rem)}
@media (max-width:1099px){#courses{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.2rem 1.8rem}}
@media (max-width:699px){
 #courses{grid-template-columns:1fr;gap:1.15rem}
 #courses>section.course,#courses>section.course:nth-child(even){padding:.85rem 0 0!important}
 #courses>section.course .c-art,#courses>section.course:nth-child(even) .c-art{aspect-ratio:16/8!important;margin:0 0 .6rem!important}
 #courses>section.course .c-art .tex,#courses>section.course .c-art .sig{inset:4px}
 #courses>section.course .c-art .sig{width:calc(100% - 8px)!important;height:calc(100% - 8px)!important}
 #courses>section.course .c-art .coord,#courses>section.course .c-sub,#courses>section.course .c-span{display:none!important}
 #courses>section.course .c-num,#courses>section.course:nth-child(even) .c-num{font-size:2.6rem!important;top:.15rem;right:.2rem}
 #courses>section.course .c-title{font-size:21px!important;margin:0 0 .1rem!important}
 #courses>section.course .c-subtitle{font-size:14.5px!important;margin:0 0 .25rem!important}
 #courses>section.course .c-hook{font-size:14px!important;line-height:1.42;margin:0 0 .3rem!important;display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
 #courses>section.course .c-meta{font-size:12px!important;gap:.1rem .6rem;margin:0 0 .1rem!important}
 #courses>section.course .c-go{margin-top:.1rem!important;min-height:44px;display:inline-flex;align-items:center}
 .courses5 .sec-h{margin-bottom:var(--s3,1.5rem)}
}
/* Index rows: the 9.2 accordion, unchanged rules, re-scoped from #courses to #cxidx */
.index5 .sec-h{margin-bottom:var(--s3,1.5rem)}
#cxidx{padding-left:0!important;padding-right:0!important;padding-top:0!important}
#cxidx{max-width:1280px;margin:0 auto;padding:var(--s4) var(--gutter) var(--s4)}
#cxidx section.course.cx,#cxidx section.course.cx:nth-child(even){display:block!important;min-height:0!important;max-width:none;margin:0;padding:0!important;border-top:1px solid color-mix(in srgb,var(--rule) 60%,transparent);grid-template-columns:none!important}
#cxidx section.course.cx::before{content:"";position:absolute;left:0;top:-1px;height:1px;width:2.2rem;background:var(--c)}
#cxidx .cx-body .c-art,#cxidx section.course:nth-child(even) .cx-body .c-art{order:0;width:100%!important;height:auto!important;aspect-ratio:16/9!important;max-height:none!important;margin:0 0 .8rem!important;grid-row:auto!important}
#cxidx .cx-body .c-art .coord{display:none}
#cxidx .cx-body .c-txt{padding:0 0 1rem!important;margin:0!important}
#cxidx .cx-body .c-sub,#cxidx .cx-body .c-title,#cxidx .cx-body .c-subtitle{display:none!important}
#cxidx .cx-body .c-hook{display:block!important;font-size:.98rem;line-height:1.5;margin:0 0 .5rem}
#cxidx .cx-body .c-meta{margin:0 0 .4rem!important}
@media (max-width:640px){.cx-ers a{min-height:44px;align-items:center}#cxidx{padding-top:var(--s3)}}
#cxidx .cx-body .c-meta,#cxidx .cx-body .c-span{display:none!important}
/* v9.2.2 home "random facts" badge (replaces the bottle cap on the home page only) */
@media (max-width:640px),(pointer:coarse){.v4-cap{display:none!important}}
.rf-b{all:unset;box-sizing:border-box;cursor:pointer;position:fixed;right:calc(1.2rem + env(safe-area-inset-right,0px));bottom:calc(1.2rem + env(safe-area-inset-bottom,0px));z-index:80;display:flex;align-items:center;justify-content:center;gap:.6rem;width:clamp(150px,15vw,230px);min-height:52px;padding:.7rem 1rem;background:rgba(12,13,14,.94);border:1px solid color-mix(in srgb,var(--tq,#5fd9cc) 55%,var(--rule-2,#2a2c2e));box-shadow:0 14px 30px -14px #000,0 0 0 1px rgba(0,0,0,.4);color:#f2efe8;font-size:13px;letter-spacing:.08em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .2s,transform .2s}
.rf-b:hover,.rf-b[aria-expanded=true]{border-color:var(--tq,#5fd9cc);transform:translateY(-1px)}
.rf-b:focus-visible{outline:1px solid var(--tq,#5fd9cc);outline-offset:4px}
.rf-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--tq,#5fd9cc);box-shadow:0 0 0 2px #0d0e0f,0 0 0 3px var(--tq,#5fd9cc)}
.rf-p{position:fixed;right:calc(1.2rem + env(safe-area-inset-right,0px));bottom:calc(1.2rem + 52px + .7rem + env(safe-area-inset-bottom,0px));z-index:81;width:min(26rem,calc(100vw - 2.4rem));box-sizing:border-box;background:rgba(12,13,14,.985);border:1px solid var(--rule-2,#2a2c2e);box-shadow:0 22px 44px -18px #000;opacity:0;transform:translateY(4px);transition:opacity .17s,transform .17s}
.rf-p.on{opacity:1;transform:none}.rf-p[hidden]{display:none}
.rf-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--rule,#1c1e20);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3,#8b8a86)}
.rf-top>span{padding:.6rem .9rem}
.rf-x,.rf-n{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;min-height:40px;padding:0 .9rem;color:var(--fg-3,#8b8a86);font-size:12px}
.rf-x{border-left:1px solid var(--rule,#1c1e20);text-transform:none;letter-spacing:0}
.rf-x:hover,.rf-n:hover{color:var(--fg,#e7e6e2)}.rf-x:focus-visible,.rf-n:focus-visible{outline:1px solid var(--tq,#5fd9cc);outline-offset:-2px}
.rf-t{margin:0;padding:.9rem .9rem .5rem;font-size:16px;line-height:1.5;color:#f2efe8}
.rf-ft{display:flex;justify-content:space-between;align-items:center;padding:0 0 .2rem .9rem;font-size:12px}
.rf-src{color:var(--tq,#5fd9cc)}.rf-n{color:var(--tq,#5fd9cc)}
@media (max-width:640px){
 .rf-b{width:auto;min-height:44px;padding:.5rem .8rem;right:calc(.7rem + env(safe-area-inset-right,0px));bottom:calc(.7rem + env(safe-area-inset-bottom,0px));font-size:11.5px;gap:.45rem}
 .rf-p{right:.6rem;left:.6rem;width:auto;bottom:calc(.7rem + 44px + .5rem + env(safe-area-inset-bottom,0px))}
 .rf-t{font-size:15px}.rf-x,.rf-n{min-height:44px}
}
.rf-p.rf-nob{bottom:calc(.7rem + env(safe-area-inset-bottom,0px))}
@media (prefers-reduced-motion:reduce){.rf-b,.rf-p{transition:none}}
/* v9.2.10 library box: a separate twin of the Methods block (.mx5 untouched), sits directly under it */
.lb5{max-width:1280px;margin:0 auto;padding:0 var(--gutter) var(--s4,2.5rem);scroll-margin-top:72px}
.lb5-in{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"k t ar" ". s ar";align-items:baseline;gap:.4rem 1.6rem;padding:1.5rem 0 1.4rem;border-top:1px solid var(--rule-2,#2a2d30);border-bottom:1px solid color-mix(in srgb,var(--rule,#1c1e20) 70%,transparent);color:#f2efe8;text-decoration:none;position:relative}
.lb5-in::before{content:"";position:absolute;left:0;top:-1px;width:2.2rem;height:1px;background:var(--tq,#5fd9cc)}
.lb5-k{grid-area:k;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-4,#7c8084)}
.lb5-t{grid-area:t;font-family:var(--sans);font-weight:300;font-size:clamp(1.45rem,2.6vw,2.15rem);line-height:1.15;letter-spacing:-.025em;color:#f2efe8}
.lb5-go{font-style:italic;font-weight:300;color:var(--tq,#5fd9cc);background:linear-gradient(currentColor,currentColor) 0 100%/0 1px no-repeat;transition:background-size .4s var(--ease,ease)}
.lb5-s{grid-area:s;font-size:13px;letter-spacing:.04em;color:var(--fg-3,#8b8a86)}
.lb5-n{color:var(--fg-2,#c9c7c1);font-variant-numeric:tabular-nums}
.lb5-ar{grid-area:ar;align-self:center;font-family:var(--sans);font-weight:200;font-size:clamp(1.4rem,2.4vw,2rem);color:var(--tq,#5fd9cc);transition:transform .3s var(--ease,ease)}
.lb5-in:hover .lb5-go,.lb5-in:focus-visible .lb5-go{background-size:100% 1px}
.lb5-in:hover .lb5-ar{transform:translateX(4px)}
.lb5-in:focus-visible{outline:1px solid var(--tq,#5fd9cc);outline-offset:6px}
@media (max-width:640px){.lb5{padding:0 var(--gutter) var(--s3,1.5rem)}.lb5-in{grid-template-columns:1fr auto;grid-template-areas:"k k" "t ar" "s ar";padding:1.1rem 0 1rem;min-height:44px}.lb5-t{font-size:1.3rem}}
