.article-toc{position:relative;box-shadow:0 14px 32px rgba(23,21,18,.06)}
.article-toc-title{display:flex!important;align-items:center;gap:10px}.article-toc-title::after{content:"";height:1px;flex:1;background:var(--line)}
.article-toc li::marker{color:var(--red);font-weight:800}.article-toc a{transition:color .2s ease,transform .2s ease}.article-toc a:hover{transform:translateX(3px)}
.article-download{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin:56px 0 10px;padding:22px 24px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.5);box-shadow:0 12px 30px rgba(23,21,18,.05)}
.article-download-copy{display:grid;gap:7px}.article-download-copy .eyebrow{margin:0;font-size:10px}.article-download-copy strong{font-size:22px;letter-spacing:-.04em}.article-download-copy p:not(.eyebrow){margin:0;color:var(--muted);font-size:14px;line-height:1.5}.article-download .app-store-badge{display:inline-flex;width:max-content;line-height:0;margin-top:4px}.article-download .app-store-badge img{display:block;width:150px;height:auto;border-radius:0!important}.article-download-qr{width:96px!important;height:96px!important;max-height:none!important;object-fit:contain!important;border-radius:0!important;background:#fff}
.related-links a{overflow:hidden;padding:0;grid-template-rows:auto 1fr}.related-links .related-copy{display:grid;align-content:start;gap:6px;padding:15px 18px 17px}
.article-pagination a{position:relative;min-height:90px;align-content:center;padding:20px 22px}.article-pagination a:first-child{padding-left:42px}.article-pagination a:last-child{padding-right:42px}.article-pagination a:first-child::before,.article-pagination a:last-child::after{position:absolute;top:50%;transform:translateY(-50%);font-size:26px;line-height:1;color:var(--red);transition:transform .2s ease}.article-pagination a:first-child::before{content:"←";left:17px}.article-pagination a:last-child::after{content:"→";right:17px}.article-pagination a:first-child:hover::before{transform:translate(-3px,-50%)}.article-pagination a:last-child:hover::after{transform:translate(3px,-50%)}
@media(min-width:901px) and (max-width:1419px){.article-toc{position:relative;top:auto}}
@media(min-width:1420px){.article{position:relative}.article-toc{position:sticky;top:120px;float:right;width:245px;margin:0 -270px 28px 24px;z-index:5}.article-toc ol{grid-template-columns:1fr;gap:9px 0;padding-left:18px}.article-toc li{font-size:13px}.article-toc a{line-height:1.35}}
@media(max-width:600px){.article-download{grid-template-columns:1fr auto;gap:14px;padding:18px}.article-download-copy strong{font-size:19px}.article-download .app-store-badge img{width:138px}.article-download-qr{width:82px!important;height:82px!important}}
.article-ux-toolbar{display:flex;align-items:center;gap:8px;margin:0 0 24px;padding:6px;width:max-content;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.42)}.article-ux-button{border:0!important;padding:9px 13px!important;background:transparent!important;font-size:12px!important;font-weight:700!important}.article-ux-button:hover{background:var(--paper)!important;color:var(--red)!important}.article-action-status{margin-left:4px}.article-ux-toolbar:has(.article-action-status:empty){padding-right:6px}
.article-share-footer{margin:64px 0 0;padding:28px 0 4px;border-top:1px solid var(--line)}.article-share-footer .eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 13px}.article-share-footer .eyebrow::after{content:"";height:1px;flex:1;background:var(--line)}.article-share-menu{display:flex;flex-wrap:wrap;gap:6px;width:100%;max-width:680px;padding:10px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.42);box-shadow:0 12px 28px rgba(23,21,18,.08)}.article-ux-toolbar{position:relative;z-index:4}.article-share-link{display:inline-flex;align-items:center;min-height:30px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--ink)!important;font-size:11px!important;font-weight:750!important;text-decoration:none!important;background:rgba(255,255,255,.7)}.article-share-link:hover{border-color:var(--red);color:var(--red)!important;background:#fff}.article-ux-button[aria-expanded=true]{background:var(--paper)!important;color:var(--red)!important}
@media(max-width:600px){.article-share-footer{margin-top:48px;padding-top:22px}.article-share-menu{max-width:none}.article-action-status{flex-basis:100%;margin:2px 4px 0}}
.related-links{display:flex!important;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;gap:14px;padding:2px 2px 16px;scrollbar-color:var(--red) transparent;scrollbar-width:thin}.related-links a{flex:0 0 min(330px,calc(50% - 7px));scroll-snap-align:start}.related-links a:focus-visible{outline:3px solid var(--red);outline-offset:3px}@media(max-width:600px){.related-links a{flex-basis:calc(88vw - 16px)}}
.article-ux-toolbar{width:auto;max-width:100%;box-shadow:0 8px 22px rgba(23,21,18,.05)}.article-save-button[aria-pressed=true]{background:var(--ink)!important;color:#fff!important}.article-reading-settings{position:relative}.article-reading-settings summary{list-style:none;cursor:pointer;border:1px solid var(--ink);border-radius:999px;padding:9px 12px;color:var(--ink);font-size:12px;font-weight:700}.article-reading-settings summary::-webkit-details-marker{display:none}.article-reading-settings[open] summary{border-color:var(--red);color:var(--red)}.article-reading-settings-panel{position:absolute;top:calc(100% + 10px);left:0;z-index:12;display:flex;align-items:center;gap:7px;padding:9px 10px;border:1px solid var(--line);border-radius:14px;background:var(--paper);box-shadow:0 16px 36px rgba(23,21,18,.14);white-space:nowrap}.article-reading-settings-panel span{margin-right:3px;color:var(--muted);font-size:11px}.article-reading-settings-panel button{min-width:29px;height:29px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink);font:700 12px/1 inherit;cursor:pointer}.article-reading-settings-panel button[aria-pressed=true]{border-color:var(--red);background:var(--red);color:#fff}.article-reading-settings-panel button:focus-visible,.article-reading-settings summary:focus-visible{outline:3px solid var(--ink);outline-offset:3px}.article[data-reading-size=compact] p,.article[data-reading-size=compact] li{font-size:16px}.article[data-reading-size=large] p,.article[data-reading-size=large] li{font-size:19px}.article[data-reading-size=large] .dek{font-size:23px}.article-back-to-top{position:fixed;right:24px;bottom:24px;z-index:45;width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;background:var(--ink);color:#fff;font:700 20px/1 inherit;cursor:pointer;box-shadow:0 10px 24px rgba(23,21,18,.18)}.article-back-to-top:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}.article-back-to-top:focus-visible{outline:3px solid var(--red);outline-offset:4px}.article-back-to-top[hidden]{display:none}@media(max-width:600px){.article-ux-toolbar{width:100%;border-radius:16px}.article-reading-settings-panel{left:auto;right:0}.article-back-to-top{right:16px;bottom:76px;width:40px;height:40px}}@media(prefers-reduced-motion:reduce){.article-back-to-top:hover{transform:none}}

/* Media stages preserve the complete portrait captures while still filling each landscape slot. */
.journal-thumb,.article-screen-stage{position:relative;isolation:isolate;display:grid;place-items:center;overflow:hidden;background:#e7dfd3}
.journal-thumb::before,.article-screen-stage::before{content:"";position:absolute;z-index:-2;inset:-24px;background-image:linear-gradient(rgba(244,234,220,.22),rgba(22,60,89,.18)),var(--media-image);background-position:center;background-size:cover;filter:blur(16px) saturate(.8);transform:scale(1.1);opacity:.48}
.journal-thumb::after,.article-screen-stage::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(135deg,rgba(255,250,242,.82),rgba(255,250,242,.34) 48%,rgba(22,60,89,.18))}
.card .card-thumb{width:100%;height:220px;margin:0 0 20px;padding:0;border-radius:14px;color:inherit;font-size:inherit}
.card .card-thumb>img{position:relative;z-index:1;display:block;width:auto;max-width:100%;height:100%;margin:0;padding:10px;object-fit:contain;object-position:center;border-radius:18px;filter:drop-shadow(0 12px 16px rgba(23,21,18,.18))}
.related-thumb{width:100%;height:176px}
.related-thumb>img{position:relative;z-index:1;display:block;width:auto;max-width:100%;height:100%;padding:9px;object-fit:contain;object-position:center;filter:drop-shadow(0 10px 13px rgba(23,21,18,.2))}
.related-links a:hover .journal-thumb::after{background:linear-gradient(135deg,rgba(255,250,242,.7),rgba(255,250,242,.25) 48%,rgba(239,67,47,.18))}
.article h1{font-size:clamp(52px,6.4vw,82px);line-height:.96;text-wrap:balance}
.article-lead-media{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:34px 0 46px}
.article-lead-media figure{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;margin:0}
.article-screen-stage,.article-lead-media .article-video video{width:100%;height:min(640px,72vh);max-height:640px;border-radius:22px}
.article .article-screen-stage>img{position:relative;z-index:1;display:block;width:100%;height:100%;max-height:none;padding:14px;object-fit:contain;object-position:center;border-radius:24px;filter:drop-shadow(0 18px 24px rgba(23,21,18,.2))}
.article-lead-media .article-video video{object-fit:contain;background:linear-gradient(145deg,#171512,#163c59)}
.article-lead-media figcaption{min-height:3.6em;margin:10px 4px 0}
@media(max-width:680px){.article h1{font-size:clamp(42px,13vw,58px);line-height:.98}.article-lead-media{grid-template-columns:1fr;gap:28px;margin:28px 0 38px}.article-screen-stage,.article-lead-media .article-video video{height:min(610px,72vh)}.article-lead-media figcaption{min-height:0}.card .card-thumb{height:250px}.related-thumb{height:210px}}
@media(max-width:375px){.article-screen-stage,.article-lead-media .article-video video{height:min(520px,68vh)}.card .card-thumb{height:230px}.related-thumb{height:190px}.article-download{grid-template-columns:1fr}.article-download-qr{display:none}.article-ux-toolbar{gap:4px;padding:5px}.article-ux-button{padding-inline:10px!important}.article-reading-settings summary{padding-inline:10px}}
