.services-carousel { position: relative; height: 500px; overflow: hidden; display: flex; align-items: center; }
.carousel-track { position: relative; width: 100%; height: 100%; }
.service-card { position: absolute; top: 50%; left: 50%; width: 380px; min-height: 330px; padding: 35px; background: #fff; border: 1px solid #ddd; border-radius: 15px; text-align: center; transform: translate(-50%, -50%) scale(.7); opacity: 0; transition: transform .45s ease, opacity .45s ease; pointer-events: none; }

.service-section { padding-top: 40px; /* moves title down */ }
.service-section .section-title { padding-top: 40px; }
.service-section .section-title { margin-bottom: 10px; /* controls title → cards gap */ }

/* ACTIVE CARD */
.service-card.active { transform: translate(-50%, -50%) scale(1); opacity: 1; z-index: 3; pointer-events: auto; }

/* CARD TO LEFT */
.service-card.prev { transform: translate(-145%, -50%) scale(.82); opacity: .45; z-index: 2; }

/* CARD TO RIGHT */
.service-card.next { transform: translate(45%, -50%) scale(.82); opacity: .45; z-index: 2; }

/* Everything else */
.service-card.hidden { opacity: 0; z-index: 1; }

/* Card content */
.service-icon { width: 75px; height: 75px; border-radius: 50%; background: #acdce7; margin: 0 auto 20px; }
.service-card h3 { font-size: 24px; margin-bottom: 18px; }
.service-card h3 span { color: #4772ff; }
.service-card p { font-size: 16px; }
.service-icon.ens-icon { background: linear-gradient(208.34deg, #4772ff 11.23%, rgba(71, 114, 255, 0.36) 158.92%); }
.service-icon.ens-icon svg path,
.service-icon.ens-icon svg rect { fill: none; stroke: #FFFFFF; }

/* ARROWS & DOTS */
.carousel-controls { display: flex; align-items: center; justify-content: center; gap: 150px; margin-top: 10px; }
.carousel-control-arrow { width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; border: 0; border-radius: 50%; background: #4772ff; color: #fff; font-size: 18px; cursor: pointer; flex-shrink: 0; }
.carousel-dots { display: flex; align-items: center; justify-content: center; gap: 10px; }
.carousel-dot { width: 9px; height: 9px; margin: 0; border-radius: 50%; background: #ccc; cursor: pointer; }
.carousel-dot.active { background: #4772ff; }

/* BUTTONS */
.service-card-buttons { display: flex; justify-content: center; gap: 12px; }

/* HEADER AREA */
.home-hero-row { min-height: 540px; display: flex; align-items: center; justify-content: space-between; gap: 70px; padding: 70px 0; }

/* LEFT */
.home-hero-content { width: 55%; color: #fff; }
.home-hero-label { display: block; margin-bottom: 15px; font-size: 14px; font-weight: 700; letter-spacing: 2px; color: #ffffff; }
.home-hero-content h1 { margin-bottom: 20px; font-size: 48px; line-height: 1.15; color: #ffffff; }
.home-hero-content h1 span { color: #4772ff; }
.home-hero-content > p { max-width: 650px; margin-bottom: 30px; font-size: 17px; line-height: 1.7; color: #ffffff; }

/* BUTTONS */
.home-hero-buttons { display: flex; align-items: center; gap: 15px; }

/* RIGHT */
.home-hero-contact { width: 40%; }
.home-contact-card { background: #ffffff; padding: 35px; border-radius: 12px; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.18); }
.home-contact-label { display: block; margin-bottom: 8px; color: #4772ff; font-size: 12px; font-weight: 700; letter-spacing: 1.5px; }
.home-contact-card h2 { margin-bottom: 12px; font-size: 28px; color: #222; }
.home-contact-card > p { margin-bottom: 25px; color: #555; line-height: 1.6; }
.home-contact-placeholder { padding-top: 20px; border-top: 1px solid #eee; }
.home-contact-placeholder p { margin-bottom: 15px; }

/* HEADER RESPONSIVENESS */
@media (max-width: 991px) {
    .home-hero-row { flex-direction: column; align-items: stretch; gap: 35px; padding: 60px 0; }
    .home-hero-content,
    .home-hero-contact { width: 100%; }
    .home-hero-content h1 { font-size: 38px; }
}

@media (max-width: 576px) {
    .home-hero-content h1 { font-size: 32px; }
    .home-hero-buttons { flex-direction: column; align-items: stretch; }
    .home-hero-buttons .btn { width: 100%; text-align: center; }
    .home-contact-card { padding: 25px; }
}