@font-face{font-family:Editorial;src:url('/assets/editorial.woff2')}@font-face{font-family:Interface;src:url('/assets/interface.woff2')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#f7f5ed;color:#303c30;font-family:Interface,Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-underline-offset:4px}button{font:inherit;cursor:pointer}header,footer{max-width:1240px;margin:auto;padding:28px 40px;display:flex;align-items:center;gap:28px}header{justify-content:space-between;border-bottom:1px solid #dcded1}.brand{font-family:Editorial,Georgia,serif;font-size:28px;text-decoration:none;white-space:nowrap}.brand span{font-family:Georgia;color:#a68045;margin-left:7px}nav{display:flex;gap:30px;font-size:14px}nav a{text-decoration:none}h1,h2,h3,blockquote{font-family:Editorial,Georgia,serif;font-weight:400}h1{font-size:clamp(54px,6.7vw,94px);line-height:1.07;letter-spacing:-3px;margin:18px 0 25px}h1 em{font-weight:400;color:#6b7e56}h2{font-size:clamp(33px,4vw,52px);line-height:1.16;margin:16px 0 38px;letter-spacing:-1px}h3{font-size:27px;margin:12px 0}p{margin:12px 0}.eyebrow{font-size:11px;font-weight:600;letter-spacing:2px;color:#777e69}.hero{text-align:center;padding:74px 20px 36px}.intro{font-size:18px;color:#6b7263;margin-bottom:27px}.button{background:#43573b;color:#fffdf5;border:1px solid #43573b;display:inline-flex;align-items:center;gap:26px;padding:15px 26px;border-radius:7px;text-decoration:none;font-size:15px;transition:background .2s}.button:hover{background:#2b4127}.small{font-size:12px;color:#777e6d}.hero .small{margin-top:13px}.demo-section{max-width:1180px;margin:auto;padding:0 25px 48px}.garden-demo{position:relative;height:560px;overflow:hidden;border-radius:26px;background:#dde5c8;border:1px solid #dadfcf}.landscape{width:100%;height:100%;object-fit:cover;object-position:center}.garden-demo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#47553c60);pointer-events:none}.example-label{position:absolute;top:24px;left:26px;padding:7px 13px;background:#fbf9ecdf;border:1px solid #d9decc;border-radius:30px;font-size:10px;letter-spacing:1.6px}.wish-bubble{position:absolute;left:50%;top:20%;transform:translateX(-50%);width:360px;padding:22px 26px 16px;border-radius:19px;background:#fffef5f5;box-shadow:0 8px 40px #39452b1f;z-index:2}.wish-bubble:after{content:'';position:absolute;bottom:-13px;left:50%;border-top:15px solid #fffef5;border-left:12px solid transparent;border-right:12px solid transparent}.wish-bubble span{font-size:9px;letter-spacing:1.4px;color:#80856c}.wish-bubble p{font-family:Editorial,Georgia,serif;font-size:23px;line-height:1.45;min-height:133px;margin:12px 0}.wish-bubble button{border:0;background:transparent;padding:4px 0;color:#747c65;font-size:11px}.robin{position:absolute;left:50%;top:58%;transform:translateX(-50%);width:130px;height:130px;object-fit:contain;z-index:1}.demo-foot{display:flex;justify-content:center;align-items:center;max-width:820px;margin:27px auto 0}.practices,.ideas,.plans,.faq,.closing{max-width:1100px;margin:auto;padding:82px 30px;text-align:center}.practices{padding-top:70px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.practices article{padding:12px 15px}.practices article>span{font-size:30px;color:#899372}.practices p:not(.eyebrow){font-size:14px;color:#747b6b}.ideas{border-top:1px solid #dcded1;border-bottom:1px solid #dcded1}.quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:20px;text-align:center}.quotes figure{margin:0;background:#efeee4;border:1px solid #dfdfd0;border-radius:12px;display:grid;grid-template-rows:1fr auto;gap:24px;padding:29px 32px;min-height:286px}.quotes blockquote{display:flex;align-items:center;justify-content:center;margin:0;min-height:168px;text-wrap:balance}blockquote{margin:0 0 30px;font-size:25px;line-height:1.4}figcaption{font-size:13px}figcaption a{text-decoration:none;overflow-wrap:anywhere}figcaption span{display:block;font-size:11px;color:#838774;margin-top:3px}.toggle{display:inline-flex;padding:4px;border-radius:30px;border:1px solid #d7dbcd;background:#eeefe5}.toggle button{border:0;border-radius:25px;background:transparent;padding:9px 24px;font-size:14px;color:#747b68}.toggle [aria-pressed=true]{background:#fffef8;color:#334a2d;box-shadow:0 1px 5px #36482d15}#plan-note{font-size:13px;color:#777e6b;margin:20px 0 28px}.plan{padding:27px 20px;background:#fffdf6;border:1px solid #d9ddcd;border-radius:14px;text-align:left;display:flex;flex-direction:column}.plan:first-child{border-color:#6e8158}.plan .eyebrow{font-size:9px;letter-spacing:1px}.plan h3{margin-bottom:0}.plan .units{font-size:14px;color:#727b66}.price{font-family:Editorial,Georgia,serif;font-size:46px;margin:16px 0}.price span{font-family:Interface,Arial,sans-serif;font-size:12px;color:#777e6b;margin-left:8px}.plan .button{justify-content:space-between;margin-top:auto}.plan .small{margin-bottom:0}.custom{margin-top:28px;font-size:14px}.faq{max-width:820px;border-top:1px solid #dcded1}.faq details{text-align:left;border-bottom:1px solid #dcded1;padding:19px 0}.rules-link{margin:26px 0 0;font-size:14px}.faq summary{cursor:pointer;font-size:16px}.faq details p{color:#737b68;font-size:14px;line-height:1.8;padding-right:20px}.closing{padding-top:35px;padding-bottom:100px}.closing h2{font-size:clamp(42px,5vw,66px)}footer{border-top:1px solid #dcded1;font-size:12px;flex-wrap:wrap}footer p{flex:1;color:#777e6b}.skip{position:absolute;left:10px;top:-100px;background:white;z-index:10;padding:12px}.skip:focus{top:10px}:focus-visible{outline:3px solid #ac7936;outline-offset:5px}.service{max-width:850px;margin:auto;padding:60px 30px 90px}.service h1{font-size:55px;letter-spacing:-1px}.service h2{font-size:30px;margin:36px 0 12px}.service p,.service li{color:#65705c}.service .callout{border-left:3px solid #859771;padding:8px 22px;background:#eeefe5}.service table{border-collapse:collapse;width:100%;font-size:14px}.service td,.service th{padding:12px 8px;text-align:left;border-bottom:1px solid #d5dacb}@media(max-width:900px){.quotes{grid-template-columns:1fr}}@media(max-width:640px){header,footer{padding:21px 22px;gap:16px}.brand{font-size:25px}nav{gap:17px;font-size:12px}nav a:first-child{display:none}.hero{padding:52px 22px 27px}h1{letter-spacing:-1.8px}.intro{font-size:15px;line-height:1.7}.demo-section{padding:0 14px 36px}.garden-demo{height:500px;border-radius:18px}.wish-bubble{width:calc(100% - 44px);top:22%;padding:20px}.wish-bubble p{font-size:22px;min-height:151px}.example-label{top:17px;left:17px;font-size:8px}.robin{top:65%;width:110px;height:110px}.demo-foot{display:block;text-align:center}.demo-foot .button{margin-top:8px}.practices,.ideas,.plans,.faq,.closing{padding:55px 23px}.three,.quotes{grid-template-columns:1fr}.practices .three{gap:5px}.practices article{padding:12px}.quotes figure{padding:26px;min-height:280px}blockquote{font-size:24px}.plan{padding:26px}.plan .button{justify-content:center}.closing{padding-bottom:70px}footer p{flex-basis:100%;order:3}.service{padding:40px 24px}.service h1{font-size:44px}.service table{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Keep the example wish above Robin on small screens. */
@media(max-width:640px){.wish-bubble{top:58px;width:calc(100% - 36px);padding:16px 18px 13px}.wish-bubble p{font-size:18px;line-height:1.4;min-height:0;margin:10px 0}.wish-bubble>span{font-size:9px;letter-spacing:1.3px}.wish-bubble button{font-size:11px}.hero h1{font-size:clamp(48px,12.5vw,68px)}}
@media(max-width:360px){.wish-bubble p{font-size:17px}.hero{padding-top:38px}.hero h1{font-size:46px}.intro{font-size:14px}}

/* Map and writer share world coordinates; phone camera keeps the paved clearing in view. */
.demo-plane{position:absolute;width:1536px;height:1024px;transform-origin:top left}
.demo-plane .landscape{position:absolute;inset:0;width:100%;height:100%}
.demo-plane .robin{left:34%;top:38%;width:220px;height:220px;transform:none}
.wish-bubble{left:68%;top:16%}
@media(max-width:640px){.wish-bubble{left:50%;top:58px}.wish-bubble p{font-size:17px;line-height:1.35}}
@media(min-width:641px) and (max-width:900px){.wish-bubble{left:70%;width:300px}.wish-bubble p{font-size:20px}}

@media(max-width:360px){.wish-bubble{top:50px;padding:12px 18px 10px}.wish-bubble p{font-size:16px;line-height:1.3;margin:8px 0}}

.offer-art{position:relative;overflow:hidden;border-radius:10px;background:#e4ead9;isolation:isolate}
.offer-art img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:3/2}
.recommendation{position:absolute;top:10px;right:10px;background:#294d37;color:#fffaf0;border:1px solid #fffaf080;border-radius:30px;padding:5px 11px;font:12px/1.5 Interface,Arial,sans-serif;box-shadow:0 2px 10px #16281530}

.plan{position:relative}.plan:first-child{border-color:#d9ddcd}.plan .offer-art{margin:-10px -3px 16px;aspect-ratio:3/2}
.plan.featured{border:2px solid #43573b;background:#eef1e4;box-shadow:0 7px 22px #34472c12}
.plan:not(.featured) .button{background:#e8eddc;border-color:#d6deca;color:#36543c}.plan:not(.featured) .button:hover{background:#dce5cb}
.toggle #once{color:#737c68}.toggle #once[aria-pressed=true]{color:#334a2d}
@media(max-width:640px){.plan .offer-art{margin:-10px -10px 15px;max-height:190px}.plan h3{font-size:28px}.plan .units{margin-top:5px}.plan .price{margin:12px 0 20px}}

@media(max-width:640px){.plan .offer-art{width:calc(100% + 20px)}}

/* Single-column quotations follow their content on tablet and narrow desktop windows. */
@media(max-width:900px){
 .quotes{grid-auto-rows:auto}
 .quotes figure{grid-template-rows:auto auto;min-height:0;padding:24px 28px;gap:16px}
 .quotes blockquote{display:block;min-height:0;text-wrap:pretty}
}

/* Mobile quotations follow their content instead of becoming three tall posters. */
@media(max-width:640px){
 .ideas{padding:34px 22px}
 .ideas h2{font-size:28px;line-height:1.15;margin:0 0 22px}
 .quotes{grid-auto-rows:auto;gap:10px;text-align:left}
 .quotes figure{grid-template-rows:auto auto;min-height:0;padding:17px 19px;gap:12px}
 .quotes blockquote{display:block;min-height:0;font-size:20px;line-height:1.3;text-wrap:pretty}
 .quotes figcaption{font-size:12px;line-height:1.4}
 .quotes figcaption span{font-size:11px;margin-top:2px}
}

.demo-foot .our-garden-link{display:inline-flex;align-items:center;min-height:44px;margin:12px 20px;text-underline-offset:4px;font-size:15px}
