/* Homepage visual redesign styles, scoped to index.html. */
.homepage-v2 .v2-who{display:grid;grid-template-columns:minmax(0,45fr) minmax(0,55fr);gap:clamp(2rem,6vw,7rem);align-items:stretch;padding-top:var(--space-6);padding-bottom:var(--space-6);background:var(--color-mist)}
.v2-who-copy{max-width:42rem}.v2-who h2,.v2-section-intro h2{margin:0 0 var(--space-4);font-size:clamp(2.25rem,4vw,4.4rem);line-height:1.02}.v2-who-copy>p:not(.eyebrow){max-width:39rem;color:var(--color-muted);line-height:1.7}.v2-who-copy>.text-link{display:inline-block;margin-top:var(--space-4)}.image-placeholder{display:grid;place-items:center;min-height:16rem;padding:var(--space-4);background:var(--color-teal-tint)}.image-placeholder img{display:block;width:clamp(2.5rem,16%,4rem);height:auto;opacity:.55}.v2-facility-placeholder{min-height:100%;border-radius:var(--radius-lg)}
.v2-workflow{background:var(--color-paper)}.v2-section-intro{max-width:48rem;margin-bottom:var(--space-5)}.v2-workflow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--color-line);border:1px solid var(--color-line)}.v2-workflow-card{display:flex;flex-direction:column;min-height:25rem;padding:var(--space-3);background:var(--color-paper)}.v2-card-media{height:10rem;margin:-.25rem -.25rem var(--space-3);overflow:hidden}.v2-card-media img{width:100%;height:100%;object-fit:cover}.v2-card-placeholder{height:10rem;min-height:0;margin:-.25rem -.25rem var(--space-3)}.v2-workflow-card>span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-teal-dark)}.v2-workflow-card h3{margin:var(--space-2) 0;text-transform:uppercase;letter-spacing:.08em;font-size:1rem}.v2-workflow-card p{margin:0;color:var(--color-muted);line-height:1.55}
.homepage-v2 .ecoplasma{margin:0}.v2-eco-pills{display:flex;flex-wrap:wrap;gap:.65rem;margin:var(--space-4) 0;padding:0;list-style:none}.v2-eco-pills li{padding:.55rem .75rem;border:1px solid color-mix(in srgb,var(--color-teal) 65%,transparent);border-radius:999px;color:var(--color-paper);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.2}
.v2-footer-cta{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(19rem,30rem);align-items:center;min-height:34rem;overflow:hidden;background:var(--color-primary);color:var(--color-paper)}.v2-footer-cta-image{position:absolute;inset:0 auto 0 0;width:64%;min-height:100%;border:0;border-radius:0;background:linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 80%,transparent),var(--color-primary)),var(--color-primary);color:color-mix(in srgb,var(--color-paper) 65%,transparent)}.v2-footer-cta-copy{position:relative;max-width:46rem;padding:clamp(3rem,7vw,7rem)}.v2-footer-cta h2{margin:0 0 var(--space-3);font-size:clamp(2.3rem,4vw,4.6rem);line-height:1.02}.v2-footer-cta-copy>p:not(.eyebrow){max-width:35rem;margin-bottom:var(--space-4);color:#d1dfdc;line-height:1.65}.v2-contact-card{position:relative;margin-right:clamp(1.25rem,5vw,5rem);padding:clamp(2rem,4vw,3.5rem);background:var(--color-paper);color:var(--color-primary);box-shadow:0 1.5rem 4rem rgba(0,0,0,.18)}.v2-contact-card h2{margin:0 0 var(--space-2);font-size:clamp(1.6rem,2.3vw,2.4rem);line-height:1.12}.v2-contact-card>p:not(.eyebrow){color:var(--color-muted);line-height:1.6;margin-bottom:var(--space-4)}
@media (max-width:900px){.homepage-v2 .v2-who{grid-template-columns:1fr}.v2-facility-placeholder{min-height:22rem}.v2-workflow-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-footer-cta{grid-template-columns:1fr;gap:0;padding:0}.v2-footer-cta-image{width:100%;height:55%;bottom:auto}.v2-footer-cta-copy{padding-top:13rem}.v2-contact-card{margin:0 var(--space-3) var(--space-3)}}
@media (max-width:560px){.v2-workflow-grid{grid-template-columns:1fr}.v2-workflow-card{min-height:0}.v2-card-media{height:12rem}.v2-footer-cta-copy{padding:12rem var(--space-3) var(--space-5)}.v2-contact-card{padding:var(--space-4)}}

/* Visual refinements scoped to the homepage redesign. */
body.homepage-v2{background:#fff}
.homepage-v2 main{background:#fff}
.homepage-v2 .hero-copy.section-inner{width:100%;max-width:none;padding:80px max(var(--page-padding),calc((100vw - 1280px) / 2))}
.homepage-v2 .hero-copy.section-inner h1{max-width:730px}
.homepage-v2 .hero-copy .actions{margin-top:var(--space-4)}
.homepage-v2 .hero .v2-button-outline{border:1px solid #fff;background:transparent;color:#fff}
.homepage-v2 .hero-photo .hero-scrim{background:linear-gradient(100deg,rgba(9,28,28,.80) 0%,rgba(9,28,28,.68) 40%,rgba(9,28,28,.30) 62%,rgba(9,28,28,.10) 82%),radial-gradient(ellipse at 0% 50%,rgba(9,28,28,.18),rgba(9,28,28,0) 70%)}
.homepage-v2 .hero-photo .image-tag{right:max(var(--page-padding),calc((100vw - 1280px) / 2))}
.homepage-v2 .hero-footer{right:max(var(--page-padding),calc((100vw - 1280px) / 2));left:max(var(--page-padding),calc((100vw - 1280px) / 2))}
.homepage-v2 .v2-who,.homepage-v2 .v2-workflow{background:#fff}
.v2-eco-pills svg{display:block;width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.v2-workflow-grid{background:transparent;border:0;gap:var(--space-3)}
.v2-workflow-card{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(7rem,.95fr);align-items:stretch;min-height:12.5rem;padding:var(--space-3);border:1px solid var(--color-line);border-radius:var(--radius-lg);background:#fff}
.v2-workflow-card>.v2-workflow-next{position:absolute;top:50%;right:-28px;z-index:2;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--color-primary);color:#fff;transform:translateY(-50%);box-shadow:0 .25rem .75rem rgba(15,47,47,.2)}
.v2-workflow-next svg{display:block;width:1.25rem;height:1.25rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.v2-workflow-copy{display:flex;flex-direction:column;justify-content:center;padding-right:var(--space-2)}
.v2-workflow-card>span,.v2-workflow-copy>span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-teal-dark)}
.v2-workflow-card h3{margin:var(--space-2) 0;text-transform:uppercase;letter-spacing:.08em;font-size:1rem}
.v2-card-media,.v2-card-placeholder{height:auto;min-height:100%;margin:0;border:0;border-radius:var(--radius-md);overflow:hidden}
.v2-card-media picture,.v2-card-media img{display:block;width:100%;height:100%}.v2-card-media img{object-fit:cover}
.v2-card-placeholder{padding:var(--space-2)}
.homepage-v2 .ecoplasma{grid-template-columns:minmax(0,1fr) minmax(0,1fr);margin:clamp(1rem,3vw,2.5rem) var(--page-padding);padding:clamp(2rem,5vw,5rem);border-radius:var(--radius-lg);background:var(--color-primary);color:var(--color-paper)}
.homepage-v2 .eco-copy{max-width:34rem}.homepage-v2 .eco-copy .eyebrow{color:var(--color-teal)}.homepage-v2 .eco-copy>p:not(.eyebrow){color:#d1dfdc}.homepage-v2 .eco-copy h2{color:#fff}.homepage-v2 .eco-visual{order:2;height:26rem}
.v2-eco-pills{gap:.6rem}.v2-eco-pills li{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .75rem;border:0;background:color-mix(in srgb,var(--color-teal) 18%,transparent);border-radius:999px}.v2-eco-pills li::before{display:none}.v2-eco-pills svg{width:1rem;height:1rem;flex:0 0 1rem;color:var(--color-teal)}
.homepage-v2 .ecoplasma{position:relative;isolation:isolate;background:linear-gradient(115deg,#224e47 0%,#1b453f 100%)}
.homepage-v2 .ecoplasma::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.55;background:repeating-radial-gradient(ellipse at 83% 55%,transparent 0 5.4rem,rgba(33,179,75,.35) 5.5rem 5.6rem,transparent 5.7rem 9.6rem)}
.homepage-v2 .ecoplasma .button-primary{outline:2px solid #21b34b;outline-offset:8px;background:var(--color-teal);color:var(--color-primary)}
.homepage-v2 .eco-copy,.homepage-v2 .eco-visual{position:relative;z-index:1}
.v2-eco-signature{display:block;width:clamp(7rem,13vw,10rem);height:auto;margin:0 0 var(--space-3);padding:.45rem .6rem;border-radius:var(--radius-sm);background:rgba(255,255,255,.94)}
.homepage-v2 .eco-visual{align-self:center;width:min(100%,25rem);height:auto;overflow:visible;border-radius:0;background:transparent;box-shadow:none}
.homepage-v2 .eco-visual img{display:block;width:100%;height:auto;object-fit:contain;filter:drop-shadow(0 1.25rem 1.5rem rgba(0,0,0,.28))}
.v2-services-portfolio{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(2.5rem,8vw,9rem);background:#fff}
.v2-services-portfolio h2{margin:0 0 var(--space-3);font-size:clamp(2rem,3.3vw,3.5rem);line-height:1.05}.v2-services>p:not(.eyebrow){max-width:31rem;color:var(--color-muted);line-height:1.65}
.v2-service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:var(--space-5) 0 0;padding:0;list-style:none}.v2-service-list li{display:grid;gap:.6rem;border-top:1px solid var(--color-line);padding-top:var(--space-2);font-size:.9rem}.v2-service-list span{font:var(--text-xs) var(--font-mono);color:var(--color-teal-dark)}
.v2-category-list{display:grid;gap:.8rem;margin-top:var(--space-4)}.v2-category-list a{display:grid;grid-template-columns:4.5rem minmax(0,1fr);gap:var(--space-3);align-items:center;color:var(--color-primary);text-decoration:none}.v2-category-list img{display:block;width:4.5rem;height:3.5rem;border-radius:var(--radius-sm);object-fit:cover}.v2-category-list span{display:grid;gap:.18rem}.v2-category-list b{font-size:.95rem}.v2-category-list small{color:var(--color-muted);font-size:.8rem;line-height:1.4}
.v2-footer-cta-image{width:100%;background:var(--color-primary)}.v2-footer-cta-image::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--color-primary) 86%,transparent),color-mix(in srgb,var(--color-primary) 56%,transparent))}.v2-footer-cta-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.v2-contact-card{background:var(--color-paper);background-image:none;border-radius:var(--radius-lg)}
@media (max-width:900px){.homepage-v2 .ecoplasma{margin:var(--space-3);grid-template-columns:1fr}.homepage-v2 .eco-visual{order:0;height:22rem}.v2-services-portfolio{grid-template-columns:1fr}.v2-service-list{max-width:38rem}.v2-footer-cta-image::after{background:linear-gradient(180deg,color-mix(in srgb,var(--color-primary) 42%,transparent),var(--color-primary))}}
@media (max-width:560px){.v2-workflow-card{grid-template-columns:minmax(0,1fr) 8rem}.v2-service-list{grid-template-columns:1fr}.v2-category-list a{grid-template-columns:4rem minmax(0,1fr)}.v2-category-list img{width:4rem}.homepage-v2 .ecoplasma{padding:var(--space-4)}}
@media (max-width:900px){.homepage-v2 .eco-visual{height:auto;width:min(100%,20rem)}}

/* Keep the card on the shared 1280px content axis while allowing the product to bleed right. */
.homepage-v2 .ecoplasma{grid-template-columns:minmax(0,1fr);margin:var(--space-7) max(var(--page-padding),calc((100vw - 1280px) / 2));padding:0 0 0 clamp(2rem,5vw,5rem)}
.homepage-v2 .eco-copy{align-self:center;max-width:46rem;padding-block:clamp(2rem,5vw,5rem)}
.homepage-v2 .eco-copy h2{font-size:clamp(34px,4vw,60px)}
.homepage-v2 .eco-visual{position:absolute;inset:0 0 0 auto;align-self:auto;width:auto;height:auto;aspect-ratio:1067 / 1600;overflow:hidden;border-radius:0 var(--radius-lg) var(--radius-lg) 0;background:transparent;box-shadow:none}
.homepage-v2 .eco-visual img{width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 1.25rem 1.5rem rgba(0,0,0,.28))}
.homepage-v2 .v2-eco-pills{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin:var(--space-4) 0;padding:0;list-style:none}
.homepage-v2 .v2-eco-pills li{display:flex;align-items:center;gap:.55rem;padding:0;border:0;border-radius:0;background:transparent;color:var(--color-paper);font-family:var(--font-sans);font-size:.875rem;font-weight:500;line-height:1.35;white-space:nowrap}
.homepage-v2 .v2-eco-pills svg{width:1.3rem;height:1.3rem;flex:0 0 1.3rem;color:var(--color-teal)}
@media (max-width:1024px){.homepage-v2 .ecoplasma{grid-template-columns:1fr;margin:var(--space-5) var(--page-padding);padding:0}.homepage-v2 .eco-copy{padding:var(--space-4)}.homepage-v2 .eco-visual{position:relative;inset:auto;order:0;width:100%;height:auto;min-height:0;aspect-ratio:1067 / 1600;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.homepage-v2 .eco-visual img{object-position:center}}
@media (max-width:780px){.homepage-v2 .hero-copy.section-inner{padding:90px max(var(--page-padding),calc((100vw - 1280px) / 2)) 52px}.homepage-v2 .hero-photo .hero-image{object-position:right center}.homepage-v2 .hero-photo .hero-scrim{background:linear-gradient(180deg,rgba(15,47,47,.62) 0%,rgba(15,47,47,.80) 100%)}.homepage-v2 .hero-photo .image-tag{right:max(var(--page-padding),calc((100vw - 1280px) / 2));left:max(var(--page-padding),calc((100vw - 1280px) / 2))}}
@media (max-width:900px){.v2-workflow-card>.v2-workflow-next{display:none}}
@media (max-width:480px){.homepage-v2 .hero-copy.section-inner{padding-top:72px}}
