:root{--paper: #ffffff;--paper-2: #f7fafc;--paper-3: #eef2f7;--ink-900: #1a1d38;--bg: var(--paper);--bg-elev: var(--paper-2);--bg-sunk: var(--paper-3);--bg-raised: var(--paper-3);--fg: var(--ink-900);--muted: #4a5568;--dim: #6b7280;--line: #d9e1ea;--line-soft: #eceff3;--accent: #2b7a9b;--accent-lift: #1d566e;--accent-bright: #4da0c2;--on-accent: #ffffff;--danger: #b3261e;--veil: rgba(11, 12, 23, .96);--on-veil: #ffffff;--gutter: 20px;--max: 1300px;--max-narrow: 700px;--radius: 10px;--radius-card: 16px;--step-sm: .875rem;--step-body: 1.0625rem;--step-lg: clamp(1.6rem, 1.15rem + 2vw, 2.5rem);--step-xl: clamp(2.2rem, 1.3rem + 3.8vw, 4.25rem);--ease: cubic-bezier(.22, .61, .36, 1);--font-body: "IBM Plex Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-heading: var(--font-body)}html.corners-rounded{--radius: 10px;--radius-card: 16px}html.corners-square{--radius: 0px;--radius-card: 0px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-body);font-size:var(--step-body);font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,video,iframe{max-width:100%}img{height:auto;display:block}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3{font-family:var(--font-heading);line-height:1.15;margin:0;font-weight:600;letter-spacing:-.02em}p{margin:0 0 1em}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.wrap.narrow{max-width:var(--max-narrow)}.screen-reader,.skip-link:not(:focus){position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;top:12px;left:12px;z-index:200;background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:var(--radius)}.site-header{position:sticky;top:0;z-index:60;background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line-soft)}@supports not (background: color-mix(in srgb,red 50%,blue)){.site-header{background:var(--bg)}}.site-header .wrap{display:flex;align-items:center;gap:16px;min-height:64px}.site-name{margin:0;font-size:1.0625rem;font-weight:600;letter-spacing:-.015em;white-space:nowrap}.site-name a:hover{color:var(--accent-lift)}.site-logo{max-height:32px;width:auto}.site-nav{margin-left:auto;display:flex;align-items:center;gap:28px}.site-nav .nav{display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none}.site-nav .nav-secondary{gap:20px}.site-nav .nav-secondary a{color:var(--dim)}.site-nav a{font-size:.8125rem;color:var(--dim);letter-spacing:.08em;text-transform:uppercase;font-weight:500;padding:6px 0;border-bottom:1px solid transparent;transition:color .18s var(--ease),border-color .18s var(--ease)}.site-nav a:hover{color:var(--fg)}.site-nav .nav-current>a{color:var(--fg);border-bottom-color:var(--accent-bright)}.site-nav .nav-social{display:none}body.header-centered .site-header .wrap{flex-wrap:wrap;justify-content:center}body.header-centered .site-name{width:100%;text-align:center;padding-top:18px}body.header-centered .site-nav{margin:0;padding-bottom:14px}.nav-toggle{display:none;margin-left:auto;width:40px;height:40px;background:none;border:0;padding:0;color:var(--fg);cursor:pointer}.nav-toggle-bar,.nav-toggle-bar:before,.nav-toggle-bar:after{display:block;width:22px;height:1.5px;background:currentColor;transition:transform .22s var(--ease),opacity .18s var(--ease)}.nav-toggle-bar{margin-inline:auto;position:relative}.nav-toggle-bar:before,.nav-toggle-bar:after{content:"";position:absolute;left:0}.nav-toggle-bar:before{top:-7px}.nav-toggle-bar:after{top:7px}.nav-toggle[aria-expanded=true] .nav-toggle-bar{background:transparent}.nav-toggle[aria-expanded=true] .nav-toggle-bar:before{transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle-bar:after{transform:translateY(-7px) rotate(-45deg)}.hero,.page-head{padding-block:clamp(48px,9vw,104px) clamp(28px,5vw,56px);text-align:center}.hero-title,.page-head-title{font-size:var(--step-xl);font-weight:600;letter-spacing:-.035em;text-wrap:balance}.hero-sub,.page-head-sub{margin:18px auto 0;max-width:44ch;color:var(--muted);font-size:clamp(1.05rem,.98rem + .35vw,1.25rem);font-weight:300;line-height:1.55;text-wrap:pretty}.page-head-count{margin-top:16px;color:var(--dim);font-size:.8125rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.author-avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;margin:0 auto 20px}.grid{display:grid;gap:clamp(16px,2.4vw,32px);padding-bottom:clamp(48px,8vw,96px)}.layout-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr))}.layout-stacked{grid-template-columns:1fr;max-width:var(--max-narrow);margin-inline:auto}.card{display:flex;min-width:0}.card-link{display:flex;flex-direction:column;width:100%;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-card);overflow:hidden;transition:border-color .22s var(--ease),box-shadow .22s var(--ease),transform .22s var(--ease)}.card-link:hover{border-color:var(--accent-bright);box-shadow:0 10px 28px -14px #1a1d3859;transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.card-link:hover{transform:none}}.card-media{aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-sunk);border-bottom:1px solid var(--line-soft)}.layout-stacked .card-media{aspect-ratio:16 / 9}.card.no-image .card-media{display:none}.card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--ease)}.card-link:hover .card-media img{transform:scale(1.04)}.card-body{flex:1;display:flex;flex-direction:column;gap:10px;padding:18px 20px 20px}.card.no-image .card-body{min-height:190px}.layout-stacked .card.no-image .card-body{min-height:0}.card-meta{order:-1;margin:0;color:var(--dim);font-size:var(--step-sm);font-variant-numeric:tabular-nums}.card-title{margin:0;font-size:1.0625rem;font-weight:500;line-height:1.35;letter-spacing:-.015em;text-wrap:balance;transition:color .18s var(--ease);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-link:hover .card-title{color:var(--accent-lift)}.card.no-image .card-title{font-size:clamp(1.05rem,.95rem + .45vw,1.3rem);-webkit-line-clamp:4;line-clamp:4}.card-excerpt{margin:0;color:var(--muted);font-size:var(--step-sm);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card.no-image .card-excerpt{-webkit-line-clamp:3;line-clamp:3}.empty{color:var(--muted);text-align:center;padding-block:64px}.single-head{padding-block:clamp(40px,7vw,88px) clamp(24px,4vw,44px);text-align:center}.single-kicker{display:inline-block;margin-bottom:16px;color:var(--accent);font-size:.8125rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.single-kicker:hover{color:var(--accent-lift)}.single-title{font-size:var(--step-lg);letter-spacing:-.03em;text-wrap:balance}.single-meta{margin:10px 0 0;color:var(--dim);font-size:var(--step-sm);font-variant-numeric:tabular-nums}.single-excerpt{margin:18px auto 0;max-width:52ch;color:var(--muted);font-weight:300;text-wrap:pretty}.single-content{padding-bottom:clamp(48px,8vw,96px)}.single-content>p,.single-content>h2,.single-content>h3,.single-content>h4,.single-content>h5,.single-content>h6,.single-content>ul,.single-content>ol,.single-content>pre,.single-content>hr,.single-content>table,.single-content>blockquote{max-width:var(--max-narrow);margin-inline:auto}.single-content h2{font-size:1.5rem;margin-top:2em;margin-bottom:.5em}.single-content h3{font-size:1.2rem;margin-top:1.6em;margin-bottom:.4em}.single-content a{color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color .16s var(--ease)}.single-content a:hover{color:var(--accent-lift)}.single-content blockquote{border-left:2px solid var(--accent-bright);padding-left:20px;color:var(--muted);font-style:italic}.ned-gallery{--row: 230px;display:flex;flex-wrap:wrap;gap:clamp(8px,1.1vw,14px);margin:clamp(28px,5vw,56px) 0}.ned-shot{flex:var(--r, 1.5) 1 calc(var(--r, 1.5) * var(--row));margin:0;min-width:0}.ned-gallery:after{content:"";flex-grow:999999}.ned-shot a{display:block;overflow:hidden;border-radius:var(--radius);background:var(--bg-sunk);border:1px solid var(--line-soft);cursor:zoom-in;transition:border-color .22s var(--ease)}.ned-shot a:hover{border-color:var(--accent-bright)}.ned-shot img{display:block;width:100%;height:auto;aspect-ratio:var(--r, 1.5);object-fit:cover;transition:transform .5s var(--ease)}.ned-shot a:hover img{transform:scale(1.03)}.ned-gallery[data-count="1"]{justify-content:center}.ned-gallery[data-count="1"]:after{content:none}.ned-gallery[data-count="1"] .ned-shot{flex:0 1 min(100%,900px)}@media(max-width:720px){.ned-gallery{--row: 150px}}.ned-video{margin:clamp(28px,5vw,56px) auto;max-width:1100px}.ned-video-play{display:block;position:relative;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-card);background:var(--bg-sunk);border:1px solid var(--line-soft)}.ned-video-play:hover{border-color:var(--accent-bright)}.ned-video-play img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s var(--ease)}.ned-video-play:hover img{transform:scale(1.02)}.ned-video-icon{position:absolute;inset:0;display:grid;place-items:center}.ned-video-icon svg{width:clamp(54px,7vw,74px);height:auto}.ned-video-bg{fill:#101223b8;transition:fill .2s var(--ease)}.ned-video-arrow{fill:#fff}.ned-video-play:hover .ned-video-bg{fill:var(--accent)}.ned-video iframe{display:block;width:100%;aspect-ratio:16 / 9;border:0;border-radius:var(--radius-card)}.ned-contact{display:grid;gap:18px;max-width:var(--max-narrow);margin:32px auto 0}.ned-contact label{display:grid;gap:8px;color:var(--muted);font-size:var(--step-sm);letter-spacing:.04em;text-transform:uppercase}.ned-contact input,.ned-contact textarea{width:100%;padding:12px 14px;background:var(--bg-elev);color:var(--fg);border:1px solid var(--line);border-radius:var(--radius);font:inherit;text-transform:none;letter-spacing:normal}.ned-contact input:focus,.ned-contact textarea:focus{outline:none;border-color:var(--accent)}.ned-contact textarea{resize:vertical;min-height:140px}.ned-contact button,.button{justify-self:start;display:inline-block;padding:13px 28px;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);border-radius:var(--radius);font:inherit;font-weight:600;letter-spacing:.01em;cursor:pointer;transition:background .18s var(--ease),border-color .18s var(--ease)}.ned-contact button:hover,.button:hover{background:var(--accent-lift);border-color:var(--accent-lift)}.ned-contact-note{margin:0;color:var(--muted);font-size:var(--step-sm)}.ned-contact-note.is-error{color:var(--danger)}.related{border-top:1px solid var(--line-soft);padding-top:clamp(40px,6vw,72px)}.related-title{font-size:1.125rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:24px;text-align:center}.pagination{display:flex;align-items:center;justify-content:center;gap:24px;padding-bottom:clamp(48px,8vw,88px);color:var(--dim);font-size:var(--step-sm)}.pagination a{color:var(--fg)}.pagination a:hover{color:var(--accent)}.social{display:flex;flex-wrap:wrap;gap:18px;margin:0;padding:0;list-style:none}.social a{display:grid;place-items:center;width:32px;height:32px;color:var(--muted);transition:color .18s var(--ease),transform .18s var(--ease)}.social a:hover{color:var(--fg);transform:translateY(-2px)}.site-footer{border-top:1px solid var(--line-soft);padding-block:40px 56px}.site-footer .wrap{display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.footer-meta{margin:0;color:var(--dim);font-size:var(--step-sm)}.footer-meta a:hover{color:var(--fg)}.to-top{position:fixed;right:20px;bottom:20px;z-index:70;width:44px;height:44px;display:grid;place-items:center;background:var(--bg-elev);color:var(--fg);border:1px solid var(--line);border-radius:50%;font-size:1.1rem;cursor:pointer;opacity:0;transform:translateY(8px);transition:opacity .22s var(--ease),transform .22s var(--ease)}.to-top.is-visible{opacity:1;transform:none}.to-top[hidden]{display:none}.lightbox{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:56px 16px;background:var(--veil)}.lightbox[hidden]{display:none}.lightbox-img{max-width:100%;max-height:100%;object-fit:contain;border-radius:var(--radius)}.lightbox-close,.lightbox-nav{position:absolute;background:none;border:0;color:var(--on-veil);cursor:pointer;line-height:1;padding:10px 16px;opacity:.7;transition:opacity .18s var(--ease)}.lightbox-close:hover,.lightbox-nav:hover{opacity:1}.lightbox-close{top:8px;right:12px;font-size:2.25rem}.lightbox-nav{top:50%;transform:translateY(-50%);font-size:3rem}.lightbox-nav.prev{left:4px}.lightbox-nav.next{right:4px}.lightbox-count{position:absolute;bottom:16px;left:0;right:0;margin:0;text-align:center;color:#ffffffb8;font-size:var(--step-sm);font-variant-numeric:tabular-nums}.error-page{padding-block:clamp(80px,14vw,160px)}.error-code{margin:0 0 8px;font-size:clamp(3rem,2rem + 6vw,6rem);font-weight:600;color:var(--line);line-height:1}.error-page .page-head-title{margin-top:0}.error-page .button{margin-top:12px}@media(max-width:720px){.nav-toggle{display:block}body.header-centered .site-header .wrap{flex-wrap:nowrap;justify-content:space-between}body.header-centered .site-name{width:auto;text-align:left;padding-top:0}.site-nav{position:fixed;inset:64px 0 auto;margin:0;padding:24px var(--gutter) 32px;background:var(--bg);border-bottom:1px solid var(--line);display:none}.site-nav.is-open{display:block}.site-nav .nav{flex-direction:column;align-items:flex-start;gap:18px}.site-nav .nav-secondary{margin-top:18px}.site-nav a{font-size:1.125rem;text-transform:none;letter-spacing:0}.site-nav .nav-social{display:flex;margin-top:28px}.lightbox{padding:48px 8px}.lightbox-nav{font-size:2.25rem}}.single-content :is(.kg-card,figure){margin-block:clamp(28px,5vw,56px)}.kg-width-wide{max-width:1100px;margin-inline:auto}.kg-width-full{width:100vw;max-width:100vw;margin-inline:calc(50% - 50vw)}.kg-width-full img{width:100%;border-radius:0}.kg-image-card,.kg-embed-card,.kg-gallery-card,.kg-video-card,.kg-audio-card,.kg-file-card,.kg-bookmark-card,.kg-toggle-card,.kg-callout-card,.kg-button-card,.kg-header-card,.kg-product-card{max-width:var(--max-narrow);margin-inline:auto}.kg-image-card.kg-width-wide,.kg-embed-card.kg-width-wide,.kg-gallery-card.kg-width-wide,.kg-video-card.kg-width-wide{max-width:1100px}.kg-image-card.kg-width-full,.kg-gallery-card.kg-width-full,.kg-video-card.kg-width-full{max-width:100vw}.kg-image,.kg-image-card img{border-radius:var(--radius)}.kg-card figcaption,.page-feature figcaption{margin-top:10px;color:var(--dim);font-size:var(--step-sm);text-align:center}.kg-gallery-container{display:flex;flex-direction:column;gap:10px}.kg-gallery-row{display:flex;gap:10px}.kg-gallery-image img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}.kg-embed-card{display:flex;flex-direction:column;align-items:center}.kg-embed-card iframe{max-width:100%;border-radius:var(--radius)}.kg-callout-card{display:flex;gap:12px;padding:18px 20px;background:var(--bg-elev);border-radius:var(--radius)}.kg-callout-text{margin:0}.kg-bookmark-card a{display:flex;justify-content:space-between;gap:20px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none}.kg-bookmark-content{padding:20px;min-width:0}.kg-bookmark-title{font-weight:600}.kg-bookmark-description{color:var(--muted);font-size:var(--step-sm);margin-top:6px}.kg-bookmark-metadata{color:var(--dim);font-size:var(--step-sm);margin-top:12px;display:flex;gap:8px;align-items:center}.kg-bookmark-thumbnail img{width:100%;height:100%;object-fit:cover}.kg-button-card .kg-btn{display:inline-block;padding:12px 26px;background:var(--accent);color:var(--bg);border-radius:var(--radius);font-weight:500;text-decoration:none}.page-feature{padding-inline:var(--gutter)}.page-feature img{width:100%;border-radius:var(--radius)}.single-content>p{line-height:1.75}.single-content>p+p{margin-top:0}.single-content h4,.single-content h5,.single-content h6{font-size:1.05rem;margin-top:1.8em;margin-bottom:.4em}.single-content ul,.single-content ol{padding-left:1.4em;line-height:1.7}.single-content li{margin-bottom:.5em}.single-content li::marker{color:var(--dim)}.single-content hr{border:0;border-top:1px solid var(--line);margin-block:clamp(32px,5vw,56px)}.single-content :not(pre)>code{background:var(--bg-elev);border:1px solid var(--line-soft);border-radius:4px;padding:.15em .4em;font-size:.875em;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;word-break:break-word}.single-content pre{background:var(--bg-sunk);border:1px solid var(--line-soft);border-radius:var(--radius);padding:18px 20px;overflow-x:auto;-webkit-overflow-scrolling:touch;font-size:.85rem;line-height:1.55;tab-size:2}.single-content pre code{background:none;border:0;padding:0;font-size:inherit;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;white-space:pre;word-break:normal}.single-content blockquote{margin-block:1.6em}.single-content table{width:100%;border-collapse:collapse;font-size:var(--step-sm)}.single-content :is(th,td){border-bottom:1px solid var(--line-soft);padding:10px 12px;text-align:left}.single-content th{color:var(--muted);font-weight:500}.single-content>figure{max-width:1100px;margin-inline:auto;margin-block:clamp(28px,5vw,48px)}.single-content>figure a{display:block;cursor:zoom-in}.single-content>figure img{width:100%;border-radius:var(--radius);background:var(--bg-sunk)}.single-content>figure figcaption{margin-top:10px;color:var(--dim);font-size:var(--step-sm);text-align:center}.dot{margin-inline:8px;color:var(--dim)}.card-meta{margin:4px 0 0;color:var(--dim);font-size:var(--step-sm);font-variant-numeric:tabular-nums}.topics{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:18px;padding:0;list-style:none}.topics a{display:inline-block;padding:4px 12px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.8125rem;letter-spacing:.02em;transition:color .18s var(--ease),border-color .18s var(--ease)}.topics a:hover{color:var(--fg);border-color:var(--accent-bright)}.single-origin{margin:0;padding-bottom:clamp(32px,5vw,56px);color:var(--dim);font-size:var(--step-sm);text-align:center}.single-origin a{color:var(--muted);text-decoration:underline;text-underline-offset:3px}.single-origin a:hover{color:var(--fg)}.crossref{margin-bottom:clamp(32px,5vw,56px);padding:20px 22px;background:var(--bg-elev);border:1px solid var(--line-soft);border-radius:var(--radius-card)}.crossref-title{margin:0 0 14px;color:var(--muted);font-size:var(--step-sm);font-weight:500;letter-spacing:.08em;text-transform:uppercase}.crossref ul{margin:0;padding:0;list-style:none}.crossref li{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding:7px 0;border-top:1px solid var(--line-soft)}.crossref li:first-child{border-top:0;padding-top:0}.crossref a{color:var(--fg);font-weight:500;text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--line)}.crossref a:hover{color:var(--accent-lift);text-decoration-color:var(--accent-bright)}.crossref-note{color:var(--dim);font-size:var(--step-sm)}.topics-heading{margin:clamp(28px,4vw,44px) 0 14px;color:var(--dim);font-size:.8125rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase}.topic-list{margin:0 0 clamp(32px,5vw,56px);padding:0;list-style:none;border-top:1px solid var(--line-soft)}.topic-list li{border-bottom:1px solid var(--line-soft)}.topic-list a{display:grid;grid-template-columns:minmax(0,auto) 1fr auto;align-items:center;gap:16px;padding:14px 4px;transition:color .18s var(--ease),background .18s var(--ease)}.topic-list a:hover{color:var(--accent-lift)}.topic-name{font-weight:500}.topic-note{color:var(--dim);font-size:var(--step-sm);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-bar{display:block;height:3px;border-radius:2px;background:var(--line-soft);overflow:hidden}.topic-bar>span{display:block;height:100%;min-width:6px;border-radius:2px;background:var(--accent-bright)}.topic-count{color:var(--dim);font-size:var(--step-sm);font-variant-numeric:tabular-nums}@media(max-width:560px){.topic-list a{grid-template-columns:1fr auto;gap:8px 12px}.topic-note,.topic-bar{grid-column:1 / -1}.topic-note{white-space:normal}}
