@font-face{font-family:system;src:local("Segoe UI")}*{box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{margin:0;background:#f5f6f7;color:#202426;font-family:system,"Segoe UI",Arial,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin:0}img{max-width:100%;display:block}h1,h2,h3{line-height:1.08;letter-spacing:-.045em;font-weight:700}h1{font-size:clamp(2.7rem,5.4vw,5.1rem)}h2{font-size:clamp(1.9rem,3vw,2.65rem)}h3{font-size:1.65rem}p{color:#536067}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #287d60;outline-offset:5px}a:hover .card-link,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.wrap{max-width:1240px;margin:0 auto;padding-inline:clamp(24px,4.3vw,66px)}main,.site-footer{margin-left:246px}.preview-note{margin-left:246px;padding:7px 28px;background:#e5e9ec;color:#536067;font:600 .75rem/1.5 monospace;letter-spacing:.08em;display:flex;justify-content:space-between;gap:12px}.preview-note span{font:400 .8rem/1.5 "Segoe UI",sans-serif;letter-spacing:0}.skip{position:fixed;top:-70px;left:270px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}.site-header{margin-left:246px;height:72px;padding:0 36px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #dce1e3;background:#fff}.header-label{font-size:.75rem;font-weight:650;letter-spacing:.14em;color:#626e73}.github-nav{font-size:.9rem;font-weight:650}.sidebar{position:fixed;inset:0 auto 0 0;z-index:30;width:246px;background:#171c20;color:#f7f8f9;display:flex;flex-direction:column;padding:32px 22px 22px;overflow-y:auto;border-right:1px solid #2e373d}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;font-size:.83rem;line-height:1.25;font-weight:750;letter-spacing:.045em}.brand-mark{display:grid;place-items:center;width:42px;height:46px;background:#91dec0;color:#171c20;font-size:1.2rem;font-weight:800;letter-spacing:-.06em}.sidebar nav{padding-top:42px;flex:1}.sidebar nav>a{display:block;padding:10px 12px;font-size:.93rem;border-radius:4px;color:#c6ced2}.sidebar nav>a:hover,.nav-children a:hover{background:#252f36;color:white}.sidebar [aria-current=page]{background:#253c35!important;color:#b0e9d4!important;box-shadow:inset 3px 0 #91dec0}.nav-label{font:600 .72rem/1.5 "Segoe UI",sans-serif;letter-spacing:.12em;color:#8b9aa4;padding:26px 12px 10px}.nav-group summary{cursor:pointer;display:flex;align-items:center;gap:8px;padding:11px 12px;font-size:.96rem;list-style:none;border-radius:4px}.nav-group summary::-webkit-details-marker{display:none}.nav-group summary:before{content:"+";font:400 1.15rem monospace;color:#9caab3;width:14px}.nav-group[open] summary:before{content:"−"}.nav-group summary>span{margin-left:auto;color:#97a7b1;font-size:.78rem}.nav-group summary:hover{background:#252f36}.nav-children{border-left:1px solid #3b464e;margin:3px 0 10px 17px;padding-left:8px}.nav-children a{display:block;padding:7px 10px;color:#b8c4cd;font-size:.87rem;border-radius:3px}.sidebar-bottom{padding:26px 12px 0;border-top:1px solid #303a41;margin-top:35px;font-size:.83rem}.sidebar-bottom span{color:#a5b2bb;display:block;line-height:1.6}.sidebar-bottom a{display:inline-block;color:#9eacb6;font-size:.78rem;margin-top:18px}.menu-toggle,.close-menu{display:none}.hero{min-height:570px;position:relative;isolation:isolate;background:#101415;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% center;z-index:-3}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,17,19,.97) 0%,rgba(13,17,19,.82) 32%,rgba(13,17,19,.3) 80%);z-index:-2}.hero-content{width:100%;padding-block:75px 92px}.eyebrow{font-size:.75rem;letter-spacing:.13em;font-weight:700;line-height:1.65;color:#276951;text-transform:uppercase;margin-bottom:18px}.hero .eyebrow{color:#a4e8cc}.hero h1{max-width:780px}.hero h1 em{font-style:normal;color:#a4e8cc}.hero-summary{max-width:490px;font-size:1.12rem;line-height:1.75;margin-top:25px;color:#d0d6d9}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 21px;background:#91dec0;color:#181e21;font-size:.9rem;font-weight:700;border:1px solid #91dec0;border-radius:4px;text-align:center}.button:hover{background:#b9efd9;border-color:#b9efd9}.button.secondary{background:transparent;border-color:#6e777d;color:#eee}.button.secondary:hover{background:#283034}.image-caption{position:absolute;bottom:17px;right:24px;font-size:.75rem;color:#b5babe}.intro-strip{background:#fff;border-bottom:1px solid #dce1e3}.intro-strip>.wrap{padding-block:29px;display:flex;align-items:center;justify-content:space-between;gap:25px}.intro-strip p{font-size:1.05rem;line-height:1.5}.intro-strip strong{color:#202426}.intro-strip .wrap>div{display:flex;gap:28px;color:#57646c;font-size:.8rem}.section{padding-block:70px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.section-heading>p{max-width:350px;font-size:.95rem}.text-link{font-size:.9rem;font-weight:650;color:#22644f;flex-shrink:0}.trail-feature{display:grid;grid-template-columns:1.4fr 1fr;background:#e4ebec;border:1px solid #cbd7da;border-radius:7px;overflow:hidden;min-height:315px}.trail-feature>div{padding:38px}.trail-feature h3{font-size:3.4rem;letter-spacing:-.04em;margin-bottom:18px}.trail-feature p:not(.eyebrow){max-width:390px;font-size:1rem}.trail-feature-notes{background:#d3e0e1;border-left:1px solid #c0ced0;position:relative;display:flex;flex-direction:column;align-items:start;justify-content:space-between;gap:18px}.trail-feature-notes strong{font-size:2.5rem;line-height:1.12;letter-spacing:-.04em;color:#34545b}.trail-feature-notes .status{background:#edf3f3}.trail-feature-notes p{font-size:.85rem!important}.card-link{display:block;font-weight:700;font-size:.88rem;color:#22644f;margin-top:26px}.software-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:24px}.software-card{background:#fff;border:1px solid #dce1e3;border-radius:7px;overflow:hidden}.software-image{height:220px;position:relative;background:#20272c;padding:22px 28px 0;overflow:hidden}.software-image img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:4px 4px 0 0}.software-image>span{position:absolute;bottom:9px;right:10px;background:#151c23e8;color:#dce1e3;padding:3px 9px;border-radius:3px;font-size:.72rem}.software-copy{padding:28px}.software-copy .eyebrow{margin-bottom:12px}.software-copy h3{margin-bottom:16px}.software-copy>p:not(.eyebrow){font-size:.96rem}.github-band{background:#202a30;color:#fff}.github-band>.wrap{padding-block:52px;display:flex;align-items:center;justify-content:space-between;gap:35px}.github-band h2{font-size:clamp(1.65rem,2.8vw,2.4rem)}.github-band .eyebrow{color:#a4e8cc}.github-band p:not(.eyebrow){color:#bfcad0;max-width:530px;margin-top:18px;font-size:.96rem}.github-band .button{flex-shrink:0}.site-footer{background:#fff}.footer-top{display:flex;align-items:start;justify-content:space-between;gap:28px;padding-block:42px}.footer-top>p{font-size:.9rem}.footer-top nav{display:grid;gap:8px;font-size:.85rem;color:#536067}.footer-bottom{border-top:1px solid #e3e7e9;display:flex;justify-content:space-between;gap:25px;padding-block:18px;color:#66737a;font-size:.75rem}.page-heading{padding-block:60px 42px;border-bottom:1px solid #dce1e3}.page-heading h1{font-size:clamp(2.7rem,5vw,4.5rem)}.page-heading>p:not(.eyebrow){max-width:680px;margin-top:22px;font-size:1.15rem}.page-heading .eyebrow{margin-top:14px}.breadcrumb{display:inline-block;font-size:.85rem;color:#707c84;margin-bottom:25px;text-decoration:underline;text-underline-offset:4px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.project-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.project-card{display:flex;flex-direction:column;padding:25px;background:#fff;border:1px solid #d7dfe2;border-radius:5px;transition:border-color .15s,box-shadow .15s}.project-card:hover{border-color:#5b9f87;box-shadow:0 4px 16px #1721260a}.card-top{display:flex;align-items:center;justify-content:space-between;gap:9px;margin-bottom:31px}.index{font-family:monospace;font-size:.8rem;color:#77848b}.status{font-size:.75rem;line-height:1.5;padding:5px 9px;border:1px solid #d6dde0;border-radius:3px;background:#f0f3f4;color:#59676f;display:inline-block}.project-card .eyebrow{font-size:.69rem;letter-spacing:.08em;margin-bottom:10px}.project-card h3{font-size:1.6rem;margin-bottom:15px}.project-card>p:not(.eyebrow){font-size:.94rem;flex:1}.project-card .card-link{margin-top:24px}.directory-section{padding-block:44px}.compact{padding-block:45px}.connection-flow{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0;border:1px solid #c7d4d7;background:#e6edef;border-radius:5px;counter-reset:step}.connection-flow li{counter-increment:step;padding:26px 18px;border-right:1px solid #c7d4d7}.connection-flow li:last-child{border:0}.connection-flow li:before{content:counter(step,decimal-leading-zero);font:400 .8rem monospace;color:#70838b;display:block;margin-bottom:20px}.connection-flow span{display:block;font-weight:700}.connection-flow small{font-size:.8rem;color:#53676f}.quiet{font-size:.85rem;margin-top:16px;color:#68767f}.product-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:55px}.product-layout h2{font-size:2rem}.feature-list{list-style:none;padding:0;margin:28px 0 0;counter-reset:feature}.feature-list li{counter-increment:feature;padding:18px 0;border-bottom:1px solid #d5dee1;display:flex;gap:18px;font-size:1rem}.feature-list li:before{content:counter(feature,decimal-leading-zero);font:.75rem monospace;padding-top:7px;color:#367e64}.development-note{padding:30px;background:#e8edef;border-left:3px solid #69b99b;border-radius:3px}.development-note h2{font-size:1.5rem;margin-bottom:20px}.development-note p:not(.eyebrow){font-size:.97rem}.development-note .text-link{display:inline-block;margin-top:24px}.product-image{margin:42px 0 0;padding:24px;background:#e3e8eb;border-radius:6px}.product-image img{width:100%;max-height:550px;object-fit:contain}.product-image figcaption{font-size:.8rem;text-align:center;color:#5f6d74;margin-top:13px}.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.about-grid article{border-top:1px solid #ccd5d9;padding-top:20px}.about-grid h2{font-size:1.8rem;margin:25px 0 18px}.about-grid p{font-size:1rem}.prose{max-width:860px}.prose h2{font-size:1.6rem;margin-bottom:18px}.prose p{margin-bottom:30px}.prose a{display:inline-block;margin-top:20px}
@media(min-width:1500px){.hero{min-height:650px}.hero h1{font-size:5.7rem}.hero-summary{font-size:1.2rem}}
@media(max-width:1180px){.sidebar{width:222px;padding-inline:18px}main,.site-footer,.site-header,.preview-note{margin-left:222px}.wrap{padding-inline:30px}.hero{min-height:540px}.hero-summary{max-width:420px}.intro-strip .wrap>div{gap:13px;flex-wrap:wrap}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.software-image{height:180px}.github-band>.wrap{align-items:start;flex-direction:column}.trail-feature>div{padding:28px}.about-grid{gap:20px}.footer-top>p{display:none}.product-layout{gap:28px}}
@media(max-width:820px){main,.site-footer,.site-header,.preview-note{margin-left:0}.sidebar{width:min(300px,86vw);transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.site-header{height:64px;padding:0 22px}.header-label{font-size:.63rem;letter-spacing:.05em}.menu-toggle,.close-menu{display:block;background:transparent;border:1px solid #bac5cb;border-radius:4px;padding:6px 10px;font-size:.85rem;color:inherit}.close-menu{position:absolute;right:19px;top:100px;color:#c7d1d7;border-color:#56636c;font-size:.75rem}.sidebar nav{padding-top:72px}.menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:#10171b88;z-index:25}.menu-open{overflow:hidden}.skip{left:15px}.hero h1{font-size:clamp(2.9rem,8.5vw,4.7rem)}.hero-content{padding-block:70px}.hero-overlay{background:linear-gradient(90deg,#101618ee,#101618bb 60%,#10161866)}.intro-strip>.wrap{align-items:start}.intro-strip .wrap>div{flex-direction:column;gap:4px}.section-heading{align-items:start}.product-layout{grid-template-columns:1fr}.about-grid{grid-template-columns:1fr}.about-grid article{padding-bottom:25px}.preview-note{padding-inline:20px}}
@media(max-width:540px){.wrap{padding-inline:22px}.header-label{display:none}.preview-note{font-size:.62rem}.preview-note span{font-size:.7rem}.hero{min-height:545px}.hero-content{padding-block:55px 70px}.hero .eyebrow{max-width:270px;font-size:.68rem}.hero-summary{font-size:1rem;max-width:320px}.hero .actions{align-items:stretch;flex-direction:column;max-width:300px;gap:10px}.image-caption{font-size:.65rem;right:15px;bottom:13px}.section{padding-block:40px}.section-heading{flex-direction:column;gap:18px;margin-bottom:22px}.section-heading .eyebrow{margin-bottom:12px}.trail-feature{grid-template-columns:1fr}.trail-feature-notes{border-left:0;border-top:1px solid #c0ced0}.trail-feature-notes strong{font-size:1.8rem}.trail-feature-notes strong br{display:none}.trail-feature-notes strong br:after{content:' '}.software-grid,.project-grid,.project-grid.two{grid-template-columns:1fr}.software-image{height:210px}.footer-top{flex-direction:column}.footer-top nav{grid-template-columns:repeat(2,1fr);gap:15px 25px}.footer-bottom{flex-direction:column;gap:5px}.page-heading{padding-block:35px}.page-heading h1{font-size:2.85rem}.page-heading>p:not(.eyebrow){font-size:1.05rem}.connection-flow{grid-template-columns:repeat(2,1fr)}.connection-flow li{border-bottom:1px solid #c7d4d7}.connection-flow li:nth-child(2){border-right:0}.connection-flow li:nth-child(3){border-bottom:0}.product-layout{gap:30px}.product-image{padding:12px}.intro-strip>.wrap{gap:20px}.intro-strip p{font-size:.95rem}.intro-strip .wrap>div{font-size:.7rem}.development-note{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.hero-image{filter:grayscale(1)}

/* Unified charcoal and mint: charcoal and mint theme. */
:root{color-scheme:dark;--canvas:#1b2326;--surface:#253034;--sidebar:#131a1d;--line:#40514f;--text:#edf3f0;--muted:#bbc9c4;--mint:#a0e6ca}
body{background:var(--canvas);color:var(--text)}
p{color:var(--muted)}
.sidebar{background:var(--sidebar);border-color:#354440}
.site-header,.site-footer{background:#192124;color:var(--text);border-color:var(--line)}
.preview-note{background:#273330;color:#bdccc5}
.preview-note span,.header-label{color:#b5c5bf}
.intro-strip{background:#202b2c;border-color:var(--line)}
.intro-strip strong{color:var(--text)}
.intro-strip .wrap>div,.footer-top nav,.footer-bottom{color:var(--muted)}
.footer-bottom,.page-heading,.feature-list li,.about-grid article{border-color:var(--line)}
.project-card,.software-card{background:var(--surface);border-color:var(--line)}
.project-card:hover,.software-card:hover{border-color:#80bfa6;box-shadow:0 5px 20px #0002}
.eyebrow,.text-link,.card-link{color:var(--mint)}
.index,.quiet,.breadcrumb{color:#b1c3ba}
.status{background:#2b4037;border-color:#526b5e;color:#d0e6db}
.trail-feature{background:#253a35;border-color:#4a6558}
.trail-feature-notes{background:#20332e;border-color:#4a6558}
.trail-feature-notes strong{color:#b2e9d4}
.trail-feature-notes .status{background:#2b4037}
.connection-flow{background:#263a34;border-color:#4a6558}
.connection-flow li{border-color:#4a6558}
.connection-flow li:before,.connection-flow small{color:#bed5ca}
.development-note{background:#283732;border-left-color:#91dec0}
.feature-list li:before{color:#a0d9c0}
.product-image{background:#263034}
.product-image figcaption{color:var(--muted)}
.github-band{background:#15231e;border-block:1px solid #354b41}
.github-band p:not(.eyebrow){color:#c1d2c8}
.button{color:#13291f}
a:focus-visible,button:focus-visible,summary:focus-visible{outline-color:#a0e6ca}
.menu-toggle,.close-menu{border-color:#6c8a7b}
.skip{background:#a0e6ca;color:#13291f}
@media(max-width:540px){.trail-feature-notes{border-top-color:#4a6558}.trail-feature-notes strong br{display:initial}.trail-feature-notes strong br:after{content:none}}

/* Owner-selected full-name brand artwork; full-name artwork. */
.brand-logo{display:block;width:202px;height:auto;max-width:100%;border-radius:3px}
.sidebar .brand{display:block;margin-inline:-6px}
.sidebar .brand-logo{width:214px}
.sidebar nav{padding-top:28px}
.footer-top .brand{width:240px;max-width:100%}
.footer-top .brand-logo{width:240px}
.branded-hero{display:block;min-height:0;background:#131a1d}
.branded-hero .hero-image{position:relative;inset:auto;width:100%;height:auto;object-fit:contain;filter:none;z-index:auto}
.branded-hero .hero-overlay{display:none}
.branded-hero .hero-content{padding-block:38px 48px}
.branded-hero h1{font-size:clamp(2.4rem,4vw,4rem)}
@media(max-width:540px){.branded-hero .hero-content{padding-block:28px 36px}.footer-top .brand{width:220px}}
@media(max-width:820px){.sidebar .close-menu{position:static;align-self:flex-end;margin-top:12px}.sidebar nav{padding-top:20px}}

.mission-section{border-bottom:1px solid var(--line);padding-block:44px}.mission-section h2{margin-bottom:20px}.mission-section>p{max-width:850px;font-size:1.1rem;line-height:1.8}

/* Compact homepage: pair the artwork with the introduction instead of stacking two large blocks. */
.branded-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:24px;padding:24px clamp(24px,3vw,48px)}
.branded-hero .hero-image{width:100%;height:auto;max-height:260px;object-fit:contain}
.branded-hero .hero-content{padding:0;max-width:640px;margin:0}
.branded-hero .eyebrow{margin-bottom:12px}
.branded-hero h1{font-size:clamp(2.1rem,3vw,3.2rem)}
.branded-hero .hero-summary{margin-top:16px;max-width:540px;font-size:1rem;line-height:1.6}
.branded-hero .actions{margin-top:20px;gap:10px}
.intro-strip .wrap{padding-block:18px}
.mission-section{padding-block:28px}
.mission-section h2{margin-bottom:14px}
.mission-section>p{font-size:1.05rem;line-height:1.7;max-width:960px}
.mission-section + .section{padding-top:30px}
@media(max-width:1180px){.branded-hero{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:20px}.branded-hero .button{padding:10px 14px}}
@media(max-width:820px){.branded-hero{grid-template-columns:1fr;padding:18px 24px 26px;gap:18px}.branded-hero .hero-image{max-height:150px;width:100%;max-width:450px;justify-self:center}.branded-hero .hero-content{max-width:none}.branded-hero h1{font-size:2.35rem}.mission-section{padding-block:24px}}

/* Shared sample demo surface; omitted entirely until a reviewed demo is registered. */
.product-demo{border-top:1px solid var(--line)}.product-demo>h2{margin-bottom:16px}.demo-frame{margin:24px auto;padding:24px;background:#111a1d;border:2px solid #5e7c70;border-radius:14px;width:100%;max-width:900px}.demo-frame-phone{max-width:360px;border-width:8px;border-radius:30px;min-height:450px}.demo-frame-display{max-width:520px}.demo-frame h3{font-size:1.5rem;margin-bottom:18px}.demo-frame p{margin-bottom:12px}.demo-controls{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.demo-controls[hidden]{display:none}.demo-controls button{cursor:pointer}.demo-controls button:disabled{opacity:.5;cursor:default}.demo-frame h3:focus{outline:2px solid var(--mint);outline-offset:5px}
