:root{color-scheme:light dark}:root[data-theme=paper]{color-scheme:light}:root[data-theme=slate]{color-scheme:dark}:root{--bg:light-dark(oklch(0.985 0.005 85),  oklch(0.148 0.012 265));--surface:light-dark(oklch(1 0 0),           oklch(0.195 0.014 265));--surface-2:light-dark(oklch(0.972 0.005 85),  oklch(0.172 0.013 265));--raised:light-dark(oklch(1 0 0),           oklch(0.228 0.015 265));--topbar:light-dark(oklch(0.99 0.003 85 / 0.92), oklch(0.148 0.012 265 / 0.95));--ink:light-dark(oklch(0.27 0.012 65),   oklch(0.96 0.006 250));--ink-2:light-dark(oklch(0.46 0.012 65),   oklch(0.76 0.010 255));--ink-3:light-dark(oklch(0.52 0.010 70),   oklch(0.66 0.010 258));--line:light-dark(oklch(0.905 0.008 80),  oklch(0.295 0.016 265));--line-2:light-dark(oklch(0.945 0.006 80),  oklch(0.258 0.014 265));--line-strong:light-dark(oklch(0.83 0.010 78),   oklch(0.38 0.018 265));--line-field:light-dark(oklch(0.62 0.012 80),   oklch(0.52 0.014 265));--accent:light-dark(oklch(0.44 0.085 230),  oklch(0.76 0.09 220));--accent-ink:light-dark(oklch(0.38 0.08 230),   oklch(0.85 0.07 220));--on-accent:light-dark(oklch(1 0 0),           oklch(0.2 0.01 265));--up:light-dark(oklch(0.52 0.14 150),   oklch(0.74 0.15 152));--up-ink:light-dark(oklch(0.47 0.14 150),   oklch(0.74 0.15 152));--down:light-dark(oklch(0.52 0.18 28),    oklch(0.70 0.18 28));--down-ink:light-dark(oklch(0.48 0.19 28),    oklch(0.76 0.17 28));--watch:light-dark(oklch(0.58 0.14 70),    oklch(0.80 0.13 75));--watch-ink:light-dark(oklch(0.50 0.12 70),    oklch(0.80 0.13 75));--series-1:light-dark(oklch(0.64 0.11 190),   oklch(0.61 0.10 205));--series-2:light-dark(oklch(0.44 0.10 325),   oklch(0.51 0.10 320));--series-3:light-dark(oklch(0.68 0.17 290),   oklch(0.61 0.19 290));--brand-tile:light-dark(#003246, #003246);--brand-glyph:light-dark(#aeb8b8, #aeb8b8);--accent-soft:color-mix(in oklch, var(--accent) 12%, transparent);--accent-line:color-mix(in oklch, var(--accent) 40%, transparent);--up-soft:color-mix(in oklch, var(--up) 14%, transparent);--down-soft:color-mix(in oklch, var(--down) 14%, transparent);--watch-soft:color-mix(in oklch, var(--watch) 18%, transparent);--hover:color-mix(in oklch, var(--ink) 5%, transparent);--shadow-soft:light-dark(oklch(0.4 0.02 70 / 0.07), oklch(0 0 0 / 0.28));--shadow-deep:light-dark(oklch(0.3 0.02 70 / 0.16), oklch(0 0 0 / 0.5));--shadow-sm:0 1px 2px var(--shadow-soft);--shadow-md:0 2px 4px var(--shadow-soft), 0 8px 20px var(--shadow-soft);--shadow-lg:0 14px 44px var(--shadow-deep);--r-sm:6px;--r:10px;--r-lg:14px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-16:64px;--sans:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--fs-micro:10px;--fs-small:12px;--fs-body:13px;--fs-title:15px;--fs-heading:20px;--fs-figure:28px;--fs-display:36px;--fs-prose:16px;--track-caps:0.06em;--wrap:1200px;--topbar-h:60px;--ease:cubic-bezier(.22, .61, .36, 1)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--topbar-h) + var(--sp-4))}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:var(--fs-body);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}main{flex:1;outline:none}h1,h2,h3,h4,p,ul,ol,dl,dd,figure{margin:0}ul[role=list],ol[role=list]{list-style:none;padding:0}img,svg{display:block;max-width:100%}button{font:inherit;color:inherit}:where(a){color:var(--accent-ink);text-decoration:none}:where(a):hover{text-decoration:underline;text-underline-offset:3px}.num{font-family:var(--mono);font-variant-numeric:tabular-nums slashed-zero}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}::selection{background:var(--accent-soft);color:var(--ink)}.skip{position:absolute;left:var(--sp-4);top:-100px;z-index:100;padding:var(--sp-2)var(--sp-3);background:var(--raised);color:var(--ink);border:1px solid var(--line-field);border-radius:var(--r-sm);box-shadow:var(--shadow-lg)}.skip:focus-visible{top:var(--sp-2)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.wrap{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 var(--sp-6)}.topbar{position:sticky;top:0;z-index:50;background:var(--topbar);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.topbar-in{display:flex;align-items:center;gap:var(--sp-4);min-height:var(--topbar-h)}.brand{display:flex;align-items:center;gap:var(--sp-3);min-width:0;margin-right:auto}.brand-link{display:flex;align-items:center;gap:var(--sp-2);color:var(--ink)}.brand-link:hover{text-decoration:none}.mark{width:26px;height:auto;flex-shrink:0}.mark-tile{fill:var(--brand-tile)}.mark-glyph{stroke:var(--brand-glyph)}.wordmark{font-size:var(--fs-heading);font-weight:700;letter-spacing:-.01em;line-height:1}.wordmark-tld{color:var(--accent-ink)}.brand-rule{font-family:var(--mono);font-size:var(--fs-small);line-height:1;color:var(--ink-3)}.brand-tag{font-family:var(--mono);font-size:var(--fs-small);line-height:1;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{display:flex;align-items:center;gap:var(--sp-4)}.nav-list{display:flex;gap:var(--sp-1);list-style:none;margin:0;padding:0}.nav-item{display:block;padding:var(--sp-2)var(--sp-3);border-radius:var(--r-sm);color:var(--ink-2);font-weight:500;transition:background-color .12s var(--ease),color .12s var(--ease)}.nav-item:hover{background:var(--hover);color:var(--ink);text-decoration:none}.nav-item[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent);border-radius:var(--r-sm)var(--r-sm)0 0}.nav-tools{display:flex;align-items:center;gap:var(--sp-2)}.seg{display:inline-flex;padding:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm)}.seg-item{padding:var(--sp-1)var(--sp-2);border-radius:4px;font-family:var(--mono);font-size:var(--fs-micro);font-weight:500;letter-spacing:var(--track-caps);color:var(--ink-2)}.seg-item:hover{background:var(--hover);color:var(--ink);text-decoration:none}.seg-item.on{background:var(--accent-soft);color:var(--accent-ink);box-shadow:inset 0 0 0 1px var(--accent)}.theme-toggle,.nav-toggle{display:inline-grid;place-items:center;width:32px;height:32px;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);color:var(--ink-3);cursor:pointer;transition:background-color .12s var(--ease),border-color .12s var(--ease),color .12s var(--ease)}.theme-toggle:hover,.nav-toggle:hover{background:var(--hover);border-color:var(--line-strong);color:var(--ink)}.nav-toggle{display:none}.when-slate{display:none}:root[data-theme=slate] .when-paper{display:none}:root[data-theme=slate] .when-slate{display:contents}@media(prefers-color-scheme:dark){:root:not([data-theme=paper]) .when-paper{display:none}:root:not([data-theme=paper]) .when-slate{display:contents}}@media(max-width:920px){.brand-rule,.brand-tag{display:none}}@media(max-width:640px){.wrap{padding:0 var(--sp-4)}.nav-toggle{display:inline-grid}.nav{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:var(--sp-3);padding:var(--sp-3)var(--sp-4)var(--sp-4);background:var(--raised);border-bottom:1px solid var(--line);box-shadow:var(--shadow-lg)}.nav.open{display:flex}.nav-list{flex-direction:column}.nav-item{padding:var(--sp-3);min-height:44px}.nav-tools{justify-content:space-between}}.footer{margin-top:var(--sp-16);border-top:1px solid var(--line);background:var(--surface-2)}.footer-in{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-4)var(--sp-8);padding-top:var(--sp-6);padding-bottom:var(--sp-6);font-family:var(--mono);font-size:var(--fs-small);color:var(--ink-3)}.footer-brand{display:flex;flex-direction:column;gap:var(--sp-1)}.footer-mark{color:var(--ink-2)}.footer-meta{display:flex;flex-wrap:wrap;gap:var(--sp-1)var(--sp-4);list-style:none;margin:0 auto 0 0;padding:0}.footer-eof{letter-spacing:var(--track-caps)}.grid{display:grid;gap:var(--sp-4)}.grid.c2{grid-template-columns:1fr 1fr}.grid.c3{grid-template-columns:repeat(3,1fr)}.grid.c4{grid-template-columns:repeat(4,1fr);list-style:none;padding:0}.grid.split{grid-template-columns:1.5fr 1fr;align-items:start}.col{display:flex;flex-direction:column;gap:var(--sp-4);align-items:stretch}@media(max-width:920px){.grid.c3,.grid.c4{grid-template-columns:1fr 1fr}.grid.split{grid-template-columns:1fr}}@media(max-width:640px){.grid.c2,.grid.c3,.grid.c4{grid-template-columns:1fr}}.panel{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm)}.ph{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-1)var(--sp-3);padding:var(--sp-3)var(--sp-4);border-bottom:1px solid var(--line-2)}.ph-title{font-size:var(--fs-title);font-weight:600;letter-spacing:-.005em}.pb{padding:var(--sp-4)}.pb>*+*{margin-top:var(--sp-3)}.eyebrow{font-family:var(--mono);font-size:var(--fs-micro);font-weight:500;letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-3)}.meta{font-family:var(--mono);font-size:var(--fs-small);color:var(--ink-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:40px;padding:0 var(--sp-4);background:var(--surface);border:1px solid var(--line-field);border-radius:var(--r-sm);color:var(--ink);font-family:var(--sans);font-size:var(--fs-body);font-weight:500;white-space:nowrap;cursor:pointer;transition:background-color .12s var(--ease),border-color .12s var(--ease)}.btn:hover{background:color-mix(in oklch,var(--ink) 5%,var(--surface));border-color:var(--line-strong);text-decoration:none}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:hover{background:color-mix(in oklch,var(--accent) 90%,var(--ink));border-color:color-mix(in oklch,var(--accent) 90%,var(--ink))}.chips{display:flex;flex-wrap:wrap;gap:var(--sp-2);list-style:none;margin:0}.chip{padding:3px var(--sp-3);background:var(--surface-2);border:1px solid var(--line);border-radius:100px;font-size:var(--fs-small);color:var(--ink-2)}.kv{margin:0}.kv-row{display:grid;grid-template-columns:minmax(84px,30%)1fr;gap:var(--sp-3);padding:var(--sp-2)0;border-bottom:1px solid var(--line-2)}.kv-row:last-child{border-bottom:0}.kv dt{font-family:var(--mono);font-size:var(--fs-micro);font-weight:500;letter-spacing:var(--track-caps);text-transform:uppercase;color:var(--ink-3);padding-top:2px}.kv dd{color:var(--ink)}.checklist{list-style:none;margin:0;display:grid;gap:var(--sp-2)}.checklist li{display:flex;gap:var(--sp-2);align-items:flex-start;color:var(--ink)}.checklist .ic{flex-shrink:0;margin-top:2px;color:var(--accent-ink)}.card-link{transition:box-shadow .2s var(--ease),transform .2s var(--ease),border-color .2s var(--ease)}.card-link a::after{content:"";position:absolute;inset:0;border-radius:inherit}.card-link a{color:var(--ink)}.card-link a:hover{text-decoration:none}.card-link:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md)}.card-link:has(a:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.card-link a:focus-visible{outline:none}.card-title{font-size:var(--fs-heading);font-weight:600;letter-spacing:-.015em;line-height:1.3}.card-text{color:var(--ink-2);font-size:14px;line-height:1.6}.card-more{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--accent-ink);font-weight:500}.card-more .ic{transition:transform .2s var(--ease)}.card-link:hover .card-more .ic{transform:translateX(3px)}.ladder{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--sp-4);list-style:none;margin:0;padding:0;counter-reset:none}.step{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-sm)}.step:first-child{border-color:var(--accent-line)}.step-n{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--line);font-size:var(--fs-small);font-weight:600;color:var(--ink-2)}.step:first-child .step-n{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.step-body>*+*{margin-top:var(--sp-2)}.step-title{font-size:var(--fs-title);font-weight:600}.step-text{color:var(--ink-2);font-size:14px;line-height:1.55}@media(max-width:920px){.ladder{grid-template-columns:1fr 1fr}}@media(max-width:640px){.ladder{grid-template-columns:1fr}}@media(prefers-reduced-motion:no-preference){.is-loading .rise{animation:rise .5s var(--ease)both}.is-loading .rise:nth-of-type(2){animation-delay:50ms}.is-loading .rise:nth-of-type(3){animation-delay:100ms}.is-loading .rise:nth-of-type(4){animation-delay:150ms}.is-loading .rise:nth-of-type(5){animation-delay:200ms}.is-loading .rise:nth-of-type(n+6){animation-delay:250ms}}@keyframes rise{from{opacity:.4;transform:translateY(10px)}to{opacity:1;transform:none}}.pb.checklist>*,.pb.chips>*{margin-top:0}.card-media{width:100%;height:auto;aspect-ratio:9/5;object-fit:cover;border-radius:calc(var(--r) - 1px)calc(var(--r) - 1px)0 0;border-bottom:1px solid var(--line-2)}.card-link:has(.card-media){display:flex;flex-direction:column;overflow:hidden}.hero{padding:var(--sp-16)0 0;max-width:820px}.hero>*+*{margin-top:var(--sp-4)}.hero-title{font-size:clamp(28px,4.4vw,44px);font-weight:600;letter-spacing:-.025em;line-height:1.15;text-wrap:balance}.lede{font-size:var(--fs-prose);line-height:1.6;color:var(--ink-2);max-width:64ch;text-wrap:pretty}.hero-actions{display:flex;flex-wrap:wrap;gap:var(--sp-2);padding-top:var(--sp-2)}.section{margin-top:var(--sp-16)}.section-head{margin-bottom:var(--sp-4)}.section-head>*+*{margin-top:var(--sp-1)}.section-title{font-size:var(--fs-heading);font-weight:600;letter-spacing:-.015em}.feature-in{display:grid;grid-template-columns:1.4fr 1fr;gap:var(--sp-6);align-items:start}.feature-in>*+*{margin-top:0}.feature-in>div>*+*{margin-top:var(--sp-3)}.feature-title{font-size:var(--fs-figure);font-weight:600;letter-spacing:-.02em;line-height:1.1}@media(max-width:920px){.feature-in{grid-template-columns:1fr}}.contact{background:var(--surface)}.contact-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-4)var(--sp-8);padding:var(--sp-8)var(--sp-6)}.contact-in>*+*{margin-top:0}.contact-in>div>*+*{margin-top:var(--sp-1)}.contact-mail{display:inline-flex;align-items:center;gap:var(--sp-3);font-family:var(--mono);font-size:clamp(18px,3vw,var(--fs-figure));font-weight:500;letter-spacing:-.02em;color:var(--accent-ink);overflow-wrap:anywhere}.contact-mail .ic{width:24px;height:24px;flex-shrink:0}.notfound{margin-top:var(--sp-16);max-width:640px}.notfound .pb{padding:var(--sp-10)var(--sp-6)}.notfound .pb>*+*{margin-top:var(--sp-4)}.page-head{padding:var(--sp-10)0 var(--sp-6);max-width:820px}.page-head>*+*{margin-top:var(--sp-3)}.page-title{font-size:clamp(26px,3.6vw,var(--fs-display));font-weight:600;letter-spacing:-.02em;line-height:1.2;text-wrap:balance}@media(min-width:921px){.aside-sticky{position:sticky;top:calc(var(--topbar-h) + var(--sp-4))}}.col>.btn{align-self:flex-start}.page-media{margin:0 0 var(--sp-4);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-sm)}.page-media img{width:100%;height:auto;aspect-ratio:3/1;object-fit:cover}@media(max-width:640px){.page-media img{aspect-ratio:16/9}}.portrait{margin:0;overflow:hidden}.portrait img{width:100%;height:auto;aspect-ratio:9/10;object-fit:cover}.prose{font-size:var(--fs-prose);line-height:1.65;color:var(--ink);padding:var(--sp-6)}.prose>*+*{margin-top:1em}.prose p{text-wrap:pretty;max-width:70ch}.prose h2{margin-top:var(--sp-8);font-size:var(--fs-heading);font-weight:600;letter-spacing:-.015em;line-height:1.3}.prose h3{margin-top:var(--sp-6);font-size:var(--fs-title);font-weight:600}.prose>:first-child{margin-top:0}.prose ul,.prose ol{padding-left:1.25em}.prose li+li{margin-top:var(--sp-1)}.prose a{text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:3px}.prose a:hover{text-decoration-color:initial}.prose strong{font-weight:600}.prose code{font-family:var(--mono);font-size:.875em;padding:1px 4px;background:var(--surface-2);border-radius:4px}@media(max-width:640px){.prose{padding:var(--sp-4)}}@media print{:root{color-scheme:light}.topbar,.nav-toggle,.theme-toggle,.seg,.skip,.card-more,.hero-actions{display:none!important}body{background:#fff}.panel,.step{box-shadow:none;break-inside:avoid}.section{margin-top:var(--sp-8)}.footer{margin-top:var(--sp-8);background:0 0}.prose a::after{content:" (" attr(href)")";font-size:.85em;color:var(--ink-3)}}