/* Landing-page styles, scoped to avoid changing the live homepage. */
.lp-restored .site-header{position:relative;top:auto}.lp-restored .header-inner{justify-content:flex-start}.lp-restored .site-nav,.lp-restored .menu-toggle,.lp-restored .floating-links{display:none}
.lp-hero{position:relative;min-height:580px;padding:110px max(32px,10vw) 170px;background:linear-gradient(#0004,#0004),url('/assets/img/Garden-2.webp') center/cover;border-radius:0 220px 0 220px;color:#fff;margin-bottom:30px}
.lp-hero h1{font-size:clamp(40px,4.4vw,70px);line-height:1.05;max-width:650px;text-shadow:0 2px 12px #0005}.lp-bubble{position:absolute;right:2%;bottom:-200px;width:440px;aspect-ratio:1/1.1;background:url('/assets/img/about_bubble2.webp') center/100% 100% no-repeat;padding:110px 50px 50px;font-size:32px;font-weight:700;line-height:1.3}.lp-bubble p{margin:0}
.lp-about{width:54%;max-width:780px;margin:70px 0 80px 6%;font-size:17px;line-height:1.4}.lp-about h2{font-size:48px}.lp-about p:last-child{margin:0}
.lp-services-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(300px,1fr);gap:36px;width:88%;max-width:1500px;margin:0 auto 90px;align-items:stretch}.lp-services{min-width:0}.lp-service{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;position:relative;min-height:330px;margin:0 0 44px;padding:38px 0 38px 32px;border-radius:65px;background:#efefef}.lp-service:last-child{margin-bottom:0}.lp-service h2{font-size:clamp(27px,2.4vw,39px);line-height:1.08}.lp-service-copy{position:relative;z-index:1}.lp-service-copy>div{font-size:16px;line-height:1.4}.lp-service .button{margin-top:24px;font-size:15px}.lp-service-art{position:relative;align-self:stretch;display:flex;align-items:center;margin-right:-22px}.lp-service-art>img:first-child{width:100%;height:auto}.lp-leaf{position:absolute;width:52%;bottom:-15px;right:-4px;pointer-events:none}.lp-service--reverse{grid-template-columns:1fr 1.25fr;padding:38px 28px 38px 0;background:#fff}.lp-service--reverse .lp-service-art{order:-1;margin:0 8px 0 -22px}.lp-service--reverse .lp-leaf{right:auto;left:0}
.lp-sidebar{min-width:0}.lp-sticky{position:sticky;top:100px;max-height:calc(100svh - 120px);overflow-y:auto;overscroll-behavior:contain;padding:30px 24px;background:#ededed;border-radius:45px;scrollbar-width:thin}.lp-restored .contact-form{width:100%;margin:0}.lp-restored .contact-form h2{font-size:32px;text-align:left;line-height:1.1;margin-bottom:24px}.lp-restored .contact-form label{margin-bottom:12px}.lp-restored .contact-form input,.lp-restored .contact-form textarea{font-size:16px;padding:12px 18px}.lp-restored .contact-form textarea{resize:vertical;min-height:110px}.lp-restored .contact-form .consent{font-size:13px;line-height:1.4}.lp-restored .contact-form .consent input{width:18px;height:18px;flex:none;padding:0}.lp-restored .contact-form .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.lp-restored [data-turnstile]{margin:10px 0;min-height:65px}.lp-restored .form-status{font-size:14px;margin:14px 0 0}.lp-restored button:disabled{opacity:.6;cursor:wait}
.lp-restored .projects{padding-top:65px;padding-bottom:80px}.lp-restored .projects h2{font-size:clamp(32px,4vw,54px)}
.lp-contact{position:relative;display:grid;grid-template-columns:200px minmax(0,660px);justify-content:center;gap:50px;padding:65px 32px 100px;background:#ededed;isolation:isolate}.lp-contact-art{padding-top:30px}.lp-contact-swirl{width:120px;margin:30px auto;opacity:.6}.lp-contact-main{position:relative;z-index:1}.lp-falling-leaves{position:absolute;right:0;bottom:0;max-width:38%;max-height:90%;object-fit:contain;z-index:-1;pointer-events:none}.lp-contact .contact-form h2{font-size:44px}.lp-contact :target{scroll-margin-top:30px}
@media(min-width:1600px){.lp-hero{min-height:670px}.lp-bubble{right:5%;width:490px;font-size:37px}.lp-service{min-height:380px}}
@media(max-width:1000px){.lp-hero{min-height:470px;padding:80px 6% 140px;border-radius:0 130px 0 130px}.lp-bubble{width:330px;bottom:-165px;padding:85px 38px 40px;font-size:24px}.lp-about{font-size:16px;width:52%;margin-left:5%;margin-bottom:50px}.lp-about h2{font-size:38px}.lp-services-layout{width:92%;gap:22px;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr)}.lp-service{padding:25px 18px;grid-template-columns:1fr;min-height:0;border-radius:40px}.lp-service-art{order:-1;margin:0 auto 16px;width:70%}.lp-service--reverse .lp-service-art{margin:0 auto 16px}.lp-service h2{font-size:30px}.lp-sticky{padding:25px 18px}.lp-restored .contact-form h2{font-size:28px}.lp-contact{grid-template-columns:150px minmax(0,580px);gap:25px}}
@media(max-width:760px){.lp-hero{min-height:420px;padding:65px 24px 90px;border-radius:0 85px 0 85px;margin-bottom:170px}.lp-hero h1{font-size:40px}.lp-bubble{width:255px;bottom:-170px;right:18px;padding:64px 30px 40px;font-size:20px}.lp-about{width:auto;max-width:none;margin:205px 24px 40px}.lp-about h2{font-size:36px}.lp-services-layout{display:flex;flex-direction:column;width:auto;margin:0 24px 45px;gap:15px}.lp-service{display:grid;grid-template-columns:1.2fr 1fr;padding:26px 20px;margin-bottom:28px}.lp-service-art,.lp-service--reverse .lp-service-art{order:0;width:auto;margin:0 -20px 0 0}.lp-service--reverse{grid-template-columns:1fr 1.2fr}.lp-service--reverse .lp-service-art{order:-1;margin:0 10px 0 -20px}.lp-service h2{font-size:27px}.lp-service-copy>div{font-size:15px}.lp-service .button{padding:10px 18px}.lp-sticky{position:static;max-height:none;overflow:visible;padding:30px 24px}.lp-restored .contact-form h2{font-size:32px}.lp-contact{display:block;padding:40px 24px 60px}.lp-contact-art{padding:0;width:130px;margin:0 0 25px auto}.lp-contact-swirl{display:none}.lp-contact .contact-form h2{font-size:34px}.lp-falling-leaves{max-width:70%;opacity:.35}.lp-restored .projects{width:calc(100% - 48px);padding:35px 0 50px}}
@media(max-width:380px){.lp-service,.lp-service--reverse{display:flex;flex-direction:column}.lp-service-art,.lp-service--reverse .lp-service-art{order:-1;width:70%;margin:0 auto 15px}.lp-service h2{font-size:29px}.lp-sticky{padding:24px 16px}}

/* Service backgrounds follow the artwork height on desktop. */
@media(min-width:1001px){
 .lp-service:not(.lp-service--reverse){min-height:0;padding-top:0;padding-bottom:0}
 .lp-service:not(.lp-service--reverse) .lp-service-art{align-self:center}
 .lp-service:not(.lp-service--reverse) .lp-service-copy{padding-block:16px}
}
/* Reuse the live site's badge, quote, arrows and pagination styling. */
.lp-restored .lp-live-reviews{display:block;background:linear-gradient(rgba(0,0,0,.36),rgba(0,0,0,.4)),url('/assets/img/Garden-1.webp') center/cover no-repeat;border-radius:0;margin:40px 0;color:#fff}
.lp-review-more{text-align:center;margin-top:30px}

/* Align the introduction with the shared services/form column boundaries. */
.lp-restored{--lp-column-edge:max(6%,calc((100% - 1500px)/2))}
.lp-restored .lp-bubble{right:var(--lp-column-edge)}
.lp-restored .lp-about{margin-left:var(--lp-column-edge)}
@media(max-width:1000px){.lp-restored{--lp-column-edge:4%}}
@media(max-width:760px){.lp-restored{--lp-column-edge:24px}}

/* Stop each horizontal grey panel at the centre of its artwork. */
@media(min-width:1001px){
 .lp-service:not(.lp-service--reverse){background:transparent;isolation:isolate}
 .lp-service:not(.lp-service--reverse)::before{content:"";position:absolute;inset:0 calc((100% - 32px)/4.5 - 11px) 0 0;background:#efefef;border-radius:65px 0 0 65px;z-index:-1}
}
@media(min-width:381px) and (max-width:760px){
 .lp-service:not(.lp-service--reverse){background:transparent;isolation:isolate}
 .lp-service:not(.lp-service--reverse)::before{content:"";position:absolute;inset:0 calc((100% - 40px)/4.4 + 10px) 0 0;background:#efefef;border-radius:40px 0 0 40px;z-index:-1}
}
