:root{--paper:#f5f3ed;--ink:#253d34;--muted:#606b60;--line:#cdd1c5;--accent:#8f573b;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.wrap{width:min(1380px,90%);margin:auto}header{height:110px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:var(--serif);font-size:38px;font-weight:bold;letter-spacing:-3px}.dot{color:var(--accent)}nav{display:flex;gap:38px;font-size:13px} .nav-contact{font-size:13px}.nav-contact span{margin-left:24px}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:5%;padding-top:65px;padding-bottom:65px}.hero-copy{padding-top:15px}.eyebrow,.section-label{font-size:10px;letter-spacing:1.7px;font-weight:600;line-height:1.7}.status-dot{display:inline-block;background:var(--accent);height:6px;width:6px;border-radius:50%;margin-right:9px}h1{font-size:clamp(76px,8.5vw,130px);font-weight:400;letter-spacing:-.075em;line-height:.97;margin:46px 0 28px}h2{font-family:var(--serif);font-size:clamp(40px,4.3vw,66px);font-weight:400;letter-spacing:-.045em;line-height:1.09;margin:0 0 34px}em{font-weight:400}.hero-line{font-family:var(--serif);font-size:36px;line-height:1.18;letter-spacing:-1px;margin:0 0 24px}.hero-description{color:var(--muted);font-size:15px;line-height:1.8;margin-bottom:30px}.hero-description a{border-bottom:0;text-decoration:none}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:42px;padding:12px 0;border-bottom:1px solid var(--ink);font-size:12px}.text-link span{font-size:18px}.portrait{position:relative;background:transparent;align-self:start;margin-top:-20px}.portrait img{display:block;width:100%;height:560px;object-fit:cover;object-position:50% 35%;mix-blend-mode:multiply}.portrait-label{position:absolute;top:16px;left:20px;font-size:8px;letter-spacing:1.5px;z-index:1}.portrait-foot{padding:19px 20px;display:flex;justify-content:space-between;background:#eae9e1;font-size:8px;letter-spacing:1px}.discipline{border-block:1px solid var(--line);padding:24px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:2px}.discipline i{font-size:22px;font-style:normal;color:#919b8c;font-weight:300}.section{padding-top:110px;padding-bottom:110px;display:grid;grid-template-columns:24% 76%}.section-label{padding-top:9px}.lead{font-size:21px;line-height:1.5;max-width:610px;margin-bottom:48px;color:var(--muted)}.bio-columns{columns:2;column-gap:48px}.bio-columns article{break-inside:avoid;margin-bottom:28px}.bio-columns h3{font-size:15px;font-weight:600;margin:0 0 12px}.bio-columns p{font-size:14px;color:var(--muted);line-height:1.95;margin:0}.intro .text-link{margin-top:20px}.work{background:#e9ece3;border-block:1px solid var(--line)}.work-heading{display:grid;grid-template-columns:1.4fr 1fr;gap:35px}.work-heading p{font-size:14px;line-height:1.8;margin:10px 0;color:var(--muted)}.platform{grid-column:1/-1;display:grid;grid-template-columns:1.16fr 1fr;gap:8%;margin-top:30px;align-items:center}.terrain{position:relative;aspect-ratio:1.25;background:#d9e1d1;overflow:hidden}.terrain svg{width:100%;height:100%;stroke:#92a58d;stroke-width:.9}.terrain path{animation:terrain 14s ease-in-out infinite alternate;transform-origin:center}.terrain-mark{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:180px;letter-spacing:-15px;color:#294735}.terrain-mark span{color:var(--accent)}.terrain-caption{position:absolute;bottom:22px;left:22px;right:22px;display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px}.platform-copy h3{font-family:var(--serif);font-weight:400;font-size:54px;letter-spacing:-2px;margin:16px 0 24px}.platform-copy h3 span{font-family:Arial;font-size:17px;vertical-align:top;line-height:2}.platform-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:var(--muted)}.platform-copy ul{list-style:none;padding:0;margin:28px 0}.platform-copy li{padding:14px 0;border-top:1px solid #c6cebf;font-size:12px}.platform-copy li span{font-size:9px;color:var(--accent);margin-right:20px}.work-note{grid-column:2;font-size:12px;line-height:1.8;color:var(--muted);margin:35px 0 0;max-width:640px}.credentials{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:48px 0}.credentials strong{display:block;font-family:var(--serif);font-weight:400;font-size:35px;margin-bottom:10px}.credentials span{display:block;max-width:180px;font-size:11px;line-height:1.7;color:var(--muted)}.award{display:grid;grid-template-columns:30% 1fr 20px;gap:20px;border-top:1px solid var(--line);padding:23px 0;align-items:baseline}.award>span:first-child{font-size:10px;color:var(--muted)}.award h3{font-weight:400;font-size:16px;line-height:1.5;margin:0}.source-note{font-size:10px;line-height:1.8;color:var(--muted);margin-top:22px}.source-note a{text-decoration:underline}.connect{border-top:1px solid var(--line);padding:70px 0 80px}.connect h2{font-size:clamp(48px,6vw,88px);margin-top:35px}.connect-bottom{display:flex;gap:45px;align-items:center;justify-content:space-between}.connect-bottom p{font-size:13px;line-height:1.8;color:var(--muted)}.button{background:var(--ink);color:var(--paper);padding:23px 28px;font-size:12px;display:flex;gap:65px;align-items:center}.button:hover{background:var(--accent);color:white}footer{border-top:1px solid var(--line);padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}footer>span,footer>a:not(.wordmark){font-size:9px;color:var(--muted)}.skip{position:fixed;top:-100px;padding:12px;background:var(--ink);color:white;z-index:5}.skip:focus{top:0}@keyframes terrain{to{transform:translateY(-9px) scale(1.025)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.terrain path{animation:none}}@media(min-width:1600px){.portrait img{height:680px}}@media(max-width:900px){header{height:90px}.hero{gap:4%;padding-top:40px}.portrait img{height:480px}h1{font-size:86px}.hero-line{font-size:29px}.portrait-foot{font-size:6px;padding:14px 10px}.section{grid-template-columns:1fr;padding:70px 0}.section-label{margin-bottom:30px}.work-heading{grid-column:1}.platform{gap:5%}.platform-copy h3{font-size:43px}.work-note{grid-column:1}.connect-bottom{gap:25px}.button{gap:20px}}@media(max-width:600px){.wrap{width:88%}header{height:82px}nav{gap:18px;font-size:11px}nav a:last-child{display:none}.nav-contact{font-size:11px}.nav-contact span{margin-left:7px}.wordmark{font-size:31px}.hero{grid-template-columns:1fr;padding-top:28px;gap:35px;padding-bottom:35px}.hero-copy{padding:0}h1{font-size:clamp(64px,14.8vw,89px);margin-top:32px}.hero-line{font-size:32px}.hero-description{font-size:14px}.portrait img{height:auto;max-height:570px;object-fit:cover;object-position:top}.portrait-label{font-size:7px}.portrait-foot{font-size:7px}.discipline{font-size:7px;letter-spacing:.6px;padding:18px 0;gap:10px}.discipline i{font-size:17px}.bio-columns{columns:1}.bio-columns p{font-size:14px}.lead{font-size:19px;margin-bottom:30px}h2{font-size:43px}.work-heading,.platform{grid-template-columns:1fr}.platform-copy{padding-top:30px}.terrain{aspect-ratio:1.3}.credentials{gap:18px;margin:35px 0}.credentials strong{font-size:28px}.credentials span{font-size:10px}.award{grid-template-columns:1fr 20px;gap:10px}.award>span:first-child{grid-column:1/-1}.award h3{font-size:16px}.connect{padding:50px 0}.connect h2{font-size:49px}.connect-bottom{align-items:flex-start;flex-direction:column;gap:16px}.button{width:100%;justify-content:space-between}footer{flex-wrap:wrap;justify-content:flex-start}footer>span{flex:1;min-width:70%}footer>a:last-child{margin-left:auto}}

.company-recognition{margin-top:32px;padding:24px 0;border-top:1px solid var(--line)}.company-recognition h3{font-size:15px;margin:0 0 12px}.company-recognition p{font-size:13px;line-height:1.9;color:var(--muted);max-width:730px}

.company-recognition{margin-top:64px;padding-top:40px}.company-recognition>h3{font-family:var(--serif);font-size:38px;font-weight:400;letter-spacing:-1px;margin:12px 0 28px}.inc-feature{display:flex;align-items:center;gap:38px;padding:38px;background:var(--ink);color:var(--paper);margin-bottom:28px}.inc-number{font-family:var(--serif);font-size:130px;line-height:1;letter-spacing:-9px;flex-shrink:0}.inc-number span{font-size:64px;vertical-align:middle;letter-spacing:-4px}.company-recognition .inc-copy p{color:#e0e5dc;margin:10px 0 0;font-size:13px}.company-recognition .inc-copy .eyebrow{font-size:9px;letter-spacing:1.3px;margin:0 0 10px}.inc-copy h4{font-family:var(--serif);font-size:51px;font-weight:400;letter-spacing:-2px;margin:0}.company-award{display:grid;grid-template-columns:30% 1fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.award-publisher{font-size:12px;font-weight:600;padding-top:3px}.company-award h4{font-size:16px;font-weight:400;line-height:1.5;margin:0}.company-recognition .company-award p{font-size:11px;margin:7px 0 0}.company-recognition .additional-honors{margin-top:25px}@media(max-width:600px){.inc-feature{padding:26px;gap:15px;flex-direction:column;align-items:flex-start}.inc-number{font-size:100px}.inc-copy h4{font-size:46px}.company-award{grid-template-columns:1fr;gap:10px}.company-recognition>h3{font-size:33px}}

/* Text-led platform section after removal of the illustration. */
.work .platform{grid-column:2;display:block;margin-top:20px;max-width:760px}.work .platform-copy{padding-top:0}.work .platform-copy>p:not(.eyebrow){max-width:640px}.work .platform-copy ul{max-width:640px}@media(max-width:900px){.work .platform{grid-column:1}}

footer .footer-resources{display:flex;gap:18px;flex-wrap:wrap}footer .footer-resources a{font-size:9px;color:var(--muted)}@media(max-width:600px){footer .footer-resources{gap:16px}footer .footer-resources a:last-child{display:inline}}

[hidden]{display:none!important}.header-actions{display:flex;align-items:center;gap:28px}.view-toggle{display:flex;border:1px solid var(--line);border-radius:5px;padding:3px;background:transparent;color:var(--ink);cursor:pointer;font:11px Arial,sans-serif;gap:3px}.view-toggle span{padding:7px 10px;border-radius:3px}.view-toggle[aria-pressed="false"] .toggle-html,.view-toggle[aria-pressed="true"] .toggle-md{background:var(--ink);color:var(--paper)}.view-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.view-toggle:disabled{opacity:.5;cursor:wait}.markdown-mode header>nav,.markdown-mode .nav-contact,.markdown-mode footer{display:none}.markdown-view{padding:32px 0 70px;max-width:1100px}.markdown-view pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;margin-top:30px}.view-status{padding:15px 0;color:var(--accent);font-size:13px}@media(max-width:700px){.header-actions{gap:12px}header>.header-actions .nav-contact{display:none}header>nav{gap:14px}.view-toggle span{padding:7px 8px}}@media(max-width:360px){header>nav{gap:9px;font-size:10px}.view-toggle span{padding:6px}.header-actions{gap:0}}

.contact-buttons{display:flex;gap:12px;flex-wrap:wrap}.contact-buttons .button{gap:24px}.email-button{background:transparent;color:var(--ink);border:1px solid var(--ink)}.connect-bottom{flex-wrap:wrap}@media(max-width:600px){.contact-buttons{width:100%}.contact-buttons .button{width:100%;justify-content:space-between}}

/* Keep contact actions together on the right, with equal spacing. */
.connect-bottom{justify-content:flex-start;gap:24px}.connect-bottom>p{margin-right:auto}.contact-buttons{margin-left:auto;justify-content:flex-end;align-items:center;gap:24px}.contact-buttons .button{padding:22px 27px;border:1px solid var(--ink)}.contact-buttons .text-link{flex-shrink:0}@media(max-width:600px){.contact-buttons{flex-direction:column;align-items:stretch;gap:24px}.contact-buttons .text-link{align-self:flex-end}.connect-bottom>p{margin-right:0}}
/* Preserve the navbar mark's dimensions while its letters decode. */
header .brand-letters{display:inline-grid;vertical-align:baseline}
header .brand-original,header .brand-scramble{grid-area:1/1}
header .brand-original{visibility:hidden}
header .brand-scramble{width:100%;max-width:0;overflow:visible;white-space:nowrap}

/* Terrain gently resolves into structured data. */
.contour-art{grid-column:1/-1;margin:18px 0 32px;overflow:hidden;border-block:1px solid #c6cebf;pointer-events:none}
.contour-art svg{display:block;width:100%;height:260px}
.contour-lines{stroke:#718b72;stroke-width:1;opacity:.65}
.data-nodes{fill:var(--accent);opacity:0}
.coverage{border-top:1px solid var(--line)}
.press-story{display:grid;grid-template-columns:150px 1fr 24px;gap:28px;padding:30px 0;border-top:1px solid var(--line)}
.press-meta{font-size:10px;line-height:1.8;display:flex;flex-direction:column;gap:8px}
.press-meta>span{font-weight:600;letter-spacing:.6px}.press-meta time{color:var(--muted)}
.press-story h3{font-family:var(--serif);font-size:28px;font-weight:400;letter-spacing:-.6px;margin:0 0 12px;line-height:1.2}
.press-story p{font-size:13px;line-height:1.8;color:var(--muted);margin:0;max-width:540px}
.press-arrow{font-size:22px;transition:transform .25s}.press-story:hover .press-arrow{transform:translate(3px,-3px)}
@media(max-width:600px){.contour-art svg{height:180px;width:160%;max-width:none;margin-left:-30%}.press-story{grid-template-columns:1fr 20px;gap:16px}.press-meta{grid-column:1/-1;flex-direction:row;justify-content:space-between}.press-story h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.press-arrow{transition:none}}

/* Coverage links use typography without a separate arrow column. */
.press-story{grid-template-columns:150px 1fr}@media(max-width:600px){.press-story{grid-template-columns:1fr}}

/* Shared, stable-width text scramble for navigation and contact links. */
.brand-letters{display:inline-grid;position:relative;vertical-align:baseline}
.brand-original,.brand-scramble{grid-area:1/1}
.brand-original{visibility:hidden}
.brand-scramble{position:absolute;inset:0;white-space:nowrap}
header .brand-scramble{max-width:none}

/* Scramble wrappers inherit the original 12px contact-link type size. */
.contact-buttons .text-link .brand-letters,.contact-buttons .text-link .brand-original,.contact-buttons .text-link .brand-scramble{font-size:inherit}

.ascii-portrait{position:absolute;pointer-events:none;z-index:1}

/* Quiet technical details; content remains visible without JavaScript. */
.contour-art{pointer-events:auto}
.reading-progress-track{position:fixed;inset:0 0 auto;height:4px;background:#e4d9cf;z-index:1000;pointer-events:none}
.reading-progress{height:100%;width:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}
.section-label.section-rule:after{content:"";display:block;width:40px;height:1px;background:var(--accent);margin-top:14px}
.press-story,.award,.company-award,.inc-feature{position:relative}
.press-story:before,.award:before,.company-award:before,.inc-feature:before{content:"";position:absolute;top:8px;right:0;width:11px;height:11px;border-top:1px solid var(--accent);border-right:1px solid var(--accent);opacity:0;transform:translate(-5px,5px);transition:opacity .2s ease,transform .2s ease;pointer-events:none}
.press-story:hover:before,.press-story:focus-visible:before,.award:hover:before,.company-award:hover:before,.inc-feature:hover:before{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.tech-reveal{opacity:1;transform:none;transition:none}.section-label.tech-reveal:after{transform:none;transition:none}.press-story:before,.award:before,.company-award:before,.inc-feature:before{transition:none}}
@media print{.reading-progress-track,.reading-progress,.ascii-portrait{display:none}.tech-reveal{opacity:1;transform:none}}

/* Profile utilities and persistent section orientation. */
header.wrap{position:sticky;top:0;z-index:20;background:var(--paper);isolation:isolate;transform:translateZ(0)}
header nav a,.nav-contact{position:relative}
header a[aria-current="location"]{color:var(--accent)}
header a[aria-current="location"]:after{content:"";position:absolute;left:50%;bottom:-12px;width:4px;height:4px;border-radius:50%;background:var(--accent)}
html{scroll-padding-top:135px}
.header-actions{gap:16px}
.utility-button,.profile-menu summary{font:11px Arial,sans-serif;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:5px;padding:10px;cursor:pointer;white-space:nowrap}
.utility-button:focus-visible,.profile-menu summary:focus-visible,.profile-panel button:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.profile-menu{position:relative}
.profile-menu summary{list-style:none}
.profile-menu summary::-webkit-details-marker{display:none}
.profile-panel{position:absolute;right:0;top:calc(100% + 12px);width:215px;padding:12px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 30px #0002;display:grid;gap:8px}
.profile-panel button,.profile-panel a{font:12px Arial,sans-serif;text-align:left;padding:10px;background:transparent;color:var(--ink);border:0;cursor:pointer}
.profile-panel button:hover,.profile-panel a:hover{color:var(--accent)}
:root[data-theme="evening"]{color-scheme:dark;--paper:#17231f;--ink:#eeeae0;--muted:#b3bdb2;--line:#3d4b42;--accent:#d39b78}
[data-theme="evening"] .portrait{background:transparent}
[data-theme="evening"] .portrait img{mix-blend-mode:normal}
[data-theme="evening"] .portrait-foot{background:#29372f;color:var(--ink)}
[data-theme="evening"] .work{background:#202e26}
[data-theme="evening"] .contour-art{border-color:#4b5d4e}
[data-theme="evening"] .contour-lines{stroke:#9baa8d}
[data-theme="evening"] .reading-progress-track{background:#3f4137}
[data-theme="evening"] .terrain{background:#293b2b}
@media(max-width:1100px){header nav{gap:18px}.header-actions{gap:10px}}
@media(max-width:800px){header.wrap{height:auto;min-height:105px;flex-wrap:wrap;padding-block:16px;gap:16px}header>nav{order:3;width:100%;justify-content:space-between}.header-actions{margin-left:auto}.header-actions .nav-contact{display:none}html{scroll-padding-top:140px}}
@media(max-width:420px){.header-actions{gap:6px}.utility-button,.profile-menu summary{padding:9px 7px;font-size:10px}.view-toggle span{padding:6px}.wordmark{font-size:32px}}
@media print{header.wrap{position:static}.header-actions{display:none}:root[data-theme="evening"]{--paper:#fff;--ink:#253d34;--muted:#606b60;--line:#cdd1c5;--accent:#8f573b}}

[data-theme="evening"] .inc-feature{background:#2b4033;color:var(--ink)}

/* Full-width sticky header with content aligned to the page grid. */
header.wrap{width:100%;max-width:none;padding-inline:max(5%,calc((100% - 1380px)/2))}
@media(max-width:600px){header.wrap{padding-inline:6%}}

/* Sun/moon theme switch. */
#theme-toggle{width:36px;height:36px;padding:8px;border:0;display:grid;place-items:center;flex-shrink:0}
.theme-orbit{display:block;transition:transform .6s cubic-bezier(.2,.7,.2,1);transform:rotate(0deg)}
.theme-sun,.theme-moon{transform-origin:12px 12px;transition:opacity .3s ease,transform .5s ease}
.theme-sun{opacity:0;transform:scale(.5)}
.theme-moon{opacity:1}
[data-theme="evening"] .theme-orbit{transform:rotate(180deg)}
[data-theme="evening"] .theme-sun{opacity:1;transform:scale(1)}
[data-theme="evening"] .theme-moon{opacity:0;transform:scale(.5)}
@media(prefers-reduced-motion:reduce){.theme-orbit,.theme-sun,.theme-moon{transition:none}}

/* Keep the daylight bitmap and its ASCII overlay out of the first dark frame. */
[data-theme="evening"] .portrait:not([data-evening-ready]) img,
[data-theme="evening"] .portrait:not([data-evening-ready]) .ascii-portrait{visibility:hidden}

/* Group section links beside the profile controls with equal spacing. */
header.wrap{column-gap:24px}header>nav{margin-left:auto;gap:24px;align-items:center}header>nav a{white-space:nowrap}
@media(max-width:1100px){header.wrap{column-gap:18px}header>nav{gap:18px}}
@media(max-width:800px){header>nav{margin-left:0;gap:18px;justify-content:flex-end}}
@media(max-width:600px){header>nav{justify-content:space-between;gap:12px}header>nav a:last-child{display:block}}

/* Profile shares the typography and spacing of the section links. */
.profile-menu summary{font:inherit;border:0;border-radius:0;padding:0;background:transparent}
.profile-menu summary:hover{color:var(--accent)}
@media(max-width:420px){.profile-menu summary{font:inherit;padding:0}}

@media(max-width:600px){header>nav{flex-wrap:wrap;gap:12px}}

/* Compact mobile navigation, progressively enhanced from ordinary links. */
.mobile-menu-toggle{display:none;border:0;background:none;color:var(--ink);font:12px Arial,sans-serif;min-height:44px;padding:8px;cursor:pointer}
.mobile-menu-toggle span{display:inline-block;margin-left:7px;transition:transform .25s ease}
.menu-open .mobile-menu-toggle span{transform:rotate(45deg)}
@media(max-width:800px){
  header.menu-enabled{min-height:78px;padding-block:12px;row-gap:0}
  .mobile-menu-toggle{display:block}
  header.menu-enabled>nav{display:none}
  header.menu-enabled.menu-open>nav{display:flex;flex-direction:column;align-items:stretch;gap:0;padding-top:12px;max-height:calc(100dvh - 100px);overflow-y:auto;animation:menu-reveal .2s ease}
  header.menu-enabled>nav>a,header.menu-enabled .profile-menu>summary{display:flex;align-items:center;min-height:48px;padding:12px 0;font-size:15px;border-top:1px solid var(--line)}
  header.menu-enabled .profile-panel{position:static;width:100%;box-shadow:none;border:0;padding:0 0 12px;gap:0}
  header.menu-enabled .profile-panel a,header.menu-enabled .profile-panel button{display:block;min-height:44px;white-space:normal}
  header.menu-enabled a[aria-current="location"]:after{display:none}
  html{scroll-padding-top:100px}
}
@keyframes menu-reveal{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}
.markdown-mode .mobile-menu-toggle{display:none}
@media(prefers-reduced-motion:reduce){header.menu-enabled.menu-open>nav{animation:none}.mobile-menu-toggle span{transition:none}}
@media print{.mobile-menu-toggle{display:none!important}}
.mobile-menu-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

#copy-status{font-size:11px;line-height:1.5;color:var(--muted)}
#copy-status:empty{display:none}

.command-menu{width:min(560px,calc(100% - 32px));max-height:85dvh;padding:0;margin:12vh auto auto;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);box-shadow:0 24px 90px #0004;overflow:hidden}
.command-menu::backdrop{background:#101c17aa}
.command-top{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 10px}
.command-top label{font:10px Arial,sans-serif;letter-spacing:2px;color:var(--muted)}
.command-close{font:10px monospace;background:none;color:var(--muted);border:1px solid var(--line);border-radius:4px;padding:6px;cursor:pointer}
#command-search{display:block;width:100%;padding:12px 22px 20px;border:0;border-bottom:1px solid var(--line);border-radius:0;outline:none;background:transparent;color:var(--ink);font:20px/1.4 Georgia,serif}
#command-search:focus-visible{box-shadow:inset 0 -2px var(--accent)}
#command-results{max-height:46dvh;overflow-y:auto;padding:8px}
#command-results [role="option"]{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:44px;padding:12px 14px;border-radius:5px;font:13px/1.4 Arial,sans-serif;cursor:pointer}
#command-results [aria-selected="true"],#command-results [role="option"]:hover{background:var(--ink);color:var(--paper)}
#command-results small{font:9px monospace;text-transform:uppercase;letter-spacing:1px;opacity:.65}
.command-help{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:14px 22px;font:10px/1.5 monospace;color:var(--muted)}
.command-empty{padding:20px 22px;color:var(--muted);font-size:13px}
.command-close:focus-visible{outline:2px solid var(--accent)}
@media(max-width:600px){.command-menu{margin-top:7vh}.command-help{font-size:9px;padding-inline:16px}#command-results small{font-size:8px}}
@media print{.command-menu{display:none!important}}

::selection{background:#d4a383;color:#17231f}
[data-theme="evening"] ::selection{background:#d39b78;color:#17231f}
.press-story:hover,.press-story:focus-visible{background:color-mix(in srgb,var(--accent) 7%,transparent);box-shadow:inset 2px 0 var(--accent)}
.press-story:before{display:none}
.discipline,.connect,.coverage{position:relative}
.discipline:before,.connect:before,.coverage:before{content:"";position:absolute;top:-4px;left:0;width:100%;height:7px;pointer-events:none;background:linear-gradient(var(--accent),var(--accent)) left center/1px 7px no-repeat,linear-gradient(var(--accent),var(--accent)) right center/1px 7px no-repeat;opacity:.65}
.discipline:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:7px;pointer-events:none;background:linear-gradient(var(--accent),var(--accent)) left center/1px 7px no-repeat,linear-gradient(var(--accent),var(--accent)) right center/1px 7px no-repeat;opacity:.65}
a[data-scramble] .brand-letters,a[data-scramble] .brand-original,a[data-scramble] .brand-scramble{font-size:inherit}
@media print{.discipline:before,.discipline:after,.connect:before,.coverage:before{display:none}}

/* Keep the portrait blended into the page background. */
.portrait{background:var(--paper)}

/* Crosshair accents beside section labels. */
.section-label{position:relative}
.section-label:before{content:"";position:absolute;left:-20px;top:13px;width:9px;height:9px;background:linear-gradient(var(--accent),var(--accent)) center/1px 9px no-repeat,linear-gradient(var(--accent),var(--accent)) center/9px 1px no-repeat;opacity:.5;pointer-events:none}
@media(max-width:600px){.section-label:before{left:-15px;width:7px}}
@media print{.section-label:before{display:none}}

/* Inset news content from the copper hover edge without shifting on hover. */
.press-story{padding-inline:18px}

/* Right-aligned footer with the resource links’ existing spacing throughout. */
footer.wrap{--footer-gap:18px;justify-content:flex-end;flex-wrap:wrap;gap:var(--footer-gap);text-align:right}
footer.wrap>span{flex:0 1 auto;min-width:0}
footer.wrap>a:last-child{margin-left:0}
footer.wrap .footer-resources{justify-content:flex-end;gap:var(--footer-gap)}
@media(max-width:600px){footer.wrap{--footer-gap:16px}}

/* Pointer-only copper light, clipped to the contour illustration. */
.contour-art{position:relative;isolation:isolate}
.contour-spotlight{position:absolute;inset:0;pointer-events:none;mask-image:radial-gradient(circle 140px at var(--pointer-x,50%) var(--pointer-y,50%),#000 35%,transparent 100%);opacity:0;transition:opacity .2s ease;z-index:2}
.contour-art svg{position:relative;z-index:1}
.contour-art.spotlight-active .contour-spotlight{opacity:1}
/* Open portrait corners, without a surrounding border or background. */
.portrait:before,.portrait-foot:before{content:"";position:absolute;left:12px;right:12px;height:18px;z-index:2;pointer-events:none;color:var(--line);transition:color .2s ease}
.portrait:before{top:12px;background:linear-gradient(currentColor,currentColor) left top/18px 1px no-repeat,linear-gradient(currentColor,currentColor) left top/1px 18px no-repeat,linear-gradient(currentColor,currentColor) right top/18px 1px no-repeat,linear-gradient(currentColor,currentColor) right top/1px 18px no-repeat}
.portrait-foot{position:relative}
.portrait-foot:before{top:-30px;background:linear-gradient(currentColor,currentColor) left bottom/18px 1px no-repeat,linear-gradient(currentColor,currentColor) left bottom/1px 18px no-repeat,linear-gradient(currentColor,currentColor) right bottom/18px 1px no-repeat,linear-gradient(currentColor,currentColor) right bottom/1px 18px no-repeat}
.portrait:hover:before,.portrait:hover .portrait-foot:before{color:var(--accent)}
/* Copper underline grows over the existing rule, keeping link dimensions fixed. */
a[data-scramble]{position:relative}
a[data-scramble]:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:center;transition:transform .25s ease;pointer-events:none}
a[data-scramble]:hover:after,a[data-scramble]:focus-visible:after{transform:scaleX(1)}
@media(prefers-reduced-motion:reduce){.contour-spotlight{display:none}.portrait:before,.portrait-foot:before,a[data-scramble]:after{transition:none}}
@media(hover:none){.contour-spotlight{display:none}}
@media print{.contour-spotlight,.portrait:before,.portrait-foot:before{display:none}}

/* Center each discipline within an equal third of the strip. */
.discipline{display:grid;grid-template-columns:1fr 0 1fr 0 1fr;gap:0;text-align:center}
.discipline>span{padding-inline:12px}
.discipline>i{justify-self:center}

.contour-spotlight .contour-lines{stroke:var(--accent);opacity:1}

/* Keep the footer signature left while resources stay right aligned. */
footer.wrap>.wordmark{margin-right:auto;text-align:left}

/* Small interactions stay within their own painted area. */
.section-label:before{transition:transform .25s ease,opacity .25s ease}
.section-label.crosshair-active:before{transform:rotate(90deg);opacity:1}
.download-feedback{display:inline-block;width:16px;height:16px;margin-left:10px;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.download-check{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .35s ease}
.download-requested .download-arrow{opacity:0}
.download-requested .download-check{stroke-dashoffset:0}
/* Avoid forced header compositing and repeated scroll-time hover animation. */
header.wrap{transform:none}
@media(prefers-reduced-motion:reduce){.section-label:before,.download-check{transition:none}}

/* Bound illustration repaints; keep the progress indicator on its own layer. */
.contour-art{contain:paint}
.reading-progress{will-change:transform}

/* Static editorial details: hierarchy without scroll-driven animation. */
.section-numeral{display:block;font:84px/.95 var(--serif);letter-spacing:-6px;color:var(--ink);opacity:.14;margin:20px 0 6px;pointer-events:none;user-select:none}
.profile-panel{width:min(280px,calc(100vw - 32px));padding:16px;border-top:2px solid var(--accent);gap:6px}
.profile-panel button,.profile-panel a{display:flex;align-items:center;gap:12px;padding:12px 10px;line-height:1.5}
.profile-panel button[hidden]{display:none}
.profile-icon,.profile-panel .download-feedback{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;color:var(--accent);margin:0}
.profile-panel .download-feedback{order:-1}
.profile-panel #copy-status{padding:4px 10px;line-height:1.5}
::selection{background:#253d34;color:#f5f3ed}
[data-theme="evening"] ::selection{background:#d39b78;color:#17231f}
.award{grid-template-columns:30% 1fr;align-items:baseline;padding-block:26px}
.award h3,.company-award h4{font-family:var(--serif);font-size:22px;line-height:1.35;letter-spacing:-.3px}
.award>span:first-child,.company-award>span:first-child{font-size:10px;line-height:1.6;letter-spacing:.5px;color:var(--muted)}
.company-recognition .company-award p{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:.4px;margin-top:10px}
.contour-art>.contour-spotlight .contour-lines{stroke:var(--accent);opacity:1}
.contour-art>svg .contour-lines{stroke:#80917b;opacity:.65}
[data-theme="evening"] .contour-art>svg .contour-lines{stroke:#a3ad84;opacity:.8}
[data-theme="evening"] .contour-art>svg .contour-lines polyline:nth-child(5n){stroke:#d39b78}
@media(max-width:900px){.section-numeral{font-size:56px;letter-spacing:-3px;margin-top:12px}}
@media(max-width:600px){.award{grid-template-columns:1fr;gap:10px}.award h3,.company-award h4{font-size:21px}}
@media print{.section-numeral{display:none}}

/* Static geological accents at section boundaries. */
#about,#work,#recognition,#coverage,#connect{position:relative}
.strata-divider{position:absolute;top:0;left:0;width:100px;height:12px;pointer-events:none;background:linear-gradient(var(--accent),var(--accent)) 0 0/58px 1px no-repeat,linear-gradient(var(--accent),var(--accent)) 18px 5px/82px 1px no-repeat,linear-gradient(var(--accent),var(--accent)) 8px 10px/38px 1px no-repeat;opacity:.55}
.press-story h3{font-size:32px;line-height:1.2;letter-spacing:-.7px}
.press-meta time{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;line-height:1.7;letter-spacing:.2px}
.press-story p{font-size:12px;line-height:1.85;max-width:480px}
footer.wrap{padding-block:48px}
footer.wrap>.wordmark{font-size:46px;line-height:1}
@media(max-width:800px){
 header.menu-enabled.menu-open>nav{padding-top:20px;animation:none}
 header.menu-enabled>nav>a,header.menu-enabled .profile-menu>summary{font-family:var(--serif);font-size:27px;line-height:1.2;min-height:60px;padding:16px 4px;gap:18px}
 header.menu-enabled>nav>a[data-section-number]:before{content:attr(data-section-number);font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1px;color:var(--accent);min-width:20px}
 header.menu-enabled .profile-menu>summary{padding-left:42px}
 header.menu-enabled .profile-panel a,header.menu-enabled .profile-panel button{display:flex;align-items:center;gap:12px}
}
@media(max-width:600px){.press-story h3{font-size:27px}.press-meta{gap:14px;align-items:baseline}.press-meta time{text-align:right}footer.wrap{padding-block:36px}footer.wrap>.wordmark{font-size:40px}.strata-divider{width:80px}}
@media print{.strata-divider{display:none}}

/* Precision accents and static editorial panels. */
.platform-copy h3:before{content:"";display:block;width:44px;height:2px;background:var(--accent);margin-bottom:18px}
.signature-amp{font-family:var(--serif);font-style:italic;color:var(--accent);font-size:1.15em;line-height:1}
.press-story{background:color-mix(in srgb,var(--ink) 3%,var(--paper));padding:28px 24px;margin-bottom:14px;border:1px solid var(--line)}
.press-story:hover,.press-story:focus-visible{background-color:color-mix(in srgb,var(--accent) 7%,var(--paper))}
.credentials>div{display:flex;flex-direction:column;align-items:flex-start}
.credentials strong{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-top-color:var(--accent);min-height:58px;min-width:100px;padding:10px 14px;font-size:27px;margin-bottom:16px}
.credentials span{line-height:1.7}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid transparent;outline-offset:4px;background:linear-gradient(var(--accent),var(--accent)) left top/8px 1px no-repeat,linear-gradient(var(--accent),var(--accent)) left top/1px 8px no-repeat,linear-gradient(var(--accent),var(--accent)) left bottom/8px 1px no-repeat,linear-gradient(var(--accent),var(--accent)) left bottom/1px 8px no-repeat,linear-gradient(var(--accent),var(--accent)) right top/8px 1px no-repeat,linear-gradient(var(--accent),var(--accent)) right top/1px 8px no-repeat,linear-gradient(var(--accent),var(--accent)) right bottom/8px 1px no-repeat,linear-gradient(var(--accent),var(--accent)) right bottom/1px 8px no-repeat}
@media(forced-colors:active){a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid Highlight}}
@media(max-width:600px){.press-story{padding:22px 18px}.credentials{gap:12px}.credentials strong{min-width:0;width:100%;padding:10px 6px;font-size:23px;min-height:52px}}

/* Portrait caption, source document, and signature recognition details. */
.portrait-foot{align-items:center;gap:16px;padding:20px 18px;line-height:1.6}
.portrait-foot>span:first-child{position:relative;padding-left:15px}
.portrait-foot>span:first-child:before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;border:1px solid var(--accent);border-radius:50%;transform:translateY(-50%)}
.portrait-foot>span:last-child{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.3px;white-space:nowrap}
h1{letter-spacing:-.065em;line-height:1; text-wrap:balance}
.contact-buttons .text-link{justify-content:flex-start;gap:10px}
.connection-icon{width:16px;height:16px;flex:0 0 16px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;color:var(--accent)}
.source-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--line);border-top:2px solid var(--accent);padding:14px 20px;font:11px ui-monospace,SFMono-Regular,Consolas,monospace;background:color-mix(in srgb,var(--ink) 3%,var(--paper))}
.source-bar .text-link{padding:4px 0}
#markdown-content{border:1px solid var(--line);border-top:0;margin:0;padding:24px 20px 24px 0}
.source-line{display:grid;grid-template-columns:48px minmax(0,1fr);line-height:1.8;min-height:1.8em}
.source-number{font-size:10px;color:var(--muted);text-align:right;padding-right:14px;margin-right:14px;border-right:1px solid var(--line);user-select:none}
.source-line>span:last-child{white-space:pre-wrap;overflow-wrap:anywhere;min-width:0}
.inc-number{font-size:140px;line-height:.85;color:transparent;-webkit-text-stroke:1px #d39b78;flex-shrink:0}
.inc-number>span:not(.inc-year-marks){color:#d39b78;-webkit-text-stroke:0}
.inc-number .inc-year-marks{display:flex;gap:9px;margin-top:24px}
.inc-year-marks i{display:block;width:24px;height:3px;background:#d39b78}
@media(max-width:600px){h1{font-size:clamp(64px,14.3vw,86px)}.portrait-foot{padding:16px 12px;gap:10px}.source-bar{padding:12px;font-size:10px}.source-line{grid-template-columns:36px minmax(0,1fr)}.source-number{padding-right:8px;margin-right:8px}#markdown-content{padding-right:12px}.inc-number{font-size:110px}}

/* A solid editorial milestone with a readable four-year record. */
.inc-feature .inc-number{color:#f5f3ed;-webkit-text-stroke:0;letter-spacing:0;min-width:180px}
.inc-feature .inc-number .inc-count{display:block;font:120px/.85 var(--serif);letter-spacing:-6px;color:#f5f3ed;-webkit-text-stroke:0}
.inc-feature .inc-number .inc-count-label{display:block;margin-top:18px;font:9px/1.5 Arial,sans-serif;letter-spacing:2px;color:#d39b78;-webkit-text-stroke:0}
.inc-feature .inc-number .inc-year-marks{display:flex;gap:12px;margin-top:20px;letter-spacing:0}
.inc-feature .inc-year-marks i{width:auto;height:auto;background:none;border-top:1px solid #d39b78;padding-top:8px;font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:#f5f3ed}
@media(max-width:600px){.inc-feature .inc-number .inc-count{font-size:96px}.inc-feature .inc-number{min-width:0}}

/* Official Font Awesome filled icons, keeping existing dimensions. */
.connection-icon{fill:currentColor;stroke:none}

.inc-feature .inc-number .inc-count .inc-multiplier{display:inline;font:64px/1 var(--serif);letter-spacing:0;vertical-align:middle;color:#d39b78;-webkit-text-stroke:0;margin-left:5px}
@media(max-width:600px){.inc-feature .inc-number .inc-count .inc-multiplier{font-size:52px}}

/* Reading and interaction refinements, without added motion. */
@media(hover:hover) and (pointer:fine){.contour-art{cursor:url('/assets/contour-cursor.svg') 12 12,crosshair}}
.bio-columns{max-width:760px;column-gap:40px}
.bio-columns p{line-height:2;text-wrap:pretty}
.bio-columns article{margin-bottom:32px}
.contact-buttons .text-link,.contact-buttons .text-link:hover,.contact-buttons .text-link:focus-visible{color:var(--ink)}
.contact-buttons .connection-icon{color:var(--muted)}
.contact-buttons .text-link:hover .connection-icon,.contact-buttons .text-link:focus-visible .connection-icon{color:var(--accent)}
@media(max-width:600px){
 .portrait img{height:clamp(340px,105vw,440px);max-height:none;object-fit:cover;object-position:50% 24%}
 .bio-columns{max-width:100%}
}
/* A readable paper edition, independent of the selected screen theme. */
@media print{
 @page{margin:16mm}
 :root,:root[data-theme="evening"]{color-scheme:light;--paper:#fff;--ink:#111;--muted:#333;--line:#aaa;--accent:#333}
 html{scroll-behavior:auto}
 body{background:#fff!important;color:#111!important;font-size:10pt}
 .wrap{width:100%;max-width:none}
 header.wrap{height:auto;min-height:0;padding:0 0 10pt;position:static;background:#fff!important}
 header>nav,.header-actions,.skip,.profile-menu,.reading-progress-track,.contour-art,.ascii-portrait,.strata-divider,.section-numeral,.source-bar,footer .footer-resources,footer>a:last-child{display:none!important}
 body.markdown-mode #main[hidden]{display:block!important}
 #markdown-view{display:none!important}
 .hero{grid-template-columns:1fr 120pt;gap:20pt;padding:16pt 0 20pt}
 .hero-copy{padding:0}
 h1{font-size:42pt;line-height:1;margin:12pt 0;letter-spacing:-2pt}
 .hero-line{font-size:19pt;margin-bottom:10pt}
 .hero-description{font-size:10pt;margin-bottom:0}
 .eyebrow,.section-label{font-size:8pt;letter-spacing:1px}
 .portrait{margin:0;background:#fff!important}
 .portrait img{height:150pt;width:120pt;object-fit:cover;opacity:1!important;visibility:visible!important;mix-blend-mode:normal}
 .portrait-foot{display:none}
 .hero .text-link{display:none}
 .discipline{padding:12pt 0;font-size:8pt}
 .section,.connect{display:block;padding:20pt 0}
 .section-label{padding:0;margin:0 0 10pt}
 .section-label:after{display:none!important}
 h2,.connect h2{font-size:25pt;margin:0 0 12pt;break-after:avoid}
 h3,h4{break-after:avoid}
 .lead{font-size:12pt;margin:0 0 16pt;max-width:none}
 .bio-columns{columns:1;max-width:none}
 .bio-columns article{margin-bottom:12pt;break-inside:avoid}
 .bio-columns h3{font-size:11pt;margin-bottom:4pt}
 .bio-columns p,.platform-copy>p:not(.eyebrow){font-size:10pt;line-height:1.5;color:#222}
 .work,.inc-feature{background:#fff!important;color:#111!important}
 .work-heading,.platform{display:block}
 .platform{margin-top:16pt}
 .platform-copy h3{font-size:30pt;margin:10pt 0}
 .credentials{margin:14pt 0;gap:16pt}
 .credentials strong{font-size:18pt;min-height:0;padding:6pt 10pt;margin-bottom:6pt}
 .credentials span{font-size:8pt;max-width:none}
 .award,.company-award{padding:10pt 0;break-inside:avoid;grid-template-columns:28% 1fr}
 .award h3,.company-award h4{font-size:13pt}
 .inc-feature{border:1px solid #aaa;padding:16pt;gap:24pt;break-inside:avoid}
 .inc-feature .inc-number .inc-count{font-size:64pt;color:#111!important}
 .inc-feature .inc-number .inc-count .inc-multiplier,.inc-feature .inc-year-marks i{color:#333!important}
 .inc-feature .inc-number{min-width:130pt}
 .press-story{padding:12pt;margin:0 0 10pt;break-inside:avoid;background:#fff!important}
 .press-story h3{font-size:16pt}
 .press-story p{font-size:9pt;line-height:1.5}
 .connect-bottom{display:block}
 .contact-buttons{display:block;margin:0}
 .contact-buttons .text-link{display:flex;justify-content:flex-start;gap:8pt;align-items:baseline;border:0;padding:4pt 0;font-size:9pt}
 .contact-buttons .text-link:after{content:attr(href);position:static;height:auto;background:none;transform:none;font:8pt/1.4 Arial,sans-serif;overflow-wrap:anywhere}
 .brand-original{visibility:visible}
 .brand-scramble{display:none}
 footer.wrap{display:flex;padding:14pt 0;margin-top:16pt}
 footer.wrap>.wordmark{font-size:25pt}
 a{color:#111!important}
 p{orphans:3;widows:3}
}

/* A consistent editorial finish with restrained geometry. */
:root{--detail-radius:4px}
.profile-panel,.credentials strong{border-radius:var(--detail-radius)}
.source-bar{border-radius:var(--detail-radius) var(--detail-radius) 0 0}
#markdown-content{border-radius:0 0 var(--detail-radius) var(--detail-radius)}
.hero-line{border-left:2px solid var(--accent);padding-left:20px;line-height:1.25;letter-spacing:-.8px}
.hero-line em{display:inline-block;margin-top:3px}
.press-meta>span{display:inline-block;align-self:flex-start;border:1px solid var(--line);border-radius:var(--detail-radius);padding:5px 8px;font-size:9px;line-height:1.5;letter-spacing:.3px;font-weight:400}
.footer-copyright{display:inline-flex;align-items:center;gap:12px;text-align:right}

@media(max-width:600px){
 .hero-line{padding-left:16px}
 .contact-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 22px;width:100%}
 .contact-buttons .text-link{align-self:stretch;justify-self:stretch;justify-content:flex-start;min-height:44px;font-size:12px;gap:10px}
 .press-meta{align-items:center}
 .footer-copyright{max-width:100%;gap:10px}
}
@media print{
 .hero-line{border-left:1px solid #777;padding-left:12pt}
 .contact-buttons{display:block}
 .press-meta>span{padding:2pt 5pt}

}

/* Static instrument details. */
.view-toggle{border-radius:4px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.view-toggle>span{display:inline-flex;align-items:center;gap:6px}
.view-toggle>span:before{content:"";width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.25}
.view-toggle[aria-pressed="false"] .toggle-html:before,.view-toggle[aria-pressed="true"] .toggle-md:before{background:#d39b78;opacity:1}



.syntax-heading{color:var(--ink);font-weight:600}
.syntax-link{color:var(--accent)}
.syntax-meta{color:var(--muted);font-style:italic}
.syntax-list{color:var(--muted)}




@media(max-width:600px){}
@media print{.contact-buttons .text-link{padding-left:0}}

/* Reader controls and quieter visual structure. */
.markdown-view{max-width:780px}
.markdown-view.source-wide{max-width:1380px}
#source-width{margin-left:auto;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;padding:8px 10px;cursor:pointer;min-height:36px}
#source-width:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.source-bar{flex-wrap:wrap}
@media screen{
 :root[data-theme="evening"]{--ink:#e3e1d7;--line:#35433b}
 [data-theme="evening"] h1,[data-theme="evening"] h2,[data-theme="evening"] h3,[data-theme="evening"] h4{color:#e7e4da}
}
.credentials{position:relative;isolation:isolate}
.credentials:before{content:"";position:absolute;left:0;right:0;top:29px;height:1px;background:var(--line);z-index:-1}
.credentials strong{background:var(--paper)}
.press-story,.press-story:hover,.press-story:focus-visible{color:var(--ink);background:color-mix(in srgb,var(--ink) 3%,var(--paper));box-shadow:none}
.press-story:hover h3,.press-story:focus-visible h3{color:var(--accent)}
@media(max-width:800px){
 header.wrap.menu-enabled{min-height:66px;padding-block:8px;gap:8px}
 header .wordmark{font-size:30px}
 .header-actions{gap:6px}
 .mobile-menu-toggle{font-size:11px;padding:6px;min-height:44px}
 .header-actions .utility-button{padding:8px;min-width:36px;min-height:44px}
 .view-toggle>span{padding:7px;gap:4px;font-size:10px}
 html{scroll-padding-top:84px}
}
@media(max-width:600px){.credentials:before{top:26px}#source-width{font-size:9px;padding:6px 8px}.source-bar{gap:10px}}
@media print{.credentials:before,#source-width{display:none}.press-story,.press-story:hover,.press-story:focus-visible{background:#fff!important}}

/* Optional static ASCII portrait and source/document cues. */
.portrait-mode{position:absolute;right:12px;top:12px;z-index:4;display:flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;cursor:pointer;min-height:36px;align-items:center}
.portrait-mode span{padding:5px 7px;border-radius:2px}
.portrait-mode[aria-pressed="false"] span:first-child,.portrait-mode[aria-pressed="true"] span:last-child{background:var(--ink);color:var(--paper)}
.portrait-mode:disabled{opacity:.5;cursor:wait}
.portrait-mode:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(hover:hover){.source-line:hover{background:color-mix(in srgb,var(--accent) 8%,var(--paper))}}
.file-badge{margin-left:auto;padding:2px 5px;border:1px solid var(--line);border-radius:3px;color:var(--muted);font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.5px;flex-shrink:0}
@media print{.portrait-mode{display:none}}

/* Compact technical controls and geometric numbering. */
.section-numeral{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:300;letter-spacing:-5px;font-size:72px}
.portrait-density{position:absolute;right:12px;top:54px;z-index:4;border:1px solid var(--line);border-radius:4px;padding:8px 10px;min-height:36px;background:var(--paper);color:var(--ink);font:9px monospace;cursor:pointer}
.portrait-density:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.source-navigation{max-width:100%;min-width:0;width:180px;padding:8px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink);font:10px monospace}
.source-line[id]{scroll-margin-top:140px}
.source-line:focus{outline:1px solid var(--accent);outline-offset:2px}
.profile-panel kbd{flex-shrink:0;font:9px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);padding:2px 4px;border:1px solid var(--line);border-bottom-width:2px;border-radius:3px;margin-left:auto}
.profile-panel .file-badge+kbd{margin-left:0}
@media(max-width:900px){.section-numeral{font-size:48px;letter-spacing:-3px}}
@media(max-width:600px){.source-navigation{width:100%}.profile-panel kbd{display:none}.source-line[id]{scroll-margin-top:90px}}
@media print{.portrait-density{display:none}}

/* Quiet text-only ASCII density control. */
.portrait-density{top:53px;right:16px;border:0;border-radius:0;background:transparent;padding:3px 0;min-height:0;font-size:8px;line-height:1.5;letter-spacing:.3px;color:var(--muted)}
.portrait-density:hover{color:var(--accent)}

.portrait-palette{position:absolute;right:58px;top:53px;z-index:4;border:0;background:transparent;padding:3px 0;min-height:0;font:8px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);cursor:pointer}
.portrait-palette:hover{color:var(--accent)}
.portrait-palette:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.portrait-readout{display:block;margin-top:4px;font:7px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.5px;color:var(--muted)}
.source-copy,.contour-controls button{font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;border:0;background:transparent;color:var(--muted);padding:8px;cursor:pointer}
.source-copy-status{font:10px/1.4 monospace;color:var(--accent)}
.source-copy-status:empty{display:none}
.contour-controls{grid-column:1/-1;display:flex;justify-content:flex-end;margin-top:12px}
.contour-controls+.contour-art{margin-top:0}
.contour-mesh{display:none;fill:none;stroke:var(--muted);stroke-width:.7;opacity:.6}
.wireframe-mode .contour-mesh{display:block}
.wireframe-mode .contour-lines,.wireframe-mode .data-nodes{display:none}
.command-menu mark{background:transparent;color:var(--accent);font-weight:600}
.command-menu [aria-selected="true"] mark{color:var(--paper);text-decoration:underline;text-decoration-color:#d39b78;text-underline-offset:3px}
@media print{.portrait-palette,.portrait-readout,.contour-controls{display:none}}

/* Shared columns align labels, file types, and shortcuts across every row. */
.profile-panel button,.profile-panel a{display:grid;grid-template-columns:18px minmax(0,1fr) 30px 28px;column-gap:10px;align-items:center}
.profile-panel .profile-icon,.profile-panel .download-feedback{grid-column:1;grid-row:1;order:0}
.profile-panel .profile-label{grid-column:2;grid-row:1;min-width:0}
.profile-panel .file-badge{grid-column:3;grid-row:1;margin:0;justify-self:stretch;text-align:center;padding-inline:2px}
.profile-panel kbd,.profile-panel .file-badge+kbd{grid-column:4;grid-row:1;margin:0;justify-self:stretch;text-align:center;padding-inline:2px}
@media(max-width:800px){header.menu-enabled .profile-panel a,header.menu-enabled .profile-panel button{display:grid}}
@media(max-width:600px){.profile-panel button,.profile-panel a{grid-template-columns:18px minmax(0,1fr) 30px}}

.shortcut-help{font:9px/1.5 Arial,sans-serif;color:var(--muted);margin:4px 10px 0}
@media(max-width:600px){.shortcut-help{display:none}}

/* Compact appearance controls; state changes do not animate page geometry. */
.portrait-ink{position:absolute;right:117px;top:53px;z-index:4;border:0;background:transparent;padding:3px 0;min-height:0;font:8px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;color:var(--muted);cursor:pointer}
.portrait-ink:hover{color:var(--accent)}
.portrait-ink:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.sparse-contours .contour-lines polyline:nth-child(even){display:none}
.source-wrap{font:10px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--muted);padding:7px 9px;cursor:pointer}
.source-wrap[aria-pressed="true"]{border-color:var(--accent);color:var(--accent)}
.source-nowrap #markdown-content{overflow-x:auto;white-space:pre}
.source-nowrap .source-line{display:flex;width:max-content;min-width:100%}
.source-nowrap .source-number{width:48px;flex:0 0 48px;margin-right:0}
.source-nowrap .source-line>span:last-child{white-space:pre;overflow-wrap:normal;padding-left:14px}
.command-result-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.command-trail{font:9px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;opacity:.65;overflow-wrap:anywhere}
@media(hover:hover){.credentials>div:hover strong{border-color:var(--accent)}.credentials:has(>div:hover):before{background:var(--accent)}}
@media print{.portrait-ink,.source-wrap{display:none}}

.contour-spotlight .contour-mesh{stroke:var(--accent);opacity:1}

/* Restore the full-card copper hover treatment. */
.press-story:hover,.press-story:focus-visible{background:color-mix(in srgb,var(--accent) 7%,var(--paper));box-shadow:inset 2px 0 var(--accent)}
@media print{.press-story:hover,.press-story:focus-visible{background:#fff!important;box-shadow:none}}

.profile-panel .profile-extra{display:block;border-top:1px solid var(--line);font-size:11px;padding:10px}
.keyboard-help{width:min(460px,calc(100% - 32px));border:1px solid var(--line);border-top:2px solid var(--accent);border-radius:4px;padding:26px;background:var(--paper);color:var(--ink)}
.keyboard-help::backdrop{background:#101c17aa}
.keyboard-help h2{font-size:28px;margin-bottom:20px}.keyboard-help p,.keyboard-help dl{font-size:12px;line-height:1.7}
.keyboard-help dl{display:grid;grid-template-columns:80px 1fr;gap:8px}.keyboard-help dt{font-family:monospace;color:var(--accent)}.keyboard-help dd{margin:0}
.keyboard-help button{padding:9px 14px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer}
.source-section>summary{cursor:pointer;list-style:none;position:relative}.source-section>summary::-webkit-details-marker{display:none}
.source-section>summary:before{content:'▸';position:absolute;left:3px;top:2px;color:var(--accent);font-size:10px}.source-section[open]>summary:before{content:'▾'}
.source-section>summary:focus-visible{outline:1px solid var(--accent)}
@media print{.keyboard-help{display:none}}

.bold-lines .contour-lines{stroke-width:1.8}.bold-lines .contour-mesh{stroke-width:1.5}
.source-ruler-toggle{font:10px monospace;padding:7px 9px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--muted);cursor:pointer}
.source-ruler-toggle[aria-pressed="true"]{color:var(--accent);border-color:var(--accent)}
#markdown-content.source-ruler{background-image:linear-gradient(to right,transparent calc(62px + 80ch),var(--line) calc(62px + 80ch),var(--line) calc(63px + 80ch),transparent calc(63px + 80ch));background-attachment:local}
.command-preview{margin:0;padding:12px 22px;border-top:1px solid var(--line);font:10px/1.5 monospace;color:var(--muted);overflow-wrap:anywhere}
.appearance-panel{width:min(480px,calc(100% - 32px));max-height:85dvh;overflow:auto;border:1px solid var(--line);border-top:2px solid var(--accent);border-radius:4px;padding:24px;background:var(--paper);color:var(--ink)}
.appearance-panel::backdrop{background:#101c17aa}
.appearance-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.appearance-heading h2{font-size:28px;margin:0}
.appearance-panel fieldset{border:1px solid var(--line);margin:24px 0 0;padding:16px;display:flex;align-items:center;flex-wrap:wrap;gap:12px}
.appearance-panel legend{font:10px monospace;letter-spacing:1px;padding:0 6px}
.appearance-panel button{position:static;min-height:36px;padding:8px 10px;font:11px monospace;color:var(--ink);background:transparent;border:1px solid var(--line);border-radius:3px;cursor:pointer}
.appearance-panel .portrait-mode{display:flex;padding:3px}
.appearance-panel .portrait-density,.appearance-panel .portrait-palette,.appearance-panel .portrait-ink{border:0;padding:5px;font-size:10px}
.appearance-panel button[aria-pressed="true"]{color:var(--accent);border-color:var(--accent)}
.appearance-panel .contour-controls{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px;margin:0}
.appearance-note{font:11px/1.6 Arial,sans-serif;color:var(--muted);margin-bottom:0}
@media print{.appearance-panel{display:none}}

.utility-status{width:100%;font:10px/1.5 monospace;margin:0;color:var(--muted)}
.portrait-compare{width:100%;font:10px/1.6 monospace;color:var(--muted)}.portrait-compare input{display:block;width:100%;accent-color:var(--accent)}
.source-find{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:12px;border:1px solid var(--line);border-top:0;font:10px monospace}
.source-find input{flex:1;min-width:120px;padding:8px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font:12px monospace}
.source-find button{padding:8px 10px;background:transparent;border:1px solid var(--line);color:var(--ink);cursor:pointer}
.source-match{background:#e7c6ad;color:#17231f}.source-match.current-match{outline:2px solid var(--accent);outline-offset:1px}
.download-preview{border-top:1px solid var(--line);padding:12px 10px 0;pointer-events:none}
.download-preview img{display:block;width:100%;height:140px;object-fit:contain;background:var(--paper)}
.pdf-cover{min-height:150px;padding:16px;border:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column;gap:12px;color:var(--ink)}.pdf-cover strong{font:25px/1 var(--serif);letter-spacing:-1px}.pdf-cover small{font:7px/1.5 monospace;letter-spacing:1px;color:var(--muted)}.pdf-cover>span{font:10px var(--serif)}
@media print{.source-find,.download-preview{display:none}}

.portrait>.portrait-compare{position:absolute;left:16px;right:16px;bottom:82px;width:auto;z-index:4;padding:8px 12px;background:var(--paper);border:1px solid var(--line);border-radius:4px}
@media print{.portrait-compare{display:none}}

/* Compact portrait comparison slider without visible readout. */
.portrait>.portrait-compare{left:auto;right:16px;width:120px;padding:2px 6px;border:0;background:transparent}
.portrait-compare input{margin:0;height:18px}
