/* =========================================================
   DRIFTMARK MEDIA — GLOBAL STYLES v3.0
   Topbar · Dark Header · Nav · Animations · Inner Pages
   Font: Outfit | Accent: Indigo #4F46E5 + Cyan #06B6D4
   ========================================================= */

/* ---- Reset + Font ---- */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Outfit',-apple-system,BlinkMacSystemFont,sans-serif;color:#1e293b;line-height:1.6}

/* ---- AOS scroll animations ---- */
[data-aos]{opacity:0;transform:translateY(28px);transition:opacity 0.65s ease,transform 0.65s ease}
[data-aos].aos-animate{opacity:1!important;transform:none!important}
[data-aos="fade-right"]{transform:translateX(-28px)}
[data-aos="fade-left"]{transform:translateX(28px)}
[data-aos="zoom-in"]{transform:scale(0.85)}

/* Hero above-fold — bypass JS, animate with CSS */
.dh-hero [data-aos],.dh-hero-stats-bar [data-aos]{opacity:1!important;transform:none!important;animation:heroFadeIn 0.8s ease forwards}
.dh-hero [data-aos="fade-right"]{animation:heroFadeRight 0.9s ease forwards}
.dh-hero [data-aos="fade-left"]{animation:heroFadeLeft 0.9s ease forwards}
@keyframes heroFadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes heroFadeRight{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
@keyframes heroFadeLeft{from{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}

/* =========================================================
   TOP BAR
   ========================================================= */
.dm-topbar{background:#0a0f1e;color:rgba(255,255,255,.72);font-size:12.5px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.dm-topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}
.dm-topbar-left{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dm-tb-sep{color:rgba(255,255,255,.2);font-size:11px}
.dm-topbar-item{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,.72);text-decoration:none;transition:color .2s;font-size:12.5px}
.dm-topbar-item:hover{color:#06B6D4}
.dm-topbar-right{display:flex;align-items:center;gap:7px}
.dm-social{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.14);border-radius:6px;color:rgba(255,255,255,.6);text-decoration:none;transition:all .2s}
.dm-social:hover{background:linear-gradient(135deg,#4F46E5,#06B6D4);border-color:transparent;color:#fff;transform:translateY(-2px)}

/* =========================================================
   MAIN HEADER — DARK
   ========================================================= */
.dm-header{position:sticky;top:0;z-index:1000;background:#0f172a;border-bottom:1px solid rgba(255,255,255,.08);transition:box-shadow .3s,background .3s}
.dm-header.dm-scrolled{box-shadow:0 4px 32px rgba(0,0,0,.4);background:#0b1120}
.dm-header-inner{display:flex;align-items:center;justify-content:space-between;height:72px;gap:24px}
.dm-logo img{height:52px;width:auto;display:block}

/* ---- Desktop Nav ---- */
.dm-nav{flex:1}
.dm-nav-list{display:flex;align-items:center;justify-content:center;gap:2px;list-style:none;padding:0;margin:0}
.dm-nav-list>li{position:relative}
.dm-nav-list>li>a{display:flex;align-items:center;gap:5px;padding:10px 15px;font-size:14.5px;font-weight:600;color:rgba(255,255,255,.82);text-decoration:none;border-radius:8px;transition:color .2s,background .2s;white-space:nowrap;font-family:'Outfit',sans-serif}
.dm-nav-list>li>a:hover,.dm-nav-list>li.active>a{color:#fff;background:rgba(255,255,255,.1)}
.dm-chev{opacity:.6;transition:transform .25s}
.dm-has-dropdown:hover .dm-chev{transform:rotate(180deg)}

/* ---- Dropdown ---- */
.dm-dropdown{position:absolute;top:calc(100% + 12px);left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 24px 64px rgba(0,0,0,.2),0 4px 16px rgba(0,0,0,.08);min-width:300px;padding:10px;list-style:none;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .25s,transform .25s,visibility .25s;z-index:100}
.dm-has-dropdown:hover .dm-dropdown{opacity:1;pointer-events:all;visibility:visible;transform:translateX(-50%) translateY(0)}
.dm-dropdown::before{content:'';position:absolute;top:-7px;left:50%;transform:translateX(-50%);border:7px solid transparent;border-bottom:7px solid #fff;border-top:none;filter:drop-shadow(0 -1px 1px rgba(0,0,0,.08))}
.dm-dropdown li a{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;text-decoration:none;transition:background .2s}
.dm-dropdown li a:hover{background:#f8fafc}
.dm-dd-ic{width:44px;height:44px;min-width:44px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(79,70,229,.1),rgba(6,182,212,.1));border-radius:10px;color:#4F46E5}
.dm-dropdown li a strong{display:block;font-size:14px;font-weight:700;color:#0f172a;font-family:'Outfit',sans-serif}
.dm-dropdown li a small{display:block;font-size:12px;color:#94a3b8;margin-top:2px;font-weight:400}

/* ---- Header CTA ---- */
.dm-header-cta{display:flex;align-items:center;gap:12px}
.dm-btn-cta{background:linear-gradient(135deg,#4F46E5,#06B6D4);color:#fff;padding:10px 22px;border-radius:8px;font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap;transition:opacity .2s,transform .2s,box-shadow .2s;box-shadow:0 4px 16px rgba(79,70,229,.4);font-family:'Outfit',sans-serif}
.dm-btn-cta:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 6px 20px rgba(79,70,229,.5)}

/* ---- Hamburger (light bars for dark header) ---- */
.dm-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}
.dm-hamburger span{display:block;width:24px;height:2.5px;background:rgba(255,255,255,.9);border-radius:2px;transition:all .3s}
.dm-hamburger.open span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}
.dm-hamburger.open span:nth-child(2){opacity:0}
.dm-hamburger.open span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}

/* ---- Mobile Nav ---- */
.dm-mobile-nav{display:none;max-height:0;overflow:hidden;background:#111827;border-top:1px solid rgba(255,255,255,.08);transition:max-height .4s ease}
.dm-mobile-nav.open{max-height:640px}
.dm-mobile-nav ul{list-style:none;padding:16px 20px}
.dm-mobile-nav li a,.dm-mob-toggle{display:flex;justify-content:space-between;width:100%;padding:13px 0;font-size:15px;font-weight:600;color:rgba(255,255,255,.85);text-decoration:none;border:none;background:none;cursor:pointer;text-align:left;border-bottom:1px solid rgba(255,255,255,.07);font-family:'Outfit',sans-serif}
.dm-mob-sub{list-style:none;max-height:0;overflow:hidden;transition:max-height .3s;padding-left:16px}
.dm-mob-sub.open{max-height:300px}
.dm-mob-sub li a{font-size:14px;font-weight:500;color:rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.05)}
.dm-mob-cta{display:block!important;margin-top:12px;background:linear-gradient(135deg,#4F46E5,#06B6D4)!important;color:#fff!important;padding:13px 20px!important;border-radius:8px!important;text-align:center!important;border:none!important;font-weight:700!important;justify-content:center!important}

/* =========================================================
   SHARED UTILITIES
   ========================================================= */
.container{max-width:1200px;margin:0 auto;padding:0 24px}
.dh-grad{background:linear-gradient(135deg,#4F46E5,#06B6D4);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.dh-chip{display:inline-block;background:rgba(79,70,229,.08);color:#4F46E5;border:1px solid rgba(79,70,229,.2);border-radius:50px;padding:6px 16px;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;margin-bottom:14px;font-family:'Outfit',sans-serif}
.dh-chip-light{background:rgba(255,255,255,.15);color:#fff;border-color:rgba(255,255,255,.3)}
.dh-section-head{text-align:center;max-width:680px;margin:0 auto 60px}
.dh-section-head h2{font-size:clamp(28px,3.5vw,44px);font-weight:800;color:#0f172a;line-height:1.2;margin-bottom:14px;font-family:'Outfit',sans-serif}
.dh-section-head p{font-size:16.5px;color:#64748b;line-height:1.75}

.dh-btn-primary{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#4F46E5,#06B6D4);color:#fff;padding:14px 30px;border-radius:8px;font-weight:700;font-size:15px;text-decoration:none;transition:opacity .2s,transform .2s,box-shadow .2s;box-shadow:0 6px 24px rgba(79,70,229,.35);font-family:'Outfit',sans-serif}
.dh-btn-primary:hover{opacity:.9;transform:translateY(-2px);box-shadow:0 10px 32px rgba(79,70,229,.45)}
.dh-btn-outline{display:inline-flex;align-items:center;gap:8px;border:2px solid rgba(255,255,255,.4);color:rgba(255,255,255,.9);padding:12px 28px;border-radius:8px;font-weight:700;font-size:15px;text-decoration:none;transition:all .2s;font-family:'Outfit',sans-serif}
.dh-btn-outline:hover{background:rgba(255,255,255,.1);color:#fff}
.dh-btn-outline-dark{display:inline-flex;align-items:center;border:2px solid #4F46E5;color:#4F46E5;padding:13px 32px;border-radius:8px;font-weight:700;font-size:15px;text-decoration:none;transition:all .2s;font-family:'Outfit',sans-serif}
.dh-btn-outline-dark:hover{background:#4F46E5;color:#fff}
.dh-btn-white{display:inline-block;background:#fff;color:#4F46E5;padding:14px 32px;border-radius:8px;font-weight:700;font-size:15px;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.15);transition:all .2s;font-family:'Outfit',sans-serif}
.dh-btn-white:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(0,0,0,.2)}

/* =========================================================
   HERO — NEW DESIGN
   ========================================================= */
.dh-hero{position:relative;background:#060b18;overflow:hidden;padding:110px 0 0;min-height:100vh;display:flex;align-items:center}
.dh-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 90% 70% at 65% 30%,rgba(79,70,229,.22) 0%,transparent 65%),radial-gradient(ellipse 70% 55% at 15% 85%,rgba(6,182,212,.15) 0%,transparent 55%),radial-gradient(ellipse 50% 40% at 85% 80%,rgba(139,92,246,.1) 0%,transparent 50%);pointer-events:none}
.dh-hero-grid{position:absolute;inset:0;background-image:radial-gradient(circle,rgba(255,255,255,.06) 1.5px,transparent 1.5px);background-size:40px 40px;pointer-events:none}
.dh-hero-noise{position:absolute;inset:0;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cdefs%3E%3Cstyle%3Eline%7Bstroke:rgba(255,255,255,.9);stroke-width:.6%7Dcircle%7Bfill:rgba(255,255,255,.9)%7D%3C/style%3E%3C/defs%3E%3Cline x1='20' y1='0' x2='20' y2='20'/%3E%3Cline x1='20' y1='20' x2='60' y2='20'/%3E%3Cline x1='60' y1='20' x2='60' y2='0'/%3E%3Cline x1='80' y1='40' x2='120' y2='40'/%3E%3Cline x1='80' y1='20' x2='80' y2='60'/%3E%3Cline x1='0' y1='80' x2='40' y2='80'/%3E%3Cline x1='40' y1='80' x2='40' y2='120'/%3E%3Cline x1='100' y1='80' x2='100' y2='120'/%3E%3Cline x1='100' y1='80' x2='120' y2='80'/%3E%3Ccircle cx='20' cy='0' r='2'/%3E%3Ccircle cx='20' cy='20' r='2'/%3E%3Ccircle cx='60' cy='20' r='2'/%3E%3Ccircle cx='60' cy='0' r='2'/%3E%3Ccircle cx='80' cy='40' r='2'/%3E%3Ccircle cx='120' cy='40' r='2'/%3E%3Ccircle cx='80' cy='20' r='2'/%3E%3Ccircle cx='80' cy='60' r='2'/%3E%3Ccircle cx='0' cy='80' r='2'/%3E%3Ccircle cx='40' cy='80' r='2'/%3E%3Ccircle cx='40' cy='120' r='2'/%3E%3Ccircle cx='100' cy='80' r='2'/%3E%3Ccircle cx='100' cy='120' r='2'/%3E%3C/svg%3E");pointer-events:none}
.dh-orb{position:absolute;border-radius:50%;filter:blur(100px);animation:orbFloat 14s ease-in-out infinite;pointer-events:none}
.dh-orb-1{width:750px;height:750px;background:rgba(79,70,229,.18);top:-250px;right:-80px;animation-delay:0s}
.dh-orb-2{width:550px;height:550px;background:rgba(6,182,212,.12);bottom:-120px;left:-80px;animation-delay:5s}
.dh-orb-3{width:400px;height:400px;background:rgba(139,92,246,.1);top:30%;left:40%;animation-delay:2.5s}
@keyframes orbFloat{0%,100%{transform:translateY(0) scale(1)}33%{transform:translateY(-30px) scale(1.03)}66%{transform:translateY(20px) scale(.97)}}
.dh-hero-lines{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.dh-hline{position:absolute;height:1px;background:linear-gradient(90deg,transparent,rgba(79,70,229,.35),rgba(6,182,212,.35),transparent);animation:hlineSweep 8s ease-in-out infinite}
.dh-hline-1{width:60%;top:22%;left:-60%;animation-delay:0s}
.dh-hline-2{width:40%;top:55%;left:-40%;animation-delay:2.8s}
.dh-hline-3{width:50%;top:78%;left:-50%;animation-delay:5.5s}
@keyframes hlineSweep{0%{left:-60%}60%,100%{left:120%}}
.dh-hero-nodes{position:absolute;inset:0;pointer-events:none}
.dh-node{position:absolute;width:6px;height:6px;border-radius:50%;background:rgba(79,70,229,.5);box-shadow:0 0 12px 4px rgba(79,70,229,.3);animation:nodePulse 4s ease-in-out infinite}
.dh-node-lg{width:10px;height:10px;background:rgba(6,182,212,.5);box-shadow:0 0 18px 6px rgba(6,182,212,.25);animation-delay:1.5s}
.dh-node:nth-child(2){animation-delay:.8s;background:rgba(6,182,212,.5);box-shadow:0 0 12px 4px rgba(6,182,212,.3)}
.dh-node:nth-child(3){animation-delay:2s}
.dh-node:nth-child(4){animation-delay:3.2s;background:rgba(139,92,246,.5);box-shadow:0 0 12px 4px rgba(139,92,246,.3)}
@keyframes nodePulse{0%,100%{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.6)}}

.dh-hero-inner{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;width:100%;padding-bottom:100px}
.dh-hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:50px;padding:7px 16px;color:rgba(255,255,255,.85);font-size:13px;font-weight:600;margin-bottom:28px;backdrop-filter:blur(8px)}
.dh-badge-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;box-shadow:0 0 0 3px rgba(34,197,94,.2);animation:pulse2 2.5s infinite}
@keyframes pulse2{0%,100%{box-shadow:0 0 0 0 rgba(34,197,94,.4)}50%{box-shadow:0 0 0 10px rgba(34,197,94,0)}}

.dh-hero-h1{font-size:clamp(36px,4.5vw,62px);font-weight:900;color:#fff;line-height:1.08;letter-spacing:-2px;margin-bottom:24px;font-family:'Outfit',sans-serif}
.dh-hero-h1 .dh-grad{letter-spacing:-2px}
.dh-hero-p{font-size:17px;color:rgba(255,255,255,.68);line-height:1.8;max-width:500px;margin-bottom:38px}
.dh-hero-btns{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:44px}

.dh-hero-proof{display:flex;align-items:center;gap:20px}
.dh-proof-avs{display:flex}
.dh-proof-avs span{width:36px;height:36px;border-radius:50%;border:2px solid rgba(255,255,255,.15);overflow:hidden;background:linear-gradient(135deg,#4F46E5,#06B6D4);display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700;margin-left:-8px}
.dh-proof-avs span:first-child{margin-left:0}
.dh-proof-text small{display:block;font-size:12px;color:rgba(255,255,255,.55)}
.dh-proof-text strong{display:block;font-size:13.5px;color:rgba(255,255,255,.9);font-weight:700}
.dh-proof-stars{color:#f59e0b;font-size:14px;letter-spacing:1px}

/* Right side: Dashboard mockup */
.dh-hero-right{position:relative}
.dh-dashboard{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:28px;backdrop-filter:blur(16px)}
.dh-dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}
.dh-dash-dots{display:flex;gap:6px}
.dh-dash-dots span{width:10px;height:10px;border-radius:50%}
.dh-dash-dots span:nth-child(1){background:#ff5f57}
.dh-dash-dots span:nth-child(2){background:#febc2e}
.dh-dash-dots span:nth-child(3){background:#28c840}
.dh-dash-title{font-size:13px;font-weight:700;color:rgba(255,255,255,.7);font-family:'Outfit',sans-serif}
.dh-dash-stats{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px}
.dh-stat-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:16px}
.dh-stat-box .dh-stat-label{font-size:11px;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.7px;margin-bottom:6px}
.dh-stat-box .dh-stat-val{font-size:26px;font-weight:800;color:#fff;font-family:'Outfit',sans-serif}
.dh-stat-box .dh-stat-chg{font-size:11.5px;font-weight:700;margin-top:4px}
.dh-stat-chg.up{color:#22c55e}
.dh-stat-chg.dn{color:#f87171}
.dh-chart-bars{display:flex;align-items:flex-end;gap:6px;height:80px;background:rgba(255,255,255,.03);border-radius:10px;padding:12px 14px;margin-bottom:16px}
.dh-chart-bars span{flex:1;background:linear-gradient(to top,#4F46E5,#06B6D4);border-radius:4px 4px 0 0;opacity:.8;transition:opacity .2s;min-width:0}
.dh-chart-bars span:hover{opacity:1}
.dh-service-list{display:flex;flex-direction:column;gap:8px}
.dh-svc-row{display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.05);border-radius:8px;padding:10px 14px}
.dh-svc-row span:first-child{font-size:12.5px;color:rgba(255,255,255,.75);font-weight:600;font-family:'Outfit',sans-serif}
.dh-svc-row .dh-svc-pill{font-size:10.5px;font-weight:700;padding:3px 10px;border-radius:20px}
.dh-svc-pill.active{background:rgba(34,197,94,.15);color:#22c55e}
.dh-svc-pill.growing{background:rgba(6,182,212,.15);color:#06B6D4}
.dh-svc-pill.new{background:rgba(79,70,229,.15);color:#818cf8}

/* floating cards beside dashboard */
.dh-float-card{position:absolute;background:rgba(255,255,255,.95);border-radius:12px;padding:12px 16px;box-shadow:0 12px 40px rgba(0,0,0,.25);backdrop-filter:blur(8px);font-family:'Outfit',sans-serif}
.dh-float-1{top:-30px;right:-20px;animation:floatA 5s ease-in-out infinite}
.dh-float-2{bottom:-20px;left:-30px;animation:floatB 6s ease-in-out infinite}
@keyframes floatA{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes floatB{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
.dh-float-card .dh-fc-icon{font-size:20px;margin-bottom:4px}
.dh-float-card .dh-fc-val{font-size:18px;font-weight:800;color:#0f172a;line-height:1}
.dh-float-card .dh-fc-lbl{font-size:11px;color:#64748b;font-weight:600;margin-top:2px}

/* Stats bar below hero */
.dh-hero-stats-bar{background:rgba(255,255,255,.04);border-top:1px solid rgba(255,255,255,.08)}
.dh-stats-bar-inner{display:flex;align-items:center;justify-content:space-around;padding:28px 0;flex-wrap:wrap;gap:20px}
.dh-stat-item{text-align:center;padding:0 20px}
.dh-stat-item .dh-snum{font-size:clamp(28px,3.5vw,42px);font-weight:900;color:#fff;line-height:1;font-family:'Outfit',sans-serif}
.dh-stat-item .dh-snum .dh-grad{font-size:inherit;font-weight:inherit}
.dh-stat-item .dh-slbl{font-size:13px;color:rgba(255,255,255,.55);margin-top:5px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.dh-stat-divider{width:1px;height:40px;background:rgba(255,255,255,.1)}

/* =========================================================
   SERVICES SECTION
   ========================================================= */
.dh-services{padding:100px 0;background:#fff}
.dh-svc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.dh-svc-card{position:relative;background:#fff;border:1px solid #e8ecf0;border-radius:20px;padding:36px 28px;transition:transform .3s,box-shadow .3s,border-color .3s;overflow:hidden;text-decoration:none;color:inherit;display:block}
.dh-svc-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(79,70,229,.04),rgba(6,182,212,.04));opacity:0;transition:opacity .3s;border-radius:20px}
.dh-svc-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,.1);border-color:rgba(79,70,229,.2)}
.dh-svc-card:hover::before{opacity:1}
.dh-svc-card.featured{background:linear-gradient(135deg,#4F46E5,#06B6D4);border-color:transparent}
.dh-svc-card.featured .dh-svc-icon-wrap{background:rgba(255,255,255,.15)}
.dh-svc-card.featured .dh-svc-title,.dh-svc-card.featured .dh-svc-desc,.dh-svc-card.featured .dh-svc-link{color:#fff}
.dh-svc-card.featured .dh-svc-link-ic{color:rgba(255,255,255,.8)}
.dh-svc-icon-wrap{width:56px;height:56px;background:linear-gradient(135deg,rgba(79,70,229,.1),rgba(6,182,212,.1));border-radius:14px;display:flex;align-items:center;justify-content:center;color:#4F46E5;margin-bottom:22px;transition:transform .3s}
.dh-svc-card:hover .dh-svc-icon-wrap{transform:scale(1.08)}
.dh-svc-title{font-size:18px;font-weight:800;color:#0f172a;margin-bottom:10px;font-family:'Outfit',sans-serif}
.dh-svc-desc{font-size:14.5px;color:#64748b;line-height:1.75;margin-bottom:22px}
.dh-svc-link{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:700;color:#4F46E5;text-decoration:none;font-family:'Outfit',sans-serif}
.dh-svc-link-ic{font-size:16px;transition:transform .2s}
.dh-svc-card:hover .dh-svc-link-ic{transform:translateX(4px)}

/* =========================================================
   WHY US
   ========================================================= */
.dh-why{padding:100px 0;background:#f8fafc}
.dh-why-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.dh-why-img-wrap{position:relative}
.dh-why-img-wrap img{width:100%;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.12)}
.dh-why-img-badge{position:absolute;bottom:30px;left:-30px;background:#fff;border-radius:16px;padding:18px 22px;box-shadow:0 16px 48px rgba(0,0,0,.14);display:flex;align-items:center;gap:14px}
.dh-why-img-badge .dh-badge-ic{width:48px;height:48px;background:linear-gradient(135deg,#4F46E5,#06B6D4);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff}
.dh-why-img-badge .dh-badge-val{font-size:24px;font-weight:900;color:#0f172a;font-family:'Outfit',sans-serif}
.dh-why-img-badge .dh-badge-label{font-size:12.5px;color:#64748b;font-weight:600}
.dh-why-list{display:flex;flex-direction:column;gap:24px;margin-top:30px}
.dh-why-item{display:flex;gap:16px;align-items:flex-start}
.dh-why-ic{width:48px;height:48px;min-width:48px;background:linear-gradient(135deg,rgba(79,70,229,.1),rgba(6,182,212,.1));border-radius:12px;display:flex;align-items:center;justify-content:center;color:#4F46E5}
.dh-why-item h4{font-size:16px;font-weight:700;color:#0f172a;margin-bottom:5px;font-family:'Outfit',sans-serif}
.dh-why-item p{font-size:14.5px;color:#64748b;line-height:1.7}

/* =========================================================
   NUMBERS
   ========================================================= */
.dh-numbers{padding:100px 0;background:linear-gradient(135deg,#0f172a,#1e1b4b)}
.dh-numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.dh-num-item{text-align:center;padding:40px 20px;border:1px solid rgba(255,255,255,.08);border-radius:20px;background:rgba(255,255,255,.04);transition:border-color .3s,background .3s}
.dh-num-item:hover{border-color:rgba(79,70,229,.4);background:rgba(79,70,229,.06)}
.dh-num-val{font-size:clamp(36px,4vw,54px);font-weight:900;color:#fff;line-height:1;margin-bottom:8px;font-family:'Outfit',sans-serif}
.dh-num-label{font-size:14px;color:rgba(255,255,255,.55);font-weight:600;text-transform:uppercase;letter-spacing:.5px}

/* =========================================================
   PORTFOLIO
   ========================================================= */
.dh-portfolio{padding:100px 0;background:#fff}
.dh-portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.dh-port-card{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:linear-gradient(135deg,#1e293b,#334155)}
.dh-port-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.dh-port-card:hover img{transform:scale(1.06)}
.dh-port-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(15,23,42,.9) 0%,transparent 55%);opacity:0;transition:opacity .3s}
.dh-port-card:hover .dh-port-overlay{opacity:1}
.dh-port-info{position:absolute;bottom:0;left:0;right:0;padding:24px;transform:translateY(16px);transition:transform .3s}
.dh-port-card:hover .dh-port-info{transform:translateY(0)}
.dh-port-info h4{font-size:16px;font-weight:800;color:#fff;margin-bottom:4px;font-family:'Outfit',sans-serif}
.dh-port-info span{font-size:12.5px;color:rgba(255,255,255,.65);font-weight:600}
.dh-port-card.big{grid-column:span 2}

/* =========================================================
   PROCESS
   ========================================================= */
.dh-process{padding:100px 0;background:#f8fafc}
.dh-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;position:relative}
.dh-process-grid::before{content:'';position:absolute;top:38px;left:12.5%;right:12.5%;height:2px;background:linear-gradient(to right,#4F46E5,#06B6D4);z-index:0}
.dh-proc-item{text-align:center;position:relative;z-index:1}
.dh-proc-num{width:76px;height:76px;background:linear-gradient(135deg,#4F46E5,#06B6D4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:900;color:#fff;margin:0 auto 22px;box-shadow:0 8px 24px rgba(79,70,229,.35);font-family:'Outfit',sans-serif}
.dh-proc-item h4{font-size:16px;font-weight:800;color:#0f172a;margin-bottom:8px;font-family:'Outfit',sans-serif}
.dh-proc-item p{font-size:14px;color:#64748b;line-height:1.7}

/* =========================================================
   TESTIMONIALS
   ========================================================= */
.dh-testi{padding:100px 0;background:#fff}
.dh-testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.dh-testi-card{background:#f8fafc;border:1px solid #e8ecf0;border-radius:20px;padding:32px;transition:transform .3s,box-shadow .3s}
.dh-testi-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(0,0,0,.09)}
.dh-testi-card.featured{background:linear-gradient(135deg,#4F46E5,#06B6D4);border-color:transparent}
.dh-testi-card.featured .dh-testi-quote,.dh-testi-card.featured .dh-testi-name{color:#fff}
.dh-testi-card.featured .dh-testi-title{color:rgba(255,255,255,.75)}
.dh-testi-stars{color:#f59e0b;font-size:16px;letter-spacing:2px;margin-bottom:16px}
.dh-testi-quote{font-size:15.5px;color:#334155;line-height:1.8;margin-bottom:24px;font-style:italic}
.dh-testi-author{display:flex;align-items:center;gap:12px}
.dh-testi-av{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#4F46E5,#06B6D4);display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;font-weight:700;font-family:'Outfit',sans-serif}
.dh-testi-name{font-size:15px;font-weight:800;color:#0f172a;font-family:'Outfit',sans-serif}
.dh-testi-title{font-size:13px;color:#64748b;margin-top:2px}

/* =========================================================
   BLOG
   ========================================================= */
.dh-blog{padding:100px 0;background:#f8fafc}
.dh-blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.dh-blog-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid #e8ecf0;transition:transform .3s,box-shadow .3s;text-decoration:none;color:inherit;display:block}
.dh-blog-card:hover{transform:translateY(-5px);box-shadow:0 16px 40px rgba(0,0,0,.1)}
.dh-blog-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#4F46E5,#06B6D4);overflow:hidden}
.dh-blog-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.dh-blog-card:hover .dh-blog-thumb img{transform:scale(1.05)}
.dh-blog-body{padding:24px}
.dh-blog-cat{font-size:11.5px;font-weight:700;color:#4F46E5;text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;font-family:'Outfit',sans-serif}
.dh-blog-body h3{font-size:17px;font-weight:800;color:#0f172a;line-height:1.4;margin-bottom:10px;font-family:'Outfit',sans-serif}
.dh-blog-body p{font-size:14px;color:#64748b;line-height:1.7;margin-bottom:16px}
.dh-blog-meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#94a3b8}

/* =========================================================
   CTA
   ========================================================= */
.dh-cta{padding:100px 0;background:linear-gradient(135deg,#0f172a,#1e1b4b);position:relative;overflow:hidden}
.dh-cta::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 60% at 70% 50%,rgba(79,70,229,.2) 0%,transparent 70%);pointer-events:none}
.dh-cta-inner{position:relative;text-align:center;max-width:760px;margin:0 auto}
.dh-cta-inner h2{font-size:clamp(28px,4vw,50px);font-weight:900;color:#fff;line-height:1.15;margin-bottom:16px;font-family:'Outfit',sans-serif}
.dh-cta-inner p{font-size:17px;color:rgba(255,255,255,.65);line-height:1.8;margin-bottom:40px}
.dh-cta-btns{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:48px}
.dh-cta-checklist{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:680px;margin:0 auto}
.dh-cta-check{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;display:flex;align-items:center;gap:10px}
.dh-cta-check svg{color:#22c55e;min-width:18px}
.dh-cta-check span{font-size:13.5px;font-weight:600;color:rgba(255,255,255,.85);font-family:'Outfit',sans-serif}

/* =========================================================
   INNER PAGE HERO
   ========================================================= */
.dh-inner-hero{position:relative;background:linear-gradient(135deg,#0a0f1e 0%,#1e1b4b 60%,#0c4a6e 100%);padding:100px 0 80px;overflow:hidden;margin-top:0}
.dh-inner-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 80% 70% at 50% 50%,rgba(79,70,229,.2) 0%,transparent 70%);pointer-events:none}
.dh-inner-hero-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:50px 50px;pointer-events:none}
.dh-inner-hero-content{position:relative;text-align:center}
.dh-breadcrumb{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px;color:rgba(255,255,255,.55);margin-bottom:18px;font-weight:600}
.dh-breadcrumb a{color:rgba(255,255,255,.55);text-decoration:none;transition:color .2s}
.dh-breadcrumb a:hover{color:#06B6D4}
.dh-inner-hero-content h1{font-size:clamp(34px,5vw,60px);font-weight:900;color:#fff;line-height:1.1;letter-spacing:-1.5px;margin-bottom:16px;font-family:'Outfit',sans-serif}
.dh-inner-hero-content p{font-size:17px;color:rgba(255,255,255,.65);max-width:620px;margin:0 auto;line-height:1.8}

.dh-inner-main{padding:80px 0 100px;background:#fff}
.dh-page-content{max-width:860px;margin:0 auto;font-size:16px;line-height:1.85;color:#334155}
.dh-page-content h2,.dh-page-content h3{font-family:'Outfit',sans-serif;font-weight:800;color:#0f172a;margin:36px 0 14px}
.dh-page-content p{margin-bottom:18px}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:1024px){
  .dh-hero-inner{grid-template-columns:1fr;gap:50px;text-align:center}
  .dh-hero-p{margin:0 auto 38px}
  .dh-hero-btns{justify-content:center}
  .dh-hero-proof{justify-content:center}
  .dh-hero-right{max-width:520px;margin:0 auto}
  .dh-svc-grid{grid-template-columns:repeat(2,1fr)}
  .dh-why-inner{grid-template-columns:1fr;gap:40px}
  .dh-numbers-grid{grid-template-columns:repeat(2,1fr)}
  .dh-process-grid{grid-template-columns:repeat(2,1fr)}
  .dh-process-grid::before{display:none}
  .dh-portfolio-grid{grid-template-columns:repeat(2,1fr)}
  .dh-port-card.big{grid-column:span 1}
  .dh-testi-grid{grid-template-columns:1fr}
  .dh-blog-grid{grid-template-columns:repeat(2,1fr)}
  .dh-cta-checklist{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
  .dm-nav,.dm-btn-cta{display:none}
  .dm-hamburger{display:flex}
  .dm-mobile-nav{display:block}
  body.dm-nav-open{overflow:hidden}
}
@media(max-width:640px){
  .dh-svc-grid{grid-template-columns:1fr}
  .dh-numbers-grid{grid-template-columns:repeat(2,1fr)}
  .dh-process-grid{grid-template-columns:1fr}
  .dh-portfolio-grid{grid-template-columns:1fr}
  .dh-blog-grid{grid-template-columns:1fr}
  .dh-testi-grid{grid-template-columns:1fr}
  .dh-cta-checklist{grid-template-columns:1fr}
  .dh-stats-bar-inner{gap:10px}
  .dh-stat-divider{display:none}
  .dm-topbar-left .dm-tb-sep,.dm-topbar-left .dm-topbar-item:last-child{display:none}
  .dh-hero{min-height:auto;padding:90px 0 0}
  .dh-hero-h1{letter-spacing:-1px}
  .dh-float-card{display:none}
}

/* Bridge gap between nav item and dropdown */
.dm-has-dropdown>.dm-dropdown::before{content:'';position:absolute;top:-14px;left:-10px;right:-10px;height:14px}
/* Also trigger on JS class */
.dm-has-dropdown.dm-dd-open>.dm-dropdown{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;visibility:visible}
/* Logo white on dark header */
.dm-logo img{}

/* ── Hero service showcase ── */
.dh-vis-blob{position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(79,70,229,.3) 0%,rgba(6,182,212,.15) 40%,transparent 70%);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);filter:blur(60px);pointer-events:none;z-index:0}
.dh-service-showcase{display:grid;grid-template-columns:1fr 1fr;gap:14px;position:relative;z-index:1;transform:perspective(1100px) rotateX(4deg) rotateY(-6deg);transform-origin:center center}
.dh-ss-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:26px 22px 22px;backdrop-filter:blur(20px);position:relative;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease}
.dh-ss-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 24px 60px rgba(0,0,0,.4)}
.dh-ss-card-glow{position:absolute;top:-40px;right:-40px;width:120px;height:120px;border-radius:50%;filter:blur(30px);pointer-events:none}
.dh-ss-web{border-top:2px solid rgba(99,102,241,.9)}
.dh-ss-web .dh-ss-card-glow{background:rgba(99,102,241,.35)}
.dh-ss-web .dh-ss-icon-wrap{background:rgba(99,102,241,.18);color:#a5b4fc}
.dh-ss-web .dh-ss-bignum{color:#a5b4fc}
.dh-ss-mkt{border-top:2px solid rgba(6,182,212,.9)}
.dh-ss-mkt .dh-ss-card-glow{background:rgba(6,182,212,.3)}
.dh-ss-mkt .dh-ss-icon-wrap{background:rgba(6,182,212,.15);color:#67e8f9}
.dh-ss-mkt .dh-ss-bignum{color:#67e8f9}
.dh-ss-brand{border-top:2px solid rgba(139,92,246,.9)}
.dh-ss-brand .dh-ss-card-glow{background:rgba(139,92,246,.3)}
.dh-ss-brand .dh-ss-icon-wrap{background:rgba(139,92,246,.15);color:#c4b5fd}
.dh-ss-brand .dh-ss-bignum{color:#c4b5fd}
.dh-ss-video{border-top:2px solid rgba(236,72,153,.9)}
.dh-ss-video .dh-ss-card-glow{background:rgba(236,72,153,.3)}
.dh-ss-video .dh-ss-icon-wrap{background:rgba(236,72,153,.15);color:#f9a8d4}
.dh-ss-video .dh-ss-bignum{color:#f9a8d4}
.dh-ss-icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:14px}
.dh-ss-title{font-size:15px;font-weight:800;color:#fff;font-family:'Outfit',sans-serif;margin-bottom:3px}
.dh-ss-sub{font-size:12px;color:rgba(255,255,255,.45);margin-bottom:16px}
.dh-ss-bignum{font-size:34px;font-weight:900;font-family:'Outfit',sans-serif;line-height:1}
.dh-ss-numlbl{font-size:11px;color:rgba(255,255,255,.4);font-weight:600;text-transform:uppercase;letter-spacing:.6px;margin-top:4px}
.dh-hero-review{display:flex;align-items:center;gap:14px;margin-top:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px 20px;backdrop-filter:blur(16px);position:relative;z-index:1}
.dh-rev-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#4F46E5,#06B6D4);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:#fff;font-family:'Outfit',sans-serif;flex-shrink:0}
.dh-rev-stars{color:#fbbf24;font-size:13px;margin-bottom:4px}
.dh-rev-quote{font-size:13px;color:rgba(255,255,255,.75);font-style:italic;line-height:1.45}