/* === Base layout === */
.section{min-height:100svh;height:auto;width:100%}
.vertical-align-container{display:flex;align-items:center}
.lander-content{padding:0 8%;width:100%}
.lander-container{background-image:linear-gradient(to bottom, rgba(0,0,0,.5), rgba(0,0,0,.4));background-repeat:no-repeat;background-size:cover;background-position:center;color:#fff;width:100%;min-height:100svh;min-height:100svh;height:auto;position:relative;overflow-x:hidden}
.lander-head{min-height:79svh;padding-top:6rem}
.lander-head h1{font-family:helvBold;font-size:6.7rem;margin-bottom:2.8rem}
.lander-head a{color:#fff;font-size:1.8rem}

#landing-carousel{position:absolute;top:0;left:0;height:100%;z-index:-1}
#landing-carousel img,#landing-carousel-container{height:100%}

.landing-carousel-item,.landing-head-carousel-item{width:100%;min-width:100%;height:100%;overflow:hidden}

.carousel-arc{overflow:hidden;height:11rem;padding-top:.9rem;width:100%;margin:0 auto;position:relative}
.carousel-arc>*{position:absolute;top:20px;left:0}
#arc-back{z-index:99;width:100%}
#progress-circle {
  z-index: 999;
  width: 100%;
  margin-left: 0;
  transform: rotate(-7deg);
  transition: transform 1s;
}

.lander-footer{max-width:65%;margin:0 auto}
.lander-footer p{color:rgba(255,255,255,.6);font-size:1.5rem;margin:.5rem 1rem;cursor:pointer}
.lander-active{color:#fff !important}

/* About Us */
#aboutUs{padding-left:10%;overflow:hidden;background-color:#3e3e3d}
#aboutUs h2{font-family:helvLight;font-weight:300;font-size:9rem;line-height:110%;margin:1.6rem 0}
#aboutUs p{font-family:karlaLight;font-size:2rem;margin-bottom:6rem;line-height:120%;max-width:86%}
#aboutUs h2,#aboutUs p,#aboutUs h5{color:#fff}
.aboutUs-flex{display:flex;min-height:100svh;height:auto}
.aboutUs-container{align-self:center;max-width:70%}
#aboutUsLast{opacity:0;transform:translate(0, 4em);transition:opacity .4s,transform .7s}

/* Solutions */
#solutions{position:relative;overflow:hidden}
.solutions-container h2{font-family:helvLight;font-size:9rem;line-height:110%;margin:1.6rem 0}
.solutions-container p{font-family:karlaLight;font-size:2rem;margin-bottom:6rem;max-width:66%;line-height:120%}

/* Lotties in About */
#aboutUs-lottie-top{display:inline-block;overflow:hidden;transform:translate3d(0,0,0);opacity:1;height:80%;position:absolute;top:-6%;right:-6.4%;z-index:-1}
#aboutUs-lottie-bottom{display:inline-block;overflow:hidden;transform:translate3d(0,0,0);opacity:1;height:22%;position:absolute;bottom:-2%;left:-2%;z-index:-1}

/* Highlights */
.highlights-container{background-color:#f2fefe}
#highlights{padding:4rem 0;display:none}
#highlights h3{font-weight:300;font-size:2.4rem;margin-bottom:.5rem}
.highlights-head{margin:2rem 0;padding:0}
.highlights-head a{float:right}
.highlights-head h3{font-family:helvLight;font-size:2.2rem}
.highlights-head-left{padding:0}
.highlights-head-left p{font-family:karlaLight;margin-top:.5rem;font-size:1.8rem;color:#54a744}
.article-img{width:100%;display:block}
.content-child{transition:margin-left .5s ease-out,opacity .3s ease-in}
.content-child a{font-family:karlaBold;font-size:1.4rem;color:#3e3e3d;display:inline-flex;align-items:center}
.small-highlights{padding-right:0}
.small-highlights h4{font-size:2.2rem;font-family:helvLight;margin-bottom:1rem}
.small-highlights p{font-size:1.6rem;margin:1.6rem 0;font-family:karla}
.small-highlights a{font-size:1.4rem;font-family:karlaBold;margin-bottom:1rem}
.small-highlights a:hover{font-size:1.42rem}
.highlights-active{transition:margin-left .6s ease-out,opacity .5s ease-in}
.highlights-active h4{font-size:3rem;font-family:helvLight;margin-bottom:1rem}
.highlights-active p{font-size:2rem;margin:1.6rem 0;font-family:karla}
.highlights-active a{font-size:1.8rem}
.highlights-active a:hover{font-size:1.82rem}

/* Dropdowns */
#dropdowns{min-height:30svh;overflow:hidden}
#dropdowns p{margin:2rem 0 2rem}
#dropdowns hr{margin-top:2rem}
#dropdowns a,#dropdowns p{color:#fff;font-size:1.8rem;font-family:karlaLight;line-height:110%}
.drop-btn{padding:2rem;display:flex;align-items:center;justify-content:space-between}
.drop-btn h3{color:#fff}
.actual-drop{padding:4rem;background-color:rgba(0,0,0,0)}
.actual-drop p{max-width:100%}
#drop-1,#drop-2,#drop-3,#drop-4,#drop-5,#drop-6{opacity:0;transform:translate(0,-12em);pointer-events:none;transition:transform .4s,opacity .4s,background-color .4s}
.dropdown-container{width: 32.333%;min-height: 30svh;height: 260px;margin: 5px;}
.drop-content{width:100%;color:#fff;pointer-events:auto}
.drop-content h3{font-size:2.4rem;font-weight:400;margin:0;background-color:rgba(0,0,0,0)!important}
.drop-content img{background-color:rgba(0,0,0,0)!important}
#drop-btn-1,#drop-btn-3,#drop-btn-4,#drop-btn-6{background-color:#54a744ad}
#drop-btn-2,#drop-btn-5{background-color:rgba(0,0,0,.7)}
#dropdown-1,#dropdown-3,#dropdown-4,#dropdown-6{opacity:0;transition:transform .7s,opacity .3s}
#dropdown-1,#dropdown-4{transform:translate(-6em,0)}
#dropdown-3,#dropdown-6{transform:translate(6em,0)}

/* Footprint */
#footprint h2{font-size:6rem;font-weight:300;margin:6rem 0}
#footprint p{font-family:karlaLight;font-size:2rem;margin-top:0;line-height:120%}

/* Blurbs */
.blurb{display:flex;align-items:center;margin:2rem 0}
.blurb img{height:7em}
.blurb h3{font-size:4rem;font-weight:400;margin-bottom:0}
.blurb span{font-family:helvBold;font-size:5rem}
.blurb-row{align-items:center}
.blurb-img-container{width:12rem;margin-right:2rem;text-align:center}
.blurb-content{width:100%}
.blurb-content p{max-width:100%}

/* Social Impact */
#socialImpact p{font-size:2rem;font-family:karlaLight;max-width:80%;margin-bottom:6rem;line-height:120%}
.impact-text{width:33.333%;min-height:inherit;height:100%;display:flex;align-items:center;justify-content:center}
.impact-text-container{width:100%;padding-left:12rem}
#social-impact-text{opacity:0;transform:translate(0,4em);transition:opacity .3s,transform .7s}

/* Partners */
.partners-container{margin-top:12rem}
.partners-container h2{font-size:6rem;margin:.7em 0 1em}
.partners-carousel-item{min-width:100%;width:100%;margin-right:2%}
.partners-indicator-container .indicator-dot.indicator-dot-last{scale:0}
#partners-carousel-container-sm{display:none}
.indicator-row-lg{display:flex} /* <-- was hidden forever; now visible by default */
.logo-child{min-width:100%;margin:0;margin-right:1%}
.logo-child img{height:8em;max-width:100%}
.logo-child>div{margin:2rem 0}
.logo-child .logo-child-data{box-shadow: 2px 2px 2px 2px #eee;padding: 5px;}
#logo-child-1{margin-left:0;transition:.5s}
.partners-logo-bg{height:5em!important}
.partners-square{height:7em!important}

/* Testimonials */
.testimonials-container h4{font-size:3rem;font-family:helvLight;margin:4.4rem 2.4rem 5rem 0}
.comment-child{display:flex;flex-direction:column;justify-content:space-between;min-width:100%;margin-top: 20px;}
.comment-child p{font-family:karlaLight;font-size:2rem;line-height:120%}
.comment-designation p{font-family:karlaLight;font-size:1.8rem}
.comment-designation span{font-size:2rem;line-height:200%;font-weight:700}
.comment-designation h6{font-size:1.3rem;font-family:karlaBold}
.comments-carousel-item{min-width:100%;width:100%;margin-right:2%}
.comment-designation{padding:10px 10px}
.testimonial .description{
    padding: 25px 35px;
    margin: 0;
    background: #edf5e4;
    border-radius: 15px;
    color: #000;
    position: relative;
}
.testimonial .description:before,
.testimonial .description:after{
    font-family: "Font Awesome 5 Free"; font-weight: 900;
    width: 35px;
    height: 35px;
    line-height: 50px;
    border-radius: 8px;
    text-align: center;
    background: #54a744;
    position: absolute;
}
.testimonial .description:before{
    content: '“';
    top: -18px;
    left: 25px;
    font-size: 40px;
}


.testimonial1{
    margin: 0 20px 40px;
}
.testimonial1 .testimonial-content1{
    padding: 35px 25px 35px 50px;
    margin-bottom: 15px;
    background: #fff;
    border: 1px solid #f0f0f0;
    position: relative;
}
.testimonial1 .testimonial-content1:after{
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: #fff;
    position: absolute;
    bottom: -10px;
    left: 22px;
    transform: rotate(45deg);
    border-right: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}
.testimonial-content1 .testimonial-icon1{
    width: 50px;
    height: 45px;
    background: #54a744;
    text-align: center;
    font-size: 22px;
    color: #fff;
    line-height: 42px;
    position: absolute;
    top: 37px;
    left: -19px;
}
.testimonial-content1 .testimonial-icon1:before{
    content: "";
    border-bottom: 16px solid #86b848;
    border-left: 18px solid transparent;
    position: absolute;
    top: -16px;
    left: 1px;
}
.testimonial1 .description1{
    font-style: italic;
    color: #8a8a8a;
    line-height: 23px;
    margin: 0;
}
/* Misc */
.drop-arrow{cursor:pointer}
*,*:before,*:after{box-sizing:border-box}

/* === Zoom safety & alignment (consolidated) === */
.lander-head h1 {
  font-size: clamp(2.4rem, 6vw, 6.7rem);
  line-height: 1.1;
}

#aboutUs h2,
.solutions-container h2 {
  font-size: clamp(2.4rem, 8vw, 9rem);
  line-height: 1.1;
}


#landing-carousel-container,#landing-head-carousel-container{display:flex}
.landing-carousel-item,.landing-head-carousel-item{flex:0 0 100%}
#landing-carousel img,#landing-carousel video{width:100%;height:100%;object-fit:cover}

.section,.lander-container,.aboutUs-flex{min-height:100svh;height:auto}
html,body{overflow-x:hidden}

#landing-carousel .infinite-carousel-container,
#landing-head-carousel .infinite-carousel-container{display:flex;gap:0}

#landing-carousel .landing-carousel-item,
#landing-head-carousel .landing-head-carousel-item{flex:0 0 100%;width:100%;min-width:100%}

#landing-carousel .landing-carousel-item img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
#landing-carousel .landing-carousel-item video{width:100%!important;height:150%!important;object-fit:cover!important;display:block}

/* Impact-only zoom fix */
#socialImpact{min-height:100svh!important;height:auto!important;display:flex;align-items:center}
#socialImpact .impact-text{width:min(60rem,90%)!important;min-height:auto!important;height:auto!important;justify-content:center}
#socialImpact .impact-text-container{padding-left:clamp(1rem,4vw,6rem)!important;padding-right:clamp(1rem,4vw,6rem)!important}
#socialImpact h2{font-size:clamp(2.4rem,6vw,6rem)!important;line-height:1.1!important}
#socialImpact p{max-width:60ch!important}

/* === Responsive === */
@media only screen and (max-width:2343px) and (min-width:2000px){
  .lander-footer p{font-size:1.2rem}
  .carousel-arc{background-position:center -50%}
}
@media only screen and (max-width:1700px) and (min-width:1440px){
  .lander-footer p{font-size:1.2rem}
  .carousel-arc{background-position:center -70%}
}
@media only screen and (max-width:1300px) and (min-width:1101px){
  #dropdowns,.dropdown-container{min-height:60svh;height:auto}
}
@media only screen and (max-width:1150px){
  #aboutUs-lottie-top{height:60%;right:-8.4%}
}
@media only screen and (max-width:1100px){
  #dropdowns,.dropdown-container{min-height:50svh;height:auto}
}
@media only screen and (max-height:676px){
  #landing-carousel video{height:150%;min-width:100%;transform:translate(0,-25%)}
}
@media only screen and (max-width:991px){
  .section,#aboutUs{padding:8rem 0}
  .lander-footer{max-width:80%}
  .carousel-arc{width:120%;margin-left:-10%;height:13rem}
  .aboutUs-flex{padding:0 10%}
  .aboutUs-container{max-width:100%}
  #aboutUs-lottie-top{height:80%}
  #socialImpact{height:70svh}
  .impact-text-container{padding-left:6rem}
  #landing-carousel video{transform:translate(-30%,0);height:100%;min-width:100%}
}
@media only screen and (max-width:767px){
  .container{max-width:90%}
  #subscribe{padding:3rem 0}
  .subscribe-container{max-width:80%}
  .aboutUs-flex{padding:0 4%}
  .aboutUs-container{width:100%}
  #aboutUs p,.solutions-container p{max-width:100%}
  #aboutUs-lottie-top{height:60%}
  .header-search{justify-content:center}
  .highlights-head a{float:left}
  .highlights-head-left{margin-bottom:1.6rem}
  .article-img{padding:0 1%}
  .col{padding:0}
  .lander-content{padding:0}
  .lander-footer{max-width:100%;text-align:center}
  .carousel-arc{width:150%;margin-left:-25%}
  .impact-text-container{padding-left:3rem}
  #socialImpact p{max-width:100%}
  #dropdowns{min-height:100svh}
  .dropdown-container{width:100%;min-height:50%;height:auto;background-position:center;background-size:cover}
  #dropdown-1{transform:translate(0,-6em);opacity:0}
  #dropdown-3{transform:translate(0,6em);opacity:0}
}
@media only screen and (max-width:575px){
  .container{max-width:96%}
  #socialImpact{min-height:100svh;min-height:100svh;height:auto;background-image:url("/static/images/impact-sm.jpg")}
  .impact-text{width:100%;background-color:rgba(0,0,0,.4)}
  .impact-text-container{padding:0 3rem}
  .lander-footer p{font-size:1.7rem!important}
  .partners-container{margin-top:0}
  #partners-carousel-container-lg{display:none}
  #partners-carousel-container-sm{display:flex}
  .indicator-row-lg{display:none} /* hide desktop indicator row on small screens */
  .partners-indicator-container .indicator-dot.indicator-dot-last{scale:.4}
}
@media only screen and (max-width:540px){
  #aboutUs-lottie-top{height:36%;right:-9.4%}
  #aboutUs-lottie-bottom{height:16%;left:-4%}
}
@media only screen and (max-width:450px){
  .lander-head{min-height:76svh}
}
