/* -------------------------
   Hero
------------------------- */
.hero {height:440px; position:relative; overflow:hidden;}
.hero .img-fit {width:100%; height:100%; object-fit:cover; object-position:center 80%; display:block;}
.hero div {position:absolute; right:0; bottom:2rem; width:100%; text-align:center; color:var(--neutral-100);}
.hero .level-1-title {font-size:1.5rem}

@media (min-width:470px) {
    .hero {height:550px;}
    .hero .level-1-title {font-size:2rem}
}

@media (min-width:576px) {
    .hero {height:60dvh; min-height:680px;}
    .hero div {bottom:4rem;}
}

@media (min-width:992px) {
    .hero {height:80dvh; }
    .hero .level-1-title {font-size:var(--fs-title-xl);}
}

@media (min-width:1600px) {
    .hero {min-height:760px;}
}


/* -------------------------
   Profile
------------------------- */
section:has(.border-bottom) {overflow-x:clip;}
.border-bottom {position:relative;}
.border-bottom::before {content:''; position:absolute; left:-100vw; bottom:0; width:200vw; border-bottom:1px solid #707070;}
.profile-container {position:relative; padding-right:3rem;}
.profile-container .icon-tree {position:absolute; bottom:0; right:0; height:70px;}
.profile-container .mask-frame {margin:0 auto 0 0;}

@media (min-width:400px) {
    .profile-container {padding-right:4rem;}
    .profile-container .icon-tree {height:100px;}
}

@media (min-width:768px) {
    .profile-container {padding-right:0;}
    .profile-container .mask-frame {margin:0 auto;}
    .profile-container .icon-tree {right:3rem; height:140px;}
}

@media (min-width:992px) {
    .profile-container .icon-tree {height:190px;}
}




/* -------------------------
   CTA
------------------------- */
.cta-banner {background:var(--primary-400); color:var(--neutral-100); border-radius:var(--border-radius-default); display:flex; flex-wrap:wrap;}
.cta-banner>div:first-child { padding:40px 0 40px 40px; flex:0 0 100%; order:2;}
.cta-banner>div:last-child {flex:1 1 50%; background:url(/images/verdestone-services.webp) no-repeat 50% 25%; background-size:100% auto; border-top-right-radius:var(--border-radius-default); border-top-left-radius:var(--border-radius-default); height:180px; order:1; transition:background-size 1s ease-out;}
.cta-banner:has(.btn:hover) > div:last-child {background-size:110% auto;}

@media (min-width:576px) {
    .cta-banner {flex-wrap:nowrap;}
    .cta-banner>div:first-child {order:1; flex:0 0 50%;}
    .cta-banner>div:last-child {height:auto; border-bottom-right-radius:var(--border-radius-default); border-top-left-radius:0; order:2;}
}

@media (min-width:880px) {
    .cta-banner>div:first-child {flex:0 0 40%;}
}

@media (min-width:992px) {
    .cta-banner>div:first-child {padding:55px 0 55px 80px;}
}




/* -------------------------
   Logo Carousel
------------------------- */
.scroller {width:100%; overflow:hidden; padding:20px 0;}
.scroller-inner {display:inline-flex; white-space:nowrap; will-change:transform;}
.scroller-inner img {width:auto; height:auto; max-height:80px; max-width:180px; margin:0 40px; transition:all 0.3s ease; object-fit:contain;}





/* -------------------------
   Testimonials Carousel
------------------------- */
.splide__pagination {justify-content:flex-end; bottom:-2rem;}
.splide__pagination__page {height:16px; width:16px; border:1px solid var(--primary-400); background:var(--neutral-100); transition:var(--transition-default);}
.splide__pagination__page.is-active {background:var(--primary-400); transform:scale(1); opacity:1;}
.splide__pagination__page:hover {background:var(--primary-400);}

.section-testimonials .carousel-container {position:relative;}
.section-testimonials .btn-next {border:0; background:transparent; cursor:pointer; position:absolute; bottom:1rem; right:1rem;}
.section-testimonials .btn-next svg path {transition:var(--transition-default);}
.section-testimonials .btn-next:hover svg path {fill:var(--primary-400);}
.section-testimonials .testimonial-carousel {border:1px solid var(--primary-400); border-radius:var(--border-radius-default); border-bottom-left-radius:0; padding:2rem 2rem; font-size:18px;}
.section-testimonials .testimonial-carousel p.testimonial-name {font-size:16px;}
.section-testimonials .testimonial-carousel:before {content:''; position:absolute; bottom:-32px; left:10px; width:0; height:0; border:32px solid transparent; border-top-color:var(--primary-400); border-bottom:0; border-left:0; margin-left:-11px;}
.section-testimonials .testimonial-carousel:after {content:''; position:absolute; bottom:-30px; left:10px; width:0; height:0; border:30px solid transparent; border-top-color:var(--neutral-100);  border-bottom:0; border-left:0; margin-left:-10px;}
.section-testimonials .quote-logo {display:block; width:auto; height:80px; max-width:100%;}

@media (min-width:768px) {
    .section-testimonials .testimonial-carousel {padding:3rem 4rem; font-size:22px;}
}

@media (min-width:992px) {
    .section-testimonials .testimonial-carousel {padding:4rem 8rem;}
}