.migration-main { max-width:1180px; margin:auto; padding:clamp(28px,5vw,72px) clamp(20px,4vw,48px); }
.migration-hero { max-width:900px; padding:20px 0 48px; border-bottom:2px solid var(--navy); }
.migration-hero h1 { margin:16px 0 24px; font:600 clamp(42px,7vw,84px)/1.04 "Oswald",sans-serif; text-wrap:balance; }
.migration-lead { max-width:780px; font-size:clamp(17px,2vw,22px); line-height:1.65; }
.migration-section { padding:40px 0; display:grid; grid-template-columns:minmax(0,260px) minmax(0,1fr); gap:32px; border-bottom:1px solid #d9d4ca; }
.migration-section h2 { margin:0; font:600 26px/1.2 "Oswald",sans-serif; }
.migration-section p,.migration-section li,.archive-copy p,.archive-copy li { font:400 16px/1.85 "DM Mono",monospace; overflow-wrap:anywhere; }
.migration-section p:first-child { margin-top:0; }
.migration-note { padding:22px; margin:24px 0; background:#f7efe3; border-inline-start:4px solid var(--gold); font-size:14px; line-height:1.8; }
.migration-contact { font-size:clamp(16px,2.2vw,22px); }
.migration-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr)); gap:16px; }
.migration-cards a { padding:24px; background:#f7efe3; text-decoration:none; }
.migration-cards h3 { font:600 23px/1.3 "Oswald",sans-serif; margin:0 0 16px; }
.migration-cards a:hover { outline:2px solid var(--gold); }
.migration-cards span { font-size:24px; }
.migration-page a:focus-visible { outline:3px solid var(--gold); outline-offset:5px; }
.archive-list a { display:grid; grid-template-columns:110px minmax(0,1fr) 20px; gap:18px; padding:18px 0; border-bottom:1px solid #d9d4ca; text-decoration:none; align-items:start; }
.archive-list time { font-size:12px; padding-top:4px; }
.archive-list strong { font:600 22px/1.35 "Oswald",sans-serif; }
.archive-copy { max-width:800px; margin:40px auto; }
.archive-copy img { display:block; max-width:100%; height:auto; }
.archive-copy figure { margin:30px 0; }
.archive-copy h2 { font:600 28px/1.3 "Oswald",sans-serif; }
.archive-source { border-top:1px solid #d9d4ca; padding-top:24px; }
@media(max-width:720px) { .migration-section { grid-template-columns:1fr; gap:20px; padding:30px 0; } .archive-list a { grid-template-columns:minmax(0,1fr) 20px; gap:8px; } .archive-list time { grid-column:1/-1; } .migration-hero { padding-bottom:28px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

.archive-topics { display:flex; flex-wrap:wrap; gap:8px 18px; padding:24px 0; }
.archive-topics a { padding:8px 0; font-size:13px; min-height:44px; }
