:root{--ink:#14332e;--green:#176b52;--lime:#d9ee73;--cream:#f5f1e8;--mist:#dbe9df;--coral:#ed704f;--line:rgba(20,51,46,.17)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif;font-size:16px}a{color:inherit;text-decoration:none}.topbar{background:var(--ink);color:#f9f5eb;padding:11px max(5vw,24px);font-size:13px;display:flex;justify-content:space-between;letter-spacing:.02em}.topbar a{font-weight:700}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);position:relative;z-index:5}.brand{font-weight:700;letter-spacing:.08em;font-size:16px;display:flex;gap:8px;align-items:center}.brand b{font-weight:700;color:var(--green)}.brand-mark{font-size:20px;color:var(--coral)}nav{display:flex;gap:29px;align-items:center;font-size:14px;font-weight:600}nav>a:not(.nav-cta):hover,.text-link:hover{color:var(--green)}.nav-cta{background:var(--ink);color:white;padding:12px 18px;border-radius:30px}.menu-toggle{display:none;background:none;border:0;font-size:25px;color:var(--ink)}.hero{position:relative;min-height:630px;overflow:hidden;display:flex;align-items:center;padding:70px max(5vw,24px);background:#e4eee6}.hero-copy{position:relative;z-index:2;max-width:640px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--green);margin:0 0 18px}h1,h2{font-family:Fraunces,Georgia,serif;font-weight:600;letter-spacing:-.055em;line-height:.96;margin:0}h1{font-size:clamp(55px,7.2vw,104px)}h2{font-size:clamp(44px,5vw,75px)}em{font-weight:600;color:var(--green)}.intro{font-size:20px;line-height:1.48;max-width:500px;margin:28px 0 32px}.hero-actions{display:flex;align-items:center;gap:27px}.button{display:inline-flex;align-items:center;gap:20px;border:0;font-family:inherit;font-weight:700;font-size:15px;cursor:pointer}.button-primary{background:var(--coral);color:#fff;border-radius:4px;padding:17px 21px}.button-primary:hover{background:#d85e41}.button-primary span,.text-link span,.service-card a span{font-size:21px;line-height:10px}.button-link{text-decoration:underline;text-underline-offset:6px}.trust-row{display:flex;gap:22px;margin-top:56px;font-size:13px;font-weight:600}.hero-art{position:absolute;inset:0;overflow:hidden;background:linear-gradient(116deg,#e5f2d7 0%,#d7e8d0 44%,#8db587 100%)}.sun{position:absolute;width:370px;height:370px;border-radius:50%;background:#f7d972;right:9%;top:-100px;opacity:.82}.home-shape{position:absolute;right:8%;bottom:95px;width:460px;height:260px;background:#f1eadb;clip-path:polygon(0 46%,34% 0,77% 44%,100% 44%,100% 100%,0 100%);box-shadow:20px 20px 0 #b7d19c}.lawn{position:absolute;border-radius:50% 50% 0 0;background:#3b865b;bottom:-200px}.lawn-one{width:103%;height:355px;right:-12%;transform:rotate(3deg)}.lawn-two{width:70%;height:290px;right:16%;bottom:-230px;background:#65a46a;transform:rotate(-6deg)}.spray{position:absolute;border:2px solid rgba(255,255,255,.72);border-left:0;border-bottom:0;border-radius:0 100% 0 0;width:130px;height:130px;bottom:195px;right:45%;transform:rotate(-18deg)}.spray-two{right:20%;bottom:115px;transform:scale(.7) rotate(-25deg)}.intro-band{display:grid;grid-template-columns:1.1fr .8fr;gap:110px;padding:130px max(9vw,25px);align-items:end}.intro-band h2{font-size:clamp(45px,4.6vw,71px)}.intro-band>div p,.area-copy{line-height:1.65;font-size:17px;margin:0 0 28px}.text-link{font-weight:700;border-bottom:1px solid var(--ink);padding-bottom:5px}.services{background:var(--ink);color:#f7f3e8;padding:110px max(5vw,24px)}.services .eyebrow{color:var(--lime)}.services h2 em{color:var(--lime)}.section-heading{margin-bottom:60px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.23)}.service-card{min-height:370px;padding:25px 26px 30px;border-right:1px solid rgba(255,255,255,.23);position:relative;display:flex;flex-direction:column}.service-card:first-child{border-left:1px solid rgba(255,255,255,.23)}.service-card.featured{background:var(--green)}.service-number{font-size:12px;color:var(--lime);font-weight:700}.service-icon{font-family:Fraunces,serif;font-size:52px;color:var(--lime);margin:34px 0 15px}.service-card h3{font-family:Fraunces,Georgia,serif;font-size:28px;letter-spacing:-.04em;margin:0 0 15px}.service-card p{font-size:14px;line-height:1.55;margin:0}.service-card a{font-weight:700;font-size:13px;margin-top:auto;display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.3);padding-top:18px}.quote-section{padding:115px max(17vw,24px);text-align:center;background:var(--lime)}.quote-leaf{font-size:40px;color:var(--green);margin-bottom:25px}.quote-section blockquote{font-family:Fraunces,Georgia,serif;font-size:clamp(29px,3.4vw,54px);letter-spacing:-.04em;line-height:1.1;margin:0}.quote-section p{margin:35px 0 0;font-size:11px;font-weight:700;letter-spacing:.16em}.areas{padding:120px max(9vw,25px);display:grid;grid-template-columns:1.2fr .8fr;align-items:end;gap:100px}.areas h2 em{color:var(--coral)}.contact{background:#dbe9df;display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:112px max(9vw,25px)}.contact-copy>p:not(.eyebrow){font-size:17px;line-height:1.55;max-width:450px}.contact h2 em{color:var(--coral)}.contact-details{display:flex;flex-direction:column;gap:8px;margin-top:32px;font-size:19px;font-weight:700}.contact form{padding:32px;background:var(--cream);box-shadow:9px 9px 0 var(--green);display:flex;flex-direction:column;gap:17px}.contact label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.contact input,.contact textarea{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 0 9px;font:16px "DM Sans",sans-serif;color:var(--ink);outline-color:var(--green);resize:vertical}.contact textarea{margin-top:2px}.contact form .button{align-self:flex-start;margin-top:5px}.form-note{font-size:12px;color:#527068;margin:0}footer{padding:45px max(5vw,24px);display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;align-items:center;font-size:13px;border-top:1px solid var(--line)}footer p:last-child{text-align:right;color:#597069}@media(max-width:800px){.topbar{font-size:11px}.site-header{height:68px}nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);padding:22px 5vw;flex-direction:column;align-items:flex-start;gap:18px;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu-toggle{display:block}.hero{min-height:670px;padding-top:50px;align-items:flex-start}.hero-copy{max-width:100%}.hero-art{opacity:.57}.intro{font-size:18px;max-width:430px}.trust-row{gap:10px;flex-wrap:wrap;margin-top:44px}.intro-band,.areas,.contact{grid-template-columns:1fr;gap:35px;padding-top:85px;padding-bottom:85px}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(3){border-left:1px solid rgba(255,255,255,.23)}.service-card{min-height:310px}.quote-section{padding:80px 8vw}.contact form{box-shadow:6px 6px 0 var(--green)}footer{grid-template-columns:1fr;gap:15px}footer p:last-child{text-align:left}}@media(max-width:500px){.topbar span{display:none}.topbar{justify-content:center}.hero{min-height:625px}.hero-actions{align-items:flex-start;gap:17px;flex-direction:column}.service-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(3){border-left:1px solid rgba(255,255,255,.23)}.home-shape{right:-35%;transform:scale(.85);transform-origin:bottom}.areas{gap:25px}}
.brand{display:flex;align-items:center}.brand img{display:block;width:145px;height:57px;object-fit:contain}.hero{background:#183e34}.hero-art{background:#183e34}.hero-frame{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:saturate(.9) contrast(1.05);opacity:0;animation:hero-reel 18s infinite ease-in-out}.frame-one{animation-delay:0s}.frame-two{animation-delay:6s}.frame-three{animation-delay:12s;object-position:center 44%}.hero-art:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(9,35,28,.94) 0%,rgba(13,54,42,.75) 37%,rgba(13,54,42,.08) 72%)}@keyframes hero-reel{0%,28%{opacity:0;transform:scale(1)}5%,25%{opacity:1}30%,100%{opacity:0;transform:scale(1.08)}}.hero-copy{color:#fff}.hero-copy .eyebrow{color:var(--lime)}.hero-copy em{color:var(--lime)}.hero-copy .button-link{color:#fff}.gallery{padding:115px max(5vw,24px);background:#edf2eb}.gallery-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:80px;margin-bottom:54px}.gallery-heading>p{font-size:17px;line-height:1.6;margin:0;max-width:370px}.gallery-grid{display:grid;grid-template-columns:1.28fr .72fr .72fr;gap:16px}.gallery figure{position:relative;overflow:hidden;margin:0;height:280px;background:var(--green)}.gallery figure:first-child{grid-row:span 2;height:576px}.gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.gallery figure:hover img{transform:scale(1.04)}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:42px 18px 17px;color:#fff;font-size:13px;font-weight:700;background:linear-gradient(transparent,rgba(10,36,28,.86))}@media(prefers-reduced-motion:reduce){.hero-frame{animation:none}.frame-one{opacity:1}}@media(max-width:800px){.brand img{width:120px;height:50px}.hero-art:after{background:linear-gradient(90deg,rgba(9,35,28,.88),rgba(13,54,42,.5))}.gallery{padding-top:85px;padding-bottom:85px}.gallery-heading{grid-template-columns:1fr;gap:25px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery figure:first-child{grid-column:1/-1;grid-row:auto;height:400px}.gallery figure{height:280px}}@media(max-width:500px){.gallery-grid{grid-template-columns:1fr}.gallery figure,.gallery figure:first-child{grid-column:auto;height:295px}.hero-art{opacity:1}}
.reviews{padding:115px max(5vw,24px);background:var(--cream)}.reviews-heading{display:grid;grid-template-columns:1.15fr .85fr;align-items:end;gap:80px;margin-bottom:55px}.reviews-heading>p:last-child{font-size:17px;line-height:1.6;margin:0;max-width:360px}.reviews-heading em{color:var(--coral)}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-card{background:#e6eee8;padding:32px;min-height:285px;display:flex;flex-direction:column}.review-card-featured{background:var(--ink);color:#fff}.review-stars{color:var(--coral);font-size:17px;letter-spacing:3px}.review-card blockquote{font-family:Fraunces,Georgia,serif;font-size:25px;line-height:1.17;letter-spacing:-.035em;margin:30px 0}.review-author{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:auto 0 0}.review-author span{font-weight:500;color:#668078}.review-card-featured .review-author span{color:#c9d9d0}@media(max-width:800px){.reviews{padding-top:85px;padding-bottom:85px}.reviews-heading{grid-template-columns:1fr;gap:25px}.review-grid{grid-template-columns:1fr}.review-card{min-height:220px}} 
.gallery figure{box-shadow:0 15px 34px rgba(20,51,46,.1)}.gallery figure:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(217,238,115,.15),transparent 42%,rgba(4,30,24,.12));pointer-events:none}.gallery figure:nth-child(1) img{object-position:50% 48%;filter:saturate(1.08) contrast(1.04)}.gallery figure:nth-child(2) img{object-position:50% 31%;filter:saturate(.9) contrast(1.05)}.gallery figure:nth-child(3) img{object-position:50% 46%;filter:saturate(.85) contrast(1.1)}.gallery figure:nth-child(4) img{object-position:48% 42%;filter:saturate(1.04) contrast(1.02)}.gallery figure:nth-child(5) img{object-position:58% 38%;filter:saturate(.9) contrast(1.06)}.footer-social{display:flex;align-items:center;gap:12px;justify-content:center}.footer-social span{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#597069}.footer-social a{font-size:12px;font-weight:700;border:1px solid var(--ink);border-radius:30px;padding:8px 12px}.footer-social a:hover{background:var(--ink);color:#fff}.footer-social b{font-size:14px;margin-left:5px}@media(max-width:800px){.footer-social{justify-content:flex-start}}

/* Heritage story and interactive service area */
.intro-band{position:relative;isolation:isolate;overflow:hidden;grid-template-columns:minmax(0,1.05fr) minmax(260px,.55fr);gap:70px;padding-top:116px;padding-bottom:116px;background:#102d27;color:#f7f3e8}.intro-band:before{content:"";position:absolute;z-index:-2;inset:0;background:url("assets/long-island-heritage-map.png") center/cover no-repeat}.intro-band:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,31,25,.82),rgba(8,31,25,.5) 62%,rgba(8,31,25,.72))}.intro-band .eyebrow{color:var(--lime)}.intro-band h2{color:#fff}.intro-band h2 em{color:var(--lime)}.story-copy>p:not(.eyebrow){max-width:560px;font-size:17px;line-height:1.65;margin:29px 0}.intro-band .text-link{color:#fff;border-color:rgba(255,255,255,.65)}.julio-portrait{align-self:center;position:relative;margin:0;max-width:380px;justify-self:end;box-shadow:18px 18px 0 rgba(217,238,115,.82);background:#0e3029}.julio-portrait:before{content:"";position:absolute;inset:-9px;border:1px solid rgba(217,238,115,.65);transform:translate(-10px,10px);z-index:-1}.julio-portrait img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 50%;filter:saturate(.88) contrast(1.05)}.julio-portrait figcaption{position:absolute;left:0;right:0;bottom:0;padding:36px 19px 17px;background:linear-gradient(transparent,rgba(7,28,23,.94));color:#fff;font-size:12px;letter-spacing:.09em;text-transform:uppercase}.julio-portrait figcaption span{font-weight:700}.service-card:nth-child(5){border-left:1px solid rgba(255,255,255,.23)}.service-card:nth-child(5) .service-icon{font-size:45px}.service-map-shell{grid-column:1/-1;position:relative;margin-top:18px;border:1px solid rgba(20,51,46,.14);box-shadow:16px 16px 0 var(--lime);background:#dbe9df;overflow:hidden}.service-map-shell:after{content:"";position:absolute;inset:0;pointer-events:none;border:8px solid rgba(245,241,232,.55)}#service-map{height:510px;width:100%;background:#c7ded2}.map-badge{position:absolute;z-index:500;left:25px;bottom:25px;display:flex;align-items:center;gap:9px;padding:11px 14px;background:rgba(12,44,36,.94);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;box-shadow:0 8px 22px rgba(5,24,19,.2)}.map-badge span{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(217,238,115,.2)}.leaflet-container{font-family:"DM Sans",sans-serif}.leaflet-popup-content-wrapper{border-radius:0;color:var(--ink);font-family:"DM Sans",sans-serif}.leaflet-popup-content{font-weight:700;font-size:13px}.leaflet-control-attribution{font-size:10px!important}.leaflet-control-zoom a{color:var(--ink)!important}
@media(max-width:800px){.intro-band{grid-template-columns:1fr;gap:48px;padding-top:85px;padding-bottom:90px}.julio-portrait{justify-self:start;max-width:320px;box-shadow:11px 11px 0 rgba(217,238,115,.82)}.service-map-shell{margin-top:0;box-shadow:9px 9px 0 var(--lime)}#service-map{height:390px}.map-badge{left:17px;bottom:17px;font-size:10px}.service-card:nth-child(5){border-left:1px solid rgba(255,255,255,.23)}}
@media(max-width:500px){.intro-band{padding-left:24px;padding-right:24px}.julio-portrait{max-width:285px}.service-map-shell{margin-left:-2px;margin-right:-2px}#service-map{height:330px}.map-badge{max-width:210px;line-height:1.35}.service-card:nth-child(5){border-left:1px solid rgba(255,255,255,.23)}}

/* Self-contained map: reliable when the site is opened directly from a local file. */
.offline-map{position:relative;background:url("assets/long-island-service-map.png") center/cover no-repeat!important}.map-location{position:absolute;z-index:2;width:17px;height:17px;border:2px solid #14332e;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(217,238,115,.26),0 4px 10px rgba(3,28,26,.4);cursor:pointer;transition:transform .2s ease,background .2s ease}.map-location:hover,.map-location:focus-visible{transform:scale(1.35);background:var(--coral);outline:2px solid #fff;outline-offset:3px}.map-location.is-home{width:22px;height:22px;background:var(--coral);box-shadow:0 0 0 7px rgba(237,112,79,.25),0 4px 10px rgba(3,28,26,.4)}.map-location:nth-child(1){left:29%;top:44%}.map-location:nth-child(2){left:27%;top:40%}.map-location:nth-child(3){left:32%;top:35%}.map-location:nth-child(4){left:24%;top:47%}.map-location:nth-child(5){left:22%;top:50%}.map-location:nth-child(6){left:18%;top:45%}.map-location:nth-child(7){left:19.5%;top:47%}.map-location:nth-child(8){left:20%;top:57%}.map-badge{z-index:3}.map-badge small{display:none}@media(max-width:800px){.map-badge small{display:block;font-size:9px;font-weight:500;letter-spacing:.04em}.map-badge b{display:block}}

/* Region-led coverage map */
.areas .service-map-shell{display:none}.coverage-map{padding:115px max(5vw,24px);background:#edf2eb}.coverage-map-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:end;margin-bottom:52px}.coverage-map-heading h2 em{color:var(--coral)}.coverage-map-heading>p:last-child{font-size:17px;line-height:1.62;max-width:410px;margin:0}.region-map{height:570px;position:relative;overflow:hidden;background:url("assets/long-island-service-map.png") center/cover no-repeat;box-shadow:16px 16px 0 var(--lime);border:1px solid rgba(20,51,46,.16)}.region-map:after{content:"";position:absolute;z-index:4;inset:0;border:9px solid rgba(245,241,232,.5);pointer-events:none}.map-zone{position:absolute;z-index:2;border:1px solid rgba(255,255,255,.72);background:rgba(23,107,82,.22);color:#fff;padding:0;font-family:"DM Sans",sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;line-height:1.25;text-transform:uppercase;text-shadow:0 1px 8px rgba(4,26,23,.9);cursor:pointer;transition:background .25s ease,transform .25s ease;display:flex;align-items:center;justify-content:center}.map-zone span{position:relative;z-index:1;padding:10px;background:rgba(8,35,29,.48);box-shadow:0 2px 8px rgba(0,0,0,.16)}.map-zone:hover,.map-zone:focus-visible,.map-zone.is-selected{background:rgba(217,238,115,.52);outline:none;transform:scale(1.02);z-index:3}.map-zone:focus-visible span{outline:2px solid #fff;outline-offset:4px}.zone-north-shore{left:8%;top:28%;width:24%;height:26%;clip-path:polygon(4% 20%,86% 0,100% 48%,72% 100%,0 82%)}.zone-nassau{left:15%;top:48%;width:21%;height:21%;clip-path:polygon(0 12%,94% 0,100% 84%,20% 100%)}.zone-south-shore{left:11%;top:66%;width:26%;height:17%;clip-path:polygon(0 12%,97% 0,100% 65%,30% 100%)}.zone-huntington{left:31%;top:34%;width:20%;height:31%;clip-path:polygon(0 8%,92% 0,100% 85%,12% 100%)}.zone-central-suffolk{left:48%;top:35%;width:23%;height:28%;clip-path:polygon(0 14%,98% 0,100% 82%,15% 100%)}.zone-north-fork{left:68%;top:17%;width:24%;height:25%;clip-path:polygon(0 42%,88% 0,100% 43%,35% 100%)}.zone-east-end{left:71%;top:53%;width:27%;height:27%;clip-path:polygon(0 18%,90% 0,100% 43%,35% 100%,0 80%)}.coverage-badge{position:absolute;z-index:6;left:26px;bottom:26px;display:flex;align-items:flex-start;gap:10px;background:rgba(9,38,31,.94);color:#fff;padding:14px 16px;box-shadow:0 8px 24px rgba(2,22,18,.3)}.coverage-badge span{display:block;width:9px;height:9px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(217,238,115,.18);margin-top:4px}.coverage-badge b{font-size:12px;letter-spacing:.08em;text-transform:uppercase}.coverage-badge small{display:block;margin-top:3px;font-size:11px;letter-spacing:.02em;color:#d5e4db}@media(max-width:800px){.coverage-map{padding-top:85px;padding-bottom:85px}.coverage-map-heading{grid-template-columns:1fr;gap:25px}.region-map{height:410px;box-shadow:9px 9px 0 var(--lime)}.map-zone{font-size:9px}.map-zone span{padding:7px}.coverage-badge{left:16px;bottom:16px;max-width:255px;padding:10px 12px}.coverage-badge b{font-size:10px}.coverage-badge small{font-size:9px}}@media(max-width:500px){.region-map{height:310px}.map-zone{font-size:7px;letter-spacing:.04em}.map-zone span{padding:5px}.coverage-badge{max-width:210px}.coverage-badge small{display:none}}

/* The coverage map belongs to the Rooted in Huntington story, not to a separate page section. */
.areas .coverage-map{grid-column:1/-1;width:100%;padding:18px 0 0;background:transparent}.areas .coverage-map-heading{margin-bottom:38px}.areas .coverage-map-heading .eyebrow{margin-bottom:15px}@media(max-width:800px){.areas .coverage-map{padding-top:8px}.areas .coverage-map-heading{margin-bottom:30px}}

/* Services as a visual showcase rather than a row of plain cards. */
.services{overflow:hidden;background:linear-gradient(135deg,#102f29 0%,#143d33 52%,#0b2721 100%)}.services-spotlight{display:grid;grid-template-columns:1.12fr .88fr;min-height:410px;margin:0 0 62px;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.035)}.services-spotlight figure{position:relative;margin:0;min-height:410px;overflow:hidden}.services-spotlight figure:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,39,32,.1),rgba(10,39,32,.55))}.services-spotlight img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 49%;filter:saturate(.86) contrast(1.08)}.services-spotlight figcaption{position:absolute;z-index:1;left:25px;bottom:22px;color:#fff;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.services-spotlight figcaption span{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:9px;border:1px solid var(--lime);border-radius:50%;color:var(--lime)}.spotlight-copy{padding:46px 45px;display:flex;flex-direction:column;align-items:flex-start}.spotlight-copy .eyebrow{color:var(--lime);margin-bottom:20px}.spotlight-copy h3{margin:0;font-family:Fraunces,Georgia,serif;font-size:clamp(34px,3.5vw,57px);letter-spacing:-.05em;line-height:.98}.spotlight-copy h3 em{color:var(--lime)}.spotlight-copy>p:not(.eyebrow){max-width:430px;margin:25px 0 32px;font-size:16px;line-height:1.62;color:#d7e5dc}.spotlight-pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto}.spotlight-pills span{padding:8px 10px;border:1px solid rgba(217,238,115,.5);color:var(--lime);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.service-grid{grid-template-columns:repeat(12,1fr);gap:14px;border:0}.service-card,.service-card:first-child{min-height:302px;border:1px solid rgba(255,255,255,.23);background:rgba(255,255,255,.035);grid-column:span 3;transition:transform .28s ease,background .28s ease,box-shadow .28s ease}.service-card:hover{transform:translateY(-8px);background:rgba(255,255,255,.09);box-shadow:0 14px 28px rgba(0,0,0,.18)}.service-card.featured{background:linear-gradient(145deg,#1b795b,#145442);grid-column:span 4}.service-card:nth-child(1){grid-column:span 4}.service-card:nth-child(3){grid-column:span 4}.service-card:nth-child(4){grid-column:span 5}.service-card:nth-child(5){grid-column:span 3;border-left:1px solid rgba(255,255,255,.23)}.service-card .service-icon{width:62px;height:62px;margin:27px 0 22px;display:grid;place-items:center;border-radius:50%;background:rgba(217,238,115,.12);border:1px solid rgba(217,238,115,.34);font-size:32px}.service-card h3{font-size:31px}.service-card p{max-width:300px}.service-card a{color:var(--lime)}@media(max-width:800px){.services-spotlight{grid-template-columns:1fr;margin-bottom:44px}.services-spotlight figure{min-height:295px}.spotlight-copy{padding:35px 28px;min-height:315px}.service-grid{grid-template-columns:1fr 1fr}.service-card,.service-card:first-child,.service-card.featured,.service-card:nth-child(1),.service-card:nth-child(3),.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto;min-height:300px}}@media(max-width:500px){.services-spotlight figure{min-height:260px}.spotlight-copy{padding:30px 22px}.service-grid{grid-template-columns:1fr}.service-card,.service-card:first-child,.service-card.featured,.service-card:nth-child(1),.service-card:nth-child(3),.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}.service-card .service-icon{margin:20px 0 16px}}

/* Responsive micro-motion for service cards. */
.service-card{overflow:hidden}.service-card:after{content:"";position:absolute;inset:-70% -48%;background:linear-gradient(115deg,transparent 43%,rgba(217,238,115,.28) 50%,transparent 57%);transform:translateX(-72%) rotate(9deg);transition:transform .7s cubic-bezier(.2,.75,.25,1);pointer-events:none}.service-card:hover:after,.service-card:focus-within:after{transform:translateX(72%) rotate(9deg)}.service-card:hover,.service-card:focus-within{transform:translateY(-10px) scale(1.015);border-color:rgba(217,238,115,.86);background:rgba(255,255,255,.12);box-shadow:0 20px 38px rgba(0,0,0,.26)}.service-card .service-icon{transition:transform .42s cubic-bezier(.2,.8,.2,1),background .3s ease,color .3s ease}.service-card:hover .service-icon,.service-card:focus-within .service-icon{transform:rotate(12deg) scale(1.15);background:var(--lime);color:var(--ink)}.service-card .service-number{transition:letter-spacing .28s ease,color .28s ease}.service-card:hover .service-number,.service-card:focus-within .service-number{letter-spacing:.18em;color:#fff}.service-card a{position:relative;z-index:2}.service-card a span{transition:transform .25s ease}.service-card:hover a span,.service-card:focus-within a span{transform:translateX(7px)}@media(prefers-reduced-motion:reduce){.service-card,.service-card:after,.service-card .service-icon,.service-card .service-number,.service-card a span{transition:none!important}.service-card:hover,.service-card:focus-within{transform:none}.service-card:hover:after,.service-card:focus-within:after{transform:translateX(-72%) rotate(9deg)}}

/* Reviews receive the same real-world texture as the work itself. */
.reviews{position:relative;isolation:isolate;overflow:hidden;background:#0f382f;color:#fff}.reviews:before{content:"";position:absolute;z-index:-2;inset:0;background:url("assets/branded-van.jpeg") center 46%/cover no-repeat;filter:saturate(.75) contrast(1.08)}.reviews:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(115deg,rgba(7,35,28,.97) 0%,rgba(12,58,46,.9) 44%,rgba(8,33,28,.79) 100%)}.reviews .eyebrow{color:var(--lime)}.reviews h2{color:#fff}.reviews h2 em{color:var(--lime)}.reviews-heading>p:last-child{color:#dce9e1}.review-card{position:relative;overflow:hidden;background:rgba(244,248,241,.94);color:var(--ink);border:1px solid rgba(255,255,255,.25);box-shadow:0 12px 30px rgba(3,27,21,.2)}.review-card:before{content:"“";position:absolute;right:18px;top:-14px;font-family:Fraunces,Georgia,serif;font-size:110px;line-height:1;color:rgba(23,107,82,.1)}.review-card-featured{background:rgba(16,54,44,.96);color:#fff;border-color:rgba(217,238,115,.5)}.review-card-featured:before{color:rgba(217,238,115,.15)}.review-card:not(.review-card-featured):hover{transform:translateY(-6px);background:#fff}.review-card{transition:transform .28s ease,background .28s ease}@media(max-width:800px){.reviews:before{background-position:60% center}}

/* Give the Long Island coverage area its own rich backdrop. */
.areas{position:relative;isolation:isolate;overflow:hidden;background:#0c3028;color:#fff}.areas:before{content:"";position:absolute;z-index:-2;inset:0;background:url("assets/long-island-heritage-map.png") center/cover no-repeat;opacity:.62}.areas:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(110deg,rgba(6,31,25,.96),rgba(10,54,43,.87) 53%,rgba(7,33,27,.94))}.areas>div,.areas>.area-copy{position:relative;z-index:1}.areas .eyebrow{color:var(--lime)}.areas h2{color:#fff}.areas h2 em{color:var(--lime)}.areas .area-copy{color:#d8e7df}.areas .coverage-map{position:relative;z-index:1}.areas .coverage-map-heading>p:last-child{color:#d8e7df}.areas .coverage-map-heading h2{color:#fff}.areas .coverage-map-heading h2 em{color:var(--lime)}

/* Menu navigation feels like a guided transition rather than a sudden jump. */
section[id]{scroll-margin-top:88px}.section-arrival{animation:section-arrival 1.15s ease-out}@keyframes section-arrival{0%{box-shadow:inset 0 0 0 0 rgba(217,238,115,0)}32%{box-shadow:inset 0 0 0 12px rgba(217,238,115,.42)}100%{box-shadow:inset 0 0 0 0 rgba(217,238,115,0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section-arrival{animation:none}}

/* Conversion-focused additions: proof, project comparison, answers, and quick contact. */
.proof{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;padding:110px max(9vw,25px);background:var(--lime)}.proof h2 em{color:var(--green)}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(20,51,46,.33)}.proof-grid article{padding:24px 20px 10px;border-right:1px solid rgba(20,51,46,.33);display:flex;flex-direction:column}.proof-grid article:first-child{border-left:1px solid rgba(20,51,46,.33)}.proof-grid strong{font:600 clamp(44px,5vw,70px)/1 Fraunces,Georgia,serif;letter-spacing:-.06em}.proof-grid span{max-width:125px;margin-top:12px;font-size:12px;line-height:1.4;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.project-journey{position:relative;padding:115px max(5vw,24px);overflow:hidden;background:linear-gradient(105deg,rgba(5,29,24,.98),rgba(9,54,42,.93)),url("assets/gallery/2396.jpg") center/cover}.project-journey>*{position:relative;z-index:1}.project-journey::after{position:absolute;right:-100px;bottom:-160px;width:430px;height:430px;border:1px solid rgba(217,238,115,.22);border-radius:50%;box-shadow:0 0 0 65px rgba(217,238,115,.035),0 0 0 130px rgba(217,238,115,.025);content:""}.journey-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:80px;align-items:end;margin-bottom:54px;color:#fff}.journey-heading h2{color:#fff}.journey-heading h2 em{color:var(--lime)}.journey-heading>p:last-child{max-width:400px;margin:0;color:rgba(255,255,255,.79);font-size:17px;line-height:1.62}.craft-showcase{display:grid;grid-template-columns:1.45fr .72fr;gap:18px}.craft-showcase article{position:relative;overflow:hidden;background:var(--ink)}.craft-showcase img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.7,.2,1),filter .55s ease}.craft-showcase article:hover img{transform:scale(1.055);filter:saturate(1.12)}.craft-main{min-height:610px;box-shadow:16px 16px 0 var(--coral)}.craft-main img{object-position:center 52%}.craft-caption{position:absolute;right:0;bottom:0;left:0;display:flex;align-items:center;gap:18px;padding:22px 26px;background:linear-gradient(90deg,rgba(7,34,28,.94),rgba(7,34,28,.15));color:#fff}.craft-caption>span,.craft-side span{color:var(--lime);font:700 12px/1 "DM Sans",sans-serif;letter-spacing:.13em}.craft-caption small{display:block;color:var(--lime);font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}.craft-caption strong{display:block;margin-top:4px;font:500 clamp(23px,2vw,31px)/1.05 Fraunces,Georgia,serif}.craft-side{display:grid;grid-template-rows:1fr 1fr;gap:18px}.craft-side article{min-height:0}.craft-side article img{position:absolute;inset:0}.craft-side article:first-child img{object-position:55% center}.craft-side article:last-child img{object-position:center 55%}.craft-side article::after{position:absolute;inset:0;content:"";background:linear-gradient(180deg,transparent 36%,rgba(7,34,28,.9))}.craft-side article>div{position:absolute;z-index:1;right:18px;bottom:17px;left:18px;color:#fff}.craft-side p{margin:5px 0 0;font:500 20px/1 Fraunces,Georgia,serif}.craft-note{max-width:640px;margin:48px 0 0 auto;color:rgba(255,255,255,.82);font-size:16px;line-height:1.65}.craft-note b{color:var(--lime)}.faq{display:grid;grid-template-columns:.9fr 1.1fr;gap:75px;padding:115px max(9vw,25px);background:var(--cream)}.faq-heading h2 em{color:var(--coral)}.faq-heading>p:last-child{max-width:375px;font-size:17px;line-height:1.62}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;cursor:pointer;font:600 23px/1.15 Fraunces,Georgia,serif;letter-spacing:-.035em;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{color:var(--coral);font:400 26px/1 DM Sans,sans-serif;transition:transform .25s ease}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{max-width:600px;margin:0 0 22px;font-size:15px;line-height:1.65;color:#527068}.quick-contact{position:fixed;z-index:20;right:22px;bottom:22px;display:flex;align-items:stretch;border:1px solid rgba(217,238,115,.75);box-shadow:0 12px 28px rgba(4,28,22,.25)}.quick-contact a{display:flex;flex-direction:column;justify-content:center;padding:10px 14px;background:var(--ink);color:#fff;font-size:11px;font-weight:700;letter-spacing:.05em}.quick-contact a:first-child{background:var(--green)}.quick-contact span{color:var(--lime);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.quick-contact b{margin-top:2px;font-size:13px}.quick-contact a:last-child{align-items:center;flex-direction:row;gap:7px}.quick-contact i{color:var(--lime);font-size:16px;font-style:normal}@media(max-width:800px){.proof,.faq{grid-template-columns:1fr;gap:38px;padding-top:85px;padding-bottom:85px}.proof-grid{max-width:600px}.project-journey{padding-top:85px;padding-bottom:85px}.journey-heading{grid-template-columns:1fr;gap:25px}.craft-showcase{grid-template-columns:1fr}.craft-main{min-height:480px;box-shadow:10px 10px 0 var(--coral)}.craft-side{grid-template-columns:1fr 1fr;grid-template-rows:270px}.faq summary{font-size:21px}.quick-contact{right:12px;bottom:12px}}@media(max-width:500px){.proof-grid{grid-template-columns:1fr}.proof-grid article,.proof-grid article:first-child{border-left:0;border-right:0;border-bottom:1px solid rgba(20,51,46,.23)}.proof-grid article:last-child{border-bottom:0}.proof-grid span{max-width:none}.craft-main{min-height:400px}.craft-side{grid-template-columns:1fr;grid-template-rows:220px 220px}.craft-caption{padding:18px}.craft-caption strong{font-size:23px}.craft-note{margin-top:32px}.faq summary{font-size:19px}.quick-contact a{padding:9px 10px}.quick-contact b{font-size:11px}.quick-contact a:last-child{font-size:10px}}

.contact select{display:block;width:100%;margin-top:5px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;padding:12px 22px 9px 0;color:var(--ink);font:16px "DM Sans",sans-serif;outline-color:var(--green);appearance:auto}
/* On phones, keep the brand’s strongest irrigation image fixed and calm. */
@media(max-width:800px){.hero-frame{animation:none}.hero-frame.frame-one{opacity:1;transform:scale(1.03)}.hero-frame.frame-two,.hero-frame.frame-three{display:none}}

/* People retain the original photographs and natural colors, including on hover. */
.julio-portrait { width: 100%; max-width: 300px; }
.julio-portrait img { height: auto; aspect-ratio: 1; object-fit: contain; filter: none; }
.julio-portrait figcaption { position: static; padding: 17px 19px; background: #0e3029; }
.hero-art .frame-three,
.gallery figure:nth-child(2) img,
.gallery figure:nth-child(5) img,
.craft-showcase article img[src$="team-installation.jpeg"],
.craft-showcase article img[src$="technician-testing.jpeg"],
.craft-showcase article:hover img[src$="team-installation.jpeg"],
.craft-showcase article:hover img[src$="technician-testing.jpeg"] { filter: none; }
.gallery figure:nth-child(2)::after,
.gallery figure:nth-child(5)::after { background: none; }

/* Consistent, scalable service icons stay sharp on phones and desktops. */
.services .service-grid > .service-card { grid-column: span 4; min-width: 0; }
.service-card--holiday .service-icon { color: #ffe0a0; border-color: rgba(255,224,160,.55); background: rgba(255,224,160,.09); }
.intro-band--expanded { align-items: center; }
.intro-band--expanded .story-copy > p:not(.eyebrow) { max-width: 66ch; margin: 22px 0; line-height: 1.7; }
.intro-band--expanded .story-copy h2 { margin-bottom: 30px; }
.intro-band--expanded .text-link { display: inline-block; margin-top: 6px; }
@media(max-width:800px) { .services .service-grid > .service-card { grid-column: auto; } }
.service-card .service-icon { width: 78px; height: 78px; flex: 0 0 78px; }
.service-icon svg { display: block; width: 48px; height: 48px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }

/* A direct, accessible connection to the official Instagram account. */
.craft-showcase article img,.craft-showcase article:hover img { filter: none; }
.hero-instagram{display:inline-flex;align-items:center;gap:12px;margin-top:28px;padding:12px 16px;border:1px solid rgba(217,238,115,.45);border-radius:6px;background:rgba(7,32,25,.7);color:#fff;transition:background .2s,transform .2s}
.hero-instagram svg{width:27px;height:27px;fill:none;stroke:var(--lime);stroke-width:1.7;flex-shrink:0}.instagram-dot{fill:var(--lime);stroke:none}
.hero-instagram span{font-size:11px;line-height:1.5}.hero-instagram b{display:block;font-size:14px;font-weight:600}.hero-instagram>span:last-child{font-size:22px;color:var(--lime);margin-left:12px}
.hero-instagram:hover{background:#176b52;transform:translateY(-2px)}.hero-instagram:focus-visible{outline:3px solid var(--lime);outline-offset:5px}.footer-social{flex-wrap:wrap}
.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-source{display:flex;justify-content:space-between;gap:15px;margin:0;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.review-source span{font-weight:400;opacity:.8}

/* A complete photo archive; photographs themselves have no creative filters. */
.photo-library{padding:110px max(5vw,24px);background:radial-gradient(ellipse at top right,rgba(90,126,75,.22),transparent 65%),#0b2822;color:#f5f1e8}
.library-heading{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:60px;margin-bottom:48px}.library-heading .eyebrow,.library-heading em{color:var(--lime)}.library-heading>p{max-width:415px;font-size:17px;line-height:1.65;color:#d1ded6;margin:0}
.gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.gallery-filters{display:flex;gap:10px;flex-wrap:wrap}.gallery-filters button,.gallery-more{font:600 13px 'DM Sans',sans-serif;color:#fff;border:1px solid #668175;background:transparent;padding:12px 18px;border-radius:30px;cursor:pointer;min-height:44px}
.gallery-filters button[aria-pressed="true"]{background:var(--lime);color:var(--ink);border-color:var(--lime)}.gallery-filters button:hover{border-color:var(--lime)}#gallery-count{font-size:12px;color:#c0d0c5;white-space:nowrap}
.photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.photo-tile{position:relative;display:block;min-width:0;aspect-ratio:3/4;overflow:hidden;padding:0;border:1px solid rgba(255,255,255,.12);border-radius:4px;background:#153e32;text-align:left;cursor:pointer;color:#fff}
.photo-tile img{display:block;width:100%;height:100%;object-fit:cover;image-orientation:from-image;filter:none;transition:transform .4s ease}.photo-tile:hover img{transform:scale(1.035)}.photo-tile-caption{position:absolute;left:0;right:0;bottom:0;padding:44px 17px 18px;font:500 13px/1.5 'DM Sans',sans-serif;background:linear-gradient(transparent,rgba(0,18,13,.95))}.photo-expand{position:absolute;right:12px;top:12px;display:grid;place-items:center;width:32px;height:32px;background:rgba(8,34,26,.85);border:1px solid rgba(255,255,255,.45);border-radius:50%;font-size:19px}
.gallery-more{display:flex;gap:30px;align-items:center;margin:34px auto 0;border-radius:4px;color:var(--lime);border-color:var(--lime)}.gallery-more[hidden]{display:none}.gallery-more:hover{background:var(--green)}.photo-tile:focus-visible,.gallery-filters button:focus-visible,.gallery-more:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.photo-open{overflow:hidden}.photo-lightbox{width:min(1100px,94vw);max-width:none;max-height:94dvh;padding:44px 18px 18px;border:1px solid #72917e;border-radius:8px;background:#071d17;color:#fff;box-shadow:0 30px 100px #0009}.photo-lightbox::backdrop{background:rgba(0,13,10,.9)}.lightbox-stage{position:relative;display:flex;justify-content:center;align-items:center;height:min(72dvh,780px)}.lightbox-stage img{max-width:100%;max-height:100%;object-fit:contain;filter:none}.photo-lightbox button{display:grid;place-items:center;width:44px;height:44px;background:#123c30;color:#fff;border:1px solid #82a493;border-radius:50%;font-size:24px;cursor:pointer}.photo-lightbox button:focus-visible{outline:3px solid var(--lime);outline-offset:3px}.lightbox-close{position:absolute;right:12px;top:8px;z-index:2}.lightbox-prev{position:absolute;left:0;z-index:1}.lightbox-next{position:absolute;right:0;z-index:1}.lightbox-details{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px;padding:10px 8px 0}.lightbox-details p{margin:6px 0}.lightbox-details span{white-space:nowrap;color:var(--lime)}
@media(max-width:1000px){.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.site-header nav{gap:18px}}
@media(max-width:800px){.review-grid{grid-template-columns:1fr}.photo-library{padding-top:80px;padding-bottom:80px}.library-heading{grid-template-columns:1fr;gap:25px}.gallery-toolbar{align-items:flex-start;flex-direction:column;gap:8px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{min-height:720px}.hero-instagram{margin-top:23px}.hero-instagram>span:last-child{margin-left:4px}}
@media(max-width:500px){.photo-grid{gap:10px}.photo-tile-caption{font-size:11px;padding:36px 10px 12px}.photo-expand{width:26px;height:26px;right:8px;top:8px}.gallery-filters{gap:8px}.gallery-filters button{padding:10px 13px;font-size:12px}.photo-lightbox{padding:52px 10px 12px}.lightbox-stage{height:65dvh}.lightbox-details{font-size:12px}.hero-instagram{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.photo-tile img,.hero-instagram{transition:none}.photo-tile:hover img,.hero-instagram:hover{transform:none}}

/* The owner's selected waterfront van photograph is a single, fixed cover. */
.review-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.review-summary{font:500 24px/1.25 Fraunces,Georgia,serif;letter-spacing:-.025em;margin:30px 0}
.craft-main img{position:absolute;inset:0;object-position:50% 24%}
.craft-side .craft-irrigation img{object-position:50% 40%}
.library-video-link{display:flex;align-items:center;justify-content:space-between;max-width:255px;margin-top:24px;padding:12px 0;border-bottom:1px solid #a5c092;color:var(--lime);font-size:14px;font-weight:600}
.field-videos{padding:95px max(5vw,24px) 110px;background:radial-gradient(ellipse at 0 100%,rgba(108,147,83,.18),transparent 65%),#173b30;color:#f5f1e8;border-top:1px solid #ffffff24}
.videos-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:48px}.videos-heading .eyebrow,.videos-heading em{color:var(--lime)}.videos-heading>p{max-width:430px;margin:0;font-size:17px;line-height:1.65;color:#d5e3d9}
.video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:970px;margin:0 auto}.video-card{overflow:hidden;background:#09291f;border:1px solid #668474;border-radius:8px}.video-topline{display:flex;justify-content:space-between;gap:20px;padding:18px 22px;color:var(--lime);font-size:11px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.field-video{display:block;width:100%;height:auto;max-height:610px;aspect-ratio:608/1080;object-fit:contain;background:#03140e}.field-video:focus-visible{outline:3px solid var(--lime);outline-offset:-3px}.video-caption{padding:25px}.video-caption h3{font:500 29px/1.05 Fraunces,Georgia,serif;letter-spacing:-.035em;margin:0 0 14px}.video-caption p{margin:0;color:#cedfd3;font-size:14px;line-height:1.65}
@media(max-width:1000px){.review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.review-grid,.videos-heading,.video-grid{grid-template-columns:1fr}.videos-heading{gap:24px}.field-videos{padding:75px 24px}.video-grid{max-width:420px;gap:30px}.field-video{max-height:580px}.video-caption h3{font-size:27px}.review-summary{font-size:23px}}
/* Keep the featured clip horizontal at every screen size, without cropping. */
.video-card--featured { grid-column: 1 / -1; border-color: #a5c092; }
.field-video.field-video--landscape { width: 100%; height: auto; max-height: none; aspect-ratio: 16 / 9; object-fit: contain; }
.video-card--featured .video-caption { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 28px; padding: 30px; }
.video-card--featured .video-caption h3 { margin: 0; font-size: clamp(27px, 3vw, 36px); }
@media(max-width:650px) {
  .video-card--featured .video-caption { grid-template-columns: 1fr; gap: 14px; padding: 24px; }
  .video-card--featured .video-topline { gap: 12px; padding: 16px; font-size: 10px; }
}
.julio-portrait--onsite { max-width: 360px; }
.julio-portrait--onsite img { aspect-ratio: 4 / 5; object-fit: cover; object-position: 52% 38%; }
.gallery figure.gallery-team img { object-position: 50% 24%; filter: none; }
/* A warm, photo-led holiday feature, with original colors and no automatic playback. */
.holiday-showcase { padding: 100px max(5vw,24px); background: radial-gradient(ellipse at 95% 0,rgba(184,140,61,.15),transparent 55%),#092921; color: #f8f2e7; border-block: 1px solid #f1d49a30; }
.holiday-feature { display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.25fr); gap: clamp(30px,5vw,80px); align-items: center; max-width: 1440px; margin: 0 auto; }
.holiday-copy .eyebrow,.holiday-copy h2 em { color: #f1d49a; }
.holiday-copy h2 { font-size: clamp(45px,5vw,76px); }
.holiday-copy > p:not(.eyebrow) { max-width: 44ch; color: #d6e2d9; font-size: 17px; line-height: 1.7; margin: 28px 0; }
.holiday-details { display: flex; flex-wrap: wrap; gap: 9px; margin: 0 0 32px; padding: 0; list-style: none; }
.holiday-details li { padding: 9px 12px; border: 1px solid #f1d49a50; border-radius: 30px; color: #f1d49a; font-size: 12px; }
.holiday-call { padding: 16px 20px; color: #092921; background: #f1d49a; border-radius: 4px; line-height: 1.4; }
.holiday-call:hover { background: #ffe5b7; }
.holiday-gallery-link { display: flex; align-items: center; gap: 26px; width: fit-content; max-width: 100%; padding-bottom: 7px; margin-top: 24px; border-bottom: 1px solid #f1d49a75; font-size: 14px; font-weight: 600; color: #f1d49a; }
.holiday-call:focus-visible,.holiday-gallery-link:focus-visible { outline: 3px solid #fff; outline-offset: 5px; }
.holiday-cover { margin: 0; border: 1px solid #f1d49a65; border-radius: 8px; overflow: hidden; background: #0c201b; box-shadow: 14px 14px 0 #f1d49a0d; }
.holiday-cover img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: contain; }
.holiday-cover figcaption { padding: 16px 20px; color: #f1d49a; font-size: 13px; letter-spacing: .03em; }
.holiday-scenes { max-width: 1440px; margin: 45px auto 0; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 24px; }
.holiday-garden { position: relative; overflow: hidden; margin: 0; min-height: 320px; border: 1px solid #f1d49a40; border-radius: 8px; }
.holiday-garden img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.holiday-garden figcaption { position: absolute; inset: auto 0 0; padding: 65px 25px 25px; background: linear-gradient(transparent,rgba(3,19,13,.94)); }
.holiday-garden figcaption span { display: block; color: #f1d49a; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; margin-bottom: 10px; }
.holiday-garden figcaption strong { display: block; font: 500 clamp(23px,2.3vw,34px)/1.1 Fraunces,Georgia,serif; letter-spacing: -.03em; }
.holiday-film { min-width: 0; border: 1px solid #f1d49a40; border-radius: 8px; overflow: hidden; background: #061e18; }
.holiday-film .video-topline { color: #f1d49a; }
.holiday-film .video-caption h3 { font-size: clamp(23px,2.5vw,30px); }
.photo-tile img[src*="holiday-roofline"] { object-position: 50% 64%; }
@media(max-width:850px) { .holiday-feature { grid-template-columns: 1fr; gap: 34px; } .holiday-copy > p:not(.eyebrow) { max-width: 62ch; } .holiday-showcase { padding-top: 75px; padding-bottom: 75px; } }
@media(max-width:700px) { .holiday-scenes { grid-template-columns: 1fr; margin-top: 28px; } .holiday-garden { min-height: 0; aspect-ratio: 4 / 3; } .holiday-copy h2 { font-size: clamp(42px,9vw,64px); } }
.hero--van .hero-art { opacity: 1; }
/* Final presentation details: readable headings, touch targets, and calm navigation. */
.reviews-heading > .eyebrow,.journey-heading > .eyebrow,.coverage-map-heading > .eyebrow { grid-column: 1 / -1; margin: 0; }
.reviews-heading,.journey-heading,.coverage-map-heading { row-gap: 22px; }
.service-card p { margin-bottom: 26px; }
.service-card a { min-height: 44px; align-items: center; line-height: 1.5; gap: 12px; }
.service-card a span { flex-shrink: 0; }
.contact > *,.faq > *,.proof > * { min-width: 0; }
.contact-details a { overflow-wrap: anywhere; }
.contact-text-link { display: inline-flex; align-items: center; gap: 12px; margin-top: 24px; padding: 12px 0; border-bottom: 1px solid var(--ink); font-size: 14px; font-weight: 700; }
.contact form .button { line-height: 1.4; }
.form-note { line-height: 1.6; }
.button-primary { background: #aa422b; }
.button-primary:hover { background: #8e3522; }
.menu-toggle { min-width: 44px; min-height: 44px; cursor: pointer; }
:where(a,button,summary,input,select,textarea):focus-visible { outline: 3px solid #719338; outline-offset: 5px; }
.site-header nav a { display: inline-flex; align-items: center; min-height: 44px; }
.coverage-badge { max-width: calc(100% - 52px); }
.coverage-badge small { line-height: 1.55; }
footer { padding-bottom: 110px; }
@media(max-width:500px) {
  .contact form { padding: 25px 20px; }
  .contact-details { font-size: 17px; }
  .review-card { padding: 25px; }
  .coverage-badge { max-width: calc(100% - 32px); }
  .quick-contact { bottom: max(12px,env(safe-area-inset-bottom)); }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  .gallery figure:hover img,.craft-showcase article:hover img,.review-card:hover { transform: none; }
}
.hero--van .hero-frame { opacity: 1; animation: none; transform: none; filter: none; object-position: 50% 60%; }
@media(max-width:800px){
  .hero.hero--van { flex-direction: column; align-items: stretch; min-height: 0; padding: 0; }
  .hero--van .hero-art { position: relative; inset: auto; width: 100%; aspect-ratio: 4 / 3; flex: none; }
  .hero--van .hero-frame { object-position: center; }
  .hero--van .hero-art::after { background: linear-gradient(180deg,transparent 82%,rgba(24,62,52,.45)); }
  .hero--van .hero-copy { padding: 34px 24px 48px; max-width: 100%; }
  .hero--van h1 { font-size: clamp(44px,7.2vw,68px); }
  .hero--van .trust-row { margin-top: 32px; }
}
