/* 1. SECTION & CONTAINER */
.testimonial-parallax-section { 
    padding: 60px 0 95px !important; 
}

.dg-total-lock-1000 {
    max-width: 1000px !important;
    width: 100% !important;
    margin: 0 auto !important;
    position: relative;
    background: rgba(0, 0, 0, 0.6) !important;
    border-radius: 4px !important;
    padding: 15px !important;
    box-sizing: border-box !important;
}

/* 2. HEADER AREA & UNIFIED GLITCH FRAME */
.dg-header-area { 
    text-align: center; 
    width: 100%; 
    margin-bottom: 20px !important;
    margin-top: 2px !important;
    display: flex;
    justify-content: center;
    padding: 0 !important; 
    box-sizing: border-box !important;
}

.dg-unified-frame {
    border: 1px solid rgba(190, 93, 255, 0.4) !important;
    border-radius: 5px !important;
    display: inline-block;
    width: 100% !important;
    max-width: 100% !important;
    background: rgba(49, 32, 61, 0.85) !important;
    padding: 30px 40px;
    position: relative;
    animation: dg-header-glitch 5s infinite;
    box-sizing: border-box !important;
    overflow: hidden;
}

/* ── HEADING VERTICAL SCANLINE ── */
@keyframes dg-header-scan {
    0%   { transform: translateX(-120px); }
    100% { transform: translateX(1120px); }
}
.dg-header-scanline {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100px !important;
    height: 100% !important;
    background: linear-gradient(
        to right,
        transparent 0%,
        rgba(183, 254, 124, 0.05) 50%,
        rgba(183, 254, 124, 0.22) 90%,
        transparent 100%
    ) !important;
    z-index: 999 !important;
    pointer-events: none !important;
    animation: dg-header-scan linear infinite !important;
    animation-duration: 8s !important;
}

@keyframes dg-header-glitch {
    0%, 93%, 98%, 100% { transform: translate(0); text-shadow: none; border-color: #be5dff; }
    94% { transform: translate(-3px, 1px); text-shadow: 2px 0 #be5dff, -2px 0 #acccb4; border-color: #acccb4; }
    95% { transform: translate(3px, -1px); text-shadow: -2px 0 #be5dff, 2px 0 #acccb4; border-color: #be5dff; }
}

.dg-visionary-badge {
    color: #be5dff !important;
    font-family: 'Michroma', sans-serif;
    font-size: 22px;
    letter-spacing: 3px;
    margin-bottom: 20px;
    text-transform: uppercase;
    
/* FORCED BOLD FOR MICHROMA (CLEAN VERSION) */
font-weight: normal !important; /* Michroma only has 400 */
text-shadow: 0.5px 0px 0px #be5dff, 
             -0.5px 0px 0px #be5dff, 
             0px 0.5px 0px #be5dff !important;
}

.dg-header-separator {
    height: 1px;
    background: #be5dff !important;
    width: 60%;
    margin: 0 auto 25px !important;
    opacity: 0.8;
}

.dg-stardust-manifesto {
    color: #f4deaf !important; /* UPDATED: Cream for visibility */
    font-size: 15px;
    line-height: 1.8;
    font-style: italic;
}

/* --- UPDATED HIGHLIGHT COLOR IS NOW INSTANT PASSWORDS GREEN NOT PURPLE--- */
.dg-purple-highlight { 
    color: #b7fe7c !important; /* Signature Green */
    font-weight: bold; 
    font-style: normal; 
}

/* 3. CARD STYLING & TACTICAL SQUARE ARROWS */
.slick-item-wrapper { padding: 0 6px !important; }

.dg-card-galactic {
    background: rgba(15, 12, 15, 0.98) !important;
    border: 1px solid rgba(190, 93, 255, 0.3) !important;
    border-radius: 5px 5px 0 0 !important;
    padding: 40px !important;
    min-height: 580px !important;
    display: flex !important;
    flex-direction: column !important;
}

/* NEW TACTICAL ARROW STYLE */
.testimonail-slide .slick-prev, 
.testimonail-slide .slick-next {
    width: 44px !important; 
    height: 44px !important;
    background: rgba(15, 12, 15, 0.95) !important;
    border: 1px solid #be5dff !important; /* Brand Purple */
    border-radius: 8px !important; /* Square Tactical Radius */
    z-index: 100 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
}

.testimonail-slide .slick-prev:hover, 
.testimonail-slide .slick-next:hover {
    background: #be5dff !important;
    box-shadow: 0 0 15px rgba(190, 93, 255, 0.5) !important;
}

.testimonail-slide .slick-prev:before, 
.testimonail-slide .slick-next:before {
    font-family: 'slick';
    font-size: 20px !important;
    color: #be5dff !important;
    opacity: 1 !important;
}

.testimonail-slide .slick-prev:hover:before, 
.testimonail-slide .slick-next:hover:before {
    color: #ffffff !important;
}

/* --- UPDATED ICON COLORS --- */
.dg-badge-style {
    display: flex !important; 
    align-items: center; 
    justify-content: center;
    width: 90px !important; 
    height: 90px !important;
    border: 1px solid #b7fe7c !important; /* Changed border to green */
    border-radius: 18px !important;
    margin-bottom: 15px !important;
}

.dg-badge-style i, .dg-badge-style svg { 
    font-size: 50px !important; 
    width: 50px !important; 
    height: 50px !important; 
    fill: #b7fe7c !important;  /* Icon Fill Green */
    color: #b7fe7c !important; /* Icon Color Green */
}

.dg-card-internal-heading { 
    color: #f0e1bc !important; 
    font-family: 'Michroma', sans-serif;
    font-size: 22px; 
    text-transform: uppercase; 
    margin-bottom: 30px !important;
}

.dg-copy-green { 
    color: #be5dff !important; /* UPDATED: Signature Purple */
    font-size: 17px !important; 
    line-height: 1.6; 
}



/* 5. NEON GLOW DOTS — PULLED UP INTO CARD AREA */
.dg-slider-wrapper {
    position: relative !important;
}

.testimonail-slide .slick-dots { 
    position: relative !important;
    bottom: auto !important;
    display: flex !important; 
    justify-content: center !important; 
    width: 100% !important; 
    list-style: none !important;
    padding: 0 !important;
    margin: -31px 0 15px 0 !important; /* Negative top margin pulls dots UP into the card */
    z-index: 10 !important;
}

.testimonail-slide .slick-dots li {
    margin: 0 10px !important; 
    display: inline-block !important;
    width: 12px !important; 
    height: 12px !important;
    padding: 0 !important;
}

.testimonail-slide .slick-dots li button {
    width: 12px !important;
    height: 12px !important;
    background: transparent !important;
    border: 1px solid #be5dff !important; 
    border-radius: 50% !important;
    font-size: 0 !important;
    color: transparent !important;
    padding: 0 !important;
    cursor: pointer !important;
    display: block !important;
    position: relative !important;
}

/* KILLS THE INTERNAL DOTS FROM GLOBAL THEME */
.testimonail-slide .slick-dots li button:before {
    display: none !important;
    content: "" !important;
}

.testimonail-slide .slick-dots li.slick-active button {
    background: #be5dff !important;
    border-color: #be5dff !important;
    box-shadow: 0 0 8px #be5dff, 0 0 16px #be5dff !important;
}

/* Footer alignment preserved */
.dg-footer-right { margin-top: auto !important; text-align: right !important; }
.dg-name-separator { height: 1px; background: #be5dff !important; margin-bottom: 15px !important; }
.dg-name-label { color: #fff; font-family: 'Michroma', sans-serif; font-size: 14px; }
.dg-company-label { color: rgba(255,255,255,0.7); font-family: 'Michroma', sans-serif; font-size: 11px; }



/* =========================================================
   CARD SHAKE + COLOUR GLITCH (from IP module)
   ========================================================= */

@keyframes dg-card-glitch {
    0%   { transform: translate(0,0);       filter: hue-rotate(0deg)   saturate(1)   brightness(1); }
    10%  { transform: translate(-4px,0);    filter: hue-rotate(90deg)  saturate(3)   brightness(1.3) sepia(0.5); }
    20%  { transform: translate(4px,-2px);  filter: hue-rotate(200deg) saturate(4)   brightness(0.9) sepia(0.7); }
    30%  { transform: translate(-3px,2px);  filter: hue-rotate(310deg) saturate(5)   brightness(1.5) sepia(1); }
    40%  { transform: translate(3px,0);     filter: hue-rotate(60deg)  saturate(3.5) brightness(1.2) sepia(0.4); }
    50%  { transform: translate(-2px,-1px); filter: hue-rotate(170deg) saturate(2.5) brightness(1.1) sepia(0.6); }
    60%  { transform: translate(2px,1px);   filter: hue-rotate(250deg) saturate(4)   brightness(0.8) sepia(0.8); }
    70%  { transform: translate(-1px,0);    filter: hue-rotate(30deg)  saturate(2)   brightness(1.2) sepia(0.3); }
    100% { transform: translate(0,0);       filter: hue-rotate(0deg)   saturate(1)   brightness(1); }
}

.dg-card-galactic.dg-card-glitch-fire {
    animation: dg-card-glitch 0.6s steps(2) forwards !important;
}

/* 6. CONSOLIDATED MOBILE OPTIMIZATION & 96% MASTER SYNC */
@media (max-width: 767px) {
    /* Container & Grid Sync */
    .testimonial-parallax-section { 
        padding: 40px 0 103px !important; 
    }
    .dg-total-lock-1000 {
        width: 96% !important;
        max-width: 96% !important;
        margin: 0 auto !important;
        padding: 10px !important;
        background: rgba(0, 0, 0, 0.6) !important;
    }

    /* Header & Glitch Frame */
    .dg-header-area {
        padding: 0 !important; 
        margin-bottom: 20px !important;
    }
    .dg-unified-frame { 
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important; 
        padding: 45px 25px !important; 
        box-sizing: border-box !important;
    }
    
* Typography Overrides for Mobile */
.dg-visionary-badge { 
    font-size: 16px !important; 
    letter-spacing: 2px !important; 
    
/* SAFE FORCED BOLD FOR MOBILE (NO RED TEXT) */
    font-weight: normal !important;
    text-shadow: 0.3px 0px 0px #be5dff, 
                 -0.3px 0px 0px #be5dff !important;
    }
  
  .dg-stardust-manifesto { 
    font-size: 16px !important; 
    line-height: 1.7 !important;
}
    .dg-copy-green {
        font-size: 16px !important; /* Increased for mobile */
        line-height: 1.6 !important;
    }

    /* Slider & Card Alignment */
    .testimonail-slide.slider { width: 100% !important; }
    .slick-item-wrapper { padding: 0 !important; }

    .dg-card-galactic { 
        width: 100% !important;
        padding: 45px 25px !important; 
        min-height: 580px !important; 
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-between !important; 
        border-radius: 5px !important;
    }

    .dg-badge-style {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}