/* ==========================================================
   DIGITAL DI CONSULTANTS DESIGN SYSTEM
   Version 1.0
   ========================================================== */

:root{

    /* ===========================
       COLORS
    =========================== */

    --ddic-blue:#153A8A;
    --ddic-blue-dark:#102F72;
    --ddic-orange:#FF6A21;

    --ddic-heading:#153A8A;
    --ddic-text:#475569;
    --ddic-text-light:#64748B;

    --ddic-border:#E2E8F0;

    --ddic-bg:#F8FAFC;
    --ddic-white:#FFFFFF;

    /* ===========================
       TYPOGRAPHY
    =========================== */

    --ddic-font-heading:'Lexend Deca',sans-serif;
    --ddic-font-body:'Figtree',sans-serif;

    /* ===========================
       SPACING
    =========================== */

    --ddic-space-1:8px;
    --ddic-space-2:16px;
    --ddic-space-3:24px;
    --ddic-space-4:32px;
    --ddic-space-5:48px;
    --ddic-space-6:64px;
    --ddic-space-7:96px;
    --ddic-space-8:120px;

    /* ===========================
       RADIUS
    =========================== */

    --ddic-radius-sm:8px;
    --ddic-radius-md:12px;
    --ddic-radius-lg:18px;
    --ddic-radius-xl:20px;

    /* ===========================
       SHADOW
    =========================== */

    --ddic-shadow:0 10px 35px rgba(15,23,42,.08);

}

/* ==========================================================
   CONTAINER
========================================================== */

.ddic-container{

    margin-inline:auto;

}

/* ==========================================================
   SECTION SPACING
========================================================== */

.ddic-section{

    padding-block:96px;

}

.ddic-section--hero{

    padding-block-start:90px;

}

.ddic-section--compact{

    padding-block:64px;

}

.ddic-space-margin--mid{
    margin-top: var(--ddic-space-5) !important;
}
/* ==========================================================
   TYPOGRAPHY
========================================================== */

/* Small uppercase heading */

.ddic-overline{

    margin:0;

    font-family:var(--ddic-font-heading);

    font-size:15px;

    font-weight:700;

    line-height:1.4;

    letter-spacing:.12em;

    text-transform:uppercase;

    color:var(--ddic-blue);

}

/* Hero Heading */

.ddic-heading-xl{

    margin:0;

    font-family:var(--ddic-font-heading);

    font-size:clamp(3rem,5vw,4.25rem);

    font-weight:600;

    line-height:1.05;

    letter-spacing:-0.03em;

    color:var(--ddic-heading);

}

/* Section Heading */

.ddic-heading-lg{

    margin:0;

    font-family:var(--ddic-font-heading);

    font-size:clamp(2.25rem,3vw,3rem);

    font-weight:600;

    line-height:1.15;

    letter-spacing:-0.02em;

    color:var(--ddic-heading);

}

/* Card Heading */

.ddic-heading-md{

    margin:0;

    font-family:var(--ddic-font-heading);

    font-size:22px;

    font-weight:600;

    line-height:1.3;

    color:var(--ddic-heading);

}

/* Hero Paragraph */

.ddic-body-xl{

    margin:0;

    font-family:var(--ddic-font-body);

    font-size:22px;

    font-weight:400;

    line-height:1.75;

    color:var(--ddic-text);

}

/* Normal Paragraph */

.ddic-body{

    margin:0;

    font-family:var(--ddic-font-body);

    font-size:18px;

    font-weight:400;

    line-height:1.8;

    color:var(--ddic-text);

}

/* Small Paragraph */

.ddic-body-sm{

    margin:0;

    font-family:var(--ddic-font-body);

    font-size:16px;

    line-height:1.7;

    color:var(--ddic-text-light);

}

/* ==========================================================
   BUTTONS
========================================================== */

.ddic-btn{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:10px;

    padding:18px 34px;

    border:none;

    border-radius:10px;

    text-decoration:none;

    cursor:pointer;

    transition:.25s ease;

    font-family:var(--ddic-font-heading);

    font-size:16px;

    font-weight:600;

}

.ddic-btn--primary{

    background:var(--ddic-blue);

    color:#fff !important;

}

.ddic-btn--primary:hover{

    background:var(--ddic-blue-dark);

}

/* ==========================================================
   IMAGES
========================================================== */

.ddic-img{

    display:block;

    width:100%;

    height:auto;

}

/* ==========================================================
   CARDS
========================================================== */

.ddic-card{

    border-radius:18px;

    background:#fff;

    box-shadow:var(--ddic-shadow);

}

/* ==========================================================
   GRID HELPERS
========================================================== */

.ddic-grid-2{

    display:grid;

    grid-template-columns:repeat(2,minmax(0,1fr));

    gap:96px;

    align-items:center;

}

.ddic-grid-3{

    display:grid;

    grid-template-columns:repeat(3,minmax(0,1fr));

    gap:32px;

}

@media(max-width:992px){

    .ddic-grid-2{

        grid-template-columns:1fr;

        gap:64px;

    }

    .ddic-grid-3{

        grid-template-columns:1fr;

    }

}

@media(max-width:768px){

    .ddic-section{

        padding-block:72px;

    }

    .ddic-section--hero{

        padding-block:88px;

    }

    .ddic-body{

        font-size:17px;

    }

    .ddic-body-xl{

        font-size:20px;

    }

}
/* Home Page Hero Second SEction */
    .ddic-home-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,620px);gap:96px;align-items:center}
    .ddic-home-hero__accent,.ddic-home-hero__heading-accent{color:var(--ddic-orange) !important}
    .ddic-home-hero__divider{width:72px;height:4px;background:var(--ddic-orange);margin:32px 0 40px}
    .ddic-home-hero__description{max-width:640px}
    .ddic-home-hero__actions{margin-top:48px}
    .ddic-home-hero__media{display:flex;justify-content:center}
    .ddic-home-hero__image{max-width:620px}
        @media(max-width:992px){
            .ddic-home-hero__grid{grid-template-columns:1fr;gap:64px;text-align:center}
            .ddic-home-hero__divider{margin:32px auto 40px}
            .ddic-home-hero__description{margin-inline:auto}
            .ddic-home-hero__actions{display:flex;justify-content:center}
            
        }
/* Home Page Trusted Logos Section */
    .ddic-home-trusted__label{text-align:center;margin-bottom:48px}
    .ddic-home-trusted__slider{overflow:hidden;mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 8%,black 92%,transparent)}
    .ddic-home-trusted__track{display:flex;gap:64px;align-items:center;width:max-content;animation:ddicTrustedScroll 36s linear infinite}
    .ddic-home-trusted__slider:hover .ddic-home-trusted__track{animation-play-state:paused}
    .ddic-home-trusted__logo{width:180px;height:100px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:20px}
    .ddic-home-trusted__logo img{max-width:100%;max-height:100%;object-fit:contain;filter:grayscale(100%);opacity:.8;transition:.3s}
    .ddic-home-trusted__logo:hover img{filter:none;opacity:1;transform:scale(1.05)}
    @keyframes ddicTrustedScroll{
        from{transform:translateX(0)}to{transform:translateX(-50%)}
        
    }
    @media(max-width:768px){
        .ddic-home-trusted__logo{width:150px;height:80px;padding:16px}
        .ddic-home-trusted__track{gap:40px}
        
    }
/* Three Signs CSS */
    .ddic-home-signs__story{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,5vw,6rem);align-items:center;padding:clamp(3rem,7vw,6rem) 0}
    .ddic-home-signs__story--reverse .ddic-home-signs__content{order:2}
    .ddic-home-signs__story--reverse .ddic-home-signs__media{order:1}
    .ddic-home-signs__check{display:grid;gap:.8rem;margin:1.5rem 0;padding:0;list-style:none}
    .ddic-home-signs__check li{display:flex;align-items:center;gap:.75rem}
    .ddic-home-signs__check li:before{content:"✓";width:1.6rem;height:1.6rem;border-radius:50%;display:grid;place-items:center;background:rgba(37,68,149,.08);color:var(--ddic-blue);font-weight:700}
    .ddic-home-signs__result{margin-top:1.5rem;padding:1rem 1.25rem;border:1px solid var(--ddic-border);border-left:4px solid var(--ddic-orange);border-radius:var(--ddic-radius-lg);background:linear-gradient(180deg,#fff,#fafcff)}
    .ddic-home-signs__svg-wrap{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,2vw,2rem);border:1px solid var(--ddic-border);border-radius:var(--ddic-radius-xl);background:radial-gradient(circle at top,#fff,#f6f9ff);box-shadow:var(--ddic-shadow)}
    .ddic-home-signs__svg-wrap img{width:100%;height:100%;object-fit:contain}
    @media (max-width:900px){
        .ddic-home-signs__story,.ddic-home-signs__story--reverse{grid-template-columns:1fr}
        .ddic-home-signs__story--reverse .ddic-home-signs__content, .ddic-home-signs__story--reverse .ddic-home-signs__media{order:initial}
    }
/* Solutions Section */
    .ddic-home-process__intro{text-align:center;max-width:760px;margin:0 auto 4rem}
    .ddic-home-process__timeline{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;gap:0;margin-bottom:2rem;position:relative}
    .ddic-home-process__timeline::before{content:"";position:absolute;left:10%;right:10%;top:14px;height:2px;background:var(--ddic-border);}
    .ddic-home-process__timeline span{width:28px;height:28px;border-radius:50%;background:var(--ddic-blue);justify-self:center;z-index:1}
    .ddic-home-process__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem}
    .ddic-home-process__card{background:#fff;border:1px solid var(--ddic-border);border-radius:var(--ddic-radius-lg);padding:2rem 1.5rem;box-shadow:var(--ddic-shadow);transition:.25s}
    .ddic-home-process__card:hover{transform:translateY(-6px)}
    .ddic-home-process__step{font-size:3rem;font-weight:700;color:var(--ddic-orange);opacity:.18;line-height:1}
    .ddic-home-process__card h3{margin:.5rem 0}
    .ddic-home-process__summary{font-weight:600}
    .ddic-home-process__benefits{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;border-top:1px solid var(--ddic-border);margin-top:3rem;padding-top:2rem;text-align:center;font-weight:600}
        @media(max-width:1100px){
            .ddic-home-process__grid{grid-template-columns:repeat(2,1fr)}
            .ddic-home-process__timeline{display:none}
            .ddic-home-process__benefits{grid-template-columns:repeat(2,1fr)}
        }
        @media(max-width:767px){
            .ddic-home-process__grid{grid-template-columns:1fr}
            .ddic-home-process__benefits{grid-template-columns:1fr;text-align:left}
        }
/* Testimonial Section */

    .ddic-home-testimonials{
    display:flex;
    align-items:center;
    min-height:660px;
    }
    
    .ddic-home-testimonials .ddic-container{
    display:flex;
    gap:clamp(40px,5vw,72px);
    }
    
    .ddic-home-testimonials__intro{
    width:35%;
    max-width:420px;
    display:flex;
    flex-direction:column;
    gap:24px;
    align-self:center;
    }
    
    .ddic-home-testimonials__columns{
    width:58.333%;
    height:660px;
    display:flex;
    gap:20px;
    overflow:hidden;
    }
    
    .ddic-home-testimonials__column{
    width:50%;
    position:relative;
    }
    
    .ddic-home-testimonials__card,
    .ddic-home-testimonials__video{
    background:var(--ddic-white);
    border:1px solid var(--ddic-border);
    border-radius:var(--ddic-radius-lg);
    box-shadow:var(--ddic-shadow);
    overflow:hidden;
    margin-bottom:20px;
    }
    
    .ddic-home-testimonials__card{
    padding:30px;
    transition:.25s ease;
    }
    
    .ddic-home-testimonials__card:hover{
    transform:translateY(-6px);
    }
    
    .ddic-home-testimonials__text{
    font-family:Figtree,sans-serif;
    font-size:16px;
    line-height:1.7;
    color:var(--ddic-text);
    }
    
    .ddic-home-testimonials__author-name{
    font-family:"Lexend Deca",sans-serif;
    font-weight:500;
    font-size:16px;
    margin:0;
    color:var(--ddic-heading);
    margin-top: var(--ddic-space-1);
    }
    
    .ddic-home-testimonials__author-role{
    font-family:Figtree,sans-serif;
    font-size:14px;
    color:var(--ddic-text-light);
    }
    
    .ddic-home-testimonials__rating-row{
    display:flex;
    align-items:center;
    gap:10px;
    }
    .ddic-home-testimonials__quote-icon{
    width:32px;
    height:32px;
    margin-bottom:10px;
    }
    .ddic-home-testimonials__author{
        display:flex;
        gap:8px;
        align-items:flex-start;
    }
    .ddic-home-testimonials__video{
    position:relative;
    width:100%;
    height:400px;
    margin:20px 0;
    border-radius:8px;
    overflow:hidden;
    }
    .ddic-home-testimonials__play-btn{
    position:absolute;
    right:0;
    bottom:0;
    transform:translate(-50%,-50%);
    width:40px;
    height:40px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.9);
    border-radius:12px;
    box-shadow:0 8px 20px rgba(0,0,0,.2);
}

.ddic-home-testimonials__play-btn span{
    border-left:12px solid var(--ddic-blue);
    border-top:8px solid transparent;
    border-bottom:8px solid transparent;
    margin-left:3px;
}
.ddic-home-testimonials__video-overlay{
    position:absolute;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    gap:2px;
    padding:16px;
    background:linear-gradient(
        to bottom,
        rgba(0,0,0,0) 50%,
        rgba(0,0,0,.6) 70%,
        rgba(0,0,0,1) 100%
    );
}

.ddic-home-testimonials__video-overlay p{
    margin-bottom:0;
}
.ddic-home-testimonials__video-name{
    color:#fff;
}

.ddic-home-testimonials__video-role{
    color:#fff;
    opacity:.8;
}
.ddic-home-testimonials__column:nth-child(2){
    margin-top:40px;
}
    .ddic-home-testimonials__video img{
        width:100%;
        height:100%;
        object-fit:cover;
        object-position:top;
        display:block;
    }
    .ddic-home-testimonials__author img{
        width: 50px;
        height:50px;
        border-radius:50%;
        object-fit:cover;
        object-position:top;
    }
    .ddic-home-testimonials__scroll-up{animation:scrollUp 20s linear infinite;}
    .ddic-home-testimonials__scroll-down{animation:scrollDown 20s linear infinite;}
    
        @keyframes scrollUp{from{transform:translateY(0)}to{transform:translateY(-50%)}}
        @keyframes scrollDown{from{transform:translateY(-50%)}to{transform:translateY(0)}}
        
        @media(max-width:991px){
        .ddic-home-testimonials .ddic-container{flex-direction:column;}
        .ddic-home-testimonials__intro,
        .ddic-home-testimonials__columns{width:100%;max-width:none;}
        }
        
        @media(max-width:767px){
        .ddic-home-testimonials{min-height:auto;}
        .ddic-home-testimonials__columns{height:auto;display:block;overflow:visible;}
        .ddic-home-testimonials__column{width:100%;}
        .ddic-home-testimonials__scroll-up,
        .ddic-home-testimonials__scroll-down{animation:none;}
        }
/* Home Page Tech Stack Section */
    .ddic-home-techstack{background:var(--ddic-bg-alt);}
    .ddic-home-techstack__intro{text-align:center}
    .ddic-home-techstack__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-top:2.5rem}
    .ddic-home-techstack__card{display:flex;flex-direction:column;justify-content:space-between;gap:2.5rem;padding:3.5rem 3.75rem;background:var(--ddic-white);border:1px solid var(--ddic-border);border-radius:var(--ddic-radius-lg);box-shadow:var(--ddic-shadow)}
    .ddic-home-techstack__card--featured{grid-column:span 2;flex-direction:row;align-items:center}
    .ddic-home-techstack__content{max-width:29rem}
    .ddic-home-techstack__logos{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
    .ddic-home-techstack__logo{width:6.25rem;height:6.25rem;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--ddic-border);border-radius:1rem;box-shadow:var(--ddic-shadow)}
    .ddic-home-techstack__logo img{max-width:100%;max-height:1.5rem}
        @media(max-width:768px){
            .ddic-home-techstack__grid{grid-template-columns:1fr}
            .ddic-home-techstack__card--featured{grid-column:1;flex-direction:column;align-items:flex-start}
            .ddic-home-techstack__card{padding:2rem}
            
        }