/* =========================================================
   SERVICES PAGE (services.php)
   Loaded after the page's own <style> block so these win.
   Scroll entrances come from Js/scroll-animations.js.
   ========================================================= */

/* ---------- Banner: slow zoom (image comes from the inline style) ---------- */
.sv-banner {
    isolation: isolate;
    background-size: 0 0 !important;
    min-height: 320px;
}

.sv-banner::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: inherit;
    background-size: cover;
    background-position: center;
    animation: svKenBurns 18s ease-in-out infinite alternate;
}

.sv-banner .zk-about-content h2::after {
    content: "";
    display: block;
    width: 70px;
    height: 4px;
    margin: 14px auto 0;
    border-radius: 4px;
    background: linear-gradient(90deg, #19a985, #ffae00);
    animation: svLineGrow 1.2s cubic-bezier(0.2, 0.8, 0.2, 1) 0.4s both;
}

@keyframes svKenBurns {
    from { transform: scale(1); }
    to   { transform: scale(1.12); }
}

@keyframes svLineGrow {
    from { width: 0; }
    to   { width: 70px; }
}

/* ---------- Services grid ---------- */
.waste-management {
    background-color: #effaf7;
    background-image:
        radial-gradient(circle at 8% 12%, rgba(25, 169, 133, 0.12) 0%, transparent 35%),
        radial-gradient(circle at 92% 88%, rgba(17, 139, 167, 0.08) 0%, transparent 35%),
        linear-gradient(180deg, #f6fcfb 0%, #e1f7f1 100%);
}

.waste-management .waste-card {
    position: relative;
    border-radius: 6px;
    border: 1px solid #d7f0e9;
    box-shadow: 0 10px 26px rgba(9, 44, 42, 0.08);
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.45s cubic-bezier(0.2, 0.8, 0.2, 1), box-shadow 0.45s ease, border-color 0.45s ease;
}

.waste-management .waste-card:hover {
    transform: translateY(-12px);
    border-color: #19a985;
    box-shadow: 0 24px 46px rgba(9, 44, 42, 0.18);
}

.waste-management .waste-card img {
    transition: transform 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.waste-management .waste-card:hover img {
    transform: scale(1.08);
}

/* "Learn more →" that slides in on hover */
.waste-management .waste-content {
    position: relative;
    padding-bottom: 46px;
}

.waste-management .waste-content::after {
    content: "Learn more \2192";
    position: absolute;
    left: 20px;
    bottom: 16px;
    font-size: 14px;
    font-weight: 700;
    color: #19a985;
    opacity: 0;
    transform: translateX(-12px);
    transition: opacity 0.4s ease, transform 0.4s ease;
}

.waste-management .waste-card:hover .waste-content::after {
    opacity: 1;
    transform: translateX(0);
}

/* ---------- Partner With Us: deep green band ---------- */
.partner-section {
    position: relative;
    overflow: hidden;
    background-color: #092c2a;
    background-image:
        radial-gradient(circle at 10% 20%, rgba(25, 169, 133, 0.3) 0%, transparent 40%),
        radial-gradient(circle at 90% 85%, rgba(17, 139, 167, 0.22) 0%, transparent 40%),
        linear-gradient(135deg, #092c2a 0%, #10413e 50%, #092c2a 100%);
}

.partner-section .partner-subtitle {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 50px;
    color: #ffae00;
    background: rgba(255, 174, 0, 0.12);
    font-weight: 700;
}

.partner-section .partner-title {
    color: #ffffff;
}

.partner-section .partner-grid img {
    border-radius: 20px;
    box-shadow: 0 24px 50px rgba(0, 0, 0, 0.35);
    transition: transform 0.7s cubic-bezier(0.2, 0.8, 0.2, 1);
}

.partner-section .partner-grid img:hover {
    transform: scale(1.03);
}

.partner-section .btn-primary {
    background: #ffae00;
    color: #092c2a;
    border-radius: 50px;
    padding: 13px 30px;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.25);
    transition: transform 0.35s ease, background 0.35s ease;
}

.partner-section .btn-primary:hover {
    background: #ffffff;
    color: #092c2a;
    transform: translateY(-3px);
}

/* ---------- Testimonials: same look as the homepage ---------- */
.testimonial-section {
    background: linear-gradient(135deg, #0e4b48 0%, #12655f 50%, #0e4b48 100%);
}

.testimonial-section .testimonial-heading p {
    color: #9df7ec;
}

.testimonial-section .testimonial-card {
    background: linear-gradient(160deg, #ffffff 0%, #ecf9f6 100%);
    border: 1px solid rgba(255, 255, 255, 0.6);
    border-top: 4px solid #19a985;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.18);
}

.testimonial-section .testimonial-card::before {
    background: rgba(25, 169, 133, 0.12);
}

.testimonial-section .stars             { color: #f5b301; }
.testimonial-section .testimonial-text  { color: #3f5250; }
.testimonial-section .client-details h4 { color: #092c2a; }
.testimonial-section .client-details p  { color: #5e7b78; }

@media (prefers-reduced-motion: reduce) {
    .sv-banner::before,
    .sv-banner .zk-about-content h2::after {
        animation: none !important;
    }
}

/* =====================================================================
   Section backgrounds in the E-Waste Mart style (same as the homepage):
   soft gradient + pattern + big faint animated icons, dark photo band.
   Keyframes srSpinSlow / srFloat / srDrive live in main.css.
   ===================================================================== */
body .waste-management,
body .partner-section {
    position: relative;
    overflow: hidden;
    overflow: clip;
    isolation: isolate;
}
body .waste-management > .max-width { position: relative; }

body .waste-management::before,
body .waste-management::after,
body .waste-management > .max-width::before,
body .waste-management > .max-width::after,
body .partner-section::before,
body .partner-section::after {
    position: absolute;
    z-index: -1;
    line-height: 1;
    pointer-events: none;
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

/* Long services grid — square grid + dots + soft colour pools down the page */
body .waste-management {
    background:
        radial-gradient(circle at 92% 4%, rgba(9, 146, 178, 0.10) 0, rgba(9, 146, 178, 0) 22%),
        radial-gradient(circle at 5% 30%, rgba(25, 169, 133, 0.12) 0, rgba(25, 169, 133, 0) 22%),
        radial-gradient(circle at 95% 60%, rgba(255, 174, 0, 0.12) 0, rgba(255, 174, 0, 0) 20%),
        radial-gradient(circle at 8% 92%, rgba(9, 146, 178, 0.10) 0, rgba(9, 146, 178, 0) 22%),
        linear-gradient(rgba(25, 169, 133, 0.07) 1px, transparent 1px) 0 0 / 40px 40px,
        linear-gradient(90deg, rgba(25, 169, 133, 0.07) 1px, transparent 1px) 0 0 / 40px 40px,
        linear-gradient(180deg, #f1faf7 0%, #ffffff 50%, #f1faf7 100%);
}
/* recycle symbol turning, top-right */
body .waste-management::before {
    content: "\f1b8";
    top: -50px;
    right: -50px;
    font-size: 320px;
    color: rgba(25, 169, 133, 0.07);
    animation: srSpinSlow 60s linear infinite;
}
/* pickup truck driving, bottom-left */
body .waste-management::after {
    content: "\f0d1";
    bottom: 40px;
    left: 3%;
    font-size: 170px;
    color: rgba(25, 169, 133, 0.08);
    animation: srDrive 12s ease-in-out infinite alternate;
}
/* laptop floating, upper-middle left */
body .waste-management > .max-width::before {
    content: "\f109";
    top: 30%;
    left: -140px;
    font-size: 240px;
    color: rgba(255, 174, 0, 0.12);
    rotate: -10deg;
    animation: srFloat 9s ease-in-out infinite;
}
/* factory floating, lower-middle right */
body .waste-management > .max-width::after {
    content: "\f275";
    top: 62%;
    right: -140px;
    font-size: 240px;
    color: rgba(9, 146, 178, 0.08);
    rotate: 10deg;
    animation: srFloat 11s ease-in-out infinite reverse;
}

/* Partner With Us — dark teal overlay on a photo */
body .partner-section {
    background:
        linear-gradient(rgba(4, 38, 36, 0.9), rgba(4, 38, 36, 0.9)),
        url(../assets/images/home/home-banner-section.jpg) center / cover;
}
body .partner-section::before {
    content: "\f1b8";
    top: -60px;
    right: -60px;
    font-size: 300px;
    color: rgba(255, 255, 255, 0.05);
    animation: srSpinSlow 70s linear infinite;
}
body .partner-section::after {
    content: "\f2b5";
    bottom: -30px;
    left: -20px;
    font-size: 220px;
    color: rgba(255, 174, 0, 0.08);
    animation: srFloat 9s ease-in-out infinite;
}

@media (max-width: 767px) {
    body .waste-management::before,
    body .partner-section::before { font-size: 190px; }
    body .waste-management::after { font-size: 100px; animation-name: srDriveSm; }
    body .waste-management > .max-width::before,
    body .waste-management > .max-width::after { font-size: 150px; }
    body .partner-section::after { font-size: 140px; }
}

@media (prefers-reduced-motion: reduce) {
    body .waste-management::before, body .waste-management::after,
    body .waste-management > .max-width::before, body .waste-management > .max-width::after,
    body .partner-section::before, body .partner-section::after { animation: none; }
}
