.bg,.chroma{color:#e5e5e5;background-color:#000}.chroma .err{color:red}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#191919}.chroma .ln,.chroma .lnt{white-space:pre;-webkit-user-select:none;-moz-user-select:none;user-select:none;margin-right:.4em;padding:0 .4em;color:#727272}.chroma .line{display:flex}.chroma .k,.chroma .kc,.chroma .kd,.chroma .kn,.chroma .kp,.chroma .kr,.chroma .kt{color:#fff;font-weight:700}.chroma .na{color:#007f7f}.chroma .nb{color:#fff}.chroma .ld,.chroma .nb,.chroma .nt{font-weight:700}.chroma .ld{color:#ff0}.chroma .dl,.chroma .s,.chroma .s1,.chroma .s2,.chroma .sa,.chroma .sb,.chroma .sc,.chroma .sd,.chroma .se,.chroma .sh,.chroma .si,.chroma .sr,.chroma .ss,.chroma .sx{color:#0ff;font-weight:700}.chroma .il,.chroma .m,.chroma .mb,.chroma .mf,.chroma .mh,.chroma .mi,.chroma .mo{color:#ff0;font-weight:700}.chroma .c,.chroma .c1,.chroma .ch,.chroma .cm,.chroma .cs{color:#007f7f}.chroma .cp,.chroma .cpf{color:#0f0;font-weight:700}.chroma .gh,.chroma .gs,.chroma .gu{font-weight:700}.chroma .gl{text-decoration:underline}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/*! tailwindcss v3.4.18 | MIT License | https://tailwindcss.com*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.visible{visibility:visible}.sticky{position:sticky}.top-0{top:0}.z-40{z-index:40}.col-span-12{grid-column:span 12/span 12}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.min-h-screen{min-height:100vh}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:1rem}.gap-8{gap:2rem}.border-b{border-bottom-width:1px}.bg-\[var\(--bg\)\]{background-color:var(--bg)}.text-\[var\(--accent-cyan\)\]{color:var(--accent-cyan)}.text-\[var\(--text-primary\)\]{color:var(--text-primary)}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-xl{--tw-backdrop-blur:blur(24px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}:root{color-scheme:dark;--bg:#090a0f;--surface:#12151e;--surface-raised:#1a1e2c;--border:#1e2433;--border-hover:#2a3347;--text-primary:#e6e8ec;--text-secondary:#8b8fa3;--text-tertiary:#8b92a6;--accent-emerald:#10b981;--accent-cyan:#22d3ee}:root[data-theme=light]{color-scheme:light;--bg:#fcfcfd;--surface:#fff;--surface-raised:#f6f7f9;--border:#e6e8eb;--border-hover:#c8cdd6;--text-primary:#0a0e1a;--text-secondary:#555d6c;--text-tertiary:#636b7b;--accent-emerald:#047857;--accent-cyan:#0e6474}html{scroll-behavior:smooth;scroll-padding-top:5rem}article[id],section[id]{scroll-margin-top:5rem}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:1rem;line-height:1.65}button,input,select,textarea{font:inherit}button:not(:disabled),select:not(:disabled),summary{cursor:pointer}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--accent-cyan);outline-offset:3px}::-moz-selection{color:var(--bg);background:var(--text-primary)}::selection{color:var(--bg);background:var(--text-primary)}.shell{width:min(100% - 2rem,1180px);margin-inline:auto}.site-header{background:color-mix(in srgb,var(--bg) 92%,transparent);border-color:var(--border)}.header-inner{min-height:4rem;padding-block:.5rem;flex-wrap:wrap}.brand{display:inline-flex;align-items:center;gap:.55rem;font-size:.95rem;letter-spacing:0;font-weight:600;white-space:nowrap}.brand-short{display:none}.brand-mark{flex-shrink:0;width:46px;height:32px}.brand-logo{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.brand-logo-light,:root[data-theme=light] .brand-logo-dark{display:none}:root[data-theme=light] .brand-logo-light{display:block}.desktop-nav,.header-actions{display:flex;align-items:center;gap:1.2rem}.desktop-nav a{color:var(--text-secondary);font-size:.95rem;transition:color .15s ease}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:var(--text-primary)}.header-actions{gap:.65rem}.theme-toggle{display:grid;place-items:center;flex-shrink:0;width:2.5rem;height:2.5rem;padding:0;color:var(--text-primary);border:1px solid var(--border);border-radius:5px;background:var(--surface)}.theme-toggle:hover{border-color:var(--border-hover)}.theme-icon{display:block;width:1.25rem;height:1.25rem}.mobile-nav,.theme-icon[hidden]{display:none}.mobile-nav{position:relative}.mobile-nav summary{list-style:none;color:var(--text-primary);padding:.4rem}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav nav{position:absolute;right:0;top:2.5rem;min-width:12rem;display:grid;gap:.15rem;padding:.5rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);box-shadow:0 8px 24px #0003}.mobile-nav nav a{padding:.65rem;color:var(--text-secondary);border-radius:4px}.mobile-nav nav a:hover{background:var(--surface-raised);color:var(--text-primary)}.page-main{min-height:65vh;padding-bottom:5rem}.skip-link{position:absolute;top:-4rem;left:1rem;z-index:99;padding:.65rem 1rem;border-radius:4px;background:var(--text-primary);color:var(--bg)}.skip-link:focus{top:1rem}.mono,code,pre{font-family:SFMono-Regular,Consolas,Liberation Mono,monospace}.muted{color:var(--text-secondary)}.eyebrow{color:var(--text-tertiary);font-size:.75rem;font-weight:500;line-height:1.5;letter-spacing:.06em;text-transform:uppercase}.hero{align-items:center;padding-block:clamp(4rem,9vw,7.5rem)}.article-header h1,.hero h1,.page-intro h1{margin-top:1.35rem;max-width:16ch;font-size:clamp(2.7rem,6vw,5rem);font-weight:650;letter-spacing:-.035em;line-height:1.05}.hero-copy{max-width:54ch;font-size:1.08rem;line-height:1.7}.hero-context,.hero-copy{margin-top:1.5rem;color:var(--text-secondary)}.hero-context{font-size:.875rem;line-height:1.65}.results-panel{padding:1.6rem}.result-item{display:grid;gap:.6rem;padding-block:1.5rem;border-bottom:1px solid var(--border)}.result-item:hover .result-detail{color:var(--accent-cyan)}.result-label{color:var(--text-secondary);font-size:1rem}.result-metric{display:flex;align-items:baseline;gap:.7rem;font-size:clamp(2.3rem,4vw,3.5rem);font-weight:550;letter-spacing:-.06em;line-height:1.15;font-variant-numeric:tabular-nums}.result-before{color:var(--text-secondary)}.result-arrow{align-self:center;color:var(--text-tertiary);font-size:.6em}.result-metric strong{color:var(--accent-cyan);font-weight:650}.result-unit{color:var(--text-secondary);font-size:.9rem;letter-spacing:0}.result-detail{display:flex;justify-content:space-between;gap:.75rem}.result-detail,.results-note{color:var(--text-secondary);font-size:.875rem;line-height:1.65}.results-note{padding-top:1rem}.button-row{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin-top:1.6rem}.button{display:inline-flex;min-height:2.8rem;align-items:center;justify-content:center;gap:.6rem;border:1px solid var(--border);border-radius:5px;padding:.68rem 1rem;font-size:1rem;font-weight:600;transition:border-color .15s,background-color .15s,color .15s}.button:hover{border-color:var(--border-hover)}.button-primary{background:var(--text-primary);color:var(--bg);border-color:var(--text-primary)}.button-primary:hover{background:var(--accent-cyan);border-color:var(--accent-cyan)}.button-secondary{background:var(--surface);color:var(--text-primary)}.button-small{min-height:2.5rem;padding:.42rem .7rem;font-size:.875rem}.status-dot{display:inline-block;width:.48rem;height:.48rem;margin-right:.4rem;border-radius:50%;background:var(--accent-emerald);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-emerald) 16%,transparent)}.hero-proof{display:flex;flex-wrap:wrap;gap:1.25rem;margin-top:2.3rem;color:var(--text-tertiary);font-size:.75rem;letter-spacing:.06em}.panel{border:1px solid var(--border);border-radius:6px;background:var(--surface)}.topology{position:relative;overflow:hidden;padding:1.35rem;background-image:linear-gradient(color-mix(in srgb,var(--border) 45%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--border) 45%,transparent) 1px,transparent 1px);background-size:28px 28px}.topology pre{overflow-x:auto;margin-top:1.5rem;color:var(--text-secondary);font-size:.875rem;line-height:1.65}.topology-foot{display:flex;justify-content:space-between;gap:.7rem;margin-top:1rem;color:var(--text-tertiary);font-size:.75rem;letter-spacing:.04em}.section-block{margin-top:clamp(3.5rem,8vw,6rem)}.first-section{margin-top:0}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding-bottom:.85rem;border-bottom:1px solid var(--border);color:var(--text-secondary);font-size:.875rem}.section-heading>.mono{color:var(--text-tertiary);font-size:.75rem;letter-spacing:.06em}.section-intro{max-width:70ch;margin:1rem 0;color:var(--text-secondary);font-size:1rem;line-height:1.65}.card-grid{gap:1px;margin-top:1rem;overflow:hidden;border:1px solid var(--border);border-radius:6px;background:var(--border)}.practice-card,.writing-card{padding:1.3rem;background:var(--surface)}.case-card h2,.case-card h3,.practice-card h2,.practice-card h3,.service-card h2,.writing-card h2{margin-top:.8rem;font-size:1.08rem;font-weight:600;letter-spacing:-.02em}.case-card p,.practice-card p,.writing-card p{max-width:65ch;margin-top:.7rem;color:var(--text-secondary);font-size:1rem;line-height:1.65}.practice-card:hover,.writing-card:hover{background:color-mix(in srgb,var(--surface) 92%,var(--accent-cyan))}.case-card{padding:1.3rem}.case-card h2 a:hover,.case-card h3 a:hover,.practice-card h2 a:hover,.text-link,.writing-card h2 a:hover{color:var(--accent-cyan)}.text-link{display:inline-flex;gap:.4rem;align-items:center;margin-top:1rem;font-size:.95rem;font-weight:550}.text-link:hover{text-decoration:underline;text-underline-offset:3px}.cta-panel{display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:4rem;padding:clamp(1.3rem,4vw,2rem)}.cta-panel h2{margin-top:.65rem;font-size:1.5rem;font-weight:600;letter-spacing:-.03em}.cta-panel p{margin-top:.5rem;max-width:55ch;color:var(--text-secondary);font-size:1rem;line-height:1.65}.page-intro{max-width:760px;padding-block:clamp(4rem,8vw,6rem) 2rem}.page-intro h1{max-width:18ch;font-size:clamp(2.5rem,5vw,4.2rem)}.page-intro>p{max-width:62ch;margin-top:1rem;font-size:1rem;line-height:1.7}.notice,.page-intro>p{color:var(--text-secondary)}.notice{margin-top:1.2rem;padding:.85rem 1rem;border:1px solid color-mix(in srgb,var(--accent-emerald) 28%,var(--border));border-radius:4px;font-family:inherit;font-size:.875rem;letter-spacing:0;line-height:1.65}.service-card{padding:1.35rem}.service-card h2{font-size:1.25rem}.service-flow{display:grid;gap:1rem;margin-top:1.2rem}.service-flow p{max-width:65ch;margin-top:.35rem;color:var(--text-secondary);font-size:1rem;line-height:1.65}.deliverables-label{margin-top:1.2rem}.tag-list{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.7rem}.tag,.tag-button,.tag-list li{border:1px solid var(--border);border-radius:4px;padding:.28rem .48rem;color:var(--text-secondary);background:var(--surface-raised);font-size:.875rem}.tag-button{font-family:inherit}.tag-button.is-active,.tag-button:hover{color:var(--text-primary);border-color:var(--border-hover)}.filter-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:.6rem;padding:1rem}.field{width:100%;min-height:2.8rem;border:1px solid var(--border);border-radius:4px;padding:.65rem .75rem;background:var(--bg);color:var(--text-primary);font-size:1rem}.field::-moz-placeholder{color:var(--text-tertiary)}.field::placeholder{color:var(--text-tertiary)}.search-field{max-width:34rem}.filter-tags{margin-top:.4rem}.post-list{border-top:1px solid var(--border)}.post-row{border-bottom:1px solid var(--border);padding:1.5rem 1.3rem}.empty-state{padding:2rem 0;color:var(--text-secondary)}.article-layout{width:min(100%,1050px);margin-inline:auto}.article-layout.has-toc{display:grid;grid-template-columns:minmax(0,220px) minmax(0,790px);align-items:start;justify-content:center;gap:2rem}.article-toc{position:sticky;top:5.5rem;max-height:calc(100vh - 7rem);overflow:auto;padding:1rem}.article-toc nav{display:grid;gap:.35rem;margin-top:.8rem}.article-toc nav a{border-left:1px solid var(--border);padding:.3rem .6rem;color:var(--text-secondary);font-size:.875rem;line-height:1.5}.article-toc nav a:hover{border-color:var(--accent-cyan);color:var(--accent-cyan)}.article-shell{width:min(100%,790px);margin-inline:auto;padding-block:3rem 5rem}.article-layout.has-toc .article-shell{width:100%}.back-link{display:inline-block;color:var(--text-tertiary);font-size:.8125rem;letter-spacing:.04em}.back-link:hover{color:var(--accent-cyan)}.article-header{padding-block:2.5rem 1.8rem}.article-header h1{max-width:20ch;font-size:clamp(2.4rem,5vw,3.8rem)}.article-header>p{margin-top:1rem;font-size:1.05rem;line-height:1.7}.article-header>p,.prose{color:var(--text-secondary)}.prose{max-width:70ch;font-size:1rem;line-height:1.75}.prose h2{margin:2.2rem 0 .7rem;font-size:1.4rem;letter-spacing:-.025em}.prose h2,.prose h3{color:var(--text-primary)}.prose h3{margin:1.8rem 0 .6rem;font-size:1.1rem}.prose ol,.prose p,.prose ul{margin-top:.85rem}.prose ol,.prose ul{padding-left:1.3rem;list-style:disc}.prose ol{list-style:decimal}.prose li{margin-top:.4rem;padding-left:.2rem}.prose a{color:var(--accent-cyan);text-decoration:underline;text-underline-offset:3px}:root[data-theme=light] .prose img[src$="-flow.svg"]{filter:invert(1) hue-rotate(180deg)}.prose img{width:100%;height:auto;margin-top:1.2rem}.prose img,.prose pre{border:1px solid var(--border);border-radius:5px;background:var(--bg)}.prose pre{overflow-x:auto;margin-top:1rem;padding:1rem;font-size:.875rem;line-height:1.7}.prose code,.prose pre{color:var(--text-primary)}.prose code{border-radius:3px;padding:.1rem .25rem;background:var(--surface-raised);font-size:.88em}.prose pre code{padding:0;background:transparent}.prose .chroma{overflow-x:auto;margin-top:1rem;border:1px solid var(--border);border-radius:5px;background:#0d1117;color:#e6edf3}.prose .chroma code,.prose .chroma pre{color:inherit}.prose .chroma :is(.c,.ch,.cm,.c1,.cs,.na,.ln,.lnt){color:#8b92a6}.prose .chroma .code-header{color:#8b92a6;border-color:#2a3347}.prose .chroma .code-copy{color:#e6edf3;background:#12151e;border-color:#2a3347}.prose .code-frame{min-width:0;max-width:100%}.prose .chroma pre{margin:0;border:0;border-radius:0;background:transparent}.code-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--border);padding:.5rem .75rem;color:var(--text-tertiary);font-size:.75rem;letter-spacing:.04em}.code-copy{border:1px solid var(--border);border-radius:3px;padding:.25rem .45rem;color:var(--text-secondary);background:var(--surface);font:inherit}.code-copy:hover{border-color:var(--border-hover);color:var(--text-primary)}.article-end{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:3rem;padding:1rem}.tool-intro{padding-bottom:1.5rem}.tool-panel{display:grid;gap:1rem;padding:clamp(1rem,3vw,1.5rem)}.tool-panel h2{font-size:1.2rem;font-weight:600}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field-wrap{display:grid;gap:.5rem}.field-hint,.privacy-note{color:var(--text-tertiary);font-size:.875rem;line-height:1.65}.privacy-note{letter-spacing:.04em}.result-box{min-height:3.5rem;overflow-wrap:anywhere;border:1px solid var(--border);border-radius:4px;padding:.85rem;background:var(--bg);color:var(--text-secondary);font-size:1rem;line-height:1.7}.result-pre{white-space:pre-wrap}.tool-stack{display:grid;gap:1rem}.textarea{resize:vertical}.contact-grid{padding-bottom:4rem}.contact-email{overflow-wrap:anywhere;font-size:clamp(1.2rem,3vw,2rem);font-weight:550;letter-spacing:-.04em}.contact-grid .button-row{margin-top:.5rem}.contact-hint{color:var(--text-secondary);font-size:.875rem;line-height:1.65}.experience-details summary,.webmail-options summary{cursor:pointer;color:var(--text-primary);font-size:1rem;font-weight:550}.webmail-options .text-link{margin-top:.5rem}.about-section{padding-block:1rem}.about-section h2{margin-top:1rem;font-size:clamp(1.8rem,3vw,2.4rem);line-height:1.15;font-weight:600;letter-spacing:-.04em}.about-copy{max-width:65ch;color:var(--text-secondary);font-size:1rem;line-height:1.75}.about-copy p+p{margin-top:1rem}.experience-details{margin-top:1.5rem;padding-block:1rem;border-block:1px solid var(--border)}.experience-content{display:grid;gap:1.25rem;padding-top:1.25rem}.experience-role h3{color:var(--text-primary);font-size:1rem;line-height:1.4;font-weight:600}.experience-role p{margin-top:.35rem}.profile-links{display:flex;gap:1.5rem}.contact-aside{padding-top:.6rem}.check-list{display:grid;gap:.8rem;margin-top:1rem;color:var(--text-secondary);font-size:1rem;line-height:1.65}.check-list li{padding-left:1.2rem;position:relative}.check-list li:before{content:"→";position:absolute;left:0;color:var(--accent-emerald)}.contact-note{margin-top:2rem;padding:1.1rem}.contact-note p{margin-top:.7rem;color:var(--text-secondary);font-size:.875rem;line-height:1.65}.form-status{min-height:1.4rem;color:var(--accent-emerald);font-size:.875rem}.site-footer{border-top:1px solid var(--border);background:var(--surface)}.footer-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem;padding-block:2rem}.footer-copy{max-width:45ch;margin-top:.7rem;font-size:1rem;line-height:1.65}.footer-copy,.footer-links{color:var(--text-secondary)}.footer-links{display:flex;flex-wrap:wrap;gap:.7rem 1rem;align-content:start;font-size:.95rem}.footer-links a:hover{color:var(--accent-cyan)}.footer-meta{grid-column:1/-1;color:var(--text-tertiary);font-size:.75rem;letter-spacing:.04em}@media (min-width:768px){.service-flow{grid-template-columns:1fr 1fr}.filter-panel{grid-template-columns:auto minmax(15rem,1fr);align-items:center}.filter-tags{grid-column:1/-1}.footer-grid{grid-template-columns:2fr 1.5fr}}@media (min-width:1100px){.footer-grid{grid-template-columns:minmax(0,1fr) auto}.footer-links{flex-wrap:nowrap;white-space:nowrap}}@media (max-width:1099px){.article-layout.has-toc{display:flex;flex-direction:column}.article-toc{position:static;width:100%;max-height:none}.article-layout.has-toc .article-shell{width:min(100%,790px)}}@media (max-width:760px){.desktop-nav{display:none}.mobile-nav{display:block}.header-actions{margin-left:auto}.hero{padding-top:4rem}.field-grid{grid-template-columns:1fr}.cta-panel{align-items:flex-start;flex-direction:column}}@media (max-width:480px){.shell{width:min(100% - 1.25rem,1180px)}.site-header .shell{gap:.5rem}.brand{font-size:.875rem;letter-spacing:0}.brand-name{display:none}.brand-short{display:inline}.header-actions{gap:.4rem}.button-small{padding-inline:.6rem}.results-panel{padding:1.25rem}.hero-proof{gap:.65rem}.topology{padding:1rem .7rem}.section-heading{gap:.45rem}.article-end,.section-heading{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (min-width:768px){.md\:col-span-4{grid-column:span 4/span 4}.md\:col-span-8{grid-column:span 8/span 8}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1024px){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-7{grid-column:span 7/span 7}}