:root{--ink:#20372d;--forest:#15271f;--deep:#102019;--paper:#f5f3eb;--cream:#e9e6da;--muted:#637067;--gold:#d4b777;--line:#d5dacd;--radius:18px;color-scheme:light;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #a3762e;outline-offset:5px}button:disabled{cursor:default}img,svg{max-width:100%}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.skip{position:absolute;z-index:99;top:-70px;left:20px;background:white;padding:12px}.skip:focus{top:10px}.masthead{position:relative;z-index:10;border-bottom:1px solid rgba(228,235,222,.15);background:var(--forest);color:#f7f5ed}.header-inner{height:94px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:11px;text-decoration:none;font-family:Georgia,serif;font-size:32px;letter-spacing:-1px}.brand img{width:37px;height:37px}.nav{display:flex;align-items:center;gap:34px;font-size:14px}.nav a{text-decoration:none;color:#d3dacf}.nav a:hover{color:white}.nav .nav-cta{padding:12px 19px;border:1px solid #647366;border-radius:6px;color:#fff}.menu-toggle{display:none;color:inherit;border:1px solid #6b7e70;background:transparent;padding:10px 14px;border-radius:5px}.hero{overflow:hidden;background:var(--forest);color:#f7f5ed;padding:72px 0 85px}.hero-top{display:grid;grid-template-columns:1.35fr 1fr;gap:80px;align-items:end;margin-bottom:52px}.kicker{display:flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin:0 0 24px;color:var(--muted)}.hero .kicker{color:#c6cfbd}.status-dot{width:6px;height:6px;border-radius:100%;background:var(--gold);box-shadow:0 0 0 4px #d4b77712}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(54px,5.65vw,82px);line-height:1.07;margin-bottom:0}h1 em{color:var(--gold);font-weight:400}h2{font-size:clamp(36px,3.5vw,52px);line-height:1.13;margin-bottom:22px}h3{font-size:19px;line-height:1.35;letter-spacing:-.02em}.hero-copy{padding-bottom:3px}.hero-copy>p{max-width:430px;font-size:17px;line-height:1.75;color:#cbd5c9;margin-bottom:24px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:49px;padding:13px 21px;background:var(--gold);border:1px solid var(--gold);color:var(--deep);border-radius:5px;text-decoration:none;font-size:14px;font-weight:700;transition:background .16s,transform .16s}.button:hover{background:#e2c98f;transform:translateY(-1px)}.button.light{background:var(--forest);border-color:var(--forest);color:var(--paper)}.text-link{font-size:14px;text-decoration:none;border-bottom:1px solid #8e9b8e;padding-bottom:3px}.text-link span{margin-left:8px}.hero-note{font-size:11px;color:#9dac9d;margin-top:19px;letter-spacing:.02em}.browser{border:1px solid #526353;border-radius:12px;overflow:hidden;background:#12201c;box-shadow:0 24px 64px #0003}.browser-bar{background:#203127;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 17px;border-bottom:1px solid #35483b;font-size:11px;color:#b0bdac}.browser-label{display:flex;align-items:center;gap:14px}.dots{display:flex;gap:5px}.dots i{display:block;width:6px;height:6px;border-radius:50%;background:#617362}.preview-badge{font-size:9px;letter-spacing:.1em;text-transform:uppercase;border:1px solid #51624f;padding:4px 7px;border-radius:3px}.preview-body{display:grid;grid-template-columns:1fr 235px;min-height:416px}.preview-tree{background:#101d18;position:relative;overflow:hidden;display:flex;flex-direction:column}.preview-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:17px 23px;color:#a7b5a7;font-size:11px}.breadcrumbs{display:flex;gap:10px;align-items:center}.breadcrumbs span:last-child{color:#ead4a2}.tree-stage{flex:1;display:flex;align-items:center;padding:0 12px 16px}.tree-stage svg{width:100%;display:block;min-height:280px;overflow:visible}.tree-link{fill:none;stroke:#68795e;stroke-width:1.2}.person-box{fill:#1a2a21;stroke:#4f6650;stroke-width:1}.person-name{font:600 12px Arial,sans-serif;fill:#e9eadf}.person-date{font:9px Arial,sans-serif;fill:#a6b2a1}.person-outline{fill:none;stroke:#e3c57b;stroke-width:2.5}.person-tag{font:7px Arial,sans-serif;fill:#d1b777;letter-spacing:1px}.tree-legend{padding:0 22px 15px;font-size:10px;color:#859782;display:flex;align-items:center;gap:7px}.tree-legend i{display:inline-block;border:1px solid #d4b777;width:9px;height:9px}.preview-panel{background:#213026;border-left:1px solid #40533e;padding:24px 21px;color:#dce3d4}.preview-wordmark{font:26px Georgia,serif;margin-bottom:7px}.preview-intro{font-size:11px;line-height:1.6;color:#a4b59f;margin-bottom:23px}.panel-rule{border-top:1px solid #41503e;padding-top:17px;margin-top:18px}.panel-caption{color:#aebda5;text-transform:uppercase;letter-spacing:.13em;font-size:8px;font-weight:700}.root-name{font-family:Georgia,serif;font-size:21px;margin:8px 0 18px}.root-name small{display:block;font:10px Arial,sans-serif;color:#a6b69e;margin-top:6px}.depth-label{display:flex;justify-content:space-between;font-size:11px;margin:15px 0 8px}.preview-panel input[type=range]{width:100%;accent-color:var(--gold);margin:0 0 16px}.check{display:flex;align-items:center;gap:7px;font-size:11px;margin:0 0 12px;line-height:1.5}.check input{accent-color:var(--gold);margin:0}.reset-demo{border:1px solid #66755b;border-radius:4px;color:#dce3d4;background:transparent;font-size:10px;padding:8px 12px;width:100%;margin-top:14px}.preview-caption{display:flex;justify-content:space-between;gap:14px;font-size:11px;color:#a1b39d;padding-top:16px}.preview-caption span:last-child{color:#cfbb8e}.strip{padding:23px 0;border-bottom:1px solid var(--line);background:#e9ece1}.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;color:#64705f;font-size:12px}.strip-inner strong{color:var(--ink);font-weight:600}.strip-item{display:flex;align-items:center;gap:9px}.small-mark{color:#8a784d}.section{padding:98px 0}.section-heading{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:100px;margin-bottom:50px}.section-heading>p{color:var(--muted);font-size:16px;line-height:1.85;margin-bottom:4px}.section-heading h2{margin-bottom:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:44px}.feature{border-top:1px solid #c2cbb9;padding-top:22px}.feature .number{display:block;font:12px Georgia,serif;color:#9b7d45;margin-bottom:25px}.feature p{font-size:14px;line-height:1.85;color:var(--muted);max-width:310px}.feature h3{margin-bottom:12px}.perspectives{background:#e8eade;border-top:1px solid #d9ddcf;border-bottom:1px solid #d9ddcf}.view-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:85px;align-items:center}.view-intro>p{font-size:15px;line-height:1.8;color:var(--muted);margin-bottom:25px}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:28px 0 22px}.tabs button{border:1px solid #bac4b0;background:transparent;border-radius:5px;color:var(--ink);padding:11px 16px;font-size:12px}.tabs button[aria-selected=true]{background:var(--forest);border-color:var(--forest);color:var(--paper)}.tab-copy{min-height:95px}.tab-copy h3{font-size:16px;margin-bottom:8px}.tab-copy p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.view-visual{background:#f8f7f1;border:1px solid #bdc8b3;border-radius:12px;padding:28px;min-height:360px;box-shadow:0 16px 28px #283a2220}.visual-heading{display:flex;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:.06em;color:#738168;border-bottom:1px solid #dce1d2;padding-bottom:16px;margin-bottom:24px}.visual-heading strong{font-size:12px;color:var(--ink)}[hidden]{display:none!important}.story-name{font:32px Georgia,serif;margin-bottom:7px}.story-details{font-size:12px;color:#74806d;margin-bottom:26px}.timeline{border-left:1px solid #b5c4a6;margin-left:5px;padding-left:24px;display:grid;gap:24px}.timeline div{position:relative}.timeline div:before{position:absolute;content:'';width:7px;height:7px;border:2px solid #72925b;background:#f8f7f1;border-radius:50%;left:-30px;top:4px}.timeline small{display:block;font-size:10px;color:#7c8a70;margin-bottom:5px}.timeline p{font-size:13px;margin:0}.map-note{font-size:10px;color:#77886b;margin:16px 0 0}.map-diagram{width:100%;height:235px}.sample-caption{font-size:10px;color:#78816f;margin:22px 0 0}.preview-family{display:grid;gap:14px}.family-row{display:flex;align-items:center;gap:13px;border:1px solid #d0d8c5;border-radius:6px;padding:13px}.avatar{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e6eadc;font:18px Georgia,serif;color:#678059}.family-row p{font-size:13px;margin:0}.family-row small{display:block;color:#7d8c72;font-size:10px;margin-top:4px}.connection{padding:88px 0;background:var(--forest);color:var(--paper)}.connection-layout{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.connection .kicker{color:#bdc9b4}.connection p{font-size:15px;color:#bac8b5;line-height:1.9;max-width:460px}.flow{border:1px solid #53664d;border-radius:12px;padding:30px;display:grid;gap:0;background:#1c2f22}.flow-box{display:flex;align-items:center;justify-content:space-between;border:1px solid #63765b;border-radius:6px;padding:18px 19px}.flow-box strong{font:22px Georgia,serif}.flow-box small{font-size:11px;color:#b0c09f}.flow-arrow{text-align:center;color:var(--gold);padding:10px;font-size:20px}.flow-foot{font-size:10px;color:#a9bc9b;margin-top:19px;text-align:center;line-height:1.6}.install-block{display:grid;grid-template-columns:1.08fr .92fr;gap:85px;align-items:start}.install-block>div>p{font-size:15px;line-height:1.8;color:var(--muted);max-width:500px}.release-label{display:inline-flex;gap:8px;align-items:center;border:1px solid #bbc7ac;border-radius:99px;padding:7px 11px;font-size:10px;margin-bottom:23px;color:#4f6546}.install-option{padding:23px 0;border-top:1px solid #c8cfbd}.install-option:last-child{border-bottom:1px solid #c8cfbd}.install-option h3{font-size:17px;margin:0 0 9px}.install-option p{font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:12px}.install-option a{font-size:12px;font-weight:700}.release-note{margin-top:28px;padding:18px 20px;border-left:2px solid #a08a56;background:#ebeade;font-size:12px;line-height:1.8;color:#65705c}.faq{padding-top:0}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.faq h2{max-width:300px}.faq-list details{border-top:1px solid #c6cfbc;padding:19px 0}.faq-list details:last-child{border-bottom:1px solid #c6cfbc}.faq-list summary{font-size:15px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-list summary:after{content:'+';font-size:20px;color:#6e825e;font-weight:400}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;line-height:1.8;color:var(--muted);margin:15px 25px 0 0}.footer{border-top:1px solid #c7cebd;padding:32px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:#72806b}.footer .brand{font-size:25px;color:var(--ink)}.footer .brand img{width:29px;height:29px}.footer-links{display:flex;gap:24px;flex-wrap:wrap}.footer-links a{text-decoration:none}.footer-credit{margin-top:12px;text-align:right;font-size:10px;color:#7e8975}.page-hero{padding:66px 0 48px;background:#e8eade;border-bottom:1px solid #d4dcc9}.page-hero h1{font-size:60px;margin-bottom:22px}.page-hero p{font-size:16px;line-height:1.8;max-width:650px;color:var(--muted)}.article-layout{display:grid;grid-template-columns:240px 1fr;gap:80px;padding:64px 0 90px}.article-nav{align-self:start;position:sticky;top:30px;border-top:1px solid #c5d0b9;padding-top:18px}.article-nav a{display:block;padding:10px 0;font-size:13px;text-decoration:none;color:var(--muted)}.article{max-width:760px}.article h2{font-size:33px;margin:38px 0 18px}.article h2:first-child{margin-top:0}.article h3{font-size:17px;margin:28px 0 14px}.article p,.article li{font-size:15px;line-height:1.85;color:#5f6f58}.article li{margin:9px 0}.article ol,.article ul{padding-left:24px}.article code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.85em}.code-wrap{position:relative;margin:20px 0}.code-wrap pre{background:#18291f;color:#e1e7d6;border:1px solid #506249;border-radius:7px;padding:23px 80px 23px 22px;overflow:auto;font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}.copy-code{position:absolute;right:10px;top:10px;padding:7px 10px;background:#31432c;color:#e3ead8;border:1px solid #64745b;border-radius:4px;font-size:10px}.callout{background:#e8ecde;border-left:3px solid #8a9d6c;padding:18px 22px;margin:24px 0;font-size:14px;line-height:1.8;color:#56654c}.article .callout p{margin:0;font-size:14px}.requirements{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0}.requirements span{font-size:11px;padding:7px 10px;border:1px solid #bbc9ab;border-radius:4px}.plain-page .article-layout{grid-template-columns:1fr;max-width:800px}.plain-page .article{max-width:800px}.not-found{text-align:center;padding:110px 0 150px}.not-found p{color:var(--muted);line-height:1.8}.not-found .button{margin-top:15px}@media(min-width:1500px){.hero{padding-top:90px}.preview-body{min-height:460px}.tree-stage svg{min-height:310px}}@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.hero-top{gap:40px}.hero-copy>p{font-size:15px}.hero{padding-top:55px}.nav{gap:22px}.preview-body{grid-template-columns:1fr 205px}.preview-panel{padding:23px 16px}.section-heading,.view-layout,.connection-layout,.install-block{gap:45px}.faq-layout{gap:50px}.section{padding:75px 0}.faq{padding-top:0}.feature-grid{gap:27px}.article-layout{gap:40px;grid-template-columns:190px 1fr}}@media(max-width:700px){html{scroll-padding-top:25px}.wrap{width:calc(100% - 36px)}.header-inner{height:76px;gap:15px}.brand{font-size:29px}.brand img{width:31px;height:31px}.menu-toggle{display:block;font-size:12px}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:#203427;flex-direction:column;align-items:stretch;gap:0;padding:10px 24px 22px;border-bottom:1px solid #607256}.nav.open{display:flex}.nav a{padding:15px 0}.nav .nav-cta{text-align:center;padding:12px;margin-top:6px}.hero{padding:43px 0 38px}.hero-top{grid-template-columns:1fr;gap:24px;margin-bottom:33px}.hero .kicker{font-size:9px;margin-bottom:20px}.hero h1{font-size:56px}.hero-copy>p{max-width:480px;font-size:15px;margin-bottom:23px;line-height:1.8}.hero-note{font-size:10px;margin-top:16px}.button{font-size:12px;min-height:46px;padding:12px 17px}.text-link{font-size:12px}.browser{border-radius:8px}.browser-bar{padding:0 12px;min-height:38px;font-size:10px}.browser-label{gap:9px}.preview-badge{font-size:7px;padding:3px 5px}.preview-body{grid-template-columns:1fr;min-height:auto}.preview-toolbar{padding:15px 15px 4px;font-size:9px}.tree-stage{padding:0 5px}.tree-stage svg{min-height:220px}.preview-panel{border-left:0;border-top:1px solid #40533e;padding:17px;display:grid;grid-template-columns:1fr 1fr;column-gap:25px}.preview-wordmark,.preview-intro,.root-name,.panel-rule{display:none}.preview-panel .panel-caption{grid-column:1/-1;margin-bottom:5px}.preview-panel .depth-control{grid-column:1/-1}.depth-label{margin:5px 0 6px}.preview-panel input[type=range]{margin-bottom:15px}.reset-demo{grid-column:1/-1;margin-top:4px;padding:8px}.check{font-size:10px}.tree-legend{font-size:8px;padding:0 14px 14px}.preview-caption{font-size:9px;line-height:1.7;gap:15px}.preview-caption span:first-child{max-width:68%}.strip{padding:20px 0}.strip-inner{display:grid;grid-template-columns:1fr 1fr;gap:17px;font-size:10px}.section{padding:60px 0}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:32px}.section-heading>p{font-size:14px;line-height:1.8;max-width:500px}.kicker{font-size:9px;margin-bottom:18px}h2{font-size:39px}.feature-grid{grid-template-columns:1fr;gap:25px}.feature{display:grid;grid-template-columns:30px 1fr;gap:0 15px;padding-top:19px}.feature .number{grid-row:1/3;margin-top:4px;margin-bottom:0}.feature p{max-width:100%;font-size:13px;margin-bottom:0}.feature h3{font-size:17px}.view-layout,.connection-layout,.install-block,.faq-layout{grid-template-columns:1fr;gap:32px}.view-intro>p{font-size:14px}.tab-copy{min-height:90px}.view-visual{min-height:340px;padding:23px}.tabs{margin:20px 0}.connection{padding:56px 0}.connection p{font-size:14px}.flow{padding:23px}.flow-box{padding:16px}.install-block>div>p{font-size:14px}.release-label{margin-bottom:18px}.install-block{gap:27px}.faq{padding-top:0}.faq-layout{gap:15px}.faq h2{max-width:100%}.faq-list summary{font-size:14px}.faq-list details p{font-size:13px}.footer-inner{align-items:flex-start;flex-wrap:wrap;gap:22px}.footer-links{gap:18px;font-size:10px}.footer-credit{text-align:left;font-size:9px;line-height:1.7}.page-hero{padding:43px 0 30px}.page-hero h1{font-size:44px}.page-hero p{font-size:14px}.article-layout{display:block;padding:35px 0 65px}.article-nav{position:static;display:flex;flex-wrap:wrap;gap:0 22px;margin-bottom:35px}.article-nav a{font-size:11px}.article p,.article li{font-size:14px}.article h2{font-size:29px}.code-wrap pre{font-size:10px;padding:46px 17px 20px}.article .callout{font-size:12px}.callout{padding:15px}.plain-page .article-layout{display:block}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Keep the full real chart visible within a compact preview. */
.real-tree-preview{margin:0}.tree-screenshot-frame{border:1px solid #53634c;border-radius:12px;background:#10100e;overflow:hidden}.real-tree-image{display:block;width:100%;height:clamp(320px,42vw,520px);object-fit:contain}.real-tree-caption{display:flex;justify-content:space-between;gap:18px;align-items:baseline;color:#b9c4b0;font-size:11px;line-height:1.7;padding-top:16px}.real-tree-caption a{color:#d4b777;white-space:nowrap}@media(max-width:700px){.tree-screenshot-frame{border-radius:8px}.real-tree-image{height:320px}.real-tree-caption{display:block;font-size:10px}.real-tree-caption a{display:inline-block;margin-top:8px}}

/* Keep feature copy and the two title phrases readable on narrow screens. */
.hero-title-line{display:block}.hero-top>*,.feature-grid>*{min-width:0}.feature-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.hero h1{font-size:clamp(34px,10.5vw,52px);line-height:1.12}.feature-grid{grid-template-columns:minmax(0,1fr);gap:28px}.feature{display:block}.feature .number{margin:0 0 12px;line-height:1.5}.feature h3{margin:0 0 10px}.feature p{max-width:none;overflow-wrap:break-word}}
