.article-visual{width:min(1100px,100% - 36px);margin:0 auto 64px}.article-visual-trigger{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);cursor:zoom-in;border-radius:10px;padding:0;display:block;position:relative;overflow:hidden}.article-visual-image{aspect-ratio:1400/790;object-fit:cover;width:100%;height:auto;transition:transform .25s}.article-visual-trigger:hover .article-visual-image{transform:scale(1.015)}.article-visual-zoom{font:500 .75rem var(--font-body);background:#080808e8;border:1px solid #ffffff50;border-radius:4px;align-items:center;gap:8px;padding:10px 14px;display:inline-flex;position:absolute;bottom:18px;right:18px}.article-visual figcaption{color:var(--muted-2);flex-wrap:wrap;justify-content:space-between;gap:12px 28px;padding:15px 2px 0;font-size:.75rem;line-height:1.6;display:flex}.article-visual figcaption>span:first-child{max-width:740px}.article-photo-credit a{text-underline-offset:3px;text-decoration:underline}.article-photo-credit a:hover{color:var(--primary)}.article-lightbox{background:var(--bg);width:96vw;max-width:min(1500px,96vw);max-height:94dvh;color:var(--ink);border:1px solid #ffffff40;border-radius:8px;padding:0}.article-lightbox::backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000e}.article-lightbox-content{padding:16px}.article-lightbox-toolbar{justify-content:space-between;align-items:center;gap:20px;padding-bottom:14px;display:flex}.article-lightbox-toolbar h2{font:500 .9rem var(--font-body);margin:0}.article-lightbox-toolbar button{background:var(--surface);min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;border:1px solid #ffffff50;border-radius:4px;place-items:center;display:grid}.article-lightbox-image{object-fit:contain;width:100%;height:auto;max-height:72dvh}.article-lightbox-content>p{color:var(--muted-2);margin-top:14px;font-size:.8rem}.article-process{border-block:1px solid var(--line);margin:0 0 44px;padding:40px 0}.article-process h2{margin:0 0 16px;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2}.article-process-intro{color:var(--muted-2);margin-bottom:26px;font-size:.9rem}.article-process-steps{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:10px;display:grid}.article-process-steps button{background:var(--surface);min-height:125px;color:var(--ink);text-align:left;font:500 .8rem var(--font-body);cursor:pointer;border:1px solid #45453f;border-radius:4px;flex-direction:column;align-items:start;gap:15px;padding:18px 14px;line-height:1.45;display:flex;position:relative}.article-process-steps button[aria-pressed=true]{border-color:var(--primary);background:#1aff7a0a}.article-process-steps button:hover{border-color:var(--primary)}.article-process-steps button>svg{margin-top:auto}.article-step-number{color:var(--primary);font:400 .75rem var(--font-mono)}.article-step-detail{border-left:2px solid var(--primary);background:var(--surface);margin-top:14px;padding:26px}.article-step-kicker{color:var(--primary);font:.65rem var(--font-mono);letter-spacing:.12em}.article-step-detail h3{margin:16px 0 12px;font-size:1.25rem}.article-step-detail p{color:var(--muted-2);font-size:.95rem;line-height:1.8}.article-faqs{border-top:1px solid var(--line);margin-top:54px;padding-top:36px;scroll-margin-top:110px}.article-faqs h2{margin-bottom:26px;font-size:clamp(1.7rem,3vw,2.4rem)}.article-faqs details{border-bottom:1px solid var(--line)}.article-faqs summary{cursor:pointer;justify-content:space-between;align-items:baseline;gap:24px;padding:22px 0;list-style:none;display:flex}.article-faqs summary::-webkit-details-marker{display:none}.article-faqs summary:after{content:"+";color:var(--primary);flex-shrink:0;font-size:1.3rem}.article-faqs details[open] summary:after{content:"−"}.article-faqs summary h3{margin:0;font-size:1.05rem;font-weight:500;line-height:1.5}.article-faqs details>p{color:var(--muted-2);margin:0;padding:0 28px 24px 0;line-height:1.9}.article-visual-trigger:focus-visible,.article-lightbox button:focus-visible,.article-process button:focus-visible,.article-faqs summary:focus-visible{outline:2px solid var(--primary);outline-offset:4px}.article-content-column{min-width:0}@media (max-width:600px){.article-visual{margin-bottom:40px}.article-visual-zoom{padding:8px;font-size:.65rem;bottom:10px;right:10px}.article-process-steps{grid-template-columns:1fr}.article-process-steps button{flex-direction:row;align-items:center;gap:14px;min-height:0}.article-process-steps button>svg{flex-shrink:0;margin:0 0 0 auto}.article-step-detail{padding:22px}}@media (prefers-reduced-motion:reduce){.article-visual-image{transition:none}}
