/* ==============================================
   SERVICES PAGE — UNIQUE STYLES (service-*)
   ============================================= */

#services-page-wrapper {
    --service-gold: #FF6400;
    --service-dark: #18142D;
    --service-white: #ffffff;
    --service-light: #f8f8f8;
    --service-border: rgba(233, 179, 0, 0.18);

    overflow: hidden;
    background: #fafafa;
}

/* ========== SERVICE BANNER ========= */

.service-banner-section {
    position: relative;
    min-height: 480px;
    display: flex;
    align-items: center;
    overflow: hidden;
    background:
        linear-gradient(120deg,
            rgba(0, 0, 0, 0.95),
            rgba(0, 0, 0, 0.78));
}

.service-banner-section::before {
    content: "";
    position: absolute;
    width: 550px;
    height: 550px;
    background: var(--service-gold);
    border-radius: 50%;
    filter: blur(180px);
    opacity: 0.13;
    top: -250px;
    right: -100px;
    animation: serviceGlow 8s infinite alternate ease-in-out;
}

.service-banner-section::after {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(233, 179, 0, 0.2);
    border-radius: 50%;
    bottom: -180px;
    left: -80px;
}

.service-banner-content {
    position: relative;
    z-index: 2;
    padding: 80px 0;
}

.service-banner-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 18px;
    margin-bottom: 22px;

    color: var(--service-gold);
    background: rgba(233, 179, 0, 0.08);

    border: 1px solid rgba(233, 179, 0, 0.25);
    border-radius: 50px;

    font-size: 13px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.service-banner-tag span {
    width: 7px;
    height: 7px;
    background: var(--service-gold);
    border-radius: 50%;
    box-shadow: 0 0 12px var(--service-gold);
    animation: servicePulse 2s infinite;
}

.service-banner-title {
    max-width: 850px;
    margin-bottom: 20px;

    color: var(--service-white);

    font-size: clamp(42px, 6vw, 78px);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -2px;
}

.service-banner-title strong {
    color: var(--service-gold);
    font-weight: 800;
}

.service-banner-text {
    max-width: 680px;
    margin-bottom: 0;

    color: rgba(255, 255, 255, 0.72);

    font-size: 17px;
    line-height: 1.8;
}


/*         CREATIVE SERVICES PAGE
Banner intentionally untouched */

#services-page-wrapper {
    --service-gold: #FF6400;
    --service-dark: #000000;
    --service-white: #ffffff;
    --service-light: #f8f8f8;
    --service-gray: #5f5f5f;
    --service-border: rgba(233, 179, 0, 0.18);

    overflow: hidden;
    background: #fafafa;
}


/*         COMMON SECTION ELEMENTS  */

.service-process-section,
.service-support-section,
.service-testimonials-section,
.service-faq-section {
    position: relative;
    overflow: hidden;
}


/* Floating background circle */

.service-process-section::before,
.service-process-section::after,
.service-support-section::before,
.service-faq-section::before {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 0;
}

.service-process-section::before {
    width: 420px;
    height: 420px;
    background: rgba(233, 179, 0, 0.045);
    filter: blur(80px);
    top: -180px;
    left: -180px;
    animation: serviceFloatBg 10s ease-in-out infinite alternate;
}

.service-process-section::after {
    width: 280px;
    height: 280px;
    border: 1px solid rgba(233, 179, 0, 0.08);
    right: -100px;
    bottom: -120px;
    animation: serviceRotateBg 18s linear infinite;
}

.service-process-section>.container,
.service-support-section>.container,
.service-testimonials-section>.container,
.service-faq-section>.container {
    position: relative;
    z-index: 2;
}


/* PROCESS SECTIO */

.service-process-section {
    padding: 75px 0 85px;
    background: #ffffff;
}

.service-process-header {
    margin-bottom: 65px;
}

.service-process-tag {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    color: var(--service-gold);
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;

    position: relative;
}

.service-process-tag::before {
    content: "";
    width: 30px;
    height: 2px;
    background: var(--service-gold);
    display: inline-block;
}

.service-process-header h2 {
    font-size: clamp(32px, 3.2vw, 45px);
    font-weight: 600;
    color: #000;
    letter-spacing: -1.5px;
    margin: 12px 0 16px;
}

.service-process-header p {
    max-width: 700px;
    color: var(--service-gray);
    font-size: 17px;
    line-height: 1.8;
}


/*    PROCESS CARDS */

.service-process-card {
    text-align: center;
    padding: 38px 25px 42px;

    border-radius: 28px;

    background:
        linear-gradient(145deg,
            #ffffff 0%,
            #ffffff 65%,
            #fffdf5 100%);

    border: 1px solid rgba(0, 0, 0, 0.055);

    height: 100%;
    position: relative;
    overflow: hidden;

    transform-style: preserve-3d;

    transition:
        transform 0.6s cubic-bezier(.2, .8, .2, 1),
        box-shadow 0.5s ease,
        border-color 0.4s ease;
}


/* Gold corne */

.service-process-card::before {
    content: "";
    position: absolute;

    width: 120px;
    height: 120px;

    border-radius: 50%;

    background: rgba(233, 179, 0, 0.08);

    top: -65px;
    right: -65px;

    transition:
        transform 0.6s ease,
        background 0.4s ease;
}


/* Bottom shin */

.service-process-card::after {
    content: "";

    position: absolute;

    left: 0;
    bottom: 0;

    width: 100%;
    height: 4px;

    background:
        linear-gradient(90deg,
            transparent,
            var(--service-gold),
            transparent);

    transform: scaleX(0);
    transform-origin: center;

    transition: transform 0.6s ease;
}


.service-process-card:hover {
    transform:
        perspective(1000px) rotateX(4deg) rotateY(-4deg) translateY(-14px);

    box-shadow:
        0 35px 70px rgba(0, 0, 0, 0.10),
        0 0 0 1px rgba(233, 179, 0, 0.10);

    border-color: rgba(233, 179, 0, 0.22);
}

.service-process-card:hover::before {
    transform: scale(1.8);
    background: rgba(233, 179, 0, 0.12);
}

.service-process-card:hover::after {
    transform: scaleX(1);
}


/*    ICON */

.service-icon-ring {
    width: 100px;
    height: 100px;

    margin: 0 auto 25px;

    border-radius: 50%;

    background:
        radial-gradient(circle,
            rgba(233, 179, 0, 0.18) 0%,
            rgba(233, 179, 0, 0.07) 55%,
            transparent 70%);

    display: flex;
    align-items: center;
    justify-content: center;

    position: relative;

    transition:
        transform 0.6s cubic-bezier(.34, 1.56, .64, 1),
        background 0.4s ease;
}


/* rotating outer rin */

.service-icon-ring::before {
    content: "";

    position: absolute;

    inset: 4px;

    border-radius: 50%;

    border: 1px dashed rgba(233, 179, 0, 0.35);

    transition:
        transform 0.8s ease,
        border-color 0.4s ease;
}


.service-process-card:hover .service-icon-ring {
    transform: translateZ(35px) scale(1.08);
    background: rgba(233, 179, 0, 0.14);
}

.service-process-card:hover .service-icon-ring::before {
    transform: rotate(180deg);
    border-color: var(--service-gold);
}


/* inner ico */

.service-icon-ring .service-icon-inner {
    width: 68px;
    height: 68px;

    border-radius: 50%;

    background: var(--service-gold);

    display: flex;
    align-items: center;
    justify-content: center;

    color: #000;
    font-size: 28px;

    position: relative;
    z-index: 2;

    transition:
        transform 0.6s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow 0.4s ease;
}

.service-process-card:hover .service-icon-inner {
    transform:
        rotate(360deg) scale(1.12);

    box-shadow:
        0 0 0 8px rgba(233, 179, 0, 0.08),
        0 12px 35px rgba(233, 179, 0, 0.38);
}


/*    PROCESS CARD CONTENT */

.service-process-card h4 {
    font-size: 22px;
    font-weight: 600;

    margin-bottom: 14px;

    color: #000;

    transition:
        color 0.3s ease,
        transform 0.4s ease;
}

.service-process-card:hover h4 {
    color: var(--service-gold);
    transform: translateY(-3px);
}

.service-process-card p {
    color: var(--service-gray);

    font-size: 15px;
    line-height: 1.8;

    max-width: 310px;
    margin: auto;
}

/*    HOW WE WORK — PREMIUM FEATURE SECTION */

.service-how-section {
    position: relative;
    padding: 85px 0 100px; 
    background: #28214C;
    color: #fff;
    overflow: hidden;
}

/* Large decorative gold lin */
.service-how-section::before {
    content: "";
    position: absolute;
    width: 650px;
    height: 650px;
    border: 1px solid rgba(233, 179, 0, 0.08);
    border-radius: 50%;
    right: -300px;
    top: -250px;
}

/* Small glo */
.service-how-section::after {
    content: "";
    position: absolute;
    width: 350px;
    height: 350px;
    border-radius: 50%;
    background: rgba(233, 179, 0, 0.09);
    filter: blur(100px);
    left: -180px;
    bottom: -180px;
}

.service-how-section>.container {
    position: relative;
    z-index: 2;
}


/* ---------- TEXT SIDE --------- */

.service-how-section .row {
    align-items: center;
}

.service-how-section h2 {
    position: relative;
    font-size: clamp(34px, 3.5vw, 45px);
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: -2px;
    margin-bottom: 24px;
    max-width: 600px;
}

/* .service-how-section h2::before {
    content: "01";
    display: block;
    color: var(--service-gold);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
    margin-bottom: 18px;
} */

.service-how-text {
    max-width: 560px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 16px;
    line-height: 1.9;
}


/* ---------- LIST AS STEPS --------- */

.service-how-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.service-how-list li {
    position: relative;
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 62px;
    margin: 0;
    padding: 0 0 0 18px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 14px;
    border-left: 1px solid rgba(233, 179, 0, 0.20);
    transition: all 0.35s ease;
}

.service-how-list li::before {
    content: "";
    position: absolute;
    left: -5px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #28214C;
    border: 2px solid var(--service-gold);
    transition: all 0.35s ease;
}

.service-how-list li i {
    width: auto;
    min-width: 24px;
    color: var(--service-gold);
    font-size: 16px;
}

.service-how-list li:hover {
    transform: translateX(7px);
    color: #fff;
}

.service-how-list li:hover::before {
    background: var(--service-gold);
    box-shadow: 0 0 15px rgba(233, 179, 0, 0.6);
}


/* ---------- IMAGE SIDE --------- */

.service-how-img {
    position: relative;
    min-height: 470px;
    border-radius: 0;
    overflow: visible;
    box-shadow: none;
    transform-style: preserve-3d;
}

/* Main imag */
.service-how-img img {
    width: 100%;
    height: 470px;
    /* object-fit: cover; */
    object-fit: fill;
    border-radius: 24px;
    display: block;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 35px 80px rgba(0, 0, 0, 0.45);
    transition:
        transform 0.7s ease,
        filter 0.5s ease;
}

/* Gold fram */
.service-how-img::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 22px;
    left: 22px;
    border: 1px solid rgba(233, 179, 0, 0.35);
    border-radius: 24px;
    z-index: -1;
    opacity: 1;
    transform: none;
    transition: all 0.5s ease;
}

/* Overla */
.service-how-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background:
        linear-gradient(135deg,
            rgba(233, 179, 0, 0.16),
            transparent 35%,
            rgba(0, 0, 0, 0.35));
    opacity: 1;
    pointer-events: none;
}

.service-how-img:hover img {
    transform: scale(1.035);
    filter: brightness(1.08);
}

.service-how-img:hover::before {
    top: 14px;
    left: 14px;
    border-color: rgba(233, 179, 0, 0.65);
}


/*    SUPPORT BUSINESS — EDITORIAL LIGHT SECTION */

.service-support-section {
    position: relative;
    padding: 85px 0 100px;
    background: #f7f7f5;
    overflow: hidden;
}

/* Large background typography fee */
.service-support-section::before {
    content: "GROW";
    position: absolute;
    right: -40px;
    top: 30px;
    font-size: clamp(130px, 17vw, 250px);
    font-weight: 900;
    line-height: 1;
    color: rgba(0, 0, 0, 0.025);
    pointer-events: none;
}

.service-support-section::after {
    content: "";
    position: absolute;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(233, 179, 0, 0.08);
    filter: blur(90px);
    left: -150px;
    bottom: -120px;
}

.service-support-section>.container {
    position: relative;
    z-index: 2;
}


/* ---------- IMAGE --------- */

.service-support-img {
    position: relative;
    overflow: visible;
    border-radius: 0;
    box-shadow: none;
    min-height: 470px;
}

/* Main imag */
.service-support-img img {
    width: 100%;
    height: 470px;
    /* object-fit: cover; */
    object-fit: fill;
    display: block;
    border-radius: 24px;
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.15);
    transition:
        transform 0.7s ease,
        filter 0.5s ease;
}

/* Offset fram */
.service-support-img::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: -20px;
    top: 20px;
    border: 1px solid rgba(233, 179, 0, 0.45);
    border-radius: 24px;
    z-index: -1;
    opacity: 1;
    transform: none;
}

/* Image overla */
.service-support-img::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 24px;
    background:
        linear-gradient(135deg,
            rgba(233, 179, 0, 0.12),
            transparent 40%);
    opacity: 1;
    pointer-events: none;
}

.service-support-img:hover img {
    transform: scale(1.035);
    filter: brightness(1.04);
}

.service-support-img:hover::before {
    left: -12px;
    top: 12px;
}


/*    SUPPORT CONTENT */

.service-support-section h2 {
    font-size: clamp(34px, 3.5vw, 45px);
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: -2px;
    color: #000;
    max-width: 580px;
    margin-bottom: 24px;
}

/* .service-support-section h2::before {
    content: "02";
    display: block;
    color: var(--service-gold);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 3px;
    margin-bottom: 18px;
} */

.service-support-text {
    max-width: 560px;
    color: #666;
    font-size: 16px;
    line-height: 1.9;
}


/* ---------- SUPPORT LIST --------- */

.service-support-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.service-support-list li {
    display: flex;
    align-items: center;
    gap: 13px;
    min-height: 58px;
    padding: 0 0 0 2px;
    margin: 0;
    color: #222;
    font-size: 14px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    transition: all 0.35s ease;
}

.service-support-list li i {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #28214C;
    color: var(--service-gold);
    font-size: 12px;
    transition: all 0.35s ease;
}

.service-support-list li:hover {
    padding-left: 8px;
    color: #28214C;
}

.service-support-list li:hover i {
    background: var(--service-gold);
    color: #000;
    transform: rotate(360deg);
}


/*    SMALL LABEL ABOVE SECTIONS */

.service-how-section .service-how-text::before,
.service-support-section .service-support-text::before {
    content: "";
    display: block;
    width: 45px;
    height: 2px;
    background: var(--service-gold);
    margin-bottom: 20px;
}


/*    MOBILE */

@media (max-width: 767px) {

    .service-how-section,
    .service-support-section {
        padding: 75px 0;
    }

    .service-how-section h2,
    .service-support-section h2 {
        font-size: 34px;
        letter-spacing: -1px;
    }

    .service-how-section .row,
    .service-support-section .row {
        row-gap: 55px;
    }

    .service-how-img,
    .service-support-img {
        min-height: auto;
    }

    .service-how-img img,
    .service-support-img img {
        height: 320px;
    }

    .service-how-img::before,
    .service-support-img::before {
        top: 12px;
        left: 12px;
    }

    .service-how-list li,
    .service-support-list li {
        min-height: 52px;
        font-size: 13px;
    }

    .service-how-section .row>div,
    .service-support-section .row>div {
        width: 100%;
    }

    .service-support-section::before {
        font-size: 100px;
    }
}




/*    TESTIMONIALS */

.service-testimonials-section {
    background: #000;

    padding: 110px 0;

    color: #fff;
}


.service-testimonials-section::before {
    content: "";

    position: absolute;

    width: 550px;
    height: 550px;

    border-radius: 50%;

    background: rgba(233, 179, 0, 0.06);

    filter: blur(110px);

    top: -250px;
    right: -180px;

    animation:
        serviceFloatBg 10s ease-in-out infinite alternate;
}


.service-testi-head {
    margin-bottom: 60px;
}


.service-testi-head h2 {
    color: var(--service-gold);

    font-size: 13px;

    font-weight: 800;

    letter-spacing: 3px;

    text-transform: uppercase;

    margin-bottom: 10px;
}


.service-testi-head h3 {
    font-size: clamp(30px, 3.5vw, 45px);

    font-weight: 800;

    letter-spacing: -1.5px;
}


/*    TESTIMONIAL CARD */

.service-testi-card {
    position: relative;

    height: 100%;

    padding: 35px 30px;

    border-radius: 28px;

    background:
        linear-gradient(145deg,
            rgba(255, 255, 255, 0.075),
            rgba(255, 255, 255, 0.025));

    border: 1px solid rgba(255, 255, 255, 0.08);

    backdrop-filter: blur(12px);

    overflow: hidden;

    transition:
        transform 0.55s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow 0.5s ease,
        border-color 0.4s ease;
}


.service-testi-card::before {
    content: "";

    position: absolute;

    width: 150px;
    height: 150px;

    border-radius: 50%;

    background: rgba(233, 179, 0, 0.07);

    top: -80px;
    right: -80px;

    transition:
        transform 0.6s ease;
}


.service-testi-card::after {
    content: "“";

    position: absolute;

    right: 20px;
    bottom: -20px;

    font-size: 150px;

    line-height: 1;

    color: rgba(233, 179, 0, 0.05);

    font-family: Georgia, serif;

    transition:
        transform 0.6s ease,
        color 0.5s ease;
}


.service-testi-card:hover {
    transform:
        translateY(-12px) rotateX(2deg);

    box-shadow:
        0 35px 70px rgba(0, 0, 0, 0.45);

    border-color:
        rgba(233, 179, 0, 0.25);
}


.service-testi-card:hover::before {
    transform: scale(2);
}


.service-testi-card:hover::after {
    transform: translateY(-10px) rotate(-8deg);

    color: rgba(233, 179, 0, 0.09);
}


/* avata */

.service-testi-avatar {
    width: 72px;
    height: 72px;

    border-radius: 50%;

    overflow: hidden;

    border: 2px solid var(--service-gold);

    flex-shrink: 0;

    transition:
        transform 0.6s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow 0.5s ease;
}


.service-testi-card:hover .service-testi-avatar {
    transform:
        scale(1.1) rotate(8deg);

    box-shadow:
        0 0 0 8px rgba(233, 179, 0, 0.07),
        0 0 30px rgba(233, 179, 0, 0.3);
}


.service-testi-avatar img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform 0.6s ease;
}


.service-testi-card:hover .service-testi-avatar img {
    transform: scale(1.15);
}


.service-testi-avatar-wrap {
    display: flex;
    align-items: center;

    gap: 18px;

    margin-bottom: 22px;
}


.service-testi-name {
    color: var(--service-gold);

    font-weight: 800;

    font-size: 18px;

    margin: 0;
}


.service-testi-role {
    color: rgba(255, 255, 255, 0.48);

    font-size: 14px;

    margin: 3px 0 0;
}


.service-testi-quote {
    color: rgba(255, 255, 255, 0.76);

    font-size: 16px;

    line-height: 1.85;

    position: relative;
    z-index: 2;
}


.service-testi-quote i {
    color: var(--service-gold);

    opacity: 0.7;

    margin-right: 6px;

    transition:
        transform 0.4s ease;
}


.service-testi-card:hover .service-testi-quote i {
    transform:
        translateY(-3px) rotate(-8deg);
}


/*    FAQ */

.service-faq-section {
    padding: 75px 0;

    background:
        radial-gradient(circle at 90% 10%,
            rgba(233, 179, 0, 0.05),
            transparent 30%),
        #fafafa;
}


.service-faq-section h2 {
    font-size: clamp(30px, 3.4vw, 44px);

    font-weight: 600;

    letter-spacing: -1.5px;

    margin-bottom: 45px;
}


/* FAQ ite */

.service-accordion .service-accordion-item {
    background: #fff;

    border-radius: 18px;

    margin-bottom: 15px;

    border: 1px solid rgba(0, 0, 0, 0.055);

    overflow: hidden;

    position: relative;

    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease,
        border-color 0.4s ease;
}


.service-accordion .service-accordion-item::before {
    content: "";

    position: absolute;

    left: 0;
    top: 0;
    bottom: 0;

    width: 3px;

    background: var(--service-gold);

    transform: scaleY(0);

    transform-origin: center;

    transition: transform 0.4s ease;
}


.service-accordion .service-accordion-item:hover {
    transform: translateX(5px);

    box-shadow:
        0 15px 35px rgba(0, 0, 0, 0.07);
}


.service-accordion .service-accordion-item.active {
    border-color:
        rgba(233, 179, 0, 0.20);

    box-shadow:
        0 15px 35px rgba(0, 0, 0, 0.06);
}


.service-accordion .service-accordion-item.active::before {
    transform: scaleY(1);
}


/* heade */

.service-accordion-header {
    padding: 21px 24px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    cursor: pointer;

    background: #fff;

    user-select: none;
}


.service-accordion-header h5 {
    font-size: 17px;

    font-weight: 700;

    color: #000;

    margin: 0;

    transition: color 0.3s ease;
}


.service-accordion-item.active .service-accordion-header h5 {
    color: var(--service-gold);
}


/* ico */

.service-accordion-icon {
    width: 38px;
    height: 38px;

    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    background: rgba(233, 179, 0, 0.08);

    color: var(--service-gold);

    transition:
        transform 0.5s cubic-bezier(.34, 1.56, .64, 1),
        background 0.3s ease;
}


.service-accordion-item.active .service-accordion-icon {
    transform: rotate(180deg);

    background: var(--service-gold);

    color: #000;
}


/* bod */

.service-accordion-body {
    max-height: 0;

    overflow: hidden;

    padding: 0 24px;

    transition:
        max-height 0.55s ease,
        padding 0.4s ease;
}


.service-accordion-item.active .service-accordion-body {
    max-height: 300px;

    padding: 0 24px 24px;
}


.service-accordion-body p {
    color: var(--service-gray);

    font-size: 15px;

    line-height: 1.8;

    margin: 0;
}


/*    CTA CARD */

.service-cta-card {
    position: sticky;

    top: 30px;

    padding: 45px 30px;

    border-radius: 28px;

    background:
        linear-gradient(145deg,
        #28214C,
            #18142D);

    color: #fff;

    text-align: center;

    overflow: hidden;

    border: 1px solid rgba(233, 179, 0, 0.12);

    box-shadow:
        0 25px 60px rgba(0, 0, 0, 0.10);

    transition:
        transform 0.5s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow 0.5s ease;
}


.service-cta-card::before {
    content: "";

    position: absolute;

    width: 220px;
    height: 220px;

    border-radius: 50%;

    background: rgba(233, 179, 0, 0.10);

    filter: blur(50px);

    top: -120px;
    right: -80px;

    animation:
        serviceFloatBg 7s ease-in-out infinite alternate;
}


.service-cta-card::after {
    content: "";

    position: absolute;

    width: 80px;
    height: 80px;

    border: 1px solid rgba(233, 179, 0, 0.20);

    border-radius: 50%;

    bottom: -25px;
    left: -25px;

    animation:
        serviceRotateBg 12s linear infinite;
}


.service-cta-card:hover {
    transform: translateY(-10px);

    box-shadow:
        0 35px 75px rgba(0, 0, 0, 0.20);
}


.service-cta-card h4,
.service-cta-card p,
.service-cta-btn {
    position: relative;
    z-index: 2;
}


.service-cta-card h4 {
    font-size: 26px;

    font-weight: 600;

    margin-bottom: 12px;
}


.service-cta-card p {
    color: rgba(255, 255, 255, 0.65);

    font-size: 15px;

    line-height: 1.8;

    margin-bottom: 25px;
}


.service-cta-btn {
    border: 0;

    background: var(--service-gold);

    color: #000;

    padding: 13px 30px;

    border-radius: 50px;

    font-weight: 800;

    font-size: 15px;

    position: relative;

    overflow: hidden;

    transition:
        transform 0.4s cubic-bezier(.34, 1.56, .64, 1),
        box-shadow 0.4s ease;
}


.service-cta-btn::before {
    content: "";

    position: absolute;

    width: 0;
    height: 0;

    border-radius: 50%;

    background: rgba(255, 255, 255, 0.35);

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    transition:
        width 0.5s ease,
        height 0.5s ease;
}


.service-cta-btn:hover {
    transform:
        translateY(-5px) scale(1.04);

    box-shadow:
        0 15px 35px rgba(233, 179, 0, 0.35);
}


.service-cta-btn:hover::before {
    width: 300px;
    height: 300px;
}


/*    SCROLL ANIMATION */

.service-animate {
    opacity: 0;

    transform:
        translateY(60px) scale(0.96);

    transition:
        opacity 0.8s ease,
        transform 0.9s cubic-bezier(.34, 1.56, .64, 1);
}


.service-animate.service-show {
    opacity: 1;

    transform:
        translateY(0) scale(1);
}


.service-animate-delay-1 {
    transition-delay: 0.10s;
}

.service-animate-delay-2 {
    transition-delay: 0.20s;
}

.service-animate-delay-3 {
    transition-delay: 0.30s;
}

.service-animate-delay-4 {
    transition-delay: 0.40s;
}


/*    KEYFRAMES */

@keyframes serviceFloatBg {

    0% {
        transform:
            translate(0, 0) scale(1);
    }

    50% {
        transform:
            translate(35px, -25px) scale(1.08);
    }

    100% {
        transform:
            translate(-20px, 35px) scale(0.95);
    }
}


@keyframes serviceRotateBg {

    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}


/*    MOBILE */

@media (max-width: 767px) {

    .service-process-section,
    .service-how-section,
    .service-support-section,
    .service-testimonials-section,
    .service-faq-section {
        padding: 70px 0;
    }

    .service-process-header {
        margin-bottom: 45px;
    }

    .service-process-card {
        padding: 30px 20px 35px;
    }

    .service-process-card:hover {
        transform: translateY(-8px);
    }

    .service-icon-ring {
        width: 90px;
        height: 90px;
    }

    .service-icon-ring .service-icon-inner {
        width: 62px;
        height: 62px;
        font-size: 24px;
    }

    .service-how-section .row,
    .service-support-section .row {
        row-gap: 40px;
    }

    .service-how-list li,
    .service-support-list li {
        font-size: 14px;
    }

    .service-how-img:hover,
    .service-support-img:hover {
        transform: translateY(-5px);
    }

    .service-testi-card {
        padding: 28px 22px;
    }

    .service-testi-card:hover {
        transform: translateY(-7px);
    }

    .service-cta-card {
        position: relative;
        top: auto;
        margin-top: 30px;
    }

    .service-accordion-header {
        padding: 17px 18px;
    }

    .service-accordion-body {
        padding-left: 18px;
        padding-right: 18px;
    }

    .service-accordion-item.active .service-accordion-body {
        padding-left: 18px;
        padding-right: 18px;
    }

}


/* Accessibilit */

@media (prefers-reduced-motion: reduce) {

    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }

}





/* index testimonial section */

/* =========================================================
   INDEX TESTIMONIALS
   PREMIUM WHITE + BLACK + GOLD
========================================================= */

.index-testimonials-section {

    --testimonial-gold: #FF6400;
    --testimonial-gold-light: #FF9A5C;

    --testimonial-black: #28214C;
    --testimonial-gray: #686868;

    position: relative;

    padding: 65px 0;

    background: #ffffff;

    overflow: hidden;
}


/* =========================================================
   BACKGROUND DETAILS
========================================================= */

.index-testimonials-section::before {

    content: "";

    position: absolute;

    width: 500px;
    height: 500px;

    left: -300px;
    top: 120px;

    border-radius: 50%;

    background: radial-gradient(
        circle,
        rgba(233, 179, 0, .09),
        transparent 68%
    );

    pointer-events: none;
}


.index-testimonials-section::after {

    content: "";

    position: absolute;

    width: 420px;
    height: 420px;

    right: -250px;
    bottom: -180px;

    border-radius: 50%;

    background: radial-gradient(
        circle,
        rgba(233, 165, 189, .10),
        transparent 70%
    );

    pointer-events: none;
}


/* =========================================================
   SECTION HEADING
========================================================= */

.index-testimonials-heading {

    position: relative;

    margin-bottom: 70px;

    display: flex;

    align-items: center;

    gap: 25px;
}


.index-testimonials-heading::after {

    content: "";

    width: 100%;

    height: 1px;

    background: linear-gradient(
        90deg,
        rgba(0, 0, 0, .12),
        transparent
    );
}


.index-testimonials-heading span {

    flex-shrink: 0;

    font-size: 12px;

    font-weight: 800;

    letter-spacing: 3px;

    color: var(--testimonial-gold);
}


/* =========================================================
   LEFT SIDE
========================================================= */

.index-testimonials-side-title {

    position: relative;

    z-index: 2;

    padding-right: 25px;
}


.index-testimonials-number {

    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    margin-bottom: 28px;

    border-radius: 50%;

    background: var(--testimonial-black);

    color: #ffffff;

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1px;
}


.index-testimonials-side-title h3 {

    margin: 0;

    color: var(--testimonial-black);

    font-size: clamp(34px, 3.5vw, 45px);

    font-weight: 600;

    line-height: 1.02;

    letter-spacing: -2px;
}


.index-testimonials-line {

    width: 55px;

    height: 3px;

    margin: 28px 0 20px;

    background: var(--testimonial-gold);
}


.index-testimonials-side-title p {

    max-width: 190px;

    margin: 0;

    color: var(--testimonial-gray);

    font-size: 13px;

    line-height: 1.7;
}


/* =========================================================
   IMAGE AREA
========================================================= */

.index-testimonial-image-wrap {

    position: relative;

    min-height: 500px;

    display: flex;

    align-items: center;

    justify-content: center;

    padding: 20px;
}


/* Background shape */

.index-testimonial-image-bg {

    position: absolute;

    width: 350px;
    height: 430px;

    background: #f8f8f6;

    border-radius: 180px 180px 25px 25px;

    transform: rotate(-5deg);

    box-shadow:
        inset 0 0 0 1px rgba(0, 0, 0, .04);
}


/* Gold circle */

.index-testimonial-image-bg::before {

    content: "";

    position: absolute;

    width: 110px;
    height: 110px;

    top: -30px;
    right: -30px;

    border-radius: 50%;

    border: 1px solid rgba(233, 179, 0, .35);
}


.index-testimonial-image {

    position: relative;

    z-index: 2;

    width: 100%;

    max-width: 390px;

    overflow: hidden;

    border-radius: 18px;

    box-shadow:
        0 25px 60px rgba(0, 0, 0, .13);

    transform: rotate(2deg);

    transition:
        transform .5s ease,
        box-shadow .5s ease;
}


.index-testimonial-image img {

    display: block;

    width: 100%;

    height: auto;

    transition: transform .6s ease;
}


.index-testimonial-image-wrap:hover
.index-testimonial-image {

    transform: rotate(0deg) translateY(-8px);

    box-shadow:
        0 35px 75px rgba(0, 0, 0, .17);
}


.index-testimonial-image-wrap:hover
.index-testimonial-image img {

    transform: scale(1.04);
}


/* =========================================================
   FLOATING RATING CARD
========================================================= */

.index-testimonial-floating-card {

    position: absolute;

    z-index: 4;

    left: 0;

    bottom: 55px;

    display: flex;

    align-items: center;

    gap: 12px;

    padding: 14px 18px;

    background: rgba(255, 255, 255, .95);

    border: 1px solid rgba(0, 0, 0, .07);

    border-radius: 12px;

    box-shadow:
        0 15px 35px rgba(0, 0, 0, .10);

    backdrop-filter: blur(10px);

    animation: testimonialFloat 4s ease-in-out infinite;
}


.index-testimonial-floating-card > span {

    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 10px;

    background: #fff7d9;

    color: var(--testimonial-gold);

    font-size: 14px;
}


.index-testimonial-floating-card strong {

    display: block;

    color: var(--testimonial-black);

    font-size: 16px;

    line-height: 1;
}


.index-testimonial-floating-card small {

    display: block;

    margin-top: 4px;

    color: #888;

    font-size: 10px;

    letter-spacing: .5px;
}


@keyframes testimonialFloat {

    0%,
    100% {

        transform: translateY(0);

    }

    50% {

        transform: translateY(-8px);

    }
}


/* =========================================================
   CONTENT
========================================================= */

.index-testimonial-content {

    position: relative;

    z-index: 2;

    padding-left: 20px;
}


.index-testimonial-small-title {

    display: inline-block;

    margin-bottom: 16px;

    color: var(--testimonial-gold);

    font-size: 11px;

    font-weight: 800;

    letter-spacing: 2px;
}


.index-testimonial-content h4 {

    max-width: 500px;

    margin: 0 0 35px;

    color: var(--testimonial-black);

    font-size: clamp(28px, 3.1vw, 42px);

    line-height: 1.12;

    font-weight: 600;

    letter-spacing: -1.5px;
}


.index-testimonial-content h4 span {

    display: block;

    color: #888;
}


/* =========================================================
   QUOTE AREA
========================================================= */

.index-testimonial-quote-area {

    display: flex;

    gap: 22px;
}


.index-testimonial-quote-icon {

    flex-shrink: 0;

    width: 48px;
    height: 48px;

    display: flex;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: var(--testimonial-black);

    color: var(--testimonial-gold);

    font-size: 16px;

    box-shadow:
        0 10px 25px rgba(0, 0, 0, .12);
}


.index-testimonial-text {

    max-width: 500px;
}


.index-testimonial-text p {

    margin: 0 0 18px;

    color: #666;

    font-size: 14px;

    line-height: 1.9;
}


/* =========================================================
   CLIENT NAME
========================================================= */

.index-testimonial-client {

    display: flex;

    align-items: center;

    gap: 15px;

    margin-top: 28px;
}


.index-testimonial-client-line {

    width: 35px;

    height: 2px;

    background: var(--testimonial-gold);
}


.index-testimonial-client h1 {

    margin: 0;

    color: var(--testimonial-black);

    font-size: 18px;

    font-weight: 800;

    letter-spacing: -.3px;
}


.index-testimonial-client span {

    display: block;

    margin-top: 4px;

    color: #999;

    font-size: 11px;

    letter-spacing: 1px;

    text-transform: uppercase;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    .index-testimonials-section {

        padding: 90px 0;
    }


    .index-testimonials-heading {

        margin-bottom: 50px;
    }


    .index-testimonials-side-title h3 {

        font-size: 38px;
    }


    .index-testimonial-image-wrap {

        min-height: 430px;
    }


    .index-testimonial-image-bg {

        width: 280px;
        height: 370px;
    }


    .index-testimonial-content {

        padding-left: 0;
    }


    .index-testimonial-content h4 {

        font-size: 31px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .index-testimonials-section {

        padding: 75px 0;
    }


    .index-testimonials-heading {

        margin-bottom: 45px;
    }


    .index-testimonials-side-title {

        margin-bottom: 45px;

        padding-right: 0;
    }


    .index-testimonials-side-title h3 {

        font-size: 42px;

        letter-spacing: -1.5px;
    }


    .index-testimonials-side-title p {

        max-width: 300px;
    }


    .index-testimonial-image-wrap {

        min-height: 430px;

        margin-bottom: 40px;
    }


    .index-testimonial-floating-card {

        left: 10px;

        bottom: 40px;
    }


    .index-testimonial-content {

        padding-left: 0;
    }


    .index-testimonial-content h4 {

        font-size: 32px;

        margin-bottom: 30px;
    }


    .index-testimonial-quote-area {

        gap: 15px;
    }


    .index-testimonial-quote-icon {

        width: 42px;
        height: 42px;
    }


    .index-testimonial-text p {

        font-size: 13px;

        line-height: 1.8;
    }

}


@media (max-width: 480px) {

    .index-testimonial-image-wrap {

        min-height: 370px;
    }


    .index-testimonial-image-bg {

        width: 250px;
        height: 320px;
    }


    .index-testimonial-floating-card {

        padding: 10px 13px;
    }


    .index-testimonial-content h4 {

        font-size: 29px;
    }

}


.index-achivement-label {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 25px;
    color: var(--service-gold);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 3px;
    text-transform: uppercase;
}

.index-achivement-label span {
    width: 35px;
    height: 2px;
    background: var(--service-gold);
}
