.af-popbtn,.c-arrow,.c-dot,.toc-collapse,.toc-item,[role=button],a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}:where(a,button,[role=button],textarea,input,select,.c-dot,.c-arrow,.toc-item,.toc-collapse,.af-popbtn):focus-visible{outline:none;box-shadow:var(--focus-ring)}.af-modal__close,.af-popbtn,.c-arrow,.c-dot,.toc-collapse{touch-action:manipulation}.af-popbtn{border-radius:999px}.af-popbtn[aria-expanded=true]{box-shadow:var(--focus-ring);opacity:0;visibility:hidden;pointer-events:none}.toc-item.is-active{color:#0f172a;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.22em}.af-btn:focus-visible,.af-modal__close:focus-visible,.af-quiz__btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}html{scroll-padding-top:96px}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.article-main{color:#243041}.image-caption{font-family:var(--font-ui);font-size:clamp(.68rem,.64rem + .18vw,.78rem);line-height:1.4;letter-spacing:-.01em;color:#64748b;overflow-wrap:anywhere;word-break:break-word;text-wrap:pretty}.block-text{width:100%;max-width:var(--content-w);margin:clamp(1.4rem,2vw,2rem) auto;font-size:clamp(1.05rem,1rem + .35vw,1.18rem);line-height:1.82;color:#243041}.block-text>*+*{margin-top:1rem}.block-text h1,.block-text h2,.block-text h3,.block-text h4,.block-text h5,.block-text h6{margin-top:1.8em;margin-bottom:.7em;color:color-mix(in srgb,var(--accent) 72%,#111827 28%);font-family:var(--font-ui);line-height:1.15;letter-spacing:-.02em}.block-text h2{font-size:clamp(1.7rem,1.2rem + 1vw,2.35rem);font-weight:800}.block-text h3{font-size:clamp(1.35rem,1.1rem + .6vw,1.7rem);font-weight:800}.block-text h1{font-size:clamp(2rem,1.45rem + 1.45vw,3rem);font-weight:900}.block-text h4{font-size:clamp(1.14rem,1.03rem + .35vw,1.32rem);font-weight:800}.block-text h5{font-size:clamp(1.03rem,.98rem + .2vw,1.14rem);font-weight:700}.block-text h6{font-size:.96rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.block-text b,.block-text strong{font-weight:800;color:#162033}.block-text em,.block-text i{font-style:italic}.block-text u{text-decoration-thickness:2px;text-underline-offset:.14em}.block-text del,.block-text s{text-decoration-thickness:1.6px;opacity:.85}.block-text.indent>p:first-of-type{text-indent:var(--text-indent,2rem)}.block-text ol,.block-text ul{padding-left:1.5rem}.block-text blockquote{padding:1.1rem 1.25rem;border-left:4px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:linear-gradient(180deg,rgba(255,255,255,.72),var(--accent-8));color:#334155}.block-text code,.block-text pre{font-family:JetBrains Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.block-text code{padding:.18rem .38rem;border-radius:.45rem;background:rgba(15,23,42,.06);font-size:.92em}.block-text pre{padding:1rem 1.1rem;overflow:auto;border-radius:var(--radius-md);background:#132033;color:#e5eef9;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.block-image{margin:clamp(1.6rem,2vw,2.2rem) 0}.block-image img{border-radius:18px;box-shadow:var(--shadow-soft)}.video-block{width:100%;margin:clamp(1.8rem,2.4vw,2.6rem) 0;padding:clamp(1rem,2vw,1.4rem);border:1px solid var(--surface-border);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.82),var(--accent-8)),var(--surface-1);box-shadow:var(--shadow-soft)}.video-block__header>*+*{margin-top:.7rem}.video-title{margin:0;color:color-mix(in srgb,var(--accent) 72%,#111827 28%);font-family:var(--font-ui);font-size:clamp(1.35rem,1.1rem + .75vw,1.75rem);line-height:1.12;letter-spacing:-.02em}.video-desc{margin:0;max-width:66ch;color:#475569;line-height:1.7}.video-stage{margin-top:1rem}.video-frame,.video-skeleton{width:100%;aspect-ratio:16/9;border-radius:20px;overflow:hidden;background:radial-gradient(circle at top,rgba(255,255,255,.16),transparent 45%),#0f172a;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.video-frame iframe{display:block;width:100%;height:100%;border:0}.video-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.8rem;margin-top:1rem}.video-selector__item{display:grid;gap:.22rem;width:100%;padding:.8rem .9rem;border:1px solid var(--surface-border);border-radius:16px;background:rgba(255,255,255,.78);color:#0f172a;text-align:left;box-shadow:0 10px 22px rgba(15,23,42,.08);transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}.video-selector__item:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 38%,#dbe2ea 62%)}.video-selector__item.is-active,.video-selector__item[aria-selected=true]{border-color:color-mix(in srgb,var(--accent) 46%,#cbd5e1 54%);background:color-mix(in srgb,var(--accent) 12%,rgba(255,255,255,.96));box-shadow:0 14px 28px rgba(15,23,42,.12)}.video-selector__eyebrow{color:#64748b;font-family:var(--font-ui);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.video-selector__label{font-family:var(--font-ui);font-size:.98rem;font-weight:700;line-height:1.3}.video-skeleton{position:relative}.video-skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,rgba(255,255,255,0),rgba(255,255,255,.18) 18%,rgba(255,255,255,.46) 52%,rgba(255,255,255,0));animation:video-shimmer 2s infinite}.video-block__error{margin:1rem 0 0;padding:.9rem 1rem;border:1px solid rgba(220,38,38,.18);border-radius:16px;background:rgba(254,242,242,.9);color:#991b1b;font-family:var(--font-ui);font-size:.95rem}@keyframes video-shimmer{to{transform:translateX(100%)}}.notes-card,.toc-card{border:1px solid var(--surface-border);background:var(--surface-1);box-shadow:var(--shadow-soft)}.toc-card{border-radius:22px 22px 0 0;padding:18px 18px 16px}.notes-card{border-radius:0 0 22px 22px;padding:18px;border-top:0}.notes-title,.toc-head{font-family:var(--font-ui);color:#111827;letter-spacing:-.01em}.toc-head{gap:12px}.toc-item{color:color-mix(in srgb,var(--accent) 72%,#0f172a 28%)}.toc-item:hover{color:color-mix(in srgb,var(--accent) 55%,#0f172a 45%)}#user-notes{font-family:var(--font-ui);line-height:1.55}@media (max-width:640px){.block-text{font-size:1.02rem}.video-block{padding:.9rem;border-radius:20px}.video-frame,.video-skeleton{border-radius:18px}.video-selector{grid-template-columns:1fr}}.block-hero{position:relative;overflow:visible;margin:0 0 clamp(.25rem,1vw,.75rem);background:#dbe4f3;min-height:0}.block-hero.hero-has-card-offset{margin-bottom:clamp(6rem,8vw,8rem)}.block-hero.breakout{position:relative;left:50%;width:100vw;max-width:100vw;margin-left:-50vw}.block-hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(15,23,42,.08),rgba(15,23,42,.28)),linear-gradient(90deg,rgba(15,23,42,.08),transparent 40%)}.block-hero.height-standard{height:clamp(380px,72vh,760px)}.block-hero.height-full,.block-hero.height-tall{height:clamp(520px,100vh,1040px)}.block-hero .hero-fallback,.block-hero .hero-media{position:absolute;inset:0;width:100%;height:100%}.block-hero .hero-media{display:block;-o-object-fit:cover;object-fit:cover;-o-object-position:center center;object-position:center center}.hero-fallback{display:grid;place-items:center;background:radial-gradient(circle at top left,rgba(255,255,255,.34),transparent 34%),linear-gradient(180deg,#d9dfeb,#bec8db);color:#475569;font-family:var(--font-ui)}.block-hero .hero-caption{position:absolute;left:clamp(18px,4vw,36px);bottom:clamp(18px,4vw,36px);z-index:4;max-width:min(420px,calc(100vw - 36px));margin:0;padding:.55rem .75rem;border-radius:14px;background:rgba(255,255,255,.82);color:#64748b;box-shadow:0 10px 24px rgba(15,23,42,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.block-hero.caption-hover .hero-caption{opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.block-hero.caption-hover:focus-within .hero-caption,.block-hero.caption-hover:hover .hero-caption{opacity:1;transform:none}.hero-overlay{--hero-overlay-pad:clamp(20px,4vw,56px);position:absolute;inset:0;z-index:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));padding:var(--hero-overlay-pad);pointer-events:none}.hero-overlay .hero-title{grid-column:1/-1;min-width:0;max-width:min(92vw,1080px);color:var(--hero-text-color,#ffffff)}.hero-title .hero-subtitle,.hero-title h1{color:inherit;text-shadow:none}.hero-title h1{margin:0;font-family:var(--font-ui);font-size:clamp(2.4rem,5vw,4.6rem);font-weight:800;line-height:.95;letter-spacing:-.045em;white-space:pre-line;overflow-wrap:anywhere;-webkit-text-stroke:var(--hero-title-outline-width,0) var(--hero-title-outline-color,#000000);text-shadow:var(--hero-title-outline-width,0) 0 0 var(--hero-title-outline-color,#000000),calc(0px - var(--hero-title-outline-width, 0px)) 0 0 var(--hero-title-outline-color,#000000),0 var(--hero-title-outline-width,0) 0 var(--hero-title-outline-color,#000000),0 calc(0px - var(--hero-title-outline-width, 0px)) 0 var(--hero-title-outline-color,#000000)}.hero-title .hero-subtitle{display:inline-block;margin-top:1rem;padding:.45rem .75rem;border-radius:999px;background:rgba(255,255,255,.14);font-family:var(--font-ui);font-size:.8rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.hero-style--plain .hero-title{padding:0}.hero-style--card .hero-title{padding:clamp(18px,3vw,28px) clamp(18px,3vw,30px);border-radius:26px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 82%,black 18%),color-mix(in srgb,var(--accent) 58%,black 42%));box-shadow:var(--shadow-strong)}.hero-style--card .hero-title h1{padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.42)}.hero-pos--custom .hero-title{position:absolute;top:var(--hero-custom-top,50%);left:var(--hero-custom-left,50%);text-align:var(--hero-custom-text-align,left);width:-moz-max-content;width:max-content;max-width:calc(100% - (var(--hero-overlay-pad) * 2))}.hero-pos--top-left .hero-title{grid-row:1;justify-self:start;align-self:start;text-align:left}.hero-pos--top-center .hero-title{grid-row:1;justify-self:center;align-self:start;text-align:center}.hero-pos--top-right .hero-title{grid-row:1;justify-self:end;align-self:start;text-align:right}.hero-pos--center-left .hero-title{grid-row:2;justify-self:start;align-self:center;text-align:left}.hero-pos--center .hero-title{grid-row:2;justify-self:center;align-self:center;text-align:center}.hero-pos--center-right .hero-title{grid-row:2;justify-self:end;align-self:center;text-align:right}.hero-pos--bottom-left .hero-title{grid-row:3;justify-self:start;align-self:end;text-align:left}.hero-pos--bottom-center .hero-title{grid-row:3;justify-self:center;align-self:end;text-align:center}.hero-pos--bottom-right .hero-title{grid-row:3;justify-self:end;align-self:end;text-align:right}.hero-style--card.hero-pos--bottom-right .hero-title{margin-right:calc(var(--hero-overlay-pad) * -1);margin-bottom:-85px}@media (max-width:768px){.block-hero.height-full,.block-hero.height-standard,.block-hero.height-tall{height:clamp(320px,54dvh,520px)}.hero-overlay{--hero-overlay-pad:18px;display:flex;align-items:end;justify-content:center;padding:var(--hero-overlay-pad);text-align:center}.hero-overlay .hero-title{width:100%;max-width:100%}.hero-overlay.hero-pos--custom{display:block;text-align:initial}.hero-overlay.hero-pos--custom .hero-title{width:auto;max-width:min(92vw,calc(100% - (var(--hero-overlay-pad) * 2)))}.hero-title h1{font-size:clamp(2rem,9vw,3rem);line-height:1.02}.hero-title .hero-subtitle{font-size:.72rem;letter-spacing:.12em}.block-hero .hero-caption{left:14px;right:14px;bottom:14px;max-width:none}}@media (max-width:480px){.block-hero.height-full,.block-hero.height-standard,.block-hero.height-tall{height:clamp(260px,48dvh,420px)}.hero-overlay{--hero-overlay-pad:12px}.hero-title h1{font-size:clamp(1.5rem,8vw,2.25rem);line-height:1.05}.hero-title .hero-subtitle{font-size:.66rem;letter-spacing:.1em}.block-hero .hero-caption{left:10px;right:10px;bottom:10px;padding:.45rem .6rem}}@media (hover:none),(pointer:coarse){.block-hero.caption-hover .hero-caption{opacity:1;transform:none;pointer-events:auto}}