@font-face{font-family:NBSans;src:url('dm-sans.woff2') format('woff2');font-display:swap}
@font-face{font-family:NBSerif;src:url('cormorant.woff2') format('woff2');font-display:swap}
:root{--paper:#f1eee6;--surface:#fbfaf6;--ink:#172936;--muted:#52616b;--rule:#d3d6d0;--accent:#8b4f1d;--code:#e7e4da;--night:#08131e}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 NBSans,"Segoe UI",system-ui,sans-serif}
a{color:var(--accent)}
a:focus-visible{outline:2px solid #c47b37;outline-offset:4px}
.gd-wrap{max-width:780px;margin:0 auto;padding:0 16px}
.gd-top{background:var(--night);color:#e7edf1}
.gd-top .gd-wrap{max-width:1040px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:74px}
.gd-brand{display:block;width:150px;flex:none}
.gd-brand img{display:block;width:100%;height:auto}
.gd-top nav{display:flex;align-items:center;gap:20px;font-size:13px}
.gd-top nav a{color:#c4ced5;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.gd-top nav a:hover{color:#fff}
.gd-top nav .gd-lang{border:1px solid #4a5b68;border-radius:999px;padding:0 14px;letter-spacing:.08em;color:#e7edf1}
.gd-top nav .gd-lang b{color:#dbb28c;font-weight:600}
.gd-hero{padding:56px 0 18px}
.gd-hero p.gd-over{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
.gd-hero h1{font-size:clamp(34px,6vw,54px);line-height:1.08;letter-spacing:-.045em;font-weight:400;margin:0 0 14px}
.gd-hero h1 em{font-family:NBSerif,Georgia,serif;font-size:1.12em;color:#8b633e}
.gd-hero>p:last-child{color:var(--muted);font-size:18px;margin:0}
.gd-cards{display:grid;gap:14px;padding:26px 0 48px}
.gd-card{display:block;background:var(--surface);border:1px solid var(--rule);border-radius:10px;padding:20px 22px;text-decoration:none;color:var(--ink)}
.gd-card:hover{border-color:#b28c64}
.gd-card small{color:var(--accent);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:11px}
.gd-card h2{font-size:21px;line-height:1.3;margin:6px 0;font-weight:500;letter-spacing:-.02em}
.gd-card p{margin:0;color:var(--muted);font-size:15px}
.guide{padding:36px 0 24px}
.crumb{font-size:13px;color:var(--muted);margin:0}
.guide h1{font-size:clamp(30px,5.4vw,42px);line-height:1.15;letter-spacing:-.04em;font-weight:400;margin:10px 0 14px}
.lead{font-size:19px;color:var(--muted);margin:0 0 6px}
.meta{font-size:13px;color:var(--muted);margin:0 0 30px}
.guide h2{font-size:25px;line-height:1.3;letter-spacing:-.025em;font-weight:500;margin:38px 0 10px}
.guide h3{font-size:19px;font-weight:500;margin:24px 0 8px}
.guide li{margin:4px 0}
code{background:var(--code);padding:1px 6px;border-radius:5px;font-size:.86em;overflow-wrap:anywhere}
pre{background:#0f1f2b;color:#e6edf2;padding:14px 16px;border-radius:10px;overflow-x:auto;font-size:14px;line-height:1.55}
pre code{background:none;padding:0;color:inherit;overflow-wrap:normal}
table{border-collapse:collapse;width:100%;font-size:15px;display:block;overflow-x:auto}
th,td{border:1px solid var(--rule);padding:8px 10px;text-align:left;vertical-align:top}
th{background:var(--code);font-weight:500}
.cta{background:var(--surface);border:1px solid var(--rule);border-left:4px solid #b28c64;border-radius:10px;padding:16px 18px;margin:30px 0}
.cta p{margin:0 0 10px}
.cta a.btn{display:inline-block;background:var(--night);color:#fff;padding:10px 18px;border-radius:8px;text-decoration:none;font-weight:500}
.note{color:var(--muted);font-size:15px}
.gd-foot{border-top:1px solid var(--rule);margin-top:20px;padding-top:18px;padding-bottom:36px;color:var(--muted);font-size:13px}
.gd-foot a{color:var(--muted)}
@media(max-width:620px){.gd-brand{width:120px}.gd-top nav{gap:12px;font-size:12px}.gd-top nav .gd-hide-sm{display:none}.gd-hero{padding-top:40px}}

/* Reading experience belongs to the Studio: open pages, copper rules, generous margins. */
html{scroll-behavior:smooth;scroll-padding-top:28px}body{background:#f1eee6}.gd-wrap{max-width:1180px;padding-inline:32px}.gd-top{background:#0c1d28;border-bottom:1px solid #91a4a044}.gd-top .gd-wrap{max-width:1180px;min-height:86px}.gd-brand{width:165px}.gd-top nav{gap:30px}.gd-top nav .gd-lang{border-radius:2px;letter-spacing:.02em}.gd-skip{position:absolute;left:12px;top:12px;z-index:9;background:#fff;padding:10px 15px;transform:translateY(-180%)}.gd-skip:focus{transform:none}.gd-over{font-size:10px!important;letter-spacing:.12em;text-transform:uppercase;color:#63736d}
.gd-hero{position:relative;padding:72px 0 50px;border-bottom:1px solid #aab7af;overflow:hidden}.gd-hero:after{content:'↗';position:absolute;right:24px;top:75px;font:150px/1 NBSerif,Georgia,serif;color:#78908333;pointer-events:none}.gd-hero h1{font-size:clamp(34px,4.8vw,52px);letter-spacing:-.04em;max-width:660px}.gd-hero>p:last-child{max-width:620px;font-size:16px;line-height:1.85}.gd-hero p.gd-over{color:#62726d;margin-bottom:20px}.gd-cards{display:block;padding:0 0 60px}.gd-card{display:grid;grid-template-columns:45px 1fr 24px;gap:24px;background:transparent;border:0;border-bottom:1px solid #bdc8bd;border-radius:0;padding:30px 0;transition:background .2s}.gd-card:hover{background:#dce2d459;border-color:#8b9d8f}.gd-ordinal{font:12px/2 ui-monospace,Consolas,monospace;color:#8b633e}.gd-arrow{font-size:25px;line-height:1.5;color:#8b633e}.gd-card h2{font-size:clamp(21px,2.3vw,28px);font-weight:400;max-width:780px;margin:8px 0 10px}.gd-card p{max-width:780px;font-size:14px;line-height:1.8}.gd-card small{font-size:10px;color:#806144;font-weight:400}
.gd-reader{display:grid;grid-template-columns:220px minmax(0,740px);gap:70px;padding:48px 0 50px;align-items:start}.gd-rail{position:sticky;top:30px;padding:10px 0 0;border-top:2px solid #ab805c}.gd-rail p{margin:0 0 18px}.gd-rail nav{display:grid;gap:0}.gd-rail nav a{display:grid;grid-template-columns:22px 1fr;gap:9px;border-top:1px solid #cbd2c9;padding:13px 0;color:#52635d;text-decoration:none;font-size:12px;line-height:1.65}.gd-rail nav a:hover{color:#8b4f1d}.gd-rail nav span{font-size:9px;color:#96724e;padding-top:2px}.gd-toplink{font-size:11px;display:inline-block;margin-top:18px;text-decoration:none}.guide{padding:0;min-width:0}.guide h1{font-size:clamp(30px,3.9vw,44px);line-height:1.14;letter-spacing:-.04em;margin:16px 0 20px}.lead{font-size:18px;line-height:1.65}.meta{font-size:11px;letter-spacing:.02em;padding:17px 0 22px;border-bottom:1px solid #b9c4ba;margin:0 0 28px}.crumb{font-size:11px;letter-spacing:.02em}.crumb a{text-decoration:none}.guide h2{margin:42px 0 16px;font-size:25px;line-height:1.25;font-weight:500;letter-spacing:-.03em;scroll-margin-top:28px}.guide>p,.guide li{font-size:16px;line-height:1.85}.guide a{text-underline-offset:3px}.guide pre{border-radius:0;border-left:2px solid #a48c6b;padding:20px;color:#e2eadd;font-size:12px}.guide code{border-radius:1px}.guide table{font-size:13px}.guide th{background:#dce1d7}.guide th,.guide td{padding:12px;border-inline:0}.cta{background:#e5e9de;border:0;border-block:1px solid #a6b4a0;border-radius:0;padding:25px 26px;margin:32px 0}.cta a.btn{border-radius:1px;font-size:13px;padding:11px 18px}.cta p{font-size:14px!important;line-height:1.85}.guide .note{font-size:13px;line-height:1.85;border-left:2px solid #b4bcaa;padding-left:16px}.gd-return{display:inline-block;border-bottom:1px solid currentColor;padding:13px 0;margin-top:35px;font-size:13px;text-decoration:none}.gd-foot{margin-top:0;max-width:1116px;padding:24px 0 35px;font-size:11px;line-height:1.85;border-color:#aebbad}.gd-foot p{max-width:850px}
@media(max-width:1000px){.gd-reader{grid-template-columns:180px minmax(0,1fr);gap:38px}.gd-wrap{padding-inline:28px}.gd-foot{margin-inline:28px}.gd-rail nav a{font-size:11px}}
@media(max-width:700px){.gd-wrap{padding-inline:22px}.gd-top .gd-wrap{min-height:75px}.gd-top nav{gap:14px}.gd-brand{width:140px}.gd-hero{padding:40px 0 32px}.gd-hero:after{font-size:85px;right:0;top:25px;opacity:.5}.gd-hero h1{max-width:90%}.gd-hero>p:last-child{font-size:15px}.gd-card{grid-template-columns:23px 1fr 14px;gap:12px;padding-block:24px}.gd-card h2{font-size:22px}.gd-card p{font-size:13px}.gd-ordinal{font-size:10px}.gd-arrow{font-size:20px}.gd-reader{display:flex;flex-direction:column;gap:30px;padding-top:28px}.gd-rail{position:static;width:100%;order:1;border-top:1px solid #b9c4ba;padding-top:20px}.guide{width:100%;order:0}.guide h1{font-size:33px}.guide .lead{font-size:17px}.guide>p,.guide li{font-size:16px;line-height:1.85}.guide h2{font-size:25px}.guide pre{font-size:12px;padding:15px}.gd-foot{margin-inline:22px;padding-inline:0}.cta{padding:21px}.gd-rail nav{grid-template-columns:1fr 1fr;gap:0 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gd-card{transition:none}}
@media print{.gd-top,.gd-rail,.gd-skip,.gd-return{display:none}.gd-reader{display:block}.gd-wrap{max-width:none;padding:0}.guide{padding:0}.guide h1{font-size:25pt}.guide>p,.guide li{font-size:11pt}.guide pre{white-space:pre-wrap;background:#eee;color:#111}.cta{break-inside:avoid}.gd-foot{margin:0}a{color:inherit}}

/* Shared language dropdown, approved 28 October 2026. */
.nb-language-minimal{position:relative;flex:none;color:#c4ced5;font-size:12px;letter-spacing:.03em;z-index:20}
.nb-language-minimal summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 2px;cursor:pointer}
.nb-language-minimal summary::-webkit-details-marker{display:none}
.nb-language-minimal img{display:block;width:17px;height:12px;object-fit:cover;border-radius:0}
.nb-language-minimal summary svg{width:10px;height:10px;margin-left:2px;transition:transform .15s}
.nb-language-minimal[open] summary svg{transform:rotate(180deg)}
.nb-language-minimal .nb-language-options{position:absolute;top:100%;right:0;display:grid!important;gap:0!important;min-width:142px;padding:5px 0;background:#0b1722;border-top:1px solid #bb9270}
.nb-language-minimal .nb-language-options a{display:flex!important;align-items:center;gap:10px;min-height:44px;padding:10px 13px!important;color:#c4ced5!important;text-decoration:none;font-size:12px}
.nb-language-minimal .nb-language-options a[aria-current=page]{color:#e6b68c!important}
.nb-language-minimal .nb-language-options a[aria-current=page]:after{content:'·';margin-left:auto}
.nb-language-minimal .nb-language-options a:hover{background:#ffffff07}
.nb-language-minimal summary:focus-visible,.nb-language-minimal a:focus-visible{outline:1px solid #e6b68c;outline-offset:3px}
