@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--lime:#77E380;--acid:#BBE250;--ink:#0b0d0b;--ink2:#151915;--paper:#f6f7f2;--white:#fff;--muted:#6d746c;--line:rgba(11,13,11,.12);--radius:28px;--shadow:0 20px 60px rgba(0,0,0,.13)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;overflow-x:hidden}img,video{max-width:100%;display:block}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit}.container{width:min(1180px,calc(100% - 40px));margin:auto}.section{padding:110px 0}.section-sm{padding:72px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800}.eyebrow:before{content:'';width:34px;height:2px;background:currentColor}.title{font-family:'Manrope',sans-serif;font-size:clamp(42px,5.2vw,78px);line-height:.98;letter-spacing:-.055em;margin:18px 0 26px}.title.small{font-size:clamp(34px,4vw,58px)}.lead{font-size:18px;line-height:1.75;color:#5d655d;max-width:720px}.pill{display:inline-flex;align-items:center;justify-content:center;gap:11px;border-radius:999px;padding:14px 22px;font-weight:800;transition:.35s ease;border:1px solid transparent}.pill.primary{background:var(--lime);color:#071007}.pill.dark{background:var(--ink);color:#fff}.pill.outline{border-color:rgba(255,255,255,.45);color:#fff}.pill:hover{transform:translateY(-3px);box-shadow:0 12px 26px rgba(0,0,0,.18)}.arrow{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(0,0,0,.12);transition:.35s}.pill:hover .arrow{transform:rotate(45deg)}
.topbar{height:38px;background:var(--acid);display:flex;align-items:center;font-size:12px;font-weight:700}.topbar .container{display:flex;justify-content:space-between;gap:20px}.topbar-left,.topbar-right{display:flex;gap:20px;align-items:center}.site-header{position:absolute;top:38px;left:0;right:0;z-index:30}.nav-shell{width:min(1240px,calc(100% - 28px));margin:14px auto 0;background:rgba(9,12,9,.88);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.12);border-radius:22px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:24px;padding:11px 15px 11px 24px;box-shadow:0 10px 30px rgba(0,0,0,.15)}.brand img{width:280px;max-height:82px;object-fit:contain;object-position:left center}.nav-links{display:flex;justify-content:center;gap:4px}.nav-links a{color:#fff;padding:12px 12px;border-radius:999px;font-size:14px;font-weight:700;transition:.3s}.nav-links a:hover,.nav-links a.active{background:var(--lime);color:#081108}.nav-actions{display:flex;align-items:center;gap:8px}.menu-toggle{display:none;border:0;width:48px;height:48px;border-radius:14px;background:var(--lime);position:relative}.menu-toggle span,.menu-toggle:before,.menu-toggle:after{content:'';position:absolute;left:13px;right:13px;height:2px;background:#071007;transition:.3s}.menu-toggle span{top:23px}.menu-toggle:before{top:16px}.menu-toggle:after{top:30px}.menu-toggle.open span{opacity:0}.menu-toggle.open:before{top:23px;transform:rotate(45deg)}.menu-toggle.open:after{top:23px;transform:rotate(-45deg)}
.hero{min-height:100vh;position:relative;display:flex;align-items:flex-end;background:#0a0d0a;color:#fff;overflow:hidden}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,8,5,.84) 0%,rgba(5,8,5,.43) 56%,rgba(5,8,5,.18) 100%),linear-gradient(0deg,rgba(5,8,5,.78) 0%,transparent 45%)}.hero-content{position:relative;z-index:2;padding:220px 0 86px;width:100%}.hero-copy{max-width:890px}.hero h1{font-family:'Manrope',sans-serif;font-size:clamp(54px,8.1vw,112px);line-height:.88;letter-spacing:-.07em;margin:22px 0 28px}.hero h1 em{font-style:normal;color:var(--lime)}.hero p{font-size:19px;line-height:1.65;max-width:680px;color:rgba(255,255,255,.84)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.hero-orb{position:absolute;right:6%;bottom:8%;z-index:2;width:170px;height:170px;border-radius:50%;background:var(--acid);color:#0b0d0b;display:grid;place-items:center;text-align:center;font-weight:800;line-height:1.1;transform:rotate(8deg);animation:floaty 5s ease-in-out infinite}.hero-orb strong{font:800 48px/1 'Manrope'}@keyframes floaty{50%{transform:translateY(-14px) rotate(2deg)}}
.marquee{background:var(--lime);overflow:hidden;border-block:1px solid rgba(0,0,0,.18)}.marquee-track{display:flex;width:max-content;animation:marquee 24s linear infinite}.marquee span{font-family:'Manrope';font-weight:800;font-size:20px;text-transform:uppercase;letter-spacing:.02em;padding:19px 28px;display:flex;align-items:center;gap:26px}.marquee i{width:8px;height:8px;border-radius:50%;background:#0b0d0b}@keyframes marquee{to{transform:translateX(-50%)}}
.grid-2{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center}.image-stack{position:relative;min-height:600px}.image-main{position:absolute;inset:0 10% 0 0;border-radius:36px 160px 36px 36px;overflow:hidden}.image-main img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.image-main:hover img{transform:scale(1.05)}.image-float{position:absolute;width:46%;right:0;bottom:40px;border:10px solid var(--paper);border-radius:26px;overflow:hidden;box-shadow:var(--shadow)}.image-float img{aspect-ratio:1/1.2;object-fit:cover}.orbit-badge{position:absolute;top:24px;right:4px;width:138px;height:138px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;text-align:center;font-weight:700}.orbit-badge b{font:800 42px/1 'Manrope';color:var(--lime)}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0}.check{padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:#fff;font-weight:700;display:flex;align-items:center;gap:12px}.check:before{content:'✓';width:28px;height:28px;border-radius:50%;background:var(--lime);display:grid;place-items:center}
.dark-section{background:var(--ink);color:#fff;position:relative;overflow:hidden}.dark-section:before{content:'';position:absolute;width:520px;height:520px;border:1px solid rgba(119,227,128,.18);border-radius:50%;right:-160px;top:-220px;box-shadow:0 0 0 80px rgba(119,227,128,.03),0 0 0 160px rgba(119,227,128,.025)}.dark-section .lead{color:rgba(255,255,255,.65)}.services-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:44px}.services-scroll{display:flex;gap:20px;overflow-x:auto;padding:0 max(20px,calc((100vw - 1180px)/2)) 34px;scroll-snap-type:x mandatory;scrollbar-width:none}.services-scroll::-webkit-scrollbar{display:none}.service-card{flex:0 0 min(390px,84vw);height:530px;position:relative;border-radius:30px;overflow:hidden;scroll-snap-align:start;background:#222}.service-card img{width:100%;height:100%;object-fit:cover;transition:.7s}.service-card:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.86),rgba(0,0,0,.04) 64%)}.service-card:hover img{transform:scale(1.08)}.service-num{position:absolute;top:22px;left:22px;z-index:2;width:54px;height:54px;border-radius:50%;background:var(--lime);color:#081108;display:grid;place-items:center;font-weight:800}.service-info{position:absolute;z-index:2;left:26px;right:26px;bottom:25px;color:#fff}.service-info h3{font:700 30px/1.08 'Manrope';margin:0 0 10px}.service-info p{margin:0;color:rgba(255,255,255,.72);line-height:1.6}.service-arrow{position:absolute;right:24px;top:24px;z-index:3;width:50px;height:50px;border-radius:50%;border:1px solid rgba(255,255,255,.55);display:grid;place-items:center;color:#fff;transform:rotate(-45deg);transition:.3s}.service-card:hover .service-arrow{background:var(--lime);color:#071007;border-color:var(--lime);transform:rotate(0)}
.stats{background:var(--acid);padding:42px 0}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.stat{text-align:center;border-right:1px solid rgba(0,0,0,.15)}.stat:last-child{border:0}.stat strong{font:800 clamp(38px,4.8vw,68px)/1 'Manrope';display:block}.stat span{font-weight:700;font-size:14px;margin-top:8px;display:block}
.feature-panel{background:#fff;border-radius:36px;padding:36px;display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center;box-shadow:0 12px 50px rgba(0,0,0,.05)}.feature-media{border-radius:26px;overflow:hidden;min-height:470px}.feature-media img{width:100%;height:100%;object-fit:cover}.feature-list{display:grid;gap:13px;margin-top:30px}.feature-row{display:grid;grid-template-columns:42px 1fr;gap:14px;border-top:1px solid var(--line);padding-top:18px}.feature-row b{width:36px;height:36px;background:var(--lime);border-radius:50%;display:grid;place-items:center}.feature-row h4{font:700 20px/1.2 'Manrope';margin:0 0 5px}.feature-row p{margin:0;color:var(--muted);line-height:1.55}
.animated-checks .check{transition:transform .35s ease,box-shadow .35s ease,background .35s ease}.animated-checks .check:hover{transform:translateY(-6px);box-shadow:0 18px 34px rgba(0,0,0,.08);background:#fbfdf8}.animated-checks .check:nth-child(1){transition-delay:.04s}.animated-checks .check:nth-child(2){transition-delay:.08s}.animated-checks .check:nth-child(3){transition-delay:.12s}.animated-checks .check:nth-child(4){transition-delay:.16s}
.why-section{background:#eef2e4}.why-layout{display:grid;grid-template-columns:1fr 1.06fr;gap:30px;align-items:start}.why-copy{padding-right:20px}.why-top-media,.why-bottom-media{position:relative;border-radius:34px;overflow:hidden;min-height:320px}.why-top-media img,.why-bottom-media img{width:100%;height:100%;object-fit:cover}.why-top-media{min-height:365px}.trust-card{position:absolute;left:24px;bottom:24px;max-width:320px;background:#fff;border-radius:28px;padding:24px;box-shadow:0 18px 40px rgba(0,0,0,.14);transition:transform .35s ease,box-shadow .35s ease}.trust-card strong{display:block;font:800 clamp(42px,4vw,56px)/1 'Manrope';margin-bottom:8px}.trust-card span{display:block;font:700 18px/1.2 'Manrope';margin-bottom:10px}.trust-card p{margin:0;color:var(--muted);line-height:1.55;font-size:15px}.trust-card:hover{transform:translateY(-8px);box-shadow:0 24px 48px rgba(0,0,0,.18)}
.why-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-self:stretch}.why-card{background:rgba(255,255,255,.72);border:1px solid rgba(11,13,11,.08);border-radius:28px;padding:28px 26px;min-height:100%;transition:transform .35s ease,box-shadow .35s ease,background .35s ease}.why-card:hover{transform:translateY(-8px);box-shadow:0 18px 38px rgba(0,0,0,.09);background:#fff}.why-card-icon{width:60px;height:60px;border-radius:18px;background:var(--lime);display:grid;place-items:center;font-size:28px;margin-bottom:24px}.why-card h3{font:700 22px/1.18 'Manrope';margin:0 0 12px}.why-card p{margin:0;color:var(--muted);line-height:1.65}

.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:42px}.process-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;min-height:260px;position:relative;transition:.35s}.process-card:nth-child(even){transform:translateY(34px)}.process-card:hover{background:var(--lime);transform:translateY(-6px)}.process-card:nth-child(even):hover{transform:translateY(22px)}.process-card .n{font:800 50px/1 'Manrope';opacity:.14}.process-card h3{font:700 23px/1.15 'Manrope';margin:52px 0 10px}.process-card p{margin:0;color:#5f675f;line-height:1.6}.process-card:hover p{color:#1b241c}
.faq-wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;border:0;background:none;padding:23px 0;display:flex;justify-content:space-between;gap:20px;text-align:left;font:700 20px/1.3 'Manrope';cursor:pointer}.faq-q span:last-child{width:32px;height:32px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;flex:none;transition:.3s}.faq-item.open .faq-q span:last-child{background:var(--lime);color:#071007;transform:rotate(45deg)}.faq-a{max-height:0;overflow:hidden;color:var(--muted);line-height:1.7;transition:max-height .35s ease}.faq-item.open .faq-a{max-height:180px}.faq-a p{margin:0 0 22px}
.cta{padding:0 0 90px}.cta-box{background:var(--ink);color:#fff;border-radius:36px;overflow:hidden;display:grid;grid-template-columns:1.15fr .85fr;min-height:420px;position:relative}.cta-copy{padding:58px;position:relative;z-index:2}.cta-copy h2{font:800 clamp(42px,5vw,72px)/.96 'Manrope';letter-spacing:-.055em;margin:15px 0 24px}.cta-media{position:relative}.cta-media img{width:100%;height:100%;object-fit:cover}.cta-media:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--ink),transparent 55%);z-index:1}
.page-hero{min-height:58vh;background:#101410;color:#fff;position:relative;display:flex;align-items:end;overflow:hidden}.page-hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(7,10,7,.85),rgba(7,10,7,.22)),url('https://images.unsplash.com/photo-1416879595882-3373a0480b5b?auto=format&fit=crop&w=2000&q=85');background-size:cover;background-position:center}.page-hero .container{position:relative;z-index:2;padding:220px 0 70px}.page-hero h1{font:800 clamp(52px,7vw,92px)/.9 'Manrope';letter-spacing:-.06em;margin:18px 0 10px}.crumbs{display:flex;gap:10px;align-items:center;font-weight:700;color:rgba(255,255,255,.72)}.crumbs a{color:var(--lime)}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;transition:.35s}.info-card:hover{transform:translateY(-8px);box-shadow:0 20px 45px rgba(0,0,0,.08)}.info-card .icon{width:58px;height:58px;border-radius:18px;background:var(--lime);display:grid;place-items:center;font-size:26px;margin-bottom:34px}.info-card h3{font:700 25px/1.15 'Manrope';margin:0 0 10px}.info-card p{color:var(--muted);line-height:1.65;margin:0}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.service-detail{background:#fff;border-radius:30px;overflow:hidden;border:1px solid var(--line);display:grid;grid-template-columns:190px 1fr;min-height:240px}.service-detail img{width:100%;height:100%;object-fit:cover}.service-detail-copy{padding:28px}.service-detail h3{font:700 27px/1.1 'Manrope';margin:0 0 12px}.service-detail p{color:var(--muted);line-height:1.6;margin:0}.service-detail ul{padding-left:18px;margin:15px 0 0;color:#3f473f;line-height:1.7}
.location-panel{display:grid;grid-template-columns:1fr 1fr;gap:30px;background:#fff;border-radius:32px;overflow:hidden}.location-copy{padding:52px}.location-map{min-height:480px;background:linear-gradient(rgba(119,227,128,.25),rgba(187,226,80,.2)),url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=80') center/cover}.location-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.location-tags span{background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:10px 14px;font-weight:700}.radius-ring{width:230px;height:230px;border-radius:50%;border:1px solid rgba(255,255,255,.25);display:grid;place-items:center;position:relative;margin:auto}.radius-ring:before,.radius-ring:after{content:'';position:absolute;border:1px solid rgba(255,255,255,.18);border-radius:50%}.radius-ring:before{inset:28px}.radius-ring:after{inset:60px}.radius-ring strong{z-index:1;font:800 52px/1 'Manrope';color:var(--lime);text-align:center}.radius-ring strong small{font-size:15px;color:#fff;display:block;margin-top:8px}
.gallery{columns:3 300px;column-gap:18px}.gallery-item{break-inside:avoid;margin:0 0 18px;border-radius:24px;overflow:hidden;position:relative;cursor:pointer;background:#ddd}.gallery-item img{width:100%;transition:.55s}.gallery-item:hover img{transform:scale(1.045)}.gallery-caption{position:absolute;left:16px;bottom:16px;background:rgba(11,13,11,.86);color:#fff;border-radius:999px;padding:10px 14px;font-size:13px;font-weight:800}.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:100;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-height:88vh;max-width:92vw;border-radius:18px}.lightbox-close{position:absolute;right:30px;top:24px;color:#fff;font-size:40px;cursor:pointer}
.video-feature{background:#0b0d0b;border-radius:34px;overflow:hidden;color:#fff;display:grid;grid-template-columns:1.25fr .75fr}.video-feature video{width:100%;height:100%;min-height:520px;object-fit:cover}.video-copy{padding:48px;display:flex;flex-direction:column;justify-content:center}.video-copy h2{font:800 48px/1 'Manrope';letter-spacing:-.045em;margin:14px 0 20px}.video-copy p{color:rgba(255,255,255,.68);line-height:1.7}.video-note{border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:16px;margin-top:20px;color:rgba(255,255,255,.72)}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.contact-side{background:var(--ink);color:#fff;border-radius:30px;padding:38px}.contact-side h2{font:800 46px/1 'Manrope';margin:14px 0 26px}.contact-item{padding:19px 0;border-top:1px solid rgba(255,255,255,.14)}.contact-item small{display:block;color:var(--lime);text-transform:uppercase;letter-spacing:.12em;font-weight:800;margin-bottom:5px}.contact-form{background:#fff;border-radius:30px;padding:38px;border:1px solid var(--line)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:grid;gap:8px;margin-bottom:16px}.field label{font-weight:800;font-size:14px}.field input,.field textarea,.field select{width:100%;border:1px solid #d9ded6;background:#f8faf6;border-radius:14px;padding:14px 15px;outline:none;transition:.2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--lime);box-shadow:0 0 0 3px rgba(119,227,128,.2)}.field textarea{min-height:140px;resize:vertical}.form-msg{margin-top:12px;font-weight:700;color:#2b6c31}
.footer{background:#080a08;color:#fff;padding:70px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .9fr 1fr;gap:46px}.footer-logo{width:250px;max-height:95px;object-fit:contain;object-position:left center;margin-bottom:20px}.footer p{color:rgba(255,255,255,.62);line-height:1.65}.footer h4{font:700 17px/1 'Manrope';margin:8px 0 22px}.footer-links{display:grid;gap:11px}.footer-links a{color:rgba(255,255,255,.7);transition:.25s}.footer-links a:hover{color:var(--lime);transform:translateX(4px)}.socials{display:flex;gap:10px;margin-top:20px}.socials a{width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.17);display:grid;place-items:center;transition:.3s}.socials a:hover{background:var(--lime);color:#071007;border-color:var(--lime)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.45);font-size:13px}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}.reveal-left{opacity:0;transform:translateX(-34px);transition:.8s}.reveal-left.visible{opacity:1;transform:none}.reveal-right{opacity:0;transform:translateX(34px);transition:.8s}.reveal-right.visible{opacity:1;transform:none}
.whatsapp{position:fixed;right:24px;bottom:24px;z-index:45;width:60px;height:60px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;font-size:28px;box-shadow:0 12px 30px rgba(0,0,0,.25);transition:.3s}.whatsapp:hover{transform:scale(1.08) rotate(-5deg)}

/* --- Home services story scroll --- */
.services-story{padding-bottom:40px}
.services-story-wrap{position:relative;height:calc(100vh + 1900px)}
.services-sticky{position:sticky;top:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding:10px 0 34px}
.services-progress{width:min(1180px,calc(100% - 40px));margin:0 auto 24px;height:6px;background:rgba(255,255,255,.14);border-radius:999px;overflow:hidden}
.services-progress span{display:block;height:100%;width:0%;background:linear-gradient(90deg,var(--acid),var(--lime));border-radius:inherit;transition:width .15s linear}
.services-track{display:flex;gap:20px;will-change:transform;padding:0 max(20px,calc((100vw - 1180px)/2))}
.services-story .service-card{flex:0 0 min(390px,84vw)}
.services-story .service-card.active{transform:translateY(-10px);box-shadow:0 24px 44px rgba(0,0,0,.25)}
.services-story .service-card.active .service-arrow{background:var(--lime);color:#071007;border-color:var(--lime);transform:rotate(0)}

/* --- Why section icon upgrade --- */
.why-card-icon{color:#1f6a2a}
.why-card-icon svg{width:31px;height:31px;display:block}

/* --- Process section redesign --- */
.process-section{position:relative;background:#77E380;color:#133817;overflow:hidden}
.process-section .eyebrow,.process-section .lead,.process-section .title{color:#17351a}
.process-section:before{content:'';position:absolute;inset:0;background:
 radial-gradient(circle at 8% 25%, rgba(12,91,32,.16) 0 11%, transparent 11.5%),
 radial-gradient(circle at 87% 22%, rgba(12,91,32,.14) 0 9%, transparent 9.5%),
 radial-gradient(circle at 84% 71%, rgba(12,91,32,.12) 0 7%, transparent 7.5%),
 linear-gradient(135deg, rgba(7,72,25,.14) 0 12%, transparent 12% 28%, rgba(7,72,25,.08) 28% 42%, transparent 42% 58%, rgba(7,72,25,.1) 58% 74%, transparent 74%),
 linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,0));
 opacity:.95}
.process-shell{position:relative;z-index:2}
.process-intro{max-width:760px;margin:0 auto 40px;text-align:center}
.process-grid-themed{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;position:relative}
.process-grid-themed .process-card{background:rgba(250,250,244,.96);border:0;border-radius:28px;box-shadow:0 20px 46px rgba(0,0,0,.09);padding:28px 26px 26px;min-height:330px;transform:none}
.process-grid-themed .process-card:nth-child(even){transform:none}
.process-grid-themed .process-card:hover{transform:translateY(-10px);background:#fefefb}
.process-grid-themed .process-card:hover p{color:#415b45}
.process-icon{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:#eef6ea;color:#22642c;margin-bottom:18px}
.process-icon svg{width:34px;height:34px;display:block}
.process-grid-themed .process-card .n{font-size:18px;opacity:1;letter-spacing:.12em;color:#1f6a2a;margin-bottom:16px}
.process-grid-themed .process-card h3{margin:0 0 12px;font-size:24px;line-height:1.15;color:#15371b}
.process-grid-themed .process-card p{color:#4a634e}
.process-deco{position:absolute;z-index:1;pointer-events:none}
.process-deco-top{width:220px;height:110px;left:50%;transform:translateX(-50%);top:-6px;background:#1d6e24;border-radius:0 0 120px 120px}
.process-deco-top:before,.process-deco-top:after{content:'';position:absolute;bottom:30px;width:92px;height:120px;background:#1d6e24;border-radius:90% 18% 80% 10% / 90% 10% 80% 16%}
.process-deco-top:before{left:-26px;transform:rotate(-32deg)}
.process-deco-top:after{right:-26px;transform:scaleX(-1) rotate(-32deg)}
.process-deco-bottom{display:none}

@media(max-width:1040px){.services-story-wrap{height:auto}.services-sticky{position:relative;min-height:auto;padding-bottom:0}.services-progress{display:none}.services-track{overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:16px;transform:none !important}.services-story .service-card{scroll-snap-align:start}.process-grid-themed{grid-template-columns:repeat(2,1fr)}.nav-shell{grid-template-columns:auto 1fr auto}.nav-links{position:fixed;inset:0;background:#0b0d0b;z-index:-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:0;visibility:hidden;transition:.35s}.nav-links.open{opacity:1;visibility:visible;z-index:50}.nav-links a{font-size:28px;padding:8px 20px}.nav-actions .pill{display:none}.menu-toggle{display:block;z-index:60}.brand{z-index:60}.brand img{width:240px}.grid-2,.feature-panel,.faq-wrap,.location-panel,.video-feature,.contact-grid,.why-layout{grid-template-columns:1fr}.image-stack{min-height:520px}.service-detail-grid{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.process-card:nth-child(even){transform:none}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.cta-box{grid-template-columns:1fr}.cta-media{min-height:320px}.why-copy{padding-right:0}.why-top-media,.why-bottom-media{min-height:340px}.why-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.services-head .lead{max-width:100%}.services-track{padding:0 14px 14px}.process-intro{text-align:left;margin-bottom:28px}.process-grid-themed{grid-template-columns:1fr}.process-grid-themed .process-card{min-height:unset}.process-deco-top{width:150px;height:82px}.process-deco-top:before,.process-deco-top:after{width:60px;height:80px;bottom:20px}.container{width:min(100% - 28px,1180px)}.section{padding:78px 0}.topbar{display:none}.site-header{top:0}.nav-shell{width:calc(100% - 18px);margin-top:9px;padding:8px 8px 8px 14px;border-radius:18px}.brand img{width:195px;max-height:62px}.hero{min-height:88svh}.hero-content{padding:170px 0 52px}.hero h1{font-size:clamp(48px,15vw,72px)}.hero p{font-size:16px}.hero-orb{display:none}.checks{grid-template-columns:1fr}.image-stack{min-height:420px}.image-main{right:0;border-radius:28px 100px 28px 28px}.image-float{display:none}.orbit-badge{width:108px;height:108px}.services-head{align-items:flex-start;flex-direction:column}.service-card{height:470px}.stats-grid{gap:0}.stat{padding:20px 10px;border-bottom:1px solid rgba(0,0,0,.12)}.feature-panel{padding:18px;gap:25px}.feature-media{min-height:330px}.process-grid{grid-template-columns:1fr}.process-card{min-height:220px}.process-card h3{margin-top:32px}.card-grid{grid-template-columns:1fr}.service-detail{grid-template-columns:1fr}.service-detail img{aspect-ratio:16/10}.location-copy{padding:30px}.video-feature video{min-height:320px}.video-copy{padding:30px}.field-grid{grid-template-columns:1fr}.contact-form,.contact-side{padding:26px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.cta-copy{padding:34px 28px}.page-hero{min-height:48vh}.page-hero .container{padding:170px 0 50px}.gallery{columns:2 150px}.gallery-item{border-radius:15px}.whatsapp{right:15px;bottom:15px;width:54px;height:54px}.why-card-grid{grid-template-columns:1fr}.trust-card{position:relative;left:auto;bottom:auto;margin:18px}.why-top-media,.why-bottom-media{min-height:auto}.why-top-media img,.why-bottom-media img{aspect-ratio:16/11}}
@media(max-width:430px){.brand img{width:170px}.nav-shell{gap:8px}.gallery{columns:2 135px}.gallery-caption{font-size:10px;left:8px;bottom:8px;padding:7px 9px}.title{font-size:44px}.hero h1{font-size:52px}.topbar-left{gap:8px}}


/* ===== Latest FG Landscaping homepage refinements ===== */
.why-top-media,.why-bottom-media{perspective:1200px}
.parallax-frame{position:relative;overflow:hidden}
.parallax-img{width:100%;height:100%;object-fit:cover;transform:scale(1.12) translate3d(0,0,0);will-change:transform;transition:transform .12s linear}

.process-reference-section{background:#77E380;position:relative;overflow:visible;padding-top:120px}
.process-reference-shell{position:relative;background:linear-gradient(135deg,#1f6c23 0%,#18611f 100%);border-radius:34px;padding:84px 34px 36px;overflow:visible;box-shadow:0 18px 60px rgba(0,0,0,.12)}
.process-reference-shell:before{content:'';position:absolute;inset:0;border-radius:34px;background:
 radial-gradient(circle at 8% 18%, rgba(0,0,0,.16) 0 6%, transparent 6.5%),
 radial-gradient(circle at 92% 18%, rgba(187,226,80,.26) 0 1%, transparent 1.5%),
 radial-gradient(circle at 88% 71%, rgba(255,255,255,.06) 0 9%, transparent 9.5%),
 linear-gradient(115deg, rgba(7,96,26,.72) 0 10%, transparent 10% 18%, rgba(9,80,26,.34) 18% 28%, transparent 28% 39%, rgba(8,74,23,.3) 39% 52%, transparent 52% 63%, rgba(8,74,23,.2) 63% 74%, transparent 74%),
 repeating-radial-gradient(circle at 78% 20%, rgba(6,46,16,.25) 0 2px, transparent 2px 11px),
 repeating-linear-gradient(120deg, transparent 0 68px, rgba(0,0,0,.09) 68px 70px, transparent 70px 140px);
 opacity:.92;pointer-events:none}
.process-reference-badge{position:absolute;left:50%;top:-20px;transform:translateX(-50%);background:#dbe7c3;color:#132f16;border-radius:999px;padding:10px 18px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:12px;z-index:3}
.process-reference-leaf{position:absolute;left:50%;top:-58px;transform:translateX(-50%);width:170px;height:118px;z-index:2}
.process-reference-leaf:before,.process-reference-leaf:after,.process-reference-leaf div{content:'';position:absolute;background:#1b6a22}
.process-reference-leaf:before{width:78px;height:112px;left:12px;top:5px;border-radius:85% 20% 80% 18% / 95% 10% 85% 15%;transform:rotate(-33deg)}
.process-reference-leaf:after{width:78px;height:112px;right:12px;top:5px;border-radius:20% 85% 18% 80% / 10% 95% 15% 85%;transform:rotate(33deg)}
.process-reference-leaf{filter:drop-shadow(0 8px 18px rgba(0,0,0,.12))}
.process-reference-leaf{background:#1b6a22;border-radius:0 0 60px 60px;clip-path:polygon(42% 100%,58% 100%,52% 46%,48% 46%)}
.process-reference-head{position:relative;z-index:2;max-width:760px;margin:0 auto 34px;text-align:center;color:#fff}
.process-reference-head .process-eyebrow{justify-content:center;color:#dbe7c3}
.process-reference-head .title,.process-reference-head .lead{color:#fff}
.process-reference-head .lead{margin-inline:auto;color:rgba(255,255,255,.82)}
.process-reference-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.process-reference-card{background:#eff0e7;border-radius:24px;padding:28px 24px;min-height:280px;box-shadow:0 16px 40px rgba(0,0,0,.08);transition:transform .35s ease, box-shadow .35s ease}
.process-reference-card:hover{transform:translateY(-10px);box-shadow:0 24px 46px rgba(0,0,0,.14)}
.process-reference-icon{width:62px;height:62px;border-radius:18px;background:#e6ecd7;color:#2d7834;display:grid;place-items:center;margin-bottom:22px}
.process-reference-icon svg{width:32px;height:32px;display:block}
.process-reference-number{display:inline-block;font:800 12px/1 'Manrope';letter-spacing:.16em;text-transform:uppercase;color:#2c7032;margin-bottom:14px}
.process-reference-card h3{font:700 24px/1.18 'Manrope';margin:0 0 12px;color:#18381d}
.process-reference-card p{margin:0;color:#435747;line-height:1.65}

.faq-showcase-section{position:relative;overflow:hidden}
.faq-showcase-bg{position:absolute;inset:0;background:center/cover no-repeat;filter:saturate(.9)}
.faq-showcase-section:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg, rgba(246,247,242,.92), rgba(246,247,242,.92)),linear-gradient(90deg, rgba(255,255,255,.85), rgba(255,255,255,.72));z-index:1}
.faq-showcase-shell{position:relative;z-index:2;display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:start}
.faq-showcase-left .faq-item{background:rgba(211,220,189,.9);border:none;border-radius:14px;margin-bottom:12px;overflow:hidden;transition:transform .3s ease, box-shadow .3s ease, background .3s ease}
.faq-showcase-left .faq-item:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.08)}
.faq-showcase-left .faq-item.open{background:#9fbe3f;color:#fff;box-shadow:0 18px 34px rgba(0,0,0,.12)}
.faq-showcase-left .faq-q{padding:22px 26px;font-size:20px;line-height:1.25}
.faq-showcase-left .faq-q span:last-child{background:none;color:#2d9b3a;width:auto;height:auto;font-size:28px;transition:transform .3s ease,color .3s ease}
.faq-showcase-left .faq-item.open .faq-q span:last-child{color:#fff;transform:rotate(45deg)}
.faq-showcase-left .faq-a{max-height:0;overflow:hidden;transition:max-height .45s ease,padding .35s ease}
.faq-showcase-left .faq-item.open .faq-a{max-height:220px;padding:0 26px 22px}
.faq-showcase-left .faq-a p{margin:0;line-height:1.6;color:inherit}
.faq-showcase-right .eyebrow{color:#1b6a22}
.faq-showcase-right .title{max-width:620px;margin-top:12px}
.faq-showcase-right .lead{max-width:640px}
.faq-feature-card{display:grid;grid-template-columns:1fr .86fr;align-items:stretch;background:rgba(255,255,255,.86);border:1px solid rgba(27,106,34,.16);border-radius:18px;overflow:hidden;box-shadow:0 16px 36px rgba(0,0,0,.06);margin-top:26px;transition:transform .35s ease,box-shadow .35s ease}
.faq-feature-card:hover{transform:translateY(-6px);box-shadow:0 22px 42px rgba(0,0,0,.1)}
.faq-feature-copy{padding:30px 28px}
.faq-feature-copy h3{font:700 22px/1.2 'Manrope';margin:0 0 18px;color:#0f2212}
.faq-feature-copy ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.faq-feature-copy li{position:relative;padding-left:30px;line-height:1.5;font-weight:500}
.faq-feature-copy li:before{content:'»';position:absolute;left:0;top:0;color:#2d9b3a;font-size:24px;line-height:1}
.faq-feature-image img{width:100%;height:100%;object-fit:cover}

/* stronger desktop pinned services behavior */
@media(min-width:1041px){
  .services-story-wrap{height:var(--services-pin-height,2600px);overflow:clip}
  .services-sticky{top:68px;min-height:calc(100vh - 68px);padding-top:24px}
  .services-track{overflow:visible !important}
}

@media(max-width:1040px){
  .process-reference-grid{grid-template-columns:repeat(2,1fr)}
  .faq-showcase-shell{grid-template-columns:1fr;gap:34px}
}
@media(max-width:700px){
  .process-reference-section{padding-top:90px}
  .process-reference-shell{padding:72px 18px 18px}
  .process-reference-grid{grid-template-columns:1fr}
  .process-reference-head{text-align:left}
  .process-reference-head .process-eyebrow{justify-content:flex-start}
  .faq-showcase-left .faq-q{font-size:18px;padding:18px 20px}
  .faq-showcase-left .faq-item.open .faq-a{padding:0 20px 20px}
  .faq-feature-card{grid-template-columns:1fr}
  .faq-feature-image img{aspect-ratio:16/10}
}

/* ===== v4 refinements ===== */
/* FAQ contrast */
.faq-showcase-left .faq-item.open{background:#BBE250;color:#0b0d0b;box-shadow:0 18px 34px rgba(0,0,0,.10)}
.faq-showcase-left .faq-item.open .faq-q{color:#0b0d0b}
.faq-showcase-left .faq-item.open .faq-q span:last-child{color:#1f6a2a}
.faq-showcase-left .faq-item.open .faq-a{color:#263226}

/* Process section - plant crown reference */
.process-plant-section{background:#f6f7f2;padding-top:135px;overflow:visible}
.process-plant-wrap{position:relative;background:#176522;border-radius:34px;overflow:visible;padding:74px 34px 36px;box-shadow:0 18px 54px rgba(0,0,0,.10)}
.process-plant-pattern{position:absolute;inset:0;border-radius:34px;overflow:hidden;pointer-events:none}
.process-plant-pattern:before{content:'';position:absolute;inset:0;background:
radial-gradient(circle at 7% 20%,rgba(255,255,255,.035) 0 10%,transparent 10.6%),
radial-gradient(circle at 90% 18%,rgba(187,226,80,.16) 0 1.2%,transparent 1.8%),
radial-gradient(circle at 78% 72%,rgba(255,255,255,.035) 0 10%,transparent 10.6%),
repeating-radial-gradient(ellipse at 20% 58%,rgba(5,58,19,.25) 0 2px,transparent 2px 15px),
linear-gradient(118deg,rgba(6,73,23,.55) 0 13%,transparent 13% 23%,rgba(6,73,23,.35) 23% 36%,transparent 36% 49%,rgba(5,62,21,.32) 49% 63%,transparent 63% 76%,rgba(6,73,23,.25) 76% 88%,transparent 88%)}
.process-plant-pattern:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(100deg,transparent 0 112px,rgba(0,0,0,.04) 112px 114px,transparent 114px 220px);opacity:.9}
.process-plant-content{position:relative;z-index:2}
.process-plant-head{text-align:center;max-width:820px;margin:0 auto 40px;color:#fff}
.process-kicker{font:800 12px/1 'Manrope';text-transform:uppercase;letter-spacing:.13em;margin-bottom:20px;color:#d8efc1}
.process-plant-head .title{color:#fff;margin-bottom:18px}
.process-plant-head .lead{color:rgba(255,255,255,.82);margin-inline:auto}
.process-plant-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.process-plant-card{background:#f1f2e9;border-radius:22px;padding:30px 26px;min-height:305px;transition:transform .35s ease,box-shadow .35s ease,background .35s ease;box-shadow:0 14px 34px rgba(0,0,0,.06)}
.process-plant-card:hover{transform:translateY(-9px);box-shadow:0 22px 44px rgba(0,0,0,.13);background:#fff}
.process-plant-icon{width:64px;height:64px;color:#276f30;display:grid;place-items:center;margin-bottom:24px}
.process-plant-icon svg{width:58px;height:58px}
.process-step{display:inline-block;color:#367b3e;font:800 11px/1 'Manrope';letter-spacing:.16em;margin-bottom:12px}
.process-plant-card h3{font:700 23px/1.16 'Manrope';margin:0 0 12px;color:#15371b}
.process-plant-card p{margin:0;color:#455948;line-height:1.65}
.plant-crown{position:absolute;z-index:4;left:50%;top:-122px;transform:translateX(-50%);width:260px;height:150px;pointer-events:none}
.plant-crown .leaf{position:absolute;background:#176522;box-shadow:inset -10px -8px 0 rgba(0,0,0,.04);transform-origin:50% 100%}
.plant-crown .leaf-1{width:84px;height:125px;left:88px;top:0;border-radius:80% 15% 75% 18% / 86% 18% 82% 14%;transform:rotate(0deg)}
.plant-crown .leaf-2{width:76px;height:112px;left:43px;top:24px;border-radius:78% 18% 75% 20% / 82% 18% 80% 16%;transform:rotate(-42deg)}
.plant-crown .leaf-3{width:76px;height:112px;right:43px;top:24px;border-radius:18% 78% 20% 75% / 18% 82% 16% 80%;transform:rotate(42deg)}
.plant-crown .leaf-4{width:64px;height:94px;left:17px;top:50px;border-radius:78% 20% 75% 20% / 82% 18% 80% 16%;transform:rotate(-67deg)}
.plant-crown .leaf-5{width:64px;height:94px;right:17px;top:50px;border-radius:20% 78% 20% 75% / 18% 82% 16% 80%;transform:rotate(67deg)}
.plant-crown .stem{position:absolute;left:126px;top:92px;width:8px;height:62px;border-radius:8px;background:#176522}

/* Home locations */
.home-locations-section{background:#eef2e4}
.home-locations-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:54px;align-items:stretch}
.home-locations-map{position:relative;min-height:620px;border-radius:34px;overflow:hidden;background:#dce6d5;box-shadow:0 18px 48px rgba(0,0,0,.08)}
.home-locations-map iframe{width:100%;height:100%;min-height:620px;border:0;display:block;filter:saturate(.85) contrast(.95)}
.map-radius-badge{position:absolute;left:24px;bottom:24px;width:150px;height:150px;border-radius:50%;background:#0b0d0b;color:#fff;display:grid;place-content:center;text-align:center;box-shadow:0 14px 34px rgba(0,0,0,.22)}
.map-radius-badge strong{font:800 48px/1 'Manrope';color:#77E380}.map-radius-badge span{display:block;font-weight:700;font-size:13px;max-width:95px;margin:8px auto 0;line-height:1.2}
.home-locations-copy{padding:14px 0}
.home-locations-copy .title{margin-bottom:18px}
.service-area-phone{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin:26px 0}
.service-area-phone span{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800;color:#526052}.service-area-phone a{font:800 23px/1 'Manrope';color:#163d1c}
.home-location-list{display:grid;gap:10px;margin-bottom:26px}
.home-location-chip{display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;background:#fff;border:1px solid rgba(11,13,11,.08);border-radius:16px;padding:14px 16px;transition:transform .3s ease,box-shadow .3s ease}
.home-location-chip:hover{transform:translateX(6px);box-shadow:0 10px 26px rgba(0,0,0,.07)}
.home-location-chip>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#77E380;font-weight:800;font-size:12px}.home-location-chip strong{font:700 18px/1.2 'Manrope'}.home-location-chip small{color:#6b746b;text-align:right;font-size:12px}

/* Desktop pinned services: keep section fixed until final service has crossed */
@media(min-width:1041px){
  .services-story{padding-bottom:0}
  .services-story-wrap{height:var(--services-pin-height,3200px)!important;overflow:visible}
  .services-sticky{position:sticky!important;top:0!important;height:100vh!important;min-height:100vh!important;padding:72px 0 34px!important;justify-content:center}
}

@media(max-width:1040px){
.process-plant-grid{grid-template-columns:repeat(2,1fr)}
.home-locations-grid{grid-template-columns:1fr}
.home-locations-map,.home-locations-map iframe{min-height:500px}
}
@media(max-width:700px){
.process-plant-section{padding-top:105px}
.process-plant-wrap{padding:66px 18px 18px;border-radius:24px}
.process-plant-pattern{border-radius:24px}
.process-plant-grid{grid-template-columns:1fr}
.process-plant-head{text-align:left}
.plant-crown{transform:translateX(-50%) scale(.78);top:-108px}
.home-locations-map,.home-locations-map iframe{min-height:420px}
.home-location-chip{grid-template-columns:38px 1fr}.home-location-chip small{grid-column:2;text-align:left}.service-area-phone{align-items:flex-start;flex-direction:column;gap:8px}
}

/* ===== v5 refinements ===== */
.home-locations-section{background:#77E380}
.home-locations-grid{grid-template-columns:1fr 1fr;gap:34px;align-items:stretch}
.home-locations-map{min-height:420px;height:100%;border-radius:28px;border:1px solid rgba(11,13,11,.08);background:#d6efcf;box-shadow:0 16px 36px rgba(0,0,0,.08)}
.home-locations-map iframe{min-height:420px;height:100%}
.home-locations-copy{background:rgba(255,255,255,.34);border:1px solid rgba(11,13,11,.08);border-radius:28px;padding:24px 24px 26px;backdrop-filter:blur(4px)}
.map-radius-badge{width:124px;height:124px;left:18px;bottom:18px;background:#14391a}
.map-radius-badge strong{font-size:40px}
.map-radius-badge span{font-size:12px;max-width:82px}
.home-location-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px}
.home-location-chip{grid-template-columns:52px 1fr;gap:12px;padding:16px;border-radius:18px;align-items:center;background:#fff;border:1px solid rgba(11,13,11,.08);min-height:92px;transform:none}
.home-location-chip:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(0,0,0,.08)}
.home-location-chip strong{display:block;font:700 18px/1.2 'Manrope';color:#16361a}
.home-location-chip small{display:block;color:#536253;text-align:left;font-size:12px;margin-top:4px}
.location-chip-icon{width:48px;height:48px;border-radius:16px;background:#ecf7e7;color:#2b7a35;display:grid;place-items:center;flex:none}
.location-chip-icon svg{width:26px;height:26px;display:block}

.process-plant-section{background:#f6f7f2;padding-inline:0}
.process-plant-wrap{width:min(100% - 34px, 1380px);margin:0 auto;border-radius:36px;padding:78px 42px 38px}
.process-plant-pattern,.process-plant-wrap{border-radius:36px}
.process-plant-head{max-width:860px}
.process-plant-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.process-plant-card{min-height:320px}
.process-plant-icon{width:72px;height:72px;border-radius:20px;background:#eaf4e2;color:#1f6a2a;padding:7px}
.process-plant-icon svg{width:100%;height:100%}
.process-step{font-size:12px;color:#2f7e39}

@media(max-width:1180px){
  .home-locations-grid{grid-template-columns:1fr}
  .home-locations-map{min-height:360px}
  .home-locations-map iframe{min-height:360px}
  .process-plant-wrap{width:min(100% - 24px, 1380px);padding:74px 24px 28px}
  .process-plant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .home-locations-section{padding-top:70px;padding-bottom:70px}
  .home-locations-copy{padding:20px}
  .home-location-list{grid-template-columns:1fr}
  .home-locations-map{min-height:300px}
  .home-locations-map iframe{min-height:300px}
  .map-radius-badge{width:108px;height:108px}
  .process-plant-wrap{width:calc(100% - 18px);padding:66px 18px 18px;border-radius:24px}
  .process-plant-pattern{border-radius:24px}
  .process-plant-grid{grid-template-columns:1fr}
  .process-plant-icon{width:64px;height:64px}
}

/* ===== v6 portfolio + process + CTA refinements ===== */
.process-plant-wrap{box-shadow:0 34px 75px rgba(7,34,11,.18),0 8px 24px rgba(0,0,0,.10)}
.process-plant-grid{gap:24px}
.process-plant-card{position:relative;min-height:326px;border:1px solid rgba(14,45,17,.08);box-shadow:0 18px 42px rgba(0,0,0,.10)}
.process-plant-card:before{content:'';position:absolute;inset:12px;border:1px solid rgba(20,54,26,.08);border-radius:18px;pointer-events:none}
.process-plant-card:hover{box-shadow:0 26px 56px rgba(0,0,0,.16)}
.process-plant-icon{box-shadow:0 12px 22px rgba(38,111,48,.18);background:linear-gradient(180deg,#eef7e7,#deeed7);border:1px solid rgba(39,111,48,.10)}
.process-step{background:#e6f0d8;padding:8px 12px;border-radius:999px;line-height:1;color:#225a2b}
.process-plant-card h3{margin-top:16px}

.portfolio-story-section{background:#f4f6f7;padding-top:92px;padding-bottom:92px}
.portfolio-story-wrap{position:relative;height:var(--portfolio-pin-height,2600px)}
.portfolio-story-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;overflow:hidden}
.portfolio-story-grid{display:grid;grid-template-columns:.9fr 1.35fr;gap:42px;align-items:center;width:min(100% - 40px,1350px)}
.portfolio-story-copy{max-width:360px}
.portfolio-story-kicker{display:flex;align-items:center;gap:10px;font:800 14px/1 'Manrope';text-transform:uppercase;letter-spacing:.2em;color:#3e7bd0;margin-bottom:24px}
.portfolio-story-kicker:before{content:'';width:38px;height:2px;background:#3e7bd0;display:block}
.portfolio-story-title{font:900 clamp(56px,5vw,92px)/.92 'Manrope';letter-spacing:-.06em;text-transform:uppercase;margin:0 0 24px;color:#07162d}
.portfolio-story-title span{display:block;color:#4a83d5}
.portfolio-story-copy .lead{font-size:17px;color:#66717d;max-width:350px;margin-bottom:24px}
.portfolio-story-shell{background:#edf2f7;border:1px solid rgba(11,13,11,.06);border-radius:34px;padding:18px;box-shadow:0 18px 54px rgba(25,43,70,.08)}
.portfolio-story-frame{overflow:hidden;border-radius:26px}
.portfolio-story-track{display:flex;gap:18px;will-change:transform;padding:0}
.portfolio-scroll-card{position:relative;flex:0 0 calc(50% - 9px);aspect-ratio:4/5;overflow:hidden;border-radius:28px;background:#d8dde4;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
.portfolio-scroll-card:before{content:'';position:absolute;inset:12px;border-radius:20px;border:1px solid rgba(255,255,255,.22);z-index:2;pointer-events:none}
.portfolio-scroll-card img{width:100%;height:100%;object-fit:cover;transition:transform .65s ease,filter .45s ease;display:block}
.portfolio-scroll-card:hover img{transform:scale(1.05);filter:saturate(1.03)}
.portfolio-zoom{position:absolute;right:16px;bottom:16px;width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.96);box-shadow:0 12px 24px rgba(0,0,0,.16);font:800 24px/1 'Manrope';color:#12305a;z-index:3;cursor:pointer;transition:transform .25s ease, background .25s ease}
.portfolio-zoom:hover{transform:scale(1.08);background:#fff}
.portfolio-story-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 6px 0}
.portfolio-story-progress{flex:1;height:7px;background:rgba(62,123,208,.12);border-radius:999px;overflow:hidden}
.portfolio-story-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#8ccdf5,#4a83d5);border-radius:inherit;transition:width .14s linear}
.portfolio-story-dots{display:flex;gap:8px}
.portfolio-story-dots span{width:12px;height:12px;border-radius:50%;background:rgba(10,42,92,.18);transition:transform .2s ease,background .2s ease}
.portfolio-story-dots span.active{background:#4a83d5;transform:scale(1.05)}

.cta{padding:0 0 110px}
.cta-box{grid-template-columns:1.05fr .95fr;min-height:560px;box-shadow:0 28px 76px rgba(0,0,0,.16)}
.cta-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 58px}
.cta-copy h2{font-size:clamp(52px,5vw,84px);max-width:680px}
.cta-copy .lead{max-width:620px;font-size:18px}
.cta-media{min-height:560px}
.cta-media:before{background:linear-gradient(90deg,var(--ink) 0, rgba(11,13,11,.48) 34%, rgba(11,13,11,0) 72%)}

@media(min-width:1041px){
  .portfolio-story-wrap{overflow:clip}
}
@media(max-width:1180px){
  .portfolio-story-grid{grid-template-columns:1fr;gap:26px}
  .portfolio-story-copy{max-width:none}
  .portfolio-story-copy .lead{max-width:100%}
  .portfolio-story-title{font-size:clamp(48px,9vw,76px)}
  .cta-box{grid-template-columns:1fr}
  .cta-media{min-height:360px;order:2}
}
@media(max-width:1040px){
  .portfolio-story-wrap{height:auto}
  .portfolio-story-sticky{position:relative;height:auto;display:block}
  .portfolio-story-section{padding-top:78px;padding-bottom:78px}
  .portfolio-story-grid{width:min(100% - 28px,1350px)}
  .portfolio-story-shell{padding:14px}
  .portfolio-story-frame{overflow-x:auto;scroll-snap-type:x mandatory}
  .portfolio-story-track{transform:none !important;padding-bottom:8px}
  .portfolio-scroll-card{flex:0 0 min(76vw,420px);scroll-snap-align:start}
}
@media(max-width:700px){
  .portfolio-story-title{font-size:clamp(42px,15vw,64px)}
  .portfolio-scroll-card{flex-basis:88vw}
  .portfolio-story-meta{padding-top:10px}
  .cta{padding-bottom:88px}
  .cta-box{min-height:auto}
  .cta-copy{padding:38px 26px}
  .cta-copy h2{font-size:clamp(42px,13vw,68px)}
  .cta-media,.cta-media img{min-height:320px}
}

/* ===== FG Landscaping v7 page refinements ===== */
.hero .container{width:min(1240px,calc(100% - 40px))}
.hero-copy{max-width:760px;padding-left:12px}
.hero p{max-width:620px}

.page-hero{position:relative;min-height:72vh;background:center center/cover no-repeat;color:#fff;display:flex;flex-direction:column}
.page-hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,19,9,.88) 0%,rgba(6,19,9,.58) 45%,rgba(6,19,9,.25) 100%),linear-gradient(0deg,rgba(6,19,9,.42),rgba(6,19,9,.42))}
.page-hero>*{position:relative;z-index:1}
.page-hero .site-header{position:absolute}
.page-hero>.container{padding:210px 0 78px;width:min(1180px,calc(100% - 40px))}
.page-hero-copy{max-width:620px}
.page-hero .eyebrow{color:#dff7dc}
.page-hero h1{font-family:'Manrope',sans-serif;font-size:clamp(58px,8vw,104px);line-height:.92;letter-spacing:-.06em;margin:18px 0 16px}
.page-hero .hero-subtitle{font-size:20px;line-height:1.65;max-width:560px;color:rgba(255,255,255,.88);margin:0 0 24px}
.page-hero .crumbs{display:flex;align-items:center;gap:10px;color:#f3f7ef;font-weight:700}
.page-hero .crumbs a{color:var(--acid)}

.home-portfolio-refined{background:#77E380}
.home-portfolio-refined .portfolio-story-shell{background:#f5f9ef;border-color:rgba(10,32,10,.09)}
.home-portfolio-refined .portfolio-story-title{max-width:330px}
.home-portfolio-refined .portfolio-story-copy .lead{color:#38523d}
.home-portfolio-refined .pill.primary{background:#BBE250;color:#15230f}
.home-portfolio-refined .portfolio-story-progress{background:rgba(0,0,0,.12)}
.home-portfolio-refined .portfolio-story-progress span{background:linear-gradient(90deg,#c9e86c,#7eb84f)}
.home-portfolio-refined .portfolio-scroll-card{flex:0 0 calc(50% - 9px)}
.home-portfolio-refined .portfolio-story-grid{align-items:center}

.home-cta-full .container{width:min(1320px,calc(100% - 20px))}
.home-cta-full .cta-box{min-height:620px;border-radius:34px;overflow:hidden}
.home-cta-full .cta-copy h2{max-width:820px}
.home-cta-full .cta-media,.home-cta-full .cta-media img{height:100%;min-height:620px}
.home-cta-full .cta-media img{object-position:center center}

.home-process-polished .process-plant-wrap{padding-top:70px}
.home-process-polished .plant-crown-hide{display:none}
.home-process-polished .process-plant-wrap:before{content:'';position:absolute;left:50%;top:-58px;transform:translateX(-50%);width:160px;height:120px;background:radial-gradient(circle at 50% 35%, transparent 0 14px, #1a6521 14px 15px, transparent 15px 100%),linear-gradient(#1a6521,#1a6521);clip-path:polygon(48% 44%,52% 44%,52% 100%,48% 100%);z-index:3}
.home-process-polished .process-plant-wrap:after{content:'';position:absolute;left:50%;top:-30px;transform:translateX(-50%);width:180px;height:116px;background:
 radial-gradient(ellipse at 27% 60%, #1f6d28 0 34%, transparent 35%),
 radial-gradient(ellipse at 73% 60%, #1f6d28 0 34%, transparent 35%),
 radial-gradient(ellipse at 50% 38%, #215f25 0 34%, transparent 35%);
 filter:drop-shadow(0 10px 20px rgba(0,0,0,.12));z-index:2}
.home-process-polished .process-plant-icon{background:linear-gradient(180deg,#f8fbf0,#e6f0d8);color:#246730}
.home-process-polished .process-plant-card{border:1px solid rgba(23,77,31,.08)}

.about-editorial{background:#f7f7f3}
.about-editorial-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:start}
.about-collage{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.about-collage-small,.about-collage-large{border-radius:28px;overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.1);position:relative}
.about-collage-small img,.about-collage-large img{width:100%;height:100%;object-fit:cover}
.about-collage-small{min-height:250px}.about-collage-small.second{min-height:250px}
.about-collage-large{grid-column:1 / -1;min-height:420px}
.about-editorial-copy .lead{max-width:640px}
.about-bullet-panel{display:grid;grid-template-columns:1fr;gap:14px;margin:32px 0 32px}
.about-bullet{padding:16px 18px 16px 48px;background:#fff;border-radius:18px;position:relative;font-weight:700;box-shadow:0 12px 28px rgba(0,0,0,.05)}
.about-bullet:before{content:'»';position:absolute;left:18px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:#2a9a38;font-size:28px;line-height:20px}
.about-guides-section .info-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(8px);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.about-guides-section .info-card:hover{transform:translateY(-8px);box-shadow:0 18px 46px rgba(0,0,0,.2);border-color:rgba(187,226,80,.35)}
.about-guides-section .info-card .icon{background:var(--acid);color:#1b2515}
.feature-panel-updated .feature-media{min-height:510px}
.feature-list-icons .feature-row b{font-size:18px}

.location-layout-updated{display:grid;grid-template-columns:1.04fr .96fr;gap:34px;align-items:start}
.location-primary-copy{background:#fff;padding:40px;border-radius:30px;box-shadow:0 18px 42px rgba(0,0,0,.06)}
.contact-mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px}
.contact-mini-card{background:#f5f8ef;border:1px solid rgba(21,36,18,.08);padding:16px;border-radius:18px}
.contact-mini-card strong{display:block;font:700 14px/1 'Manrope';margin-bottom:8px;color:#1a5121}.contact-mini-card span{color:#465246}
.location-map-stack{display:grid}.location-map-card{border-radius:30px;overflow:hidden;box-shadow:0 18px 46px rgba(0,0,0,.08);min-height:100%}.location-map-card iframe{width:100%;height:100%;min-height:510px}
.location-radius-updated .nearby-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.location-radius-updated .nearby-card{background:#fff;color:#102010;border-radius:24px;padding:24px;box-shadow:0 16px 34px rgba(0,0,0,.14)}
.location-radius-updated .nearby-card span{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--acid);margin-bottom:16px;font-weight:800}
.location-radius-updated .nearby-card h4{font:700 22px/1.1 'Manrope';margin:0 0 10px}.location-radius-updated .nearby-card p{margin:0;line-height:1.6;color:#4c584d}

.gallery-item figcaption,.gallery-caption{display:none !important}
.gallery-item{position:relative;overflow:hidden}
.gallery-item:after{content:'+';position:absolute;right:16px;bottom:16px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.92);color:#16331a;font:800 28px/1 'Manrope';opacity:0;transform:translateY(10px);transition:.3s}
.gallery-item:hover:after{opacity:1;transform:none}
.gallery-item img{transition:transform .55s ease,filter .35s ease}
.gallery-item:hover img{transform:scale(1.06);filter:saturate(1.04)}

.coming-soon-section{background:linear-gradient(135deg,#f0f8ec 0%,#dff2d3 100%)}
.coming-soon-card{max-width:900px;margin:0 auto;background:#0f2412;color:#fff;border-radius:34px;padding:60px 50px;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.12);position:relative;overflow:hidden}
.coming-soon-card:before{content:'';position:absolute;inset:-20%;background:radial-gradient(circle at 20% 20%, rgba(119,227,128,.18), transparent 36%),radial-gradient(circle at 80% 30%, rgba(187,226,80,.12), transparent 26%),radial-gradient(circle at 50% 100%, rgba(255,255,255,.08), transparent 32%)}
.coming-soon-card>*{position:relative;z-index:1}.coming-soon-card .lead{margin-inline:auto;color:rgba(255,255,255,.8)}
.coming-soon-pills{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin:28px 0 30px}
.coming-soon-pills span{padding:12px 16px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);font-weight:700}

.contact-grid-updated{align-items:start}
.contact-grid-updated .contact-side{position:sticky;top:120px}
.contact-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:24px}
.contact-facts div{background:#f5f8ef;border:1px solid rgba(20,36,15,.08);border-radius:16px;padding:14px 15px}
.contact-facts b{display:block;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#194d20;margin-bottom:6px}
.contact-facts span{display:block;color:#4e5a50;line-height:1.5}
.contact-embed-column{display:grid;gap:22px}
.embed-frame .embed-shell{border-radius:20px;overflow:hidden;background:#fff}
.contact-map-panel{border-radius:28px;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.08)}
.contact-map-panel iframe{width:100%;height:340px}

@media(max-width:1180px){
  .location-layout-updated,.about-editorial-grid{grid-template-columns:1fr}
}
@media(max-width:1040px){
  .page-hero{min-height:58vh}
  .page-hero>.container{padding:180px 0 60px}
  .contact-grid-updated .contact-side{position:relative;top:auto}
}
@media(max-width:700px){
  .hero-copy{padding-left:0;max-width:100%}
  .page-hero>.container{padding:148px 0 46px}
  .page-hero h1{font-size:clamp(46px,14vw,66px)}
  .page-hero .hero-subtitle{font-size:16px}
  .home-portfolio-refined .portfolio-story-title{max-width:100%}
  .home-portfolio-refined .portfolio-scroll-card{flex-basis:88vw}
  .home-cta-full .container{width:min(100% - 18px,1320px)}
  .home-cta-full .cta-media,.home-cta-full .cta-media img{min-height:320px}
  .contact-mini-grid,.contact-facts,.location-radius-updated .nearby-grid{grid-template-columns:1fr}
  .about-collage{grid-template-columns:1fr}
  .about-collage-large{grid-column:auto;min-height:330px}
  .coming-soon-card{padding:42px 24px}
}
.page-hero .topbar{display:none}
.page-hero .site-header{top:0}
.page-hero .nav-shell{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.14)}
.page-hero .nav-links a:hover,.page-hero .nav-links a.active{background:transparent;color:var(--acid)}
.page-hero .nav-links a{color:#fff}
.about-guides-section .info-card h3,.about-guides-section .info-card p{color:#fff}
.about-guides-section .info-card p{opacity:.82}
.home-portfolio-refined .portfolio-story-title{font-size:clamp(50px,5.5vw,88px);line-height:.9}
.home-portfolio-refined .portfolio-story-copy{padding-left:8px}

/* ===== FG Landscaping v8 refinements ===== */
.page-hero .nav-shell,.page-hero .nav-links,.page-hero .nav-actions,.page-hero .brand{position:relative;z-index:45}
.page-hero .nav-links a{pointer-events:auto}
.footer-logo{display:block}
.footer a[href^="mailto:"],.footer a[href^="tel:"],.footer a[href^="https://wa.me"]{transition:color .25s ease,transform .25s ease}
.footer a[href^="mailto:"]:hover,.footer a[href^="tel:"]:hover,.footer a[href^="https://wa.me"]:hover{color:var(--acid);transform:translateX(4px)}

.contact-item a{color:#1d8a2f;font-weight:800;font-size:clamp(22px,2vw,28px);line-height:1.15;display:inline-block;transition:color .25s ease,transform .25s ease;text-wrap:balance}
.contact-item a:hover{color:#0f5f23;transform:translateX(4px)}
.contact-item small{color:#69816b}
.contact-facts div{position:relative;overflow:hidden;transition:transform .32s ease,box-shadow .32s ease,border-color .32s ease}
.contact-facts div:before{content:'';position:absolute;inset:auto -25% -60% auto;width:120px;height:120px;background:radial-gradient(circle,rgba(187,226,80,.35),transparent 68%);opacity:0;transition:opacity .32s ease}
.contact-facts div:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(0,0,0,.08);border-color:rgba(41,138,56,.22)}
.contact-facts div:hover:before{opacity:1}
.contact-facts span,.contact-mini-card span{color:#1a4220}
.contact-form h2.title.small{max-width:none}

.contact-mini-card{transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease}
.contact-mini-card:hover{transform:translateY(-5px);box-shadow:0 16px 36px rgba(0,0,0,.07);border-color:rgba(34,124,45,.2)}

.location-radius-updated .nearby-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:1040px){.location-radius-updated .nearby-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.location-radius-updated .nearby-grid{grid-template-columns:1fr}}

.about-editorial-copy .title.small{font-size:clamp(36px,4vw,56px);max-width:560px}
.about-collage-small img,.about-collage-large img{transition:transform .7s ease,filter .4s ease}
.about-collage-small:hover img,.about-collage-large:hover img{transform:scale(1.06);filter:saturate(1.06)}
.about-editorial .pill.primary{background:#BBE250;color:#0e1d10}
.ambient-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,#f7fbef 0%,#edf8e6 100%) !important}
.ambient-panel:before{content:'';position:absolute;inset:auto auto -110px -100px;width:280px;height:280px;background:radial-gradient(circle,rgba(119,227,128,.22),transparent 68%)}
.ambient-panel:after{content:'';position:absolute;inset:-70px -80px auto auto;width:250px;height:250px;background:radial-gradient(circle,rgba(187,226,80,.18),transparent 64%)}
.ambient-panel>*{position:relative;z-index:1}

.services-reference-section{background:#f7f7f3}
.services-ref-head{display:grid;grid-template-columns:1fr .8fr;gap:26px;align-items:end;margin-bottom:34px}
.services-ref-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.service-ref-card{position:relative;border-radius:34px;overflow:hidden;min-height:490px;background:#0f1610;box-shadow:0 24px 54px rgba(0,0,0,.08)}
.service-ref-media,.service-ref-media img{position:absolute;inset:0;width:100%;height:100%}
.service-ref-media img{object-fit:cover;transition:transform .7s ease, filter .4s ease}
.service-ref-card:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12) 0%,rgba(0,0,0,.05) 18%,rgba(7,12,8,.12) 38%,rgba(7,12,8,.78) 100%);z-index:1}
.service-ref-icon{position:absolute;top:16px;right:16px;width:56px;height:56px;border-radius:18px;background:#28a63c;color:#fff;display:grid;place-items:center;font-size:24px;font-weight:800;z-index:3;box-shadow:0 14px 26px rgba(20,82,31,.3)}
.service-ref-caption{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-radius:22px;padding:20px 20px 18px;z-index:3;transition:transform .45s ease,opacity .45s ease}
.service-ref-caption h3{margin:0 0 8px;font:800 clamp(24px,2vw,34px)/1.05 'Manrope';color:#09140b}
.service-ref-caption span{color:#526354;font-weight:600}
.service-ref-overlay{position:absolute;inset:0;display:flex;align-items:end;padding:18px;z-index:4;opacity:0;pointer-events:none;transition:opacity .4s ease}
.service-ref-overlay-inner{width:100%;background:rgba(10,18,11,.92);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:24px;transform:translateY(26px);transition:transform .45s ease}
.service-ref-overlay h3{margin:10px 0 12px;font:800 30px/1.02 'Manrope'}
.service-ref-overlay p{color:rgba(255,255,255,.82);line-height:1.65;margin:0 0 16px}
.service-ref-overlay ul{margin:0 0 20px;padding:0;list-style:none;display:grid;gap:10px}
.service-ref-overlay li{padding-left:26px;position:relative;color:#ecf6ea}
.service-ref-overlay li:before{content:'•';position:absolute;left:10px;color:#BBE250;font-size:22px;line-height:1}
.service-ref-overlay a{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:999px;background:#BBE250;color:#0c160d;font-weight:800}
.service-ref-card:hover .service-ref-overlay{opacity:1;pointer-events:auto}
.service-ref-card:hover .service-ref-overlay-inner{transform:translateY(0)}
.service-ref-card:hover .service-ref-caption{transform:translateY(18px);opacity:0}
.service-ref-card:hover .service-ref-media img{transform:scale(1.07);filter:saturate(1.03)}

@media(max-width:1100px){.services-ref-grid{grid-template-columns:repeat(2,1fr)}.services-ref-head{grid-template-columns:1fr}}
@media(max-width:700px){.services-ref-grid{grid-template-columns:1fr}.service-ref-card{min-height:430px}.service-ref-overlay h3{font-size:26px}}

/* ===== FG Landscaping v9 refinements ===== */
/* Internal header navigation: keep visual design but restore reliable click behavior */
.page-hero .site-header{z-index:120 !important;pointer-events:auto}
.page-hero .nav-shell{z-index:121 !important;pointer-events:auto}
.page-hero>.container{z-index:2 !important;pointer-events:none}
.page-hero .crumbs a{pointer-events:auto}
.page-hero:before{pointer-events:none}
.page-hero .nav-links,.page-hero .nav-links a,.page-hero .brand,.page-hero .nav-actions,.page-hero .menu-toggle{pointer-events:auto}

/* Home hero: move copy farther left so the video stays visible */
.hero>.container.hero-content{width:100%;max-width:none;margin:0;padding-left:4.2vw;padding-right:4.2vw}
.hero-copy{max-width:650px;margin-left:0;padding-left:0}
.hero h1{max-width:650px}
.hero p{max-width:560px}

/* Home services: keep user inside the section while cards move on scroll */
@media(min-width:1041px){
  #home-services .services-story-wrap{height:var(--services-pin-height,2500px)!important}
  #home-services .services-sticky{position:sticky!important;top:0!important;height:100vh!important;min-height:100vh!important;overflow:hidden}
  #home-services .services-track{overflow:visible!important}
}

/* How it works: remove decorative element that overlapped the heading */
.home-process-polished .process-plant-wrap:before,.home-process-polished .process-plant-wrap:after{content:none!important;display:none!important}
.home-process-polished .process-plant-head{padding-top:8px}

/* Home portfolio cleanup */
.home-portfolio-refined .portfolio-story-title,.home-portfolio-refined .portfolio-story-title span{color:#0b0d0b!important}
.home-portfolio-refined .portfolio-story-kicker{color:#173f1d}
.home-portfolio-refined .portfolio-story-kicker:before{background:#173f1d}
.home-portfolio-refined .portfolio-story-shell{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}
.home-portfolio-refined .portfolio-story-frame{background:transparent!important}
.home-portfolio-refined .portfolio-scroll-card{background:transparent!important;box-shadow:0 18px 38px rgba(0,0,0,.12)}
.home-portfolio-refined .portfolio-scroll-card:before{display:none}
.home-portfolio-refined .portfolio-story-meta{padding-left:0;padding-right:0}

/* Full-width home CTA with no white gutters */
.home-cta-full{padding:0!important;background:var(--ink)}
.home-cta-full .container{width:100%!important;max-width:none!important;margin:0!important}
.home-cta-full .cta-box{border-radius:0!important;min-height:640px!important;box-shadow:none!important}
.home-cta-full .cta-media,.home-cta-full .cta-media img{min-height:640px!important}

/* Contact: restore original size/color and apply hover only */
.contact-item a{color:inherit!important;font-weight:inherit!important;font-size:inherit!important;line-height:inherit!important;display:inline!important;transition:color .25s ease,transform .25s ease!important}
.contact-item small{color:var(--lime)!important}
.contact-item a:hover{color:var(--acid)!important;transform:translateX(4px)}
.contact-item a[href^="mailto:"]:hover{color:var(--acid)!important}

/* Locations: better card placement and staggered motion */
.location-radius-updated .location-radius-layout{display:block}
.location-radius-intro{max-width:850px;margin:0 auto 42px;text-align:center}
.location-radius-intro .lead{margin-left:auto;margin-right:auto}
.location-radius-intro .hero-actions,.location-radius-intro>.pill{justify-content:center}
.location-radius-updated .nearby-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.location-radius-updated .nearby-card{min-height:190px;display:flex;flex-direction:column;justify-content:flex-start;transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,border-color .38s ease}
.location-radius-updated .nearby-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 22px 44px rgba(0,0,0,.22)}
.location-radius-updated .nearby-card:nth-child(2){transition-delay:.05s}.location-radius-updated .nearby-card:nth-child(3){transition-delay:.10s}.location-radius-updated .nearby-card:nth-child(4){transition-delay:.15s}.location-radius-updated .nearby-card:nth-child(5){transition-delay:.20s}.location-radius-updated .nearby-card:nth-child(6){transition-delay:.25s}.location-radius-updated .nearby-card:nth-child(7){transition-delay:.30s}.location-radius-updated .nearby-card:nth-child(8){transition-delay:.35s}.location-radius-updated .nearby-card:nth-child(9){transition-delay:.40s}.location-radius-updated .nearby-card:nth-child(10){transition-delay:.45s}

/* Reference-inspired footer */
.footer-reference{padding:0!important;background:none!important;color:#fff}
.footer-reference-main{position:relative;background-image:linear-gradient(rgba(4,10,4,.82),rgba(4,10,4,.86)),var(--footer-bg);background-position:center;background-size:cover;padding:70px 0 64px}
.footer-reference-grid{display:grid;grid-template-columns:1.15fr .85fr .95fr 1.05fr;gap:46px;align-items:start}
.footer-reference .footer-logo{width:250px;max-height:100px;object-fit:contain;object-position:left center;margin:0 0 22px}
.footer-reference-brand p{max-width:330px;color:rgba(255,255,255,.82);line-height:1.7;margin:0}
.footer-reference-col h4{font:800 24px/1.1 'Manrope';margin:0 0 26px;padding-bottom:18px;border-bottom:2px solid rgba(37,173,54,.42);position:relative}
.footer-reference-col h4:after{content:'';position:absolute;left:0;bottom:-2px;width:68px;height:2px;background:#25ad36}
.footer-reference-links{display:grid;gap:16px}
.footer-reference-links a{color:#fff;font-weight:700;position:relative;padding-left:26px;transition:color .25s ease,transform .25s ease}
.footer-reference-links a:before{content:'»';position:absolute;left:0;color:#31c447;font-size:22px;line-height:1}
.footer-reference-links a:hover{color:#BBE250;transform:translateX(5px)}
.footer-socials{display:flex;gap:10px;margin-top:24px}
.footer-socials a{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#24a937;color:#fff;font-weight:800;transition:transform .3s ease,background .3s ease}
.footer-socials a:hover{transform:translateY(-4px);background:#BBE250;color:#132018}
.footer-reference-contact{display:grid;align-content:start}
.footer-reference-contact h4{width:100%}
.footer-contact-row{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;margin-bottom:16px;color:#fff;font-weight:700}
.footer-contact-row>span:first-child{color:#2fc748;font-size:20px;line-height:1.2}
.footer-contact-row a{color:#fff;transition:color .25s ease,transform .25s ease}
.footer-contact-row a:hover{color:#BBE250;transform:translateX(4px)}
.footer-reference-bottom{background:#edf2da;color:#121812;padding:22px 0}
.footer-reference-bottom .container{display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:14px}

@media(max-width:1180px){
  .location-radius-updated .nearby-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .footer-reference-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  .hero>.container.hero-content{padding-left:18px;padding-right:18px}
  .location-radius-updated .nearby-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .location-radius-updated .nearby-card{min-height:160px;padding:18px}
  .footer-reference-grid{grid-template-columns:1fr}
  .footer-reference-main{padding:54px 0 46px}
  .footer-reference-bottom .container{flex-direction:column;align-items:flex-start}
  .home-cta-full .cta-media,.home-cta-full .cta-media img{min-height:320px!important}
}

/* ===== FG Landscaping v10 refinements ===== */
/* Home services: keep the section pinned until every service has crossed */
@media(min-width:1041px){
  #home-services .services-story-wrap{height:var(--services-pin-height,4200px)!important;overflow:visible!important}
  #home-services .services-sticky{position:sticky!important;top:0!important;height:100vh!important;min-height:100vh!important;overflow:hidden!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
  #home-services .services-track{overflow:visible!important;will-change:transform}
  #home-services .service-card{flex:0 0 min(520px,72vw)!important}
}

/* Portfolio: clean two-line title, no blue accents/dots */
.home-portfolio-refined .portfolio-story-title{color:#0b0d0b!important;max-width:430px!important;font-size:clamp(48px,5.2vw,82px)!important;line-height:.92!important}
.home-portfolio-refined .portfolio-story-kicker{color:#173f1d!important}
.home-portfolio-refined .portfolio-story-kicker:before{background:#173f1d!important}
.home-portfolio-refined .portfolio-story-dots{display:none!important}
.home-portfolio-refined .portfolio-story-progress{background:rgba(18,63,29,.16)!important}
.home-portfolio-refined .portfolio-story-progress span{background:linear-gradient(90deg,#173f1d,#77E380)!important}
.home-portfolio-refined .portfolio-zoom{color:#173f1d!important}

/* CTA: no white gutters above, below, or at the sides */
.home-cta-full{margin:0!important;padding:0!important;background:#0b0d0b!important}
.home-cta-full .container,.home-cta-full .cta-box{margin:0!important;width:100%!important;max-width:none!important}
.home-cta-full .cta-box{border-radius:0!important}
.home-cta-full + .footer{margin-top:0!important}

/* Hero copy aligned near the header logo position */
.hero>.container.hero-content{width:100%!important;max-width:none!important;margin:0!important;padding-left:max(28px,calc((100vw - 1240px)/2 + 22px))!important;padding-right:28px!important}
.hero-copy{margin-left:0!important;padding-left:0!important;max-width:650px!important}

/* Footer: black base, supplied background image, green copyright strip */
.footer-reference{background:#000!important}
.footer-reference-main{background-color:#000!important;background-image:linear-gradient(rgba(0,0,0,.88),rgba(0,0,0,.92)),var(--footer-bg)!important;background-position:center!important;background-size:cover!important}
.footer-reference-bottom{background:#77E380!important;color:#071007!important}
.footer-reference-bottom .container{color:#071007!important}

@media(max-width:700px){
  .hero>.container.hero-content{padding-left:18px!important;padding-right:18px!important}
  .home-portfolio-refined .portfolio-story-title{max-width:100%!important}
}

/* ===== FG Landscaping v11 refinements ===== */
/* Hero copy sits farther left so the video remains visible. */
.hero .container{width:min(1340px,calc(100% - 20px));margin-left:10px;margin-right:auto}
.hero-copy{max-width:610px!important;margin-left:0!important;padding-left:0!important}

/* Home services: static four-card layout. */
.home-services-static{padding:110px 0}
.home-services-static .services-head{margin-bottom:38px}
.home-services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.home-service-card{background:#171b17;border:1px solid rgba(255,255,255,.1);border-radius:28px;overflow:hidden;box-shadow:0 18px 38px rgba(0,0,0,.16);transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}
.home-service-card:hover{transform:translateY(-8px);box-shadow:0 26px 52px rgba(0,0,0,.24);border-color:rgba(119,227,128,.34)}
.home-service-image{aspect-ratio:4/3;overflow:hidden}
.home-service-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .4s ease}
.home-service-card:hover .home-service-image img{transform:scale(1.06);filter:saturate(1.04)}
.home-service-content{padding:24px;display:flex;flex-direction:column;align-items:flex-start;min-height:310px}
.home-service-content>span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#77E380;color:#071007;font-weight:800;margin-bottom:18px}
.home-service-content h3{font:700 25px/1.1 'Manrope';margin:0 0 12px;color:#fff}
.home-service-content p{color:rgba(255,255,255,.68);line-height:1.65;margin:0 0 22px}
.home-service-content .pill{margin-top:auto;background:#BBE250;color:#071007;padding:12px 18px}

/* Home CTA form section. */
.home-cta-full .cta-box{grid-template-columns:.8fr 1.2fr!important;min-height:780px!important;align-items:stretch}
.home-cta-full .cta-copy{justify-content:center;padding:70px 58px!important}
.home-cta-full .cta-copy h2{max-width:560px!important}
.cta-form-media{background:#f7f8f2;min-height:780px;padding:20px;display:flex;align-items:stretch}
.cta-form-shell{width:100%;min-height:740px;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 18px 46px rgba(0,0,0,.12)}
.cta-form-shell iframe{display:block;width:100%;height:748px!important;min-height:748px}

/* Footer image is more visible: dark enough for text, but not heavily filtered. */
.footer-reference{background:#000!important}
.footer-reference-main{background-color:#000!important;background-image:linear-gradient(rgba(0,0,0,.48),rgba(0,0,0,.58)),var(--footer-bg)!important;background-position:center!important;background-size:cover!important}
.footer-reference-brand p{margin-bottom:0!important}
.footer-socials,.footer .socials{display:none!important}

/* Site-wide title animation. */
.title-anim-ready .title-char{display:inline-block;opacity:0;transform:translateY(.55em) rotate(2deg);filter:blur(3px);transition:opacity .5s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1),filter .5s ease;transition-delay:calc(var(--char-index) * 22ms);will-change:transform,opacity}
.title-anim-ready.title-animated-in .title-char{opacity:1;transform:translateY(0) rotate(0);filter:blur(0)}
.title-char-space{width:.3em}

@media(max-width:1180px){
  .home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-cta-full .cta-box{grid-template-columns:1fr!important}
  .home-cta-full .cta-copy{padding:50px 34px!important}
  .cta-form-media{min-height:auto}
}
@media(max-width:700px){
  .hero .container{width:min(100% - 18px,1340px);margin-left:9px}
  .hero-copy{max-width:100%!important}
  .home-services-grid{grid-template-columns:1fr}
  .home-service-content{min-height:auto}
  .home-cta-full .cta-copy{padding:38px 26px!important}
  .cta-form-media{padding:12px}
  .cta-form-shell iframe{height:748px!important}
}

/* ===== FG Landscaping v12 refinements ===== */
/* Home services: no numbering and equal card heights */
.home-services-grid{align-items:stretch}
.home-service-card{height:100%;display:grid;grid-template-rows:230px 1fr}
.home-service-image{aspect-ratio:auto;height:230px}
.home-service-content{min-height:300px;height:100%;padding:26px;display:flex;flex-direction:column}
.home-service-content>span{display:none!important}
.home-service-content h3{min-height:58px;display:flex;align-items:flex-start;margin-bottom:12px}
.home-service-content p{min-height:82px;margin-bottom:22px}
.home-service-content .pill{margin-top:auto}

/* Portfolio: shorter title, black section, no blue accents */
.home-portfolio-refined{background:#050705!important;color:#fff!important}
.home-portfolio-refined .portfolio-story-title,
.home-portfolio-refined .portfolio-story-title span{color:#fff!important;max-width:430px!important;font-size:clamp(48px,5vw,76px)!important;line-height:.94!important}
.home-portfolio-refined .portfolio-story-kicker{color:#77E380!important}
.home-portfolio-refined .portfolio-story-kicker:before{background:#77E380!important}
.home-portfolio-refined .portfolio-story-copy .lead{color:rgba(255,255,255,.72)!important}
.home-portfolio-refined .portfolio-story-shell,
.home-portfolio-refined .portfolio-story-frame,
.home-portfolio-refined .portfolio-scroll-card{background:transparent!important}
.home-portfolio-refined .portfolio-scroll-card{box-shadow:0 20px 44px rgba(0,0,0,.36)!important}
.home-portfolio-refined .portfolio-story-progress{background:rgba(255,255,255,.12)!important}
.home-portfolio-refined .portfolio-story-progress span{background:linear-gradient(90deg,#77E380,#BBE250)!important}
.home-portfolio-refined .portfolio-zoom{color:#173f1d!important;background:#fff!important}
.home-portfolio-refined .pill.primary{background:#BBE250!important;color:#0b0d0b!important}

/* CTA: retain image on right and form on left */
.home-cta-full .cta-box{grid-template-columns:1.08fr .92fr!important;min-height:860px!important;align-items:stretch!important}
.home-cta-full .cta-copy-form{padding:54px 48px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;background:#0b0d0b!important}
.home-cta-full .cta-copy-form h2{max-width:620px!important;font-size:clamp(48px,4.8vw,76px)!important;margin-bottom:30px!important}
.home-cta-full .cta-form-shell-inline{width:100%;min-height:748px;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 22px 56px rgba(0,0,0,.22)}
.home-cta-full .cta-form-shell-inline iframe{display:block;width:100%;height:748px!important;min-height:748px!important}
.home-cta-full .cta-media-restored{position:relative;min-height:860px!important;overflow:hidden}
.home-cta-full .cta-media-restored img{width:100%;height:100%;min-height:860px!important;object-fit:cover;object-position:center}
.home-cta-full .cta-media-restored:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,13,11,.28),rgba(11,13,11,.04));z-index:1}

/* Footer: slightly darker overlay while keeping photo visible */
.footer-reference-main{background-image:linear-gradient(rgba(0,0,0,.62),rgba(0,0,0,.68)),var(--footer-bg)!important}

/* Hero: move text notably farther left */
.hero>.container.hero-content{padding-left:24px!important;padding-right:28px!important;max-width:none!important;width:100%!important;margin:0!important}
.hero-copy{margin-left:0!important;padding-left:0!important;max-width:610px!important}
.hero h1{max-width:610px!important}
.hero p{max-width:540px!important}

/* Action buttons: keep existing design, add a richer hover interaction */
.pill{position:relative;overflow:hidden;isolation:isolate;transition:transform .35s cubic-bezier(.2,.75,.2,1),box-shadow .35s ease,filter .35s ease!important}
.pill:before{content:'';position:absolute;top:-35%;left:-55%;width:42%;height:170%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.34),transparent);transform:skewX(-20deg);transition:left .55s ease;z-index:-1;pointer-events:none}
.pill:hover{transform:translateY(-4px) scale(1.025)!important;box-shadow:0 16px 34px rgba(0,0,0,.22)!important;filter:saturate(1.05)}
.pill:hover:before{left:120%}
.pill:hover .arrow{transform:rotate(45deg) scale(1.08)!important}

@media(max-width:1180px){
  .home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-cta-full .cta-box{grid-template-columns:1fr!important}
  .home-cta-full .cta-media-restored{min-height:460px!important}
  .home-cta-full .cta-media-restored img{min-height:460px!important}
}
@media(max-width:700px){
  .home-services-grid{grid-template-columns:1fr}
  .home-service-card{grid-template-rows:220px auto}
  .home-service-image{height:220px}
  .home-service-content h3,.home-service-content p{min-height:auto}
  .home-portfolio-refined .portfolio-story-title{font-size:clamp(42px,14vw,62px)!important}
  .home-cta-full .cta-copy-form{padding:38px 22px!important}
  .home-cta-full .cta-media-restored{min-height:340px!important}
  .home-cta-full .cta-media-restored img{min-height:340px!important}
  .hero>.container.hero-content{padding-left:14px!important;padding-right:14px!important}
}

/* ===== FG Landscaping v13 refinements ===== */
/* Portfolio: decorative landscaping icons in the corners */
.home-portfolio-refined{position:relative!important;overflow:hidden!important}
.portfolio-corner-icon{position:absolute;z-index:2;width:76px;height:76px;border:1px solid rgba(119,227,128,.32);background:rgba(119,227,128,.08);color:#77E380;border-radius:22px;display:grid;place-items:center;backdrop-filter:blur(5px);box-shadow:0 16px 34px rgba(0,0,0,.18);pointer-events:none;animation:portfolioIconFloat 5s ease-in-out infinite}
.portfolio-corner-icon svg{width:38px;height:38px;display:block}
.portfolio-corner-icon.corner-tl{left:26px;top:28px;transform:rotate(-8deg)}
.portfolio-corner-icon.corner-tr{right:28px;top:30px;transform:rotate(7deg);animation-delay:.7s}
.portfolio-corner-icon.corner-bl{left:30px;bottom:30px;transform:rotate(6deg);animation-delay:1.1s}
.portfolio-corner-icon.corner-br{right:30px;bottom:30px;transform:rotate(-7deg);animation-delay:1.6s}
@keyframes portfolioIconFloat{0%,100%{translate:0 0}50%{translate:0 -8px}}

/* Hero copy: push farther left */
.hero>.container.hero-content{padding-left:8px!important;padding-right:24px!important}
.hero-copy{margin-left:0!important;padding-left:0!important}

/* Green service strip: icons replace the old dot separators */
.marquee .marquee-track{gap:0}
.marquee .marquee-service-group{display:flex!important;align-items:center!important;width:max-content!important;padding:0!important;font:inherit!important;letter-spacing:0!important;text-transform:none!important;gap:0!important}
.marquee .marquee-service-item{display:flex;align-items:center;gap:11px;padding:17px 26px;font-family:'Manrope',sans-serif;font-weight:800;font-size:18px;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}
.marquee .marquee-service-item>span{padding:0!important;font:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;display:inline-flex!important;align-items:center!important;gap:0!important}
.marquee .marquee-service-icon{width:34px!important;height:34px!important;flex:none;border-radius:50%;display:grid!important;place-items:center!important;background:rgba(11,13,11,.12);color:#0b0d0b;padding:0!important}
.marquee .marquee-service-icon svg{width:19px;height:19px;display:block}
.marquee .marquee-service-group+.marquee-service-group{margin-left:0}

@media(max-width:900px){
  .portfolio-corner-icon{width:58px;height:58px;border-radius:18px;opacity:.8}
  .portfolio-corner-icon svg{width:30px;height:30px}
  .portfolio-corner-icon.corner-tl{left:12px;top:14px}
  .portfolio-corner-icon.corner-tr{right:12px;top:14px}
  .portfolio-corner-icon.corner-bl{left:12px;bottom:14px}
  .portfolio-corner-icon.corner-br{right:12px;bottom:14px}
}
@media(max-width:700px){
  .hero>.container.hero-content{padding-left:6px!important;padding-right:12px!important}
  .marquee .marquee-service-item{font-size:15px;padding:15px 18px;gap:9px}
  .marquee .marquee-service-icon{width:30px!important;height:30px!important}
  .portfolio-corner-icon.corner-bl,.portfolio-corner-icon.corner-br{display:none}
}


/* ===== FG Landscaping v14 compact portfolio + hero alignment ===== */
/* Keep the portfolio section compact; do not create an oversized vertical scroll area. */
.home-portfolio-refined{padding-top:84px!important;padding-bottom:84px!important}
.home-portfolio-refined .portfolio-story-wrap{height:auto!important;min-height:0!important}
.home-portfolio-refined .portfolio-story-sticky{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;display:block!important;overflow:visible!important}
.home-portfolio-refined .portfolio-story-frame{overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:4px}
.home-portfolio-refined .portfolio-story-frame::-webkit-scrollbar{display:none}
.home-portfolio-refined .portfolio-story-track{will-change:transform}
.home-portfolio-refined .portfolio-scroll-card{scroll-snap-align:start;opacity:1;transform:none}
.home-portfolio-refined .portfolio-story-meta{margin-top:14px}

/* Hero copy farther left on desktop, while keeping safe spacing from the viewport edge. */
@media(min-width:901px){
  .hero>.container.hero-content{padding-left:0!important;padding-right:24px!important;margin-left:0!important;margin-right:0!important}
  .hero-copy{position:relative!important;left:-18px!important;margin-left:0!important;padding-left:0!important;max-width:610px!important}
}
@media(max-width:900px){
  .hero-copy{left:0!important}
}

/* ===== v15 restore scroll-driven home portfolio ===== */
@media(min-width:1041px){
  .home-portfolio-refined{padding-top:0!important;padding-bottom:0!important;overflow:visible!important}
  .home-portfolio-refined .portfolio-story-wrap{
    position:relative!important;
    height:var(--portfolio-pin-height,2200px)!important;
    min-height:0!important;
  }
  .home-portfolio-refined .portfolio-story-sticky{
    position:sticky!important;
    top:0!important;
    height:100vh!important;
    min-height:100vh!important;
    display:flex!important;
    align-items:center!important;
    overflow:hidden!important;
    padding:70px 0 34px!important;
  }
  .home-portfolio-refined .portfolio-story-frame{
    overflow:hidden!important;
    padding-bottom:0!important;
  }
  .home-portfolio-refined .portfolio-story-track{
    will-change:transform!important;
  }
  .home-portfolio-refined .portfolio-scroll-card{
    scroll-snap-align:none!important;
  }
  .home-portfolio-refined .portfolio-story-meta{margin-top:12px!important}
}


/* ===== v16 fix: restore scroll-driven portfolio transforms ===== */
@media(min-width:1041px){
  .home-portfolio-refined .portfolio-story-track{
    will-change:transform!important;
  }
  .home-portfolio-refined .portfolio-scroll-card{
    opacity:1;
  }
}


/* ===== v17 content visibility + mobile internal header fixes ===== */
/* Letter animation stays character-by-character, but words wrap only between words. */
.title-word{display:inline-block;white-space:nowrap;max-width:100%}
.title-anim-ready{word-break:normal!important;overflow-wrap:normal!important}

/* Owner introduction uses the existing editorial rhythm without changing the layout. */
.about-editorial-copy .owner-intro{margin-bottom:14px}

/* Internal pages: the mobile menu must remain an overlay, not part of the header grid. */
@media(max-width:1040px){
  .page-hero .site-header{position:absolute!important;top:0!important;left:0!important;right:0!important;height:auto!important;background:transparent!important}
  .page-hero .nav-shell{position:relative!important;z-index:210!important;min-height:82px!important;height:auto!important;margin-top:9px!important;padding:8px 10px 8px 14px!important}
  .page-hero .brand{position:relative!important;z-index:220!important}
  .page-hero .nav-actions{position:relative!important;z-index:220!important}
  .page-hero .nav-links{
    position:fixed!important;
    inset:0!important;
    z-index:200!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    background:#0b0d0b!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .35s ease,visibility .35s ease!important;
  }
  .page-hero .nav-links.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
}

@media(max-width:700px){
  .page-hero{min-height:58svh!important}
  .page-hero .nav-shell{min-height:78px!important;max-height:90px!important;width:calc(100% - 18px)!important}
  .page-hero .brand img{width:195px!important;max-width:58vw!important;max-height:62px!important}
  .page-hero>.container{padding:124px 0 48px!important;width:min(100% - 28px,1180px)!important}
  .page-hero h1,.hero h1{word-break:normal!important;overflow-wrap:normal!important;hyphens:none!important}
}

@media(max-width:430px){
  .page-hero .nav-shell{min-height:76px!important}
  .page-hero .brand img{width:170px!important;max-width:56vw!important}
  .page-hero>.container{padding-top:118px!important}
}


/* ===== v18 requested mobile/header + title spacing refinements ===== */
/* Service-card headings use flex; explicit word spacing prevents animated words from touching. */
.home-service-content h3 .title-word + .title-word{
  margin-left:.28em;
}

/* Keep the shorter portfolio heading compact without changing the section behavior. */
.home-portfolio-refined .portfolio-story-title{
  text-wrap:balance;
}

/* Mobile-only header/menu repair. Desktop/tablet styling remains unchanged. */
@media(max-width:700px){
  .site-header,
  .page-hero .site-header{
    position:absolute!important;
    top:0!important;
    left:0!important;
    right:0!important;
    height:auto!important;
    background:transparent!important;
    z-index:300!important;
  }

  .nav-shell,
  .page-hero .nav-shell{
    width:calc(100% - 18px)!important;
    min-height:74px!important;
    height:74px!important;
    max-height:74px!important;
    margin:9px auto 0!important;
    padding:7px 8px 7px 14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    border-radius:18px!important;
    background:rgba(9,12,9,.96)!important;
    border:1px solid rgba(255,255,255,.12)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    overflow:visible!important;
  }

  .brand,
  .page-hero .brand{
    position:relative!important;
    z-index:320!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    flex:0 1 auto!important;
  }

  .brand img,
  .page-hero .brand img{
    width:min(178px,54vw)!important;
    max-width:54vw!important;
    height:auto!important;
    max-height:54px!important;
    object-fit:contain!important;
    object-position:left center!important;
  }

  .nav-actions,
  .page-hero .nav-actions{
    position:relative!important;
    z-index:320!important;
    margin-left:auto!important;
    flex:0 0 auto!important;
  }

  .menu-toggle,
  .page-hero .menu-toggle{
    display:block!important;
    width:48px!important;
    height:48px!important;
    min-width:48px!important;
    flex:0 0 48px!important;
    border-radius:14px!important;
  }

  .nav-links,
  .page-hero .nav-links{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:auto!important;
    bottom:auto!important;
    width:100vw!important;
    height:100dvh!important;
    min-height:100vh!important;
    padding:104px 24px 34px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    background:#0b0d0b!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    overflow-y:auto!important;
    z-index:300!important;
    transition:opacity .3s ease,visibility .3s ease!important;
  }

  .nav-links.open,
  .page-hero .nav-links.open{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }

  .nav-links a,
  .page-hero .nav-links a{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    padding:8px 20px!important;
    font-size:clamp(24px,7vw,32px)!important;
    line-height:1.08!important;
    text-align:center!important;
    color:#fff!important;
    white-space:nowrap!important;
  }

  .nav-links a:hover,
  .nav-links a.active,
  .page-hero .nav-links a:hover,
  .page-hero .nav-links a.active{
    color:var(--acid)!important;
    background:transparent!important;
  }

  /* Reserve only the compact header height above internal hero content. */
  .page-hero>.container{
    padding-top:118px!important;
  }
}

@media(max-width:430px){
  .nav-shell,
  .page-hero .nav-shell{
    min-height:70px!important;
    height:70px!important;
    max-height:70px!important;
    padding-left:11px!important;
  }

  .brand img,
  .page-hero .brand img{
    width:min(158px,51vw)!important;
    max-width:51vw!important;
    max-height:50px!important;
  }

  .menu-toggle,
  .page-hero .menu-toggle{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    flex-basis:46px!important;
  }

  .page-hero>.container{
    padding-top:112px!important;
  }
}

/* Slightly smaller portfolio heading to reduce unused visual space. */
.home-portfolio-refined .portfolio-story-title{
  font-size:clamp(44px,4.5vw,66px)!important;
  line-height:.96!important;
}
@media(max-width:700px){
  .home-portfolio-refined .portfolio-story-title{
    font-size:clamp(36px,11vw,50px)!important;
    line-height:1!important;
  }
}
