:root{--forest:#172c24;--forest2:#203d31;--sage:#c4d1b6;--cream:#f5f3ec;--paper:#fffefa;--ink:#1d2a23;--muted:#68736b;--lime:#d9e7a6;--line:#dfe3d9;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1280px)/2));position:sticky;top:0;z-index:20;background:rgba(255,254,250,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(23,44,36,.08)}.brand{display:flex;align-items:center;gap:10px;color:var(--forest);white-space:nowrap;text-decoration:none}.brand-mark{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--forest)}.brand-mark svg{width:25px;height:25px;fill:none;stroke:var(--lime);stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round}.brand-copy{display:flex;flex-direction:column;gap:1px;line-height:1.15;letter-spacing:0}.brand-copy strong{font:700 13px var(--display);letter-spacing:-.025em;color:var(--forest)}.brand-copy small{font:700 8px var(--sans);letter-spacing:.09em;color:#07865f}.nav{display:flex;align-items:center;gap:31px;font-size:12px;font-weight:600;color:#46544a}.nav>a:not(.nav-cta):hover,.text-link:hover{color:#7a8e4f}.nav-cta{padding:11px 17px;background:var(--forest);color:white;border-radius:4px}.nav-cta span{margin-left:8px;color:var(--lime)}.menu-toggle{display:none}.hero{position:relative;min-height:680px;display:flex;align-items:center;color:white;background:#21382c url('assets/Twilight Garden Patio with Warm Lighting.webp') center 52%/cover no-repeat;overflow:hidden}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,32,24,.92) 0%,rgba(16,35,26,.79) 45%,rgba(17,34,26,.15) 100%),linear-gradient(0deg,rgba(12,28,21,.28),transparent 35%)}.hero-content{position:relative;z-index:1;padding-top:22px}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:#d6e2c9;display:flex;align-items:center;gap:10px}.pulse{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(217,231,166,.13)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);letter-spacing:-.055em;font-weight:600;line-height:1.08}h1{font-size:clamp(54px,7.3vw,92px);margin:27px 0 24px;max-width:760px}h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.06em}h1 em{color:var(--lime)}.hero-copy{max-width:520px;color:#e1e7df;font-size:16px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.button{display:inline-flex;align-items:center;gap:20px;justify-content:center;padding:14px 20px;border-radius:3px;font-size:12px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{background:var(--lime);color:var(--forest)}.button span{font-size:17px}.text-link{font-size:12px;font-weight:700}.light-link{color:white}.text-link span{margin-left:7px;color:#b9d08d}.hero-note{display:flex;align-items:center;gap:12px;margin-top:76px;color:#d2d9d1;font-size:11px;letter-spacing:.03em}.note-line{width:32px;height:1px;background:var(--lime)}.hero-caption{position:absolute;right:28px;bottom:24px;color:rgba(255,255,255,.8);font-size:9px;text-transform:uppercase;letter-spacing:.18em}.section{padding-top:112px;padding-bottom:112px}.section-kicker{font-size:10px;letter-spacing:.2em;font-weight:700;color:#687c5a;display:flex;gap:13px;align-items:center;margin-bottom:38px}.section-kicker span{color:#a1ae94;font-variant-numeric:tabular-nums}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8%;align-items:start}.intro h2,.build h2,.future h2{font-size:clamp(38px,5vw,59px);margin:0}.intro h2 em,.build h2 em,.future h2 em{color:#738660}.intro-copy{max-width:510px;color:#68736b;font-size:14px}.intro-copy .lead{font-size:18px;line-height:1.65;color:#293a2f}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:68px;border-top:1px solid var(--line);padding-top:31px}.principle-icon{font-size:23px;color:#7b9161}.principles h3{font:700 15px var(--display);margin:13px 0 7px}.principles p{font-size:12px;color:var(--muted);max-width:270px;margin:0}.feature-band{background:var(--forest);color:white;padding:105px 0}.feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:center}.kicker-light{color:#c4d1b6}.kicker-light span{color:#9db28c}.feature-copy h2{font-size:clamp(38px,4.5vw,57px);margin-bottom:25px}.feature-copy h2 em{color:var(--lime);font-family:var(--serif);font-weight:400}.feature-copy p{max-width:440px;color:#c7d0c8;font-size:14px;line-height:1.8}.feature-copy .text-link{display:inline-block;margin-top:12px}.system-card{background:#f9faf4;border-radius:8px;padding:25px;color:var(--ink);box-shadow:0 24px 80px rgba(0,0,0,.18)}.system-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:21px}.mini-label{font-size:9px;letter-spacing:.16em;font-weight:800;color:#68756a}.status{font-size:9px;color:#718166;display:flex;align-items:center;gap:6px}.status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7fa76b}.system-node{border:1px solid #dfe5d8;background:white;padding:15px 13px;border-radius:5px;display:flex;align-items:center;gap:13px}.node-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:5px;background:#e9eddf;color:#435c3a;font-size:22px}.node-green{background:#dcebd2}.system-node strong{font:700 12px var(--display);display:block}.system-node small{font-size:10px;color:#738075;display:block;margin-top:3px}.node-tag{margin-left:auto;font-size:8px;font-weight:800;letter-spacing:.1em;background:#eaf0e2;color:#637b52;padding:5px 7px;border-radius:3px}.connector{height:38px;display:flex;align-items:center;justify-content:center;gap:10px}.connector span{width:1px;height:100%;background:#b8c6ae}.connector small{background:#f9faf4;font-size:9px;color:#7d8b7b;padding:0 4px}.system-outcomes{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:19px}.system-outcomes>div{padding:15px 8px 12px;background:#edf1e7;border-radius:4px;text-align:center}.outcome-icon{display:block;font-size:20px;color:#60774e;margin-bottom:4px}.system-outcomes strong{display:block;font:700 10px var(--display)}.system-outcomes small{display:block;font-size:9px;color:#738075;margin-top:3px}.system-footnote{font-size:9px;color:#8a9388;margin:18px 0 0}.build-heading,.future-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:46px}.build-heading>p,.future-heading>p{max-width:390px;color:var(--muted);font-size:13px;margin-bottom:4px}.journey-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.journey-card{border:1px solid #e3e6de;background:white;min-width:0}.journey-image{height:225px;position:relative;overflow:hidden;background:#e6e8df}.journey-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.journey-card:hover .journey-image img{transform:scale(1.04)}.image-label{position:absolute;left:13px;top:13px;background:rgba(23,44,36,.88);color:#f5f6ef;font-size:8px;letter-spacing:.14em;font-weight:700;padding:7px 9px}.journey-text{padding:24px 22px 22px}.step-number{font-size:9px;letter-spacing:.15em;color:#849176;font-weight:800}.journey-text h3{font:700 17px var(--display);line-height:1.35;margin:13px 0 10px}.journey-text p{font-size:12px;line-height:1.8;color:var(--muted);margin-bottom:15px}.small-note{font-size:9px;color:#899187;display:block;border-top:1px solid #e8eae4;padding-top:12px;line-height:1.5}.build-callout{display:flex;align-items:center;gap:22px;background:var(--cream);padding:23px 25px;margin-top:28px}.callout-symbol{font-size:27px;color:#74885d}.build-callout p{font-size:12px;color:#68736b;margin:0;flex:1}.build-callout p strong{color:var(--ink)}.build-callout>a{font-size:11px;font-weight:700;white-space:nowrap;color:#506a3d}.garden-image-band{height:370px;position:relative;overflow:hidden;background:#27392c}.garden-image-band>img{width:100%;height:100%;object-fit:cover;object-position:center 53%;filter:brightness(.72)}.garden-image-overlay{position:absolute;left:max(24px,calc((100vw - 1160px)/2));top:50%;transform:translateY(-50%);max-width:580px;color:white}.garden-image-overlay .eyebrow{font-size:9px}.garden-image-overlay p{font:500 clamp(25px,3.5vw,42px)/1.2 var(--display);letter-spacing:-.04em;margin:16px 0 0}.visual-disclaimer{position:absolute;bottom:14px;right:22px;font-size:9px;color:rgba(255,255,255,.75);letter-spacing:.1em;text-transform:uppercase}.future-list{border-top:1px solid var(--line)}.future-list article{display:grid;grid-template-columns:50px 1fr 165px;gap:25px;align-items:center;padding:25px 4px;border-bottom:1px solid var(--line)}.future-index{font:500 18px var(--serif);color:#8a9a79}.future-list h3{font:700 16px var(--display);margin:0 0 5px}.future-list p{font-size:12px;color:var(--muted);margin:0;max-width:650px}.future-status{justify-self:end;font-size:9px;font-weight:700;border-radius:3px;padding:6px 9px}.current{background:#e4edd8;color:#536c43}.exploring{background:#e8eee7;color:#58705e}.future-status-later{background:#f0eee6;color:#857b60}.honest-note{font-size:11px;color:#788178;margin-top:24px}.honest-note span{color:#81976c;margin-right:8px}.connect{background:var(--forest);color:white;padding:104px 0 100px;position:relative;overflow:hidden}.connect:after{content:'✳';position:absolute;right:-10px;bottom:-150px;font:500 430px/1 var(--serif);color:rgba(217,231,166,.035);pointer-events:none}.connect-inner{position:relative;z-index:1}.connect h2{font-size:clamp(44px,6.2vw,76px);margin:0 0 22px}.connect h2 em{font-family:var(--serif);font-weight:400;color:var(--lime)}.connect-inner>p:not(.connect-small){max-width:570px;color:#cbd4cc;font-size:14px;line-height:1.85}.connect-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:29px}.button-outline{border:1px solid #738576;color:white}.button-outline:hover{background:rgba(255,255,255,.08)}.connect-small{font-size:10px;color:#9eafa0;margin:24px 0 0}.footer{background:#102119;color:#b9c5b8;padding:26px 0}.footer-inner{display:flex;align-items:center;gap:25px}.footer-brand{color:#eef2e8}.footer-brand .brand-mark{background:#087e5c}.footer-brand .brand-copy strong{color:#eef2e8}.footer-brand .brand-copy small{color:#00d69a}.footer-inner>p{font-size:10px;color:#9eafa0;margin:0}.footer-github{font-size:10px;margin-left:auto;color:#dbe6ce}.copyright{font-size:9px;color:#7e9282;margin-left:8px}
@media(max-width:900px){.nav{gap:18px}.nav a{font-size:11px}.feature-grid{gap:6%}.journey-image{height:185px}.journey-text{padding:20px 16px}.build-heading,.future-heading{align-items:start;flex-direction:column;gap:18px}.build-heading>p,.future-heading>p{max-width:550px}.hero{min-height:650px}.intro-grid{gap:5%}}
@media(max-width:700px){.wrap{width:min(100% - 36px,560px)}.site-header{height:70px;padding:0 18px}.brand-mark{width:34px;height:34px}.brand-copy strong{font-size:12px}.brand-copy small{font-size:7px}.menu-toggle{display:flex;flex-direction:column;gap:5px;border:0;background:transparent;padding:8px}.menu-toggle span{width:22px;height:2px;background:var(--forest);display:block}.nav{display:none;position:absolute;top:69px;left:0;right:0;background:var(--paper);padding:20px 22px 24px;box-shadow:0 15px 20px #14261a15;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:13px 0;border-bottom:1px solid var(--line);font-size:13px}.nav .nav-cta{margin-top:12px;padding:13px 15px;border:0;text-align:center}.hero{min-height:650px;background-position:60% center}.hero-shade{background:linear-gradient(90deg,rgba(14,32,24,.92),rgba(16,35,26,.69)),linear-gradient(0deg,rgba(12,28,21,.3),transparent 35%)}.hero-content{padding-top:0}.eyebrow{font-size:9px;letter-spacing:.13em}.hero h1{font-size:clamp(51px,13vw,70px)}.hero-copy{font-size:14px;line-height:1.8}.hero-actions{align-items:flex-start;flex-direction:column;gap:19px}.hero-note{margin-top:48px;max-width:300px;font-size:10px}.hero-caption{font-size:8px;right:15px;bottom:13px}.section{padding-top:76px;padding-bottom:76px}.section-kicker{margin-bottom:27px}.intro-grid{grid-template-columns:1fr;gap:25px}.intro h2,.build h2,.future h2{font-size:43px}.intro-copy .lead{font-size:16px}.principles{grid-template-columns:1fr;gap:22px;margin-top:40px;padding-top:25px}.principles article{display:grid;grid-template-columns:32px 1fr;column-gap:8px;align-items:start}.principle-icon{grid-row:span 2}.principles h3{margin:2px 0 4px}.principles p{max-width:none}.feature-band{padding:76px 0}.feature-grid{grid-template-columns:1fr;gap:35px}.feature-copy h2{font-size:43px}.system-card{padding:17px}.system-node{padding:12px 9px;gap:9px}.system-node strong{font-size:10px}.system-node small{font-size:9px}.system-outcomes{gap:5px}.system-outcomes>div{padding:12px 4px}.system-outcomes strong{font-size:9px}.system-outcomes small{font-size:8px}.build-heading,.future-heading{margin-bottom:30px}.journey-grid{grid-template-columns:1fr;gap:17px}.journey-image{height:235px}.journey-text{padding:21px}.journey-text p{font-size:13px}.build-callout{align-items:flex-start;flex-wrap:wrap;padding:20px;gap:13px}.build-callout p{flex-basis:calc(100% - 45px)}.build-callout>a{margin-left:40px}.garden-image-band{height:300px}.garden-image-overlay{left:20px;right:20px}.garden-image-overlay p{font-size:31px}.future-list article{grid-template-columns:28px 1fr;gap:10px;padding:20px 0}.future-list h3{font-size:14px}.future-list p{font-size:11px}.future-status{grid-column:2;justify-self:start;margin-top:5px}.connect{padding:76px 0}.connect h2{font-size:51px}.connect-actions{align-items:stretch;flex-direction:column;max-width:310px}.connect-actions .button{justify-content:space-between}.footer-inner{flex-wrap:wrap;gap:15px}.footer-inner>p{width:100%;order:3}.footer-github{margin-left:auto}.copyright{width:100%;margin:0;order:4}.footer-brand{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Real-photo timeline */
.photo-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px}.photo-timeline figure{margin:0;background:#f5f3ec}.photo-timeline img{width:100%;height:190px;object-fit:cover}.photo-timeline figcaption{padding:13px 15px;font-size:11px;color:#68736b}.photo-timeline figcaption b{color:#81976c;margin-right:9px;font-size:10px;letter-spacing:.08em}@media(max-width:1000px){.photo-timeline{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.photo-timeline{grid-template-columns:1fr}.photo-timeline img{height:220px}}

/* Live dashboard screenshots */
.dashboard-section{background:#f2f4ed}.dashboard-gallery{display:grid;grid-template-columns:1.05fr .95fr .82fr;gap:22px;align-items:start}.dashboard-shot{margin:0;min-width:0;background:#fffefa;border:1px solid #dfe3d9;padding:13px;box-shadow:0 12px 34px rgba(23,44,36,.06)}.dashboard-shot a{display:block;background:#0d1713;overflow:hidden}.dashboard-shot img{width:100%;height:420px;object-fit:contain;object-position:top center;background:#0d1713;transition:transform .25s}.dashboard-shot a:hover img{transform:scale(1.015)}.dashboard-shot figcaption{padding:15px 5px 5px}.dashboard-shot figcaption strong{display:block;font:700 14px var(--display);margin-bottom:5px}.dashboard-shot figcaption span{display:block;font-size:11px;line-height:1.7;color:var(--muted)}.dashboard-note{display:flex;align-items:center;gap:18px;background:#e4eadc;padding:22px 24px;margin-top:24px}.dashboard-note-mark{font-size:25px;color:#738660}.dashboard-note p{font-size:11px;line-height:1.7;color:#59675b;margin:0;flex:1}.dashboard-note p strong{color:var(--ink)}.dashboard-note>a{font-size:11px;font-weight:700;white-space:nowrap;color:#506a3d}@media(max-width:900px){.dashboard-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dashboard-shot{padding:8px}.dashboard-shot img{height:350px}.dashboard-shot figcaption strong{font-size:12px}}@media(max-width:700px){.dashboard-gallery{grid-template-columns:1fr;gap:18px}.dashboard-shot{padding:12px}.dashboard-shot img{height:min(78vh,680px)}.dashboard-shot figcaption strong{font-size:14px}.dashboard-shot figcaption span{font-size:12px}.dashboard-note{align-items:flex-start;flex-wrap:wrap;padding:19px;gap:10px}.dashboard-note p{flex-basis:calc(100% - 40px)}.dashboard-note>a{margin-left:37px}}

/* Embedded, interactive dashboard demo previews */
.dashboard-frame{height:420px;overflow:hidden;background:#0d1713;position:relative}
.dashboard-frame iframe{display:block;width:128%;height:540px;border:0;transform:scale(.78);transform-origin:top left;background:#0d1713}
@media(max-width:900px){.dashboard-frame{height:350px}.dashboard-frame iframe{height:500px;transform:scale(.68)}}
@media(max-width:700px){.dashboard-frame{height:540px}.dashboard-frame iframe{width:100%;height:680px;transform:none}}

/* Dashboard screenshots are static images, not scrolling embedded pages. */
.dashboard-demo-gallery .dashboard-frame{display:none}
.dashboard-image-link{display:block;overflow:hidden;background:#0d1713;line-height:0;border-radius:12px;text-align:center}
.dashboard-image-link img{display:block;width:100%;height:auto;max-height:680px;object-fit:contain;object-position:top center;transition:transform .25s ease}
.dashboard-image-link:hover img{transform:scale(1.015)}
.dashboard-demo-gallery .dashboard-shot{align-self:start}

/* Photo timeline: keep the light and brickwork in focus on the portrait detail image. */
.photo-timeline .timeline-detail{object-position:center 18%;}
.photo-timeline .timeline-before{object-position:center 48%;}
