:root{--paper:#fbf6eb;--green:#234b36;--ink:#233d30;--muted:#526253;--line:#d4d8c6;--yellow:#f6cf63;--peach:#f4cfb8;--lilac:#e6dcef;--sage:#e0e8c9;--white:#fffef9;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}button,a,summary{touch-action:manipulation}a,button{ -webkit-tap-highlight-color:transparent}img{max-width:100%}button{color:inherit}button:disabled{opacity:.6;cursor:default}:focus-visible{outline:3px solid #693b83;outline-offset:5px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;left:20px;top:-120px;z-index:100;background:var(--green);color:white;padding:12px 20px;border-radius:10px}.skip:focus{top:10px}.draft{padding:7px 20px;text-align:center;background:var(--sage);font-size:14px;color:#3e523c}header{display:flex;align-items:center;gap:30px;max-width:1280px;margin:auto;padding:24px 0;border-bottom:1px solid var(--line);position:relative;z-index:15}.brand{display:flex;align-items:center;gap:12px;font-size:34px;line-height:1;font-weight:800;letter-spacing:-1.8px}.brand-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50% 50% 12% 50%;background:var(--yellow);color:var(--green);font-size:32px;letter-spacing:0;font-weight:500}.brand-sub{display:block;font-size:10px;letter-spacing:1.3px;line-height:1.3;margin-top:9px;font-weight:700}nav{display:flex;gap:28px;margin-left:auto}nav a{display:inline-flex;align-items:center;min-height:48px;font-size:16px}nav a:hover,.hero-email:hover{text-decoration:underline;text-underline-offset:6px}.header-contact,.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;border:0;min-height:52px;padding:14px 24px;border-radius:12px;background:var(--green);color:white;font-weight:600;font-size:16px;line-height:1.4;transition:background .15s}.header-contact:hover,.button:hover{background:#35664a}.button>span[aria-hidden]{font-size:21px}.menu{display:none}.hero{max-width:1280px;margin:auto;padding:62px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:42px 55px}.hero-copy{padding:20px 0}.location,.eyebrow{font-size:13px;font-weight:700;letter-spacing:1.5px;color:#455f40;margin:0 0 22px}.location{font-size:12px;letter-spacing:1.1px}h1{font-size:clamp(46px,5.2vw,74px);line-height:1.04;letter-spacing:-2.8px;font-weight:650;margin:0 0 26px}h1>span{color:#4d6b3e}h2{font-size:clamp(33px,3.2vw,46px);line-height:1.15;letter-spacing:-1.4px;font-weight:600;margin:0}h3{line-height:1.3;letter-spacing:-.6px}.hero-lead{font-size:24px;line-height:1.45;letter-spacing:-.5px;margin:0 0 17px}.hero-description{font-size:18px;line-height:1.75;max-width:490px;margin:0;color:var(--muted)}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px 22px;margin-top:27px}.hero-email{font-size:16px;min-height:48px;display:flex;align-items:center;gap:15px;border-bottom:1px solid var(--green)}.hero-personal{font-size:14px;line-height:1.6;margin:26px 0 0;color:var(--muted)}.hero-pictures{position:relative;min-width:0;padding:0 20px 75px 0;align-self:center}.hero-art{margin:0;border-radius:130px 26px 26px 26px;overflow:hidden;height:490px;background:var(--sage);position:relative}.hero-art>img{height:100%;width:100%;object-fit:cover;object-position:50% 50%;display:block}.hero-art figcaption{position:absolute;left:24px;top:24px;padding:7px 13px;border-radius:7px;background:var(--paper);color:var(--ink);font-size:14px}.hero-detail{position:absolute;right:-8px;bottom:0;width:38%;height:250px;border:8px solid var(--paper);margin:0;background:var(--sage);border-radius:90px 90px 18px 18px;overflow:hidden;transform:rotate(5deg)}.hero-detail img{width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block}.hero-detail figcaption{position:absolute;bottom:0;left:0;right:0;text-align:center;background:var(--paper);font-size:12px;padding:5px}.garden-stamp{position:absolute;bottom:30px;left:30px;width:138px;height:138px;border-radius:50%;background:var(--yellow);display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:1px;line-height:1.6;transform:rotate(-10deg);text-align:center}.garden-stamp>span{font-size:45px;line-height:1.1}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.hero-rating{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:14px;min-height:48px}.hero-rating strong{font-size:16px}.rating-stars,.quote-stars{color:#695116;letter-spacing:2px}.hero-local{font-size:14px;color:var(--muted)}.section{max-width:1280px;margin:0 auto;padding:80px 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:36px}.intro{font-size:18px;line-height:1.75;color:var(--muted);max-width:440px;margin:18px 0 0}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.services article{padding:30px;border-radius:22px;background:var(--sage);position:relative;display:flex;flex-direction:column}.services article:nth-child(2){background:var(--peach)}.services article:nth-child(3){background:var(--lilac)}.service-icon{font-size:36px;line-height:1;display:inline-block;width:50px;height:50px}.service-num{position:absolute;right:30px;top:30px;font-size:14px}.services h3{font-size:25px;font-weight:600;margin:30px 0 15px}.services p{font-size:17px;line-height:1.75;margin:0 0 27px;color:#394e3e}.service-action{display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;background:none;border:0;border-top:1px solid #59634e55;padding:17px 0 0;min-height:54px;font-size:16px;font-weight:600;line-height:1.45;margin-top:auto}.service-action>span{font-size:24px}.editorial-note{font-size:14px;color:var(--muted);margin:17px 0 0;max-width:900px}.work-section{padding-top:20px}.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 20px}.work-card{margin:0;min-width:0}.work-photo{display:block;position:relative;overflow:hidden;border-radius:18px;background:var(--sage)}.work-photo img{display:block;width:100%;height:260px;object-fit:cover;transition:transform .2s}.work-photo:hover img{transform:scale(1.025)}.work-photo>span{position:absolute;right:12px;bottom:12px;width:42px;height:42px;display:grid;place-items:center;border-radius:50%;font-size:23px;background:var(--white)}.work-card figcaption{display:flex;gap:12px;padding:13px 2px;font-size:16px;line-height:1.5}.work-card figcaption>span{font-size:13px;color:var(--muted);padding-top:2px}.work-card strong{font-weight:500}.selected-3 .work-photo img{object-position:50% 40%}.selected-6 .work-photo img{object-position:35% 45%}.selected-8 .work-photo img{object-position:50% 45%}.ideas{padding:45px;background:#eee6f4;border-radius:28px;margin-bottom:35px}.ideas .eyebrow{color:#62426f}.idea-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px}.idea-tabs button{padding:12px 20px;border:1px solid #b9a8c1;border-radius:28px;min-height:48px;background:transparent;font-size:16px;color:#4f365b}.idea-tabs button[aria-selected=true]{background:#654679;color:#fff;border-color:#654679}.idea-panel{display:grid;grid-template-columns:1fr 1fr;background:var(--white);border-radius:20px;overflow:hidden}.idea-visual{position:relative;min-height:390px;background:var(--sage);overflow:hidden}.idea-visual img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.idea-visual>span{position:absolute;bottom:18px;left:18px;right:18px;width:fit-content;background:var(--paper);color:var(--ink);border-radius:8px;padding:7px 12px;font-size:13px}.idea-copy{padding:35px}.idea-copy h3{font-size:28px;margin:0 0 17px;font-weight:600}.idea-copy p:not(.eyebrow),.idea-copy li{font-size:17px;color:var(--muted);line-height:1.75}.idea-copy ul{padding-left:20px}.text-link{display:inline-flex;align-items:center;min-height:48px;font-size:16px;gap:15px;text-decoration:underline;text-underline-offset:5px;padding:6px 0}.about{display:grid;grid-template-columns:.95fr 1fr;align-items:center;gap:65px}.about figure{margin:0;background:var(--yellow);border-radius:20px 100px 20px 20px;padding:18px;transform:rotate(-2deg)}.about img{display:block;width:100%;height:340px;object-fit:cover;border-radius:12px 85px 12px 12px}.about figcaption{font-size:14px;padding:12px 5px 0}.about-copy p:not(.eyebrow){font-size:18px;line-height:1.75;color:var(--muted);margin:22px 0}.how{padding-top:15px}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;list-style:none;padding:0;margin:0}.steps li{border-top:2px solid var(--line);padding:24px 0 0}.steps li>span{display:grid;place-items:center;width:44px;height:44px;background:var(--yellow);border-radius:50%;font-size:15px;font-weight:700}.steps h3{font-size:24px;font-weight:600;margin:20px 0 12px}.steps p{font-size:17px;line-height:1.75;color:var(--muted);margin:0}.reviews{background:var(--peach);border-radius:28px;padding:45px}.reviews .eyebrow{color:#68402d}.reviews .intro{color:#5b493c}.reviews-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:48px}.google-label{font-size:16px}.rating-value{font-size:80px;letter-spacing:-4px;line-height:1.1;margin:15px 0}.rating-value span{font-size:18px;letter-spacing:0;margin-left:10px}.rating-summary>.rating-stars{font-size:24px}.rating-summary>p{font-size:16px;margin:10px 0 20px}.rating-summary .review-note{font-size:14px;line-height:1.65;color:#5b493c}.rating-summary .button{margin:5px 0 15px}.review-quotes{display:grid;gap:18px}.review-quotes figure{margin:0;background:var(--white);padding:25px;border-radius:18px}.quote-top{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.avatar{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--sage);font-size:12px;flex-shrink:0}.quote-top figcaption{font-size:16px;line-height:1.5;display:grid}.quote-top figcaption>span{font-size:13px;color:var(--muted)}.quote-stars{margin-left:auto;font-size:14px}.review-quotes blockquote{margin:22px 0;font-size:21px;line-height:1.6}.review-quotes figure>a{font-size:14px;text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px}.review-disclosure{font-size:14px;line-height:1.75;color:#5b493c;margin:30px 0 0}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.questions details{border-bottom:1px solid var(--line)}.questions summary{position:relative;cursor:pointer;padding:20px 36px 20px 0;min-height:60px;font-size:18px;line-height:1.5;list-style:none}.questions summary::-webkit-details-marker{display:none}.questions summary:after{content:'+';position:absolute;right:2px;top:17px;font-size:24px}.questions details[open] summary:after{content:'−'}.questions p{margin:0 0 23px;font-size:17px;line-height:1.75;color:var(--muted)}.questions p a{text-decoration:underline}.contact-section{background:var(--green);color:var(--paper);padding:48px;border-radius:28px;display:grid;grid-template-columns:1fr 1fr;gap:48px}.contact-section .eyebrow{color:#e0e8c9}.contact-section h2>span{color:var(--yellow)}.contact-section .intro{color:#edf0e3}.contact-section .button{background:var(--yellow);color:var(--ink);margin-top:25px}.contact-section .button:hover{background:#ffe394}.contact-hint{font-size:14px;line-height:1.7;margin-top:15px}.contact-card{background:var(--white);color:var(--ink);border-radius:18px;padding:12px 26px 25px;min-width:0}.contact-option{display:flex;align-items:center;gap:14px;padding:19px 0;border-bottom:1px solid var(--line)}.contact-option>span:nth-child(2){min-width:0;flex:1}.contact-option small{display:block;font-size:14px;color:var(--muted);margin-bottom:6px}.contact-option strong{font-size:22px;font-weight:500;overflow-wrap:anywhere;line-height:1.4;display:block}.contact-option>span:last-child{font-size:22px}.contact-symbol{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--sage);font-size:20px;flex-shrink:0}.copy-address{background:none;border:0;min-height:48px;font-size:15px;text-decoration:underline;text-underline-offset:4px;padding:10px 0}.contact-copy-status:empty,#contact-copy-status:empty{display:none}.contact-address{font-size:16px;display:grid;gap:14px;padding-top:18px}.contact-address>span{font-weight:600}.contact-address address{font-style:normal;color:var(--muted)}.contact-address>a{font-size:15px;text-decoration:underline;text-underline-offset:4px;min-height:44px;display:flex;align-items:center}footer{max-width:1280px;margin:45px auto 0;padding:30px 0 40px;display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap;border-top:1px solid var(--line)}footer .brand{font-size:29px}footer>p{font-size:14px;color:var(--muted);max-width:290px}footer>div{display:flex;gap:22px;flex-wrap:wrap}footer a{display:inline-flex;align-items:center;min-height:48px;font-size:16px}.mobile-contact{display:none}dialog{width:calc(100% - 28px);max-width:680px;max-height:90vh;max-height:90dvh;border:1px solid var(--line);padding:28px;background:var(--paper);color:var(--ink);border-radius:22px;box-shadow:0 25px 100px #13271944;overflow:auto}dialog::backdrop{background:#16271cd4}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.dialog-top .eyebrow{margin:0}.close-dialog,#close-photo{min-height:48px;padding:10px 16px;border:1px solid #9aab91;background:var(--white);font-size:16px;border-radius:10px;white-space:nowrap}dialog h2{font-size:32px;letter-spacing:-1px}.dialog-intro{font-size:17px;line-height:1.7;color:var(--muted);margin:20px 0 25px}fieldset{border:0;padding:0;margin:0 0 24px}legend,label{font-size:16px;font-weight:600}legend{margin-bottom:12px}.field-step{display:none}.choices{display:flex;gap:10px;flex-wrap:wrap}.choices label{position:relative;cursor:pointer}.choices input{position:absolute;width:1px;height:1px;opacity:0}.choices span{display:block;padding:11px 15px;min-height:48px;border:1px solid #9aab91;border-radius:25px;font-size:16px;font-weight:400}.choices input:checked+span{background:var(--green);color:white;border-color:var(--green)}.choices input:focus-visible+span{outline:3px solid #693b83;outline-offset:3px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.location-field,form>label{display:block}.optional{font-size:14px;font-weight:400;color:var(--muted)}input:not([type=checkbox]),textarea{display:block;width:100%;padding:13px;border:1px solid #98a88f;background:var(--white);color:var(--ink);font-size:17px;font-weight:400;line-height:1.6;border-radius:9px;margin-top:9px}textarea{resize:vertical;min-height:120px}input::placeholder,textarea::placeholder{color:#5b6b5b;opacity:1}.form-help,.small,.status{font-size:14px;color:var(--muted);line-height:1.75}.status{margin-top:18px;color:var(--ink)}#result{margin-top:25px;padding-top:25px;border-top:1px solid var(--line)}.result-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.secondary{font-size:16px;min-height:48px;padding:12px 15px;border:1px solid #9aab91;background:var(--white);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex:1 1 200px}.secondary:first-child{background:var(--green);color:#fff;border-color:var(--green)}body:has(dialog[open]){overflow:hidden}.nojs{padding:22px 5%;background:var(--yellow);font-size:16px}.js-ready .nojs{display:none}body:not(.js-ready) [data-open-project],body:not(.js-ready) .menu,body:not(.js-ready) .idea-tabs,body:not(.js-ready) #copy-address{display:none}body:not(.js-ready) nav{display:flex}body:not(.js-ready) .mobile-contact{grid-template-columns:1fr}#photo-dialog{max-width:1100px;padding:20px}#photo-dialog h2{font-size:23px}#full-photo{display:block;max-width:100%;width:auto;height:auto;max-height:64vh;max-height:64dvh;object-fit:contain;margin:auto;border-radius:5px}#photo-count{text-align:center;font-size:14px}.photo-controls{display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}.photo-controls button{min-height:48px;flex:1;padding:10px 18px;border:1px solid #9aab91;border-radius:10px;background:var(--white);font-size:16px}.legal-main{max-width:880px;margin:0 auto;padding:60px 0}.legal-main h1{font-size:48px;line-height:1.2}.legal-main h2{font-size:26px;line-height:1.35;letter-spacing:-.5px;margin:35px 0 15px}.legal-main p,.legal-main li,.legal-main address{font-size:18px;line-height:1.8;font-style:normal}.legal-main a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.legal-note{padding:22px;background:var(--sage);border-left:4px solid var(--green);border-radius:0 12px 12px 0;font-size:16px;line-height:1.8}.error-page{max-width:780px;margin:0 auto;padding:90px 30px}.error-page h1{font-size:clamp(38px,6vw,66px)}.error-page p{font-size:18px;color:var(--muted)}.error-page p a{text-decoration:underline}
@media(max-width:1360px){header,.hero,.section,footer{margin-left:4%;margin-right:4%}.legal-main{margin-left:auto;margin-right:auto;padding-left:5%;padding-right:5%}.hero{gap:35px}.hero-art{height:460px}.hero-detail{height:220px}}
@media(max-width:1100px){header{gap:20px}nav{gap:20px}.hero{gap:30px}.hero-art{height:450px;border-top-left-radius:90px}.hero-detail{height:210px;width:42%}.garden-stamp{left:10px;width:115px;height:115px;font-size:10px}.services{gap:16px}.services article{padding:24px}.services h3{font-size:23px}.service-num{top:24px;right:24px}.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-photo img{height:310px}.about{gap:40px}.about img{height:320px}.reviews-layout{gap:30px;grid-template-columns:1fr 1.5fr}.reviews{padding:35px}.contact-section{padding:35px;gap:30px}.contact-option strong{font-size:19px}.contact-symbol{display:none}.faq{gap:35px}.quote-stars{margin-left:0}}
@media(max-width:800px){.hero{grid-template-columns:1fr;padding-top:35px;gap:30px}.hero-copy{padding:0}.hero-description{max-width:620px}.hero-personal{margin-top:20px}.hero-pictures{padding:0 15px 45px 0;max-width:650px;width:100%;justify-self:center}.hero-art{height:380px;border-radius:85px 22px 22px 22px}.hero-detail{height:215px;width:30%;right:0}.garden-stamp{left:30px;bottom:10px}.hero-bottom{margin-top:15px}.hero-local{display:none}h1{font-size:60px}.section{padding-top:55px;padding-bottom:55px}.section-heading{display:block;margin-bottom:28px}.intro{max-width:600px}.services{grid-template-columns:1fr}.services article{padding:28px}.services h3{margin-top:17px;font-size:26px}.services p{font-size:18px}.service-action{margin-top:0}.work-section{padding-top:5px}.ideas{padding:30px}.idea-panel{grid-template-columns:1fr}.idea-visual{min-height:270px}.idea-copy{padding:28px}.about{grid-template-columns:1fr;gap:35px}.about figure{max-width:640px;margin:0 auto;width:100%}.about img{height:340px}.about-copy{max-width:650px}.steps{grid-template-columns:1fr;gap:25px}.steps li{display:grid;grid-template-columns:44px 1fr;gap:8px 18px}.steps li>span{grid-row:span 2}.steps h3{margin:0}.steps p{font-size:18px}.reviews-layout{grid-template-columns:1fr}.rating-summary{border-bottom:1px solid #b68e7855;padding-bottom:20px}.reviews{padding:30px}.faq{grid-template-columns:1fr;gap:25px}.contact-section{grid-template-columns:1fr;gap:30px;padding:30px}.contact-card{padding:12px 25px 25px}.contact-option strong{font-size:23px}.quote-stars{margin-left:auto}footer{margin-top:30px;gap:20px}.hero-art figcaption{left:22px;top:22px}.about{padding-top:30px}}
@media(max-width:760px){html{scroll-padding-top:20px}body{padding-bottom:85px}header{padding:18px 0;gap:12px;flex-wrap:wrap}.brand{font-size:30px;letter-spacing:-1.4px}.brand-icon{width:35px;height:35px;font-size:27px}.brand-sub{font-size:9px;letter-spacing:1px}.header-contact{margin-left:auto;padding:12px 18px;font-size:15px;min-height:48px}.header-contact>span{display:none}.menu{display:grid;place-items:center;min-width:48px;min-height:48px;font-size:23px;background:var(--white);border:1px solid var(--line);border-radius:10px}nav{display:none;order:4;flex-basis:100%;margin:0;flex-direction:column;gap:0;padding-top:8px}nav.open{display:flex}nav a{font-size:18px;padding:13px 8px;border-top:1px solid var(--line);min-height:54px}.draft{font-size:13px;line-height:1.5}.location{font-size:11px;letter-spacing:.7px}.hero{padding-top:30px}.hero-lead{font-size:23px}.hero-description{font-size:18px}.hero-actions{gap:12px 20px}.hero-art{height:330px}.hero-detail{height:200px;width:34%}.hero-rating{font-size:14px;gap:10px}.hero-bottom{padding:16px 0}.rating-stars{font-size:17px}.hero-rating>span:last-child{width:100%}.section{margin-left:5%;margin-right:5%;padding-top:50px;padding-bottom:50px}h2{font-size:34px;letter-spacing:-1px}.eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:17px}.intro{font-size:18px}.work-grid{gap:20px 14px}.work-photo img{height:260px}.work-card figcaption{font-size:16px;gap:9px}.ideas{padding:26px 22px}.idea-tabs{gap:8px}.idea-tabs button{font-size:16px;padding:12px 16px}.idea-copy{padding:24px}.idea-copy h3{font-size:27px}.idea-copy p:not(.eyebrow),.idea-copy li{font-size:17px}.idea-visual{min-height:230px}.about img{height:260px}.about figure{padding:12px}.about figcaption{font-size:13px}.about-copy p:not(.eyebrow){font-size:18px}.reviews{padding:28px 22px}.reviews .section-heading{margin-bottom:28px}.review-quotes figure{padding:22px}.review-quotes blockquote{font-size:20px}.quote-stars{font-size:13px}.review-disclosure{font-size:14px}.questions summary{font-size:18px}.contact-section{padding:28px 22px}.contact-card{padding:8px 20px 20px}.contact-option strong{font-size:21px}.contact-option small{font-size:14px}.contact-section .eyebrow{font-size:12px}footer{display:block;padding:25px 0}footer>p{max-width:none;margin:20px 0}footer>div{gap:22px}.mobile-contact{display:grid;grid-template-columns:1fr 1.6fr;gap:10px;position:fixed;z-index:14;bottom:0;left:0;right:0;padding:10px 5% calc(10px + env(safe-area-inset-bottom));border-top:1px solid #a5b193;background:var(--paper)}.mobile-contact a,.mobile-contact button{display:flex;align-items:center;justify-content:center;font-size:16px;line-height:1.4;min-height:50px;border:1px solid #a5b193;background:var(--white);color:var(--ink);border-radius:10px;padding:10px}.mobile-contact button{background:var(--green);color:white;border-color:var(--green)}body:has(dialog[open]) .mobile-contact{visibility:hidden}dialog{padding:22px;max-height:92vh;max-height:92dvh}dialog h2{font-size:28px}.dialog-top{gap:10px;flex-wrap:wrap}.dialog-intro{font-size:17px}.form-row{grid-template-columns:1fr;gap:20px}form>.button{width:100%}.legal-main{padding-top:40px}.legal-main h1{font-size:42px}.legal-main h2{font-size:25px}.legal-main p,.legal-main li{font-size:18px}.legal-note{padding:18px;font-size:16px}#photo-dialog{padding:17px}#photo-dialog h2{font-size:22px}.photo-controls{gap:10px}}
@media(max-width:440px){.brand-icon{display:none}header{gap:10px}.brand{font-size:28px}.brand-sub{font-size:8px;letter-spacing:.8px}.header-contact{padding:12px 14px}h1{font-size:46px;letter-spacing:-1.9px}.hero-art{height:300px;border-top-left-radius:70px}.hero-detail{height:175px;width:38%}.hero-pictures{padding-bottom:50px}.garden-stamp{width:100px;height:100px;left:18px;bottom:15px;font-size:9px}.garden-stamp>span{font-size:35px}.hero-art figcaption{font-size:13px;top:20px;left:20px}.hero-detail figcaption{font-size:11px}.work-grid{grid-template-columns:1fr}.work-photo img{height:320px}.about img{height:220px}.quote-stars{width:100%;margin-left:52px}.review-quotes blockquote{font-size:19px}.contact-option strong{font-size:18px}.contact-option{gap:8px}.contact-option>span:last-child{display:none}.contact-card{padding:8px 16px 20px}.contact-section{padding:25px 18px}.photo-controls button{padding:10px 12px}.mobile-contact{padding-left:4%;padding-right:4%;gap:8px}.mobile-contact button,.mobile-contact a{font-size:15px}.error-page{padding:60px 6%}.legal-main h1{font-size:36px;letter-spacing:-1px;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(forced-colors:active){.button,.header-contact,.choices span,.idea-tabs button,.secondary{border:1px solid ButtonText}.choices input:checked+span,.idea-tabs button[aria-selected=true]{outline:3px solid Highlight}.work-photo>span{border:1px solid ButtonText}}
@media print{header,.draft,.mobile-contact,dialog,.hero-actions,.service-action,.idea-tabs{display:none!important}body{background:white;color:black;font-size:12pt;padding:0}.hero,.section{display:block;margin:0;padding:15px 0}.hero-pictures{display:none}.contact-section,.reviews,.ideas{background:white;color:black;padding:10px;border:1px solid #999}.work-grid{grid-template-columns:repeat(4,1fr)}.work-photo img{height:120px}.work-card{break-inside:avoid}.contact-section .intro,.contact-section h2>span{color:black}footer{margin-top:20px}h1{font-size:30pt}h2{font-size:22pt}.nojs{display:none}}

.team-profile{margin-top:30px;padding:26px;border-radius:20px;background:var(--sage,#e0e8c9)}.team-profile h3{margin:6px 0;font-size:30px}.team-profile .team-role{font-weight:700;margin-top:0}.team-profile .text-link{overflow-wrap:anywhere}

.more-work{margin-top:24px}.more-work>summary{cursor:pointer;min-height:52px;padding:14px 20px;border:1px solid var(--line);border-radius:12px;font-weight:600}.more-work[open]>.work-grid{margin-top:25px}.save-contact{display:block;text-decoration:underline;text-underline-offset:4px;padding:14px 0;min-height:48px}.work-photo:has(img[src*="foto-03"]) img{object-position:50% 24%}.work-photo:has(img[src*="foto-08"]) img{object-position:50% 40%}.about img{object-position:40% 70%;aspect-ratio:16/9;height:auto}.team-profile{padding:22px}

#photo-dialog[open]{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;padding:22px;display:flex;flex-direction:column;background:#14251b;color:#fffef9}#photo-dialog .dialog-top{flex:none}#photo-dialog .gallery-stage{display:grid;grid-template-columns:minmax(0,1fr) 130px;gap:22px;min-height:0;flex:1}#photo-dialog #full-photo{width:100%;height:100%;max-height:100%;min-height:0;object-fit:contain}.gallery-thumbs{overflow:auto;display:flex;flex-direction:column;gap:12px}.gallery-thumbs button{border:3px solid transparent;background:#2a3d30;padding:3px;border-radius:8px;flex:none}.gallery-thumbs button[aria-pressed=true]{border-color:#f6cf63}.gallery-thumbs img{display:block;width:100%;height:90px;object-fit:cover}#photo-count{margin:8px 0}.about{grid-template-columns:1fr}.about-copy{max-width:750px}.hero-art img{object-fit:cover;object-position:center 40%}@media(max-width:760px){#photo-dialog[open]{padding:12px}#photo-dialog .gallery-stage{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 85px;gap:12px}.gallery-thumbs{flex-direction:row}.gallery-thumbs img{width:90px;height:68px}}
#photo-dialog #close-photo,#photo-dialog .photo-controls button{color:#233d30;background:#fffef9;border:1px solid #d4d8c6}#photo-dialog button:focus-visible{outline-color:#f6cf63}

/* Transparent triangle windows: originals remain unchanged. */
.hero-pictures{padding:0;width:100%;max-width:640px}.triangle-composition{position:relative;width:100%;aspect-ratio:600/550;isolation:isolate}.triangle-lines{position:absolute;inset:0;width:100%;height:100%;color:#718966;opacity:.55;pointer-events:none}.photo-triangle{position:absolute;display:block;overflow:hidden;clip-path:polygon(50% 0,100% 100%,0 100%);background:transparent}.photo-triangle img{display:block;width:100%;height:100%;object-fit:cover;opacity:.88;transition:opacity .2s,transform .25s}.photo-triangle:hover img{opacity:1;transform:scale(1.04)}.photo-triangle:focus-visible{filter:drop-shadow(0 0 5px #693b83)}.triangle-one{left:3%;top:3%;width:58%;height:66%;transform:rotate(-13deg)}.triangle-one img{object-position:50% 35%;transform:scale(1.12)}.triangle-two{right:0;top:22%;width:43%;height:47%;transform:rotate(18deg)}.triangle-two img{object-position:50% 25%}.triangle-three{left:24%;bottom:3%;width:42%;height:43%;transform:rotate(168deg)}.triangle-three img{transform:rotate(180deg) scale(1.1);object-position:50% 50%}.triangle-three:hover img{transform:rotate(180deg) scale(1.14)}.triangle-caption{position:absolute;bottom:0;right:0;font-size:13px;color:var(--muted);max-width:145px;line-height:1.5}.photo-triangle:focus-visible::after{content:"";position:absolute;inset:0;background:#f6cf6340}@media(max-width:800px){.hero-pictures{max-width:480px}.triangle-composition{margin-top:-10px}}@media(prefers-reduced-motion:reduce){.photo-triangle img{transition:none}}

/* Readable, calm presentation for a broad age range. */
body{font-size:20px;line-height:1.65}h1{font-size:clamp(48px,5.4vw,76px);line-height:1.08}h2{font-size:clamp(34px,3.5vw,48px);line-height:1.2}h3{font-size:28px}.intro,.hero-description,.services p,.about p,.steps p,.questions p,.dialog-intro{font-size:20px;line-height:1.65}.hero-lead{font-size:28px;line-height:1.45}.eyebrow,.location{font-size:16px;letter-spacing:.3px;text-transform:none}.hero-personal,.hero-local,.hero-rating>span,.contact-hint,.form-help,.review-note,.editorial-note,.review-source,.triangle-caption{font-size:16px;line-height:1.6}.button,.header-contact,nav a,.hero-email,.service-action,.text-link,.secondary,summary,.save-contact{font-size:19px;min-height:56px}.button,.header-contact{padding:16px 24px}.services h3{font-size:28px}.services p{margin-bottom:22px}.services article{padding:30px}.service-action{text-align:left}.questions summary{font-size:22px;padding:20px 0}.section-heading{margin-bottom:32px}.section{padding-top:65px;padding-bottom:65px}.ideas-disclosure>summary{cursor:pointer;padding:22px 26px;background:var(--sage);border-radius:16px;font-weight:600}.ideas-disclosure[open]>.section-heading{margin-top:30px}.review-source{margin-top:24px}.review-source summary{cursor:pointer;font-size:17px}.review-disclosure{font-size:16px}.contact-option small{font-size:17px}.contact-option strong{font-size:25px}input,textarea,select{font-size:20px!important}footer p,footer a{font-size:16px}.hero-actions{gap:18px}.brand-sub{font-size:11px}@media(max-width:1100px){header{gap:16px}nav{gap:16px}nav a{font-size:17px}.header-contact{padding:14px 18px}}@media(max-width:800px){.section{padding-top:42px;padding-bottom:42px}.hero{gap:20px}.hero-pictures{max-width:390px}}@media(max-width:760px){body{font-size:19px}.intro,.hero-description,.services p,.about p,.steps p,.questions p{font-size:19px}.hero-lead{font-size:25px}.mobile-contact a,.mobile-contact button{font-size:17px;min-height:56px}.contact-option strong{font-size:21px}.contact-section h2{font-size:34px}.triangle-caption{font-size:14px}.choices span{font-size:18px}.ideas-disclosure>summary{padding:18px}.section-heading{margin-bottom:24px}}@media(max-width:440px){.header-contact{padding:12px;font-size:16px}.brand{font-size:27px}.brand-sub{font-size:8px}h1{font-size:46px}.services article{padding:24px}.contact-option strong{font-size:19px}.mobile-contact a,.mobile-contact button{font-size:16px}}
@media(max-width:440px){.triangle-two{right:4%;width:39%}.triangle-caption{right:4%;max-width:110px}}

.direct-reviews{border-top:1px solid var(--line)}.review-write{margin-top:24px;border:1px solid var(--line);border-radius:18px;padding:24px}.review-write>summary{cursor:pointer;font-size:24px;font-weight:600}.review-write form{margin-top:24px;max-width:780px}.star-options{display:flex;flex-wrap:wrap;gap:12px}.star-options label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:10px;min-height:52px}.star-options input,.review-consent input{width:24px;height:24px;flex:none}.review-consent{display:flex;gap:14px;align-items:flex-start;font-size:17px;line-height:1.6}.review-consent a{text-decoration:underline}.honeypot{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.review-form-actions{display:flex;gap:15px;flex-wrap:wrap}.customer-review{padding:24px;margin:24px 0;border:1px solid var(--line);border-radius:18px;background:var(--white)}.customer-review p{white-space:pre-wrap;overflow-wrap:anywhere}.customer-photos,#review-previews{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.customer-photos img,#review-previews img{width:140px;height:110px;object-fit:cover;border-radius:10px}.customer-review h3{margin:0}.customer-review button{margin:8px}.review-write input[type=file]{max-width:100%;font-size:17px!important}@media(max-width:600px){.review-write{padding:18px}.review-write>summary{font-size:22px}.star-options{gap:6px}.star-options label{padding:8px}.customer-review{padding:18px}}
#review-form{display:grid;gap:20px}#review-form fieldset,#review-form p{margin:0}.customer-review .secondary{min-height:52px}.work-photo{background:var(--sage)}.work-photo img{object-fit:cover}.selected-holzarbeit img{object-position:50% 35%}.selected-gartenarbeit img{object-position:50% 25%}

.work-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.work-photo img{height:290px;object-fit:cover}.selected-formschnitt-baum img{object-position:50% 45%}.selected-gruene-formen img{object-position:50% 40%}.selected-foto-08 img{object-position:50% 35%}.triangle-one img{object-position:50% 50%;transform:scale(1)}.triangle-three img{object-position:center}@media(max-width:1000px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:580px){.work-grid{grid-template-columns:1fr}.work-photo img{height:300px}}

/* Show all selected photo details without display crops or hover zoom. */
.work-photo img{object-fit:contain;object-position:center;height:340px}.work-photo:hover img{transform:none}.selected-formschnitt-baum .work-photo{background:#dce9ec}.triangle-one img,.triangle-one:hover img{object-fit:contain;transform:none}@media(max-width:580px){.work-photo img{height:360px}}

.hero-phone { display: none; }
@media screen and (max-width: 760px) {
  .hero-actions { display: grid; gap: 8px; }
  .hero-actions a { display: flex; align-items: center; justify-content: center; min-height: 48px; }
  .hero-actions .hero-phone { background: var(--white); color: var(--ink); border: 1px solid var(--line); }
  .hero h1 { font-size: clamp(34px, 10vw, 46px); }
  .work-photo img { height: auto; max-height: 360px; }
  .legal-main { overflow-wrap: anywhere; }
  footer a { display: inline-flex; align-items: center; min-height: 44px; }
}

/* Project photography and responsive landing page */
.hero {
  grid-template-columns: minmax(0, 1fr);
  gap: 1.35rem;
  align-items: center;
  min-height: auto;
  padding-top: clamp(2rem, 7vw, 6rem);
  padding-bottom: clamp(2rem, 6vw, 5rem);
}
.hero h1 { font-size: clamp(2.25rem, 4.65vw, 4.8rem); line-height: 1.03; letter-spacing: -.045em; }
.hero .hero-lead { max-width: 28ch; }
.project-hero { margin: 0; min-width: 0; background: #263e32; }
.project-hero a { display: block; position: relative; overflow: hidden; max-width: 1536px; margin-inline: auto; }
.project-hero img { display: block; width: 100%; height: clamp(14rem, 34vw, 33rem); object-fit: cover; }
.project-hero span { position: absolute; inset: auto 0 0; padding: 2rem 1.2rem .9rem; color: white; background: linear-gradient(transparent, #16261de6); }
.work-section .work-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(.8rem, 2vw, 1.6rem); }
.work-section .work-card { margin: 0; min-width: 0; overflow: hidden; background: #fff; border-radius: .8rem; }
.work-section .work-photo { display: block; overflow: hidden; }
.work-section .work-photo img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.work-section .work-card figcaption { padding: .85rem 1rem; color: #253f32; font-weight: 650; }
@media (max-width: 760px) {
  .project-hero img { height: auto; aspect-ratio: 16 / 9; }
  .project-hero span { padding: 1.5rem .9rem .55rem; font-size: .875rem; }
  .hero { display: grid; grid-template-columns: minmax(0,1fr); gap: 1.35rem; }
  .work-section .work-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 380px) {
  .work-section .work-grid { grid-template-columns: minmax(0,1fr); }
}
.beet-vergleich { margin: 0 0 clamp(2rem,5vw,4rem); }
.beet-vergleich h3 { margin: 0 0 1rem; }
.beet-bilder { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(.45rem,2vw,1.25rem); }
.beet-bilder figure { min-width:0; margin:0; overflow:hidden; border-radius:.8rem; background:#fff; }
.beet-bilder a { display:block; }
.beet-bilder img { display:block; width:100%; aspect-ratio: 1; object-fit:cover; }
.beet-bilder figcaption { padding:.75rem; font-weight:650; }
