@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--paper:#f8f7f1;--ink:#253d31;--muted:#687168;--red:#a84032;--line:#dedfd4;--serif:'Playfair Display',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.65 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}a,button{transition:background .2s,color .2s,transform .2s}img{max-width:100%;display:block}p{color:var(--muted);margin:0 0 22px}h1,h2,h3{font-weight:500;margin:0;line-height:1.15}h1,h2{font-family:var(--serif);letter-spacing:-1.5px}h1{font-size:clamp(48px,5.3vw,78px)}h1 em{font-weight:500;color:var(--red)}h2{font-size:clamp(32px,3.3vw,47px)}h3{font-size:21px}small{display:block}.wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.topbar{background:var(--ink);color:#f6f5ea;padding:10px 56px;font-size:11px;letter-spacing:.4px;display:flex;justify-content:space-between}.topbar span{font-size:9px;letter-spacing:1.6px}header{height:104px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;gap:10px;align-items:center;flex-shrink:0}.brand>span{font-size:23px;font-weight:650;letter-spacing:1.8px;line-height:1.15}.brand small{font-size:9px;letter-spacing:4.5px;margin-top:7px}nav{display:flex;align-items:center;gap:35px;font-size:13px}nav a:hover,nav a[aria-current]{color:var(--red)}.nav-cta{border:1px solid #b8beb3;padding:12px 20px;display:flex;gap:25px;align-items:center}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1.04fr;gap:45px;padding-top:35px;padding-bottom:65px;align-items:center}.eyebrow{display:block;font-size:10px;font-weight:650;letter-spacing:1.8px;margin-bottom:24px}.eyebrow i{display:inline-block;width:7px;height:7px;background:var(--red);border-radius:50%;margin-right:9px}.hero h1{margin-bottom:25px;line-height:1.13}.hero-copy>p{font-size:16px;line-height:1.9;max-width:390px}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--red);color:#fff;padding:16px 22px;font-size:12px;border:1px solid var(--red);cursor:pointer;font-weight:550}.button:hover{background:#853328;border-color:#853328;transform:translateY(-2px)}.button span{font-size:20px;line-height:1}.underlink{display:inline-block;font-size:12px;border-bottom:1px solid #9baba0;padding-bottom:4px}.underlink:hover{color:var(--red);border-color:var(--red)}.hero-note{border-top:1px solid var(--line);margin-top:38px;padding-top:23px;display:flex;gap:13px;align-items:center;font-size:11px;font-weight:600;max-width:390px}.hero-note small{font-size:10px;color:var(--muted);font-weight:400;margin-top:2px}.mini-sprout{font-size:30px;color:var(--red)}.hero-visual{position:relative;height:525px}.hero-visual>img{width:100%;height:100%;object-fit:cover;border-radius:160px 0 0 0;object-position:60% center}.image-stamp{position:absolute;right:-17px;top:-19px;width:115px;height:115px;border:1px solid #e0e1d3;border-radius:50%;background:#f0f0e3;display:flex;justify-content:center;align-items:center;flex-direction:column;transform:rotate(12deg);box-shadow:0 0 0 6px var(--paper)}.image-stamp span{font-size:7px;letter-spacing:1.6px}.image-stamp b{font:italic 23px var(--serif);margin:5px 0}.image-caption{position:absolute;bottom:18px;left:23px;right:23px;display:flex;justify-content:space-between;color:white;text-shadow:0 1px 5px #000;font-size:11px}.image-caption span+span{font-size:8px;letter-spacing:1px}.area-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#eeefe6}.area-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:23px}.area-strip .wrap>span{font-size:8px;letter-spacing:1.4px;max-width:140px}.area-strip a{font-family:var(--serif);font-size:20px}.area-strip a:last-child{font:11px 'DM Sans',sans-serif}.area-strip b{color:#8c9887;font-size:15px;font-weight:400}.section{padding-block:90px}.section-bottom{padding-bottom:90px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:16px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr)}.service-card{padding:28px 30px 30px;border:1px solid var(--line);margin-right:-1px;margin-bottom:-1px;display:flex;flex-direction:column}.service-card:hover{background:#eeefe5}.service-num{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px;color:#6f7e6f;font-size:10px}.service-num>span{font-size:34px;font-family:Georgia;color:var(--red);line-height:1}.service-card h3{font-family:var(--serif);font-size:24px;letter-spacing:-.5px;margin-bottom:14px}.service-card p{font-size:13px;line-height:1.8;max-width:310px}.text-link{font-size:11px;font-weight:600;display:flex;justify-content:space-between;margin-top:auto}.roots-section{background:#e9ece1;padding-block:78px}.roots-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.roots-art{position:relative;height:470px}.roots-art img{width:100%;height:100%;object-fit:cover;object-position:24%;border-radius:0 130px 0 0}.roots-label{position:absolute;left:-15px;bottom:26px;background:var(--red);padding:22px 30px;font-size:13px;letter-spacing:2px;line-height:1.8;color:#fff}.roots-copy h2{margin-bottom:25px}.roots-copy p{font-size:14px}.founder{display:flex;align-items:center;gap:15px;margin:25px 0}.founder-monogram{width:47px;height:47px;border:1px solid #b8c1b0;border-radius:50%;display:grid;place-items:center;font-family:var(--serif)}.founder strong{font-weight:550;font-size:13px}.founder small{font-size:10px;color:var(--muted)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps>div{border-top:1px solid var(--line);padding-top:22px}.steps span{color:var(--red);font-family:var(--serif);font-size:24px}.steps h3{font-size:18px;margin:16px 0 13px}.steps p{font-size:13px}.faq-section{background:#eeefe7;padding:70px 0}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}.faq-grid h2{margin-bottom:25px}details{border-bottom:1px solid #cdd2c4;padding:20px 0}details:first-child{padding-top:0}summary{cursor:pointer;font-size:14px;list-style:none;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:20px;line-height:1}details[open] summary:after{content:'−'}details p{margin:18px 30px 0 0;font-size:13px}.cta{display:flex;justify-content:space-between;align-items:center;padding-block:75px;gap:40px}.cta .eyebrow{margin-bottom:17px}.cta p{font-size:14px}.cta>div:last-child{min-width:270px}footer{background:var(--ink);color:#f3f1e7;padding-top:65px}footer p{color:#bec8b9;font-size:12px;line-height:1.9;margin-top:18px}footer .brand img{filter:brightness(0) invert(.9)}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .9fr 1.2fr;gap:35px}.footer-grid h3{font:500 12px 'DM Sans',sans-serif;margin-bottom:21px}.footer-grid>div>a:not(.brand){display:block;font-size:11px;color:#bec8b9;margin-bottom:10px}.footer-grid .text-link{color:white!important}.footer-bottom{display:flex;gap:30px;justify-content:space-between;border-top:1px solid #516052;padding:23px 0;margin-top:45px;font-size:9px;color:#c1c9bb}.page-intro{padding-block:65px 65px}.page-intro h1{margin-bottom:28px;max-width:960px}.page-intro>p{max-width:660px;font-size:17px}.page-intro .button{margin-top:10px}.breadcrumb{display:block;margin-bottom:28px;font-size:12px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.detail-grid>img{width:100%;height:460px;object-fit:cover;border-radius:0 110px 0 0}.detail-grid h2{margin-bottom:24px}.detail-grid h3{margin:25px 0 16px}.check-list{list-style:none;padding:0;margin:15px 0 25px}.check-list li{border-bottom:1px solid var(--line);padding:10px 0;font-size:14px}.check-list li:before{content:'↗';color:var(--red);padding-right:15px}.founder-feature{background:#e9ece1;min-height:440px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px}.founder-feature img{margin-bottom:30px}.founder-feature h2{margin-bottom:15px}.founder-feature span{font-size:9px;letter-spacing:2px}.city-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.city-card{padding:35px;background:#e9ece1}.city-card:hover{background:#dde3d3}.city-card>span{font-size:10px;letter-spacing:2px}.city-card h2{margin:20px 0}.city-card p{font-size:14px;margin:0}.narrow{max-width:800px}.narrow h2{margin:28px 0 18px}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.contact-grid aside h2{font-size:32px;margin-bottom:20px}.contact-detail{border-top:1px solid var(--line);padding-top:26px;margin-top:28px}.contact-detail .eyebrow{margin-bottom:12px}.contact-detail h3{margin-bottom:10px}.contact-detail p{font-size:13px}form{background:#eeefe7;padding:35px}form h2{font-size:30px;margin-bottom:10px}.form-note{font-size:11px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:12px;margin-bottom:19px}input,select,textarea{display:block;border:1px solid #c9cebf;background:var(--paper);width:100%;padding:12px;margin-top:7px;color:var(--ink);border-radius:0;min-width:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#788075;font-size:12px}.checkbox{display:flex;align-items:flex-start;gap:10px;font-size:11px}.checkbox input{width:16px;height:16px;margin-top:3px;accent-color:var(--red)}.checkbox a{text-decoration:underline}.honeypot{position:absolute;left:-9999px}.button:disabled{opacity:.6;cursor:wait}#form-status{font-size:13px;margin:15px 0 0}#form-status:empty{display:none}.skip{position:absolute;left:15px;top:-100px;background:white;z-index:99;padding:10px}.skip:focus{top:10px}.phone-link{font-size:13px;font-weight:600;white-space:nowrap}.contact-phone{font-family:var(--serif);font-size:28px;display:block;margin:20px 0;color:var(--red)}
@media(min-width:1600px){.hero-visual{height:590px}.hero{padding-block:45px 75px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}nav{gap:22px}.topbar{padding-inline:32px}.hero{gap:25px}.hero-actions{gap:16px;flex-wrap:wrap}.hero-visual{height:490px}.hero h1{font-size:60px}.roots-grid{gap:45px}.contact-grid{gap:40px}.phone-link{display:none}.service-card{padding:24px}.image-caption span+span{display:none}}@media(max-width:760px){.wrap{width:calc(100% - 40px)}.topbar{padding:9px 20px;font-size:9px;justify-content:center}.topbar span{display:none}header{height:87px;position:relative}.brand>span{font-size:20px}.brand img{width:38px;height:43px}.brand small{font-size:8px;letter-spacing:3.5px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:var(--ink);font-size:12px;padding:12px 0 12px 12px}nav{display:none;position:absolute;top:85px;left:-20px;right:-20px;background:var(--paper);padding:25px;z-index:20;box-shadow:0 12px 15px #253d3114;flex-direction:column;align-items:stretch}nav.open{display:flex}nav .phone-link{display:block}.hero{grid-template-columns:1fr;padding-top:25px;padding-bottom:35px;gap:35px}.eyebrow{font-size:9px;margin-bottom:20px}.hero h1{font-size:56px}.hero-copy>p{font-size:14px;max-width:360px}.hero-actions{margin-top:25px;gap:20px}.hero-note{margin-top:28px;padding-top:20px;max-width:none}.hero-visual{height:390px;margin-right:8px}.hero-visual>img{border-radius:110px 0 0}.image-stamp{height:95px;width:95px;right:-10px;top:-15px}.image-stamp b{font-size:21px}.image-stamp span{font-size:6px}.area-strip .wrap{justify-content:center;gap:12px 20px;flex-wrap:wrap;padding-block:20px}.area-strip .wrap>span{max-width:none;width:100%;text-align:center}.area-strip a{font-size:17px}.area-strip b{display:none}.area-strip a:last-child{font-size:10px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:28px}.section-heading>.underlink{margin-top:20px}h2{font-size:34px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{padding:22px 18px}.service-card h3{font-size:23px}.service-card p{font-size:12px}.service-num{margin-bottom:23px}.roots-section{padding-block:45px}.roots-grid{grid-template-columns:1fr;gap:40px}.roots-art{height:350px;margin-left:10px}.roots-copy h2{font-size:38px}.steps{grid-template-columns:1fr;gap:15px;margin-top:30px}.steps>div{display:grid;grid-template-columns:40px 1fr;column-gap:15px}.steps h3{margin:6px 0 13px}.steps p{grid-column:2}.faq-section{padding-block:45px}.faq-grid{grid-template-columns:1fr;gap:35px}.faq-grid h2 br{display:none}.faq-grid h2{margin-bottom:18px}.cta{padding-block:45px;display:block}.cta>div+div{margin-top:25px}.cta h2 br{display:none}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:10px 25px;margin-top:25px}.footer-bottom>span:last-child{width:100%}footer{padding-top:40px}.page-intro{padding-block:35px 40px}.page-intro h1{font-size:48px}.page-intro>p{font-size:15px}.detail-grid{grid-template-columns:1fr;gap:30px}.detail-grid>img{height:330px}.section-bottom{padding-bottom:50px}.city-grid{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-grid aside{max-width:500px}form{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}.contact-detail{margin-top:20px;padding-top:20px}.founder-feature{min-height:360px}}@media(max-width:380px){.service-grid{grid-template-columns:1fr}.hero h1{font-size:49px}.hero-visual{height:320px}.hero-actions{gap:15px}.button{padding:14px 17px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.testimonials{padding-bottom:0}.sample-notice{font-size:11px;margin:0;border-left:2px solid var(--red);padding-left:14px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.review-card{margin:0;background:#eeefe7;padding:30px 35px}.review-mark{font-family:var(--serif);font-size:65px;color:var(--red);line-height:1}.review-card blockquote{font:23px/1.6 var(--serif);margin:0 0 28px}.review-card figcaption{display:flex;align-items:center;gap:13px}.review-avatar{width:40px;height:40px;border:1px solid #c6cebc;display:grid;place-items:center;border-radius:50%;font-family:var(--serif);color:var(--red)}.review-card strong{font-size:12px;font-weight:550}.review-card small{font-size:10px;color:var(--muted);margin-top:3px}@media(max-width:760px){.review-grid{grid-template-columns:1fr;gap:18px}.review-card{padding:25px}.review-card blockquote{font-size:22px}.sample-notice{margin-top:20px}.testimonials{padding-bottom:0}}
/* Keep tablet navigation within the available header width. */
@media(min-width:761px) and (max-width:960px){header{position:relative}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:transparent;color:var(--ink);padding:12px;font-size:13px}nav{display:none;position:absolute;top:95px;left:0;right:0;background:var(--paper);padding:25px;z-index:20;box-shadow:0 12px 15px #253d3114;flex-direction:column;align-items:stretch}nav.open{display:flex}nav .phone-link{display:block}}
.service-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;margin-bottom:22px}.service-gallery{border-top:1px solid var(--line);padding-top:55px}.service-gallery .section-heading{margin-bottom:16px}.gallery-hint{font-size:12px;white-space:nowrap}.gallery-disclosure{font-size:12px;max-width:660px;margin-bottom:30px}.gallery-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:30px 22px}.gallery-item{margin:0;grid-column:span 2}.gallery-item:nth-child(-n+2){grid-column:span 3}.gallery-open{display:block;position:relative;overflow:hidden;background:#e9ece1}.gallery-open img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .3s}.gallery-open:hover img{transform:scale(1.025)}.gallery-expand{position:absolute;right:14px;bottom:14px;width:34px;height:34px;display:grid;place-items:center;background:var(--paper);color:var(--ink)}.gallery-item figcaption{display:flex;align-items:baseline;gap:14px;font-size:13px;padding-top:13px}.gallery-item figcaption>span{font-size:10px;color:var(--red)}.gallery-dialog{padding:18px 22px;width:min(1100px,calc(100% - 40px));max-width:none;max-height:95dvh;border:0;background:var(--paper);color:var(--ink);overflow:auto}.gallery-dialog::backdrop{background:rgb(12 25 17 / .88)}.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-size:12px}.gallery-close,.gallery-prev,.gallery-next{min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer}.gallery-close{padding:6px 14px;display:flex;align-items:center;gap:18px}.gallery-close span{font-size:24px;line-height:1}.gallery-full{width:100%;height:auto;max-height:66dvh;object-fit:contain;background:#e9ece1}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:14px}.gallery-controls p{margin:0;text-align:center;color:var(--ink);font-family:var(--serif);font-size:23px}.gallery-dialog #gallery-notice{font-size:10px;text-align:center;margin:10px 0 0}.gallery-prev:hover,.gallery-next:hover,.gallery-close:hover{background:#e9ece1}body.gallery-is-open{overflow:hidden}@media(max-width:760px){.gallery-grid{grid-template-columns:1fr;gap:25px}.gallery-item,.gallery-item:nth-child(-n+2){grid-column:auto}.gallery-hint{display:block;margin-top:15px}.service-gallery{padding-top:35px}.gallery-dialog{width:calc(100% - 20px);padding:12px}.gallery-controls p{font-size:19px}.gallery-full{max-height:60dvh}}@media(prefers-reduced-motion:reduce){.gallery-open img{transition:none}.gallery-open:hover img{transform:none}}
.about-values{background:#eeefe7;padding:60px 0}.founder-note{display:grid;grid-template-columns:190px minmax(0,600px);gap:38px;align-items:center;padding-block:65px;border-bottom:1px solid var(--line)}.founder-note>img{width:190px;height:240px;object-fit:cover;object-position:center 24%;border-radius:0 45px 0 0}.founder-note h2{font-size:31px;margin-bottom:18px}.founder-note .eyebrow{margin-bottom:16px}.founder-note p{font-size:14px;max-width:580px;margin-bottom:15px}.founder-name{font-size:12px;font-weight:600}.estimate-page{max-width:800px;padding-block:45px 75px}.estimate-page h1{font-size:42px;line-height:1.2;margin-bottom:14px}.estimate-page form>p{font-size:14px}.estimate-page form>.form-note{font-size:11px}.area-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.area-links a{display:flex;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);font-size:14px}.area-links a:hover{background:#eeefe7}.area-links span{color:var(--red)}.city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.city-card h2{font-size:32px;letter-spacing:-1px}@media(max-width:960px){.city-grid,.area-links{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.founder-note{grid-template-columns:120px minmax(0,1fr);gap:22px;padding-block:40px;align-items:start}.founder-note>img{width:120px;height:160px;border-radius:0 28px 0 0}.founder-note h2{font-size:27px}.founder-note p{font-size:13px}.founder-note .eyebrow{font-size:8px;letter-spacing:1px}.about-values{padding-block:40px}.estimate-page{padding-block:25px 45px}.estimate-page h1{font-size:34px}.city-grid{grid-template-columns:1fr}.area-links a{padding:16px;font-size:13px}}@media(max-width:400px){.founder-note{grid-template-columns:1fr}.founder-note>img{width:140px;height:175px}}

.review-avatar.review-photo{width:48px;height:48px;object-fit:cover;flex-shrink:0;border-radius:50%}

.phone-estimate{background:#eeefe7;padding:45px;text-align:center}.phone-estimate h1{margin-bottom:22px}.phone-estimate>p{max-width:510px;margin-inline:auto}.estimate-phone{display:block;font-family:var(--serif);font-size:38px;color:var(--red);margin:25px 0}.phone-estimate .estimate-help{font-size:13px;margin-top:26px;margin-bottom:22px}@media(max-width:760px){.phone-estimate{padding:32px 22px}.estimate-phone{font-size:29px}}
