/* ===== DattaGenics custom motion + effects CSS ===== */
.dg-gradient-text{background:linear-gradient(90deg,#EC4899 0%,#A855F7 55%,#6366F1 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;display:inline-block;}
@keyframes dgFloatY{0%,100%{transform:translateY(0);}50%{transform:translateY(-14px);}}
@keyframes dgFloatY2{0%,100%{transform:translateY(0);}50%{transform:translateY(10px);}}
@keyframes dgPulseSoft{0%,100%{opacity:.55;transform:scale(1);}50%{opacity:1;transform:scale(1.08);}}
@keyframes dgDrift{0%{transform:translate(0,0);}50%{transform:translate(18px,-12px);}100%{transform:translate(0,0);}}
@keyframes dgStripeMove{0%{background-position:0 0;}100%{background-position:200px 200px;}}
@keyframes dgBlinkCursor{0%,50%{opacity:1;}51%,100%{opacity:0;}}
.dg-float-anim{animation:dgFloatY 5s ease-in-out infinite;}
.dg-float-anim2{animation:dgFloatY2 6s ease-in-out infinite;}
.dg-pulse-soft{animation:dgPulseSoft 2.4s ease-in-out infinite;}
.dg-drift-anim{animation:dgDrift 8s ease-in-out infinite;}
.dg-drift-anim-delay{animation:dgDrift 8s ease-in-out infinite;animation-delay:-3s;}
.dg-stripe-anim{animation:dgStripeMove 12s linear infinite;}
.dg-cursor-blink{display:inline-block;width:3px;height:0.85em;margin-left:6px;background:#A855F7;vertical-align:middle;animation:dgBlinkCursor 1s step-end infinite;}

/* Blobs */
.dg-blob{position:absolute;border-radius:50%;filter:blur(64px);pointer-events:none;z-index:0;}

/* Dot pattern overlay */
.dg-dot-pattern{position:relative;}
.dg-dot-pattern::before{content:'';position:absolute;inset:0;opacity:.06;background-image:radial-gradient(rgba(255,255,255,0.6) 1px, transparent 1px);background-size:16px 16px;pointer-events:none;border-radius:inherit;}

/* ---------- Horizontal marquee ---------- */
.dg-marquee-wrap{width:100%;overflow:hidden;}
.dg-marquee-track{display:flex;width:max-content;animation-name:dgMarqueeScroll;animation-timing-function:linear;animation-iteration-count:infinite;animation-duration:30s;}
.dg-marquee-wrap:hover .dg-marquee-track{animation-play-state:paused;}
@keyframes dgMarqueeScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- Vertical marquee (Why Choose Us collage) ---------- */
.dg-marquee-vwrap{height:100%;overflow:hidden;border-radius:16px;}
.dg-marquee-vtrack{display:flex !important;flex-direction:column !important;gap:16px;width:100%;animation-name:dgMarqueeScrollV;animation-timing-function:linear;animation-iteration-count:infinite;animation-duration:22s;}
.dg-marquee-vtrack-reverse{animation-direction:reverse;animation-duration:26s;}
.dg-marquee-vwrap:hover .dg-marquee-vtrack{animation-play-state:paused;}
@keyframes dgMarqueeScrollV{from{transform:translateY(0);}to{transform:translateY(-50%);}}

/* ---------- Tools & Platforms marquee ---------- */
.dg-tools-marquee-wrap{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(to right, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);}
.dg-tools-marquee-row{display:flex !important;align-items:center !important;gap:56px;width:max-content;padding:10px 0;animation:dgToolsScroll 32s linear infinite;flex-wrap:nowrap !important;}
.dg-tools-marquee-reverse{animation-direction:reverse;}
.dg-tools-marquee-wrap:hover .dg-tools-marquee-row{animation-play-state:paused;}
.dg-tool-chip{display:flex !important;align-items:center;white-space:nowrap;flex:0 0 auto !important;opacity:.8;transition:opacity .2s,transform .15s;width:auto !important;}
.dg-tool-chip:hover{opacity:1;transform:translateY(-2px);}

/* ---------- Clients marquee ---------- */
.dg-clients-marquee-wrap{width:100%;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(to right, transparent 0, #000 100px, #000 calc(100% - 100px), transparent 100%);mask-image:linear-gradient(to right, transparent 0, #000 100px, #000 calc(100% - 100px), transparent 100%);}
.dg-clients-marquee-track{display:flex !important;align-items:center !important;width:max-content;animation:dgClientsScroll 36s linear infinite;flex-wrap:nowrap !important;}
.dg-clients-marquee-wrap:hover .dg-clients-marquee-track{animation-play-state:paused;}
.dg-client-chip{display:flex !important;align-items:center;justify-content:center;padding:20px 28px;height:150px;flex:0 0 auto !important;width:auto !important;margin:0 14px;border:1.5px solid rgba(255,255,255,0.15);border-radius:18px;background:rgba(255,255,255,0.04);transition:border-color .25s,background .25s,transform .2s;}
.dg-client-chip img{height:100px;width:auto;max-width:240px;object-fit:contain;opacity:.95;}
.dg-client-chip:hover{border-color:rgba(168,85,247,0.5);background:rgba(255,255,255,0.08);transform:translateY(-3px);}
@keyframes dgClientsScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ---------- Services card hover-flip ---------- */
.dg-svc-card{position:relative;overflow:hidden;cursor:pointer;height:320px;}
.dg-svc-bg{position:absolute;inset:0;width:100%;height:100%;transition:transform .5s;}
.dg-svc-bg img{width:100%;height:100%;object-fit:cover;display:block;}
.dg-svc-card:hover .dg-svc-bg{transform:scale(1.1);}
.dg-svc-card::before{content:'';position:absolute;inset:0;background:linear-gradient(to top, rgba(0,0,0,.8), rgba(0,0,0,.3) 60%, transparent);pointer-events:none;z-index:1;}
.dg-svc-icon-badge{transition:transform .3s;position:relative;z-index:2;}
.dg-svc-card:hover .dg-svc-icon-badge{transform:translateY(-4px) rotate(6deg);}
.dg-svc-default{position:relative;z-index:2;transition:opacity .3s,transform .3s;}
.dg-svc-card:hover .dg-svc-default{opacity:0;transform:translateY(8px);}
.dg-svc-overlay{position:absolute;inset:0;z-index:3;background:rgba(91,61,245,.92);display:flex;flex-direction:column;justify-content:flex-end;padding:20px;opacity:0;transform:translateY(16px);transition:opacity .3s,transform .3s;pointer-events:none;}
.dg-svc-card:hover .dg-svc-overlay{opacity:1;transform:translateY(0);}

/* ---------- SEO deep-dive card hover ---------- */
.dg-seo-card{transition:box-shadow .3s,transform .3s;}
.dg-seo-card:hover{box-shadow:0 20px 40px -10px rgba(0,0,0,.15);transform:translateY(-4px);}

/* ---------- Why Choose Us numbered ghost labels ---------- */
.dg-why-wrap{position:relative;overflow:visible !important;}
.dg-why-num{position:absolute !important;top:-28px !important;left:-8px !important;color:rgba(255,255,255,.05) !important;font-weight:800 !important;font-size:64px !important;line-height:1 !important;pointer-events:none !important;z-index:0 !important;font-family:'Plus Jakarta Sans',sans-serif !important;}
.dg-why-num-right{left:auto !important;right:-8px !important;text-align:right;width:100%;}
.dg-why-card{transition:background .3s,transform .3s;position:relative;z-index:1;background:rgba(255,255,255,.05) !important;border:1px solid rgba(255,255,255,.1) !important;border-radius:16px !important;padding:24px !important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);}
.dg-why-card:hover{background:rgba(255,255,255,.1) !important;transform:translateY(-4px);}

/* ---------- Craftsmen carousel ---------- */
.dg-craft-main{position:relative;overflow:hidden;}
.dg-craft-main::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg, transparent 40%, #5B3DF5 90%, #A855F7 100%);mix-blend-mode:multiply;pointer-events:none;}
.dg-craft-peek{opacity:.5;}
.dg-craft-arrow{transition:all .2s;cursor:pointer;}
.dg-craft-arrow:hover{background:#fff !important;color:#111 !important;}

/* ---------- Utility: full opacity image cover already in dg-cover-img ---------- */
.dg-hover-lift{transition:transform .3s,box-shadow .3s;}
.dg-hover-lift:hover{transform:translateY(-4px);}

/* ---------- Header dropdown ---------- */
.dg-nav-dropdown{opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .25s,transform .25s,visibility .25s;pointer-events:none;}
.dg-nav-dropdown-wrap:hover .dg-nav-dropdown{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto;}

/* ---------- Site header ---------- */
.dg-site-header{position:sticky !important;top:0;z-index:999;background:rgba(255,255,255,0.95) !important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #f3f4f6;box-shadow:0 1px 2px rgba(0,0,0,0.04);}
.xpro-elementor-horizontal-navbar-nav>li>a{font-size:16px !important;font-weight:500 !important;color:#374151 !important;}
.xpro-elementor-horizontal-navbar-nav>li>a:hover{color:#5B3DF5 !important;}
.xpro-elementor-horizontal-navbar-nav>li.current-menu-item>a, .xpro-elementor-horizontal-navbar-nav>li:first-child>a{color:#5B3DF5 !important;font-weight:600 !important;}
.xpro-elementor-dropdown-menu{background:#fff !important;border:1px solid #f3f4f6 !important;border-radius:12px !important;box-shadow:0 20px 25px -5px rgba(0,0,0,0.1) !important;padding:8px 0 !important;}
.xpro-elementor-dropdown-menu a{color:#6b7280 !important;font-size:15px !important;padding:8px 16px !important;}
.xpro-elementor-dropdown-menu a:hover{color:#5B3DF5 !important;background:#faf5ff !important;}
.dg-site-header .elementor-button{transition:all .2s !important;}
.dg-site-header .elementor-button:hover{background-color:#4A2EE0 !important;transform:scale(1.05);}

/* ---------- Hero layering utilities (avoids unreliable Elementor --position/--z-index vars) ---------- */
.dg-hero-section{position:relative !important;overflow:hidden !important;background-color:#0B0A14 !important;}
.dg-abs-fill{position:absolute !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;width:100% !important;height:100% !important;}
.dg-abs-fill .elementor-widget-container, .dg-abs-fill.e-con{width:100% !important;height:100% !important;}
.dg-hero-bg-img{z-index:1 !important;transition:opacity 1s ease-in-out;background-size:cover !important;background-position:center center !important;}
.dg-hero-bg-img img{width:100%;height:100%;object-fit:cover;}
.dg-hero-overlay{z-index:2 !important;pointer-events:none !important;}
.dg-hero-blob-1{position:absolute !important;top:-40px !important;left:-40px !important;width:320px !important;height:320px !important;background:rgba(255,255,255,.1) !important;border-radius:50% !important;filter:blur(64px);z-index:2 !important;pointer-events:none !important;}
.dg-hero-blob-2{position:absolute !important;bottom:-80px !important;right:-60px !important;width:420px !important;height:420px !important;background:radial-gradient(circle, #7B5EFF 0%, #EC4899 55%, transparent 75%) !important;opacity:.55;border-radius:50% !important;filter:blur(64px);z-index:2 !important;pointer-events:none !important;}
.dg-hero-content{position:relative !important;z-index:3 !important;}
.dg-trust-badge-icon{color:rgba(255,255,255,.4) !important;flex:0 0 auto !important;}
.dg-hero-cta-pill{width:fit-content !important;display:inline-flex !important;background:none !important;}
.dg-hero-cta-pill .elementor-button{background:linear-gradient(90deg, #7B5EFF 0%, #EC4899 100%) !important;border-radius:999px !important;color:#fff !important;width:auto !important;display:inline-flex !important;box-shadow:0 10px 30px -8px rgba(123,94,255,.6) !important;}
.dg-hero-cta-pill .elementor-button:hover{filter:brightness(1.08);}
.dg-hero-cta-pill:hover .dg-hero-cta-arrow{transform:translateX(4px);}
.dg-hero-cta-arrow{transition:transform .3s;}

.dg-hero-bg-1-init{opacity:.7;}
.dg-hero-bg-2-init{opacity:0;}
.dg-trust-badge-row{display:flex !important;align-items:center;gap:12px;}

.dg-trust-badge-row{flex-wrap:nowrap !important;}
@media (max-width:480px){.dg-trust-badge-row span{font-size:11px !important;}}

/* DG_SVC_LAYOUT_FIX */
.dg-svc-icon-badge{position:absolute !important;left:16px !important;bottom:56px !important;top:auto !important;}
.dg-svc-default{position:absolute !important;left:16px !important;right:16px !important;bottom:16px !important;width:auto !important;}
.dg-svc-overlay .elementor-button{background:transparent !important;padding:0 !important;}
.dg-svc-overlay .elementor-button:hover{opacity:.85;}

/* DG_WHY_FIX */
.dg-why-card .elementor-icon-box-icon{margin-bottom:14px !important;}
.dg-why-card .elementor-icon-box-title{margin-bottom:8px !important;}

/* DG_WHY_VIMG */
.dg-why-vimg{width:100% !important;border-radius:14px !important;object-fit:cover !important;display:block !important;height:auto !important;}
.dg-why-collage{height:560px !important;overflow:hidden !important;position:relative !important;}

/* DG_WHY_NUM_INNER_FIX */
.dg-why-num .elementor-heading-title{color:inherit !important;font-size:inherit !important;font-weight:inherit !important;line-height:inherit !important;font-family:inherit !important;}

/* DG_WHY_COLLAGE_ROW_FIX */
.dg-why-collage{flex-wrap:nowrap !important;}
.dg-why-collage > .dg-marquee-vwrap{width:50% !important;flex:1 1 50% !important;max-width:50% !important;}

/* DG_CASE_CARD_FIX */
.dg-marquee-track{flex-wrap:nowrap !important;align-items:stretch !important;}
.dg-marquee-card{width:340px !important;min-width:340px !important;max-width:340px !important;flex:0 0 340px !important;}
.dg-marquee-wrap{width:100% !important;}

/* DG_CIRCLE_BTN */
.dg-circle-btn .elementor-button{width:40px !important;height:40px !important;padding:0 !important;border-radius:999px !important;display:flex !important;align-items:center !important;justify-content:center !important;}
.dg-circle-btn .elementor-button-icon{margin:0 !important;}
.dg-circle-btn .elementor-button-text{display:none !important;}

/* DG_CIRCLE_BTN_LG */
.dg-circle-btn-lg .elementor-button{width:48px !important;height:48px !important;padding:0 !important;border-radius:999px !important;display:flex !important;align-items:center !important;justify-content:center !important;}
.dg-circle-btn-lg .elementor-button-icon{margin:0 !important;}
.dg-circle-btn-lg .elementor-button-text{display:none !important;}
.dg-circle-btn-lg .elementor-button:hover{transform:scale(1.1);}

/* DG_CIRCLE_BTN_COLORS */
.dg-circle-btn-outline .elementor-button{background:#FFFFFF !important;color:#374151 !important;border:2px solid #E5E7EB !important;}
.dg-circle-btn-outline .elementor-button:hover{border-color:#5B3DF5 !important;color:#5B3DF5 !important;}
.dg-circle-btn-outline svg{fill:currentColor !important;}
.dg-circle-btn-solid .elementor-button{background:#5B3DF5 !important;color:#FFFFFF !important;border:none !important;}
.dg-circle-btn-solid .elementor-button:hover{background:#4A2EE0 !important;}
.dg-circle-btn-solid svg,.dg-circle-btn-outline svg{width:16px !important;height:16px !important;}

/* DG_CIRCLE_BTN_MAIN_COLOR */
.dg-circle-btn .elementor-button{background:#5B3DF5 !important;color:#FFFFFF !important;}
.dg-circle-btn .elementor-button:hover{background:#4A2EE0 !important;}

/* DG_TESTI_MARQUEE */
.dg-marquee-track-reverse{animation-direction:reverse !important;animation-duration:38s !important;}
.dg-marquee-card-lg{width:400px !important;min-width:400px !important;max-width:400px !important;flex:0 0 400px !important;}
.dg-marquee-card-lg .elementor-widget-star-rating .elementor-star-rating i{color:#F59E0B !important;}

/* DG_CRAFT_LAYOUT */
.dg-craft-wrap{position:relative !important;display:flex !important;align-items:center !important;justify-content:center !important;height:420px !important;}
.dg-craft-main{width:256px !important;height:400px !important;border-radius:24px !important;box-shadow:0 25px 50px -12px rgba(0,0,0,.5) !important;z-index:10 !important;flex:0 0 auto !important;}
.dg-craft-main img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important;position:relative !important;z-index:1 !important;}
.dg-craft-namebox{position:absolute !important;left:16px !important;right:16px !important;bottom:16px !important;background:#fff !important;border-radius:16px !important;padding:12px 16px !important;text-align:center !important;box-shadow:0 10px 25px -5px rgba(0,0,0,.3) !important;z-index:2 !important;}
.dg-craft-peek{position:absolute !important;width:160px !important;height:288px !important;border-radius:24px !important;overflow:hidden !important;}
.dg-craft-peek img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important;}
.dg-craft-peek-prev{left:0 !important;}
.dg-craft-peek-next{right:0 !important;}
.dg-craft-arrow{position:absolute !important;top:50% !important;transform:translateY(-50%) !important;width:44px !important;height:44px !important;border-radius:999px !important;border:1px solid rgba(255,255,255,.3) !important;background:transparent !important;color:#fff !important;display:flex !important;align-items:center !important;justify-content:center !important;z-index:20 !important;}
.dg-craft-arrow-prev{left:-8px !important;}
.dg-craft-arrow-next{right:-8px !important;}

/* DG_CRAFT_ARROW_BTN */
.dg-craft-arrow .elementor-button{width:44px !important;height:44px !important;padding:0 !important;border-radius:999px !important;background:transparent !important;border:1px solid rgba(255,255,255,.3) !important;color:#fff !important;display:flex !important;align-items:center !important;justify-content:center !important;}
.dg-craft-arrow .elementor-button:hover{background:#fff !important;color:#111 !important;}
.dg-craft-arrow .elementor-button-text{display:none !important;}
.dg-craft-arrow .elementor-button-icon{margin:0 !important;}

/* DG_SEO_AUDIT_CTA */
.dg-seo-audit-card{position:relative;overflow:hidden;}
.dg-seo-audit-card::before{content:'';position:absolute;inset:0;opacity:.06;background-image:radial-gradient(rgba(255,255,255,0.6) 1px, transparent 1px);background-size:16px 16px;pointer-events:none;z-index:0;}
.dg-seo-audit-card::after{content:'';position:absolute;top:-96px;left:50%;transform:translateX(-50%);width:288px;height:288px;border-radius:50%;filter:blur(64px);background:radial-gradient(circle,#A855F7 0%, transparent 70%);opacity:.35;pointer-events:none;z-index:0;animation:dgDrift 8s ease-in-out infinite;}
.dg-seo-audit-card > .e-con-inner{position:relative;z-index:1;}

/* DG_CONTACT_BG */
.dg-contact-section{position:relative;overflow:hidden;}
.dg-contact-section::before{content:'';position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(90deg, rgba(91,61,245,0.12) 0%, transparent 60%), linear-gradient(rgba(243,244,246,0.82), rgba(243,244,246,0.82)), url('https://auagency.dattagenics.com/wp-content/uploads/2026/09/dg-australia-map-bg.jpg');background-size:cover,cover,cover;background-position:center,center,center;background-repeat:no-repeat;}
.dg-contact-section::after{content:'';position:absolute;top:33%;left:50%;width:16px;height:16px;border-radius:50%;background:#5B3DF5;z-index:0;pointer-events:none;animation:dgPulseSoft 2.4s ease-in-out infinite;}
.dg-contact-section > .e-con-inner{position:relative;z-index:1;}

/* DG_HIDE_PAGE_TITLE */
body.page-id-33 .wp-block-post-title{display:none !important;}
body.page-id-33 main.wp-block-group > .wp-block-group.alignfull.has-global-padding{padding-top:0 !important;padding-bottom:0 !important;}
body.page-id-33 main.wp-block-group{margin-top:0 !important;padding-top:0 !important;}

/* DG_FULLWIDTH_CONTENT_FIX */
body.elementor-page .entry-content.has-global-padding{padding-left:0 !important;padding-right:0 !important;}

/* DG_SEO_AUDIT_CARD_WIDTH_FIX */
.dg-seo-audit-card{max-width:1000px !important;width:100% !important;margin-left:auto !important;margin-right:auto !important;}

/* DG_BOXED_CONTAINER_WIDTH_FIX */
body.page-id-33 .e-con-boxed:not(.dg-seo-audit-card){max-width:1400px !important;width:100% !important;margin-left:auto !important;margin-right:auto !important;}

/* DG_HEADER_REBUILD */
.dg-site-header{height:64px !important;min-height:64px !important;max-height:64px !important;display:flex !important;align-items:center !important;padding-top:0 !important;padding-bottom:0 !important;padding-left:24px !important;padding-right:24px !important;background:rgba(255,255,255,0.95) !important;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #f3f4f6 !important;position:sticky !important;top:0 !important;z-index:999 !important;width:100% !important;}
.dg-header-inner{max-width:1400px !important;width:100% !important;margin-left:auto !important;margin-right:auto !important;display:flex !important;align-items:center !important;justify-content:space-between !important;flex-wrap:nowrap !important;}
.dg-header-logo-row{gap:10px !important;align-items:center !important;flex-wrap:nowrap !important;}
.dg-header-logo-icon{flex:0 0 auto !important;width:40px !important;}
.dg-header-logo-icon img{width:40px !important;height:40px !important;border-radius:12px !important;display:block !important;}
.dg-header-logo-text .elementor-heading-title{margin:0 !important;white-space:nowrap !important;font-family:'Plus Jakarta Sans',sans-serif !important;font-weight:800 !important;font-size:22px !important;line-height:1 !important;}
.dg-header-cta-btn .elementor-button{background:#5B3DF5 !important;color:#FFFFFF !important;font-weight:600 !important;border-radius:12px !important;transition:all .2s ease !important;}
.dg-header-cta-btn .elementor-button:hover{background:#4A2EE0 !important;color:#FFFFFF !important;transform:scale(1.05);}
.xpro-elementor-horizontal-navbar-nav>li>a{font-family:'Outfit','Plus Jakarta Sans',sans-serif !important;font-size:16px !important;font-weight:500 !important;color:#374151 !important;}
.xpro-elementor-horizontal-navbar-nav>li>a:hover{color:#5B3DF5 !important;}
.xpro-elementor-horizontal-navbar-nav>li.current-menu-item>a{color:#5B3DF5 !important;}

/* DG_HEADER_NAV_WRAP_FIX */
@media (min-width: 1025px){
.dg-header-logo-row{flex:0 0 auto !important;width:auto !important;max-width:none !important;}
.xpro-elementor-horizontal-navbar-wrapper{width:auto !important;max-width:none !important;flex:1 1 auto !important;display:flex !important;justify-content:flex-end !important;}
.xpro-elementor-horizontal-navbar{width:auto !important;max-width:none !important;}
.xpro-elementor-horizontal-navbar-nav{flex-wrap:nowrap !important;justify-content:flex-end !important;align-items:center !important;gap:28px !important;white-space:nowrap !important;}
.xpro-elementor-horizontal-navbar-nav>li{flex:0 0 auto !important;}
.dg-header-inner{gap:24px !important;}
.dg-header-cta-btn{flex:0 0 auto !important;}
}

/* DG_HEADER_MOBILE_FIX */
.dg-header-logo-row{flex:0 0 auto !important;width:auto !important;max-width:none !important;}
.dg-header-inner .e-con-inner{flex-wrap:nowrap !important;flex-direction:row !important;align-items:center !important;justify-content:space-between !important;width:100% !important;height:auto !important;}
.dg-header-inner{height:auto !important;}
@media (max-width:1024px){
.dg-header-cta-btn .elementor-button{padding:8px 14px !important;font-size:13px !important;white-space:nowrap !important;}
}

/* DG_HEADER_MOBILE_CTA_HIDE (matches source: CTA + nav hidden below lg=1024px, hamburger only) */
@media (max-width:1024px){
.dg-header-cta-btn{display:none !important;}
}

/* DG_FOOTER_REBUILD */
.dg-footer-cols{max-width:1400px !important;margin-left:auto !important;margin-right:auto !important;}
@media (min-width:1025px){
  .dg-footer-cols{flex-wrap:nowrap !important;}
  .dg-footer-col{flex:1 1 0 !important;width:auto !important;max-width:none !important;}
}
@media (max-width:1024px){
  .dg-footer-col{flex:1 1 100% !important;width:100% !important;}
}
/* Logo row */
.dg-footer-logo-row{gap:10px !important;}
.dg-footer-logo-icon{flex:0 0 auto !important;width:40px !important;}
.dg-footer-logo-icon img{width:40px !important;height:40px !important;border-radius:12px !important;display:block !important;}
.dg-footer-logo-text .elementor-heading-title{margin:0 !important;white-space:nowrap !important;font-family:'Plus Jakarta Sans',sans-serif !important;font-weight:800 !important;font-size:20px !important;line-height:1 !important;}
/* Social icons: rounded square buttons */
.dg-footer-social .elementor-icon-list-items{display:flex !important;gap:12px !important;}
.dg-footer-social .elementor-icon-list-item{background:rgba(255,255,255,0.1) !important;border-radius:12px !important;width:40px !important;height:40px !important;display:flex !important;align-items:center !important;justify-content:center !important;transition:background .2s ease !important;}
.dg-footer-social .elementor-icon-list-item:hover{background:#5B3DF5 !important;}
.dg-footer-social .elementor-icon-list-item a{display:flex !important;align-items:center !important;justify-content:center !important;width:100% !important;height:100% !important;}
/* Remove checkmark/bullet icons from About Link + legal lists */
.dg-footer-about-list .elementor-icon-list-icon,
.dg-footer-legal-list .elementor-icon-list-icon{display:none !important;}
.dg-footer-about-list .elementor-icon-list-text,
.dg-footer-about-list a{color:rgba(255,255,255,0.5) !important;padding-left:0 !important;transition:color .2s ease !important;}
.dg-footer-about-list a:hover{color:#ffffff !important;}
.dg-footer-legal-list{display:flex !important;gap:24px !important;}
.dg-footer-legal-list .elementor-icon-list-items{display:flex !important;gap:24px !important;}
.dg-footer-legal-list .elementor-icon-list-text,
.dg-footer-legal-list a{color:rgba(255,255,255,0.5) !important;padding-left:0 !important;transition:color .2s ease !important;}
.dg-footer-legal-list a:hover{color:#ffffff !important;}
/* Newsletter input */
.dg-footer-newsletter-input-wrap{width:100% !important;}
.dg-footer-newsletter-input{width:100% !important;box-sizing:border-box !important;background:rgba(255,255,255,0.1) !important;border:1px solid rgba(255,255,255,0.1) !important;border-radius:12px !important;color:#ffffff !important;padding:12px 16px !important;font-size:14px !important;font-family:inherit !important;outline:none !important;}
.dg-footer-newsletter-input::placeholder{color:rgba(255,255,255,0.4) !important;}
/* Subscribe button */
.dg-footer-subscribe-btn .elementor-button{background:#5B3DF5 !important;color:#FFFFFF !important;font-weight:600 !important;border-radius:12px !important;width:100% !important;justify-content:center !important;transition:all .2s ease !important;}
.dg-footer-subscribe-btn .elementor-button:hover{background:#4A2EE0 !important;}
/* Bottom bar */
.dg-footer-bottom-row{display:flex !important;flex-wrap:wrap !important;justify-content:space-between !important;align-items:center !important;gap:12px !important;}

/* DG_FOOTER_SOCIAL_NOWRAP_FIX */
.dg-footer-social .elementor-icon-list-items{flex-wrap:nowrap !important;}

/* DG_CTA_FOOTER_GAP_FIX */
.wp-site-blocks > footer{margin-top:0 !important;}
.dg-cta-banner-section{margin-bottom:0 !important;}
.dg-site-footer{margin-top:0 !important;}
/* CTA banner buttons - native color controls unreliable, force via CSS */
.dg-cta-btn-primary .elementor-button{background:#FFFFFF !important;color:#5B3DF5 !important;font-weight:700 !important;border-radius:12px !important;border:none !important;}
.dg-cta-btn-primary .elementor-button:hover{background:#F3F0FF !important;color:#5B3DF5 !important;}
.dg-cta-btn-secondary .elementor-button{background:transparent !important;color:#FFFFFF !important;border:2px solid rgba(255,255,255,0.5) !important;border-radius:12px !important;}
.dg-cta-btn-secondary .elementor-button:hover{background:rgba(255,255,255,0.1) !important;border-color:#ffffff !important;}
/* Footer top alignment + spacing */
.dg-footer-cols{align-items:flex-start !important;padding-top:80px !important;padding-bottom:60px !important;}
.dg-footer-contact-list .elementor-icon-list-item{align-items:flex-start !important;}
.dg-footer-contact-list .elementor-icon-list-text{line-height:1.6 !important;}
.dg-footer-contact-list .elementor-icon-list-icon{margin-top:3px !important;}

/* DG_FOOTER_TYPOGRAPHY_FIX */
/* 1. Top alignment baseline */
.dg-footer-cols{align-items:flex-start !important;}
.dg-footer-logo-row{align-items:flex-start !important;gap:10px !important;}
.dg-footer-logo-text-wrap{align-items:flex-start !important;gap:0 !important;}
.dg-footer-logo-text .elementor-heading-title{margin:0 !important;white-space:nowrap !important;font-family:'Plus Jakarta Sans',sans-serif !important;font-weight:800 !important;font-size:20px !important;line-height:1.2 !important;}
/* 2. Column 1: bio + social */
.dg-footer-bio p{margin:0 !important;line-height:1.6 !important;color:rgba(255,255,255,0.5) !important;font-size:15px !important;}
.dg-footer-social{margin-top:24px !important;}
/* 3. Column 2: About Link spacing */
.dg-footer-about-list .elementor-icon-list-items{gap:0 !important;}
.dg-footer-about-list .elementor-icon-list-item{margin-bottom:12px !important;}
.dg-footer-about-list .elementor-icon-list-item:last-child{margin-bottom:0 !important;}
.dg-footer-about-list .elementor-icon-list-text,
.dg-footer-about-list a{font-size:15px !important;font-weight:400 !important;color:rgba(255,255,255,0.5) !important;}
/* 4. Column 3: Get in Touch rows */
.dg-footer-contact-list .elementor-icon-list-items{gap:16px !important;}
.dg-footer-contact-list .elementor-icon-list-item{display:flex !important;align-items:flex-start !important;gap:12px !important;margin-bottom:0 !important;}
.dg-footer-contact-list .elementor-icon-list-icon{flex:0 0 18px !important;width:18px !important;margin-top:3px !important;}
.dg-footer-contact-list .elementor-icon-list-text{flex:1 1 auto !important;line-height:1.5 !important;color:rgba(255,255,255,0.5) !important;font-size:15px !important;}
/* 5. Column 4: Newsletter */
.dg-footer-newsletter-subtitle p{margin:0 0 16px 0 !important;color:rgba(255,255,255,0.4) !important;font-size:13px !important;line-height:1.5 !important;}
.dg-footer-newsletter-col .e-con-inner{gap:12px !important;}
.dg-footer-newsletter-col{gap:12px !important;}
.dg-footer-newsletter-input-wrap, .dg-footer-subscribe-btn{width:100% !important;}

/* DG_SEO_DEEPDIVE_REBUILD */
/* Title */
.dg-seo-title-row{display:flex !important;flex-wrap:wrap !important;justify-content:center !important;align-items:baseline !important;gap:10px 10px !important;text-align:center !important;}
.dg-seo-title-row .elementor-heading-title{font-family:'Plus Jakarta Sans',sans-serif !important;font-weight:800 !important;font-size:42px !important;color:#111827 !important;line-height:1.25 !important;margin:0 !important;}
.dg-seo-word-wrap{position:relative !important;display:inline-flex !important;flex-direction:column !important;align-items:center !important;}
.dg-seo-highlight-word .elementor-heading-title{font-size:42px !important;font-weight:800 !important;}
.dg-seo-underline{position:absolute !important;left:50% !important;bottom:-14px !important;transform:translateX(-50%) !important;width:76px !important;pointer-events:none !important;}
.dg-seo-underline img{width:100% !important;height:auto !important;display:block !important;}
.dg-seo-subheading p{max-width:600px !important;margin:0 auto !important;color:#6B7280 !important;font-size:16px !important;text-align:center !important;line-height:1.6 !important;}
/* Card base */
.dg-seo-card{padding:28px !important;border:2px solid #E5E7EB !important;border-radius:16px !important;box-shadow:none !important;background:#ffffff !important;transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease !important;}
.dg-seo-card:hover{transform:translateY(-4px) !important;box-shadow:0 12px 28px rgba(17,24,39,0.08) !important;border-color:#E5E7EB !important;}
/* Icon badge (scoped to this section only) */
.dg-seo-card .elementor-widget-icon-box .elementor-icon-box-wrapper{justify-content:flex-start !important;text-align:left !important;}
.dg-seo-card .elementor-icon-box-icon{width:48px !important;height:48px !important;min-width:48px !important;max-width:48px !important;border-radius:12px !important;display:flex !important;align-items:center !important;justify-content:center !important;margin:0 0 12px 0 !important;}
.dg-seo-card .elementor-icon-box-icon svg{width:22px !important;height:22px !important;}
.dg-seo-card .elementor-icon-box-icon svg, .dg-seo-card .elementor-icon-box-icon svg path{fill:#ffffff !important;}
.dg-seo-card .elementor-icon-box-icon i{color:#ffffff !important;}
/* Unique per-card gradients */
.dg-seo-icon-technical .elementor-icon-box-icon{background:linear-gradient(135deg,#5B3DF5,#A855F7) !important;}
.dg-seo-icon-local .elementor-icon-box-icon{background:linear-gradient(135deg,#EC4899,#A855F7) !important;}
.dg-seo-icon-ai .elementor-icon-box-icon{background:linear-gradient(135deg,#6366F1,#5B3DF5) !important;}
.dg-seo-icon-ecommerce .elementor-icon-box-icon{background:linear-gradient(135deg,#FF9F40,#EC4899) !important;}
.dg-seo-icon-enterprise .elementor-icon-box-icon{background:linear-gradient(135deg,#5B3DF5,#EC4899) !important;}
.dg-seo-icon-content .elementor-icon-box-icon{background:linear-gradient(135deg,#A855F7,#6366F1) !important;}
.dg-seo-icon-linkbuilding .elementor-icon-box-icon{background:linear-gradient(135deg,#EC4899,#5B3DF5) !important;}
.dg-seo-icon-digitalpr .elementor-icon-box-icon{background:linear-gradient(135deg,#6366F1,#EC4899) !important;}
.dg-seo-icon-international .elementor-icon-box-icon{background:linear-gradient(135deg,#5B3DF5,#A855F7) !important;}
/* Card title + body */
.dg-seo-card-title .elementor-heading-title{font-size:18px !important;font-weight:700 !important;color:#111827 !important;margin:0 0 8px 0 !important;line-height:1.3 !important;}
.dg-seo-card-body p{font-size:14px !important;line-height:1.6 !important;color:#6B7280 !important;margin:0 0 16px 0 !important;}
/* Learn More link */
.dg-seo-learnmore{margin-top:auto !important;}
.dg-seo-learnmore a.elementor-button{color:#5B3DF5 !important;background:transparent !important;font-weight:600 !important;font-size:14px !important;padding:0 !important;display:inline-flex !important;align-items:center !important;transition:transform .2s ease, color .2s ease !important;}
.dg-seo-learnmore a.elementor-button:hover{transform:translateX(4px) !important;color:#4A2EE0 !important;background:transparent !important;}

/* DG_ABOUT_COLLAGE_REBUILD */
.dg-about-collage{position:relative !important;height:480px !important;width:100% !important;}
.dg-about-img-1{position:absolute !important;top:0 !important;left:0 !important;width:300px !important;height:360px !important;border-radius:16px !important;border:4px solid #ffffff !important;box-shadow:0 20px 25px -5px rgba(0,0,0,0.15),0 8px 10px -6px rgba(0,0,0,0.1) !important;z-index:10 !important;}
.dg-about-img-2{position:absolute !important;bottom:0 !important;right:0 !important;width:260px !important;height:300px !important;border-radius:16px !important;border:4px solid #ffffff !important;box-shadow:0 20px 25px -5px rgba(0,0,0,0.15),0 8px 10px -6px rgba(0,0,0,0.1) !important;z-index:20 !important;}
.dg-about-badge{position:absolute !important;top:50% !important;left:50% !important;transform:translate(-50%,-50%) !important;background:#5B3DF5 !important;border-radius:16px !important;z-index:30 !important;box-shadow:0 20px 25px -5px rgba(91,61,245,0.35) !important;width:auto !important;min-width:160px !important;}
.dg-about-badge .elementor-heading-title{color:#ffffff !important;}
.dg-about-badge div:first-child .elementor-heading-title{font-weight:800 !important;font-size:28px !important;}
/* Accent bar + pulsing dots */
.dg-about-accent-bar{position:absolute !important;left:-16px !important;bottom:40px !important;width:6px !important;height:100px !important;background:linear-gradient(180deg,#5B3DF5,#A855F7) !important;border-radius:4px !important;z-index:5 !important;}
.dg-about-dots-row{position:absolute !important;bottom:-14px !important;left:20px !important;z-index:25 !important;display:flex !important;}
.dg-about-dot{width:10px !important;height:10px !important;border-radius:50% !important;animation:dgPulseSoft 1.8s ease-in-out infinite !important;}
.dg-about-dot-purple{background:#5B3DF5 !important;}
.dg-about-dot-orange{background:#F59E0B !important;animation-delay:.3s !important;}
.dg-about-dot-green{background:#10B981 !important;animation-delay:.6s !important;}
/* Kicker with accent lines */
.dg-about-kicker-row{display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:10px !important;}
.dg-about-kicker-line{width:24px !important;height:2px !important;background:#5B3DF5 !important;border-radius:2px !important;}
/* Benefits list: circular purple badge instead of bare checkmark */
.dg-about-benefits .elementor-icon-list-icon{background:rgba(91,61,245,0.1) !important;width:24px !important;height:24px !important;border-radius:50% !important;display:flex !important;align-items:center !important;justify-content:center !important;margin-right:4px !important;}
.dg-about-benefits .elementor-icon-list-icon i, .dg-about-benefits .elementor-icon-list-icon svg{color:#5B3DF5 !important;fill:#5B3DF5 !important;font-size:13px !important;width:13px !important;height:13px !important;}
/* Founder card */
.dg-about-founder-card{border:1px solid #F3F4F6 !important;background:#F9FAFB !important;}
.dg-about-founder-divider{width:1px !important;align-self:stretch !important;background:#E5E7EB !important;min-height:32px !important;}

/* DG_WHY_CARD_ICON_FIX */
.dg-why-card .elementor-widget-icon-box .elementor-icon-box-wrapper{justify-content:flex-start !important;text-align:left !important;}
.dg-why-card .elementor-icon-box-icon{width:44px !important;height:44px !important;min-width:44px !important;max-width:44px !important;border-radius:10px !important;background:rgba(255,255,255,0.1) !important;display:flex !important;align-items:center !important;justify-content:center !important;margin:0 0 14px 0 !important;}
.dg-why-card .elementor-icon-box-icon svg{width:20px !important;height:20px !important;}
.dg-why-card .elementor-icon-box-icon svg, .dg-why-card .elementor-icon-box-icon svg path{fill:#ffffff !important;}
.dg-why-card .elementor-icon-box-icon i{color:#ffffff !important;}
/* Collage top/bottom fade masks */
.dg-why-collage::before, .dg-why-collage::after{content:'';position:absolute;left:0;right:0;height:60px;z-index:5;pointer-events:none;}
.dg-why-collage::before{top:0;background:linear-gradient(to bottom,#0B0A14 0%,transparent 100%);}
.dg-why-collage::after{bottom:0;background:linear-gradient(to top,#0B0A14 0%,transparent 100%);}

/* DG_ABOUT_KICKER_LINE_FIX */
.dg-about-kicker-line{width:24px !important;height:2px !important;min-height:2px !important;max-height:2px !important;flex:0 0 2px !important;background:#5B3DF5 !important;border-radius:2px !important;align-self:center !important;}

/* DG_ABOUT_KICKER_LINE_FIX_V2 (higher specificity to beat Elementor's own per-element min-height rule) */
body .dg-about-kicker-line.dg-about-kicker-line{width:24px !important;height:2px !important;min-height:2px !important;max-height:2px !important;flex-basis:2px !important;flex-grow:0 !important;flex-shrink:0 !important;background:#5B3DF5 !important;border-radius:2px !important;align-self:center !important;}

/* DG_ABOUT_KICKER_LINE_FIX_V3 (flex shorthand was overriding width via flex-basis on main axis) */
body .dg-about-kicker-line.dg-about-kicker-line{flex:none !important;width:24px !important;min-width:24px !important;max-width:24px !important;height:2px !important;min-height:2px !important;max-height:2px !important;background:#5B3DF5 !important;border-radius:2px !important;align-self:center !important;}

/* DG_ABOUT_KICKER_LINE_FIX_V4 (root cause: default 10px container padding was forcing min height under border-box) */
body .dg-about-kicker-line.dg-about-kicker-line{padding:0 !important;flex:none !important;width:24px !important;min-width:24px !important;max-width:24px !important;height:2px !important;min-height:2px !important;max-height:2px !important;background:#5B3DF5 !important;border-radius:2px !important;align-self:center !important;}

/* DG_ABOUT_DECORATIVE_PADDING_FIX (same root cause: default 10px container padding on empty decorative elements) */
body .dg-about-dot.dg-about-dot{padding:0 !important;flex:none !important;width:10px !important;min-width:10px !important;max-width:10px !important;height:10px !important;min-height:10px !important;max-height:10px !important;}
body .dg-about-accent-bar.dg-about-accent-bar{padding:0 !important;}
body .dg-about-dots-row.dg-about-dots-row{padding:0 !important;}


/* DG_WHY_ALIGN_CENTER_FIX_V3 (the actual 3-col flex row is the auto-generated .e-con-inner INSIDE the boxed wrapper 6986ba0, not 6986ba0 itself) */
body .elementor-element-6986ba0.elementor-element-6986ba0{margin-top:48px !important;}
body .elementor-element-6986ba0.elementor-element-6986ba0 > .e-con-inner{align-items:center !important;}
body .elementor-element-19b20d7.elementor-element-19b20d7,
body .elementor-element-ed49e40.elementor-element-ed49e40{gap:32px !important;}


/* DG_HERO_BLOB_MOTION_FIX (blobs had size/color/position but no animation at all) */
.dg-hero-blob-1{animation:dgFloatY 7s ease-in-out infinite !important;}
.dg-hero-blob-2{animation:dgDrift 10s ease-in-out infinite !important;}

/* DG_SCROLL_REVEAL_ENGINE */
.dg-reveal,.dg-reveal-left,.dg-reveal-right,.dg-reveal-scale{opacity:0;will-change:opacity,transform;transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1);}
.dg-reveal{transform:translateY(32px);}
.dg-reveal-left{transform:translateX(-40px);}
.dg-reveal-right{transform:translateX(40px);}
.dg-reveal-scale{transform:scale(.92);}
.dg-reveal.dg-revealed,.dg-reveal-left.dg-revealed,.dg-reveal-right.dg-revealed,.dg-reveal-scale.dg-revealed{opacity:1 !important;transform:none !important;}
/* NOTE: Elementor's 'boxed' content-width containers (.e-con-boxed) always insert one auto-generated .e-con-inner wrapper div holding the real children, so .dg-stagger must target through it too, not just direct children. */
.dg-stagger>*,.dg-stagger>.e-con-inner>*{opacity:0;transform:translateY(24px);transition:opacity .6s cubic-bezier(.22,.61,.36,1),transform .6s cubic-bezier(.22,.61,.36,1);}
.dg-stagger.dg-revealed>*,.dg-stagger.dg-revealed>.e-con-inner>*{opacity:1;transform:none;}
.dg-stagger.dg-revealed>*:nth-child(1),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(1){transition-delay:0ms}
.dg-stagger.dg-revealed>*:nth-child(2),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(2){transition-delay:90ms}
.dg-stagger.dg-revealed>*:nth-child(3),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(3){transition-delay:180ms}
.dg-stagger.dg-revealed>*:nth-child(4),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(4){transition-delay:270ms}
.dg-stagger.dg-revealed>*:nth-child(5),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(5){transition-delay:360ms}
.dg-stagger.dg-revealed>*:nth-child(6),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(6){transition-delay:450ms}
.dg-stagger.dg-revealed>*:nth-child(7),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(7){transition-delay:540ms}
.dg-stagger.dg-revealed>*:nth-child(8),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(8){transition-delay:630ms}
.dg-stagger.dg-revealed>*:nth-child(9),.dg-stagger.dg-revealed>.e-con-inner>*:nth-child(9){transition-delay:720ms}
@media (prefers-reduced-motion: reduce){
.dg-reveal,.dg-reveal-left,.dg-reveal-right,.dg-reveal-scale,.dg-stagger>*{opacity:1 !important;transform:none !important;transition:none !important;}
}

/* DG_TOOLS_MARQUEE_FULLBLEED (breaks the marquee wrap out of the section's boxed .e-con-inner max-width:1140px, edge-to-edge across the viewport, while the heading above it stays centered/boxed) */
body .elementor-element-9e22fb0.elementor-element-9e22fb0{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
}

/* DG_TOOLS_SCROLL_KEYFRAMES_FIX (the animation:dgToolsScroll declaration on .dg-tools-marquee-row had no matching @keyframes block anywhere in this file -- the animation-name was being applied by the browser but produced zero visible motion since there were no keyframes to interpolate. This restores the actual keyframes.) */
@keyframes dgToolsScroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* DG_TESTIMONIALS_REBUILD */
/* Full-bleed marquee: e900ef0 is the boxed ancestor wrapping the marquee-wrap (2ac1f4d), same pattern as the Tools & Platforms fix -- break it out to the true viewport edge. */
body .elementor-element-e900ef0.elementor-element-e900ef0{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
.dg-testimonials-section .dg-marquee-wrap{
  -webkit-mask-image:linear-gradient(to right, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);
  mask-image:linear-gradient(to right, transparent 0, #000 80px, #000 calc(100% - 80px), transparent 100%);
}

/* Card sizing: 420px wide, 16px side margin each = 32px total gap between cards (track gap is 0) */
body .dg-marquee-card-lg.dg-marquee-card-lg{
  width:420px !important;
  min-width:420px !important;
  max-width:420px !important;
  flex:0 0 420px !important;
  margin:0 16px !important;
  border:1px solid rgba(255,255,255,0.6) !important;
  box-shadow:0 4px 20px -2px rgba(91,61,245,0.06) !important;
}

/* Quote icon */
.dg-testi-quote{width:28px !important;height:24px !important;}
.dg-testi-quote .elementor-icon{width:28px !important;height:24px !important;display:flex !important;align-items:center !important;justify-content:flex-start !important;}
.dg-testi-quote svg, .dg-testi-quote svg path{fill:rgba(91,61,245,0.15) !important;}
.dg-testi-quote i{color:rgba(91,61,245,0.15) !important;font-size:24px !important;}

/* Author row: avatar sizing + Google badge pinned right */
body .dg-avatar-48.dg-avatar-48{width:44px !important;min-width:44px !important;max-width:44px !important;height:44px !important;min-height:44px !important;max-height:44px !important;border-radius:9999px !important;}
.dg-testi-nametitle.dg-testi-nametitle{flex:0 0 auto !important;width:auto !important;}
.dg-testi-google-badge.dg-testi-google-badge{flex:0 0 auto !important;width:auto !important;margin-left:auto !important;}
/* Author row bottom border */
.dg-testi-authorrow.dg-testi-authorrow{border-top:1px solid #F3F4F6 !important;}
.dg-marquee-card-lg [class*="e-con"] > .dg-testi-google-badge,
.dg-testi-google-badge{margin-left:auto !important;}
.dg-testi-google-icon{width:16px !important;height:16px !important;}

/* Card content stretches full height of the card so the author row can sit at the bottom via the card's own column flow */
.dg-marquee-card-lg{height:100% !important;}
/* DG_TESTI_NAMETITLE_BADGE_BOXED_FIX_V2 */
.dg-testi-authorrow.dg-testi-authorrow{flex-wrap:nowrap !important;align-items:center !important;}
.dg-testi-nametitle.dg-testi-nametitle,
.dg-testi-google-badge.dg-testi-google-badge{flex:0 0 auto !important;width:auto !important;max-width:none !important;}
.dg-testi-nametitle.dg-testi-nametitle > .e-con-inner,
.dg-testi-google-badge.dg-testi-google-badge > .e-con-inner{width:auto !important;max-width:none !important;flex-wrap:nowrap !important;flex-basis:auto !important;}
.dg-testi-google-badge.dg-testi-google-badge{margin-left:auto !important;}

/* DG_CONTACT_REBUILD */
/* v2: real photo bg layer (separate from gradient so opacities don't multiply together), spec-matched spacing/shadows, flex-start icon rows, hover slide */
.dg-contact-section{position:relative !important;overflow:hidden !important;min-height:580px !important;background:linear-gradient(90deg, rgba(91,61,245,0.12) 0%, transparent 60%), #F3F4F6 !important;}
.dg-contact-section::before{
  content:'';
  position:absolute;
  inset:0;
  width:100%;height:100%;
  background-image:url('https://images.unsplash.com/photo-1524661135-423995f22d0b?w=1600&h=600&fit=crop&auto=format');
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  opacity:0.20;
  mix-blend-mode:multiply;
  z-index:0;
  pointer-events:none;
}
.dg-contact-section::after{
  content:'';
  position:absolute;
  width:16px;height:16px;
  border-radius:50%;
  background:#5B3DF5;
  top:33%;
  left:50%;
  z-index:2;
  animation:dgMapPulse 2s ease-in-out infinite;
  pointer-events:none;
}
@keyframes dgMapPulse{
  0%{box-shadow:0 0 0 0 rgba(91,61,245,0.5);}
  70%{box-shadow:0 0 0 16px rgba(91,61,245,0);}
  100%{box-shadow:0 0 0 0 rgba(91,61,245,0);}
}
.dg-contact-inner.dg-contact-inner{position:relative !important;z-index:10 !important;max-width:1400px !important;margin-left:auto !important;margin-right:auto !important;}

/* Left form card */
.dg-contact-card.dg-contact-card{box-shadow:0 25px 50px -12px rgba(0,0,0,0.15) !important;}
.dg-contact-subtitle.dg-contact-subtitle{margin-bottom:28px !important;}

/* Icon-box (info items): label above value, flex-start rows, hover slide */
.dg-contact-info-item .elementor-icon-box-content{display:flex !important;flex-direction:column-reverse !important;}
.dg-contact-info-item .elementor-icon-box-description{font-size:12px !important;font-weight:700 !important;letter-spacing:0.05em !important;text-transform:uppercase !important;color:#9CA3AF !important;margin:0 0 2px 0 !important;}
.dg-contact-info-item .elementor-icon-box-title{margin:0 !important;font-size:16px !important;}
.dg-contact-info-item .elementor-icon-box-wrapper{align-items:flex-start !important;gap:16px;transition:transform 0.2s ease;}
.dg-contact-info-item:hover .elementor-icon-box-wrapper{transform:translateX(4px);}
.dg-contact-info-item .elementor-icon-box-icon{width:48px !important;height:48px !important;min-width:48px !important;flex-shrink:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;border-radius:12px !important;background:#FFFFFF !important;box-shadow:0 4px 12px rgba(0,0,0,0.06) !important;}
.dg-contact-info-item .elementor-icon-box-icon .elementor-icon{width:20px !important;height:20px !important;}
.dg-contact-info-item .elementor-icon-box-icon svg{fill:#5B3DF5 !important;width:20px !important;height:20px !important;}

/* WPForms: 2-column field layout */
.dg-contact-card .wpforms-field-container{display:flex !important;flex-wrap:wrap !important;gap:20px 20px !important;}
.dg-contact-card .wpforms-field{margin-bottom:0 !important;padding:0 !important;}
.dg-contact-card #wpforms-0-field_0-container,
.dg-contact-card #wpforms-0-field_1-container,
.dg-contact-card #wpforms-0-field_2-container,
.dg-contact-card #wpforms-0-field_3-container{flex:0 0 calc(50% - 10px) !important;max-width:calc(50% - 10px) !important;}
.dg-contact-card #wpforms-0-field_4-container,
.dg-contact-card #wpforms-0-field_5-container{flex:0 0 100% !important;max-width:100% !important;}
.dg-contact-card .wpforms-field-label{font-size:13px !important;font-weight:600 !important;color:#374151 !important;margin-bottom:6px !important;display:block !important;}
.dg-contact-card .wpforms-required-label{color:#EF4444 !important;}
.dg-contact-card input[type=text],
.dg-contact-card input[type=email],
.dg-contact-card input[type=tel],
.dg-contact-card select,
.dg-contact-card textarea{width:100% !important;border:1px solid #E5E7EB !important;border-radius:12px !important;padding:12px 16px !important;font-size:15px !important;color:#111827 !important;font-family:inherit !important;background:#fff !important;box-shadow:none !important;transition:border-color .2s ease, box-shadow .2s ease !important;}
.dg-contact-card textarea{resize:none !important;min-height:110px !important;}
.dg-contact-card input::placeholder,
.dg-contact-card textarea::placeholder{color:#9CA3AF !important;opacity:1 !important;}
.dg-contact-card input:focus,
.dg-contact-card select:focus,
.dg-contact-card textarea:focus{outline:none !important;border-color:#5B3DF5 !important;box-shadow:0 0 0 2px rgba(91,61,245,0.1) !important;}
.dg-contact-card .wpforms-submit-container{margin-top:8px !important;}
.dg-contact-card button.wpforms-submit,
.dg-contact-card input.wpforms-submit{width:100% !important;background:#5B3DF5 !important;color:#fff !important;font-size:16px !important;font-weight:700 !important;padding:14px !important;border-radius:12px !important;border:none !important;cursor:pointer !important;box-shadow:0 10px 20px -5px rgba(91,61,245,0.35) !important;transition:background .2s ease, transform .2s ease !important;}
.dg-contact-card button.wpforms-submit:hover,
.dg-contact-card input.wpforms-submit:hover{background:#4A2EE0 !important;transform:scale(1.02) !important;}

/* ============================================================
   DG_PAGE1_SEO_SERVICES — new page shared + section-specific CSS
   ============================================================ */

/* --- Kicker / section subtitle (reused across all 3 new pages) --- */
.dg-kicker{
  font-size:13px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;
  color:#A855F7;margin-bottom:12px;display:block;
}
.dg-hero-section .dg-kicker{ color:#A855F7; }
.dg-section-subtitle{
  font-size:16px;color:#6B7280;max-width:640px;margin:16px auto 0;line-height:1.6;
}
.dg-pillars-section{ background:#FFFFFF; }
.dg-pillars-section .dg-section-subtitle{ margin-left:auto;margin-right:auto; }

/* --- Buttons (reused across all 3 new pages) --- */
.dg-btn-primary,.dg-btn-primary a,a.dg-btn-primary{
  background:#5B3DF5 !important;color:#FFFFFF !important;border-radius:10px !important;
  padding:16px 32px !important;font-weight:700 !important;font-size:15px !important;
  box-shadow:0 10px 20px -5px rgba(91,61,245,0.35) !important;
  transition:background 0.2s ease, transform 0.2s ease !important;
  border:none !important;
}
.dg-btn-primary:hover,a.dg-btn-primary:hover{
  background:#4A2EE0 !important;transform:translateY(-2px);
}
.dg-btn-outline,.dg-btn-outline a,a.dg-btn-outline{
  background:transparent !important;color:#FFFFFF !important;border-radius:10px !important;
  padding:16px 32px !important;font-weight:700 !important;font-size:15px !important;
  border:1.5px solid rgba(255,255,255,0.25) !important;
  transition:border-color 0.2s ease, background 0.2s ease !important;
}
.dg-btn-outline:hover,a.dg-btn-outline:hover{
  border-color:rgba(255,255,255,0.6) !important;background:rgba(255,255,255,0.05) !important;
}

/* --- Hero (page hero variant, dark, radial glow) --- */
.dg-page-hero{
  position:relative;overflow:hidden;background-color:#0B0A14;padding-top:140px !important;padding-bottom:100px !important;
}
.dg-page-hero::before{
  content:'';position:absolute;top:-20%;left:50%;transform:translateX(-50%);
  width:900px;height:900px;border-radius:50%;
  background:radial-gradient(circle, rgba(91,61,245,0.35) 0%, rgba(168,85,247,0.15) 40%, transparent 70%);
  pointer-events:none;z-index:0;filter:blur(10px);
}
.dg-page-hero > .e-con-inner, .dg-page-hero .e-con-inner{ position:relative;z-index:1; }
.dg-hero-breadcrumb{
  font-size:13px;color:rgba(255,255,255,0.5);margin-bottom:20px;
}
.dg-hero-breadcrumb a{ color:rgba(255,255,255,0.7);text-decoration:none; }
.dg-hero-breadcrumb a:hover{ color:#A855F7; }
.dg-hero-badges{ margin-bottom:20px; }
.dg-hero-badges .elementor-icon-list-item{
  background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);
  border-radius:100px;padding:8px 16px;color:#FFFFFF;font-size:13px;font-weight:600;
  margin-right:10px;margin-bottom:10px;
}
.dg-hero-badges .elementor-icon-list-icon i,.dg-hero-badges .elementor-icon-list-icon svg{ color:#A855F7;fill:#A855F7; }
.dg-hero-line{
  color:#FFFFFF !important;line-height:1.15 !important;margin:0 !important;
}
.dg-hero-subtitle{
  color:rgba(255,255,255,0.65) !important;line-height:1.65 !important;margin-top:24px !important;max-width:600px;
}

/* --- Process roadmap (4-step, with connecting line) --- */
.dg-process-section{ background:#F4F2FF; }
.dg-process-row{ position:relative;overflow:hidden; }
.dg-process-row::before{
  content:'';position:absolute;top:22px;left:12.5%;width:75%;height:2px;
  max-width:75%;
  background:repeating-linear-gradient(90deg, #D8CFFB 0, #D8CFFB 8px, transparent 8px, transparent 16px);
  z-index:0;
}
.dg-process-step{ position:relative;z-index:1;background:transparent; }
.dg-process-num{
  color:#5B3DF5 !important;margin-bottom:12px !important;
  background:#FFFFFF;width:56px;height:56px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 8px 16px -4px rgba(91,61,245,0.25);
}
.dg-process-title{ color:#111827 !important;margin-bottom:8px !important; }
.dg-process-body{ color:#6B7280 !important;line-height:1.6 !important; }

/* --- Full-bleed breakout for boxed ancestor containers on new pages (class-based) --- */
body .dg-tools-boxed-ancestor.dg-tools-boxed-ancestor,
body .e-con.dg-tools-boxed-ancestor{
  width:100% !important;max-width:1400px !important;
}

/* ============================================================
   DG_PAGE2_WEBSITE_DESIGN
   ============================================================ */
.dg-hero-mockup-col{ position:relative; }
.dg-hero-mockup-wrap{
  animation: dgFloatY 6s ease-in-out infinite;
}
.dg-hero-mockup{
  overflow:hidden;box-shadow:0 40px 80px -20px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.06);
}
.dg-mockup-bar{
  background:#F3F4F6 !important;border-bottom:1px solid #E5E7EB;
}

/* --- Capabilities section reuses .dg-seo-card / .dg-pillars-section styling already defined --- */
.dg-capabilities-section{ background:#FFFFFF; }

/* --- Comparison checklist --- */
.dg-compare-section{ }
.dg-compare-col-title{ margin-bottom:20px !important; }
.dg-compare-list .elementor-icon-list-item{ margin-bottom:14px !important;align-items:flex-start; }
.dg-compare-list .elementor-icon-list-text{ font-size:15px;color:#374151;line-height:1.5; }
.dg-compare-us .elementor-icon-list-icon i{ color:#16A34A !important; font-size:18px; }
.dg-compare-us .elementor-icon-list-icon svg{ fill:#16A34A !important; width:18px;height:18px; }
.dg-compare-them .elementor-icon-list-icon i{ color:#DC2626 !important; font-size:18px; }
.dg-compare-them .elementor-icon-list-icon svg{ fill:#DC2626 !important; width:18px;height:18px; }
.dg-compare-list .elementor-icon-list-icon{ margin-right:10px; margin-top:2px; }

.dg-section-header-centered.dg-section-header-centered{ margin-left:auto !important;margin-right:auto !important; }

/* ============================================================
   DG_PAGE3_CASE_STUDIES
   ============================================================ */
.dg-case-hero-section{ position:relative; }

/* --- Filter pills --- */
.dg-filter-row{ }
.dg-filter-pill .elementor-button{
  background:#F4F2FF !important;color:#5B3DF5 !important;border:1px solid transparent !important;
  border-radius:100px !important;padding:10px 22px !important;font-weight:700 !important;font-size:14px !important;
  box-shadow:none !important;transition:background .2s ease,color .2s ease;cursor:pointer;
}
.dg-filter-pill .elementor-button:hover{ background:#EDE9FF !important;color:#5B3DF5 !important; }
.dg-filter-pill-active.dg-filter-pill-active .elementor-button{
  background:#5B3DF5 !important;color:#FFFFFF !important;
}

/* --- Case study cards --- */
.dg-case-grid{ }
.dg-case-card{ overflow:hidden;transition:transform .25s ease, box-shadow .25s ease; }
.dg-case-card:hover{ transform:translateY(-6px); }
.dg-case-thumb img{ width:100%;height:220px;object-fit:cover;display:block; }
.dg-case-badge-row{ margin-bottom:10px !important; }
.dg-case-badge{ letter-spacing:.05em;text-transform:uppercase; }
.dg-case-title{ margin-bottom:10px !important;line-height:1.3 !important; }
.dg-case-summary{ line-height:1.6 !important;margin-bottom:16px !important; }
.dg-case-metric{ display:inline-block;background:rgba(22,163,74,0.1) !important;padding:6px 14px;border-radius:100px;margin-bottom:16px !important; }
.dg-case-link .elementor-button{
  background:transparent !important;color:#5B3DF5 !important;padding:0 !important;font-weight:700 !important;
  font-size:14px !important;box-shadow:none !important;border:none !important;
}
.dg-case-link .elementor-button:hover{ color:#4A2EE0 !important; }

.dg-stats-row-centered.dg-stats-row-centered{ justify-content:center !important; }
.dg-stats-item.dg-stats-item{ flex:0 0 auto !important;width:auto !important; }

.dg-filter-row-centered.dg-filter-row-centered{ justify-content:center !important; }
